简易自动仓储搬运智能小车设计

2010-08-08 00:52张友方
网络安全与数据管理 2010年12期
关键词:立方体小车单片机

张友方,王 锐,张 波

(1.解放军炮兵学院,安徽 合肥 230031)

本文设计的智能小车是一种集实时采集传感器信号,智能分析外部环境、路径信息,自动方向控制及速度调节等技术的自动设备。本系统设计的智能小车具有图形识别能力,能自动识别三角形、圆形、正方形和十字形,并将该立方体搬起,运送到指定地点。而且,要求小车以最快的速度和最高的精度完成以上功能,此外,由于立方体任意放置,搬运顺序不限,还要求小车具有最优路径选择的能力。

1 智能小车的功能和硬件结构

系统组成原理如图1所示。主要由单片机模块、上位机、视频采集模块、驱动电机、伺服电机及机械手、寻线模块、码盘检测模块以及目标跟踪等模块构成。采用了基于TWI总线规范的主从机控制方式,以AVR系列单片机 ATMega 128作为控制系统的主模块,ATMega88作为底层控制模块,实现系统控制和信号检测。

系统通过视频采集模块把整个场景图像送到上位机处理,通过对图像的二值化和Hough变换处理,分辨出几种立方体的摆放顺序,然后通过无线通讯方式发送给小车。小车的主单片机ATMega 128根据接收到的立方体摆放信息,规划出最优的搬运路径,然后将规划后的指令发送给从机,由从机驱动电机行进,控制小车的运动和定位。小车检测到相应立方体后,由从机控制伺服电机驱动机械手将立方体夹起,送到指定地点,然后将立方体放下,继续执行下一次搬运动作,直到将所有的立方体都按要求运送到指定的位置。在小车搬运过程中,目标跟踪模块使用DSP对上位机采集到的视频信息进行处理,实时跟踪小车的行进路线,并由此画出小车的行进示意图。

2 关键技术和模块电路

2.1 电机驱动模块

方案一:采用电机细分驱动,电机细分驱动芯片TA8435可以用两路PWM信号控制两个步进电机,能够节省单片机资源,但致命的缺点是当单片机速度变化较大时,电机很容易失控。

方案二:L298驱动芯片,用L298驱动虽然占用较多的单片机I/O口,但控制比较容易。在速度变化较大时,基本上不会出现电机失控的情况。本设计采用方案二,直流电机驱动电路主要由一个双桥式驱动芯片L298和7404组成,电路图如图2所示。为使其准确调整两电机的速度,以控制小车行进方向,必须精确控制PWM的占空比。若输入左电机的PWM占空比大于右电机,则小车右转;反之,则左转。

2.2 引导线检测方案

方案一:可见光发光二极管与光敏二极管组成的发射-接收电路,该方案缺点在于易受外界环境光源的干扰,容易造成误判,准确度不高。

方案二:反射式红外发射-接收器,对黑白检测比较敏感,灵敏度较高,且电路简单,完全满足系统要求。

比较两种方案,选用方案二。

采用红外检测单元电路,如图3所示。反射式红外发射-接收器检测到信号后与比较器LM324的参考电压相比较,当检测不到黑线时,发射管发出的光经面板反射后被接收管接收,接收管导通,LM324输出低电平,当检测到黑线时,发射管发出的红外光将不被接收管接收,LM324输出高电平。

2.3 码盘检测电路

码盘测速电路如图3所示,码盘见图4所示,对射式红外发射-接受器检测脉冲个数,通过计算脉冲的周期来计算小车的行进速度。

2.4 图形识别模块

图形识别模块在本设计中起着至关重要的作用,其识别正确与否直接影响到小车搬运的正确与否。本系统场景设置比较单一,图形边缘信息较为规则,故采用Hough变换实现图形识别。

Hough变换是对图像进行某种形式的坐标变换。它将原始图像中给定形状的曲线或直线变换成参数空间的一个点,即原始图像中给定形状的曲线和直线的所有的都集中到参数空间的某个点形成峰值点。这样,就把原始图像中给定形状曲线或直线的检测问题变成寻找参数空间中的峰值点问题。利用Hough变换检测各种图形的具体思路如下:

(1)检测三角形:三角形由 3条边组成,其对应的参数空间3个中心点的横坐标分别表示三角形3条边的法向量与x轴的夹角θ,从而可以计算出3条边与x轴的夹角,从而可以检测出三角形。识别前后结果如图 5(a)、图 5(b)所示。

(2)检测圆形:把平面上的圆转换到参数空间,则图像空间中过任意一点的圆对应于参数空间中的一个三维锥面,图像空间中同一圆上的点对应于参数空间中的所有三维锥面必然交于一点,从而可以检测出圆形。识别前后结果如图6(a)、图 6(b)所示。

(3)检测矩形:矩形的特征是由两组相互垂直的平行线组成。对于相互平行的直线段,其法向量与x轴夹角θ都相等,因此反映在参数空间中对应的点都位于角度为θ的方向上,这样通过在参数空间检测特定角度的点就可以检测出矩形。识别前后结果如图7(a)、图7(b)所示。

(4)检测十字叉:对十字叉的所有边缘进行Hough变换后,可以将参数空间的累加值的比例变成为灰度值,这样就可以绘出参数空间的累加响应值分布图,由此可以实现对十字叉形状的识别。识别前后结果如图8(a)、图 8(b)所示。

2.5 立方体搬移方案

方案一:采用电磁阀,在立方体的上表面固定一铁片,给电磁阀通电时即可产生磁力将立方体吸引搬起,断电即可放下。此方案设计比较简洁,但电磁阀功率较大,长时间工作发热现象较严重,故不选用此方案。

方案二:采用伺服电机和机械手,通过控制水平和垂直两个方向的自由度,来完成取放立方体的动作。

对比两种方案,方案二更节能,且机械结构性能稳定,本设计选用方案二。

2.6 利用动态规划方法实现小车路径优化

常用的路径规划方法有很多种,例如人工势场法、遗传算法等。其中人工势场容易出现振荡和陷于局部极小,因此难以得到最优的规划路径。遗传算法具有较好的寻优能力,但实际使用时容易出现早熟收敛现象。

根据题目要求,小车从起始点出发,将4个立方体依次运送到指定地点即可。虽然立方体的摆放顺序是任意的,但放置地点固定。因此,一旦识别出立方体的摆放顺序,那么立方体到各放置点的距离、小车到各个立方体和放置点的距离均是确定的。根据题意,上述问题可以描述如下:设有n个地点,小车从起始点出发到其他每个地点一次且仅是一次,问如何选择行走的路线,使小车走过的总路径最短?显然这就是运筹学中货郎担问题的变形。为此,建立如下数学模型:小车从起始地点1开始,设小车走到地点 i,记 Ni={2,3,…,i-1,i+1,…,n}表示由地点1到地点i的中间地点集合,S表示到达地点i之前中途所经过的地点的集合。因此可选取(i,S)作为描述小车行进过程的状态变量,决策为由一个地点走到另一个地点,并定义最优值函数fk(i,S)为从地点 1开始经由k个中间地点的S集到地点i的最短路线的距离。由于n较小,因此可以采用动态规划方法求解,其递推关系为:

其中 k=1,2,…,n-1;i=2,3,…,n;dji为地点 i到地点 j的距离;边界条件为 f0(i,φ)=d1i。

由动态规划的最优性原理可知,一个最优策略的子策略总是最优的,所以从k=1到k=n-1逐个阶段求最优策略,最终得到的解即为小车的最优路径。

3 软件设计

由于本系统的功能复杂,因此不但硬件电路复杂,同时也需要很强的软件系统支持。系统采用基于TWI总线规范的主从机控制模式,主机负责检测信号和处理算法,从机负责驱动底层的硬件电路,主要解决了对CPU资源的竞争问题,大大提高了单片机的工作效率。软件流程图如图9、图10所示。

图10 从机软件流程图

本文一改往常单个控制模块的做法,采用基于TWI总线规范的主从机控制模式,将复杂的控制分成底层和上层,底层用来驱动具体的功能电路,上层主要用于检测信号和处理算法,解决了单个控制模块I/O口资源不足以及CPU资源的竞争问题,大大提高了单片机的工作效率。另外,采用了基于机器视觉技术的图形识别方案,大大提高了图形识别的精度和鲁棒性。采用基于动态规划的路径规划技术,提高了小车的路径规划效率。采用数字PID控制算法,提高了小车的控制精度。系统反复测试,性能良好,为智能机器人系统设计提供了有力的技术支持。对系统将做进一步研究,智能仓储搬运系统有着广泛的市场应用前景。

[1]夏良正,李久贤.数字图像处理[M].南京:东南大学出版社(第 2 版),2006.

[2]《运筹学》教材编写组.运筹学[M].北京:清华大学出版社(第 3 版),2005.

[3]曲道奎,杜振军,徐殿国,等.移动机器人路径规划方法研究[J].机器人,2008,30(2):97-101.

[4]杨治明,周齐国.基于Hough变换理论的图形识别[J].中国图象图形学,2002,17(11):16-17.

[5]佟长福.AVR单片机GCC程序设计[M].北京:北京航空航天大学出版社,2006.

猜你喜欢
立方体小车单片机
大车拉小车
自制小车来比赛
基于单片机的SPWM控制逆变器的设计与实现
基于单片机的层次渐变暖灯的研究
基于单片机的多功能智能插排
基于单片机的便捷式LCF测量仪
刘老师想开小车
内克尔立方体里的瓢虫
两轮自平衡小车的设计与实现
图形前线