发射设备:Arduino Micro,带有通过 VirtualWire 和超声波传感器的 433Mhz 发射器。均连接到 5V 和接地以及:
超声波传感器:触发针:11 回波针:12 433 发射器:发射器:11
到目前为止,我的代码使用 NewPing 库进行声波距离测量:
#include <NewPing.h>
#include <VirtualWire.h>
#define TRIGGER_PIN 10
#define ECHO_PIN 12
#define MAX_DISTANCE 500
#define ledPin 13
NewPing sonar(TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE);
void setup() {
vw_set_tx_pin(11);
Serial.begin(115200);
pinMode(ledPin, OUTPUT);
vw_setup(2000);
}
void loop() {
delay(5000);
unsigned int uS = sonar.ping();
Serial.print("Distance: ");
unsigned int Distance = (uS / US_ROUNDTRIP_CM);
Serial.print(Distance);
Serial.println("cm");
digitalWrite(ledPin, HIGH);
delay(1000);
digitalWrite(ledPin, LOW);
}
这给了我在串行监视器中的输出,如下所示:
Distance: 40cm
Distance: 39cm
我的问题:通过 433 MHz 发送测量结果的最简单/最佳方式是什么。(在这种情况下40
或39
)
我想使用连接了接收器单元并运行 PIGPIO 的 RaspberryPi 接收此值。
我很确定我并没有真正了解 Virtual Wire 的语法,并且希望获得有关如何准备和发送消息的一些帮助。