S7-200CPU之间设置一个简单的Modbus通讯

发布者:RadiantJourney最新更新时间:2018-04-28 来源: 工控帮关键字:寄存器  cpu  S7-200 手机看文章 扫描二维码
随时随地手机看文章

使用下面的例程你可以在S7-200CPU之间设置一个简单的Modbus通讯。这个例子是关于Modbus功能码6的(写从站保持寄存器), 也可以作为其他所支持的功能码:1, 2, 3, 4, 5, 15 和16 的基本参数设置步骤 。


要求:要使用Modbus协议必须先在STEP 7 Micro/Win上安装指令库 。Modbus主站协议只支持STEP 7 Micro/Win V4.0 SP5及其以上版本.。


硬件设置

参数匹配

指令库的存储地址


保持寄存器值得传输


1.硬件设置例程中的Modbus通讯是在两个S7-200 CPU的0号通讯口间进行的(最好每个CPU都有两个通讯口)。在主站侧也可以选择相应库文件 "MBUS_CTRL_P1" 和 "MBUS_MSG_P1"通过1号通讯口通信。通讯口1与Micro/WIN建立PG或PC连接,两个CPU的通讯口0通过PPI电缆进行连接(电缆的 针脚 连接为2,3,7,8)。

2.参数匹配对于MODBUS通讯, 主站侧需要程序库 "MBUS_CTRL" 和 "MBUS_MSG",


①从站侧需要程序库 "MBUS_INIT" and "MBUS_SLAVE"。


在 Micro/WIN 中您需要为主站和从站新建一个项目,程序与参数设置见图02。必须要保证主站与从站的“Baud”和"Parity"的参数设置要一致,并且程序块"MBUS_MSG"中的"Slave"地址要与程序块"MBUS_INIT"中的"Addr"所设置的一致 (见图.02)。

Micro/WIN“系统块”中设置的0通讯口的波特率与MODBUS协议无关("Mode" = "1")。


下面的表格列出了程序块各个参数选项及其意义

主站

MBUS_CTRL

表 01


1) 参看STEP 7 Micro/WIN 帮助: "MODBUS主站执行MBUS_MSG时的错误代码MBUS_MSG" 。


MBUS_MSG


表 02


1)参看STEP 7 Micro/WIN 帮助: "MODBUS主站执行MBUS_MSG时的错误代码MBUS_MSG" 。

从站


MBUS_INIT

表 03


2) 最大的地址取决于所用CPU的类型及其最大值。3)参看STEP 7 Micro/WIN 帮助: “MODBUS从站协议的错误代码”。


MBUS_SLAVE


表 04


3)参看STEP 7 Micro/WIN 帮助: “MODBUS从站协议的错误代码” 。


3.库的存储地址项目完成后必须要在Micro/WIN中定义库的存储地址,当定义完存储区后, 要保证在任何情况下不能再被其它程序所使用 (主站侧: "DataPtr" + "Count" 从站侧: "HoldStart" + "MaxHold"



4.保持寄存器值的传输将程序下载到相应的CPU后,可以在状态表中给主站侧的V存储区赋值,然后监视从站的变化。当主站的I0.0使能后,VW2中的内容就被发送到从站并写入从站的VW2 。


①保持寄存器值的传输见图.04。指针"DataPtr" 代表了V区被读的起始地址。参数 "Count" 表明了地址"Addr" = "4xxxx" (保持寄存器)以字为单位被读的个数。主站中被读取的V存储区被写入地址为"Addr" = "40002" ("RW" = "1")的保持寄存器中。保持寄存器是以字为单位工作的,它与从站的V区地址对应。指针 "HoldStart" 明确了与保持寄存器起始地址40001相对应的V存储区的初始地址。可以这样计算从站的V区目标指针:


2 * (Addr - 40001) + HoldStart = 2 * (40002 - 40001) + &VB0 = &VB2


另外,要保证"MaxHold" 定义的数据区能够包含主站侧所要写入的数据区 :


MaxHold >= Addr - 40001 + Count = 40002 - 40001 + 1 = 2

关键字:寄存器  cpu  S7-200 引用地址:S7-200CPU之间设置一个简单的Modbus通讯

上一篇:一文看懂光网EPON和GPON终端设置
下一篇:AI与基因科学的对话:从“人工智能”到“动物智能”

推荐阅读最新更新时间:2024-05-07 18:00

C8051F020中的ADC应用要素
C8051F020(简称F020)是美国德州Cygnal公司推出的一种混合信号SOC型8位单片机。它属于C8051F系列中的F02x子系列。其性能价格比在目前应用领域极具竞争力。F020具有8路12位A/D转换(简称ADC)接口和8路8位在线可编程(ISP)的ADC电路,片上的特殊功能寄存器(简称SFR)有15个与ADC的控制相关,它们是: AMUX0SL——AMUX0通道选择寄存器,复位值为00000000; MAX0CF——AMUX0配置寄存器,复位值为00000000; ADC0CF——ADC0配置寄存器,复位值为11111000; ADC0CN——ADC0控制寄存器,复位值为00000000; ADC0H——AD
[应用]
苹果自主GPU之路并不容易:GPU比CPU更难开发
eeworld网消息 据国外网站MarketWatch北京时间4月6日报道,苹果据称正计划自主研发GPU,这或将进一步提升该公司的设备性能和服务,但也可能导致该公司被告上法庭。最重要的是,自主研发GPU并不容易。 本周一,苹果芯片设计合作伙伴,英国公司Imagination表示,该公司已经获其最大客户苹果通知,自未来15至24个月起,将不再于新产品中使用Imagination的设计。该消息确认了过去数月的传闻,即苹果正致力自主研发图形处理器,或GPU。 GPU是一个复杂但迅速增长的领域,近期以来的关注度持续上升。作为该市场的领头羊,英伟达正使用其设计进军无人机、自动驾驶汽车和机器人等市场。如果GPU成为深度学习和机器学习应用的主力
[手机便携]
8051中断控制寄存器
1.定时器/计数器控制寄存器TCON 定时器/计数器控制寄存器TCON的地址为88H,可以位读写,其功能如下: TCON.7 TCON.6 TCON.5 TCON.4 TCON.3 TCON.2 TCON.1 TCON.0 TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 ⑴TF1是定时器T1的溢出申请位。定时器T1被允许计数以后,从初值开始加1计数,当产生溢出时置TF1=1,向CPU请求中断。到CPU响应该中断后才由硬件清0,也可以由查询程序清0。 ⑵TF0是定时器T0的溢出申请位。TF0实际上是T0中断触发器的一个输出端。 ⑶IE1是外部中断INT1请求标志
[单片机]
CPU之间的数据通信实现
1 引言 数字信号处理器(DSP)是一种适合于实现各种数字信号处理运算的微处理器,具有下列主要结构特点:(1)采用改进型哈佛(Harvard)结构,具有独立的程序总线和数据总线,可同时访问指令和数据空间,允许实际在程序存储器和数据存储器之间进行传输;(2)支持流水线处理,处理器对每条指令的操作分为取指、译码、执行等几个阶段,在某一时刻同时对若干条指令进行不同阶段的处理;(3)片内含有专门的硬件乘法器,使乘法可以在单周期内完成;(4)特殊的指令结构和寻址方式,满足数字信号处理FFT、卷积等运算要求;(5)快速的指令周期,能够在每秒钟内处理数以千万次乃至数亿次定点或浮点运算;(6)大多设置了单独的DMA总线及其控制器,可以在基本不影
[单片机]
双<font color='red'>CPU</font>之间的数据通信实现
ATmega128 MCU 控制和状态寄存器-MCUCSR
MCU 控制和状态寄存器提供了有关引起MCU 复位的复位源的信息。 在ATmega103 兼容模式下只有EXTRF 和PORF 存在。 • Bit 4 – JTRF: JTAG 复位标志 通过JTAG 指令AVR_RESET 可以使JTAG 复位寄存器置位,并引发MCU 复位,并使JTRF 置位。上电复位将使其清零,也可以通过写”0” 来清除。 • Bit 3 – WDRF: 看门狗复位标志 看门狗复位发生时置位。上电复位将使其清零,也可以通过写”0” 来清除。 • Bit 2 – BORF: 掉电检测复位标志 掉电检测复位发生时置位。上电复位将使其清零,也可以通过写”0” 来清除。 • Bit 1 – EXTRF: 外部复位
[单片机]
ATmega128 MCU 控制和状态<font color='red'>寄存器</font>-MCUCSR
利用MODBUS提高多CPU系统协同开发的效率
    摘要: 提出利用MODBUS协议实现多CPU系统中信息交互的方案,分析了软硬件通信机制的设计和系统协同开发的方法,以及各种提高通信效率的措施。     关键词: MODBUS通信协议 多CPU系统 通信 在电力系统微机综合保护和自控装置以及其它工业自动化控制领域,微控制器的应用越来越广泛,其装置的复杂性也越来越高。为了解决其开发对象实时多任务性的要求,单CPU、单入开发的模式下在被多个、多类型CPU和多人协同开发的模式所代替。在这新的开发模式中,面临一个新问题——在实施信息交互的过程中如何将实现CPU之间信息交互的软硬件标准化,这是关系到该模式能否成功实施的关键。在众多的通信方式中,基于UART的RS
[应用]
单片机存储器的配置
单片机存储器配置: 片内RAM 128字节(00H—7FH); 片内RAM前32个单元是工作寄存器区(00H—1FH) 片内RAM有128个可按位寻址的位,占16个单元。 位地址编号为:00H—7FH,分布在20H—2FH单元(P.27) 片内21个特殊功能寄存器(SFR)中:地址号能被 8整除的 SFR中的各位也可按位寻址(P.27-28) 可寻址片外RAM 64K字节 (0000H—FFFFH) 可寻址片外ROM 64K字节 (0000H—FFFFH) 片内 ROM 4K字节 (000H—FFFH) 扩展阅读:半导体存储器 存储器配置(片内RAM) 1、片内RAM 128字节(
[单片机]
单片机存储器的配置
小广播
最新网络通信文章
换一换 更多 相关热搜器件
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved