登录
加入联盟
找回密码
航空人生
新一代连飞客户端下载
空管人生
中国航空运动协会推荐
WEFLY
模拟飞行玩家聊天工具
门户
文章
商城
二手市场
外包服务
模飞软件
硬件设备
飞行体验
学院
云课堂
问答
资料下载
论坛
模拟飞行
低空飞行
太空探索
航圈
资源
素材
下载
企业
无人机论坛
»
论坛
›
无人机DIY专区
›
飞控开发区
›
APM飞控
›
APM学习笔记——Ardupilot源代码添加新的飞行模式 ...
返回列表
发新帖
查看:
971
|
回复:
4
APM学习笔记——Ardupilot源代码添加新的飞行模式
[复制链接]
斯伯丁
斯伯丁
当前离线
积分
1153
窥视卡
雷达卡
372
主题
408
帖子
1153
积分
金牌飞友
金牌飞友, 积分 1153, 距离下一级还需 1847 积分
金牌飞友, 积分 1153, 距离下一级还需 1847 积分
积分
1153
飞币
743
注册时间
2017-7-23
发消息
发表于 2022-11-10 05:14:38
|
显示全部楼层
|
阅读模式
首先贴一张官网的Copter架构的高级视图:
1、要改的文件都在ArduCopter文件夹里,如下:
defines.h Copter.hflight_mode.cpp新建一个飞行模式的cpp文件,这里我取名control_newflightmode.cpp下面每个部分详细说明一下。
2、defines.h 需要修改的内容
在control_mode_t枚举的底部,添加我们定义的新的飞行模式名字:
3、新建control_newflightmode.cpp文件,内容如下:
#include "Copter.h"uint64_t last_time=0;//初始化函数bool Copter::new_flightmode_init(bool ignore_checks){ return true;}//run函数,可以在地面站mp上查看消息,方便我们看模式是否切过去,1秒一次void Copter::new_flightmode_run(){ // 计算更新时间/采样间隔 uint64_t now_time = AP_HAL::millis(); if((now_time-last_time)>1000) { gcs_send_text(MAV_SEVERITY_INFO,"hello_newflight_mode"); last_time = AP_HAL::millis(); }}
4、在Copter.h里进行函数申明,主要添加:
bool new_flightmode_init(bool ignore_checks); void new_flightmode_run();
5、flight_mode.cpp的修改
添加new_flightmode_init(bool ignore_checks)和new_flightmode_run()
在set_mode()里添加new_flightmode_init()
在update_flight_mode()里添加new_flightmode_run()
6、到这里代码就已经写完了,这是一个新的飞行模式,里面是空的,只有一个像地面站发是否切换成功的消息,我们打开mp,在全部参数列表里将飞行模式设为21,这里是和我们代码里对应上的,这样我们切到这个这个飞行模式,在地面站的消息里,就可以看到run函数发过来的消息了,根据这个消息我们就知道是否切换成功了。注意的是切换因为我们没有编译地面站,地面站的仪表盘是显示不了的,这里我们看消息是否打印出来判断就行了。
源代码
,
Ardupilot
,
APM
,
学习
相关帖子
•
ArduPilot Developer Conference 2024 - Day 1 会议直播回放
•
ArduPilot Developer Conference 2024 - Day 3 会议直播回放
•
乐迪 miniPIX 飞控 Ardupilot 侧风 定点 悬停2 Radiolink FPV 远航 穿越机 乾丰 51433桨
•
Debugging ROS 2 with ArduPilot SITL and run Google Cartographer as a SLAM source
•
穿越机学习思路方法,关于运镜、死亡掉头、手动模式、发展方向
•
CUAV Nora Autopilot For Ardupilot - Flight Controller Overview
•
在一团迷雾中迷路了, 我打开了自动返航,ardupilot 飞控
•
学习总结|四旋翼无人机建模、姿态控制、定点位置控制的设计与仿真
•
自己研发的F4小飞控用的STM32H743芯片+自己改编的ardupilot固件悬停稳稳滴
•
ArduPilot 软件在环仿真SITL(SITL+Mission Planner)
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
千斤顶
照妖镜
古风剑客
古风剑客
当前离线
积分
1628
窥视卡
雷达卡
37
主题
822
帖子
1628
积分
金牌飞友
金牌飞友, 积分 1628, 距离下一级还需 1372 积分
金牌飞友, 积分 1628, 距离下一级还需 1372 积分
积分
1628
飞币
797
注册时间
2017-8-31
发消息
发表于 2022-11-10 05:27:10
|
显示全部楼层
转发了
回复
支持
反对
使用道具
举报
照妖镜
1194882513
1194882513
当前离线
积分
1679
窥视卡
雷达卡
50
主题
843
帖子
1679
积分
金牌飞友
金牌飞友, 积分 1679, 距离下一级还需 1321 积分
金牌飞友, 积分 1679, 距离下一级还需 1321 积分
积分
1679
飞币
829
注册时间
2017-8-23
发消息
发表于 2022-11-10 05:33:10
|
显示全部楼层
博主搞飞控的吗
回复
支持
反对
使用道具
举报
照妖镜
jctc2011
jctc2011
当前离线
积分
1697
窥视卡
雷达卡
48
主题
856
帖子
1697
积分
金牌飞友
金牌飞友, 积分 1697, 距离下一级还需 1303 积分
金牌飞友, 积分 1697, 距离下一级还需 1303 积分
积分
1697
飞币
832
注册时间
2017-8-30
发消息
发表于 2022-11-10 05:47:18
|
显示全部楼层
不错
回复
支持
反对
使用道具
举报
照妖镜
896953053
896953053
当前离线
积分
1754
窥视卡
雷达卡
55
主题
876
帖子
1754
积分
金牌飞友
金牌飞友, 积分 1754, 距离下一级还需 1246 积分
金牌飞友, 积分 1754, 距离下一级还需 1246 积分
积分
1754
飞币
876
注册时间
2017-8-11
发消息
发表于 2022-11-10 05:54:56
|
显示全部楼层
转发了
回复
支持
反对
使用道具
举报
照妖镜
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
加入联盟
本版积分规则
发表回复
回帖后跳转到最后一页
快速回复
返回顶部
返回列表