Arduino实时360°雷达扫描仪:超声波+双舵机+Processing可视化+图像隐写
组件与物料清单
| 组件 | 数量 | 备注 |
|---|---|---|
| Arduino UNO R3 | 1 | 主控 |
| HC-SR04 超声波测距模块 | 1 | 测距传感器 |
| 180° 舵机 | 2 | 俯仰+偏航,合成360°覆盖 |
| 跳线若干 | 1 | 连接用 |
所需工具
- 热熔胶枪
- 管材(搭建传感器支架)
软件工具
- Arduino IDE - 烧录固件
- Microsoft Visual Studio 2015 - 编译雷达绘制EXE(附成品下载)
项目特色
- 360°全向扫描:双舵机正交安装,水平180°×垂直180°覆盖半球空间
- 实时可视化:Processing/PC端实时绘制极坐标雷达图
- 数据隐写:扫描数据编码隐藏进图片中,外观仅为普通图片,实现隐蔽通信
步骤1:准备材料
- Arduino UNO
- 2个180°舵机(实现俯仰/偏航双轴)
- HC-SR04超声波模块
- 连接导线
步骤2:硬件组装与接线
按原理图连接:超声波Trig→D9, Echo→D10;舵机1(水平)→D2, 舵机2(垂直)→D3。上传代码后打开串口监视器确认数据输出。

注意:若不确定串口号,打开设备管理器→端口查看(COM3/COM5等)。
项目完成后可向作者索取雷达绘制EXE成品,或自行用VS2015编译。导入图片时AI自动选择最佳隐写算法。
Arduino固件代码
#include <Servo.h>
Servo Down; // 水平舵机
Servo Up; // 垂直舵机
const int trigPin = 9;
const int echoPin = 10;
long duration;
int pos = 0, pos2 = 0;
int distance;
int _degrees; // 合成角度
void setup() {
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
Down.attach(2);
Up.attach(3);
Serial.begin(9600);
}
void loop() {
// 归零
Down.write(0);
Up.write(0);
// 水平0-180°扫描
for (pos = 0; pos <= 180; pos += 1) {
Down.write(pos);
_degrees = pos;
dis();
delay(50);
// 每个水平角度做一次垂直扫描
if (pos == 180) {
for (pos2 = 0; pos2 <= 180; pos2 += 1) {
Up.write(pos2);
_degrees = pos + pos2; // 合成角度标识
dis();
delay(50);
}
}
}
// 复位归零
for (pos = 180; pos >= 0; pos -= 1) {
Down.write(pos);
Up.write(pos);
delay(5);
}
}
void dis() {
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin, HIGH);
distance = duration * 0.034 / 2; // cm
// 串口输出: 距离,角度
Serial.print(distance);
Serial.print(",");
Serial.println(_degrees);
}
PC端雷达绘制程序
下载地址:circular_draw_qP2ROsoPds.rar (含VS2015源码与编译好EXE)
功能:
- 串口解析"距离,角度"数据流
- 极坐标实时绘制雷达扫描线与回波点
- 每转360°保存上一帧、绘制新帧
- 数据编码隐写入图片(LSB/频域等算法自适应)
原理图



扩展思路
- 换用TFmini/激光雷达模块提升精度与范围
- 加入步进电机实现连续360°水平旋转
- ESP32替代UNO,WiFi传输数据至Web端Three.js 3D可视化
- 隐写模块独立为库,集成至其他通信项目
制造工艺
- 基于 Infineon 3D 磁传感器的 Arduino 无线磁通讯实验
- Arduino 数字骰子:LCD 显示随机点数的电子骰子
- Arduino + DHT11 + 以太网盾板温湿度数据记录仪
- DIY 钢铁侠人偶:Arduino 控制超声波触发音效与灯光
- Find Me:基于 Arduino 与蓝牙的智能寻物器制作指南
- 打造功能完整的 Arduino 驱动 3D 打印机械臂:分步指南
- DIY Arduino 加湿器控制器:继电器安全控制高压电路
- Arduino Nano 驱动 NeoPixel 矩阵:自制霓虹乒乓游戏
- DIY Arduino 手柄方向盘 - 游戏竞速模拟器自制指南
- Arduino + TEA5767 打造 FM 收音机:Nokia 5110 显频谱/信号强度/立体声
- Arduino 101 计步器:集成 DHT11 温湿度 + LCD 显示步数/距离/卡路里
- Arduino RGB 颜色混合器 – 分步制作教程