线下实训
HOME
线下实训
正文内容
施耐德plc编程fbd 寄存器PLC地址与寄存器modbus协议地址
发布时间 : 2024-11-23
作者 : 小编
访问数量 : 23
扫码分享至微信

寄存器PLC地址与寄存器modbus协议地址

寄存器PLC地址指存放于控制器中的地址,这些控制器可以是PLC,也可以是触摸屏,或是文本显示器。PLC地址一般采用10进制描述,共有5位,其中第一位代码寄存器类型。第一位数字和寄存器类型的对应关系如表1所示。PLC地址例如40001、30002等。

寄存器modbus协议地址指通信时使用的寄存器地址,在实际编程中,由于寄存器PLC地址前缀的区分作用,所以只需说明后4位数,而且需转换为4位十六进制地址。例如PLC地址40001对应寻址地址0x0000,40002对应寻址地址0x0001,寄存器寻址地址一般使用16进制描述。再如,PLC寄存器地址40003对应协议地址0002,PLC寄存器地址30003对应协议地址0002。在实际编程中,由于前缀的区分作用,所以只需说明后4位数,而且需转换为4位十六进制地址。

支持 Modbus 协议的设备或软件,使用时用户直接设置或看到的应 当是 Modbus 数据地址。Modbus 地址所访问的数据,是通过各种 “功能”读写而来。 功能码是 Modbus 地址的底层。 如果 Modbus 通 信的一方提供的所谓 Modbus 协议只有功能码,则需要注意了解此 功能号与 Modbus 地址间的对应关系。

使用 modbus 地址时应注意下述问题:

1)40001~4xxxx 是美国 modicon 公司和 ge 公司 plc 使用的 modbus 地址,它是基于1的地址,即同类元件的首地址为1。西门子 plc 的 modbus 地址是基于0的地址。

2)美国的 modbus 地址左起第2位用来表示元件的类型,例如 i0.0的 modbus 地址为010001。 因为数据类型已经包含在功能码中了, 西门子的 i0.0的 modbus 地址实际上为000000, i2.0的 modbus 地址为 000016(或十六进制数16#0010) ,而不是010017。

3)、无论V寄存器还是M寄存器,里面的不同数据类型(VB、VW、VD、MB、MW、MD)都是基于寄存器内存总字节地址为偏移地址。

4)、在数据报文中,所有的modbus地址都是从0开始的。也就是首次出现的数据项在报文中的地址为0。比如:(All data addresses in Modbus messages are referenced to zero. The first occurrence of a data item is addressed as item number zero.)

5)、Modbus地址实际上分为两种情况。

第一种情况:PLC作Modbus主站,Modbus地址和PLC手册里的地址一致,例如作主站的S7-200的MBUS_MSG指令用于向Modbus从站发送请求消息,和处理从站返回的响应消息。要读取从站(另一台S7-200)的I0.0开始的地址区时,它的输入参数Addr(Modbus地址)为10001。S7-200从站保持寄存器的V区起始地址为VB200时,要读取从站VW200开始的V存储区时,保持寄存器的地址是40001。

第二种情况:PLC作从站,PLC不用管什么Modbus地址,等着主站来读写它的地址区就是了。

主站的计算机软件(例如DCS或组态软件)的编程人员需要编写实现Modbus通信的程序,首先需要确定Modbus RTU的报文结构。他们一般不熟悉PLC,因此PLC的编程人员往往需要和上位机软件的编程人员一起来讨论Modbus的报文结构。

最容易出问题的就是报文里Modbus地址与PLC存储区地址的对应关系。

S7 PLC手册给出的Modbus地址与Modicon公司和GE公司PLC使用的地址相同,是基于1的地址,即同类元件的首地址为1。而西门子PLC采用的是基于0的地址,即同类元件的首地址为0。Modbus报文中西门子PLC的Modbus地址也采用基于0的地址。

PLC系统手册中的Modbus地址的最高位用来表示地址区的类型,例如I0.0的Modbus地址为10001。因为地址区类型的信息已经包含在报文的功能码中了,报文中S7-200的I0.0的Modbus地址不是10001,而是0。报文中其他地址区的Modbus地址也应按相同的原则处理。例如当S7-200从站保持寄存器的V区起始地址为VB200时,VW200对应的保持寄存器在报文中的Modbus地址为0,而不是40001。

施耐德plc modbus地址对照表

000001至000XXX是实际输出,对应%QX0.0-%QXX.X

010001至010XXX是实际输入,对应%IX0.0-%IXX.X

030001至030032是模拟量寄存器,对应%AIW0,16位一路依次类推

040001至040XXX是保持寄存器,对应%MX0.0-%MXX.X,1对1,要是%MW就对应16位,依次类推。施耐德PLC中 W表示字 16位,D表示双字 32位。比如:%MW10和%MD10。B表示字节 8位,X表示位。比如:%MB0和%MX0.0~%MX0.7

%MW10.4

%MW10是指一个字,一个字分为2个字节,一个字节8个位,也就是说%MW10中有16个位,从%MW10.0~%MW10.15。

%QW0.5.1.0.10

Q是输出 ,0是机架,5是0号机架的第五个模块,1是第五号模块的第一个通道,0是第一个通道的第0个字,10是第0个字的第10个位。

无论MX、MB、MW、MD都是基于内存总字节地址为偏移地址,也就是以%MB之后的地址为偏移地址。

施耐德plc寄存器地址对应的modubs地址

寄存器地址 modubs 说明 公式

%QX1.0 000001.0 开关量输出 %QXx.y=000001+x.y

%IX1.0 010001.0 开关量输入 %IXx.y=010001+x.y

%AIW0 030001 模拟量输入 %AIWx=030001+x

%MD40 0400801 保持寄存器 %MDx.y=040001+x*2.y

%MW50.0 040051.0 保持寄存器 %MWx.y=040001+x.y

%MX100.0 040051.0 保持寄存器 %MXx.y=040001+x/2.y

注意:

1、%MX100.0表示某个字节地址,因为%MW50这个地址中包含了%MB100、%MB101,%MX100.0其实是%MW50的第0位即40051.0

2、%MD40表示双字,%MD40对应的首地址是%MW*2,也就是%MW80,%MD40对应的modbus地址为0400801

西门子s7系列plc modbus地址对照表

例如:地址:40040;对应S7200地址:VW78;对应S7300地址:DB1.DBW78;

三菱FX系列PLC modbus地址对照表

OMRON PLC地址转MODBUS协议对照表

将OMRON PLC接入支持MODBUS协议的上位DCS系统中,通过ASC模块可满足用户的这一需求。具体地址对照关系参考下面链接。

https://wenku.baidu.com/view/3ff1d16da5e9856a5712601d.html

台达PLC寄存器地址与Modbus寄存器地址对照表

具体地址对照关系参考下面链接。

https://wenku.baidu.com/view/f884db6d102de2bd97058836.html

永宏PLC寄存器Modbus地址表

具体地址对照关系参考下面链接。

https://wenku.baidu.com/view/4843e77c30126edb6f1aff00bed5b9f3f90f72c8.html

信捷PLC寄存器Modbus地址表

施耐德PLC编程SoMachine软件工程的建立及仿真

在自动控制领域,施耐德各系列PLC,因其强大的功能、友好的界面被大家广泛的应用。这里以施耐德SoMachine V4.3编程软件分享PLC工程的建立及程序的仿真。

以下图片为SoMachine软件安装后的图标,软件安装过程这里不做详细介绍,但其安装时,需要使用虚拟光驱引导安装,这是与一般的常规软件安装不同。

建立工程

双击SoMachine软件图标,打开软件。新安装的软件会弹出如下所示的窗口。

点击“不加装插间并继续”按钮,继续打开软件,软件探测如下所示对话框;

点击“关闭”按钮;

在弹出的界面中,选择“新建项目”-“空项目”;

在如下所示的界面,协调项目的名称“test”,然后点击“创建项目”;

在弹出的界面,双击“添加及删除设备”,进入硬件组态画面;

在硬件组态对话框中,依照如下所示的顺序选择,导入PLC硬件;

PLC硬件导入以后如下图所示,点击“完成”,关闭硬件组态对话框;

回到软件项目导航界面,双击“控制器”,进入PLC的编程界面;

PLC编程界面如下图所示;

在PLC的编程界面的左侧的应用程序树中,点击“Application”右侧的“+”号图标,在弹出的快捷菜单中,选择“POU…”创建程序;

在弹出的对话框中,输入程序名称“main”-类型选择程序,实现语言选择ST(当然这个位置还可以选择梯形图、FBD等),点击“添加”。即可完成程序的创建。

如下即为ST语言方法的程序编辑器;

在界面左侧的“应用程序树”中,任务设置-MAST的右侧点击“+”,在弹出的快捷菜单中,选择“程序调用…”;

弹出如下所示的对话框,在要调用的POU项,点击“…”;

弹出如下所示界面,选择“Application”-“main(我们已经建立的程序页名称)”双击;

回到添加程序调用对话框,点击“添加”;

添加完成后,应用程序树如下图所示;

在程序编辑器的上方,点击倒三角符号,打开变量定义编辑器;

变量定义区打开后的程序编辑区如下图所示;

在变量编辑区输入“val1,val2,val3:int;”即定义了val1,val2,val3三个整型变量;

在程序代码区,输入“val3:=val1+val2”;实现将两个变量求和;

程序编写完成后,点击工具栏中的编译按钮,编译程序;

编译完成后,会在消息通知栏中,显示编译信息,如下图所示;

PLC程序仿真

点击菜单栏中的“在线”-“仿真”,软件打开仿真器;

点击工具栏中的在线按钮,仿真在线程序;

弹出如下所示的提示框,点击“是”;

完成后,软件如下界面所示;

点击工具栏中的“开始”按钮,将PLC切换到运行模式;

PLC运行后,在变量定义区域,写入如下所示的数字;

然后使用快捷键Ctrl+F7,写入数据;数据写入后,软件如下图所示。

以上,即使用SoMachine完成了程序工程的建立、硬件组态、程序编写、程序调用、程序的仿真等。

(转载请注明来源函控自动化工程师头条号)

相关问答

plc面试常问的问题?

问题1。有哪种基本类型的PLC?小型PLC模块化PLC问题2。目前流行的PLC品牌有哪些?ABB公司AB(Rockwell)PLC西门子PLC/德尔塔PLC/三菱PLC霍尼韦尔PLC...

施耐德断路器NSX100NMA6.3求全解-ZOL问答

施耐德塑壳断路器NSX型,100是壳架电流规格,N是分断能力50kA,MA是电磁脱扣类型...如何改变虚拟存储空间文件pagefile.sys的大小1450浏览5回答wps文档内为什么...

变频器报phbd怎么处理?

变频器报"PHBD"通常是由于变频器内部的滤波电容或者滤波器出现问题所导致的。这个错误提示意味着变频器的滤波器正在充电或者放电,而且可能伴随着高电压或电流...

施耐德继电器rxm4lb2p7的字母代表的是什么含义_土巴兔装修问答

问谁知道施耐德继电器rxm2lb2bd的数字和字母有什么意思答1、RXM:施耐德的小型中间继电器第一个2:表示触点数目,常开触点为22、LB:表示产品带LED灯第二个2:...

施耐德小型继电器型号有哪些

[回答]施耐德小型继电器RXM2AB2BDRXM4AB2BDRXZE1M2C

施耐德中间继电器24v需要的电流是多少?_土巴兔装修问答

来问下施耐德中间继电器价格便不便宜答应该选择LRD-12C电流范围:5.5-8A配施奈德LC1系列接触器使用。控制功率3-3.7KW的电动机。LRD10C整定电流4-6A的只能控制...

看了入户配电箱漏电断路器是用的施耐德产品?-幸福里问答

根据装修需求确定是否进行二次改造。开发商做的水电是满足交房标准的硬性要求,就好比防水一样,都是需要二次施工的。主要看房子的用途,如果是自住,...

直流24v中间继电器型号怎么认?

关于这个问题,直流24V中间继电器的型号通常可以通过以下几种方式来识别:1.观察继电器外壳上的标识:继电器的外壳上通常会有型号、规格或厂商的商标标识,可...

扎堆儿在亦庄买房的人,到底看中了亦庄的什么?-幸福里问答

人以群分,物以类聚。亦庄没什么可以看中的。只不过一种群体会聚于此罢了。有差不多的人生,差不多的教育水平,差不多的消费能力。比下有余,比上不足...

施耐德小型中间继电器价格是多少?-一起装修网

施耐德小型中间继电器价格是多少?

 教育部王登峰被查  600帝 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2024  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

在线咨询真诚为您提供专业解答服务

热线

188-0000-0000
专属服务热线

微信

二维码扫一扫微信交流
顶部