基于CAN总线电子产品批量测试平台构建
时间:04-08
来源:互联网
点击:
1 引言
近年来,随着电子技术、计算机技术以及通讯技术的不断发站,越来越多的电子产品被应用到了各行各业。在工业应用领域,通常存在着大量的传感器、执行机构和电子控制单元,它们一般分布较广,且在进行现场检测的时候对实时性和可靠性都有严格的要求。CAN(Controller Area Network)总线作为一种现场总线标准以其具有的诸多优点而在工业领域中得到了广泛应用,到目前为止,用于工业领域的绝大部分电子产品都支持CAN通讯方式。基于此,本文提出了一种全新的基于CAN总线技术的自动节点探测算法,并利用该方法搭建了一个电子产品自动测试平台。
2 CAN总线简介
随着工业现场控制和生产自动化技术的不断进步,传统的RS232、RS485等通信标准已经不能适应工业现场需要了。现场总线技术因其造价低廉且能够满足工业现场环境下的通信要求渐逐渐成为了新的通信方式。
CAN(即控制器局域网)是理辑总线的典型代表。它是德国的BOSCH公司为现代汽车应用领先推出的一种多主主机局部网,由于其卓越性能现已广泛应用于工业自动化、多种控制设备、交通工具,医疗仪器以及建筑、环境控制等众多部门。CAN总线是一种多主总线、通信介质可以是双绞线、同轴电缆或光导纤维。通信速率最高可达1MBPS。它通信接口中集成了CAN协议的物理层和数据链路层功能,可完成对通信数据的成帧处理。CAN协议废除了传统的站地址编码,而代之以对通信数据块进行编码。采用这种方法的优点可使网络内的节点个数在理论上不受限制.还可使不同的节点同时接收到相同的数据,这一点在分布式控制系统中非常有用。
CAN协议的数据段长度最多为8个字节,不会占用总线时间过长,从而保证了通信的实时性。CAN协议采用CRC检验并可提供相应的错误处理功熊,保证了数据通信的可靠性。另外,CAN总线采用了多主竞争式总线结构,具有多主站运行和分散仲裁的串行总线及广播通信的特点。CAN总线上任意节点可在任意时刻主动地向网络上其它节点发送信息而不分主次,因此可在各节点之间实现自由通信。
CAN卓越的特性、极高的可靠性和独特的设计,特别适合工业过程监控设备的互连,因此,越来越受到工业界的重视,并已公认为最有前途的现场总线之一。
3 测试平台构建
本文所述的自动测试平台由主节点、从节点和CAN网组成,主节点由测试主机构成。主要用于对被测产品发送测试命令,并对被测产品返回的测试信息进行分析处理处理。每个从节点上都可安装一台待测产品。其系统结构如图1所示。
图1 测试平台结构
在产品的批量自动测试过程中,最大的难点在于每个从节点的地址无法预先标示,这就不能保证主节点与各个从节点之间进行互不干扰并且准确可靠的信息交互。传统的解决方法一般是通过硬件来实现,即对每个从节点进行硬件编码,从而唯一的标示每个从节点。这种实现方式的优点是地址固定、反应快速;但是这种硬件编码的方式的实现较复杂、成本较高;并且不够灵活,一旦检测工装需改进,改动的工作量相当大,该实现方式主要适应于大量产品的检测,对于中小批量产品的检测来说成本过高。基于此,本文提出了一种基于自动节点探测算法的软件实现方式,由于其实现完全脱离了硬件,因此具有灵活度较高,易扩展的特点,而且其实现菲常简单。
自动带点探测算法的主要思想是:当主节点下发检测开始的命令后,各从节点自身产生一个确认码发回主节点,瞬时在本地保存。当主节点收到该确认码后,在本地遴行搜索,看是否有已对该确认码赋过标示号,如“是”则不作处理,如“否”则对该确认码赋予一个唯一的标示号。然后每隔一定的周期将确认码带标示号以广播的形式下发到从节点。各从节点接收到带标示号的确认码后,将其与本地保存的确认码进行比较,如果与本地不同,则继续往主节点发送确认码,相反则取出标示号,对自己进行标示,同时停止往主节点发送确认码,并把标示号带确认码再返回给主节点,告诉主节点本节点已被标示,主节点在收到从节点的反馈信息后,将该标示号置乎“已确认”状态,并停止下发该标识号。至此,从节点标示完成,可继续进行相应的测试任务。从节点的整个标示过程如图2所示。
图2从节点标示流程图
4 应用实例
根据前述方法,本文针对三一重工股份有限公司自主研发的工业显示屏产品SYLD开发了一个对其进行批量自检的检测平台。待测的SYLD显示屏构成了从节点,SYLD是一款通用型高性能工业显示屏,支持CAN通讯方式。主节点由三一重工股份有限公司自主研发的远程监控终端SYMT构成.SYMT可自动从卫星下载当前时间,且其对外接口支持CAN通讯方式。整个检测平台的结构如图3所示。
图3 SYLD批量测试平台结构图
本文所开发的检测工装主要对SYLD显示屏的颜色、通讯功能以及文件系统进行检测,此外还附有校准系统时钟和应用程序烧写等功能。工装的SYMT端测试程序采用ARM Developer Suite 1.2 编写,SYLD端测试程序采用embedded Visual C++ 4.0 编写。到目前为止,该工装运行效果良好。SYLD检测流程如图4所示。
图4 SYLD检测流程
近年来,随着电子技术、计算机技术以及通讯技术的不断发站,越来越多的电子产品被应用到了各行各业。在工业应用领域,通常存在着大量的传感器、执行机构和电子控制单元,它们一般分布较广,且在进行现场检测的时候对实时性和可靠性都有严格的要求。CAN(Controller Area Network)总线作为一种现场总线标准以其具有的诸多优点而在工业领域中得到了广泛应用,到目前为止,用于工业领域的绝大部分电子产品都支持CAN通讯方式。基于此,本文提出了一种全新的基于CAN总线技术的自动节点探测算法,并利用该方法搭建了一个电子产品自动测试平台。
2 CAN总线简介
随着工业现场控制和生产自动化技术的不断进步,传统的RS232、RS485等通信标准已经不能适应工业现场需要了。现场总线技术因其造价低廉且能够满足工业现场环境下的通信要求渐逐渐成为了新的通信方式。
CAN(即控制器局域网)是理辑总线的典型代表。它是德国的BOSCH公司为现代汽车应用领先推出的一种多主主机局部网,由于其卓越性能现已广泛应用于工业自动化、多种控制设备、交通工具,医疗仪器以及建筑、环境控制等众多部门。CAN总线是一种多主总线、通信介质可以是双绞线、同轴电缆或光导纤维。通信速率最高可达1MBPS。它通信接口中集成了CAN协议的物理层和数据链路层功能,可完成对通信数据的成帧处理。CAN协议废除了传统的站地址编码,而代之以对通信数据块进行编码。采用这种方法的优点可使网络内的节点个数在理论上不受限制.还可使不同的节点同时接收到相同的数据,这一点在分布式控制系统中非常有用。
CAN协议的数据段长度最多为8个字节,不会占用总线时间过长,从而保证了通信的实时性。CAN协议采用CRC检验并可提供相应的错误处理功熊,保证了数据通信的可靠性。另外,CAN总线采用了多主竞争式总线结构,具有多主站运行和分散仲裁的串行总线及广播通信的特点。CAN总线上任意节点可在任意时刻主动地向网络上其它节点发送信息而不分主次,因此可在各节点之间实现自由通信。
CAN卓越的特性、极高的可靠性和独特的设计,特别适合工业过程监控设备的互连,因此,越来越受到工业界的重视,并已公认为最有前途的现场总线之一。
3 测试平台构建
本文所述的自动测试平台由主节点、从节点和CAN网组成,主节点由测试主机构成。主要用于对被测产品发送测试命令,并对被测产品返回的测试信息进行分析处理处理。每个从节点上都可安装一台待测产品。其系统结构如图1所示。
图1 测试平台结构
在产品的批量自动测试过程中,最大的难点在于每个从节点的地址无法预先标示,这就不能保证主节点与各个从节点之间进行互不干扰并且准确可靠的信息交互。传统的解决方法一般是通过硬件来实现,即对每个从节点进行硬件编码,从而唯一的标示每个从节点。这种实现方式的优点是地址固定、反应快速;但是这种硬件编码的方式的实现较复杂、成本较高;并且不够灵活,一旦检测工装需改进,改动的工作量相当大,该实现方式主要适应于大量产品的检测,对于中小批量产品的检测来说成本过高。基于此,本文提出了一种基于自动节点探测算法的软件实现方式,由于其实现完全脱离了硬件,因此具有灵活度较高,易扩展的特点,而且其实现菲常简单。
自动带点探测算法的主要思想是:当主节点下发检测开始的命令后,各从节点自身产生一个确认码发回主节点,瞬时在本地保存。当主节点收到该确认码后,在本地遴行搜索,看是否有已对该确认码赋过标示号,如“是”则不作处理,如“否”则对该确认码赋予一个唯一的标示号。然后每隔一定的周期将确认码带标示号以广播的形式下发到从节点。各从节点接收到带标示号的确认码后,将其与本地保存的确认码进行比较,如果与本地不同,则继续往主节点发送确认码,相反则取出标示号,对自己进行标示,同时停止往主节点发送确认码,并把标示号带确认码再返回给主节点,告诉主节点本节点已被标示,主节点在收到从节点的反馈信息后,将该标示号置乎“已确认”状态,并停止下发该标识号。至此,从节点标示完成,可继续进行相应的测试任务。从节点的整个标示过程如图2所示。
图2从节点标示流程图
4 应用实例
根据前述方法,本文针对三一重工股份有限公司自主研发的工业显示屏产品SYLD开发了一个对其进行批量自检的检测平台。待测的SYLD显示屏构成了从节点,SYLD是一款通用型高性能工业显示屏,支持CAN通讯方式。主节点由三一重工股份有限公司自主研发的远程监控终端SYMT构成.SYMT可自动从卫星下载当前时间,且其对外接口支持CAN通讯方式。整个检测平台的结构如图3所示。
图3 SYLD批量测试平台结构图
本文所开发的检测工装主要对SYLD显示屏的颜色、通讯功能以及文件系统进行检测,此外还附有校准系统时钟和应用程序烧写等功能。工装的SYMT端测试程序采用ARM Developer Suite 1.2 编写,SYLD端测试程序采用embedded Visual C++ 4.0 编写。到目前为止,该工装运行效果良好。SYLD检测流程如图4所示。
图4 SYLD检测流程
电子 传感器 总线 CAN总线 自动化 ARM 嵌入式 相关文章:
- 一种新型防伪读码器的设计(01-01)
- 基于ARM与DSP的嵌入式运动控制器设计(04-25)
- 航天器DC/DC变换器的可靠性设计(02-12)
- 我国科学家人脸与笔迹识别领域获突破(04-29)
- 基于ARM核的AT75C220及其在指纹识别系统中的应用(05-24)
- 基于nRF2401智能小区无线抄表系统集中器设计(04-30)