arduino 创新训练 实验报告.docx
- 文档编号:28207286
- 上传时间:2023-07-09
- 格式:DOCX
- 页数:12
- 大小:1.43MB
arduino 创新训练 实验报告.docx
《arduino 创新训练 实验报告.docx》由会员分享,可在线阅读,更多相关《arduino 创新训练 实验报告.docx(12页珍藏版)》请在冰豆网上搜索。
arduino创新训练实验报告
贵州大学大数据与信息工程学院
创新训练与设计性实验报告
学院:
大数据与信息工程学院
专业:
电子信息科学与技术
班级:
电科151
学号:
1500890129150890141
学生姓名:
蒋帅朱亮
指导教师:
周骅
2017年7月12日
贵贵州大学大数据与信息工程学院实习报告第1页
基于Arduino UNO的倒车雷达系统设计与实现
一、设计目标
利用ArduinoUNO设计倒车雷达系统的功能:
1、利用超声波模块HC-SR04实现避障功能,并可以通过Arduino的串口监视器读取距离的参数;
2、利用蜂鸣器模块实现不同频率的警报声音;
3、利用贴片式RBGLED实现不同颜色的警报灯光。
二、设计思路
超声波模块(如图一)的原理是使超声波发射器向某一方向发射超声波,在发射的同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波就立即停止计时。
声波在空气中的传播速度为340m/s,根据计时器记录的时间t,就可以计算出发射点距障碍物的距离s,即:
,作用为测距。
贵州大学大数据与信息工程学院实习报告第2页
将超声波模块的Echo引脚设置为输入模式,Trig引脚设置为IO脚模式,通过Trig引脚发送脉冲触发HC-SR04测距,并输出测得的距离值。
设置不同的距离值范围,使之输出不同的函数,不同的函数将会输出不同的电平输入至LED(如图二)和蜂鸣器(如图三),然后使LED与蜂鸣器输出不同的结果,即不同颜色的灯光和不同频率的蜂鸣声。
三、设计内容
本次实验使用的Arduino主板的型号为UNO(如图四),编程程序为ArduinoIDE(如图五)。
贵贵州大学大数据与信息工程学院实习报告第3页
代码如下(附带注释):
constintTrigPin=3;
constintEchoPin=4;//定义变色灯LED的三个输出接口
intledpin1=5;//R引脚
intledpin2=6;//G引脚
intledpin3=7;//B引脚
intbeeppin=8;//蜂鸣器的pin
inti=0;
voidsetup()
{
Serial.begin(9600);//测量结果将通过此串口输出至PC上的串口监视器
pinMode(EchoPin,INPUT);//设置EchoPin为输入模式
pinMode(TrigPin,OUTPUT);//设置超声波数字IO脚模式,OUTPUT为输出
pinMode(ledpin1,OUTPUT);
pinMode(ledpin2,OUTPUT);
pinMode(ledpin3,OUTPUT);
pinMode(beeppin,OUTPUT);//设置蜂鸣器引脚输出模式
}
voidloop()
{
digitalWrite(TrigPin,LOW);//通过TrigPin发送脉冲,触发HC-SR04测距,使发出发出超声波信号接口低电平2μs
delayMicroseconds
(2);
digitalWrite(TrigPin,HIGH);//使发出发出超声波信号接口高电平10μs,这里是至少10μs
delayMicroseconds(10);
digitalWrite(TrigPin,LOW);//保持发出超声波信号接口低电平
intdistance=pulseIn(EchoPin,HIGH);//读出脉冲时间
distance=distance/58;//将脉冲时间转化为距离(单位:
厘米)
Serial.println(distance);//输出距离值
if(distance<20)//当距离<20cm
{
setColor(255,0,0);//三色LED的设置颜色
buzzer1();
}
elseif(distance<=120)//当距离<120cm
{
setColor(0,0,255);
buzzer2();
}
else
贵贵州大学大数据与信息工程学院实习报告第4页
{
setColor(0,255,0);
buzzer3();
}
}
//*****************************************************************
voidbuzzer1()
{
tone(beeppin,900);
delay(300);//响声间隔300ms听上去更急促
noTone(beeppin);
}
voidbuzzer2()
{
tone(beeppin,600);
delay(500);//响声间隔500ms听上去普通
noTone(beeppin);
}
voidbuzzer3()//这里我用了除余的方法,目的是如果处在安全距离,在不用delay的情况下蜂鸣器响声不要那么频繁
{
if(i%100==1){
tone(beeppin,500);
}
else{
noTone(beeppin);
}
i++;
}
voidsetColor(intred,intgreen,intblue)//三色LED的设置颜色函数
{
analogWrite(ledpin3,red);
analogWrite(ledpin2,green);
analogWrite(ledpin1,blue);
}
贵贵州大学大数据与信息工程学院实习报告第5页
四、设计结果
将超声波模块,LED模块和蜂鸣器模块连接至ArduinoUNO上(如图六)。
将代码上传至Arduino电路板中,即可通过遮挡超声波发射器来模拟倒车的情景来测试作品的雷达功能,下面将会用一系列图片来展示测试结果。
贵贵州大学大数据与信息工程学院实习报告第6页
贵贵州大学大数据与信息工程学院实习报告第7页
贵贵州大学大数据与信息工程学院实习报告第8页
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- arduino 创新训练 实验报告 创新 训练 实验 报告