主题模式
C30D 底板小车:接线、上电与 UDP 检查
本页介绍 WiFi 模块与 C30D 雷达串口的正式接线、上电顺序、局域网检查和地面站 UDP 数据验证。
1. WiFi 模块与 C30D 雷达串口接线
1.1 断开 WiFi 模块串口连接
完成 AT 配置后:
- 关闭串口助手;
- 拔掉电脑与 WiFi 模块之间的连接;
- 确认 C30D 小车电源仍处于关闭状态。
1.2 正式接线表
| C30D 雷达串口 | C30D 功能 | WiFi 模块 | 说明 |
|---|---|---|---|
PC12 | UART5 TX | RX | C30D 发、模块收 |
PD2 | UART5 RX | TX | 模块发、C30D 收 |
GND | 地 | GND | 必须共地 |
5V | 电源 | VCC/5V | 因为模块支持 5 V 输入,所以这里应连接到 5V 而不是 3.3V(3V3排针) |
正确的接线方式如下图所示。注意导线的颜色以及对应的排针位置是否正确。

最关键的信号方向为:
text
C30D PC12 / TX --------> WiFi RX
C30D PD2 / RX <-------- WiFi TX
C30D GND --------- WiFi GND1.3 上电前检查
- C30D PC12/TX 接到 WiFi RX;
- C30D PD2/RX 接到 WiFi TX;
- 两端 GND 已连接;
- 已确认 WiFi 模块允许使用所接供电电压;
- USB-TTL 已完全拆除;
- 接头没有偏一针或反插;
- WiFi 模块已经配置为
921600 8N1; - 当前 C30D 固件 UART5 确实为
921600 8N1。
2. 上电和局域网检查
2.1 推荐上电顺序
- 启动无线路由器或热点;
- 让地面站电脑连接目标 WiFi;
- 检查地面站 IPv4 地址是否仍与模块配置一致;
- 在地面站启动 UDP 抓包或
wheelswarm_bridge; - 给 C30D 小车上电;
- 等待 WiFi 模块自动联网并进入透传。
如果地面站使用 DHCP,重连 WiFi 后地址可能变化。只要地面站 IP 发生变化,WiFi 模块中的 AT+SOCKETAUTOTT 目标地址也必须更新。正式部署建议在路由器中给地面站和每辆小车设置 DHCP 静态租约。
2.2 查询 WiFi 模块 IP
在路由器管理页面的 DHCP 客户端列表中查找 WiFi 模块,记录它获得的地址。例如:
text
WiFi 模块 IP:192.168.1.45
地面站 IP:192.168.1.43这里的 192.168.1.45 是小车 UDP 包的源 IP,后续应写入 vehicles.yaml。192.168.1.43 是 UDP 目标 IP,两者不能互换。
2.3 检查网段和路由
地面站执行:
bash
ip -br address
ip route get 192.168.1.45如果模块允许响应 ICMP,也可以尝试:
bash
ping -c 4 192.168.1.45部分 WiFi 模块不响应 ping,因此 ping 失败不能单独证明模块离线,仍应使用 UDP 抓包确认。
3. 地面站 UDP 接收检查
3.1 检查 UDP 8888 端口
启动桥接前执行:
bash
ss -lunp | grep ':8888'没有输出表示当前没有进程监听 8888;启动桥接后应看到监听地址。UDP 8888 同一时间只保留一个 bridge_node,不要同时启动手动桥接和地面站管理的桥接。
3.2 抓取 UDP 数据
执行:
bash
sudo tcpdump -ni any -vv udp port 8888正常输出类似:
text
192.168.1.45.54321 > 192.168.1.43.8888: UDP, length 24
这行信息表示:
192.168.1.45:WiFi 模块/小车源 IP;54321:模块使用的源端口,实际值可能不同;192.168.1.43:地面站目标 IP;8888:桥接监听端口;length 24:收到一帧典型小车状态数据。
需要观察原始十六进制数据时执行:
bash
sudo tcpdump -ni any -XX -c 10 udp port 88883.3 没有 UDP 包时的检查顺序
- 地面站 IP 是否发生变化;
- WiFi 模块是否得到 IP;
AT+SOCKETAUTOTT中目标 IP 和端口是否正确;- 模块是否已进入透传;
- C30D 与模块的 TX/RX 是否交叉;
- C30D 和模块是否都使用
921600 8N1; - 小车固件是否持续从 UART5 发送状态帧;
- 路由器是否开启了 AP 隔离或客户端隔离;
- 地面站防火墙是否拦截 UDP 8888。
如果 Ubuntu 启用了 UFW,可检查:
bash
sudo ufw status需要放行时:
bash
sudo ufw allow 8888/udp确认地面站能够收到小车发送的 UDP 数据后,继续进行 ROS2 桥接与通信验证。
