传输设备:通过VirtualWire和Ultra Sonic传感器,带有433MHz发射器的Arduino Micro。连接到5V和地面以及:
超声传感器:触发销:11Echo PIN:12433发射器:发射器:11
到目前为止,我的代码使用新库进行声音距离测量:
#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接收此值。
我很确定我真的没有获得虚拟电线的语法,并且会在如何准备和发送消息方面提供一些帮助。
使用RaspberryPi上的UART端口接收Arduino上UART的数据。小心raspberrypi为3.3V,arduino为5V。如果您直接连接可能会破坏RaspberryPi。使用撤回器将5V转换为3.3V。