9.1. 概述
本节将对使用CSS搭建用户自己的控制站工程的方法及步骤进行详细介绍,属于CSS使用进阶内容。对于PH47代码框架的初学者而言,可先暂时跳过本节继续后面章节的学习。待初步掌握PH47框架,有需要创建定制适应自己控制站软件的需求后再返回学习本节内容。
9.2. 接收来自于 BBP 飞控板的飞行姿态数据
9.2.1. 创建控制站工程
- 首先在GCS停止状态下,切换到 “系统开发” 标签页面
- 点击工具栏上 “创建” 按钮,在随后出现的对话框中填入当前工程名称 “MyGcs”,
之后出现全新空白的显示界面,这就是新建空白的控制站工程。
9.2.2. 数据总线编辑
为了使用来自于飞控板的飞行姿态数据(roll,pitch,yaw),首先需要使用数据总线编辑器创建与之对应的3个总线数据项(bus item, 以下简称总线数据)
- Step 1:切换到 “系统开发” 标签页面 => 点击 “总线设置”
按钮,打开数据总线编辑器,可以看到其中已经预设了一系列灰色的总线数据在其中。这些总线数据称为系统只读总线。 - Step 2:若 “追加” 按钮为只读, 则点击 “重置” 按钮。
- Setp3:随后填入该数据总线的各种特性,以滚转角数据为例:
- Step 4:在进行上述设置后, 点击“追加”按钮,即可将上述设置的总线数据加入当前 GcsDemo 控制工程中, 同时在左侧数据总线列表中出现绿色的 Roll_Deg 总线数据条目。
9.2.3. 数据帧编辑
PH47 代码框架中,用于下行传输飞行姿态的 message(数据帧)是 MAVLINK_MSG_ID_ATTITUDE(发送代码位于 DevStudio\Frame\Frame.cpp 的 MavMsgSnd2GCS_Slow() 函数中), 该 message 中的 roll 字段即携带了飞控测量获取的滚转角数据。
- Step 1:点击 “系统开发” 标签页面的 “帧设置” 按钮,打开数据帧编辑器。
- Step 2:在随后打开的对话框中分别显示了 mavlink 协议中所有 message 条目,以及每个 message
中字段数据格式等相关信息。 - 在 mavlink message 属性设置中选择 ATTITUDE message(序号 30, 名称显示中把前缀
MAVLINK_MSG_ID_ 省略了), - Step 3:将帧特性从 “当前帧未使用” 更改为 “下行至GCS”。
- Step 4:点击 “帧属性修改” 按钮修改当前设置。上述操作的目的在于确定 CSS 对接收到的该下行数据帧进行解析。
- Step 5:点击 “字段特性窗口” 中的 roll 字段,随后即显示该字段的各种特性。
- Step 6:点击 “关联总线数据” 下拉列表,该列表框即显示当前项目的已有总线数据。选择最后一个即刚才设置的 Roll_Deg 总线数据后,
- Step