亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Manufacturing Technology >> 制造工艺

DIY 泊车雷达:Arduino UNO + 三路 HC-SR04 超声波传感器

项目概述

自制前/后保险杠泊车辅助系统:三路 HC-SR04 分别覆盖左、中、右三个方向,两块 TM1651 驱动的电池电量条显示模块(原用于显示电量)分别指示左右两侧最近障碍物距离。距离映射为 0~7 级光柱,超出设定最大距离(默认 20 cm)显示满格“安全”,最近侧优先显示,中间传感器同时影响双侧显示。

核心组件与物料清单

工作逻辑

  1. 循环触发三路测距,获取 distanceL、distanceM、distanceR
  2. 左侧显示取 min(distanceM, distanceL),右侧取 min(distanceM, distanceR)
  3. 距离 > Maxdistance → 显示第 7 级(满格)
  4. 距离 ∈ (0, Maxdistance] → map(d, 0, Maxdistance, 0, 7) 映射为 0~7 级光柱
  5. 50 ms 刷新周期,实时响应

典型场景示例

改进方向

核心代码

#include <TM1651.h>
#define CLK 3   // 右显示
#define DIO 2
#define CLK2 5  // 左显示
#define DIO2 4
#define trigPin 6    // 中
#define echoPin 7
#define trigPinR 8   // 右
#define echoPinR 9
#define trigPinL 10  // 左
#define echoPinL 11
#define Maxdistance 20

TM1651 DisplayR(CLK, DIO);
TM1651 DisplayL(CLK2, DIO2);
long duration;
int distance;

void setup() {
  pinMode(trigPin, OUTPUT); pinMode(echoPin, INPUT);
  pinMode(trigPinR, OUTPUT); pinMode(echoPinR, INPUT);
  pinMode(trigPinL, OUTPUT); pinMode(echoPinL, INPUT);
  DisplayR.init(); DisplayR.set(BRIGHTEST);
  DisplayL.init(); DisplayL.set(BRIGHTEST);
}

void loop() {
  int dM = getDistance(trigPin, echoPin);
  int dR = getDistance(trigPinR, echoPinR);
  int dL = getDistance(trigPinL, echoPinL);

  int R = min(dM, dR);
  int L = min(dM, dL);

  updateDisplay(DisplayR, R);
  updateDisplay(DisplayL, L);
  delay(50);
}

void updateDisplay(TM1651 &disp, int dist) {
  if (dist > 0 && dist < Maxdistance) {
    byte level = map(dist, 0, Maxdistance, 0, 7);
    disp.displayLevel(level);
  } else if (dist >= Maxdistance) {
    disp.displayLevel(7);
  }
}

int getDistance(int trig, int echo) {
  digitalWrite(trig, LOW); delayMicroseconds(2);
  digitalWrite(trig, HIGH); delayMicroseconds(10);
  digitalWrite(trig, LOW);
  duration = pulseIn(echo, HIGH);
  return duration * 0.034 / 2;  // cm
}

资源链接

制造工艺

  1. 树莓派 PIR 运动传感器控制 LED 实战指南
  2. 树莓派低成本土壤湿度传感器:智能灌溉 DIY 指南
  3. 树莓派 + MCP9808 + InfluxDB + Grafana:家庭温度监测系统
  4. 将 Acconeer A111 脉冲雷达与树莓派集成:实用指南
  5. 低成本情绪传感器与 EEG:实时情绪检测硬件方案
  6. 两块 Arduino 通过 Firebase 传递温湿度数据
  7. UnifiedWater v1 — 基于 Arduino MKR GSM 1400 的完整水质监测套件
  8. 氧传感器 (O2) 详解:作用、位置与故障征兆
  9. Mouser Electronics 在 2019 传感器博览会展示先进传感器技术
  10. 雷达传感器详解:工作原理与现代应用
  11. 泊车传感器:工作原理与关键应用
  12. Ambarella以3.075亿美元收购Oculii,拓展雷达感知与传感器融合布局自动驾驶