联系人:韩先生
邮箱:
电话:18005577020
地址: 江苏苏州市虎丘区18005577020
6ES7390-5AA00-0AA0 6ES7390-5AA00-0AA0
SIEMENS上海庆惜自动化设备有限公司
联系人 :袁工,苏工,陈工( 销售经理 )
24小时销售技术服务热线
袁工:(微信同号)
苏工:(微信同号)
陈工:(微信同号)
商务( Q Q ):2320796900
商务( Q Q ):715018740
商务( Q Q ):2643385122
传 真 :
715018740@qq.com
地址(Add):上海市金山枫泾镇凤阳三村98号301
【产品名称】:
【产品规格】:全新原装
【产品质量】:质保保证
【产品价格】:价格优势
【产品货期】:销售
【信誉、诚信交易】【长期销售、安全稳定】
【称心满意、服务动力】【真诚面对、沟通无限】
【服务、一诺千金】【质量承诺、客户满意】
价格,参数,型号,哪家便宜,哪里有卖,比较便宜,哪里有,销售,订货号,多少钱?哪家价格好? 厂家,性能,优点,包装,用途,售后服务!
在CPU的V数据区中分配库指令数据区(Library Memory);
如有必要,使用主站软件测试。

注意:由子程序参数HoldStart和MaxHold指定的保持寄存器区,是在S7-200 CPU的V数据存储区中分配,此数据区不能和库指令数据区有任何重叠,否则在运行时会产生错误,不能正常通信。注意Modbus 中的保持寄存器区按"字"寻址,即MaxHold规定的是VW而不是VB的个数。
在图2的例子中,规定了 Modbus 保持寄存器区从 VB0 开始(HoldStart = VB0),并且保持寄存器为1000个字(MaxHold=1000),因保持寄存器以字(两个字节)为单位,实际上这个通信缓冲区占用了VB0~VB1999共2000个字节。因此分配库指令保留数据区时至少要从VB2000开始。当然保持区不一定要从VB0开始。

注意:你选用的CPU的V存储区大小!CPU型号不同V数据存储区大小不同。应根据需要选择Modbus保持寄存器区域的大小。

包含 Modbus RTU 从站指令库的项目编译、下载到CPU中后,在编程计算机(PG/PC)上运行一些 Modbus 测试软件可以检验S7-200的Modbus RTU通信是否正常,这对查找故障点很有用。测试软件通过计算机串口(RS-232)和PC/PPI电缆连接CPU。如果必要,须将PC/PPI电缆设置在自由口通信方式。
可到一些软件下载网站寻找类似软件,如 ModScan32 等。
2.3 Modbus RTU 从站地址与S7-200的地址对应
Modbus地址总是以00001、30004之类的形式出现。S7-200内部的数据存储区与Modbus的0、1、3、4共4类地址的对应关系如下:
表2. Modbus地址对应表
| Modbus地址 | S7-200数据区 |
|---|---|
| 00001 ~ 00128 | Q0.0 ~ Q15.7 |
| 10001 ~ 10128 | I0.0 ~ I15.7 |
| 30001 ~ 30032 | AIW0 ~ AIW62 |
| 40001 ~ 4xxxx | T ~ T + 2 * (xxxx -1) |
其中T为S7-200中的缓冲区起始地址,即 HoldStart。
如果已知S7-200中的V存储区地址,推算Modbus地址的公式如下:
Modbus地址 = 40000 + (T/2+1) ; T为偶数
2.4 Modbus RTU 从站指令库支持的功能码
Modbus RTU 从站指令库支持特定的 Modbus 功能。访问使用此指令库的主站必须遵循这个指令库的要求。
表 3. Modbus RTU 从站功能码
| 功能码 | 主站使用相应功能码作用于此从站的效用 |
|---|---|
| 1 | 读取单个/多个线圈(离散量输出点)状态。 功能 1 返回任意个数输出点(Q)的 ON/OFF 状态。 |
| 2 | 读取单个/多个触点(离散量输入点)状态。 功能 2 返回任意个数输入点(I)的 ON/OFF 状态。 |
| 3 | 读取单个/多个保持寄存器。功能 3 返回 V 存储区的内容。在 Modbus 协议下保持寄存器都是"字"值,在一次请求中可以读取多 120 个字的数据。 |
| 4 | 读取单个/多个输入寄存器。功能 4 返回 S7-200 的模拟量数据值。 |
| 5 | 写单个线圈(离散量输出点)。功能 5 用于将离散量输出点设置为指定的值。这个点不是被强制的,用户程序可以覆盖 Modbus 通信请求写入的值。 |
| 6 | 写单个保持寄存器。功能 6 写一个值到 S7-200 的 V 存储区的保持寄存器中。 |
| 15 | 写多个线圈(离散量输出点)。功能 15 把多个离散量输出点的值写到 S7-200 的输出映像寄存器(Q 区)。输出点的地址必须以字节边界起始(如 Q0.0 或 Q2.0),并且输出点的数目必须是 8 的整数倍。这是此 Modbus RTU 从站指令库的限制。些点不是被强制的,用户程序可以覆盖 Modbus 通信请求写入的值。 |
| 16 | 些多个保持寄存器。功能 16 写多个值到 S7-200 的 V 存储区的保持寄存器中。在一次请求中可以写多 120 个字的数据。 |
2.5 Modbus RTU 从站例程
Modbus RTU 从站例程
需要 STEP 7-Micro/WIN V4.0 SP3 以上版打开
2.6 Modbus RTU 从站常见问题