当前位置:首页 > 嵌入式 > 嵌入式硬件
[导读]0 引言现代流程工业中,多组分分析仪器成为必不可少的环节。常用的在线分析仪器有工业色谱仪、光谱分析仪等。工业色谱仪在流程工业生产和环保领域得到广泛应用,但是其分析

0 引言

现代流程工业中,多组分分析仪器成为必不可少的环节。常用的在线分析仪器有工业色谱仪、光谱分析仪等。工业色谱仪在流程工业生产和环保领域得到广泛应用,但是其分析周期长,不易实现直接质量控制;拉曼光谱分析仪分析周期短精度高,但是成本太高,所以尚未被推广。因此,实验室研制开发了基于80C196和DSP的多组分气体分析平台,通过不同传感器的组合对样品中不同组分进行检测,实现了分析周期短、精度高,成本低等目标的统一。由于每台组合式分析仪器一般只能分析2-4个组分,为了实现更多组分的测量,同时实现各个分析仪器之间或分析仪器与上位机之间信息的交互,这就有必要构建基于多组分气体分析平台的CAN总线网络。

CAN(Controll Area Network)是国际上应用最广泛的现场总线之一,使用了一种串行多控制方通信协议,可以有效地支持分布式实时控制,并且具有很高的安全性和高达1Mbps的通信速率。由于CAN具有多主站控制、无破坏性总线仲裁、可靠的检错和重发机制以及故障节点的判断和自动脱离等等显著优点,在富含噪声和其他要求苛刻的环境中得到越来越广泛的应用,而且其应用领域也在不断的扩大[1]。

1分析仪器网络结构

多组分气体分析平台基于过程分析仪器系统的物流和信息两通道所需的基本共性功能,系统采用模块化设计。各硬件模块具有独立结构,可适应不同分析传感器及其组合以及预处理装置的选择要求;软件系统则为检测信号的数据处理、仪器的自动诊断、自动标定的操作控制以及为与DCS间的信息通信提供支持[2]。

分析平台采用TMS320F2812作为处理器。TMS320F2812是TI公司推出的一款用于控制领域的高性能32位数字信号处理器,适用于实时数据处理,并集成了丰富的外设,如片上12位模数转换器(ADC)、SPI、eCAN等功能模块,可以方便地进行功能扩展。平台由数据采集模块、控制模块、开关量输入输出模块、人机交互模块以及通讯接口组成。

根据现场情况,通过不同传感器的组合对样品中不同组分进行检测,配合相应的软件实现不同的数据处理方法,构成组合式分析仪器,每台分析仪器可检测2-4个组分。此处我们以两台分析仪器为例,每台能检测两个组分,一台检测CO2和O2,另一台检测SO2和CO,与上位机一起构建CAN通信网络。

CAN网络系统一般由上位机、CAN适配卡、若干节点以及CAN总线构成。由于PC机上有多条扩展槽,利用局域网络通信卡,使得该系统很容易与其他生产管理部门联网,便于统一调度和管理;另外,选用PC机还可以充分利用现有的软件工具和开发环境,方便快捷地设计功能丰富的计算机软件,所以此处上位机我们选用通用PC机。

CAN适配卡我们选用的是北京科日新工控的KPCI-8110光隔非智能CAN总线通讯卡,符合ISO/ISO11898国际标准,满足2.0B(PeliCAN)兼容CAN2.0A通信协议,通讯距离最长达10km,传输速率最高达1Mbps。基于多组分气体分析平台的组合式分析仪器做为CAN智能节点。总线上的信息传输遵守CAN通信协议,通信介质采用双绞线即可。

系统总体结构图如下所示:

 


图1 基于分析仪器的CAN网络结构图

2 CAN总线通信协议

CAN技术规范版本2.0包括两部分内容:版本2.0A描述CAN技术规范1.2中定义的CAN报文格式;版本2.0B描述标准和扩展格式两种报文格式。为了同CAN技术规范2.0兼容,要求CAN执行既同版本2.0A,也同版本2.0B兼容。

鉴于我们目前所要传输的内容仅限于检测结果,同时考虑到现场需要网络中可能连接的智能节点的个数,采用标准报文格式完全能够满足我们的要求。

CAN技术规范版本2.0B中,数据帧由7个不同的位场组成:即帧起始、仲裁场、控制场、数据场、CRC场、应答场、帧结束。数据帧格式如下所示[3]:

 


图2 CAN2.0B数据帧格式

分析仪器主控制器F2812 DSP片上共有32个邮箱,在SCC模式下0-15邮箱可用,在eCAN模式下,32个邮箱全部可用,而且与2407不同的是,F2812可以发送和存储包括报文ID在内的所有帧信息。所以我们只需对标准标识符的位进行分配,而不用定义数据字节,即可满足上位机和主节点识别帧来源和帧意义的要求。对标准标识符的分配如下表所示:

 


表1 标识符分配

3 通信程序设计

若想实现CAN网络的正常通信,必须保证各通信节点的波特率和标识符都定义得一致。由于KPCI-8110使用独立的CAN控制器SJA1000,而智能节点多组分气体分析平台中使用微处理器DSP中内置的CAN控制器,各自寄存器的定义和分配不尽相同,所以数据帧格式的定义方法也不一样,在编写初始化和通信程序时要特别注意寄存器的定义和分配。

3.1智能节点端

为了实现各个节点信息的同步,考虑把智能节点中的一个做为主节点,其他节点做为从节点。主节点先收集所有从节点的数据,再把所有的数据一起发送给上位机。

做为CAN网络的智能节点,组合式分析仪器采用内置了CAN模块的F2812做为微处理器,从硬件上来讲,外接一个CAN收发器就可以方便地挂接到CAN总线上,从软件设计上来讲,由于F2812强大的寄存器功能,也可以很容易地实现CAN模块的初始化以及信息的发送和接收。

智能节点的编程采用C语言与汇编语言相结合的方式,采用结构化程序设计方案,可读可移植性好。流程如图3所示。程序设计的重点在于CAN模块的初始化和中断程序的调用。

 


[!--empirenews.page--]

图3 智能节点程序流程图

智能节点端CAN模块初始化(流程图如图4所示[4])主要包括三个方面的内容:波特率的配置、邮箱分配(包括邮箱方向、标识符分配等)、中断寄存器初始化。波特率和标识符的分配非常重要,是CAN网络通信成功的关键所在。F2812内置CAN控制器使用位时序配置寄存器CANBTC中的BRP、TSEG1和TSEG2来设置波特率,计算公式为:SYSCLK/(BRP+1)×[(TSEG1reg+1)+(TSEG2reg+1)+1],此处我们采用的晶振频率为30MHZ,系统倍频为1/2,BRP=9,TSEG1=10,TSEG2=2,因此波特率为100Kbps。标识符就根据表1的描述来确定。

 


图4 智能节点CAN模块初始化流程图

中断程序中主要对从节点传送的数据进行处理,然后转存到主节点的发送邮箱中,等待发送给上位机。在进行数据处理的时候要把接收邮箱中的数据赋给中间变量,处理完后再把中间变量的值赋给发送邮箱,这个过程中要注意借助指针来完成。如下所示:

Mailbox = &ECanaMboxes.MBOX0 + n;   // n为邮箱号

receiveboxl = Mailbox->MDRL.all;

receiveboxh = Mailbox->MDRH.all;

3.2上位机端

PC机端主要完成对各分析平台分析结果的采集、处理,采用适合快速开发的面向对象高级语言VB来编写。KPCI-8110CAN适配卡提供.dll驱动和.lib库函数,通过在VB程序中调用相关的驱动函数就可以实现CAN适配卡的配置和数据的读写。数据的处理主要完成对各组分检测结果中干扰背景气的去除以及单位换算等工作。

上位机在接收主节点传送过来的数据时,在SJA1000 CAN控制器采用单滤波器模式,只接收在界面中输入的组分的数据。滤波规则为:验收代码位(ACR.7-ACR.0)和信息识别码(标识符)的高8位(ID.10-ID.3)相等,且与验收屏蔽位(AMR.7-AMR.0)的相应位相或为1[5]。例如,在上位机接收界面中输入组分名“co2”,运行程序时就会把“co2”对应的一组验收代码值和验收屏蔽值初始化为验收滤波器的预设值。为了具有通用性,把验收屏蔽码设为ACR xor &HFF。

由于SJA1000CAN控制器每个地址存储8位的数据,而F2812内置CAN控制器每个地址存储16位的数据而且标准数据帧的标识符也不是从字节的起始位开始的,所以定义标识符的时候要按照不同控制器的要求来定义。例如F2812内置CAN控制器定义数据帧标识符为1144 0000(bit28-bit18为标识符位),SJA1000独立控制器对应的标识符应为8A20(bit15-bit5为标识符位)。.

下图为自己开发的接收界面成功接收到数据:

 


图5 上位机接收界面

4 结论

该通信系统在试验中得到了良好的效果,满足了多组分分析仪器的设计要求。数字化在线分析仪器作为网络神经元,有机地融入网络系统,实现信息实时传输、远程故障诊断是分析仪器的发展趋势,也是工业化和信息化的发展趋势。

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

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭