项目简介
本项目是基于ESP8266的Mavlink桥接系统,借助UDP协议把Mavlink串行接口开放给外部网络。提供了一个最小化代码基础,用于定义串行和UDP接口间的桥接,是功能丰富的现有解决方案的轻量级替代,专注于数据转发功能。
项目的主要特性和功能
- 连接建立:自动连接预定义的WiFi热点。
- 数据转发:支持UDP到UART接口以及UART到UDP接口的数据转发。
- 多车辆支持:可从同一工作站连接多个车辆,每个ESP配置不同的UDP端口。
- 配置灵活:用户能按需调整WiFi和桥接配置。
安装使用步骤
1. 环境准备
确保已安装以下工具:
- PlatformIO
:用于构建和烧录固件。
- esptool
(可选):用于烧录二进制文件。
2. 复制项目
bash
cd slimbridge
3. 初始化子模块
bash
git submodule update --init --recursive
4. 安装依赖
bash
pip install platformio
5. 构建和烧录固件
进入固件目录并运行以下命令:
bash
cd firmware
platformio run -e esp01_1m -t upload
若需指定端口,使用以下命令:
bash
platformio run -e esp01_1m -t upload --upload-port /dev/ttyUSB0
6. 配置WiFi和桥接参数
编辑firmware/src/main.cpp
文件中的以下部分以配置WiFi连接:
```cpp
IPAddress IP(192, 168, 3, 14);
IPAddress GATEWAY(192, 168, 3, 1);
IPAddress SUBNET(255, 255, 255, 0);
IPAddress DNS(1, 1, 1, 1);
WiFi.config(IP, GATEWAY, SUBNET, DNS, 0U);
WiFi.begin("yourssid", "yourpassword");
``
还可在
firmware/include/config.h`中调整UART和UDP的配置参数。
7. 连接到Mavros
使用以下命令连接到Mavros:
bash
roslaunch mavros px4.launch fcu_url:=udp://:UDP_HOST_PORT@192.168.3.14:UDP_CLIENT_PORT
确保替换UDP_HOST_PORT
和UDP_CLIENT_PORT
为实际配置的端口。
8. 多车辆设置
为连接多个车辆,每个ESP需配置不同的UDP_HOST_PORT
,且每个车辆在网络中要有唯一的IP地址。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】