APP下载

基于ARM+DSP的上下料机器人控制平台设计

2012-07-11顾寄南关号兵

制造业自动化 2012年19期
关键词:驱动程序嵌入式处理器

陈 艳,顾寄南,樊 帆,关号兵,沈 巍

(江苏大学 制造业信息化研究中心,镇江 212013)

0 引言

随着大量先进的微处理器制造技术的发展,越来越多的嵌入式系统用嵌入式处理器而不用通用的处理器[1]。本文设计了基于ARM与DSP相结合的上下料机器人控制系统平台,融合了视觉定位技术和无线通信技术,提高了系统的实时性和集成度。

1 嵌入式控制平台概述

嵌入式系统处理器是整个硬件系统的核心元件,其性能好坏直接决定整个系统的运行效果[2]。机器人控制平台主处理器为ARM微控器,从处理器为DSP芯片;操作系统采用μClinux系统。

ARM在人机交互、监视控制、支持实时控制等方面具有强大的功能;DSP数字信号处理能力优于其他控制器;μClinux系统具有支持各种协议及多进程调度机制的优点。因此ARM作为处理器平台,运行μClinux系统,与DSP的实时运算结合起来,构成了高性能、高效率的控制平台。

2 硬件平台设计

上下料机器人的控制平台包括ARM主控系统、DSP视觉系统、运动控制系统、ZigBee无线通信等模块,总体设计方案如图1所示。

ARM主控模块采用三星公司ARM9系列的S3C2440,是高性能低功耗的32位RISC处理器,具有64M的SDRAM,硬件上保证了系统的快速响应速度。ARM处理器模块通过RS-232串口与运动控制模块连接,RS-232串口在中断模式下工作[2]。

DSP视觉处理芯片采用TI公司的TMS320DM642,该芯片是一款性能优越的多媒体处理器,可以很好地完成与主控制器的通信。运动控制的专有电路用复杂可编程逻辑器CPLD来设计。CPLD管理ARM和各种外部设备的接口配置,尤其在控制多轴的情况下,实现并行处理的功能,保证了系统响应速度。

图1 机器人总体设计方案

嵌入式μClinux的开发采用宿主机和目标机交叉开发的过程。开发时使用宿主机的交叉编译、汇编及连接工具形成可执行的二进制代码,把执行文件下载到目标机上运行,并通过以太网口进行程序的调试。

2.1 μClinux操作系统的配置和移植

μClinux嵌入式操作系统具有一般操作系统的功能,而且提供多任务管理和周围资源管理,移植内容如下。

1)建立交叉开发环境,修改内核目录树根下的Makefile,指明交叉编译器和目标平台。

2)对μClinux源码进行修改,针对硬件修改启动代码和配置文件。

添加Norflash驱动文件,在drives/mtd/maps下加入驱动文件;

修改配置项drivers/mtd/maps/Kconfig文件;修改drivers/mtd/maps/Makefile文件。

3)配置编译内核,得到zImage文件,即生成新的内核映像文件[1]。

2.2 建立设备驱动程序

在μClinux中,所用设备时都有统一的接口。安装驱动程序后,使用设备就像使用文件一样。当需要使用相关设备的驱动程序时,驱动程序以模块的形式加载到内核中,使用完毕即卸载。这种加载方式使驱动程序独立开来,便于修改和升级。

2.3 应用程序设计

上下料机器人控制系统主要任务是实时与目标机床群通信,对相应的数据和命令进行判断和解释,驱动机器人电机做相应的响应,从而实现换料功能。各模块任务分配。

1)无线通信模块ZigBee采用基于星型的拓扑结构[4],即以机器人为中心节点、面向其他数控机床节点的基础上搭建,传递数控机床上下料的命令。

2)ARMS3C2440控制器完成各种任务的调度、命令代码的解释以及运动控制的处理,采集到一台机床的服务指令,即驱动机器人小车至目标机床,若有多台机床发出指令,按照优先级完成一台机床任务,把其它指令储存以待下个周期执行。

3)TMS320DM642视觉处理器的目标是确定物料的位置,把每次摄像头拍摄的物料图像进行识别、匹配和后处理[5],从图像信息提取出物料的空间位置坐标;经过摄像机标定矩阵,S3C2440将空间位置坐标转换为驱动电机的脉冲控制,从而使机器人能够到达目标位置。

3 实验仿真

上下料机器人控制系统的实验设备采用研旭嵌入式综合开发平台YX-EMBOX,它集成了ARM、DSP、CPLD等控制模块。DSP模块通过并行串口与维视视觉平台通信,利用视觉平台完成摄像机的标定和工件二维图像的拍摄。如图2所示。

假设工件在料箱中平铺放置,那么工件在垂直方向上的位置偏差可以忽略不计,通过调整料箱的高度来设定末端执行器与料箱的距离,我们只需对单目摄像头进行一次标定即可。

图2 控制芯片实物及摄像头的标定实验

机器人本体采用双四杆机构,在小车和关节处共装有四个伺服电机。电动机的控制采用不断循环的PI式增量算法,电动机的当前速度值由中断子程序产生。各个电机在上料过程中不同时段反馈的脉冲数如表1所示。

表1 电机不同时段的脉冲数

4 结束语

基于ARM的上下料机器人控制系统,结合先进的计算机软硬件技术,具有良好的开发性和可靠性。同时在嵌入式操作系统μClinux的支持下,可以驱动4个电机运作,满足了实时同步控制和多任务调度要求,具有良好的应用前景。

[1] 周立功. ARM嵌入式系统基础教程[M]. 北京航空航天大学出版社. 2005

[2] 李卫, 宋弘, 李红婵. 基于ARM的嵌入式服务机器人控制器的研究[J]. 电子设计工程, 2009, 17(9): 3-5.

[3] 刘建群, 刘绿山, 罗继合等. 基于ARM与DSP的切绘机运动控制平台的设计[J]. 机械设计与制造, 2008, (2): 162-164.

[4] 王东, 张金荣, 魏延等. 利用ZigBee技术构建无线传感器网络[J]. 重庆大学学报(自然科学版), 2006, 29(8): 95-97.

[5] 杨忠耀, 段锁林. 双目视觉机器人物体搬运伺服控制系统研究[J]. 太原科技大学学报, 2008, 29(4): 295-301.

猜你喜欢

驱动程序嵌入式处理器
Focal&Naim同框发布1000系列嵌入式扬声器及全新Uniti Atmos流媒体一体机
阻止Windows Update更新驱动程序
TS系列红外传感器在嵌入式控制系统中的应用
计算机硬件设备驱动程序分析
嵌入式PLC的设计与研究
搭建基于Qt的嵌入式开发平台
ADI推出新一代SigmaDSP处理器
火线热讯
妙用鼠标驱动
驱动程序更新与推荐