全国服务热线:18929363263

智能轮式机器人设计

来源: 发布时间:2022-03-18 99 次浏览

基于Arduino单片机的智能轮式机器人设计

轮式机器人在工业应用方面可以完成自动化搬运作业的任务,当今社会,随着生产条件日益现代化,劳动生产率要求越来越高,企业更注重效率,机器人在社会各领域的作用越来越大,对机器人的研究成为热门话题,各项机器人比赛也备受人们的关注。

如今在互联网发展的背景之下,催生了网上购物等平台,同时也为物流业的蓬勃发展注入了强大的动力。在物流中心,快递的分拣基本上还是依靠人工来实现,人工拣货既效率低下而且又容易出错,随着业务量的增加还得增加更多的人手,所以自动分拣的建设是快递发展的必然方向。因此智能分拣机器人的研究与创新应用将很大程度的解决物流行业所面临的一些问题,更重要的是机器人实现的一些功能能被应用于各行各业,充分体现出智能化为人们生活和生产带来的便利。

本次机器人实验项目采用轮式机器人的设计方式,即移动机器人的一种。要求机器人能够实现将搬运物通过指定路线搬运到相应位置,同时搬运机器人能够自动躲避路线中的障碍,自主应对复杂的道路环境。搬运机器人能够通过无线传输技术实现远距离控制,能够更好的服务于人类。

一、智能轮式机器人方案开发思路

智能搬运机器人通过四轮驱动,每个车轮都由一个直流电机控制,通过控制电机的转动来控制机器人的转向。通过超声波模块或者红外感应模块实现机器人对障碍物的识别,并将模块采集的信息传送给单片机,由单片机判断后对控制电机的IO口发送指令,使机器人完成相应的转向动作。人工无线控制是通过蓝牙模块与手机软件实现。可以无线控制机器人完成前进,后退、左转、右转的指令,从而让机器人到达指定位置。

二、智能轮式机器人硬件系统设计

本次实验项目采用Arduino控制板,此芯片负责控制电机状态,并处理从各个模块收集的信息,然后发出相应指令。本次项目以实验创新为主,由于干电池体积小,使用方便,可任意组合成所需电压的直流电源,所以采用干电池供电。本实验采用2节3.7V大容量18650锂电池供电,为系统中的各个模块提供稳定可靠的工作电压。

机器人设计采用轮式机器人的设计概念,每个轮子配有一块DC3-6V直流减速马达电机,减速比为1:48,工作电压为3-6V。合适的电机在实验中占有非常重要的位置,耐用、环保和屏蔽环境干扰等都是其要考虑的参数,并且好的电机在代码的包容度上也有明显的帮助。

本次实验项目采用的电机驱动方案是TB6612FNG电路。TB6612FNG是双驱动,电机电源接口带有反接保护电路。相对于传统的L298N效率上提高好多,体积上也大幅减少。超声波模块由发射电路和接收电路组成。本次实验采用的超声波传感器是最常见的HC-SR04,使用电压为DC5V,输出5v高电平和0v低电平。静态电流小于2mA,感应角度不大于15度,探测距离为500cm,精度可达0.3cm。

SR04是利用超声波特性检测距离的传感器,其带有两个超声波探头,分别用作发射和接收超声波。先使用Arduino的数字引脚13向TRIG脚输入至少10us的触发信号,模块将自动发出8个40KHZ的超声波脉冲,并自动检测是否有信号返回。一旦检测到有回波信号则ECHO引脚会输出高电平,根据高电平持续时间就可以获得机器人与被测障碍物的距离,从而完成避障任务。

红外传感器寻线的基本原理是利用物体的反射性质。本次实验是巡黑线行驶,采用的是四路红外传感器分别连接在Ar-duino主控板上的A1,A2,A3,A4口上,当红外线发射到黑线上时会被黑线吸收掉,发射到其它的颜色上将会反射到红外的接收管上。以主控板上IO口高低电平的变化来判断小车行驶轨迹。

三、智能轮式机器人软件设计

在进行微机控制系统设计时,除了系统硬件设计外,大量的工作就是如何根据每个生产对象的实际需要设计应用程序。因此,软件设计在微机控制系统设计中占重地位。对于本系统,软件更为重要。

在单片机控制系统中,大体上可分为数据处理、过程控制两个基本类型。数据处理包括:数据的采集、数字滤波、标度变换等。过程控制程序主要是使单片机按一定的方法进行计算,然后再输出,以便控制生产。

为了完成上述任务,在进行软件设计时,通常把整个过程分成若干个部分,每一部分叫做一个模块。所谓“模块”,实质上就是所完成一定功能,相对独立的程序段,这种程序设计方法叫模块程序设计法。

模块程序设计法的主要优点是:单个模块比起一个完整的程序易编写及调试;模块可以共存,一个模块可以被多个任务在不同条件下调用;

模块程序允许设计者分割任务和利用已有程序,为设计者提供方便。本系统软件采用模块化结构,由主程序、定时子程序、避障子程序、中断子程序显示子程序、调速子程序、算法子程序构成。

智能分检机器人在承载物件后应按照规划路线行驶到指定的区域等待物件被卸载,不同颜色的物件将被运送到不同的分类区域。然后机器人将回到初始区域开始下一轮的任务,如此循环往复。本项目系统软件设计主要包括寻线运动子程序,避障子程序以及颜色识别子程序。智能分拣机器人能够实现整套的任务流程离不开各个模块功能的配合。

本次实验采用的是Arduino单片机,设计出能实现分拣的机器人,具有寻线运动,颜色识别,避障等特点。