当前位置:首页 > 测试测量 > 测试测量
[导读]摘要:为了保证数据传输的实时性、可靠性,解决数据传输过程中易受干扰的问题,并保证数据采集和控制系统的性能,采用CAN总线作为现场总线来实现数据传输。经过对系统软硬件在不同环境下的多次测试,验证了该系统的性

摘要:为了保证数据传输的实时性、可靠性,解决数据传输过程中易受干扰的问题,并保证数据采集和控制系统的性能,采用CAN总线作为现场总线来实现数据传输。经过对系统软硬件在不同环境下的多次测试,验证了该系统的性能,同时也体现了CAN总线在通信能力、可靠性和实时性等方面的明显优势。
关键词:CAN总线;数据采集;控制系统;串行通信

0 引言
    随着计算机网络上的高速发展,使得信息的交流与共享变得空前广泛和自如,而这项技术也渗入到自动化领域的变革当中,现场总线(Fieldbus)由此应运而生,开创了工业控制的新篇章。现场总线是一种应用于生产现场,在现场设备之间、现场设备和控制装置之间实行双向、串形、多结点的数字通信技术,在当今自动化领域中具有广阔的发展前景。本文给出了一种基于CAN总线的数据采集与控制系统设计方案,实现对开关量的数据采集和对外部设备的控制功能。
    控制器局域网(Controller Area Network,CAN)总线是现场总线的一种,是一种有效支持分布式控制或实时控制的串行网络通信,已经被广泛地应用于工业自动化、船舶、医疗设备、工业设备等方面,并被公认为最有前途的现场总线之一,其主要特点如下:
    (1)CAN是有国际标准的现场总线。
    (2)CAN为多主工作方式,网络上的任意一节点都可在任意时刻向网络上的其他节点发送信息,且不分主从。
    (3)CAN采用非破坏总线仲裁技术。当多个节点同时向总线发送信息出现冲突时,优先级低的节点将主动退出发送,而优先级高的节点不受影响继续发送。
    (4)CAN节点在错误严重的情况下具有自动关闭输出功能,使总线上其他节点的操作不受影响。
    (5)报文采用短帧结构,传输时间短,受干扰概率低,而且每帧都有CRC校验及其他校验措施,具有极好的检错效果。
    (6)CAN的直接最远通信距离可达10 km,最高通信速率可达1 Mb/s。

1 系统总体结构设计
    系统主要由上位机(PC机)和数据采集和控制模块组成。系统总体结构设计如图1所示。


    上位机是整个系统的核心,实现系统的监控和管理功能。CAN总线智能适配卡的作用是收集各个CAN节点上的数据,然后转发到上位机,同时把上位机的命令转发到各个节点。由于CAN总线特有的多主传输方式,各个节点根据需要自主地向总线发送数据,而且在上位机监听各个节点的同时,节点也实时监听总线并接收自己需要的数据。数据采集和控制模块采用微处理器和可编程的CAN控制芯片,主要用于完成现场数据的采集、数据的传送以及各个现场设备运行的控制。

2 数据采集和控制模块硬件设计
    基于CAN总线的数据采集与控制系统将功能尽可能地分散到各个控制模块中,各个模块以微处理器为核心,完成数据采集和控制功能。为了使信息能在CAN协议的标准下进行通信,各个模块都设有CAN总线接口电路。该模块的微处理器(MCU)选用宏晶科技的STC89C52RC单片机。STC89C52RC是新一代超强抗干扰、高速、低功耗的8位单片机,指令代码完全兼容传统的8051单片机,36个通用I/O口,3个16位定时器/计数器,4路外部中断。根据实际需求分析,STC89C52RC单片机完全满足本设计的需求。数据采集和控制模块的结构如图2所示。


2.1 CAN总线接口硬件设计
    CAN总线接口硬件结构如图3所示。


    在本系统中CAN总线控制器选用SJA1000。SJA1000是Philips公司生产的独立的CAN总线控制器,可以应用于一般的工业环境中和移动目标的CAN总线网络控制。SJA1000是Philips半导体PCA82C200 CAN总线控制器BasicCAN的替代产品,而且增加了一种新的工作模式PeliCAN,这种模式能支持具有很多新特性的CAN 2.0B协议。基本特性如下:兼容BasicCAN模式;扩展地接收缓冲器(64 B,先进先出FIFO);同时支持11位和29位识别码;位速率可达1 Mb/s;24 MHz时钟频率;对不同微处理器的接口兼容;可编程的CAN输出驱动器配置。PeliCAN模式扩展功能包括;可读/可访问的错误计数器;可编程的错误报警器;对每一个CAN总线错误进行中断;单次发送无重发;验收滤波器控制4 B代码、4 B屏蔽等。
    CAN总线收发器选用Philips公司生产的专用CAN总线收发器PCA82C250,提供CAN总线协议控制器和物理总线接口,而且对CAN总线控制器提供差动接收能力。基本特性如下:高速率(最高达1 Mb/s);具有抗瞬间干扰和保护总线的能力;利用斜率控制,可降低射频干扰;使用差分接收器,可抗宽范围的共模干扰,以及抗电磁干扰;热保护;低电流待机模式;未上电的节点对总线无影响;可以支持多达110个节点。
    为了增强CAN总线节点的抗干扰能力,并不是在SJA1000与PCA82C250之间直接相连,而是加入了高速光耦隔离器。这样能很好地实现总线上各个CAN总线节点之间的电气隔离。在该系统中高速光耦采用6N137。6N137兼容TTL和COMS电平,可通过信号的宽度为10 MHz,完全可满足CAN总线信号1 Mb/s通信速率的要求。
2.2 开关量数据采集单元硬件设计
    该单元用于采集现场的开关量数据的采集。硬件电路图如图4所示。


    该单元将采集到的开关量数据传送到微处理器,并传送到CAN总线上,然后通过CAN总线智能适配卡转发给上位机进行处理。外界环境以及电路、器件本身对系统引入了干扰和噪声,为了提高单片机系统的性能,保证其稳定性,采用光耦器件进行隔离,抑制干扰。光耦器件将电信号转变为光信号,光信号传送到接受侧再转换为电信号。由于光信号的传送不需要共地。可以将光耦器件两侧的地加以隔离。因此在加入光耦器件后,在传输信的同时能有效地抑制尖脉冲和各种噪声干扰,大大提高通道上的信噪比。需要注意的是光耦器件两端的电源不能共用,否则起不到隔离的作用。
2.3 控制单元硬件设计
    该单元用于控制现场外部设备的运行。该单元硬件电路如图5所示。


    该单元是上位机按照预先设定好的程序自动控制输出,上位机通过CAN总线智能适配卡传送开关量到CAN总线,然后数据采集和控制模块根据需要接受CAN总线上的开关量,以控制现场设备。在该单元中,开关量通过单片机的I/O端口输出,但I/O端口的驱动能力有限,一般不足以驱动继电器,此时需要添加驱动电路。同时,为了避免单片机受到干扰,在驱动电路设计时,必须采取隔离措施。

3 软件设计
    该系统软件设计主要分为两个部分:数据采集与控制模块程序设计和CAN总线通信程序设计。
3.1 数据采集与控制模块程序设计
    数据采集与控制模块程序设计流程图如图6所示。


3.2 CAN总线通信程序设计
    CAN总线通信程序设计分为三个部分:CAN总线初始化、数据发送和数据接收。
    (1)CAN总线初始化。CAN总线初始化主要是设置一些通信参数,保证通信的正常进行。初始化主要包括工作方式的设置、验收滤波方式的设置、验收屏蔽寄存器和验收代码寄存器的设置、波特率参数设置、中断允许寄存器的设置等。特别需要注意的是,初始化只有在复位模式下才可以进行,因为SJA1000配置信息的寄存器只有在复位模式下才可以进行写操作。
    (2)数据发送。数据发送前,微处理器周期查询状态寄存器,查看发送缓冲器是否被锁定。若没有锁定,则把从现场取得的开关量数据发向CAN总线控制器的发送缓冲区,然后启动CAN总线控制器发送命令,此时CAN总线控制器自动向总线发送数据。数据发送的流程图如图7所示。


    (3)数据接收。数据接收采用中断方式。系统中的CAN控制器检测到总线上有数据时会自动接收总线上的数据,存入其接收缓冲区,并向微控制器发送接收中断,启动中断接收服务程序,通过执行中断接收服务程序,从CAN控制器的接收缓冲区读取数据,并对其进行进一步处理工作。数据接收流程图如图8所示。

4 结语
    通过对系统的软硬件的反复调试表明,该数据采集和控制系统的设计方案是成功的。该系统能高速有效地采集、传递和处理现场数据,并且能在恶劣环境下保证通信速率和极低的出错率,运行效果很好,体现了CAN总线高性能和高可靠性的优点。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

上海2024年4月17日 /美通社/ -- 每年4月17日是世界血友病日。今年,世界血友病日以"认识出血性疾病,积极预防和治疗"为主题,呼吁关注所有出血性疾病,提升科学认知,提高规范化诊疗水平,让每一位出血性疾病患者享有...

关键字: VII 动力学 软件 BSP

伦敦2024年4月16日 /美通社/ -- ATFX宣布任命Siju Daniel为首席商务官。Siju在金融服务行业拥有丰富的经验和专业知识,曾在全球各地的高管职位上工作了19年以上。Siju之前担任FXCM首席商务官...

关键字: NI AN SI BSP

Holtek专注于无线通信技术持续强化产品研发,宣布新推出Sub-1GHz OOK/GFSK Transceiver Flash MCU BC66F3653和BC66F3663。二款MCU较前代产品增强抗干扰能力、提升传...

关键字: MCU 数据采集 自动化

CAN总线是一种串行通信协议,是ISO国际标准化的。它最初设计用于汽车内的多路电气布线以节省铜线,但也可以用于许多其他环境。在CAN总线中,所有的单元都可以发送和接收信息,且所有与总线相连的单元都可以开始发送新消息,但如...

关键字: CAN总线 CAN总线故障分析

CAN通信是一种控制器局域网络(Controller Area Network)通信协议,是由德国BOSCH公司开发,并最终成为国际标准(ISO 11898)。它是一种多主方式的串行通讯总线,基本设计规范要求有高的位速率...

关键字: can通信 CAN总线

CAN总线通信是一种用于解决汽车众多控制部件之间的数据交换而开发的一种串行数据通信总线。它的英文全称是Controller Area Network,即控制器局域网。CAN总线通信的特点包括多主控制、通信速度快、通信距离...

关键字: CAN总线 CAN故障维修

常州2023年9月25日 /美通社/ -- 9月23日,由江苏省商务厅指导,世界中餐业联合会、常州市人民政府主办的"第三届中华节气菜大会暨首届江南美食节"在江苏常州开幕。文化和旅游部国际交流与合作局一...

关键字: BSP 可持续发展 大赛 质量控制

北京2023年9月25日 /美通社/ -- 9月21日,由中国质量报刊社·中国质量新闻网主办的第六届食品高质量发展交流会在北京举行,会议主题为"高质量,新生活",旨在推动食品行...

关键字: 自动化 BSP ISO9001 NAS
关闭
关闭