在编译PX4之前,你需要知道的几件事

1. 在git上clone代码,必须是clone,因为编译时需要有.git文件夹。如果你看Makefile就会发现有这么一行:

# Enforce the presence of the GIT repository
#
# We depend on our submodules, so we have to prevent attempts to
# compile without it being present.
ifeq ($(wildcard .git),)
    $(error YOU HAVE TO USE GIT TO DOWNLOAD THIS REPOSITORY. ABORTING.)
endif

就是检查是不是存在.git文件夹的

 

2. Firmware中不包括Nuttx,Nuttx是单独的一个仓库。因此在build Firmware之前,需要:

cd Firmware

git submodule update --init --recursive

 

3. 如果要做仿真,也需要下载一些相应的库。下载这个文件:

https://raw.githubusercontent.com/PX4/Devguide/master/build_scripts/ubuntu_sim.sh

然后执行,source ubuntu_sim.sh

 

4. 现在可以执行make posix jmavsim了,就是在PC中跑一下PX4的仿真,并且可以看到jmavsim启动,可以敲入commander takeoff了。最好再去把QGroundcontrol下载下来,配合着一起使用。

 

5.如果你想仔细了解make的过程,可以去看makefile。执行make的过程就是先执行cmake-build的过程,即先用cmake进行configure,然后执行make进行build。可以参考:https://blog.csdn.net/xiaoshuai537/article/details/79346448

具体怎样configure要去看CMakeLists.txt。比如哪些.cmake文件都是干嘛的。

 

6.如果想了解启动过程,建议你看这两篇文章:

https://blog.csdn.net/czyv587/article/details/51445308

大体分这么三个阶段:bootloader -> nuttx -> rcS。分别搞懂即可。

 

7.如果你想改改PX4,比如加入自己的驱动,建议去看:

http://nutshellking.com/articles/xue-xi-zong-jie/customize_Pixhawk/

当然看PX4的develop guide也是可以的。

 

感觉PX4真的是很好的开源的嵌入式架构,在解耦做的很好,扩展和修改都很方便,值得好好学习。当然除了PX4外,robot类还有很多的开源架构:

https://en.wikipedia.org/wiki/Open-source_robotics

以后再慢慢学。

 

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值