< >
Home » Arduino通信模块 » Arduino通讯模块-APC220 USB无线数传1000米传输距离

Arduino通讯模块-APC220 USB无线数传1000米传输距离

外 观

外观

概 述

  • 这个模块是为了做ROBOT而选择的东东。当然,如果你有更好的想法,比如用于无线防盗报警器、远程遥控、数据交换、手持终端PDA、无线耳机、数字视频、无线鼠标、无线键盘以及其他短距离高速无线应用等,他也能够完全胜任。我们做ROBOT的想法是:把大部分功能集成化,从而解放主CPU。
  • APC220模块是高度集成半双工微功率无线数据传输模块,其嵌入高速单片机和高性能射频芯片。
  • 创新的采用高效的循环交织纠检错编码,抗干扰和灵敏度都大大提高,最大可以纠24bits连续突发错误,达到业内的领先水平。
  • APC220模块提供了多个频道的选择,能够透明传输任何大小的数据,而用户无须编写复杂的设置与传输程序,并提供UART/TTL接口。
  • 同时小体积,宽电压运行,较远传输距离,丰富便捷的软件编程设置功能,使APC220模块能够应用与非常广泛的领域。

性能描述

基本参数

  • 电源 3.3 – 5.5V (±50mV 纹波)
  • 发射电流 ≦35mA@10mW
  • 接收电流 ≦30mA
  • 休眠电流 ≦5uA
  • 传输距离 1000米传输距离 (开阔地可视距离)
  • 工作湿度 10%~90%(无冷凝)
  • 工作温度 -20℃ - 70℃
  • 尺寸 37mm x 17mm x 6.5mm

性能参数

  • 工作频率 420MHz to 450MHz (1KHz步进)
  • 调制方式 GFSK
  • 频率间隔 200KHz
  • 发射功率 20mw (10级可调)
  • 接收灵敏度 -117dBm@1200bps
  • 空中传输速率 1200 - 19200bps
  • 接口速率 1200 - 57600bps
  • 接口效验方式 8E1/8N1/8O1
  • 接口缓冲空间 512bytes

引脚定义

APC220 pinNumber17new1.jpg

标号 定义 说明
1 GND GND
2 VCC 3.3V-5V
3 EN 电源使能端,≥1.6V或悬空使能,≤0.5V休眠
4 RXD URAT输入口,TTL电平
5 TXD URAT输出口,TTL电平
6 AUX URAT信号,接收为低,发送为高
7 SET 设置参数,低有效

设备互联方式

请输入图片描述
UART/TTL 电平

请输入图片描述
RS485/RS232 电平

请输入图片描述
USB/TTL 电平

请输入图片描述
USB/USB

教程

本教程将引导您学习 如何实现电脑和 Arduino 的无线通讯。在实验结束时,您可以在电脑上收到从 Arduino发送的“Hello!”。

硬件

  • APC220 模块 x2
  • USB 转串口 x1
  • Arduino 控制板 x1
  • USB 线A-B for Arduino x1

软件

注意:
本实验中我们的 Arduino 控制板用的是 Romeo(Leonardo)。在代码中它使用 Serial1 而不是 Serial。如果您使用其他类型的控制板,例如: Uno, Mega, Bluno 等等。请将 Serial1.println() 修改为 Serial.println(),否则您将无法下载代码。
Arduino IDE 1.6.* 由于软件问题,不能正常显示/收发数据。

模块配置

1 将天线旋紧在 APC220上,将其插在 USB转串口 上,最后再查到你的电脑上。
APC220assemble.jpg

2 下载并安装 USB转串口 的驱动。前往 Silicon Labs 下载相应驱动
3 打开设备管理器,找到您的 USB转串口 的串口号,这里是 COM8。
CheckserialAPC220.png

4 用管理员身份双击打开应用 APC22X_V12A.exe (即:RF-magic ) Windows XP可以直接打开。 阅读:【英文】如何避免每次都需要管理员身份打开?
APC220RunAPCSTART.png

注意:打开软件后,软件将自动打开串口,并有提示。如果提示打开串口失败,请用 管理员身份打开 或者 从设备管理器中将默认的串口号改为较小的串口号,如:“COM1”。

5 按照下图中红色标注里的参数配置(默认值),点击 写入 Write W

Configuration

Configuration

请输入图片描述

Write and Read setting

设置 选项 默认参数
收发频率(RF frequency) 420MHz-450MHz(分辨率1KHz,精度±100Hz) 434MHz
空中速率(RF TRx Rate) 1200,2400,4800,9600,19200bps 9600bps
输出功率(RF Power) 0-9 9
串口速率(Series Rate) 1200,2400,4800,9600,19200,38400,57600bps 9600bps
网络地址码(NET ID) 0-65535(16位) 12345
节点地址码(NODE ID) 123456789012
串口效验(Series Patity) Disable,Odd Patity,Even Patity Disable


6 对另外一块 APC220进行相同的配置。


通信测试

6 对另外一块 APC220进行相同的配置。

通信测试

1 将一块插在电脑上,另一块插到 Arduino上(如果没有 相应的接口,可以单独按照管脚说明接线)。

350px-APC220assemble

One on computer to receive “Hello”

请输入图片描述

Another on computer to send “Hello”

2 上传程序。
注意:请将 Serial1修改为 Serial如果您的 Arduino控制板是 Uno, Bluno, Mega 或其他使用串口0的设备。

//The sketch is tested on: Romeo v2 (Leonardo)
void setup() 
{
  Serial1.begin(9600);          //Set serial baud rate to 9600
} 

void loop()
{
  Serial1.println("Hello!");    //print out hello string 
  delay(1000);                  //1 second delay
}

3 用串口助手或 Arduino串口监视窗打开COM8,您将看到“Hello!” 每隔一秒打印在电脑的窗口上。 (注意:Arduino IDE 1.6.5 不能正常显示)

请输入图片描述

Arduino serial monitor on COM8( IDE 1.0.6)

请输入图片描述

Serial Assistant on COM8

疑难解答

  • Q 1. 设备之间不能正常通讯,是什么原因?
A: 
1.两端的通讯协议不一致,如:波特率,校验不一致。
2.两端的频点,空中波特率不一致。
3.不是同一系列产品。
4.电源连接不正常。
5、模块已损坏。
6.模块EN脚设置错误
7.通讯距离超过范围,或天线接触不良。
  • Q 2. 传输距离很近,根本没有所谓的1km?
A:
1.电压超过范围。
2.电源纹波过大。
3.天线接触不良或天线类型不对。
4.天线过与靠近金属表面或模块接地面积太小。
5.接收环境恶劣,如建筑物密集,有强干扰源。
6.有同频干扰。
  • Q 3. 使用注意事项:
A:
考虑到空中传输的复杂性,无线数据传输方式固有的一些特点,应考虑以下几个问题。
1)无线通信中数据的延迟
由于无线通信发射端是从终端设备接收到一定数量的数据后,或等待一定的时间没有新的数据才开始发射,无线通信发射端到无线通信接收端存在着几十到几百毫秒延迟(具体延迟是由串口速率,空中速率以及数据包的大小决定),另外从无线通信接收端到终端设备也需要一定的时间,但同样的条件下延迟时间是固定的。
2)数据流量的控制
APC220模块虽然有512bytes大容量缓冲区,但若串口速率大于等于空中速率,则存在数据流量的问题,可能会出现数据溢出而导致的数据丢失的现象。在这种情况下,终端设备要保证串口平均速率不大于60%空中速率,如串口速率为9600bps,空中速率为4800bps, 终端设备每次向串口发送100字节,那么终端设备每次向串口发送的时间约104ms,(104ms/0.6)*(9600/4800)=347ms,所以终端设备每次向串口发送100字节每次间隔不小于347ms,以上问题则不会出现。
3)差错控制
APC220模块具有较强的抗干扰能力,在编码已经包含了强大的纠检错能力。但在极端恶劣的条件下或接收地的场强已处于APC220模块接收的临界状态,难免出现接收不到或丢包的状况。此时客户可增加对系统的链路层协议的开发,如增加类似TCP/IP中滑动窗口及丢包重发等功能,可大大提高无线网络的使用可靠性和灵活性。
4)天线的选择
天线是通信系统的重要组成部分,其性能的好坏直接影响通信系统的指标,用户在选择天线时必须首先注重其性能。一般有两个方面,第一选择天线类型;第二选择天线的电气性能。选择天线类型的意义是:所选天线的方向图是否符合系统设计中电波覆盖的要求;选择天线电气性能的要求是:选择天线的频率带宽、增益、额定功率等电气指标是否符合系统设计要求。因此,用户在选择天线时最好向厂家联系咨询,APC220 要求的天线阻抗为50欧姆。
5)电源方面
此模块电源以外的其它管脚的工作电平应保证:同模块的电源电压一致,否则会损坏模块。

纠错,疑问,交流: 请进入讨论区点击加入Q群

获取最新文章: 扫一扫右上角的二维码加入“创客智造”公众号


标签: none