基于热工水力试验的多总线兼容可编程控制器设计

2023-05-17 07:43向友洪闫晓钰张曹龙
仪器仪表用户 2023年6期
关键词:热工框图功能模块

向友洪,程 杰,闫晓钰,张曹龙

(中国核动力研究设计院,成都 610213)

0 引言

现场总线是现代计算机技术、通信技术和传感器技术在工业领域典型的融合应用[1],其提供了一种全数字式的通信模式来替代传统的模拟信号进行仪控系统的数字化架构构建,提高工业测控系统的数字化程度;同时,与传统的模拟信号相比,现场总线还具备多路设备连接、高速通信、高带宽等优点,可提高现场系统的集成度,大大减少工业现场的硬件成本。目前国际上已具备多种总线标准,如CAN、Profibus、FF、Modbus等,设备制造商根据不同总线通信协议设计生产出了不同的现场仪表产品,而不同的总线接口需要不同的测试系统,将会导致整个测控系统成本增加、系统臃肿。因此,在不同的应用领域均对多总线兼容进行了探索。中国电子科技集团第20研究所计量站基于VISA库IO接口开发了自动检定/校准测试系统[2];柯先云[3]提出了一种基于STM32的多总线协议转换器,实现了无人艇控制系统中CAN、以太网、RS485和RS232的协议兼容。

在热工水力试验测控系统中,往往具有测点数量大、测量类型复杂的特点,需要在现场层对现场总线进行兼容处理,再为后续系统应用层提供统一的编程调用接口,保证系统的简洁、统一且可靠。

基于现场总线兼容的思想,有两种基本解决方案:协议栈方案和协议模块方案,其中协议模块方案可分为协议转换式和网桥式[4,5]。为了保证后续总线兼容的可扩展性和便利性,采用网桥式总线兼容的思想,同时结合热工水力试验对于控制器的可编程需求,提出了多总线兼容可编程控制器的解决方案。

1 系统总体设计方案

1.1 系统架构

多总线兼容可编程控制器采用模块化形式设计,硬件结构上由主控制器、功能模块和系统背板构成。其中,主控制器采用国产龙芯3A4000处理器,集成Loongnix操作系统,支持通过板卡形式扩展数据采集功能模块。功能模块主要分为现场总线数字模块和传统模拟量模块,前者支持Modbus RTU、CAN和Profibus-PA现场总线通信板卡,用于接入现场基于总线协议的设备,后者支持AI、AO、DI和DO,用于接入传统设备的输出信号。背板支持8个功能扩展槽,通过统一的上游接口,适配所有类型的功能模块,通过高速通信总线实现功能模块与主控制器的数据交互。设备基本硬件结构如图1所示。

图1 设备基本硬件结构Fig.1 Basic hardware structure of the device

多总线兼容可编程控制器支持模拟量、数字量、脉冲量及现场总线协议转换功能,可涵盖工业自动化的绝大多数应用场景,便于用户灵活、高效地实现定制化现场信号采集、协议转换;同时,控制器整体具有较为强大的运算能力,支持边缘计算的需求。

多总线兼容可编程控制器通过预装Loongnix操作系统,为用户的测控应用程序开发提供了一个开放、高效的软件平台,支持C/C++编程语言;结合热工试验需求,设计开发了嵌入式中间件API接口函数,可更快速、方便和高效地完成应用程序开发和调试;具备逻辑控制编程及算法编程开发功能;支持集成开发环境,支持中间件函数库,支持远程设备管理。

1.2 工作原理

1.2.1 总线兼容原理

多总线兼容可编程控制器的总线兼容原理基于网桥式思想,通过对总线功能模块的上下游协议进行区分定义实现。对于某一总线功能模块而言,上下游需连接不同的总线协议,实现协议转换。上游作为它的主网,功能模块本质为主网上挂的一个子设备;下游根据所需兼容现场总线协议进行选择,功能模块作为下游子网的主站,可完成与相同协议现场仪表设备的组态、数据交换等功能。总线兼容原理如图2所示。

图2 基于网桥式思想的总线兼容原理Fig.2 Bus compatibility principle based on bridge thinking

1.2.2 多总线同步性

在多总线兼容过程中,需要考虑如何保证多总线的数据同步性,主要从以下两种角度进行设计:

1)输入同步性

在数据同步采集的过程中,引入时间计数器和数据缓存,主控制器定期通过硬触发方式对功能模块的时间计数器进行同步复位并记录此刻的绝对时间。功能模块将数据与时间计数器值组合后,暂存在缓存区并在总线空闲期上传给主控制器,主控制器依据记录的绝对时间和计数器值计算出数据的绝对时间。

2)输出同步性

在数据同步输出的过程中引入数据寄存和输出触发机制,主控制器将数据发送到各模块的数据寄存区后,再通过触发方式使功能模块输出各自数据寄存中的数据。

1.2.3 系统响应时间

为了整体提高可编程控制器的系统响应时间,保证现场控制的响应指标,进行了以下设计:

1)更改数据传输方式

优化数据传输模式,如DI模块的数据传输方式由查询方式改为定时和沿触发方式。

2)提高总线带宽

通过高速通信背板的千兆以太网实现主控制器和功能模块之间的数据传输,降低数据传输延时。

3)优化主控器处理能力

利用C++语言重新编写各功能模块和控制器系统的嵌入式API函数;分配独立的处理核心给采集的高并发数据。

2 功能模块的板卡式设计

多总线兼容可编程控制器整体采用功能模块拔插式的板卡设计。硬件设计上,通过归一化的以太网背板接口适配所有功能模块;软件设计上,通过背板高速通信总线,解决现场采集带来的通信数据量较大的问题[6],利用socket接口实现功能模块主控芯片与主控制器之间的数据通信。多总线兼容可编程控制器机箱如图3所示。

图3 多总线兼容可编程控制器机箱Fig.3 Multi bus compatible programmable controller chassis

2.1 CAN总线功能模块设计

CAN总线功能模块设计了2路CAN总线,其中CAN-bus信号包括:CAN_H、CAN_L、CAN_GND,支持CAN2.0A和CAN2.0B帧格式,每通道最大128个节点,符合ISO/DIS 11898规范[7]。CAN功能模块原理框图如图4所示,单路CAN硬件接口定义见表1。

表1 CAN接口(DB9公头)定义Table 1 Definition of CAN interface (DB9 male)

图4 CAN功能模块原理框图Fig.4 Schematic block diagram of CAN function module

2.2 Modbus RTU模块设计

Modbus RTU总线功能模块设计了8路独立的RS485通道,支持Modbus RTU协议,其作为Modbus RTU主站,可向从站发送数据请求并接收从站返回数据,数据最大波特率115200bps。功能模块原理框图如图5所示,模块硬件接口定义见表2。

图5 Modbus RTU功能模块原理框图Fig.5 Schematic block diagram of Modbus RTU function module

表2 Modbus RTU功能模块接口定义Table 2 Modbus RTU function module interface definition

2.3 Profibus PA模块设计

Profibus PA总线功能模块设计了4路Profibus PA总线,每路可以连接最多10个Profibus PA总线仪表,支持GSD文件配置,可重复使用现有的Profibus网段而无需修改,支持Profibus PA通讯协议,波特率固定为31.25Kbps[8],使用IEC61158-2物理层,通过将信号调制到电源线上,使用直流平衡的曼彻斯特编码。Profibus PA功能模块原理框图如图6所示。

图6 Profibus PA功能模块原理框图Fig.6 Schematic block diagram of Profibus PA function module

2.4 AIO/DIO常规模块设计

2.4.1 AIO功能模块

表3 Profibus PA功能模块接口定义Table 3 Profibus PA function module interface definition

AI模拟量采集模块设计了8路模拟电压输入通道,设计输入电压范围0V~5V。前置利用积分电路实现PWM到平滑电压的转换,不断改变PWM占空比使其与输入测量电压通过比较器进行比较,阶跃变化时,即是测量的输入电压值。AI功能模块原理框图如图7所示。

图7 AI功能模块原理框图Fig.7 Schematic block diagram of AI function module

AO模拟量输出功能模块设计了8路模拟电流输出通道,输出电流范围4 mA~20mA。其中,模拟信号输出电路与主电路隔离,功能模块接收主控软件接口参数,通过板载嵌入式控制器实现控制DAC输出。AO功能模块原理框图如图8所示。

图8 AO功能模块原理框图Fig.8 AO Functional module principle block diagram

2.4.2 DIO功能模块

DIO功能模块设计了8路开关量输入和8路开关量输出模块,通过Cortex-M3高速处理芯片保证模块具有强劲的数据处理能力;通过看门狗电路设计,确保系统长期运行稳定可靠。其中,8路开关量输入,通过光电隔离接入DIO功能模块的嵌入式控制器;8路隔离的开关量输出通道,通过8路继电器输出,保证驱动能力。DIO功能模块原理框图如图9所示。

图9 DIO功能模块原理框图Fig.9 Schematic block diagram of DIO function module

3 控制器嵌入式API设计

3.1 工作原理设计

为了在总线兼容的基础上,实现基于所兼容现场总线的热工水力试验测控程序编程需求,同时保证测控程序的便捷性和快速性,以及考虑多总线兼容可编程控制器后续的可扩展性,通过C++语言设计并开发了控制器嵌入式API接口函数,包含各硬件功能模块数据采集、通信及设备系统功能等软件接口。通过该接口函数库,用户可直接利用组件化的思想,快速搭建测控现场数据采集测控程序,大大减少人力成本和程序开发难度。

3.2 嵌入式API软件接口

嵌入式API接口函数根据各功能模块的不同特性进行了定制化设计,涉及各功能模块的通道设参数置、测量数据获取、输出控制等API函数,实现中央控制器或其他第三方测控程序的快速开发调用。

4 控制器编程测试与数据验证

通过嵌入式API编制多总线兼容可编程控制器测试程序,实现现场仪表测量数据采集及信号输出。其中,CAN通信现场仪表为IMC数采设备,Profibus PA通信现场仪表为罗斯蒙特智能压力变送器,MODBUS RTU通信现场仪表为RTD温度采集模块。通过标准信号源给现场热工仪器仪表输入标准信号,记录CAN通信、Profibus PA通信、MODBUS RTU通信、AIO以及DIO所对应的标准值和采集值,试验数据如图10所示。

试验结果表明,测试程序运行正常,测试数据准确,该多总线兼容可编程控制器可实现热工水力试验测控系统的应用需求。

5 结论

针对反应堆热工水力试验过程中出现的多现场总线设备仪表带来的测控系统成本增加、系统臃肿的问题,基于网桥式思想的总线兼容原理,进行了软、硬件设计,最终研制了兼容Modbus RTU、CAN和Profibus-PA协议的多总线兼容可编程控制器。通过开展控制器的现场数据采集测试,测试结果表明,基于该控制器所编制程序运行正常,测试数据准确。该控制器可实现热工水力试验中多种现场总线的兼容,提高系统的集成自动化程度,减少成本。

同时,该多总线兼容可编程控制器的软硬件设计均考虑了组件化的思想,统一的背板接口、统一风格的嵌入式API等,有利于后续实现对于更多现场总线的兼容,进一步保证热工水力试验测控系统的简洁、统一且可靠。

猜你喜欢
热工框图功能模块
捷豹I-PACE纯电动汽车高压蓄电池充电系统(三)
热工仪表自动化安装探讨的认识
智能控制在电厂热工自动化中的应用
电路图2017年凯迪拉克XT5
算法框图的补全
基于ASP.NET标准的采购管理系统研究
智能控制在电厂热工自动化中的应用
输电线路附着物测算系统测算功能模块的研究
M市石油装备公服平台网站主要功能模块设计与实现
功能模块的设计与应用研究