基于模块化控制的多功能智能搬运小车的设计

2018-12-14 12:56范淇元覃羡烘黄文妹
自动化与仪表 2018年11期
关键词:码垛舵机机械手

范淇元,覃羡烘,黄文妹

(1.华南理工大学 广州学院,广州 510800;2.广东理工学院 工业自动化系,肇庆 526100)

随着科学技术的发展,自动化、智能化是我国当前不可推卸的首要任务。智能化是现代设备的象征。智能小车的运用领域非常广泛,它不仅可以运用于无人车间,更可以运用于军事、通信、导航,甚至于家庭[1]。它所涉及的知识也是十分丰富,涵盖了机械、电子、计算机、传感器等。

智能小车不仅可以减少繁重的体力劳动,同时可以提高企业的生产率和降低劳动成本。现今,企业的生产技术不断提高,对自动化技术要求不断加深的环境下,智能小车以及在此基础上开发出来的产品已成为自动化物流运输、柔性化生产组织等系统的关键设备[2]。特别在一些高危生产线上,工人们冒着生命危险干活,而采用智能小车搬运,就不用担心出现这种问题。再者智能小车的芯片能装载的信息非常庞大,且价格低廉。因此具有非常广阔的前景。

1 智能小车硬件设备原理及安装

1.1 智能小车控制主板

所选用的Openduino是中科欧鹏公司的智能搬运码垛控制主板。它可以驱动多种电路模块,比如电机模块、超声波模块、QTI(quick track infrared)传感器模块、颜色传感器模块[3]。Openduino在驱动舵机时,可以直接输入脉冲的大小来控制舵机的转速,从而达到舵机调速效果。在各种驱动中,如直流、伺服、步进电机均适用Openduino,而且电机的驱动电源是独立的。控制板有16路数字舵机接口,可以灵活地配置不同端口的模块,同时也支持多种环境。设计中采用了C语言编程软件Eclipse。

1.2 智能小车控制芯片

控制主板Openduino的主控芯片为ATmega328p。ATmega328p是一款主流Atmel AVR的芯片,具有很强的I/O驱动能力、高速运行处理能力且低功耗,晶振为16 MHz[4];有32个针脚数、23个可编程的I/O口、32 kB的程序存储器容量,被广泛应用于微小型机器人的系统开发。

1.3 循线功能QTI传感器

智能小车循线功能通过QTI传感器实现。QTI传感器是一种小功率集成管,由红外发射器和红外接收器2部分组成;有3个引脚,分别是电源(Vcc-5 V)引脚、地(GND)引脚和信号输出(SIG)引脚[5]。QTI传感器在循线功能应用广泛,普遍用于智能小车。QTI传感器最佳探测距离为10~12 mm。

1.4 角度伺服舵机

机械手控制主要采用4个自由度的角度舵机来实现,驱动角度伺服舵机的芯片是74HC595。该机械手运作非常平稳,控制也非常方便。因为是双臂用双电机驱动,启动的力矩非常大。又因为是小型样机,所以机械手的最大展开长度为300 mm(从大臂关节中心到手爪顶端),最大的夹持重量仅为150 g,但相对于五自由度机械手,具有4个转动关节和1个夹持关节。机械手臂部分从角度舵机1到角度舵机5依次接到控制板上标识为SVO1—SVO5接口,角度舵机的控制范围通常为0~180°[6]。在此,采用的角度舵机控制脉冲宽度范围为 1000~5000 μs,编程时定义 1000 μs对应角度为 0°,5000μs对应角度为 180°。

1.5 硬件分布实物

QTI传感器的硬件分布如图1所示。

图1 QTI传感器分布实物图Fig.1 QTI sensor distribution physical diagram

智能小车前进循线所用到的QTI有QTI1—QTI4:QTI1用于左转角,QTI4用于右转角,QTI2和QTI3用于控制前进。QTI5和QTI6主要用于智能小车停止位置的定位;QTI7—QTI9除用于后退循线外,还具有抓物料及放物料的定位功能。角度舵机分布实物图如图2所示。

图2 角度舵机分布实物图Fig.2 Angle servo distribution physical map

2 智能小车软件系统设计及调试分析

2.1 搬运物料路径图及编程设计思路

通过路径的规划,使智能小车能经过程序运算后,将物块搬运到指定位置并进行堆垛。搬运物料路径如图3所示。

图3 搬运物料路径Fig.3 Handling material path map

采用编程软件Eclipse进行编程。编程设计思路如下:①转角程序设计 智能小车前方左右两边QTI传感器对黑道扫描方法转角;②前进循线设计 智能小车前方4个QTI传感器循线;③后退循线设计 智能小车后方3个QTI传感器循线;④定位放物料设计 智能小车后方3个QTI传感器定位;⑤机械手动作顺序 舵机5→舵机4→舵机3→舵机1和2。

2.2 搬运物料的流程

智能小车搬运物料的流程如图4所示。

图4 智能小车搬运物料步骤流程Fig.4 Intelligent car handling materials flow chart

2.3 搬运调试过程及结果

搬运程序主要是调试智能小车,使其按照事先拟好的路线进行搬运、堆叠,且智能小车在搬运第2个货物时还能整齐地叠放在第1个货物的上面。调试时,先进行分段程序调试,再做程序总体调试。对机械手和QTI的调试稍后再进行,此时调试好搬运路径即可。智能小车能自动进行分料,这些程序都在调试时拟好。

智能小车在搬运过程中,基本可以按照要求完成上下搬料的动作,但有可能在抓物料、放下物料时出现些许误差,比如堆放不整齐、夹取时把下层的物块弄倒。这些细微误差都将在调试过程中一一解决。

2.4 QTI传感器循线调试

2.4.1 调试过程

循线调试共使用9个QTI传感器。从智能小车后方向前方看去,前方中间有4个QTI,它们主要用于智能小车前进循线和调整精度循线;轮子左右附近有2个QTI,主要用于辅助循线以及转角度循线;“尾巴”中间有3个QTI,主要用于转角度循线和后退循线。

QTI传感器读取信号为1时表示处于黑道,为0时表示处于白道。

控制程序编译成功后下载至智能小车控制器中并运行,运行过程得到调试结果。由图3可见,小车先利用前面的QTI进行直线行走,到十字路口之后要实现向左转或者向右转90°的功能,主要是利用扫描的方法转角。如向左转至白点时,智能小车中间的QTI会感应到白点,产生低电平,小车停止前进。除向左、向右转90°之外,还可以实现180°的转角。

2.4.2 调试结果

QTI传感器的循线调试结果见表1。

表1 QTI循线状态Tab.1 QTI line status

多功能智能小车在循线时,直线行走时非常稳定,但在转角时不够稳定,会出现转角幅度偏大的情况,为此需要使用扫描的方法来进行转角。故在编程时,增加了智能小车转过90°时再做一次角度的修正,以达到后续行走过程中能够循着直线行走。

2.5 机械手工作调试

2.5.1 调试过程

为使智能小车的机械手能准确地抓放物料,调试时采用了单一变量法,在保持其他2个机械手参数不变的情况下,对机械手的每个参数进行调整。因受多种因素影响,所以在调试过程中需要耐心反复调试。最终通过调试,得到了比较理想的舵机参数。理想的机械手动作参数见表2。

表2 机械手动作参数 (°)Tab.2 Manipulator parameters

2.5.2 调试结果

机械手经过调试后,智能小车在运行过程中,机械手基本能按照要求完成各个动作,可以实现抓取、放下物料的功能。然而,由于实际结果与设定的参数存在误差,尤其在抓取和堆垛的位置上,不能每次都精准实现,会出现位置的微小偏移。这主要是由于受电量外在因素的影响,电机运转会受到电量的制约。

2.6 智能小车硬件设备及软件系统的改进

之所以不能准确抓放物料,除了受智能小车硬件设备的影响外,还与软件系统有关。在小车搬运物料时,由于电量不足,导致机械手无法正常工作,直接影响搬运结果;有时QTI传感器无法正常工作,影响循线的准确度;机械手参数并非最佳范围,导致无法把物料搬到最佳位置;地图有些地方太黑,直接影响QTI传感器的读取功能;等。因此有必要对智能小车硬件设备及软件系统做进一步改进。

硬件设备的改进如下:①地图的质量不能影响QTI传感器读取功能;②电量应充足,如果经济条件允许可以考虑更换新的电池;③QTI传感器的安装位置必须根据智能小车的工作需要,不得随意安装;④搬运物料前,须全面检测硬件设备,以保证智能小车码垛能正常进行。

软件系统的改进如下:①烧录程序之前,须对程序进行全面检查,确保程序无误后才能烧录。②程序的语法可以考虑switch语句,以达到程序精简效果。③程序应模块化,以便于程序错误的检查。④for,while,do while均为循环体结构,三者可以互换使用。 ⑤void T (int LeftSpeed,int RightSpeed,int time),timed值不宜过大,太大则小车可能冲出黑道,time值最好为2~5。⑥机械手动作的顺序是:舵机5→舵机4→舵机3→舵机1和2。其目的是防止碰到物料,提高搬运物料效率,提高放物料精度。

3 模块与仿真

3.1 金属模块的检测

金属检测主要利用超声波来控制。设计中,金属检测功能并未附在智能小车搬运的场地图中,而采用了单独的形式,其原理非常简单。在车的头部安装1条小管道,再安装1块电磁铁,在小车行驶过程中通电。当小车行驶到有金属的位置时,电磁铁的位置发生变化,超声波感应到电磁铁位置的变化,则认为感应到金属。金属检测实物设计如图5所示。

图5 金属检测实物设计Fig.5 Metal detection physical design

3.2 避障模块

避障使用红外避障法,而不是超声波避障法。相对而言,后者的运用更广泛,而且反应灵敏。在此设定避障的距离为30 cm。如果利用超声波避障,由于距离和空间小而产生前后传感器信号干扰[7],因而无法判断出现障碍物的位置而发生程序紊乱,最终达不到要求。采用红外传感器来避障便可解决这些问题。

然而,当障碍物距离小车非常近的时候,红外传感器发出的信号容易遭受自然光的干扰。当检测到障碍物的时,发射回来的红外光被红外光敏二极管接收,产生低电平,该信号被放大交由单片机分析之后做出动作,该左转、右转或者后退。

3.3 小车测距模块

测距主要利用霍尔传感器获得信号来实现。在转轴上粘一些磁钢,使霍尔开关接近磁钢,就可以产生信号[8]。当转轴在不停转动时,就会不断地产生脉冲信号输出。当在转轴上的磁钢达到可以让转轴转一周时,就可产生多个脉冲。

在粘这些磁钢时应注意,霍尔传感器对磁场方向非常敏感。如果粘上的磁钢靠近霍尔传感器时没有脉冲输出,则应更换方向再做测试。

由于该传感器可运用在重油污或有灰尘的环境中,因此在工业中被广泛使用。在此测试中,小车的轴半径r=3 cm,则小车转n周的路程为S=2×3.14×3n。

3.4 循迹原理

多功能智能小车按照白色地图上的黑线行驶。通常采用红外探测法。主要利用不同颜色的物块会产生不一样的反射强度原理。在小车循迹行驶过程中,不断地向地面反射红外光,当小车行驶到白色区域时产生漫反射,则被小车接收管接收,小车停止前进;如果是黑线,则被红外光吸收,不产生漫反射,故接受管接受不到信息,小车继续前进。小车在循迹过程中主要依据该原理来判断黑线或者白线。

3.5 驱动电机原理

电机驱动电路是主芯片发出信号控制电机从而控制小车运动,并通过控制OUT来控制小车电机的正、反转,即控制小车的左、右转向,同时也控制小车的前进、后退和停止。

在此使用Proteus对电路图进行绘制和仿真。仿真均依据多功能小车运行的原理进行绘制,分别有循迹、驱动电机、金属检测、测距、避障等。在原理图绘制中,未采用AVR的芯片,是因为在POTELS软件中很难找到该芯片,采用的是日常单片机中最常用的芯片ATM89c52。型号不同,但演示的结果相同。

4 智能小车的搬运码垛试验

完成编程后对智能小车进行了搬运码垛试验。转角主要依靠小车前面两边QTI传感器扫黑道的方法进行,其好处是能保证转角度到位,不受电量的影响。因为需要中转物料,所以主要使用后面QTI传感器扫描黑道的方法进行转角。小车能准确停在线上放物料,主要靠后面3个QTI传感器对白点进行定位停车。后退主要依靠后面的QTI传感器循线。智能码垛搬运物料时也是按照顺时针扫描搬运物料,当物料与放终点位置一致时,机械手直接抓起物料前进到一定位置放下物料;当其他线被物料挡住时,则机械手抓起物料转角到该线上,待前进到一定位置放下物料;其他情况则中转到其他归划好的储物区。搬运码垛试验中的智能小车如图6所示。

编程主要利用数组作为编程的核心,将已知的物料颜色给数组赋值,智能小车就会将物料准确无误地搬运到相应的位置。

5 结语

先对智能搬运小车的硬件进行甄选,然后进行软件编程并反复调试;对电路进行了绘制和仿真,模拟了在生产线上多功能小车依靠机械手完成上下料、物料储存、摆放等一些物流活动;解决了智能小车在生产上遇到的比较常见的循迹、驱动电机、金属检测、测距、避障困难等问题;在制作和设计过程中较容易实现,且具有高度的人性化、智能化。目前该多功能小车已经投入使用,为企业创造了比较好的效益。

图6 智能小车的搬运码垛试验Fig.6 Handling and palletizing test of intelligent trolley

猜你喜欢
码垛舵机机械手
某数控车床的桁架机械手结构设计
可控机构式码垛机器人的运动学误差分析
移动式码垛机器人移动臂的优化设计
人体体感感知机械手设计与实现
GSK工业机器人码垛程序编写技巧
含齿隙弹载舵机的全局反步模糊自适应控制
基于dsPIC单片机的飞艇舵机控制实现
车轮装配机械手气动控制系统设计
基于粒子群迭代的一种冗余机械手逆解算法
基于高速同步485总线通信的多通道舵机控制器设计