Modbus通信协议在DCS与PLC通信中的应用

2014-08-02 01:16刘春艳吴明生罗炳浩
化工自动化及仪表 2014年9期
关键词:卡件对话框工位

刘春艳 吴明生 罗炳浩

(甘肃银光聚银化工有限公司,甘肃 白银 730900)

随着DCS在化工自控领域的广泛应用,工业生产中经常需要PLC与DCS间进行通信,最常见的通信方式是通过通信卡点对点连接方式中的Modbus RS-485通信。现以CP341模块与CS3000的ALR121模块为例,介绍基于Modbus协议通信的硬件结构和参数设置。

1 Modbus简介①

Modbus将通信参与者规定为主机(master)和客户端(slave),主机首先向客户端发送通信请求指令,客户端根据请求指令中指定的内容向主机发回数据,一个主机可以向多个客户端发送通信请求,最多可有255个请求指令。每个客户端都有设有唯一编号,该编号为客户端地址(slave address)或识别码(slave id)。

Modbus协议中只对各种通信字符串格式作了规定,并未对通信参数作规定。

控制器能设置为ASCII或RTU两种传输模式中的任何一种,在标准的Modbus网络通信。用户选择想要的模式,包括串口通信参数(波特率及检验方式等),在配置每个控制器时,在一个Modbus网络上的所有设备都必须选择相同的传输模式和串口参数。当控制器设为在Modbus网络上以ASCII模式通信,在消息中的每个8bit都作为两个ASCII字符发送。这种方式的优点是字符发送的时间间隔可达到1s而不产生错误。当控制器设为在Modbus网络上以RTU模式通信,在消息中的每个8bit包含两个4bit的十六进制字符,其优点是在同样的波特率下,可比ASCII方式传送更多的数据。

2 硬件配置

2.1 PLC

CP341模块是S7-300/400 PLC中支持Modbus串行通信的模块,CP341有一个串行通信口(RS-232C或TTY或RS-485/422)。要实现Modbus通信,需在CP341模块上插入相应协议的硬件狗,CP模板才能支持Modbus(RTU格式)。

CP341模块的安装步骤:

a. 将CPU切换至STOP模式;

b. 关闭电源;

c. CP341附带扩展总线,将该总线插入CP341左侧模块的背板连接器上;

d. 如果要在CP341的右侧安装模块,则将下一个模块的扩展总线插到CP341右侧背板连接器上;

e. 将FM341挂在安装导轨上并向下旋转;

f. 拧紧CP341;

g. 将24V(DC)的负载电源连接至CP341。

参数分配接口与功能块和编程实例均位于CD上。安装参数分配接口,执行的操作:将CD放入编程设备或PC的CD驱动器;在Windows操作系统中双击控制面板中的“添加/删除程序”图标,打开安装软件的对话框;在该对话框中选择CD驱动器,然后选择“Setup.exe”文件,开始安装;按照屏幕上的安装程序提供的说明进行操作。

CP341组态步骤如下:

a. 通过STEP 7创建一个项目和站。

b. 在STEP 7的组态表中输入CP341的机架号、插槽号和订货号,STEP 7自动给CP341分配地址,这样CPU就能通过地址在机架插槽中找到CP341。

c. 通过在组态表中双击订货号(CP341)或通过选择CP341,然后选择编辑(Edit)-->对象属性(Object Properties)菜单命令来启动参数分配接口。将出现“属性-CP341”(Properties-CP341)对话框。单击“参数”(Parameters)按钮转至协议选项,设置协议并双击传输协议的图标(信封形状)。这样进入了设置协议特定参数的对话框。

d. 数据组态。通过选择站(Station)-->保存(Save)或站(Station)-->另存为(Save As)菜单命令退出组态表时,系统自动将组态数据和参数分配数据(包括模块参数)存储到已创建的项目/用户文件中。

e. 在线将组态数据和参数分配数据从编程设备下载到CPU,菜单命令PLC-->下载(Download)。下载后CPU立即接收参数。

2.2 DCS

DCS的硬件包括:ALR121(RS-422/RS-485 communication module)和ALR121。ALR121卡件连接的方式如图1所示。

图1 ALR121卡件的连接示意图

3 组态

打开CS3000软件,生成ALR121卡件,开始→YOKOGAWA CENTUM→System View。在控制站(FCS010x)节点(NODEx)下点击右键→Create New→IOM,弹出Create New IOM窗口,在Category 中选择Serial Communication,在Type中选择ALR121(RS-422/RS-485 SerialCommunication Interface)→在Slot中设置卡件位置“x”。

点击“Card Common”标签,选择卡件常规项,连接设备选择“Modbus”。

点击Port1标签,设置Modbus通信端口属性(图2)。主、从站的波特率、数据位、结束位、奇偶校验规则和接线方式都是双方约定好的,必须保持一致。

图2 Modbus通信端口属性

通信I/O组态。双击ALR121卡件,弹出“Communication I/O Builder”窗口,开始通信I/O组态。通信I/O组态说明各项定义如图3所示,Buffer area针对本块ALR121所存储的总数据大小;Program Name为Modbus通信模块的安装位置,格式为“K1-节点号-插槽号Modbus”;Size为所选数据类型的数据长度,以“Words(2Byte)”为单位进行分配,范围1~126;Port为端口号,Modbus有两个端口,在此设置1或2;IP Address为IP地址(对Modbus组态不起作用,适用于Ethernet,如填写也不会报错);Station为从站设备的地址,范围0~32的数字(对从站设备进行识别);Device & Address为从站设备数据保存的内存地址,如S7-300默认从站地址为222;Data Type为数据类型,必须与从站数据类型一致;Reverse为是否将控制站(FCS)和子系统中的数据位“bit”取反,有“NO”和“YES”可选;Scan为设置通信扫描方式,有“NORMAL”和“FAST”可选。

图3 I/O组态各项定义

在“Communication I/O Builder”中组态模拟量点,如图4所示。

图4 组态模拟量点

在“WBTagDef”中组态数字量点:在Element中填写通信的数字工位,如%WB001102;在Tag Name中填写工位名称,如XI-P102A;在Tag Comment中填写相对应的工位注释。具体如图5所示。

图5 组态数字量点

下装,完成通信I/O组态。

在Drawing图中组态,如图6所示。

图6 Drawing中的组态

对于模拟量输入的PVI,选中PI-101,右键单击“Edit details”进入详细编辑,将“输入信号处理”与“输出信号处理”方式选择为子系统通信,并设置一定的增益和偏差(图7)。

图7 增益和偏差的设置界面

数字量点可以使用“开关仪表”进行接收,也可以直接调用“%WB000102”或设置的工位直接进行调用。下装后,系统组态完成。

调试步骤:

a. 在“FCS010x Station Status Display”中观察卡件状态,在硬件ALR121卡件上观察接收、发送灯是否正常。

b. 调出Process Report,看是否有“1”,如果有“1”表示有数据发送过来;如果没有,则表示没有数据发送过来。如图8所示。

c. 调出工位,核对和子系统的数据差别。调试结束。

图8 数据发送判断界面

4 结束语

DCS的功能不能局限于完成自身系统的控制和操作,还要整合其他各辅助系统的运行信息和生产数据,并将这些数据提供给操作人员和管理者。笔者采用Modbus通信协议和硬件设备的互连,实现了第三方系统间的通信和数据交换,极大地方便了操作人员的监护和控制,人力成本降低,生产自动化水平提高。

猜你喜欢
卡件对话框工位
LCA在焊装车间人工上件工位应用和扩展
Ovation系统VP卡件可靠性研究及预控措施
精确WIP的盘点方法
工位大调整
正常恢复虚拟机
Bootlace Worms’Secret etc.
What Is Beauty?
浅析中控DeltaV系统卡件检查方法
火电厂新华控制系统网络及卡件升级改造
浅谈VB的通用对话框《CommonDialog》控件的使用