ardupilot设置指南.docx
- 文档编号:9917648
- 上传时间:2023-02-07
- 格式:DOCX
- 页数:78
- 大小:7.29MB
ardupilot设置指南.docx
《ardupilot设置指南.docx》由会员分享,可在线阅读,更多相关《ardupilot设置指南.docx(78页珍藏版)》请在冰豆网上搜索。
ardupilot设置指南
介绍
需要的部件
∙一块ArduPilotMega板
∙一个带有连接器的ArduPilotMegaIMU板
∙一个MediaTekGPS模块或uBloxGPS模块。
(与适配器一起订购,并为ArduPilot编程).
∙双母头舵机线,数量为ArduPilotMega控制的通道数加1。
基本设置为4通道,但APM可最多控制8个通道。
其中一个通道用来控制ArduPilotMega。
∙用来无线遥测的两个Xbee无线模块和两个适配器。
我们在空中使用这个Xbee,地面使用这个Xbee和这个天线.可以在空中使用这个XtreamBee适配器,并地面使用SparkfunUSB适配器;或者可以使用两个XtreamBee适配器,在地面上的那个使用一条FTDI传输线连到电脑上。
你还需要一个至少5通道的遥控设备,一个烙铁,一条miniUSB线,当然还有一个能飞的东西!
(我们偏爱EasyStar和SkyFun飞翼).
方法
仔细阅读说明书!
某一天自驾仪将成为一个能在沃尔玛买到的即插即用设备,但可惜不是现在。
飞行器各不相同,而作为一个开源项目我们尽可能支持广泛的硬件配置。
这就意味着在飞行之前你必须配置自驾仪。
一旦你配置好,你还需要根据自己的飞机来调整自驾仪。
采用循序渐进的方法,也就是说,首先处理基本问题,每次只改变一到两个设置,然后测试是否合适,在进行下一项调整。
另外重要一点是只有在理解之后再做尝试。
在还没有良好理解和阅读注意事项之前使用使用默认设置。
反复阅读基本章节。
保留以前的版本,这对排除问题是很有用的,或者也可以恢复到以前正常工作的版本。
如果存在疑问,在飞真机之前使用模拟器!
连接到电脑上
APM使用一条miniBUSB数据线。
如下所示插到板子上:
当吧你的APM用USB数据线连到电脑上时,Windows7将识别FTDIUSB转串口芯片并安装正确的驱动。
如果没有识别,或者你使用早期版本的Windows,你需要从这里下载和安装正确的驱动。
安装好之后,重启电脑,再次插上数据线。
电脑将识别芯片,并在Windows设备管理器里面显示,如下所示(你的COM端口可能序号不同,它是Windows根据你连接过多少其他的设备而分配的)。
那就是你用来与APM交互的COM端口。
现在就可以使用APM了!
下面是根据设置遥控设备配置APM的说明:
1连接遥控接收器和舵机
2设置正确的舵机运动方向
遥控设置和飞机设置都各不相同,你经常会发现一个或几个舵机是反向的。
除了编辑配置文件并重新加载程序之外,你还可以使用IMU板上的拨动开关来调整舵机方向。
大多数用户会使用默认设置,即所有开关都朝下。
从左到右(左侧是靠近滑动开关的那一侧)分别是横滚、俯仰、方向和混控模式。
对于横滚、俯仰和方向,往下是正常,往上是反向。
对于混控模式,往下是普通模式,往上是升降副翼/V尾。
当使用升降副翼/V尾时,前三个开关分别是升降副翼反向,升降副翼通道1反向和升降副翼通道2反向。
下面是我的Skyfun三角翼的一个例子:
油门通道反向仍然必须在配置文件中设置——我们不希望某人意外拨动一个开关就导致油门升到最大!
设置舵机方向
正确设置舵机方向的最简单的方法是在开机之后。
当APM处于稳定模式,控制舵面移动的方向应该保持飞机水平直线飞行。
拿住飞机,确保翼面在手动飞行模式下正确移动(如果不正常,在发射器上设置舵机反向)。
然后切换到稳定飞行模式(你可以使用命令行解析器来设置该模式,将在后文中介绍)
当你前后倾斜飞机,升降舵应该相应移动(当机头向下倾斜时,升降舵应该抬起,反之亦然)。
如果舵机运动方向错误,拨动第二个开关,如上表所示。
当你移动发射器摇杆时,舵机在稳定模式下的运动方向应该和手动模式下的方向一致。
对副翼做同样到操作。
首先检查在手动模式下是否正确,然后检查稳定模式。
当你倾斜飞机使它向左倾斜转弯时,右侧副翼应该向上运动,左侧副翼应该向下运动。
如果方向反了,拨动第一个开关。
如果需要反向油门通道,将APM_Config.h文件中的这一行改成"ENABLED":
#defineTHROTTLE_REVERSEDISABLED
APM软件
从APM2.0开始,上传APM固件最简单的方法是使用任务规划器。
可以在这里下载最新的APM任务规划器(叫做APMPlanner(xxx).zip)。
解压文件,运行ArdupilotMegaPlanner.exe。
它将提示你选择代码目录,我们将在以后介绍。
直接单击"OK"按钮。
这将在你屏幕的顶部打开一个菜单条。
如果你插上了APM,将显示它连接的串口。
(如果你有好几个串口,所有都将显示。
如果你不确定哪个是连着APM的,检查Windows设备管理器)。
确保波特率(baudrate)设为115200。
在Action菜单中,选择UploadFirmware,然后单击"UpdateCheck"。
任务规划器将从网上获取最新的固件选项。
通常会列出好几种固件选项:
APM1280或APM2560板子的默认固件,和每种板子用来与在Xplane里模拟的固件版本。
选择需要的一种。
然后选择你的板子类型(APM1280或APM2560),单击"UploadFirmware",固件将上传到APM板子里。
命令行解析器和设置/测试模式
∙设置
遥控设置
飞行控制模式
检查舵机反向设置
∙记录
∙测试
命令行解析器(CommandLineInterpreter,CLI)是你设置和测试APM的主要方式。
它有点类似于传统的DOS提示符。
你必须使用这个解析器来设置APM,然后才能够飞行。
注意在改变滑动开关的位置之后你必须重启板子,它才能够识别设置并加载正确的模式。
(这意味着在使用CLI并将开关切回飞行模式后,必须在飞行前将板子断电并重新上电。
)
CLI的使用步骤包括以下三步:
1将IMU板的滑动开关拨到靠近舵机插头的位置,如图所示。
(在准备飞行时需要将其拨回靠近拨动开关的位置)
2用USB/FTDI传输线将板子与电脑相连
3如图所示,单击Arduino工具栏上串口监视器(SerialMonitor)按钮,打开串口监视器窗口
(确保串口波特率为115200,行结束符(lineending)选择"CarriageReturns"):
现在你可以在串口监视器上放的输入框内输入命令,然后按回车键。
输入"exit"退出。
这里我输入"help"查看命令列表:
起始命令包括:
∙"logs":
记录回读信号/设置模式。
(在飞行之后使用)
∙"setup":
初始设置模式
∙"test":
测试模式
设置
设置过程根据你的遥控设定和需要的飞行模式配置APM。
输入"setup"然后按回车键进入该模式。
在飞行前必须进行遥控设置和飞行模式设置。
你还应该测试GPS锁定(在测试模式中使用gps命令),这通常需要在空旷的户外进行。
允许的设置命令包括:
∙"reset":
重置APM为默认设置
∙"radio":
设置遥控
∙"modes":
设置触发开关每个位置对应的飞行模式
∙"show":
显示EEPROM中当前所有设置
遥控设置
在这个模式中你必须移动发射器摇杆到它们的极限位置,如下所述:
移动右摇杆到右上角,再到右下角,再到左上角,再到左下角。
对左摇杆重复以上操作。
移动顺序其实不重要,重要的是每个摇杆都碰到了4个角。
这是一张典型的遥控设置过程的截图:
注:
如上图所示,你连接的通道的读数的最小值应该在1000-1300左右,最大值在1900-2000左右。
(如果读数恰好为1000和2000,那就是说通道没有连上。
)如果你的读数都在1500左右,可能有三个原因:
4在测试过程中你没有将摇杆移动到极限位置(4个角落)
5你的接收连接不正确,可能是插反了,或者插错引脚,或者没有连上
6你的APM板子版本较老,需要更新PPM固件。
参阅相关说明
飞行控制模式
下面叙述如何设置飞行模式:
在CLI中,进入设置模式。
输入"modes"并按回车。
现在当你拨动遥控上的开关时,你可以看到窗口中显示对应的飞行模式。
如果你想改变飞行模式,使用发射器上的“方向/副翼”摇杆。
将摇杆左右移动,飞行模式就会变化。
输入回车键保存设置并退出。
参见这个例子:
这里是一个视频教程:
检查舵机反向设置
现在是检查舵机反向设置的好时候。
相关说明在这里。
记住如果你的飞机有升降副翼(飞翼或三角翼),你还要用拨动开关设置混控。
如果你的飞机是普通飞机,但是发现通道1和2有某种关联,那就意味着你不小心设置了升降副翼混控。
将拨动开关拨到下方,切回普通模式。
记录
该模式允许你读取和管理记录在16MB数据记录器中的飞行记录文件。
注:
你必须在使用记录功能之前先执行erase命令。
没有使用erase命令将导致不正确的记录和其他问题。
∙"dump(n)":
读取记录"n"
∙"erase":
清除所有记录
∙"enable(name)orall":
Enablelogging"name"oreverything
∙"disable(name)orall":
Disablelogging"name"oreverything
测试
你可以在交互测试模式中测试你的硬件和设置。
请参阅详细说明。
APM测试套件
APM附有12个测试功能,可以检查所有主要的子系统。
因此你可以一个一个检查它们是否工作正常。
要使用测试功能,在CLI中输入"test",然后输入"help",可以看到所有的测试功能:
可用的测试包括:
∙"radio":
显示每个遥控通道的输入读数
∙"gps":
显示GPS模块的当前数据。
如果GPS没有锁定,那么结果是0
∙"imu":
显示当前的x,y,z轴姿态
∙"gyro":
显示偏航陀螺和加速度计的读数
∙"battery":
显示当前的电池电压(需安装电压监视器)
∙"relay":
测试板上的继电器
∙"waypoints":
显示当前设置的航点
∙"airspeed":
显示差分气压传感器数据(需安装差分气压传感器)
∙"airpressure":
显示板上的绝对气压传感器的数据
∙"compass":
显示地磁计的数据(需安装地磁计)
∙"xbee":
显示从Xbee无线模块读入的数据(需安装Xbee模块)
∙"eedump":
导出板上EEPROM存储器的当前数据
遥控输入
说明:
照此说明连接遥控接收机和APM。
打开发射器,移动摇杆。
输入以脉宽调变(PWM)值的方式显示。
输入则以舵机偏移角度的方式显示。
在串口控制台中输入回车退出本测试。
典型数据:
故障检修:
如果所有的显示值都不随你的遥控输入变化,可能的原因包括:
1你没有配置遥控输入。
参见相关说明。
2遥控连线不正确。
(插反了?
)
3你拿到的可能是早期有问题的固件。
你可以自行升级固件,请参考本说明。
(译注:
国内版本应该不存在该问题)
GPS输入
说明:
本测试显示GPS模块的输出。
该模块应该插在APM板的GPS端口上。
通常情况下,只有在户外空旷地点测试GPS才有意义。
某些GPS模块在木制建筑内也可以锁定卫星(如果GPS与天空之间没有间隔太多层的话,但是结果不可预料)。
当GPS模块冷启动时(一天以上没有通电),通常需要约15分钟才能锁定卫星。
典型数据:
故障检修:
如果你在户外很长时间(15分钟以上)都无法锁定卫星,可能的原因包括:
∙如果你使用MediaTekGPS模块,需要在上电之后重置APM板,才能正确发送配置字串。
我们未来会修正这个问题,但现在应在测试GPS之前按一下重置按钮。
∙你确定将GPS插到APM板上,而不是IMU板上那个差不多的端口(写着"NOGPS!
")上?
∙传输线有问题(检查连接器的针是否弯曲)
∙GPS固件损坏。
重新加载固件的说明在这里:
uBlox,MediaTek
∙你使用的GPS模块不受支持。
当前仅支持DIYDrones的uBlox和MediaTek模块
IMU输出
说明:
本测试记录板子移动时,DCM算法的输出结果。
当传感器校准时,IMU板上的LED将快速闪烁20-30秒,然后开始显示数据。
偏航(yaw)数据可能略有漂移,因为它只能根据运动时的GPS数据和/或地磁计(如果使用了的话)数据进行校正,而这些数据在室内通常不正确。
旋转板子时的典型数据(roll,pitch,yaw):
故障检修:
如果板子移动时数据不变,可能有电路连接问题,最可能是焊接错误引起的。
检查焊点!
原始传感器输入数据
说明:
本测试显示陀螺仪(左侧三列)和加速度计(右侧三列)的原始数据。
记住陀螺仪显示每个轴向上的旋转速率,而加速度计显示绝对角度。
因此当停止旋转板子时,陀螺仪将回到初始数据。
样例数据:
Battery
UpdatedMar25,2011byhazy...@
说明:
本测试仅在如此说明所述的电压传感器之后有效。
四个数据位是四个分压器的输出值。
如果你照上述说明所述连接电池,这将表示电池每个电芯的电压——3S电池有3个电芯,4S电池有4个。
由于电芯是串联的,因此最后一个电池电压就是电池组的总电压。
在下图所示的例子中,我使用了一个3S11.1v电池(实际上是11.4v)。
第4个分压器没有使用,所以可以忽略那一列数据。
样例数据:
继电器
说明:
注:
这不是beta版代码中的功能,请等待...本测试仅在每5秒时切换继电器的开关状态。
典型数据:
你应当每5秒听到一个微弱的声音。
再次声明,本测试在当前代码中不可用。
Waypoints
UpdatedMar25,2011byhazy...@
说明:
本测试假设你已经使用航点规划器输入了任务命令并已保存到EEPROM中。
此时,将显示EEPROM中的命令。
一共可以有256个命令。
数据显示当前内存中的所有数据的每一字段,每个字段的涵义请参见命令指南。
在航点中,高度数据的单位为厘米(因此100m将显示10000).
样例数据:
AirspeedTest
UpdatedMar25,2011byhazy...@
说明:
本测试假定你已经按照说明安装了空速传感器。
测试传感器时,轻轻地向差分压力传感器的上管中吹气。
样例数据:
Airpressure
UpdatedMar25,2011byhazy...@
说明:
本测试根据当前海拔高度校准气压传感器,并输出相对海拔高度(如果上下移动板子的话)和原始数据。
典型数据:
MagnetometerTest
UpdatedMar25,2011byhazy...@
地磁仪测试
说明:
1.0代码不支持地磁仪。
但如果你有地磁仪的话,可以用\libraries\APM_Compass\examples目录中的APM_Compass_test文件测试。
将该固件传到你的板子上,通过串口终端观察数据。
串口波特率为38,400。
连接地磁仪的说明在这里.
(注:
目前板子的方向标志是错的。
正确的标志请参见该帖。
)
典型数据:
故障检修:
记住地磁仪只关注方向。
如果方向数据反了,可能是你把板子上下颠倒了(即将地磁仪焊接到板子上那样)。
不用担心——在设置里面可以配置。
Xbee测试
说明:
根据该说明连接Xbee模块。
确保APM通过USB与电脑相连,并且地面Xbee模块也通过USB与电脑相连。
在CLI中,输入"test"进入测试模式,然后输入"xbee"。
在PC上,启动X-CTU工具。
确保X-CTU中的串口设置为连接到地面模块的串口,波特率为57600bps(默认值)或你的APM端口的设置。
(在下图中,我将Xbees和Port3的波特率都设为38400).
样例数据:
在APM端,串口监视器应当显示下面的数据:
在PC端,X-CTU工具应当在终端窗口显示类似下面的数据:
你也可以测试距离。
开始测试,你应该可以看待类似下图的数据:
在CLI中按回车键退出测试。
附注:
如果你想修改Xbee模块的速率,可以在APM_Config.h文件中设置。
在文件中加上这行,并将38400改为你想设置的速率:
#defineSERIAL3_BAUD38400
EEPROM
UpdatedMar25,2011byhazy...@
说明:
本测试显示EEPROM中的所有数据。
这可能对调试问题有帮助。
因此如果某人要你的EEPROM数据,你可以导出、复制并粘贴到其他文件中。
样例数据:
#summary原始GPS数据
本测试显示GPS模块的原始输出数据。
如果你在常规GPS测试中遇到问题,本测试可能对调试有所帮助。
对多数用户不推荐,仅用于底层GPS调试。
如果你希望以ASCII方式显示数据,在Test标签页中修改这行:
Serial.print(incoming,BYTE);//willoutputBytevalues
tothis...
Serial.print(incoming,ASCII);//willoutputASCIIvalues
GPS选择指南
硬件安装说明在这里.
//*解释*
//Diydrones是一个开源站点,不同人使用不同的设备。
//因为可以使用不同的GPS模块,所以需要告知APM你使用哪一种。
//
//*说明*
//查看下面的GPS模块列表,查找你的模块,按一下方式定义
//例子"#defineGPS_PROTOCOLGPS_PROTOCOL_UBLOX"请注意只修改
//"GPS_PROTOCOL_UBLOX"部分,并且你的设置应该完全相同
//
//*可用选项*
//GPS_PROTOCOL_NONE没有安装GPS
//GPS_PROTOCOL_IMUX-Plane接口或ArduPilotIMU.
//GPS_PROTOCOL_MTKMediaTekGPS.
//GPS_PROTOCOL_MTK16MediaTekGPS1.6版固件
//GPS_PROTOCOL_UBLOXUBLOXGPS
//GPS_PROTOCOL_SIRFSiRF-basedGPS,二进制模式.未测试
//GPS_PROTOCOL_NEMANEMA格式,国内MTK模块
//******************
//*SELECTEDOPPTION*
#defineGPS_PROTOCOLGPS_PROTOCOL_UBLOX
//******************
空速传感器指南
硬件安装说明在这里.
//*解释*
//空速传感器帮助APM更精确地计算空速,因此能够更好地处理风和空速计算
//
//*说明*
//因为空速传感器是一个附件,你需要告知APM安上了一个空速传感器
//如果你正确安装了一个空速传感器,则将"#defineAIRSPEED_SENSORDISABLED"
//改为"#defineAIRSPEED_SENSORENABLED"
//*可用选项*
//#defineAIRSPEED_SENSORDISABLED
//#defineAIRSPEED_SENSORENABLED
//*****************
//*SELECTEDOPPTION*
#defineAIRSPEED_SENSORENABLED
//*****************
遥测指南
硬件安装指南在这里。
1)速度选择
//*EXPLAINED*
//TelemetryisinformationthatissentoverawirelesslinkbetweentheUAVandyourlaptop,thisisusedwhenaGCS(GroundControlStation)likeHK*GCSorQGCSis
//usedanditsendsthatinformationthrough"Telemport"onyourAPMthroughaXbeemodule(wirelessmoduleseelinkabove)
//
//*INSTRUCTIONS*
//BecausetelemetryisaadditionaladdonyouneedtotellAPMthatyouareusingone,
//ifyoufollowedtheinstructionsinthelinkaboveexactlythenyouneedtodothefollowing.
//TheXbeemoduleshasdifferentspeedsettings(Baudrates)thedefaultbaudratefortelemetryis57600,ifyoudonothaveenoughknowledgeyetwe
//Suggestyouusethedefaultbaud.simplychangethestatement"#defineSERIAL3_BAUD57600"towhateverspeedyouwouldlikeifyouchosetochangeit.
//
//*AVAILABLESPEEDOPTIONS*NOTE:
WHENCHOSINGABUADSPEEDFORYOURTELEMETRYYOUNEEDTOSETUPYOUR
//#defineSERIAL3_BAUD9600XBEETOTHESAMESPEEDASWELLASYOURGCS(goundcontrolstation)
//#defineSERIAL3_BAUD19200INSTRUCTIONSCANBEFOUNDINLINKABOVE
//#defineSERIAL3_BAUD38400
//#defineSERIAL3_BAUD57600
//#defineSERIAL3_BAUD115200
//******************
//
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ardupilot 设置 指南