knowledge_map/phenix mini 移植px4 1.12的无人车代码.md
yewuya 5d69fbe3f2 Revert "文档更新"
This reverts commit 44e127967a4a94c927656daccd6216cc90aa9fb7.
2023-05-16 20:32:45 +08:00

21 lines
2.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 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)](https://github.com/PX4/PX4-Autopilot/issues/10221)
[NO PWM SIGNAL OUT - Pixhawk (Rover) - Discussion Forum, for PX4, Pixhawk, QGroundControl, MAVSDK, MAVLink](https://discuss.px4.io/t/no-pwm-signal-out-pixhawk-rover/5920)
和无人车相关的代码有lib中的ROMFS/px4fmu_commom文件夹下的内容
![image-20210426182153765](https://yewuyadeimagewall.oss-cn-hangzhou.aliyuncs.com/image-20210426182153765.png)
其中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比移植更加耗费时间。