arduino课件08-倒车雷达

1.单词

单词:decimal 十进制 binary 二进制 hexadecimal 十六进制

单词 意思
decimal 十进制
binary 二进制
hexadecimal 十六进制

写出下面二进制与十进制的转换:

二进制:
00100 010010 0101 1001

十进制:

255 1024 25 100

2.超声波传感器

1.超声波传感器

超声波测距模块是用来测量距离的一种产品,通过发送和就接收超声波,利用时间差和声音传播速度,计算出模块到前方障碍物的距离。

HC-SR04模块特点:HC-SR04超声波测距模块可提供2cm-400cm的非接触式距离感测功能,测距精度可达高到3mm;模块包括超声波发射器、接收器与控制电路。


HC-SR04
  • 采用IO口TRIG触发测距,给最少10us的高电平信呈。
  • 模块自动发送8个40Khz的方波,自动检测是否有高电平返回;
  • 有信号返回,通过IO口ECHO输出一个高电平,高电平持续的时间就是超声波从发射到返回的时间。测试距离=(高电平时间*声速(340M/S))/2。

3.线路图

线路图

目的:查看端口数据 并且完成目标1

4.线路图2

线路图
  • 设计:

倒车雷达(PDC,Parking Distance Control)全称叫“倒车防撞雷达”,也叫“泊车辅助装置”,是汽车泊车或者倒车时的安全辅助装置,由超声波传感器(俗称探头)、控制器和显示器(或蜂鸣器)等部分组成。在倒车时,帮助司机“看见”后视镜里看不见的东西,以声音或者更为直观的显示告知驾驶员周围障碍物的情况,解除了驾驶员泊车、倒车和起动车辆时前后左右探视所引起的困扰,并帮助驾驶员扫除了视野死角和视线模糊的缺陷,提高驾驶的安全性。倒车雷达也存在一定的盲区,包括过于低矮的障碍物(低于探头中心10~15cm以下的障碍物)、过细的障碍物(例如隔离桩、斜拉钢缆)还有沟坎。

雷达
代码1
代码2
  • 目标:

1.小于20CM让灯亮很快 20到40灯一直亮 40之外灯熄灭
2 连接蜂鸣器模块,使得越靠近灯闪越快,蜂鸣器频率越快
3 让LCD显示倒车距离


#define Trig 2 //引脚Tring 连接 IO D2
#define Echo 3 //引脚Echo 连接 IO D3 
 
float cm; //距离变量
float temp; // 
 
void setup() {
  Serial.begin(9600);
  pinMode(Trig, OUTPUT);
  pinMode(Echo, INPUT);
}
 
void loop() {
  //给Trig发送一个低高低的短时间脉冲,触发测距
  digitalWrite(Trig, LOW); //给Trig发送一个低电平
  delayMicroseconds(2);    //等待 2微妙
  digitalWrite(Trig,HIGH); //给Trig发送一个高电平
  delayMicroseconds(10);    //等待 10微妙
  digitalWrite(Trig, LOW); //给Trig发送一个低电平
  
  temp = float(pulseIn(Echo, HIGH)); //存储回波等待时间,
  //pulseIn函数会等待引脚变为HIGH,开始计算时间,再等待变为LOW并停止计时
  //返回脉冲的长度
  
  //声速是:340m/1s 换算成 34000cm / 1000000μs => 34 / 1000
  //因为发送到接收,实际是相同距离走了2回,所以要除以2
  //距离(厘米)  =  (回波时间 * (34 / 1000)) / 2
  //简化后的计算公式为 (回波时间 * 17)/ 1000
  
  cm = (temp * 17 )/1000; //把回波时间换算成cm
 
  Serial.print("Echo =");
  Serial.print(temp);//串口输出等待时间的原始数据
  Serial.print(" | | Distance = ");
  Serial.print(cm);//串口输出距离换算成cm的结果
  Serial.println("cm");
  delay(100);
}
 

附加LCD1602:

LCD 1602的连接与使用
mixly中的简化代码:

连接图
程序
实物图
#include 

LiquidCrystal mylcd(12,11,2,3,4,5);

void setup(){
  mylcd.begin(16,2);
  mylcd.display();
}

void loop(){
  mylcd.setCursor(0, 0);
  mylcd.print("HELLO");
  mylcd.setCursor(0, 1);
  mylcd.print("WORLD");

}

你可能感兴趣的:(arduino课件08-倒车雷达)