快捷导航
查看: 391|回复: 29

关于ardupilot的几个问题

[复制链接]
最佳答案
0 
  • TA的每日心情

    昨天 08:02
  • 签到天数: 28 天

    [LV.4]偶尔看看III

    参加活动:0

    组织活动:0

    发表于 2017-12-14 17:30:08 | 显示全部楼层 |阅读模式

    马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

    您需要 登录 才可以下载或查看,没有帐号?注册成为模友吧会员

    x
          大家好,我刚接触飞控不久,是从APM开始入门的。对于ardupilot一直有几个疑问想问下。
          第一个是ardupilot3.2.1之前的版本是能够同时应用于APM和PIX的,应用于APM时,编译出来的固件格式是HEX,应用于PIX时,固件格式是PX4。对于这一点,我想问一下我的理解是不是正确的?
          第二个也和第一个有关,我对于PIX的理解是使用STM32系列芯片的飞控,APM是使用MEGA2560芯片的飞控,这是这两个的主要区别?
          第三个根据前两个的基础上,我就认为PX4固件是应用于PIX上的,而HEX固件是应用于APM上的固件。这是正确的吗?
          第四个,如果我的第三个是正确的,那么ardupilot3.3以上的版本只能编译出PX4格式的固件,只能烧录在PIX上,可是我为什么听说别人的APM烧录的是PX4格式的固件?是我哪里误会了吗?
          第五个,这是关于APM的,我看过别人PIX上的刹车功能,效果非常的好。我也想在APM上面搞,可是一直不理想。我是在loiter控制器里面实现这个效果的。希望有研究过的人能指导我一下,给我一点思路。谢谢。
    最佳答案
    0 
  • TA的每日心情

    昨天 08:02
  • 签到天数: 28 天

    [LV.4]偶尔看看III

    参加活动:0

    组织活动:0

     楼主| 发表于 2017-12-14 17:30:46 | 显示全部楼层
    一个人的沙发。。。
    最佳答案
    1 
  • TA的每日心情
    开心
    3 小时前
  • 签到天数: 56 天

    [LV.5]常住居民I

    参加活动:0

    组织活动:0

    发表于 2017-12-14 18:27:53 | 显示全部楼层
    有点深奥啊,学习了
    来自安卓客户端来自安卓客户端
    最佳答案
    1 
  • TA的每日心情
    开心
    昨天 07:15
  • 签到天数: 44 天

    [LV.5]常住居民I

    参加活动:0

    组织活动:0

    发表于 2017-12-14 19:50:33 | 显示全部楼层
    第一个问题,主要是处理器的区别,如果学过单片机应该知道stm32是32位处理器,apm的是8位。其次pix可以支持更多串口。
    来自安卓客户端来自安卓客户端
    最佳答案
    2 
  • TA的每日心情
    开心
    2018-1-4 10:06
  • 签到天数: 27 天

    [LV.4]偶尔看看III

    参加活动:2

    组织活动:0

    发表于 2017-12-14 21:21:21 | 显示全部楼层
    感觉你的理解不对
    来自安卓客户端来自安卓客户端
    最佳答案
    0 
  • TA的每日心情

    昨天 08:02
  • 签到天数: 28 天

    [LV.4]偶尔看看III

    参加活动:0

    组织活动:0

     楼主| 发表于 2017-12-15 08:45:39 | 显示全部楼层
    にほんしゅ 发表于 2017-12-14 19:50
    第一个问题,主要是处理器的区别,如果学过单片机应该知道stm32是32位处理器,apm的是8位。其次pix可以支持 ...

    谢谢你的回复。
    有一点我是比较混乱的,我以前自学过stm32,使用的是keil,所以编译出来的都是HEX格式的固件,对于这种PX4格式的固件并不了解。这种格式的固件是不能烧录在apm里的是吗?但是我又为什么听说有人的apm使用的是PX4格式的固件?这点真让我很头大。
    最佳答案
    1 
  • TA的每日心情
    开心
    昨天 07:15
  • 签到天数: 44 天

    [LV.5]常住居民I

    参加活动:0

    组织活动:0

    发表于 2017-12-15 12:58:06 | 显示全部楼层
    Jhon_Smith 发表于 2017-12-15 08:45
    谢谢你的回复。
    有一点我是比较混乱的,我以前自学过stm32,使用的是keil,所以编译出来的都是HEX格式的 ...

    px4是pix的原生固件,
    来自安卓客户端来自安卓客户端
    最佳答案
    0 
  • TA的每日心情
    开心
    2018-1-7 22:58
  • 签到天数: 47 天

    [LV.5]常住居民I

    参加活动:0

    组织活动:0

    发表于 2017-12-15 20:15:02 | 显示全部楼层
    关系有点乱,头晕
    来自安卓客户端来自安卓客户端
    最佳答案
    0 
  • TA的每日心情

    昨天 08:02
  • 签到天数: 28 天

    [LV.4]偶尔看看III

    参加活动:0

    组织活动:0

     楼主| 发表于 2017-12-18 09:33:41 | 显示全部楼层
    按照楼上几位的回复我简单整理一下。
    1、APM使用的是MEGA2560,固件是HEX文件。
    2、PIX使用的是STM32,固件是PX4文件。
    3、ardupilot飞控程序只有ardupilot3.2.1之前的版本(包含)是可以编译成HEX文件格式的,即使用在APM上。
    4、关于我的第五个问题,没人回答,估计也就这么沉了吧。但是我可以说一下我的思路。想在APM里完整的实现PIX的刹车功能可能不太现实,毕竟APM还没有卡尔曼滤波算法的支持,在加速度计积分误差较大,控制算法落后,比较难达到精确期望速度。那么就使用减速的方法,是速度在最大限度的情况下达到期望速度。但是实际上这是减速度而不是加速度,所以控制上会有些不同。在实际速度接近零,使机身悬停时,是需要着重考虑的点。
    最佳答案
    0 
  • TA的每日心情

    昨天 08:02
  • 签到天数: 28 天

    [LV.4]偶尔看看III

    参加活动:0

    组织活动:0

     楼主| 发表于 2017-12-18 09:47:51 | 显示全部楼层
    我总结一下楼上几位的回复。
    1、APM的主控芯片是MEGA2560,固件是HEX文件。
    2、PIX的主控芯片是STM32,固件是PX4文件。
    3、ardupilot飞控程序只有ardupilot3.2.1(包含)之前的版本可以编译成HEX文件,即应用在APM上。
    4、关于我的第五个问题,估计就这么沉了。看来技术大佬不方便透露啊。我可以简单说一下我的思路。因为APM相较于PIX是没有卡尔曼滤波算法的,控制算法比较落后,所以在实现它的那种刹车效果似乎有些不切实际(对于我这种新手菜鸟来说)。那么,我想实现的刹车效果,可以换一种想法,就是让飞控以最大的减速度减速到零,考虑到安全问题,在最稳定的loiter模式中实现是最好的,并设计一个开关开关刹车功能。因为是减速度而不是加速度,所以原本loiter控制器的算法就不能直接套过来用,需要对应做出调整。在速度接近零时是最需要关注的地方。毕竟没有卡尔曼,加速度积分误差较大,期望速度和实际速度并不能贴合在一起。
    以上是我的一些愚见,有什么错误请务必指出。谢谢各位。

    本版积分规则

    模友之吧 中国唯一免费送模型网站

    反馈建议:2376808768@qq.com

    合作伙伴

    扫码关注微信公众平台
    本站由 承德红璐科技 提供技术支持  ©2011-2015 模友之吧 | 冀ICP备13020518号© 

    冀公网安备 13080502000084号

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