
PX4
SUKEPP
SDE
展开
-
PX4源码分析1_PX4源码的下载和编译
一.基本信息:二.编译过程:原创 2016-12-25 17:00:59 · 7167 阅读 · 0 评论 -
PX4源码分析3_pixhawk硬件结构
一.参考链接:thunder_fan的博客二.硬件结构:1. 处理器:32位 STM32F427 Cortex M4内核 带FPU的主处理器主频168MHZ256KB RAM2MB Flash32位 STM32F103 失控保护协处理器2.传感器:ST的 L3GD20H 16位精度的陀螺仪ST的 LSM303D 14位加速度计和磁力计Invensense的MPU6000的三轴加速计原创 2017-02-19 15:56:50 · 2305 阅读 · 0 评论 -
PX4源码分析2_QGC地面站的下载和安装
一.基本信息:1.软件系统:Ubuntu 14.04 64bit2.安装包位置:https://www.qgroundcontrol.org/downloads二.下载安装过程:1:下载qgroundcontrol压缩包到官网下载www.qgroundcontrol.org/downloads,下载的压缩包名称是:qgroundcontrol.tar.bz2 。2:解压,按照其压缩的格式选择压原创 2017-02-11 17:35:00 · 7106 阅读 · 3 评论 -
PX4源码分析4_PX4软件结构
PX4自动驾驶仪软件可分为三大部分:实时操作系统、中间件和飞行控制栈。1.NuttX实时操作系统:提供POSIX-style的用户操作环境,进行底层的任务调度。2.PX4中间件:PX4中间件运行于操作系统之上,提供设备驱动和一个微对象请求代理(micro object request broker,uORB)用于驾驶仪上运行的单个任务之间的异步通信。我的理解是完全可以将它看成为一种进程间通信机制。3原创 2017-03-05 21:52:21 · 2329 阅读 · 0 评论 -
PX4源码分析5_PX4启动流程
PX4启动流程,分为4步:1.__start:上电之后程序入口为Firmware/NuttX/nuttx/arch/arm/src/stm32/stm32_start.c中的__start函数,负责stm32芯片的底层初始化,包括是时钟,GPIO等。 2.os_start:__start函数调用Firmware/NuttX/nuttx/sched/os_start.c中的os_start函数,负责原创 2017-06-29 13:44:04 · 3239 阅读 · 0 评论 -
PX4源码分析6_uorb通信机制
一.创建流程:在Firmware/msg下创建msg文件,eg:xxx.msg,内容格式仿照原有msg文件在Firmware/msg/CMakeLists.txt中将对应的msg文件添加,内容格式仿照原有形式二.使用方式:发布端: 公告: orb_advertise 发布: orb_publish接收端:订阅: orb_subscribe复制: orb_copy原创 2017-07-11 16:11:05 · 1372 阅读 · 0 评论 -
PX4源码分析7_添加mavlink自定义消息
一.自定义mavlink消息:根据uorb消息(.msg)自定义mavlink消息。 方法为利用mavlink_generator工具在xml文件生成mavlink所需相应的头文件。二.发送自定义mavlink消息:1.添加mavlink相应的头文件和和uorb相应的消息到 mavlink_messages.cpp。 2. 在mavlink_messages.cpp中创建一个新的类,并实现s原创 2017-08-07 20:04:10 · 1633 阅读 · 0 评论 -
PX4源码分析0_序与目录
一.序:二.目录:三.交流平台:原创 2016-12-18 17:58:28 · 2672 阅读 · 0 评论 -
PX4源码分析8_PX4的sensor校准
一.综述:sensor的校准过程分为两部分,首先需要先通过地面站进行校准设置,然后通过校准数据的更新来获取最新的校准数据。1.校准数据的设置:commander(地面站)经过计算之后通过param_set()来设置校准数据,路径为src/modules/commander下的各个calibration文件,上电后rcS脚本执行sensors start之后会执行commder start来启动com原创 2017-09-10 16:22:49 · 3547 阅读 · 0 评论