- 8
- 0
- 约1.35千字
- 约 14页
- 2021-03-29 发布于江西
- 举报
Arduino UNO
---圆圈简单循迹
器件介绍:
工作电压:3.3~5V
检测反应距离:1~55mm
红外寻迹模块背面有可调电阻,通过调整电阻,可以调节寻迹模块的阈值,实现数字信号的输出。
红外寻迹模块有两组发射管、接收管,有四个引脚:GND、VCC、S1、S2。S1为左侧发射、接收引脚,
S2为左侧发射、接收引脚。
红外寻迹模块是由红外发射管、红外接收管及整形放大电路组成的。其工作原理:利用红外线对颜色的反射率不一样,将反射信号的强弱转化为电压信号。红外发射管发射光线到路面,红外光遇到白色则被反射,接收管接收到反射光,经整形电路输出低电平;红外发射管发射光线到路面,红外光遇到黑线则被吸收,接收管没有接收到反射光,经整形电路输出高电平。
流程图:
程序运行:
在小车的前侧安装两个红外寻迹模块,分别分别位于两侧。根据红外模块的返回值,来控制小车的状态,左右两侧红外寻迹模块的数字返回值分别为:leftValue和rightValue
已搭建好的智能小车一辆
所需器件:
程序运行:
O
小车巡线状态
直线:左边和右边的传感器同时在黑色线里;
if ((leftValue==1) (rightValue==1)){
a=0;b=0;
forward();}
//******前进******//
void forward(){
motor2.run(2,IntSpeed);
motor1.run(1,IntSpeed);
}
程序运行:
O
左转弯:左边的传感器在黑色线里,右边传感器没有在黑色里。
else if ((leftValue==1) (rightValue==0)){
b=1;
turnLeft ();}
//******左转******//
void turnLeft(){
motor1.run(2,0);
motor1.run(1,IntSpeed+10);
}
程序运行:
O
右转弯:右边的传感器在黑色线里,左边传感器没有在黑色里。
else if ((leftValue==0) (rightValue==1) ) {
a=1;
turnRight(); }
//******右转******//
void turnRight(){
motor1.run(2,IntSpeed+10);
motor1.run(1,0);
}
程序运行:
O
双偏:左边和右边的传感器都没有在黑色线里。
else if ((leftValue==0) (rightValue==0) (ab) ) { //双偏(没有黑线)
rotateLeft ();//原地右旋找到循迹线
}
程序分析
程序分析
程序分析
课后小结
课后小结
您可能关注的文档
最近下载
- 中国银发经济市场与投资赛道66条(2025)(精要版).doc VIP
- 监理工程师如何写好工程质量评估报告.doc
- GB50771-2012 有色金属采矿设计规范.pdf VIP
- 电子线路(线性部分)第五版_冯军习题解答.docx
- 铁路专用线(专用铁路)代维修合同.doc VIP
- 2026领导班子成员民主生活会“五个带头”个人对照检查材料8篇.docx VIP
- WTT澳门冠军赛2022比赛赛程及对战名单(附直播平台).docx VIP
- F302040【复试】2024年江苏大学080200机械工程《复试901机械制造技术基础.pdf VIP
- 9《日月潭》课件(共26张PPT).pptx
- 上消化道出血PPT课件课件.pptx
原创力文档

文档评论(0)