基于单片机设计的简易智能机器人.docx
《基于单片机设计的简易智能机器人.docx》由会员分享,可在线阅读,更多相关《基于单片机设计的简易智能机器人.docx(5页珍藏版)》请在冰豆网上搜索。
![基于单片机设计的简易智能机器人.docx](https://file1.bdocx.com/fileroot1/2022-11/22/36b27893-6196-4606-9841-94a2a28860fc/36b27893-6196-4606-9841-94a2a28860fc1.gif)
基于单片机设计的简易智能机器人
基于单片机设计的简易智能机器人
引言
随着微电子技术的不断进展,微处理器芯片的集成程度越来越高,单片机已能够在一块芯片上同时集成CPU、储备器、定时器/计数器、并行和串行接口、看门狗、前置放大器、A/D转换器、D/A转换器等多种电路,这就专门容易将运算机技术与测量操纵技术结合,组成智能化测量操纵系统。
这种技术促使机器人技术也有了突飞猛进的进展,目前人们差不多完全能够设计并制造出具有某些专门功能的简易智能机器人。
1设计思想与总体方案
1.1简易智能机器人的设计思想
本机器人能在任意区域内沿引导线行走,自动绕障,在有光源引导的条件下能沿光源行走。
同时,能检测埋在地下的金属片,发出声光指示信息,并能实时储备、显示检测到的断点数目以及各断点至起跑线间的距离,最后能停在指定地点,显示出整个运行过程的时刻。
本设计以AT89C5l单片机作为检测和操纵核心。
采纳红外光电传感器检测路面黑线及障碍物,使用金属传感器检测路面下金属铁片,应用光电码盘测距,用光敏电阻检测、判定车库位置,利用PWM(脉宽调制)技术动态操纵电动机的转动方向和转速。
通过软件编程实现机器人行进、绕障、停止的精确操纵以及检测数据的储备、显示。
通过对电路的优化组合,能够最大限度地利用51单片机的全部资源。
P0口用于数码管显示,P1口用于电动机的PWM驱动操纵,P2,P3口用于传感器的数据采集与中断操纵。
如此做的优点是:
充分利用了单片机的内部资源,降低了总体设计的成本。
该方案总体方案见图1。
系统的硬件组成及设计原理
此系统的硬件部分由单片机单元、传感器单元、电源单元、声光报警单元、键盘输入单元、电机操纵单元和显示单元组成,如图2所示。
2.1单片机单元
本系统采纳AT89C51单片机作为中央处理器。
其要紧任务是扫描键盘输入的信号启动机器人,在机器人行走过程中不断读取传感器采集到的数据,将得到的数据进行处理后,依照不同的情形产生占空比不同的PWM脉冲来操纵电机,同时将相关数据送显示单元动态显示,产生声光报警信号。
其中,P0用于数码管动态显示,P1.0一P1.5操纵2个电机,P1.6、P1.7为独立式键盘接口,P2接传感器,P3.2接计里程的光电码盘,P3.7接声光报警单元,P3.4、P3.5、P3.6接用于显示断点数目的发光二极管。
2.2电机操纵单元
本机器人采纳了双电机双轮驱动的小车作为其底座。
2个电机分别独立操纵其左右两边的车轮,靠两边电机的转速的不同来实现转弯功能,还可让其原地转弯,便于操纵。
而传统的小车是靠动力电机和转向电机驱动,转弯角度难以操纵,不便于使用。
电机操纵电路采纳大功率对管BDl39、BDl40组成的H型驱动电路,通过单片机产生占空比不同的PWM脉冲,精确调整电机的转速。
这种电路由于工作在晶体管饱和或截止状态,幸免了在线性放大区工作时晶体管的管耗,能够最大限度地提高效率;H型电路保证了能够简单地实现电机转速和方向的操纵;电子开关的速度和稳固性也完全可满足需要,整套驱动电路是一种被广泛采纳的电机驱动技术。
电路见图3。
2.3传感器单元
整个机器人共采纳了9个传感器,分布在整个机器人的不同部位,相互配合起不同的作用,见图4。
图4中各传感器说明如下:
传感器1置于机器人正前方朝下的金属探测传感器,用于探测金属。
nbsp; 传感器2置于机器人正前方朝前的超声波传感器,用于检测障碍物。
超声波来源于555产生40kHz的方波信号,经超声波发射头发出。
发射头不断发出信号,当遇到障碍物时,信号会被反射回来,从而接收头会同意到信号,将信号送入单片机进行相应的判定和处理。
传感器3置于机器人正前方朝下的红外光电传感器,用于检测停止线。
红外发射管发出信号,经不同的反射介质反射,依照红外接收管是否接收到信号做出相应的判定。
传感器4、5置于机器人底座下方朝下的红外光电传感器,用于检测地面的引导线,原理同传感器3。
传感器6、7置于机器人正前方朝前的光敏电阻传感器,用于查找光源。
当机器人前方有光源照耀时,光敏电阻的大小将会改变,将2个传感器的改变量进行比较处理后送入单片机,单片机将会产生相应的调整信号,使机器人朝光强的方向行走。
传感器8置于机器人后方两侧朝外的超声波传感器,用于在机器人遇到障碍物时的转弯处理,判定机器人是否完全绕开障碍物,原理同传感器2。
传感器9置于机器人正后方的光电码盘,用于计里程,借助于鼠标原理,选用直径为2.6cm的塑料小轮自制光电码盘,通过打磨使其周长为8cm,再在该小轮上打等距离的8个孔,如图5所示。
最小测距精度可达到1cm,足以满足要求,两侧装上光电传感器,将其安装在车尾,使之与车的行驶同步。
就实际情形自制出来的各个孔之间的距离无法精确相等,但通过具体测量该光电码盘,能保证行驶50cm产生50个脉冲,因此采纳其作为运算距离的基准单位。
在直道区,可由该电路产生的脉冲数,运算出铁片中心线至起跑线间的距离。
此外,为了清晰直观地观看到各传感器的工作状态,电路中还专门为每个传感器设计了工作指示灯,实时显示每个传感器的工作状态。
2.4键盘输入单元
键盘输入单元采纳独立式键盘,由2个按键组成,其中一个为启动键,另一个为显示切换键,当机器人行走完全程后,按下该键,将显示整个行走过程的时刻。
2.5显示单元
显示单元由2个7段数码管组成,为了减少整个系统的功耗,采纳了由单片机软件译码,动态显示,实时显示每个断点到起点的距离以及整个运行过程的时刻。
2.6声光报警单元
用555作为振荡源,用单片机触发振荡源驱动电磁讯响器作为声音指示器和1只发光二极管作为光指示装置,从而组成声光报警单元。
2.7电源单元
本系统采纳2套电源分别对电机和操纵电路进行单独供电。
系统操纵电路采纳经7805稳压后的输出供电(5V),电机则采纳4节AA电池来供电。
3系统的软件设计
该系统配套的软件程序采纳模块结构,由C语言编写完成。
要紧由初始化程序、偏道调整程序、偏离光源调整程序、声光指示子程序、读传感器状态、显示程序、定时器0的中断服务程序、定时器1的中断服务程序、外部中断0的服务程序、停车处理等模块组成。
系统的主体流程如图6所示。
4终止语
该机器人在认为设定的跑道上通过多次实验,达到了预期的成效,然而其智能化程度还远远不够。
随着人工智能和神经网络技术的不断研究和深入,智能机器人的进展前景将会越来越宽敞。