从和飞控连接得GPS设备上读取GPS传感器数据
在PX4系统启动中使能GPS模块
编辑 SD 卡中的 rc.txt, 在最后加上下面语句
gps start
如果没有GPS 传感器,增加下面的语句
gps start -f
这个会开始一个GPS simulink 模块,该模块会复制一个真实的 GPS 数据
再重新将 SD 卡插入到飞控内部,进行下面的执行操作
初始化且运行外部模块和配置该模块
open_system(‘px4demo_readGPS’);
这个图片内的 GPS block, 接收来自 vehicle_gps_position uORB 消息的信号,输出需要的值;其中的高度值是MSL,即平均海平面(mean sea level)
双击该模块之后,选择需要获取的数值:
进入设置选项
设置了上面的内容之后,连接飞控到电脑上,点击 Monitor & Tune(开始信号监控及参数调整)
《当下面的 选项没有加载出来的时候, 进行重新进入 model setting 界面,点击apply 之后 ok 》
点击之后,等待一段时间,会出现错误
这个可能是因为我的飞控硬件内部没有 GPS 传感器吗?==》 不是,是因为我的端口被占用,因为我打开了QGC,导致端口被占用,Matlab 连接不上,关闭之后的执行现象如下:
同样,点击
该按钮,也会将生成的代码自动写入到 板子上。
总结:
在每一次的 Monitor& Tune 之后,都会弹出一个窗口,点击确定,五秒内插拔飞控,继续执行;这个应该是生成代码自动写入到飞控内部,需要重新reboot,但是 5秒内的插上去的原因可能是 matlab 检查不到端口信息 五秒之后,就会关闭程序。