基于51单片机设计的简易智能机器人
随着微电子技术的不断发展,微处理器芯片的集成程度越来越高,单片机已可以在一块芯片上同时集成cpu、存储器、定时器/计数器、并行和串行接口、看门狗、前置放大器、a/d转换器、d/a转换器等多种电路,这就很容易将计算机技术与测量控制技术结合,组成智能化测量控制系统。这种技术促使机器人技术也有了突飞猛进的发展,目前人们已经完全可以设计并制造出具有某些特殊功能的简易智能机器人。
1 设计思想与总体方案
1.1 简易智能机器人的设计思想
本机器人能在任意区域内沿引导线行走,自动绕障,在有光源引导的条件下能沿光源行走。同时,能检测埋在地下的金属片,发出声光指示信息,并能实时存储、显示检测到的断点数目以及各断点至起跑线间的距离,最后能停在指定地点,显示出整个运行过程的时间。
1.2 总体设计方案和框图
本设计以at89c5l单片机作为检测和控制核心。采用红外光电传感器检测路面黑线及障碍物,使用金属传感器检测路面下金属铁片,应用光电码盘测距,用光敏电阻检测、判断车库位置,利用pwm(脉宽调制)技术动态控制电动机的转动方向和转速。通过软件编程实现机器人行进、绕障、停止的精确控制以及检测数据的存储、显示。通过对电路的优化组合,可以最大限度地利用51单片机的全部资源。
p0口用于数码管显示,p1口用于电动机的pwm驱动控制,p2,p3口用于传感器的数据采集与中断控制。这样做的优点是:充分利用了单片机的内部资源,降低了总体设计的成本。该方案总体方案见图1。
2 系统的硬件组成及设计原理
此系统的硬件部分由单片机单元、传感器单元、电源单元、声光报警单元、键盘输入单元、电机控制单元和显示单元组成,如图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。
评论