8473| 6
|
[进阶] 一招教会你如何知道串口无线模块的控制距离 |
最近想有时间就做个遥控小船,小船客体用3D打印出来,因本人3D打印学的不大好,设计图还要过一段才出,电控用两个串口无线模块,问题来了。如果在一片开阔水域小船沿着直线一只跑,跑出了我的模块控制范围,我怎么把它弄回来。所以我要怎么知道模块的控制距离。我可不相信模块厂家标称的距离。你小船丢了。人家可不负责。元件清单: Arduino uno---2 zigbee-----2 IIC LCD----1 LED-----1 220欧 Resistor----1 我用了这个模块,zigbee 2.4G 无线串口模块,距离1000M那种。这个模块为了省电,用的是3.3V电源,串口波特率我设定在9600,注意两个模块的波特率要一致。 其实其它牌子的串口无线模块和这个功能都差不多,好像都是一个师傅教的。所以这里提供的程序应该适用所有类似品牌的串口无线模块。 信号发射端的代码如下: [mw_shl_code=applescript,true]unsigned long x = 0; //设变量初始值为0 void setup() { Serial.begin(9600); //串口波特率9600 Serial.println(("wireless module distance test")); delay (200); //休息一下 Serial.println(("Send ascending numbers")); //发送数字 } void loop() { x++; //递增数字 Serial.print("number = "); //串口显示数字 Serial.println(x); delay(1000); }[/mw_shl_code] 发信号端连线,参考下图,就是UNO连个串口无线模块。 接信号端连线图如下: 接收端 最后的显示结果,发射端放在家里,接收端你手拿着走到室外,同时要记下你的步数,走到你接收不到数字,就得出了真实的无线模块的传输距离。 整个项目有个遗憾之处,是波特率应该设定为115200,这样传输更稳定,但这个模块要手动调整,我这人懒,就没弄。 |
1.08 KB, 下载次数: 2410
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed