该函数使 MODBUS 主站系统可以向下面列出的 CPU 的 SIMATIC 存储器写入一个位。
ADDR | FUNC | coil_address | DATA 开/关 | CRC |
ADDR | FUNC | coil_address | DATA 开/关 | CRC |
MODBUS 位地址“coil_address”由驱动程序解释为如下内容:
驱动程序将检查“coil_address”是否位于参数分配过程中在对话框“FC 01、05、15 的 MODBUS 寻址的转换”(Conversion of MODBUS Addressing for FC 01, 05, 15) 中 输入的其中一个区域内(从/至:存储器位,输出,定时器,计数器)。
如果 | 则将访问 | |
从 aaaaa 到 bbbbb | 开始于存储器位 | M uuuuu.0 |
从 ccccc 到 ddddd | 开始于输出 | Q ooooo.0 |
访问地址(地址转换)的计算如下:
访问开始处(使用 SIMATIC) | 转换公式 | ||||
存储器字节 | = | ((coil_address | - aaaaa) | / 8) | + uuuuu |
输出字节 | = | ((coil_address | - ccccc) | / 8) | + ooooo |
当访问 SIMATIC“存储器位”区和“输出”区时,会计算剩余的 bit_number 并将其用于寻址存储器字节或输出字节内的相关位。
使用函数代码 FC 05 不允许访问 SIMATIC 定时器区和计数器区,此类访问将被驱动程序拒绝,并输出错误消息帧。
在 DATA 开/关时允许以下两个值:
FF00H -> 设置位。
0000H -> 删除位。
参数分配示例:
列表: 函数代码 FC 01、05、15 的 MODBUS 寻址的转换
| SIMATIC 存储区 |
|
---|---|---|
从 0 到 2047 | 开始于存储器位 | M 1000.0 |
从 2048 到 2559 | 开始于输出 | Q 256.0 |
05H | 从站地址 ADDR |
05H | 函数代码 FUNC |
08H | coil_address“高字节” |
09H | coil_address“低字节”A257.1 |
FFH | DATA 开/关“高字节” |
00H | DATA 开/关“低字节” |
xxH | CRC 校验和“低字节” |
xxH | CRC 校验和“高字节” |
05H | 从站地址 ADDR |
05H | 函数代码 FUNC |
08H | coil_address“高字节” |
09H | coil_address“低字节”A257.1 |
FFH | DATA 开/关“高字节” |
00H | DATA 开/关“低字节” |
xxH | CRC 校验和“低字节” |
xxH | CRC 校验和“高字节” |
MODBUS 地址“coil_address”0809 十六进制(2057 十进制)位于“输出”区中:
输出字节 | = | ((coil_address | - ccccc) | / 8) | + ooooo |
| = | ((2057 | - 2048) | / 8) | + 256 |
| = | 257 ; |
|
|
|
剩余的其他 bit_number 的结果如下:
其他 bit_no. | = | ((coil_address | - ccccc) | % 8) | [模数为 8] |
| = | ((2057 | - 2048) | % 8) |
|
| = | 1 ; |
|
|
|
访问输出 Q 257.1。
有关访问存储器位和输出的更多示例,请参见 FC 01。
词条
词条说明
点对点编程概述使用自由口或 3964(R) 通信进行数据交换必须在相应 CPU 用户程序的数据块或位存储器地址区中提供发送数据。接收数据的通信模块中提供接收缓冲区。在数据块中设置相应数据块。在 CPU 的用户程序中,以下指令用于执行 CPU 与通信模块之间的数据传输。Send_P2PReceive_P2P接收缓冲区可以通过 Receive_Reset 指令删除。通过用户程序的动态组态作为通信模块的
配套规范的数据类型数据类型的映射下表显示了各个 OPC UA 数据类型的兼容 SIMATIC 数据类型。根据下图所示,*数据类型(SIMATIC 数据类型 - OPC UA 数据类型)。系统不支持其它分配方式。STEP 7 不会检查是否遵循该规则,因此也不会预防分配错误。用户需确保所做的选择和数据类型分配符合规则。例如,所列出的数据类型,也可用作自定义服务器方法中输入和输出参数结构 / UDT
启动 OB说明操作系统从“STOP”切换到“RUN”模式时,将调用每个启动 OB。 如果有多个启动 OB,则按照 OB 编号依次调用,从较小 OB 编号开始调用。所有启动 OB 构成的整体称为启动例程。可在启动例程中定义循环程序的默认设置。在此,过程映像输入的所有值均为 0。 启动例程的执行没有时间限制。 不能使用时间驱动或中断驱动的组织块。执行启动例程之后,操作系统将读入过程映像输入并启动循环程
使用“ST7”协议寻址参数为通信伙伴和网络节点分配地址使用“SINAUT ST7”协议,可通过不同的路径和子网进行通信。以下两个参数用于寻主 ST7 网络中的各个用户:用户编号在 STEP 7 项目中,每个用户的用户编号都是一的。以下用户需要用户编号:- 通信模块支持 ST7 的模块 (TIM, CP)- CPU已作为遥控连接终点分配给通信模块的本地 CPU 可通过
公司名: 上海腾希电气技术有限公司
联系人: 田礼科
电 话: 021-37660026
手 机: 13681875601
微 信: 13681875601
地 址: 上海松江上海市松江区广富林路4855弄星月大业**88号4楼
邮 编:
网 址: shtxjd.cn.b2b168.com
公司名: 上海腾希电气技术有限公司
联系人: 田礼科
手 机: 13681875601
电 话: 021-37660026
地 址: 上海松江上海市松江区广富林路4855弄星月大业**88号4楼
邮 编:
网 址: shtxjd.cn.b2b168.com