在APM2上使用3DR电台综述.docx
- 文档编号:24001478
- 上传时间:2023-05-23
- 格式:DOCX
- 页数:20
- 大小:980.67KB
在APM2上使用3DR电台综述.docx
《在APM2上使用3DR电台综述.docx》由会员分享,可在线阅读,更多相关《在APM2上使用3DR电台综述.docx(20页珍藏版)》请在冰豆网上搜索。
在APM2上使用3DR电台综述
在APM2上使用3DR电台
3DRobotics的3DR电台是设置APM和地面站之间的遥测连接的一个理想的方式。
它体积小,价格低,范围大,使用开源固件,允许我们做一些其他电台做不到的事情。
电台特性
∙体积非常小
∙重量轻(不含天线仅4克)
∙可选择900MHz或433MHz版本
∙接收灵敏度为-121dBm
∙发射功率为20dBm(100mW)
∙透明的串行链路
∙空中的数据传输速率高达250kbps
∙MAVLink协议帧和状态报告
∙跳频展频(FHSS)
∙自适应时分多路复用(TDM)
∙支持LBT和AFA
∙可配置占空比
∙内建错误校正代码(可以矫正高达25%的数据位错误)
∙使用小全向天线可达数公里范围
∙可用双向放大器获得更大的范围
∙开源固件
∙AT命令配置数传
∙RT命令远程配置数传
∙与APM使用时自适应流量控制
∙基于HM-TRP无线模块,带有Si10008051微控制器和Si4432无线模块。
连接3DR电台
你将需要两个3DR电台,飞机上一个,地面站上一个。
如果你看上面的图片,会发现一些电台有一个USB接口,因此很容易连接到你的地面站上。
FTDI的驱动可以在这里下载。
飞机上的带有一个FTDI的连接器,可以直接连接到你的APM遥测端口。
如下图所示,连接到APM2上:
重要提示:
在你的APM2连接到USB上时不能连接电台(它们共享同一个端口)。
在尝试无线连接之前,确保你从APM2上拔下了USB线缆。
电台预先配置的串口速率为57600,也就是APM默认使用的遥测速率,但你可以通过AT命令或APMPlanner的电台设置界面改变成任何你喜欢的速率。
状态LED
3DR电台有2个状态指示灯,一红一绿。
LED不同状态的含义如下:
∙绿色LED闪烁-寻找另一个数传
∙绿色LED常亮-已经与另一个数传建立链接
∙红色LED闪烁-数据传输
∙红色LED常亮-固件更新模式
使用MissionPlanner设置
最新版本的APMMissionPlanner可以通过简单的图形用户界面设置3DR电台。
在MissionPlanner(右上角)中选择已经连接至地面站的3DR设置串行端口,波特率请选择57K。
按下Control-A,就会开启一个窗口。
点击"LoadSettings",它的数据类似下图所示(远程设置只有在通电并且连接到运行当前代码的ArduPlane或ArduCopter时才会显示)。
推荐大多数用户使用这个配置方法。
串口和空中速率都是‘单字节’格式
SEIRAL_SPEED和AIR_SPEED参数和APM使用的SERIAL3_SPEEDEEPROM参数格式一样。
它的单位是kbps,但是截断成了整数。
所以‘9’就是9600bps,‘38’就是38400,‘115’就是‘115200’,依此类推。
选择空中数据传输速率
AIR_SPEED是电台模块控制传输速率的关键参数。
预设为64(指64kbps),使用全向天线的传输范围可超过1公里。
将AIR_SPEED设的越小,传输范围就愈远,不过降低了AIR_SPEED也会降低你可传输的数据量。
电台韧体只支持13种空中数据传输速率,包括2,4,8,16,19,24,32,48,64,96,128,192及250。
如果你的无线运用因为一些原因需要使用不同的速率,我们可能会增加至注册表。
如果你选择了一个未支持的速率,程序就会选择下一个支持的最高速率。
空中数据速率的选择,取决于以下几个因素
∙需要多大的范围
∙要传输的速率
∙主要是单向传输还是双向传输
∙是否开启了ECC
∙APM固件是否有自适应的流量控制
在大部份的遥测应用,主要都是集中在从飞机到地面站这一个方向发送数据。
对大多数人,由地面站飞机发送给飞机的数据量很小,只有偶尔的控制包和心跳包。
如果你是使用游戏遥杆操控你的飞机,那么就会从地面站向飞机发出很多数据。
在这种情况下就要需要一个较高的AIR_SPEED,但是范围会减少。
在给定的AIR_SPEED下,ECC参数会使支持的传输速率有很大的不同。
如果把ECC设为0,就不会发出任何的错误修正信息,电台使用一个简单的16BitCRC来检测传输错误。
在这种情况下,电台支持的在一个方向的数据传输大约是AIR_SPEED的90%。
如果你开启ECC(强烈建议),传输速率就会被减半。
ECC系统加倍数据。
但这是值得的,错误率将会急剧下降,在较远的范围时能得到一个更加可靠的连接。
如果你有最新版本的APM固件(ArduPlane2.33或以上,或者ArduCopter2.54或以上),APM将会根据数传固件在MAVLink流中插入的MAVLinkRADIO包自动调整对应遥测电台模块的速率。
这样就可以允许你'超额定义'连结,即将SERIAL_SPEED设置成大于电台实际上可以处理的。
选用数据传输速率的另一个因素是TDM'同步时间'。
两个数传需要计算对方的跳频模式。
原理是在快速变化发射通道的同时缓慢变化接收通道。
这个与其它电台同步的程序在较高的数据传输速率时只需要短短几秒钟,但使用较低的传输速率则较慢。
对于大多数业余无人机应用,通常将AIR_SPEED预设为64,再开启ECC的功能就已经很好了。
错误修正器
如上所述,如果你的ECC参数设置为1,电台就会支持12/24格雷错误纠正代码。
这意谓着每12位的数据电台就会送出24位,位计算是利用格雷代码参照表。
在接收端的过程是相反的,允许电台校正在每12位发送位中的3位错误(即25%错误率)。
ECC选项的缺点是,它的可用带宽会减半,但在大多数的状况它是值得的,你可以在较远的范围内维持可靠的连结。
在串流中你会收到更少的'噪声'。
MAVLink框架
如果你把MAVLINK的选项设为1,电台将会处于'MAVLink框架'下。
MAVLink协议APM用于向地面站传输遥测数据。
当使用MAVLink框架,电台会尽力根据MAVLink数据包边界来对齐电台数据包。
意思是如果数据包丢失了,你的接收端不用会收到一半MAVLink封包。
这部分封包在地面站控制面板上会显示成线性噪声。
电台固件会试着把多个MAVLink封包融入至一个无线数据包,一边达到最好的效率。
最大的电台数据包大小为252bytes。
电台的固件支持MAVLink0.9及MAVLink1.0的传输格式。
MAVLink回报
如果你把MAVLINK设为1,电台固件也会去寻找串行端口发出的MAVLinkHEARTBEAT讯息。
当它收到HEARTBEAT的讯息它就会知道MAVLink协议正在使用中,它将开始向串行流中注入MAVLink电台状态数据包。
电台数据包含链路两端的RSSI(ReceivedSignalStrengthIndicator)信息,可以让地面站或飞机在信号不好的时候采取动作。
电台数据包也包含了错误率的相关信息,以及串行传输缓冲区是否足够(百分比)。
最新版本的APM固件可以使用这个信息来自动地配接遥测串流速率至电台能够维持的数据速率。
功率等级
你必须非常小心配置电台,在操作时应遵照该国的法律权力限制。
默认的功率等级为20dBm是美国及澳洲所核可的,超过30dbm就需要在跳频调频915-928MHzLIPD等级的执照。
所以只要你的天线低于10dBi的增益,你应该就有符合ISM的规定。
电台无法支持任意的功率级别。
它只能支援下表中的功率级别
Power(dBm)
Power(milliWatts)
1
1.3
2
1.6
5
3.2
8
6.3
11
12.5
14
25
17
50
20
100
如果你选择一个不支持的功率级别电台,将选择从上述表中的下一个最高功率级别。
请仔细的检查贵国EIRP(Equivalentisotropicallyradiatedpower)的功率限制,确保你考虑到的天线增益。
3DR电台是一个DIY的电台零件,确保使用它是符合地方性法规是你的责任。
例如,如果你的地方性法规允许30dBm(1W)EIRP的最大值,如果你使用的发送增益是12dB的传送增益,天线的增益是3dBi,你的TXPOWER最大只能设定为14。
如果你不知道如何校验,我们为你做了一个指南:
认识dB、Watts及dBm。
使用AT命令设定
3DR电台支持变种的Hayes'AT'调制解调器配置命令。
如果你的串行控制台使用目前串行波特率与3DR电台连接,你可以输入'+++'告知电台进入AT命令模式。
为了防止数据被一连串命令所影响因此有一个防护时间,所以请确认你在序列连接时在一秒前没有输入任何的字符及在你输入之后也是。
当你进入AT命令模式你会从电台收到'OK'的提示,它会由其他的电台发出停止传送数据。
一旦进入AT模式,你可以给电台'AT'命令来控制本地端的电台,或者(如果已成功连接)你可以使用'RT'命令来控制远程的电台。
可用AT命令如下:
∙ATI-显示电台版本
∙ATI2-显示机板型态
∙ATI3-显示机板频率
∙ATI4-显示机板版本
∙ATI5-显示所有用户设定的EEPROM参数
∙ATI6-显示TDMtiming回报
∙ATI7-显示RSSI讯号回报
∙ATO-离开AT命令模式
∙ATSn?
-显示电台参数编号'n'
∙ATSn=X-设定电台参数编号'n'到'X'
∙ATZ-重启电台
∙AT&W-写入目前参数值至EEPROM
∙AT&F-重置所有参数至出厂默认值
∙AT&T=RSSI-开启RSSI侦错回报
∙AT&T=TDM-开启TDM侦错回报
∙AT&T-关闭侦错回报
所有这些命令,除了ATO,大多可用于连接的远程电台取代“AT”与“RT”。
最有用的命令可能是“ATI5”,它可以显示所有用户可设置EEPROM参数。
这将产生一个像这样的报告:
S0:
FORMAT=22
S1:
SERIAL_SPEED=57
S2:
AIR_SPEED=64
S3:
NETID=25
S4:
TXPOWER=20
S5:
ECC=1
S6:
MAVLINK=1
S7:
OPPRESEND=1
S8:
MIN_FREQ=915000
S9:
MAX_FREQ=928000
S10:
NUM_CHANNELS=50
S11:
DUTY_CYCLE=100
S12:
LBT_RSSI=0
如果你想要变更参数,请于第一行的S缓存器设置。
为了示范,这边把传输功率设为10dBm,使用'ATS4=10'。
大多数的参数会在下次重启时生效。
所以设置完你想要的参数后请使用'AT&W'将它们写入至EPROM,重启请使用'ATZ'。
唯一的例外是发射功率,设置完后会立即改变(在重启后会恢复到旧的设定值除非你使用AT&W)。
各参数的定义如下:
∙FORMAT-EEPROM的版本格式。
不要变更它!
∙SERIAL_SPEED-序列速度,单位是'字节'(请见下文)
∙AIR_SPEED-空中数据速率,单位是'字节'
∙NETID-网络ID。
你要互相沟通的电台模式皆需相同
∙TXPOWER-传输功率单位dBm。
最大值为20dBm
∙ECC-开启/关闭golay错误修正代码
∙MAVLINK-开启/关闭MAVLink框架及回报
∙MIN_FREQ-最小频率,单位是kHz
∙MAX_FREQ-最大频率,单位是kHz
∙NUM_CHANNELS-跳频频道数
∙DUTY_CYCLE-允许发送的时间百分比
∙LBT_RSSI-ListenBeforeTalk条件(请见下文)
两个电台通讯必须要有相同的:
∙电台韧体版本
∙theAIR_SPEED
∙theMIN_FREQ
∙theMAX_FREQ
∙theNUM_CHANNELS
∙theNETID
∙ECC设定
∙LBT_RSSI设定
在链接的两端,其他设置可能会有所不同,虽然你通常会把两边设置为相同。
支持不同的国家/地区
找出哪些国家或地区的当地法规的频率是非常重要的,跳频信道、功率等级,3DR电台可以正确配置并符合您的地方法规。
这里有些通用数据可以帮助你了解。
Region
RadioModel
Settings
Standard
USA
3DR900
MIN_FREQ=902000MAX_FREQ=928000NUM_CHANNELS=50
FCC15.247
Canada
3DR900
MIN_FREQ=902000MAX_FREQ=928000NUM_CHANNELS=50
RSS-210Annex8.1
Australia
3DR900
MIN_FREQ=915000MAX_FREQ=928000NUM_CHANNELS>=20
LIPD-2000item52
Australia
3DR433
MIN_FREQ=433050MAX_FREQ=434790TXPOWER<=14
LIPD-2000item17
Europe(mostcountries)
3DR433
MIN_FREQ=434040MAX_FREQ=434790TXPOWER<=8NUM_CHANNELS>=30
ETSIEN3002207.2.3
Europe(mostcountries)
3DR433
MIN_FREQ=433050MAX_FREQ=434790TXPOWER<=8DUTY_CYCLE=10
ETSIEN3002207.2.3
UnitedKingdom
3DR433
MIN_FREQ=433050MAX_FREQ=434790TXPOWER<=8DUTY_CYCLE=10
IR2030/1/10
NewZealand
3DR900
MIN_FREQ=921000MAX_FREQ=928000
Notice2007,Schedule1
NewZealand
3DR433
MIN_FREQ=433050MAX_FREQ=434790
Notice2007,Schedule1
Brazil
3DR433
MIN_FREQ=433000MAX_FREQ=435000TXPOWER<=8
ResoluçãoANATELnº506/2008
Brazil
3DR900
MIN_FREQ=902000MAX_FREQ=907500NUM_CHANNELS>=11
ResoluçãoANATELnº506/2008
Brazil
3DR900
MIN_FREQ=915000MAX_FREQ=928000NUM_CHANNELS>=26
ResoluçãoANATELnº506/2008
我们很高兴这表格有越来越多的国家!
请这个讯息张贴在论坛上,这个连结代表适用的法规和信息。
此外,请指出,现有的表格中的任何错误。
请注意,上述表是大多数的使用者无需任何特殊的许可。
如果你的应用程序需要特定的许可证或一个业余牌照,那么你就应该知道什么规则是适用于您。
最后,您有责任遵守。
3DR电台模块是个“DIY”电台零件,你需要确保你的使用是符合当地法规。
请仔细检查您的地方性法规。
可用频率范围
下表可能有帮助你使用符合当地的电台法规的方式将两个电台模块连接起来
电台模块
最小频率(MHz)
最小频率(MHz)
3DR433
414.0
454.0
3DR900
895.0
935.0
DutyCycle(工作周期)设置
大多数的使用者会将DUTY_CYCLE设为100。
DUTY_CYCLE就是最大电台传输封包的时间百分比。
dutycycle被列入的原因是世界上有些地区允许更高的发射功率或更多的频率,如果你的dutycycle在某个数值以下都是可以被使用的。
所以例如在欧洲,如果你的dutycycle不超过10%,你可以使用433的带宽传输。
当您的dutycycle设定低于100%,你可用带宽将会减少,所以你会发现最好的运作方式是遥测模块使用较高的波特率。
由APM上使用10%的dutycycle来取得良好的遥测仍然相当实用,但遥测模块的通讯任务相当'bursty(丛发性)',所以平均传输时间普遍不高。
例如你把AIR_SPEED设为128启动ECC并且DUTY_CYCLE设为10,就可以很容易的接收到所有的2HZ的遥测讯号。
你只要将DUTY_CYCLE设置为0,就可以把电台设置为接收端。
运作时最好可以将NUM_CHANNELS设成较低的号码,否则,时序同步(clocksynchronisation)会变得很差。
ListenBeforeTalk(LBT)
3DR电台模块可以实现'listenbeforetalk'(LBT)功能,使其能够符合更广泛的区域监管要求。
LBT的是一个电台需要听一段时间,看看是否有其他电台信号,然后才允许传输的系统。
你的电台经过非零LBT_RSSI的数值会变得更加“polite(井然有序)”,等到其他人已停止传输自己才会开軩传输。
要在电台模块启用LBT你必须先设置LBT_RSSI参数。
电台会认为这个迹象的信号强度,表示该信道是被占用的。
如果你将LBT_RSSI设为0,LBT就是关闭。
最小值不得为0,我们设25,表示在接收灵敏度(-121dBm)以上几dB。
要设置LBT_RSSI你需要知道LBT功能的电台地方法规的讯号等级。
每个增加量超过25的LBT_RSSI等于0.5dB以上的电台接收端灵敏度。
所以,如果你设置LBT_RSSI为40,电台就会考虑通道是空的,但这个要在讯号强度低于7.5dB的接收端灵敏度。
另外,您可以使用这个公式取得dBm的接收信号强度:
signal_dBm=(RSSI/1.9)-127
这个公式是近似值,但已经相当接近。
更精确的图请见Si1000数据表。
需要查询您当地的监管要求,看看你应该使用什么样的LBT_RSSI设置。
LBT在3DR电台的实行,是使用5ms的最低接收时间,加上随机接收时间与欧洲9.2.2.2的规则相同。
请注意,在许多地区,您需要结合AFA(AdaptiveFrequencyAgility)来执行LBT。
3DR电台已实现AFA只要你将NUM_CHANNELS的设置大于1。
技术祥解
在进行评估时,如果这个电台符合您的地方性法规,可能有助于知道它使用什么技术。
韧体使用同步分时多任务(timedivisionmultiplexing,TDM)来执行跳频式展频(frequencyhoppingspreadspectrum,FHSS)。
具体来说,电台将MIN_FREQ+delta和MAX_FREQ-delta之间的频率范围划分成NUM_CHANNELS的通道。
'delta'表示一个保护范围,以确保我们保持并远离允许带的边缘。
保护范围设置为通道宽度的一半。
通道宽度定义为:
channel_width=(MAX_FREQ-MIN_FREQ)/(NUM_CHANNELS+2)
另外,电台会使用一个以NETID为基础的随机种子,扭曲基频增加到一个以上的通道。
这意味着两个电台使用不同NETID号码,频率就会略有不同。
电台使用GFSK(GaussianFrequencyShiftKeying)对某一特定频率的传输。
TDM工作原理是把时间画分成数个16us的片段(时槽)。
时槽的最大停留时间在任何频率下皆是0.4s(这是为了符合美国法规)。
TDM算法工作原理如下:
∙EEPROM的参数决定了一组TDM参数的设定,特别是发射窗口和静止期,都是以16微秒为单位。
你可以使用ATI6浏览结果。
∙发射窗口缩放允许3个全尺寸封包被传送
∙对于给定的数据速率,静止期等于两倍的封包延迟。
∙两个电台自动加入13位的时槽信息到所有封包来同步它们的时序。
时槽的单位是16us。
∙每个无线在'转换时'只会处于发射状态。
所以电台取得一个发射窗口的时间值,然后只要不是电台发射时就会有一个静止期,接下来其他的电台就会轮到它。
我们绝对不会有电台同时发射的状态。
∙发送通道会被组成基于NETID的随机序列
∙静止期间,每一轮完整的TDM,频率会被变更为下一个通道的两倍
∙当没有发射时,数据会在串行端口2048byte的缓冲区进行缓冲
∙为了预防缓冲区太多数据(增加延迟和过载的风险)电台连接的设备会发送缓冲区是否已满的信息。
APM的代码配置少量的遥测速率来保持缓冲的数据量是合理的。
∙TDM算法也具有自适性,意思是说,当轮到电台A传送,它可以送出一个小讯息给电台B说"我现在不需要送什么,你可以休息片刻"。
这就是非对称负载自动平衡的连接。
∙在另一个电台初始搜索的期间,任何时间的连接都是不存在的,电台进入模式后,它们移动接收频率非常缓慢,但是会用正常的速率移动发射频率。
这使得两个电台找到彼此的初始时序同步。
这需要多长时间取决于信道的数目、空中数据传输速率和封包遣失率。
在某些地区,你可能需要知道每个通道内的辐射能量分布。
这取决于许多因素,但主要是用于GFSK调制频率偏差。
下列公式会给你一个频率偏差估计:
frequency_deviation=air_data_rate*1.2
minfreqdeviation=40
maxfreqdeviation=
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- APM2 使用 DR 电台 综述