knowledge_map/工作/若联/phenix mini 移植px4 1.12的无人车代码.md
2023-05-16 20:45:12 +08:00

2.1 KiB
Raw Permalink Blame History

phenix mini 移植px4 1.12的无人车代码

  • phenix mini 是基于PX4 1.7.3修改而来的

phenix mini在切换到无人车模式后不论哪种车型都没有PWM输出。

后发现使用PX41.11和1.12版本固件的飞控可以输出PWM只是因为PX4没有支持麦克纳姆轮的车型无法做到控制无人车正常移动

刚开始以为是因为混控器方面的问题就参考1.12版本的混控器配置文件把1.12的混控器配置文件移植到phenix mini 移植之后发现也没有PWM输出。后查阅资料发现px41.7.3 版本的无人车模式存在bug有无人车模式但是没有PWM输出同时PX4官方也没有把无人车的代码加入到集成测试中所以也不清楚具体问题出在哪里。如下链接是关于这个问题的相关讨论

no pwm output in rover mode · Issue #10221 · PX4/PX4-Autopilot (github.com)

NO PWM SIGNAL OUT - Pixhawk (Rover) - Discussion Forum, for PX4, Pixhawk, QGroundControl, MAVSDK, MAVLink

和无人车相关的代码有lib中的ROMFS/px4fmu_commom文件夹下的内容

image-20210426182153765

其中mixer中是不同机型的混控器配置文件init.d文件夹是不同机型的初始化配置

Src/lib文件夹下的mixeroutput_limit ,pwm,src/modules文件夹下的px4iofirmware,rover_pos_control,这些代码都和无人车的控制相关可能还有部分未列出的由于1.7.3和1.12的版本时间间隔过长等原因导致这两个版本的代码风格和软件架构发生了挺多变化很多东西不是一脉相承的增加了移植的难度而且由于不清楚究竟是哪部分原因导致的1.7.3版本无人车模式没有PWM输出所以可能需要把无人车相关的全部代码都移植到phenix mini中去或者选择找到PWM没有输出的原因修复这个BUG这两者所消耗的时间并不清楚可能找出bug比移植更加耗费时间。