# 硬件在环仿真

## 基本框架

***

硬件在环仿真的基本框架如图1所示，其需要配合QGC、JSBSim、飞控实现。

<figure><img src="/files/fmKEhnWJdll5hKIgeAQW" alt=""><figcaption></figcaption></figure>

主要程序运行于Windows中，而WSL主要用于为JSBSim提供运行环境。然而WSL并不能直接访问宿主机的USB设备，因此使用端口配置工具usbipd以解决这个问题。

至此，PX4使用telem口连接QGC并借助usbipd使用USB0连接子系统。同时子系统通过UDP的方式将飞机的位姿等信息传输至Windows的渲染端进行渲染。

## 前期准备

***

### 安装SIGMAfree

SIGMAfree是团队研发的飞行仿真系统，核心理念是“人人能用、人人会用！”

安装教程参见[SIGMA free 安装教程 (qq.com)](https://mp.weixin.qq.com/s/_D7rXgkUJhQbpPwmimMvLA)，也可以在我们的b站主页观看视频安装教程。

### 安装QGC

QGroundControl（QGC）是一款易上手且功能强大的无人机地面控制站，能够为支持MAVLink的无人机提供状态控制和任务规划服务，下载与使用可参考官网：<http://qgroundcontrol.com/，也可点击下方链接下载适用于仿真系统的地面站版本。>

[**不同版本QGC下载地址**](https://mp.weixin.qq.com/s/niq4VOAoful6F3q8R1WBCQ)

**对于SIGMAfree而言，我们推荐使用4.0.8版本**

### 插入飞控

飞控固件此处默认使用SIGMAfree特供版

将飞控插入SIGMAfree仿真主机端口，共两根线，分别连接telem1口和USB口。示意图如下

<figure><img src="/files/v5RQcI3KWqATlCBuh5Vz" alt=""><figcaption></figcaption></figure>

## 完成SIGMAFree主程序相关设置

***

点击单机仿真按钮以进入单机仿真主界面。

<figure><img src="/files/KkQJXuf4d2WKrEEWJRzJ" alt=""><figcaption></figcaption></figure>

在单机仿真主界面，首先选择所需地图和机型，然后点击设置按钮设置仿真模式和渲染端IP。最后点击单机仿真主界面的开始仿真按钮。

<figure><img src="/files/WRiIrAYfpx1GDv41RcJq" alt=""><figcaption></figcaption></figure>

硬件在环仿真模式下，点击 `开始仿真`按钮后还会呼出一个窗口进行进一步设置。首先点击WSL USB按钮呼出端口配置工具，它能够帮助WSL穿透识别到飞控设备端口。

<figure><img src="/files/EosQg0oIMDrwmnckJIdo" alt=""><figcaption></figcaption></figure>

查询并输入端口参数

输入端口参数是飞控与WSL连接的端口名，前缀固定为ttyACM。端口配置完成后，WSL此时已经识别到新增的ttyACM端口。以下图为例，新增端口为ttyACM0，则输入参数为0。

波特率默认460800即可，完成端口配置和参数设置后点击确认。

<figure><img src="/files/K226vjWuzcJDb7QkMS2W" alt=""><figcaption></figcaption></figure>

等待一段加载界面后，进入正式仿真界面，一切正常则如下图所示。

<figure><img src="/files/JB5s55kfk6ehalOz9lcy" alt=""><figcaption></figcaption></figure>

## 完成QGC相关设置

***

### QGC连接飞控

打开QGC，点击左上角QGC的logo，应用程序设置中，选择通讯连接>>添加>>完成参数设置>>右下角点击确认>>选中刚才新建的配置>>连接。

<figure><img src="/files/N2KAXh89208yax0lJkV1" alt=""><figcaption></figcaption></figure>

### QGC设置航点并解锁起飞

具体步骤可参照[SIGMA free基础使用教程（三）—QGC的使用 (qq.com)](https://mp.weixin.qq.com/s/niq4VOAoful6F3q8R1WBCQ)

正确上传航点后，便可解锁起飞。

## 可在SIGMA窗口中查看实时仿真画面

***

<figure><img src="/files/fmCXwneFckq2mLwARfBR" alt=""><figcaption></figcaption></figure>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://bit-sigma.gitbook.io/tutorials-for-sigma-free/sigma-free-fang-zhen-xi-tong-jian-jie/ji-chu-gong-neng-jie-shao/dan-ji-fang-zhen-liu-cheng/ying-jian-zai-huan-fang-zhen.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
