智能跟随小车设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

智能跟随小车设计
喻语嫣*肖明杰
(武汉文理学院信息与计算机学院 湖北武汉 430345)
摘要:随着我国智能行业的飞速发展,解放人类劳动力的理念不断普及,智能跟随小车出现在人们视野里,它可以解放人们双手,提高物品搬运的效率,减轻人们的负担同时为其他工作节约时间。

基于此,该文设计了一款基于红外技术和超声波测距的智能跟随小车。

小车以AT89C52芯片为核心控制器,3个人体红外传感器HC-SR501用于识别人所在的位置,把识别到的信号通过核心控制器传送给L298N电机驱动模块,从而实现对小车转向和行驶的控制;超声波传感器HC-SR04用于检测人与小车之间的距离,当距离小于0.5 m时,实现小车报警同时后退,保证人与小车之间的安全距离,防止发生碰撞。

样机测试结果显示,小车能在 4 m 以内对人自动跟随,并与人保持0.5 m的安全距离,防止碰撞,具有一定的实用价值。

关键词:AT89C52 红外技术 超声波测距 跟随小车
中图分类号:TP23文献标识码:A 文章编号:1672-3791(2023)18-0033-07
Design of Intelligent Following Cars
YU Yuyan*XIAO Mingjie
(School of Information and Computer, Wuhan College of Arts & Sciences, Wuhan, Hubei Province, 430345 China) Abstract:With the rapid development of the intelligent industry in China, the concept of liberating human labor force continues to be popularized, and the intelligent following car appears in people's vision. It can free people's hands, im‐prove the efficiency of goods handling, reduce the burden and save time for other work. Based on this, this paper designs an intelligent following car based on infrared technology and ultrasonic ranging. The car uses the AT89C52 chip as its core controller, uses three pyroelectric infrared sensors HC-SR501 to identify the position of the person, and transmits the identified signal to the L298N motor drive module through the core controller, so as to realize the control of the car's steering and driving. It uses the ultrasonic sensor HC-SR04 to detect the distance between people and cars, and the car gives and alarm and retreats at the same time when the distance is less than 0.5m, so as to ensure the safe distance be‐tween people and cars and prevent collision, which has certain practical value.
Key Words: AT89C52; Infrared technology; Ultrasonic ranging; Following car
近年来,随着科学技术的飞速发展,智能移动机器人技术也在不断发展,传统的机械运输方式有被取代的趋势。

对可移动目标能够自动跟随的智能小车,在搬运行李、运输材料以及人们日常生活中有着广泛的应用前景[1-2]。

目前,市场上已经存在一些具有自主巡线功能的移动小车类产品,但是需要提前规划好路经,设置好程序才能进行无人车运行,在小车目标跟随方面考虑得比较少,跟随效果比较差[3-5]。

还有一部分智能小车利用摄像头来获得跟随目标的运动状态,然后
利用云端计算机结合目标检测算法对小车采集到的视频流进行实时分析计算,这种方法跟随效果较好,抗干扰能力强,但实现过程比较复杂,对技术有很高的要求[6-10]。

本文设计了一款基于红外技术和超声波测距的智能跟随小车,可实现小车对人的自动跟随,并与人
DOI:10.16661/ki.1672-3791.2302-5042-3740
通信作者: 喻语嫣(1995—),女,硕士,助教,研究方向为嵌入式系统设计,E-mail:****************。

保持0.5 m 的安全距离,防止碰撞,具有工作稳定、成本低、便于推广的特点。

1 智能小车设计框图
该系统主要是由硬件和软件两部分组成。

系统结构图如图1所示。

它包含稳压电路的设计、人体红外感应模块、超声波模块、L298N 驱动模块。

该车以AT89C52单片机为核心,通过3个人体红外模块识别人体特有的红外线信息,同时通过超声波传感器测量人与小车的距离,将两种信号同时传给AT89C52芯片进行处理,将处理后的信号传给电机驱动器来实现小车的转弯,直行和后退。

当左边传感器或者左边和中间传感器检均测到信号时小车左转;当右边传感器或者右边和中间传感器均检测到信号时小车右转;只有中间传感器检测到信
号时直行;左右传感器同时检测到信号为误判,小车还是直行;3个传感器均未检测到信号时,小车停止;当人与小车的距离小于0.5 m 时,小车报警并后退。

2 智能跟随小车硬件电路设计
2.1 稳压电路设计
该系统中智能车使用电源控制芯片有MIC29302和SPX2940。

如果给车供电的电池电压过大,可能击坏小车的核心控制芯片或者模块。

所以,选择MIC29302和SPX2940这两个稳压芯片来控制输入电压的大小,从而降低损耗。

MIC29302芯片在本设计中的作用是将输入电压降到6 V 之后给驱动模块供电,防止输入电压过大。

电机驱动芯片的电压要求是6~12 V,该设计使用了两个电机,当它接入的电压值过大时,电机的转速过快,导致难以控制,会给后期调试带来一定的难度,所以用MIC29302芯片将输入电压降到6 V。

此芯片所能承受的输入点电压范围为2.25~26 V,输出电压为1.24~25 V;可承受最大的电流为3 A;6 V 降压模块原理图详如图2所示。

输出电压可以用公式V out =1.25(
R 4
R 5
+1)计算得出图2中1N5819二极管在此电路中的作用是判断电源是否接反了,防止芯片的烧毁;
LED 灯是用来检查焊接
的电路是否正常工作,若能正常工作则LED
灯点亮,否则
LED 灯熄灭。

以此来判断此模块是否在正常工作,有利于后续的检查。

图 3 5 V 降压模块原理图
图2 6 V 降压模块原理图
图1 系统结构图
SPX2940-5.0芯片在本设计中的作用是将6 V的输入电压降到5 V,从而给AT89C52核心芯片以及其他模块供电。

此芯片输入电压最大值为26 V,输出点电压为5 V;最大承受电流为1 A;5 V降压模块原理图详见图3。

图3中1N5819二极管作用还是用来判断电源是否接反了;电容的主要作用是滤波;LED灯是用来检查焊接的电路是否正常工作。

2.2 人体红外感应模块
此模块是HC-SR501模块,人体红外感应模块原理图如图4所示。

图4中二端口为信号输出口,主要是检测前方是否有人,如果检测到有人则P36端口返回值为1,否则返回值为0;LED灯的作用是检测红外模块是否正常工作,只要前方有人LED灯就会亮,否则LED灯熄灭。

虽然HC-SR501模块检测的范围很广,但是实际需求中若检测太广会增加误判,所以在使用时可以通过覆盖凸透镜来控制HC-SR501模块的识别范围,从而消除误判。

同时使用了3个HC-SR501模块,有利于转弯和直走的区分。

首先,在测试过程中发现了3个红外模块中有一个模块是无法重复测量数据的,因此对3个模块进行了对比,发现此模块存在两种工作模式,一种是不可重复触发,另一种是可重复触发模式(即H模式)。

当把引脚都接入H模式之后就解决了无法重复测量数据的问题。

其次,在测试返回值时,发现因为电容的电容值过大,产生了封锁时间,导致这段时间是无法测得返回信号值的,经过不断地更改电容值大小,最终发现电容值在0.01 μF时几乎完全消除了封锁时间,解决了这段时间返回值无法测得的问题。

最后,将红外模块安装在小车上测试,发现了当光线太强时,它的返回信号值为1,模块会产生误判,导致车不跟随人走。

经过多次讨论和阅读数据手册,最终发现问题可能是由两个电解电容产生的。

将两个47 μF的电解电容换成了47 μF 的瓷片电容之后,经过测试发现误判概率大大降低,从而达到了小车跟随人的效果。

2.3 超声波模块
Trig是输入触发信号(可以触发测距),Echo是传出信号反响(可以传回时间差)。

超声波HC-SR04采用IO口TRIG触发测距,给一个最低为10 μs的高电平信号,当其在正常频率工作时会随机发射出8个频率在40 kHz以下的方波,并且它具有自动地检测有无信号返回的功能[11-13]。

接收返回的信号时,ECHO口会立即自动地输出一个高电平,超声波信号来回的总的路程与所用的持续时间,等于超声波输出一个高电平需要持续的总时间长度。

此模块测得的最远距离为4 m,测得的最近距离为2 cm,将此超声波避障测距模块固定在车头前方,作用是测试前方的人与小车之间的距离。

在测试过程中发现,当小车与人的距离过近时,人后退而小车后退速度太慢,就很容易踩到小车。

经过多次实验,小车与人的距离大于0.5 m时,人后退就很难踩到小车。

基于以上的原因,本设计添加了当小车与人的距离小于0.5 m时报警并后退的功能,保证人与小车之间的安全距离,防止发生碰撞。

2.4 LCD1602显示模块
此模块的作用是用来显示红外模块和超声波模块传送回来的信号值。

它的工作电压为4.5~5.5 V,工作电流为2 mA。

5 kΩ滑动变阻器是用来调节LCD1602的显示亮度的,RS在此模块中充当的是命令和数据区分的作用,当RS处于低电平状态时,则它的工作是命令,否则工作状态为数据;RW是读和写(数据或命令)的选择引脚,当RW处于高电平的状态时,则是从LCD1602读取命令或者数据,否则是向LCD1602写入数据或者命令;WR为模块的使能端。

D0-D7对应的是LCD1602的数据输入和输出引脚。

此模块的最佳工作电压为5 V,在5 V时显示的数据最为清楚。

2.5 L298N驱动模块
该主控模块主要的功能是由控制芯片L298N来同时控制左右两个步进电机的偏正方向或正向反转,以及可自动地改变正负两个同步电机转子间电机的同步与转速。

L298N驱动模块原理图详见图5。

L298N芯片是一种具有高压、大输出电流输入的双全桥式驱动器。

其SENSEA、SENSEB芯片分别也都是带有两个H桥式的高压输出大输入电流输出反馈输出插脚,在不用时也可进行连接。

VCC、VS接口两端基本都是串接一个工作电源引脚,电流范围上一般会分别设置约为直流的4.5~7 V、2.5~46 V,在单片机实际电路设计中使用情况中一般是VCC输入输出端会单独和单片机电源端在一起用来共享一个5 V左右的工作电源,而VS接口输出电源端口则通常只可以单独地用来接受另一个6~12 V供电。

ENA、ENB输入端是一个使能的输出端口,在低的电流平时它是一个阻拦电流
输出。

IN1、IN2、IN3、IN4分别设为数据输出的输入端
口引脚,是用来控制OUT1、OUT2、OUT3、OUT4上面的图4 人体红外感应模块原理图
电平的。

OUT1、OUT2、OUT3、OUT4分别均设置为数据输出的输出引脚控制的是外接的电机转动。

D1~D8都是保护放电二极管(SS34)的二极管,用途是保护或释放掉蓄电池在启动电机后突然停车或放电结束时放电产生发射出来电流的回响反映尖峰电势,如果不释放它则会击坏L298。

该车首先通过51单片机作为总控芯片,然后通过红外模块进行人体检测,将所采集的信号以0或1的数据返回给单片机;之后使用超声波模块,对前进时的障
碍物进行距离检测,当前方固定范围内没有障碍物存在时进行正常的形式,当前方范围存在障碍物时进行后退报警;最后将红外模块和超声波模块所采集到的数据在显示屏上展示出来,智能跟随小车实物如图6所示。

3 智能跟随小车软件程序设计
上电之后先进行系统初始化,包括定时器、人体红外、超声波、lcd1602等模块初始化。

本系统中定时器是用于人体红外模块检测,超声波检测和PWM 信号的产生。

因为红外和超声波可以放在一个定时器中所以只需要两个定时器并对其进行相关定时设置,在lcd1602初始化完毕之后就进入到while (1)循环当中,当3个方位的红外检测信号返回主芯片,然后主芯片对它进行编码使它检测到人为1,反之则为0,如果信号为1则给PWM 传输高电平,实现车直行、左转、右转等功能。

若返回值为0,则小车停止,等待红外重新检测。

在车行驶的过程中超声波将以10 μs的间隔检测一次。

当超声波返回值大于0.5 m 且小于4 m 时,车将正常行驶。

若当车与人之间的距离小于0.5 m 时,车载蜂鸣器将报警且车开始后退。

主程序流程图如图7所示。

3.1 红外模块
此模块对于检测到的物体的返回值只存在两个值,当检测到人体时返回给单片机的信号为1,反之则为0。

由于存在着返回值覆盖的问题,所以将它放在了一个10 μs 的定时器中断里,这样就有效地解决了覆盖问题。

中断是由超声波控制的,所以只要超声波没有接入,那么红外模块也不会检测。

红外模块流程图见图
8,实现代码如下:
unsigned int L_RED_read (){
u16 temp;
if (L_RED==0){temp=0;}if (L_RED==1){temp=1;}return temp;}
unsigned int M_RED_read (){u16 temp;
图6 智能跟随小车实物图
图7 主程序流程图
图5 L298N 驱动模块原理图
if (M_RED==0){temp=0;}
if (M_RED==1){temp=1;}return temp;}
unsigned int R_RED_read (){u16 temp;
if (R_RED==0){temp=0;}if (R_RED==1){temp=1;}return temp;}
3.2 超声波模块
超声波模块的工作原理就是Trig 先发出一个高电平信号,延时一段时间让Trig 变为低电平,Echo 端口初始为0,当Trig 发出的信号遇到障碍物返回来时Echo 变为高电平,通过这之间的时间差来计算车和物体之间的距离。

既然出现了返回值的问题,那么就要避免第一个数据还没有处理完,第二个数据就要处理的问题,所以它也被放在了10 μs 的中断中,且它的代码里面是控制定时器中断开始和关闭的。

由于HC-SR04超声波模块是通过接受反馈信号来进行距离检测,并且需要根据AT89C52单片机的晶振周期来进行设定,所以在11.059 2的晶振下,超声波模块流程图如图9所示,实现代码如下:
void measure(){float ult = 0.0f;
Trig = 1;delay_20us();Trig = 0;
while(Echo == 0);TR0 = 1;time = 0;
while((Echo == 1)&&(time <= 2000));ult = (float)time;
distance = (int) (34.0f * (ult / 100.0));if(distance > 1000) {distance = 1000;}TR0 = 0;time=0;ult=0;}3.3 显示模块
LCD1602主要用来显示小车运行过程中传感器所接收的信号,都是通过二进制来实现操作的,对LCD1602液晶模块的读/写操作、
显示屏和光标的操作都是通过编
程来实现的。

可以将超声波和红外模块传输回来的信号显示的显示器上面,当然它既然是一个内部的信号处理代码,那么外部传输的代码也是得存在的。

值得注意的是,对于LCD1602模块而言,尽量保证每次在使用前都进行一次初始化操作。

根据数据手册中的时序
图9 超声波模块流程图
图8 红外模块流程图
图可知,此模块反应的时间几乎都是纳秒级别的,所以它不同于其他显示模块可能会需要给延时函数来进行延时,从而达到避免信号值覆盖或者是乱码的情况,但是由于保险起见,其中需要延时的地方可以给予1 ms 的延时,这个延时对于人的感受而言可以忽略不计,同时还可以让模块有足够的时间进行程序的运行。

实现代码如图10所示。

3.4 驱动模块
此次小车的驱动模块主要是靠超声波模块和红外
模块的传回来的信号值来判断是否前进、左转、右转、后退等驱动。

上面介绍红外模块时已经提到,检测到人的信号为1。

同时用超声波来判断距离远近,来选择如何驱动。

例如:当正前方有人,那么中间的红外信号为1,其他红外模块都为0,同时和超声波模块一起,当距离大于0.5 m 时是前进,小于0.5 m 则代表前面人再后退,这时车上面带的蜂鸣器就会开始报警,提示人们距离过近的同时车也会随着人的后退而后退。

实现代码如图11所示。

4 结语
样车使用的是AT89C52芯片,所以车所涵盖的功能有限,后期可以换成tc264、MK60、STM32等和社会接轨的主芯片,这些芯片的性能和可带动模块都比AT89C52芯片的多,不仅可以自主完善小车的性能,同时也可以给车增加新的功能。

例如:增加摄像头作为辅助判断,使对前方是否有人的判断更为精确;增加陀螺仪来检测车的自生状态是否处于上坡状态或者下坡
状态来进行减速或者加速处理等。

本文利用单片机控制器,结合人体红外传感器和超声波传感器设计的智能跟随小车,实现了小车对人体的自动跟随,当跟随距离小于0.5 m 时报警并后退,保持安全距离。

响应迅速,跟随精度较高,性价比高,可应用于商场购物、超市搬运以及家居使用等生活常见场所。

参考文献
[1]蒋伟.基于GPS 定位的智能跟随小车设计[J].数字化用户,2018,24(7):44-45.
[2]储兆玲,徐启航,赵智超,等.协同跟随行驶小车的设
图10 数字显示代码图
图11 驱动模块代码图
计和实现[J].福建电脑,2023,39(1):85-88.
[3]许皓博.自动循迹跟随智能小车设计[J].数字通信
世界,2022(1):132-134,137.
[4]张春梅,温新权,胡高天,等.智能跟随小车的设计与
制作[J].机电产品开发与创新,2022,35(5):75-78. [5]周旭华,赖理智,钟承志.基于ROS的自主跟随智能
小车的设计[J].汽车电器,2021(7):4-7.
[6]王清嘉.基于图像识别技术的智能小车跟随系统[J].
品牌与标准化,2022(3):78-80.
[7]贾宸煌.用M5StickV摄像头和Arduino制作跟随小
车[J].无线电,2020(7):85-87.
[8]刘洋洋.多智能小车的网络化跟随控制设计与平台
实现[D].太原:山西大学,2019.
[9]袁俊翔.基于卷积神经网络的智能小车自动跟随系
统的设计与实现[D].南京:东南大学,2020.
[10]刘英明,刘治满,钱华明.跟随型智能小车边缘计算
的边云协同系统设计[J].单片机与嵌入式系统应用, 2021,21(6):57-60,64.
[11]逯云杰.超声波定位跟随小车的系统硬设计研究[J].
电子制作,2020(17):95-97.
[12]毛秀,黄晓华,许仕旗,等.基于超声波技术的智能跟
随小车[J].电工技术,2019(2):14-15,81.
[13]夏晓枫,杨佳丽,宁维阳,等.超声波定位智能小车自
动跟随算法[J].科技资讯,2019,17(7):25-26,28.
狱、法治教育基地等,感受依法治国的理念,加深对习近平法治思想的理解。

高校所有教师都应互相配合,共同推进“三全育人”的教育教学理念,更好地将习近平法治思想融入大学生思想政治教育当中[6]。

4.3 拓宽渠道,营造良好的习近平法治思想教育环境
要开拓多种渠道,为习近平法治思想教育营造良好的学习环境。

第一,搭建多样化的发展平台。

作为大学生思想政治教育主阵地,高校应根据时代的需求和大学生的发展规律,开展丰富的思想教育形式,搭建多样化发展平台,如利用社团,拍摄微电影、短视频等,丰富校园生活,增强学生的归属感,让学生迅速融入集体中,在日常生活中接受习近平法治思想教育。

此外,习近平法治思想教育是一项社会工程,这就需要调动全社会各方力量,给予更多的资源倾斜,大力发展产、学、相结合的模式,促使大学生对于习近平法治思想的理论与实际相结合[7]。

第二,高校要加强大学生网络法治观念建设。

当今社会是一个高度信息化的时代,党和国家非常重视互联网的法治建设,通过立法、执法、“网上110”等方式来加强对互联网的管理。

高校应跟随国家和时代的步伐,拓宽渠道,开展专项教育,引导大学生文明、健康上网,对于国内外发生的热点时事问题有自己的认识,遵守网络法规,树立网络不是法外之地的思想观念。

第三,高校的法治基础建设需要进一步加强。

依法治校是依法治国在大学校园的一个缩影,也是高校对依法治国理念的具体实践活动。

高校建立起崇尚法治的良好校园氛围,建立法治帮扶类基础设施,如开通大学生法律援助电话热线、成立大学生法律维权中心等,为生活中遇到困难的大学生提供法律援助服务,既提高学生的法律知识水平,又培养大学生的法治思想素养。

5 结语
习近平法治思想是马克思主义法学中国化的最新理论成果,是中国特色社会主义法治建设的重要指导思想,将习近平法治思想融入大学生思想政治教育,提高大学生的法治素养和政治素养,帮助其树立社会主义核心价值观,还可以推动我国社会主义法治建设,对于实现中华民族伟大复兴有着重要的意义。

参考文献
[1]习近平谈治国理政(第一卷)[M].北京:外文出版社,
2018:287-289.
[2]李蔺.新时代大学生社会主义核心价值观培育路径
研究[J].学校党建与思想教育,2021(17):62-65. [3]李佳鑫.习近平法治思想引领新时代大学生法治观
培育[D].长春:吉林大学,2022.
[4]项久雨,石海君.高校思想政治理论课协同效应生
成的三个维度[J].思想理论教育,2018(4):93-96. [5]付子堂.习近平同志全面依法治国新理念新思想新
战略:发展脉络/核心要义和时代意义[J].中国法学, 2019(6):107-110.
[6]李芳.习近平新时代中国特色社会主义思想融入高
校思想政治教育研究[J].学校党建与思想教育,2018
(8):118-120.
[7]刘佳璇.习近平法治思想涵养高校思想政治教育研
究[D].济南:山东大学,2022.
(上接第3页)。

相关文档
最新文档