ardupilot设置指南.doc

上传人:laozhun 文档编号:2397029 上传时间:2023-02-17 格式:DOC 页数:78 大小:8.95MB
返回 下载 相关 举报
ardupilot设置指南.doc_第1页
第1页 / 共78页
ardupilot设置指南.doc_第2页
第2页 / 共78页
ardupilot设置指南.doc_第3页
第3页 / 共78页
ardupilot设置指南.doc_第4页
第4页 / 共78页
ardupilot设置指南.doc_第5页
第5页 / 共78页
点击查看更多>>
资源描述

《ardupilot设置指南.doc》由会员分享,可在线阅读,更多相关《ardupilot设置指南.doc(78页珍藏版)》请在三一办公上搜索。

1、介绍需要的部件 一块 ArduPilot Mega 板 一个带有连接器的 ArduPilot Mega IMU 板 一个 MediaTek GPS 模块 或 uBlox GPS 模块。(与适配器一起订购,并为ArduPilot编程). 双母头舵机线,数量为 ArduPilot Mega 控制的通道数加1。基本设置为4通道,但 APM 可最多控制8个通道。其中一个通道用来控制 ArduPilot Mega。 用来无线遥测的两个 Xbee 无线模块和两个适配器。我们在空中使用这个 Xbee,地面使用这个 Xbee 和这个天线. 可以在空中使用这个 XtreamBee 适配器,并 地面使用 Spar

2、kfun USB 适配器; 或者可以使用两个 XtreamBee 适配器, 在地面上的那个使用一条 FTDI 传输线连到电脑上。你还需要一个至少5通道的遥控设备,一个烙铁,一条mini USB线,当然还有一个能飞的东西!(我们偏爱 EasyStar 和 SkyFun 飞翼).方法仔细阅读说明书! 某一天自驾仪将成为一个能在沃尔玛买到的即插即用设备,但可惜不是现在。飞行器各不相同,而作为一个开源项目我们尽可能支持广泛的硬件配置。这就意味着在飞行之前你必须配置自驾仪。一旦你配置好,你还需要根据自己的飞机来调整自驾仪。采用循序渐进的方法,也就是说,首先处理基本问题,每次只改变一到两个设置,然后测试是

3、否合适,在进行下一项调整。另外重要一点是只有在理解之后再做尝试。在还没有良好理解和阅读注意事项之前使用使用默认设置。反复阅读基本章节。保留以前的版本,这对排除问题是很有用的,或者也可以恢复到以前正常工作的版本。如果存在疑问,在飞真机之前使用模拟器!连接到电脑上APM 使用一条 miniB USB 数据线。如下所示插到板子上:当吧你的 APM 用 USB 数据线连到电脑上时,Windows 7 将识别 FTDI USB转串口芯片并安装正确的驱动。如果没有识别,或者你使用早期版本的 Windows,你需要从这里下载和安装正确的驱动。安装好之后,重启电脑,再次插上数据线。电脑将识别芯片,并在 Win

4、dows 设备管理器里面显示,如下所示(你的 COM 端口可能序号不同,它是 Windows 根据你连接过多少其他的设备而分配的)。那就是你用来与 APM 交互的 COM 端口。现在就可以使用 APM 了!下面是根据设置遥控设备配置 APM 的说明:1 连接遥控接收器和舵机2 设置正确的舵机运动方向遥控设置和飞机设置都各不相同,你经常会发现一个或几个舵机是反向的。除了编辑配置文件并重新加载程序之外,你还可以使用IMU板上的拨动开关来调整舵机方向。大多数用户会使用默认设置,即所有开关都朝下。从左到右(左侧是靠近滑动开关的那一侧)分别是横滚、俯仰、方向和混控模式。对于横滚、俯仰和方向,往下是正常,

5、往上是反向。对于混控模式,往下是普通模式,往上是升降副翼/V尾。当使用升降副翼/V尾时,前三个开关分别是升降副翼反向,升降副翼通道1反向和升降副翼通道2反向。下面是我的Skyfun三角翼的一个例子:油门通道反向仍然必须在配置文件中设置我们不希望某人意外拨动一个开关就导致油门升到最大!设置舵机方向正确设置舵机方向的最简单的方法是在开机之后。当APM处于稳定模式,控制舵面移动的方向应该保持飞机水平直线飞行。拿住飞机,确保翼面在手动飞行模式下正确移动(如果不正常,在发射器上设置舵机反向)。然后切换到稳定飞行模式(你可以使用命令行解析器来设置该模式,将在后文中介绍)当你前后倾斜飞机,升降舵应该相应移动

6、(当机头向下倾斜时,升降舵应该抬起,反之亦然)。如果舵机运动方向错误,拨动第二个开关,如上表所示。当你移动发射器摇杆时,舵机在稳定模式下的运动方向应该和手动模式下的方向一致。对副翼做同样到操作。首先检查在手动模式下是否正确,然后检查稳定模式。当你倾斜飞机使它向左倾斜转弯时,右侧副翼应该向上运动,左侧副翼应该向下运动。如果方向反了,拨动第一个开关。如果需要反向油门通道,将 APM_Config.h 文件中的这一行改成 ENABLED:# define THROTTLE_REVERSE DISABLEDAPM 软件从 APM 2.0 开始, 上传 APM 固件最简单的方法是使用任务规划器。可以在这

7、里下载最新的 APM 任务规划器 (叫做 APMPlanner(xxx).zip)。解压文件,运行ArdupilotMegaPlanner.exe。它将提示你选择代码目录,我们将在以后介绍。直接单击 OK 按钮。这将在你屏幕的顶部打开一个菜单条。如果你插上了 APM,将显示它连接的串口。(如果你有好几个串口,所有都将显示。如果你不确定哪个是连着 APM 的,检查 Windows 设备管理器)。确保波特率(baud rate)设为 115200。在 Action 菜单中,选择 Upload Firmware, 然后单击 Update Check。任务规划器将从网上获取最新的固件选项。通常会列出好

8、几种固件选项: APM1280 或 APM2560 板子的默认固件,和每种板子用来与在 Xplane 里模拟的固件版本。选择需要的一种。然后选择你的板子类型 (APM1280 或 APM2560), 单击 Upload Firmware, 固件将上传到 APM 板子里。命令行解析器和设置/测试模式 设置遥控设置飞行控制模式检查舵机反向设置 记录 测试命令行解析器(Command Line Interpreter,CLI)是你设置和测试APM的主要方式。它有点类似于传统的DOS提示符。你必须使用这个解析器来设置APM,然后才能够飞行。注意在改变滑动开关的位置之后你必须重启板子,它才能够识别设置并

9、加载正确的模式。(这意味着在使用CLI并将开关切回飞行模式后,必须在飞行前将板子断电并重新上电。)CLI的使用步骤包括以下三步:1 将IMU板的滑动开关拨到靠近舵机插头的位置,如图所示。(在准备飞行时需要将其拨回靠近拨动开关的位置)2 用USB/FTDI传输线将板子与电脑相连3 如图所示,单击Arduino工具栏上串口监视器(Serial Monitor)按钮,打开串口监视器窗口(确保串口波特率为115200,行结束符(line ending)选择Carriage Returns):现在你可以在串口监视器上放的输入框内输入命令,然后按回车键。输入 exit 退出。这里我输入 help 查看命令

10、列表:起始命令包括: logs: 记录回读信号/设置模式。(在飞行之后使用) setup: 初始设置模式 test: 测试模式设置设置过程根据你的遥控设定和需要的飞行模式配置APM。输入 setup 然后按回车键进入该模式。在飞行前必须进行遥控设置和飞行模式设置。你还应该测试GPS锁定(在测试模式中使用gps命令),这通常需要在空旷的户外进行。允许的设置命令包括: reset: 重置APM为默认设置 radio: 设置遥控 modes: 设置触发开关每个位置对应的飞行模式 show: 显示EEPROM中当前所有设置遥控设置在这个模式中你必须移动发射器摇杆到它们的极限位置,如下所述:移动右摇杆到

11、右上角,再到右下角,再到左上角,再到左下角。对左摇杆重复以上操作。移动顺序其实不重要,重要的是每个摇杆都碰到了4个角。这是一张典型的遥控设置过程的截图:注: 如上图所示,你连接的通道的读数的最小值应该在1000-1300左右,最大值在1900-2000左右。(如果读数恰好为1000和2000,那就是说通道没有连上。) 如果你的读数都在1500左右,可能有三个原因:4 在测试过程中你没有将摇杆移动到极限位置(4个角落)5 你的接收连接不正确,可能是插反了,或者插错引脚,或者没有连上6 你的APM板子版本较老,需要更新PPM固件。参阅相关说明飞行控制模式下面叙述如何设置飞行模式:在CLI中,进入设

12、置模式。输入 modes 并按回车。现在当你拨动遥控上的开关时,你可以看到窗口中显示对应的飞行模式。如果你想改变飞行模式,使用发射器上的“方向/副翼”摇杆。将摇杆左右移动,飞行模式就会变化。输入回车键保存设置并退出。参见这个例子:这里是一个视频教程:检查舵机反向设置现在是检查舵机反向设置的好时候。相关说明在这里。记住如果你的飞机有升降副翼(飞翼或三角翼),你还要用拨动开关设置混控。如果你的飞机是普通飞机,但是发现通道1和2有某种关联,那就意味着你不小心设置了升降副翼混控。将拨动开关拨到下方,切回普通模式。记录该模式允许你读取和管理记录在16MB数据记录器中的飞行记录文件。注: 你必须在使用记录

13、功能之前先执行erase命令。没有使用erase命令将导致不正确的记录和其他问题。 dump (n): 读取记录 n erase: 清除所有记录 enable (name) or all: Enable logging name or everything disable (name) or all: Disable logging name or everything测试你可以在交互测试模式中测试你的硬件和设置。请参阅详细说明。APM测试套件APM附有12个测试功能,可以检查所有主要的子系统。因此你可以一个一个检查它们是否工作正常。要使用测试功能,在CLI中输入 test,然后输入help,

14、可以看到所有的测试功能:可用的测试包括: radio: 显示每个遥控通道的输入读数 gps: 显示GPS模块的当前数据。如果GPS没有锁定,那么结果是0 imu: 显示当前的x,y,z轴姿态 gyro: 显示偏航陀螺和加速度计的读数 battery: 显示当前的电池电压(需安装电压监视器) relay: 测试板上的继电器 waypoints: 显示当前设置的航点 airspeed: 显示差分气压传感器数据(需安装差分气压传感器) airpressure: 显示板上的绝对气压传感器的数据 compass: 显示地磁计的数据(需安装地磁计) xbee: 显示从Xbee无线模块读入的数据(需安装Xb

15、ee模块) eedump: 导出板上EEPROM存储器的当前数据遥控输入说明: 照此说明连接遥控接收机和APM。 打开发射器,移动摇杆。输入以脉宽调变(PWM)值的方式显示。输入则以舵机偏移角度的方式显示。在串口控制台中输入回车退出本测试。典型数据:故障检修: 如果所有的显示值都不随你的遥控输入变化,可能的原因包括:1 你没有配置遥控输入。参见相关说明。2 遥控连线不正确。(插反了?)3 你拿到的可能是早期有问题的固件。你可以自行升级固件,请参考本说明。(译注:国内版本应该不存在该问题)GPS输入说明: 本测试显示GPS模块的输出。该模块应该插在APM板的GPS端口上。通常情况下,只有在户外空

16、旷地点测试GPS才有意义。某些GPS模块在木制建筑内也可以锁定卫星(如果GPS与天空之间没有间隔太多层的话,但是结果不可预料)。当GPS模块冷启动时(一天以上没有通电),通常需要约15分钟才能锁定卫星。典型数据:故障检修: 如果你在户外很长时间(15分钟以上)都无法锁定卫星,可能的原因包括: 如果你使用 MediaTek GPS 模块, 需要在上电之后重置 APM 板,才能正确发送配置字串。我们未来会修正这个问题,但现在应在测试GPS之前按一下重置按钮。 你确定将 GPS 插到 APM 板上,而不是 IMU 板上那个差不多的端口(写着 NO GPS!)上? 传输线有问题 (检查连接器的针是否弯

17、曲) GPS 固件损坏。重新加载固件的说明在这里:uBlox, MediaTek 你使用的GPS模块不受支持。当前仅支持 DIY Drones 的 uBlox 和 MediaTek 模块IMU 输出说明: 本测试记录板子移动时,DCM算法的输出结果。当传感器校准时,IMU 板上的LED将快速闪烁20-30秒,然后开始显示数据。偏航(yaw)数据可能略有漂移,因为它只能根据运动时的GPS数据和/或地磁计(如果使用了的话)数据进行校正,而这些数据在室内通常不正确。旋转板子时的典型数据 (roll, pitch, yaw):故障检修: 如果板子移动时数据不变,可能有电路连接问题,最可能是焊接错误引起

18、的。检查焊点!原始传感器输入数据说明: 本测试显示陀螺仪(左侧三列)和加速度计(右侧三列)的原始数据。记住陀螺仪显示每个轴向上的旋转速率,而加速度计显示绝对角度。因此当停止旋转板子时,陀螺仪将回到初始数据。样例数据:Battery Updated Mar 25, 2011 by hazy.说明: 本测试仅在如此说明所述的电压传感器之后有效。四个数据位是四个分压器的输出值。如果你照上述说明所述连接电池,这将表示电池每个电芯的电压3S电池有3个电芯,4S电池有4个。由于电芯是串联的,因此最后一个电池电压就是电池组的总电压。在下图所示的例子中,我使用了一个3S 11.1v 电池(实际上是11.4v)

19、。第4个分压器没有使用,所以可以忽略那一列数据。样例数据:继电器说明: 注:这不是beta版代码中的功能,请等待. 本测试仅在每5秒时切换继电器的开关状态。典型数据:你应当每5秒听到一个微弱的声音。再次声明,本测试在当前代码中不可用。Waypoints Updated Mar 25, 2011 by hazy.说明: 本测试假设你已经使用航点规划器输入了任务命令并已保存到 EEPROM 中。此时,将显示 EEPROM 中的命令。一共可以有256个命令。数据显示当前内存中的所有数据的每一字段,每个字段的涵义请参见命令指南。 在航点中,高度数据的单位为厘米(因此 100m 将显示 10000).样

20、例数据:AirspeedTest Updated Mar 25, 2011 by hazy.说明: 本测试假定你已经按照说明安装了空速传感器。测试传感器时,轻轻地向差分压力传感器的上管中吹气。样例数据:Airpressure Updated Mar 25, 2011 by hazy.说明: 本测试根据当前海拔高度校准气压传感器,并输出相对海拔高度(如果上下移动板子的话)和原始数据。典型数据:MagnetometerTest Updated Mar 25, 2011 by hazy.地磁仪 测试说明:1.0代码不支持地磁仪。但如果你有地磁仪的话,可以用 librariesAPM_Compasse

21、xamples 目录中的 APM_Compass_test 文件测试。将该固件传到你的板子上,通过串口终端观察数据。串口波特率为38,400。连接地磁仪的说明在这里.(注: 目前板子的方向标志是错的。正确的标志请参见该帖。)典型数据:故障检修:记住地磁仪只关注方向。如果方向数据反了,可能是你把板子上下颠倒了(即将地磁仪焊接到板子上那样)。不用担心在设置里面可以配置。Xbee 测试说明:根据该说明连接 Xbee 模块。确保 APM 通过 USB 与电脑相连,并且地面 Xbee 模块也通过 USB 与电脑相连。在CLI中,输入 test 进入测试模式,然后输入 xbee。在PC上,启动 X-CTU

22、 工具。确保 X-CTU 中的串口设置为连接到地面模块的串口,波特率为 57600 bps (默认值) 或 你的 APM 端口的设置。 (在下图中,我将 Xbees 和 Port 3 的波特率都设为 38400).样例数据:在 APM 端,串口监视器应当显示下面的数据:在 PC 端, X-CTU 工具应当在终端窗口显示类似下面的数据:你也可以测试距离。开始测试,你应该可以看待类似下图的数据:在CLI中按回车键退出测试。附注:如果你想修改 Xbee 模块的速率,可以在 APM_Config.h 文件中设置。在文件中加上这行,并将 38400 改为你想设置的速率:#define SERIAL3_B

23、AUD 38400EEPROM Updated Mar 25, 2011 by hazy.说明: 本测试显示EEPROM中的所有数据。这可能对调试问题有帮助。因此如果某人要你的 EEPROM 数据,你可以导出、复制并粘贴到其他文件中。样例数据:#summary 原始GPS数据本测试显示 GPS 模块的原始输出数据。 如果你在常规 GPS 测试中遇到问题,本测试可能对调试有所帮助。对多数用户不推荐, 仅用于底层 GPS 调试。如果你希望以 ASCII 方式显示数据, 在 Test 标签页中修改这行: Serial.print(incoming,BYTE); / will output Byte

24、values to this. Serial.print(incoming,ASCII); / will output ASCII values GPS 选择指南硬件安装说明在这里./ *解释* / Diydrones是一个开源站点,不同人使用不同的设备。 / 因为可以使用不同的 GPS 模块,所以需要告知 APM 你使用哪一种。 / / *说明* / 查看下面的 GPS 模块列表, 查找你的模块,按一下方式定义 / 例子 #define GPS_PROTOCOL GPS_PROTOCOL_UBLOX 请注意只修改 / GPS_PROTOCOL_UBLOX 部分,并且你的设置应该完全相同 /

25、/ *可用选项* / GPS_PROTOCOL_NONE 没有安装GPS / GPS_PROTOCOL_IMU X-Plane 接口 或 ArduPilot IMU. / GPS_PROTOCOL_MTK MediaTek GPS. / GPS_PROTOCOL_MTK16 MediaTek GPS 1.6版固件 / GPS_PROTOCOL_UBLOX UBLOX GPS / GPS_PROTOCOL_SIRF SiRF-based GPS,二进制模式. 未测试 / GPS_PROTOCOL_NEMA NEMA格式,国内MTK模块 / * / *SELECTED OPPTION* #defi

26、ne GPS_PROTOCOL GPS_PROTOCOL_UBLOX / *空速传感器指南硬件安装说明在这里./ *解释* / 空速传感器帮助 APM 更精确地计算空速,因此能够更好地处理风和空速计算 / / *说明* / 因为空速传感器是一个附件,你需要告知 APM 安上了一个空速传感器 / 如果你正确安装了一个空速传感器,则将#define AIRSPEED_SENSOR DISABLED / 改为 #define AIRSPEED_SENSOR ENABLED / *可用选项* / #define AIRSPEED_SENSOR DISABLED / #define AIRSPEED_S

27、ENSOR ENABLED / * / *SELECTED OPPTION* #define AIRSPEED_SENSOR ENABLED / * 遥测指南硬件安装指南在这里。1) 速度选择/ *EXPLAINED* / Telemetry is information that is sent over a wireless link between the UAV and your laptop, this is used when a GCS(Ground Control Station) like HK*GCS or QGCS is / used and it sends that

28、information through Telemport on your APM through a Xbee module(wireless module see link above) / / *INSTRUCTIONS* / Because telemetry is a additional add on you need to tell APM that you are using one, / if you followed the instructions in the link above exactly then you need to do the following. /

29、 The Xbee modules has different speed settings (Baudrates) the default baud rate for telemetry is 57600, if you do not have enough knowledge yet we / Suggest you use the default baud. simply change the statement #define SERIAL3_BAUD 57600to whatever speed you would like if you chose to change it. /

30、/ *AVAILABLE SPEED OPTIONS* NOTE: WHEN CHOSING A BUAD SPEED FOR YOUR TELEMETRY YOU NEED TO SET UP YOUR / #define SERIAL3_BAUD 9600 XBEE TO THE SAME SPEED AS WELL AS YOUR GCS(gound control station) / #define SERIAL3_BAUD 19200 INSTRUCTIONS CAN BE FOUND IN LINK ABOVE / #define SERIAL3_BAUD 38400 / #de

31、fine SERIAL3_BAUD 57600 / #define SERIAL3_BAUD 115200 / * / *SELECTED OPPTION* #define SERIAL3_BAUD 57600 / * 2) 端口选择/ *EXPLAINED* / The telemetry can be set up to exit the APM board through 2 ports 0 and 3 / 0 being your USB and 3 being your TelemPort because of this you need to tell APM through wi

32、ch port / you want the Telemetry(information) to go. / / *INSTRUCTIONS* / Simple change the following statement from#define GCS_PORT 0 to #define GCS_PORT 3 / / *AVAILABLE OPPTIONS* / # define GCS_PORT 0 (APM will send information through the mini usb port) / # define GCS_PORT 3 (APM will send infor

33、mation through the Telemport to be sent wirelessly by Xbee module) / * / *SELECTED OPPTION* #define GCS_PORT 3 / * 3) 地面站协议选择/ *EXPLAINED* / Now that you have your telemetry speed selected and you have chosen the port you want the information to exit you must now select / what GCS Protocol you want

34、to use. The Protocol is the different Information formats used by different GCS software and you need to select the one you want. / / *INSTRUCTIONS* / Look at the list provided below and simply change the statement from / #define GCS_PROTOCOL GCS_PROTOCOL_NONE to #define GCS_PROTOCOL GCS_PROTOCOL_(y

35、our choice) / / *AVAILABLE OPPTIONS* / GCS_PROTOCOL_NONE No GCS output / GCS_PROTOCOL_STANDARD standard APM protocol / GCS_PROTOCOL_SPECIAL special test protocol (?) / GCS_PROTOCOL_LEGACY legacy ArduPilot protocol / GCS_PROTOCOL_XPLANE HIL simulation ground station / GCS_PROTOCOL_IMU ArdiPilot IMU o

36、utput / GCS_PROTOCOL_JASON Jasons special secret GCS protocol / * / SELECTED OPPTION #define GCS_PROTOCOL GCS_PROTOCOL_LEGACY / *电池监视配置硬件安装指南在这里配置1.1 BATTERY_EVENT 开/关/ *解释* / 电压传感器用来精确监视飞行时的电池状态。 / / *说明* / 在安装好硬件之后,需要告知 APM 你的设置。 / In your Config.h file you need to Enable your voltage monitoring,

37、to do / this you need to change the statement from / BATTERY_EVENT DISABLED to ENABLED / / *AVAILABLE OPTIONS* / BATTERY_EVENT DISABLED / BATTERY_EVENT ENABLED / / * / *SELECTED OPTION* #define BATTERY_EVENT ENABLED / *1.2 BATTERY_SELECTION / *EXPLAINED* / Because everyone uses different batteries y

38、ou need to tell the APM what sort of batteries / you use, unfortunately there are too many types of batteries and we cannot #define all of / them so we only have a selection between most common used ones. / / *INSTURUCTIONS* / The most commonly used batteries is a 3cell(3S) or a 4cell(4S) to find out what you have look / On the label or spec sheet of your battery you will see a descriptions that looks something / like this ”20-30C DISCHARGE 5000mah 4 cell 14.8V” that means tha

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号