主要内容

读取PX4自动驾驶仪的GPS数据

这个例子展示了如何使用无人机工具箱支持包(用于PX4自动驾驶仪)从连接到PX4飞行控制器的GPS设备获取数据。金宝app

这个例子使用了预定义的模型模型金宝app它包含了GPS模块。GPS块通过读取vehicle_gps_positionuORB消息。

先决条件

所需的硬件

要运行此示例,您将需要以下硬件:

  • Pixhawk系列飞行控制器

  • Micro USB b型线

  • GPS设备

  • Micro-SD卡(已在使用期间最初的硬件设置

  • micro sd读卡器

任务1 -在PX4系统启动时启用GPS模块

在本任务中,您将启用GPS模块,作为从SD卡启动PX4系统的一部分。SD卡已经包含启动脚本rc.txt在根级文件夹中(添加文件rc.txt在解释这个话题).

GPS模块默认在PX4 autopilot的无人机工具箱支持包的启动脚本(rc.txt)中启用。金宝app在这个启动脚本中,只有主GPS设备在端口'/dev/ttyS3'上被启用。要在不同的串口上启用主GPS或启用辅助GPS,请手动修改rc.txt。各单板的GPS可用端口如下表所示。

执行以下步骤手动修改rc.txt文件。

1.从Pixhawk系列飞行控制器上拆卸micro-SD卡。

2.使用micro-SD读卡器将micro-SD卡连接到主机。

3.编辑该文件rc.txt出现在文件夹,更新GPS启动命令。

例如,Pixhawk 4的GPS端口为'/dev/ttyS0'。要在'/dev/ttyS0'上启用GPS,更新启动脚本中的GPS启动命令如下:

gps start -d /dev/ttyS0 -s

请注意:出于测试目的,如果您没有GPS设备,请添加以下行:

全球定位系统(gps)开始- f

这将启动一个GPS模拟模块,复制真实的GPS数据。

4.保存rc.txt将micro-SD卡重新插入PX4飞行控制器。

任务2—在外部模式下配置和运行模型,并部署模型

在此任务中,您将配置并运行预定义的模型模型金宝app模型在外部模式下验证GPS数据。这个模型包含读取的GPS块vehicle_gps_positionuORB话题。GPS数据验证完成后,将模型部署到PX4硬件单板上。

1.从MATLAB命令提示符打开示例模型px4demo_readGPS。

open_system(“px4demo_readGPS”);

在示例模型中,GPS块用于读取GPS值。这个块接收来自vehicle_gps_positionuORB消息,并输出所需的值。

2.双击GPS块。缺省情况下,对应的信号纬度经度,高度(实验室)被选为输出。通过选择相应的复选框,可以将其他信号添加为输出。

注意:状态输出指示是否在前一个时间步骤中接收了uORB消息。值0表示输出的uORB数据是最近的,值1表示在前一个时间步骤中接收了uORB数据。这个输出可以用来触发子系统来处理在uORB网络中接收到的新消息。

3.建模选项卡上,单击模型设置

4.在“配置参数”对话框中,导航到硬件实现面板:

  • 设置硬件板到您在“硬件设置”屏幕中选择的相同的PX4硬件板。

  • 目标硬件资源节中,设置构建选项构建、加载和运行自动将生成的二进制文件下载到连接的Pixhawk Series飞行控制器上。

  • 输入Pixhawk Series飞行控制器连接的主机串口,在串口用于固件上传字段。

  • 外部模式窗格中,选择该选项外部模式使用与固件上传相同的主机串口

5.导航到解算器窗格并选择该选项将每一个离散的速率视为一个单独的任务.点击好吧

6.模拟选项卡,设置停止时间

7.将PX4飞行控制器的USB线连接到主机。

8.硬件选项卡,模式部分中,选择机上运行然后点击监视和优化开始信号监控和参数调整。

9.在Scope显示中验证输出的GPS值。这些值对应于PX4飞行控制器的当前GPS位置。

10.通过单击停止Monitor和Tune操作停止硬件选项卡。

11.硬件选项卡,模式部分中,选择机上运行然后点击构建、部署和启动.该型号部署在PX4硬件单板上。