ABBAC900F学习笔记200:modbus通讯11

标签:
abbac900ffreelancemodbus通讯 |
分类: ABBDCS |
接着学习,还是那一篇资料。第四章4.6,现在开始读写通讯功能快的学习。读写功能块前面的学习也用过,现在详细了解一下。
不选:未处理功能块,即没有输入REQ
涂黑:没有自动请求,即输入REQ为1就开始。
读取8个、16个线圈功能块。MODM_R8C、MODM_R16C
以读取16个线圈为例子
功能
读取二进制值,MODM_R16C功能块。这两个功能块对话框都是类似的,就用读取16个线圈的功能块作为代表进行介绍。
功能块通过freelance的串行或TCP(以太网)接口从外部系统读取布尔数据(线圈状态),使用modbus功能号码01或者02。
|
|
|
|
|
|
MODM_R8C额MODM_R16C功能块的区别是读取二进制(线圈)数量不一样。功能块MODM_R8C可以接收和分配多达 8
个报文数据项的信号,功能块MODM_R16C多达 16
个数据项。可以使用功能块MODM_R8C读取单个二进制值。报文项目在输出R01至R16处按顺序提供,以便在freelance系统中进一步处理。
参数设置对话框中“自动请求”复选框的不同选择设定决定了发送行为的状态,具体的介绍前面记录过。输入端REQ为1时开始数据传输。如果输出NDR为0,发送报文数据元素可用。该功能块不能显示为面板,也无法在freelance
operations运行时进行操作。
接下来介绍参数对话框其它内容。
优先级:1至5,或者"-"没有优先级。
提示:输入提示信息。这个和别的功能块一致。
消息文本:消息输出文本。直接输入或者从列表框选择。
超时:设置等待响应的最大毫秒单位时间。整型数值0-9999ms。输入0表示没有超时。
重试:超时错误发生或者消极报文相应发生时,最大的重试次数,0-9.
接口:在硬件组态时,Modbus通讯主站对象的名字。这个必须定义(凡是红色底色的都必须定义)。
自动请求:勾选表示自动请求模式。输入REQ不能切换。
modbus功能
从站地址:输入从站地址,范围是0-247.
线圈地址:输入变量快的线圈地址
线圈状态(单选):modbus功能01读取线圈状态
输入状态(单选):modbus功能02读取读取输入状态
计数:输入报文中线圈变量的数量,如果是MODM_R8C,最大数量是8;如果是MODM_R16C,最大数量是16.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
使能 TRUE:此功能块可以处理 |
|
|
|
|
TRUE: 报文读写开始信号 |
输出 | |
|
|
|
|
|
|
|
TRUE:功能块处理完毕 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
TRUE:功能块出错 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
01-线圈状态;02-输入状态 |
|
|
|
|
|
|
|
YES |
|
|
|
|
|
|
|
补充一下:
modbus功能码01就是读取DO和中间bool变量状态,02就是读取DI状态。