5iMX宗旨:分享遥控模型兴趣爱好

5iMX.com 我爱模型 玩家论坛 ——专业遥控模型和无人机玩家论坛(玩模型就上我爱模型,创始于2003年)
楼主: axnzero
打印 上一主题 下一主题

APM看上去不错,尝试做一套

  [复制链接]
121
 楼主| 发表于 2012-12-16 15:14 | 只看该作者
点击查看详情
016 WAYPOINT          航点            时间 半径 方式 指向
017 LOITER_UNLIM      持续盘旋        ---- ---- 半径 指向
018 LOITER_TURNS      盘旋N圈         圈数 ---- 半径 指向
019 LOITER_TIME       盘旋N秒           秒 ---- 半径 指向  
020 RETURN_TO_LAUNCH  返回起飞点      ---- ---- ---- ----
021 LAND              着陆            ---- ---- ---- 指向
022 TAKEOFF           起飞            迎角 ---- ---- 指向
080 ROI               兴趣点          模式 任务 代号 ----
081 PATHPLANNING      航路规划        规划 模式 ---- 指向
112 CON_DELAY         暂停n秒         时间 ---- ---- ----
113 CON_CHANGE_ALT    设定高度        速率 ---- ---- ----
114 CON_DISTANCE      设定距离        距离 ---- ---- ----
115 CON_YAW           设定航向        指向 速率 顺逆 相对
176 DO_SET_MODE       设定模式        模式 ---- ---- ----
177 DO_JUMP           循环跳转        行号 次数 ---- ----
178 DO_CHANGE_SPEED   设定航速或油门  空地 速度 油门 ----
179 DO_SET_HOME       设定家的位置    方式 ---- ---- ----
180 DO_SET_PARAMETER  设定参数        代号 数值 ---- ----
181 DO_SET_RELAY      设定继电器      代号 开关 ---- ----
182 DO_REPEAT_RELAY   触动继电器N次   代号 次数 周期 ----
183 DO_SET_SERVO      设定舵机        代号 位置 ---- ----
184 DO_REPEAT_SERVO   触动舵机N次     代号 位置 次数 周期
200 DO_CONTROL_VIDEO  机载摄像机      代号 开关 传输 记录
241 CALIBRATION       飞行前校准      陀螺 罗盘 气压 遥控 重力
242 SENSOR_OFFSETS    设定传感器基准  类型 X    Y    Z   
245 STORAGE           日志存储        参数 任务 保留 保留
246 REBOOT_SHUTDOWN   设备关机或重启  飞控 电脑 保留 保留
252 OVERRIDE_GOTO     立即前往        保持 状态 类型 指向
300 MISSION_START     任务启动        起点 终点 ---- ----
400 COMPONENT_ARM     设备启停        开关 ---- ---- ----

欢迎继续阅读楼主其他信息

主题

  • 没有相关信息
  • 没有相关信息
  • 没有相关信息
122
 楼主| 发表于 2012-12-16 22:19 | 只看该作者
开始制作航路规划功能。
基本的航点插入和航点管理已实现。
目前设定航点上限1000个。

040.jpg (138.37 KB, 下载次数: 26)

040.jpg
123
 楼主| 发表于 2012-12-17 09:23 | 只看该作者
//-------------------------------------------------------------------------//
MAV_CMD  可以立即执行,可以预编制成任务脚本。参照ARINC424标准。规定为7个参数。

16  MAV_CMD_NAV_WAYPOINT 航路点
    1   驻留时间(十进制,秒)。仅对可悬停机型有效。
    2   触发半径(公制米)。进入此半径,即认为本航路点已完成。
    3   航路点通过方式:正值顺时针轨迹;负值逆时针。用于航路控制。
    4   指向设定。仅用于可悬停机型。
    567 纬经高
17  MAV_CMD_NAV_LOITER_UNLIM 持续盘旋
    3   盘旋半径(米),正值顺时针,负值逆时针。
    4   指向
    567 纬经高
18  MAV_CMD_NAV_LOITER_TURNS 在航点盘旋N圈
    1   圈数
    3   盘旋半径(米),正值顺时针,负值逆时针。
    4   指向
    567 纬经高
19  MAV_CMD_NAV_LOITER_TIME  在航点盘旋N秒
    1   秒数(十进制,例如105表示105秒,而不是1分5秒)
    3   盘旋半径(米),正值顺时针,负值逆时针。
    4   指向
    567 纬经高
20  MAV_CMD_NAV_RETURN_TO_LAUNCH 返回起飞点
21  MAV_CMD_NAV_LAND 在 设定点着陆
    4   指向
    567 纬经高
22  MAV_CMD_NAV_TAKEOFF 起飞
    1   最小迎角(有空速传感器);设定迎角(无空速传感器)
    4   指向
    567 纬经高
80  MAV_CMD_NAV_ROI     兴趣点(可用于操作相机在设定的高度拍照)
    1   ROI模式,参考MAV_ROI
    2   任务索引号/目标代号,参考MAV_ROI
    3   ROI索引号,用于支持多个ROI设定
    567 XYZ位置,参考MAV_FRAME
   
81  MAV_CMD_NAV_PATHPLANNING 避障或其他航路规划设定
    1   0:关闭局部避障/本地路径规划(无预设地图)
        1:启动本地路径规划
        2:启动并重置本地路径规划
    2   0:关闭全航路规划(无预设地图)
        1:启动全航路规划
        2:启动和重置(有岛)
        3:启动和重置(无岛)
    567 纬经高
95  MAV_CMD_NAV_LAST    无实际内容,仅用于标记指令的数量上限。
112 MAV_CMD_CONDITION_DELAY 延时N秒
    1   秒
113 MAV_CMD_CONDITION_CHANGE_ALT 前往设定高度,然后继续执行其他指令。
    1   爬升/下降速率
114 MAV_CMD_CONDITION_DISTANCE 前往设定距离(到下一航点),然后继续。
    1   距离(米)
115 MAV_CMD_CONDITION_YAW 前往设定的航向。
    1   目标角度:[0-360],0为北。
    2   转向速率:[度/秒]
    3   指向:负值逆时针,正值顺时针。
    4   相对偏置或绝对角[1,0]
159 MAV_CMD_CONDITION_LAST 无实际内容,仅用于标记指令的数量上限。
176 MAV_CMD_DO_SET_MODE 设定模式
    1   模式,参考MAV_MODE
177 MAV_CMD_DO_JUMP 跳转到任务单某个位置,并执行N次。
    1   段号
    2   重复次数
178 MAV_CMD_DO_CHANGE_SPEED 改变速度和/或油门
    1   速度类型(0=空速,1=地速)
    2   速度值(米/秒,-1表示无相关设备)
    3   油门(23表示23%,-1表示无相关设备)
179 MAV_CMD_DO_SET_HOME 改变家位置到当前点或指定点。
    1   0:使用设定点
        1:使用当前点
    567 纬经高
180 MAV_CMD_DO_SET_PARAMETER 设定系统参数(很要命)
    1   参数代码
    2   数值
181 MAV_CMD_DO_SET_RELAY 设定继电器开关参数。
    1   继电器号
    2   0=关,1=开。其他数值应参考相关硬件
182 MAV_CMD_DO_REPEAT_RELAY 按照设定的次数和周期让继电器反复开关
    1   继电器号
    2   循环次数
    3   周期(十进制,秒)
183 MAV_CMD_DO_SET_SERVO 设定舵机舵量
    1   舵机号
    2   数值(1000~2000微秒,1~2毫秒)
184 MAV_CMD_DO_REPEAT_SERVO 按照设定的位置、周期、次数,抖舵。
    1   舵机号
    2   数值(1000~2000微秒,1~2毫秒)
    3   循环次数
    4   周期(秒)
200 MAV_CMD_DO_CONTROL_VIDEO 设定机载摄像机、照相机
    1   相机号(-1表示所有相机)
    2   传输(0:关闭,1:压缩传送,2:RAW传送)
    3   模式(0:视频流,n:每过n秒传送一帧)
    4   记录(0:关闭,1:压缩,2:RAW)
240 MAV_CMD_DO_LAST 无实际内容,仅用于标记指令的数量上限。

(仅在起飞前模式有效。)
241 MAV_CMD_PREFLIGHT_CALIBRATION 起飞前校准,
    1   陀螺仪校准(0:不校准,1:校准)
    2   罗盘校准(0:不校准,1:校准)
    3   气压高度计校准(0:不校准,1:校准)
    4   无线电遥控校准(0:不校准,1:校准)
    5   加速度计/水平仪校准(0:不校准,1:校准)
242 MAV_CMD_PREFLIGHT_SET_SENSOR_OFFSETS 传感器偏移量设定
    1   0陀螺,1加速度计,2罗盘,3气压,4光学
    2   X/D1
    3   Y/D2
    4   Z/D3
    5   D4
    6   D5
    7   D6
245 MAV_CMD_PREFLIGHT_STORAGE 参数和任务存取指令
    1   0:从Flash/EEPROM读取参数
        1:参数写入Flash/EEPROM
    2   0:从Flash/EEPROM读取任务
        1:任务写入Flash/EEPROM
    3   保留
    4   保留
246 MAV_CMD_PREFLIGHT_REBOOT_SHUTDOWN 机载计算机和飞控的重启和关机。
(仅在起飞前模式有效。)
    1   0:空
        1:飞控重启
        2:飞控关机
    2   0:空
        1:机载计算机重启
        2:记载计算机关机
    3   保留
    4   保留
252 MAV_CMD_OVERRIDE_GOTO 高优先级强制执行
    1   MAV_GOTO_DO_HOLD保持
        MAV_GOTO_DO_CONTINUE继续执行下一项
    2   MAV_GOTO_HOLD_AT_CURRENT_POSITION当前位置保持
        MAV_GOTO_HOLD_AT_SPECIFIED_POSITION设定位置保持
    3   MAV_FRAME设定坐标帧保持
    4   指向
    567 纬经高
300 MAV_CMD_MISSION_START 任务单启动,从n到m
    1   起始点的任务号
    2   终点的任务号
400 MAV_CMD_COMPONENT_ARM_DISARM 机载组件启动和关闭
    1   0:关闭
        1:启动
124
 楼主| 发表于 2012-12-18 09:46 | 只看该作者
航路规划功能完善。
增加图标识别功能。

飞行前任务为浅蓝底色。
飞行任务为白底蓝线。
高优先级任务为蓝底白线。

041.jpg (122.35 KB, 下载次数: 19)

041.jpg
125
 楼主| 发表于 2012-12-19 14:14 | 只看该作者
QgroundControl Waypoint Protocol航点文件和传输协议
文档整理完毕。

http://wenku.baidu.com/view/76e79317b7360b4c2e3f641f.html
文库链接
126
发表于 2012-12-19 20:57 | 只看该作者
非常COOL
太好了
127
发表于 2012-12-19 20:59 | 只看该作者
这个帖子好 好好留存
很好的技术帖子
128
 楼主| 发表于 2012-12-19 23:08 | 只看该作者
航路管理功能基本完成。
未完成部分:
1,鼠标拖动航点。
2,文件操作。
3,行列式排布和圆周等分排布航点的自动生成。

042.jpg (152.98 KB, 下载次数: 20)

042.jpg
129
发表于 2012-12-20 11:07 | 只看该作者
axnzero 发表于 2012-12-19 23:08
航路管理功能基本完成。
未完成部分:
1,鼠标拖动航点。

航线规划上
再加上 航线准备点
APM原版地面站没有带的
我改过,加上了
130
 楼主| 发表于 2012-12-20 11:12 | 只看该作者
kissghost 发表于 2012-12-20 11:07
航线规划上
再加上 航线准备点
APM原版地面站没有带的

参考131楼图片。
航前准备项目是241~246指令,已经加上了。

131
 楼主| 发表于 2012-12-20 21:07 | 只看该作者
已实现鼠标拖动航点功能。
已实现文件存取航点功能。
航路管理功能完成可用。

圆周和矩阵方式自动生成大规模航路点功能不影响大多数调试,因此计划放在以后再做。
或在飞控端使用宏指令方式实时生成航点,或使用样条插补方式实时生成拟合曲线型航路点或许用起来更方便。

043.jpg (122.48 KB, 下载次数: 21)

043.jpg
132
发表于 2012-12-20 22:40 | 只看该作者
支持,只不过:我也觉得 57600 的数据 传送

要求太高了,其实也没得多少数据,干嘛要求那么高?

期望:楼主能 “先吃透”现有的 APM2.5 ,特别是

期望:把数据率降下来 9600 是目标,数据刷新率5Hz

就可以了,必要时 2Hz ——> 5Hz 确保 2Hz 都可以

无人机——大多数是自动飞航点,又不是直接遥控舵机。
133
 楼主| 发表于 2012-12-21 07:38 | 只看该作者
赞同楼上的观点,计划按照楼上的方案执行。
134
 楼主| 发表于 2012-12-24 08:09 | 只看该作者
MAVLink相关文档整理完毕。
初步计算显示,去除不必要的数据传送之后,使用9600波特率可保证5~15Hz的数据刷新率。
135
 楼主| 发表于 2012-12-26 09:30 | 只看该作者
搞到一台二手雕刻机。
咳不止,体不全。
尘满面,鬓如霜。

044.jpg (83.95 KB, 下载次数: 73)

044.jpg
136
 楼主| 发表于 2012-12-26 09:35 | 只看该作者
本帖最后由 axnzero 于 2012-12-27 11:45 编辑

打了个架子,洗了个澡。
通全身经络,灌真气入体。
现在,嗷嗷的了。
大家一起来找茬。

电机运动控制和软件插补已实现。
备好料就可以试加工了。

等待长导轨,用于制作四轴热丝切割机。

045.jpg (78.29 KB, 下载次数: 72)

045.jpg
137
 楼主| 发表于 2012-12-27 10:40 | 只看该作者
进一步研究显示:
APM地面站软件,在初始化连接的时候,向飞控发送了21号消息“PARAM_REQUEST_LIST”
Request all parameters of this component. After his request, all parameters are emitted.
请求回送目标设备的所有的参数。
因此,改变波特率,或许可以不需要修改APM飞控端的控制程序,而只需要在地面站软件端修改。
或许,只要去掉21号消息,改为22号“PARAM_VALUE”即可降低消息发送量,进而在降低波特率的情况下满足10hz刷新率。
138
 楼主| 发表于 2012-12-27 11:43 | 只看该作者
在TaoBao   itboy417处购买的“APM 2.0 带集成GPS全功能版APM2.0 RTF”
缺 陷报告:
1,网站图片是紫色。实际到货是深蓝色。(这条没影响)
2,上层版靠近TF卡有一条黑色1cm的飞线。(这条影响心情)
3,GPS搜星能力和冷热机定位速度,显著弱于在“长江智动科技”购买的“飞控GPS模块 Ublox NEO-6M 航模GPS模块”。
(这条影响工作效率)
4,上电使用约40分钟以后,会随机出现姿态解算错误。出现概率大于30%。在上电40分钟之内,尚未观察到此故障。
具体症状为:一旦出现解算错误,解算出来的横滚角向右增加90度。
这种缺 陷,会导致不可避免的坠机。
在特殊情况下,可能导致直机、四轴之类的悬停飞行器出现高速横向极高速飞行,有巨大的潜在的可能造成人身伤害。
断电10秒,再次上电之后,姿态正常,故障消失。

使用APM地面站软件和本软件都能测到此故障,可以排除地面站软件问题。
工作电源5.05V,电路板温度31.1度。
目前尚不清楚此故障源自硬件设计或制造缺 陷。
尚无法确定是姿态传感器软硬件故障,还是飞控计算机软硬件故障。

注意:这样的缺 陷,使得此飞控版不可能用于执行远距离、长航时任务。
再考虑到前文提到的高速波特率设置问题,即使用于短暂的视距内飞行,仍然潜藏危险。

139
发表于 2012-12-27 14:30 | 只看该作者
加油。加油。
140
发表于 2012-12-27 14:52 | 只看该作者
膜拜楼主
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

关闭

【站内推荐】上一条 /1 下一条

快速回复 返回顶部 返回列表