型号: PXF0195
CAN总线技术在车身视觉检测系统中的应用
【摘要】根据白车身视觉检测站工作的过程和特点,研究了基于CAN总线的多主结构分布控制系统,提出了以采用摩托罗拉MC68HC05X16和微机为主机的控制系统。文中对控制网络的物理层接口、拓扑结构、通信协议等作了较为详细的说明。
[关键词] 视觉检测;CAN;分布式控制;数据通讯
[中图分类号]TIB36 [文献标识码]A [文章编号)1000-0682(2004)01-0026-03
控制器局域网CAN是一种具有很高保密性,有效支持分布式控制及实时控制的串行通信网络。CAN总线属于现场总线范畴,与现有的其它总线相比,它属于一种分散式、数字化、双向、多站点、多变量的通信系统,具有通信速率高、可靠性强、连接方便、性能价格比高等诸多优点,非常适用于分布式测量系统的数据通信。
计算机视觉检测是目前正在发展的一种新型检测技术。汽车车身视觉检测站是用于测量车身关键点三维空间坐标的大型专用检测系统。其主要原理是通过视觉传感器(Visual Sensor),采用三角法获取车身表面点的信息,通过三维视觉算法求取各关键点的坐标,从而完成对车身各顶点位置、挡风玻璃框尺寸、定位孔大小及位置、车门安装处棱边位置及走向等主要参数的测量。
文中结合CAN总线在汽车车身视觉检测站中的应用,研究了基于CAN总线的多主分布控制系统,并对该控制网络的物理层接口、拓扑结构、通讯协议等作了说明。
1 车身视觉检测站的工作过程及控制系统
汽车车身视觉检测是由机械及定位系统、三维视觉传感器系统、测量控制与接口系统、标定系统以及计算机软件5大部分组成。系统工作过程为:由生产线上运送车身到一预摆放位粗略定位,然后专用的控制系统完成待测位置的准确定位。视觉传感器按要求顺序开始工作,计算机采集检测点图像并进行处理,结合视觉检测算法,求出被测点坐标等参数。汽车车身长宽高都是几米范围,被测控制点一般都要求在50个以上,网络布线要求300m以上,系统中针对不同的测量对象,采用了单光条传感器、多光条传感器、十字叉丝传感器和双目立体视觉传感器等,总数在50台以上。检测站的控制系统应能对这些传感器的动作进行实时控制。此外控制系统还应实现对检测站中的机械及定位系统的控制。根据需要检测站的控制系统应完成以下任务:
(1)主控机实时控制各个传感器,使其动作相互协调;
(2)自动控制白车身运载小车(用于将白车身送到被测工位)的前进、后退、上升、下降、加速、减速等动作;
(3)手动控制运载小车的上述各种动作;
(4)位置传感器能够实时发送白车身上的位置信息。
整个车身视觉检测系统如图1—1所示。
为了实现系统控制功能,控制网络主要由以下4部分构成:
(1)主控机:微机,它为控制系统的核心;
(2)控制台:完成手动控制运载小车、接收位置传感器信息并发送给主控机及执行主控机指令等功能;
(3)CAN接口卡:完成主控机信号和CAN协议标准信号之间的转换;
(4)传感器控制部分:接受主控机指令,完成对传感器的控制和向主控机发送传感器状态信息等功育邑。
系统中,主控机作为控制核心,负责传感器和控制台的管理。控制台既能通过执行主控机指令控制运载小车,又能独立控制,所以网络应具有多主机控制能力,CAN总线支持多主机方式,且能在低层解决数据碰撞问题,出于以上各方面考虑,系统采用CAN总线作为控制网络的通信标准。
整个系统控制示意图如图1—2所示。
2 CAN总线控制网络
2.1 CAN总线网络拓扑结构
在车身检测中,对各传感器的数据采集及图像处理等工作主要由PC机完成,为操作简便,对机械部分的控制还应能通过控制台进行。该系统控制节点多,可靠性要求高,传统的集中控制方式虽然功能集中,速度较快,但具有硬件结构复杂(每个控制节点都对应于一个I/O端口)、现场布线困难、扩展能力低(受硬件端口数量限制)、故障诊断困难等缺点。所以采用单片机作为直接控制单元,用于对传感器的直接控制。每个单片机都是控制网络上的一个节点,各节点直接挂接在数据总线上。PC机和控制柜也同样各作为一个节点挂接在总线上,即控制网络应具有多主机控制能力,所以整个网络采用多主机结构,即每一个节点也是一个主机,通过主机之间的通讯以实现控制要求。为此采用总线型广播式网络拓扑结构,利用CAN灵活方便、支持多主机方式等优点,建立控制网络。不难看出,只要解决好“碰撞”问题,这种方法具有结构简单、安全系数高、灵活性好、易于扩展等特点,可以充分满足检测站的控制要求。其结构如图2—1所示。
2.2 CAN总线接口
CAN协议没有定义物理层的具体参数,所以网络驱动电路的设计要考虑阻抗匹配。图2--2中,R1、R2为680Ω,R3、R4为150kΩ,R5、R6为30kΩ,R7、R8为20kΩ12,与1.75V和3.25V电源构成终端匹配器,安装在网络的起始端和终点端。
PC机方面,是采用接口卡使PC机接人CAN总线,通过PC机与内部带有支持CAN协议接口的单片机MC68HC05X16进行通讯,然后由单片机与总线通讯,最终实现PC与总线通讯,简化了硬件设计,减少了系统故障的可能,其接口电路如图2—3所示。
采用16V8的GAL进行地址译码。并设有拨码开关,可进行地址段选择。8255工作于方式2,A口作为双向输入口,C口的IBFA、STBA、ACKA和OBFA作为A口控制口,分别与MC68HC05X16的4个I/O口PB3~PB6相连。单片机通过查询接收PA口数据。从CAN总线传来的数据经过单片机转换后,由IRQ2向PC机申请中断,中断过程负责数据接收。
2.3 CAN总线通讯协议及过程控制软件
系统中,根据检测系统的需要和CAN的帧结构,重点结合测量传感器和控制柜的功能要求,对网络的通信协议进行了研究。CAN总线采用帧格式以报文为单位进行数据传输,并采取位仲裁的方式对总线进行访问,即在报文起始部分发送节点标识符。由于标识符惟一且与各节点一一对应,故通过标识符可以实现对网络介质的访问控制。网络节点的优先级与节点标识符相对应,规定主控机和控制台的优先级最高,各传感器的优先级依重要性排列,以保证网络的传输效率最高。
由于CAN总线标准数据帧的仲裁场有11位标识符,它主要用于解决总线上的碰撞问题,数据帧标识符越小,其优先权越高。即当两帧数据同时由高位向低位发送时,一旦有不同的电平,发送“凹槽”电平的数据帧将停止发送。这样,CAN总线自身就解决了数据碰撞问题。系统中,每个节点设立一个8位DIP开关,通过它可以方便的改变传感器单元地址,并且,以它代表的数据作为该节点发送的数据帧的标识符的高8位。从而依据节点的重要性安排其地址,有效的解决了碰撞和优先权问题。
根据检测系统的需要,将指令分为通用指令和寻址指令,通用指令是指所有收到指令的节点都要执行的指令,寻址指令是指收到指令的节点只有相应地址的节点才执行的指令。由于CAN总线标准数据帧最多可带有8个字节的数据,将第一个字节作为地址(127为通用的地址,带有通用指令的数据帧第一个字节为127),第二个字节作为指令字节,用于表示节点所要执行的动作。
对于不同的节点,有时有些操作应对其封锁,甚至应禁止操作(如测量时应禁止对控制柜操作),因此,设立了远地封锁/解封及相应的近地封锁/解封命令。封锁后的节点只有解封后,才能够继续执行指令。在每个节点处设立有控制开关,以便通过本地操作实现近地封锁/解封命令。这样,就进一步减少系统的误操作,增加了系统的安全性。
3 结束语
调试期间,为了测试系统的抗干扰能力,将上述通信网络系统置于强干扰环境中,经连续试验,在500m距离,1Mbps传输速率下,完全可以保证数据的可靠传输。
该系统利用CAN总线实时性、灵活性好等特点,较好的解决了在强干扰环境中大型自动检测系统的数据通信可靠性问题。同时,由于采用多主机分布式控制结构,使网络功能十分灵活,通过软件的编写,可以完成十分强大的功能,并可以进行扩展,这对于检测站功能的进一步完善及其它控制工作的完成,有着十分重要的意义。目前该系统已用于南京IVECO车身视觉检测站、天津夏利轿车及一汽大众车身的三维尺寸测量系统中。
免责声明/版权申明 Passiontech
所有文章为网上搜集或私下交流学习之用,任何涉及商业盈利目的均不得使用,否则产生的一切后果由您自己承担!
本站仅仅提供一个观摩学习的环境,将不对任何资源负法律责任。所有资源请在下载后24小时内删除。
若无意中侵犯到您的版权利益,请来信联系我们,我们会在收到信息三天内给予处理!