过程分析仪器CAN网络通信设计

发布者:BlissfulAura最新更新时间:2016-06-07 来源: eefocus关键字:过程分析仪器  CAN  网络通信 手机看文章 扫描二维码
随时随地手机看文章
引言

  现代流程工业的过程控制中,分析检测具有在线、多组分、实时检测的特点,对分析仪器在稳定、可靠、快速、准确等方面有着严格的要求。而广泛使用的工业色谱仪采用色谱分离原理,分析周期长达数分钟至数十分钟,难以实现过程的直接质量控制。过程拉曼光谱仪和激光调制光谱仪等新技术目前价格昂贵,关键技术尚在研究阶段,难以普及。利用技术成熟的单检测器单组分过程分析仪器,通过分析传感器组合技术和嵌入式计算机技术,实现多组分实时检测和建立简便快捷的分析仪器通信网络系统已成为近期国内外分析仪器研发的热点之一。

  基于单片机(80C196)或微处理器(DSP、ARM 等)的多组分气体分析仪采用功能强大的CPU,可实时快速测定各种燃烧设备的各项热工参数。根据测量数据,通过自动调节装置调整风量,保持适当的空气/燃料比,使燃料系统达到最佳运行状态,以获得最高的燃烧效率和最低的燃料消耗。仪器还可以测定CO、SO2、NO、NO2、烟气黑度等参数,并配有液晶屏、键盘等外设。

  CAN(Controll Area Network)是国际上应用最广泛的现场总线之一,使用了一种串行多控制方通信协议,可以有效地支持分布式实时控制,并且具有很高的安全性和高达1Mbps的通信速率。

  一个包含PC 机和n-1(n≤110)个智能节点的CAN 总线网络结构图如图1 所示。

 


图1 n 个节点的CAN 网络结构图

  信息的传输采用CAN 通信协议,传输介质采用双绞线,如果需要进一步提高系统的抗干扰能力,还可以在控制器和传输介质之间加接光电隔离,电源采用DC-DC 变换器等措施。

  1 分析仪器CAN 网络应用层协议的制定

  CAN 的国际标准中只定义了物理层和数据链路层的规范,由于本项目构建的CAN 总线网络节点数目不多,所有节点都由项目组自行设计,不需要与国际标准设备进行接口,所以,这里根据本项目的具体情况,制定了一个简易的CAN 应用层协议。

  根据厂方要求,网络初步规划应至少可容纳16 个节点。上位机收集各分析仪器的信息,包括气体组分分析含量、出错信息和被测气体的一些参数,如温度、压力、流量等,也返回一些控制信息给智能节点。在每个分析周期从节点的气体组分分析结果送往主节点,主节点待收到所有待测组分含量后,将所有信息一并送往上位机。网络中的任一台分析仪器均可做为主节点或从节点,甚至在没有上位机的情况下也可以做为上位机。

  在CAN 系统中,以11 位(标准帧)或29 位(扩展帧)的标识符来标识数据的含义,标识符决定了信息的优先权和等待时间,同时也影响信息滤波的适用性。因而,合理、高效的信息标识符ID 分配方案是充分发挥CAN 总线性能的前提条件。

  分析仪器主控制器之一F2812 DSP 片上共有32 个邮箱,在SCC 模式下0-15 邮箱可用,在eCAN 模式下,32 个邮箱全部可用,可以很方便地实现主节点对从节点信息的接收和存储。故推荐采用主控制器为F2812 的分析仪器作为该网络中的主节点,选择eCAN 模式,使用标准标识符(11 位),对其进行如表1 所示的静态分配策略,即可满足上位机和主节点识别帧来源和帧意义的要求。

  2 网络通信程序

  2.1 上位机端初始化

  上位机端主要完成对各分析平台分析结果的采集、显示,使用PC 机加CAN 通讯卡KPCI-8110。KPCI-8110 上集成了独立的CAN 控制器SJA1000($2.8080)。SJA1000 用于移动目标和一般工业环境中的区域网络控制(CAN),在使用前要先对其进行初始化。

  上位机显示界面采用适合快速开发的可视化面向对象高级语言VB 来编写。KPCI-8110CAN 适配卡提供.dll 驱动和.lib 库函数,通过在VB 程序中调用相关的驱动函数就可以实现CAN 适配卡的配置和数据的读写。

  上位机端接收数据的流程如图2 所示。

 


图2 上位机接口函数使用流程图

  数据接收到上位机之后保存在一个大容量的内存缓冲池内,用户只需实时通过函数CAN_ReadDataNum(mindex) 查询缓冲池内的数据量, 再通过函数CAN_ReadBlockData(mindex,num,obyte)及时读走保存即可。其中obyte 为接收数据起始指针。

  CAN_ClearBlock(mindex,num,obyte)为清空从obyte 指针开始的缓冲池空间。

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

 

  2.2 分析仪器CAN 网络通信程序设计

  智能节点分析仪器端的编程采用 C 语言与汇编语言相结合的方式,采用结构化程序设计方案,可读可移植性好。流程如图3 和4 所示。

 


图3 分析仪器主节点程序流程图

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

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

  receiveboxl = Mailbox->MDRL.all;

  receiveboxh = Mailbox->MDRH.all;

 


图4 分析仪器从节点程序流程图

  3 实验结果及分析

  使用 KPCI-8110 的测试程序向分析仪器周期发送一帧数据时,查看测试程序和分析仪器存储器可以看出,分析仪器端正确地接收到PC 发送来的数据,CAN 网络运行良好。图5为自己开发的接收界面试验状态下成功接收到数据,分析仪器网络分析周期为20s,发送速率为100Kbps。

 


图5 上位机接收界面

  在对节点和上位机的通信进行试验的时候发现,在单独使用eCAN 模块发送和接收数据时,通信情况良好,发送和接收的帧数相同。

  需要注意的是,在运行DSP 多组分气体分析平台的整个软件程序时,在较短时间内要以较大速率发送大批量数据,故将A/D 采样之后的数据滤波和处理部分放在主程序中执行,尽可能减少A/D 中断服务子程序的处理时间,这样就可以减少对CAN 发送中断程序的影响。

  经实验证明,以上分析和判断是正确的,网络通信状况良好,无丢帧现象。

  4 总结

  该网络通信系统在试验中得到了良好的效果,满足了多组分分析仪器的设计要求。

关键字:过程分析仪器  CAN  网络通信 引用地址:过程分析仪器CAN网络通信设计

上一篇:基于CP2102高速USB2.0-CAN适配卡的设计
下一篇:基于CAN总线的数据通信采集系统

推荐阅读最新更新时间:2024-05-03 00:26

ZPS-CANFD采样点测试原理及详细过程
采样点是接收节点判断信号逻辑的位置,采样点对CAN总线来说极其重要,尤其是在组网的时候,多个节点尽量保持同一个采样点,若网络中节点采样点不一致会导致同样的采样频率出现采样错误,使整个网络出现故障。 采样点的规则及原理 CAN协议里将一个位时间分为同步段、传播段、相位缓冲段1和相位缓冲段2。这些段又由称之为Time Quantum(以下称为Tq)的最小时间单位构成。1位由多少个Tq构成、每个段由多少个Tq构成等是可以设定的。通过设置bit时序,使得可以设定一个采样点以使总线上多个单元可同时采样,所谓采样点就是在这一时刻总线上的电平被锁存,这个锁存的电平作为位的值。采样点的位置在相位缓冲段1(PBS1)的结束处。 图1 CAN
[测试测量]
ZPS-<font color='red'>CAN</font>FD采样点测试原理及详细<font color='red'>过程</font>
汽车CAN/LIN总线数据采集解决方案
一、汽车总线数据采集 1. 什么是汽车总线数据采集? 汽车总线数据采集是指从汽车的各种 电子 控制单元和 传感器 中获取数据,这些数据可以用于监测、分析和控制车辆的各种系统和功能。 在现代汽车中,使用了许多不同类型的传感器和 控制器 ,用于监测和控制引擎、传输、底盘、安全系统等各个方面,这些传感器和控制器之间通过总线系统进行数据交换,而汽车总线数据采集就是从这些总线中获取 信息 。 2. 整车数据采集与测试的重要性? 整车数据采集与测试是汽车制造业的核心环节之一。 ● 确保车辆的运行性能:车辆制造商和研发团队需要全面了解车辆在不同工况下的运行状态,从而确保车辆的质量、安全和性能。 ● 检测 与验证汽车子
[汽车电子]
汽车<font color='red'>CAN</font>/LIN总线数据采集解决方案
【看点】浅析SAE-J1939与CAN2.0B之间的关系
什么是SAE-J1939? SAE-J1939(以下简称J1939)是美国汽车工程协会(SAE)的推荐标准,广泛用于是商用车(重卡、大客车等道路车辆和工程机械、农业机械、轨道机车、船舶等非道路车辆及设备)上电子部件间的数字通讯。 二 SAE-J1939与CAN2.0的关系 CAN2.0(前文指路)是一种总线规范,是数据链路层的技术。J1939是SAE(美国汽车协会)基于CAN总线定义的的规范,主要用于解决不同发动机厂商、不同ECU厂商之间的兼容性问题。 J1939定义了一系列的PGN和SPN,这些PGN包含了发动机、变速器、车轴等汽车上各部件的信息;对参数的表示方法(状态和值)又定义了SLOT(Scaling—比例、Lim
[嵌入式]
【看点】浅析SAE-J1939与<font color='red'>CAN</font>2.0B之间的关系
GE Vscan便携超声仪 超声扫描随时做
  医生们有个说法:“时间就是生命。”医生诊断外伤或疾病的速度越快,患者的生存机会越大。超声仪器是医生的常用设备,它能让医生了解患者的心跳和血液流动等状况,但通常体积庞大,使用不便。   GE公司的Vscan只比一部智能手机大点,能装进医生白大褂的口袋里。当医生将超声传感器从患者的身上扫过时,内部的电路会将重叠的回声转换为器官或体内血液实时流动情况的图像,并将图像显示在便携屏幕上。在Vscan的辅助下,医生可以在将患者送往医院的路上检查其身体的受伤情况。医生能在几分钟之内识别出患者的心脏杂音,而不需要像从前那样,为了预约超声技术人员要等待几个小时甚至几天。很快,Vscan就会像听诊器那样无处不在。
[医疗电子]
为什么CAN总线通讯需要采用隔离方案?
一、为什么要用隔离 从能源种类来看,目前公路上的车型主要可以分为两类,一类是使用传统汽油、柴油作为燃料的车辆,另一类是使用电池的新能源车。这两类车型的车载空调系统有什么区别呢?传统的燃油车辆,空调压缩机是由发动机直接将动能传递给空调压缩机,而新能源车的空调压缩机则是由车内的电池驱动的。 图1 动力电池 将新能源汽车的动力电池驱动压缩机需要几个步骤,首先要将直流电转化为交流电(逆变),然后调整交流电频率使其能稳定驱动压缩机中的电机,该部分的功能部件在车辆中以空调驱动单元存在。说到高压、逆变、变频、电机这些名词时,想必工程师们会立刻想到一个名词:干扰。 图2 新能源车空调系统 干扰的最终结果就是空调控制器与中控单
[嵌入式]
为什么<font color='red'>CAN</font>总线通讯需要采用隔离方案?
CANbus 总线应用方案——RS485升级
RS-485简述   电子产业协会EIA 于1983 年制订并发布RS-485 标准,并经TIA—通讯产业协会修订后命名为TIA/EIA-485-A,习惯地称之为RS-485。RS-485是为弥补RS-232 通讯间隔短、速率低等缺点而产生的。RS-485只规定了平衡驱动器和接收器的电特性,而没有规定接插件、传输电缆和应用层通讯协议。因而在当时看来是一种相对经济、具有相当高噪声抑制、相对高的传输速率、传输间隔远和宽共模范围的通讯平台。    在过往的20年的时间里,建议性标准RS-485 作为一种多点差分数据传输的电气规范,被应用在很多不同的领域,作为数据传输链路。目前,在我国应用的现场总线中,RS-485半双工、全双工异步通讯总
[嵌入式]
基于Linux操作系统下的TCP/IP网络通信研究与应用
1 引言 Linux 是一种自由的Unix类多用户,多任务的操作系统,可在运行在Intel 80386及更高档次的PC机、ARMS、MIPS和PowerPC等多种计算机平台,已成为应用广泛、可靠性高、功能强大的计算机操作系统,Linux 具有内核小、效率高、源代码开放等优点,还内含了TCP/IP网络协议,很适合在服务器领域使用,而服务器主要用途之一就是进行网络通信,随着计算机办公自动化处理技术的应用与推广,网络的不断普及,传统的纸张式文件传输方式已经不再适合发展的需要,人们更期待一种便捷、高效、环保、安全的网络传输方式。 本文就是考虑到这一现状,结合基于Linux操作系统下的TCP/IP网络通信原理,给出了一种基于TCP/
[嵌入式]
汽车CAN总线保护简析
汽车自问世以来取得了长足发展。现在的汽车拥有众多功能,包括自动和半自动驾驶、防抱死制动系统、电动助力转向、前后碰撞警告、车道辅助、自动泊车辅助和自动紧急制动等。 GPS 导航、车内氛围照明、环视摄像头、高级信息娱乐系统、有源天线等高级功能更是大多数现代汽车的标准配置。 每个车辆功能通常由单独的电子控制单元 (ECU) 监测和控制。每辆现代汽车中大约有 50 到 100 个 ECU,每个 ECU 负责一项或多项功能。 ECU 与多个传感器一起工作,例如发动机温度传感器、气压传感器、车门传感器等。它接收来自传感器的信息,并相应地调整控制的车辆参数。有时候,一个 ECU 可能需要与其他 ECU 通信以执行指定的功能。 例如,如果
[嵌入式]
汽车<font color='red'>CAN</font>总线保护简析
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved