MCGS触摸屏modbus通讯注意事项
昆仑通态触摸屏及组态软件连接网关步骤
![昆仑通态触摸屏及组态软件连接网关步骤](https://img.taocdn.com/s3/m/dfe36d8f87c24028905fc319.png)
触摸屏连接网关步骤1、 新建工程,选择对应的触摸屏型号,如 TPC7062Hi2、 打开设备窗口,右击选择“设备工具箱”,添加“通用TCP/IP 父设备”,“莫迪康ModbusTCP , 如下图所示 设备组态:设备窗口匝用TCPIP 父设备匸[逼用TCP/IP 父彘j 若设备工具箱快捷选项中没有“莫迪康ModbusTCP ,点击“设备管理”,选择通用设备->ModbusTCP3、双击“通用TCP/IP 父设备”,配置参数,如下图0设备0—[莫迪康ModbusTCP] ◎诙备 1—[莫迪MModbusTCP]检查⑥ 确认(工)取消© 帮助(旦)网络类型:1-TCP服务器/客户设置:0-客户端本地IP地址:触摸屏IP本地端口号:可选默认3000远程IP地址:网关IP远程端口号:5023、双击“莫迪康ModbusTCP,配置参数,如下图第一步:点击“增加设备通道” ,如下图3.1左下侧设备属性配置设备地址:与实际连接设备地址一致16位整数解码顺序:与实际连接设备一致,一般选默认0-12 32位整数解码顺序:与实际连接设备一致,一般选默认0-1234 32位浮点数解码顺序:与实际连接设备一致,一般选默认0-1234 分开采集方式:与实际连接设备一致,一般选择0-按最大长度分块4区16位写功能码选择:可选1-0x10 3.2右侧设备变量连接一般参数为16bit的整数、32bit的浮点数,可在数据类型里根据实际参数选择通道地址:十进制,可查看具体设备的地址,注意这里通道地址=Modbus地址+1,即若设备说明书中说明电压地址是305,对应这里填写通道地址为306第二步:点击“快速连接变量”,如下图数据对象:自行定义注:1、2、3中已配置完设备窗口信息4、点击“用户窗口” ,新建组态,打开窗口,在此编写动画窗口,这里就不作说明。
5、下载至触摸屏,选择TCP/IP下载方式,IP为触摸屏IP,下载至触摸屏并运行即可。
mcgs昆仑通态modbus rtu、modbus tcp通信方法莫迪康modbus通信配置步骤
![mcgs昆仑通态modbus rtu、modbus tcp通信方法莫迪康modbus通信配置步骤](https://img.taocdn.com/s3/m/0714ebe984868762caaed5ca.png)
深圳市综科智控科技开发有限公司——综合科技,智慧控制ZK系列产品与昆仑通态通信【】绝密【】NDA【X】公开目录目录第 1 章485 设备与昆仑通态MCGS通讯 (2)1.1DI/DO/AI/AO 接入 (2)1.1.1添加设备 (3)1.2读取DI 状态 (6)1.3输出/读取DO 状态 (8)1.4读取AI 值 (9)第 2 章以太网设备与昆仑通态通讯 (10)2.1DI/DO/AI/AO 接入 (10)2.1.1添加设备 (11)2.2读取DI 状态 (14)2.3输出/读取DO 状态 (16)2.4读取AI 值 (18)第 1 章485 设备与昆仑通态MCGS通讯1.1DI/DO/AI/AO 接入以 ZKA-4088-RS485 为例,介绍综科智控 485 设备与昆仑通态MCGS通讯的步骤设置。
ZKA-4088-RS485 是 8 路数字量输入(DI),8 路数字量输出(DO),4 路模拟量输入设备(AI,0/4-20mA),485 通信总线。
以 ZKA-4088-RS485 出厂默认通讯参数如下:站号:01波特率:115200数据格式:8,N,1与电脑连接的端口:客户查看电脑设备管理器中的COM口,选择实际使用的端口1.1.1添加设备在文件>新建项目选址设备并确定,在弹出的窗口选址设备窗口,双击设备窗口击工具箱按钮>双击通用串口父设备双击“莫迪康 Modbus RTU ”双击“通用串口父设备”,对串口参数进行设置1.2读取DI 状态ZKA-4088-RS485的8路DI 寄存器为10001~10008:启动设备调试查看调试数据,10001 值为1,即X1输入通道闭合。
1.3 输出/读取 DO 状态ZKA-4088-RS485 的 8路 DO 寄存器为 00001~00008:寄存器 00001 数据为 1,即 输出点Y1 继电器闭合。
1.4 读取 AI 值ZKA-4088-RS485 的 4 路 AI (模拟量输入)寄存器为 30001~30008,因为ZKA 模块采用的是32位AD 芯片,所以每个模拟量通道占用 2 个寄存器,共4 个字节(32bit ),其中高两个字节为采集结果的高16bit ,低两个字为采集结果的低16bit ,模块出厂时为保证高精度,滤波后输出16bit ,所以用户实际使用时只需要读取低16bit 采集结果即可,也就是读取通道地址0002,0004,0006,0008地址上的数据,数据类型为 无符号整型。
MCGS与Modbus应用总结
![MCGS与Modbus应用总结](https://img.taocdn.com/s3/m/cbfaec0d03d8ce2f00662387.png)
1. Modbus是MODICON公司于1979年开发的一种通讯协议,是一种工业现场总线协议标准。
1996年施耐德公司推出了基于以太网TCP/IP的Modbus协议——ModbusTCP。
2.Modbus协议是一项应用层报文传输协议,包括ASCII、RTU、TCP三种报文类型,协议本身并没有定义物理层,只是定义了控制器能够认识和使用的消息结构,而不管他们是经过何种网络进行通信的。
3.标准的Modbus协议物理层接口有RS232、RS422、RS485和以太网口。
采用Master/Slave(主/从)方式通信。
4. Modbus是一种简单客户机/服务器应用协议,客户机能够向服务器发送请求,服务器分析请求,处理请求,向客户机发送应答。
当服务器对客户机响应时,它使用功能码域来指示正常(无差错)响应或者出现某种差错(称为异常响应)。
对于一个正常响应来说,服务器仅复制原始功能码。
对于异常响应,服务器将原始功能码的最高有效位设置逻辑1后返回。
5.Modbus协议帧格式:Modbus协议定义了一个与基础通信层无关的简单协议数据单元(PDU)。
在特定总线或网络上的Modbus协议映射能够在应用数据单元(ADU)上引入一些附加域。
Modbus通用帧格式如下:6.串行链路上的Modbus地址规则:❖主要是在RS485和RS232等物理接口上实现Modbus协议。
❖Modbus串行链路协议是一个主/从协议❖在Modbus链路层上客户机的功能由主站提供而服务器的功能由从站实现。
❖地址0为广播地址,Modbus主节点没有地址,子节点必须有一个唯一的地址❖Modbus通信由主节点发起,子节点在没有收到来自主节点的请求时,从不会发送数据。
❖子节点之间互不通信。
❖主节点在同一时刻只会发起一个Modbus事务处理。
7.ModbusTCP简介❖ModbusTCP是运行在TCP/IP上的Modbus 报文传输协议。
通过此协议,控制器相互之间通过网络(例如以太网)和其它设备之间可以通信。
MCGS触摸屏设置Modbus通讯地址及串口参数的方法
![MCGS触摸屏设置Modbus通讯地址及串口参数的方法](https://img.taocdn.com/s3/m/87dd5d6e6f1aff00bfd51e81.png)
MCGS触摸屏设置Modbus通讯地址及串口参数的方法一、说明MCGS(昆仑通态)组态软件原版Modbus驱动是无法通过画面组态调用宏来设置Modbus通信相关参数的,如:站号,波特率,数据位,停止位,校验位这些参数的。
但是可以通过第三方定制版驱动来实现该功能,亲测有效。
二、屏幕做Mdobus主站时相关设置通过新建一个简单测试工程来讲解如何使用该驱动程序提供的功能•下载安装第三方定制驱动程序。
新建测试工程,并新建一个画面,画面布局如下•然后在实时数据库里新建11个数值变量分别为nAddr、nBaudrate、nDatabit、nStopbit、nParity、nReturn和rAddr、rBaudrate、rDatabit、rStopbit、rParity。
将组态画面左侧文本框依次关联nAddr、nBaudrate、nDatabit、nStopbit、nParity这几个变量,右侧标签依次关联rAddr、rBaudrate、rDatabit、rStopbit、rParity。
•组态左侧设置按钮的按下脚本写入以下代码'''''''''''''''''''''''''''''''''''''''''''''''''''''''''设置设备1的设备地址,设置地址值为nAddr的值,nAddr为数值型变量。
''''''''''''''''''''''''''''''''''''''''''''''''''''''''!SetDevice(设备1,6,"SetAddress(nAddr)")''''''''''''''''''''''''''''''''''''''''''''''''''''''''''设定设备1所在的父设备的串口参数,'nBaudrate为波特率,取值为(9600、14400、19200、38400等常见波特率的值) 'nDatabit为数据位,取值为(7-七位,8-八位)'nStopbit为停止位,取值为(1-一位,2-两位)'nParity为校验位,取值为(0-无校验,1-奇校验,2-偶校验)'nReturn为返回值,取值为(0-设置成功,1-设置失败)'nBaudrate,nDatabit,nStopbit,nParity,nReturn均为数值型变量。
使用Modbus协议建立S7-200与威纶通触摸屏之间的通讯
![使用Modbus协议建立S7-200与威纶通触摸屏之间的通讯](https://img.taocdn.com/s3/m/24c3eaf0f90f76c661371a1c.png)
使用Modbus协议建立S7-200与威纶通触摸屏之间的通讯在使用西门子S7-200时,在不增加其它通讯接口模块时,威纶通触摸屏可以通讯PPI协议与S7-200直接通讯。
但这种通讯方式由于受通讯协议本身限制,在通讯数据较多时,通讯速度相对较慢,使用Modbus 协议则通讯速度可以提高约一倍。
下面就介绍一下怎么使用Modbus协议建立S7-200与威纶通触摸屏之间的通讯:硬件连接在使用Modbus协议时,计算机与S7-200之间通讯直接使用PPI通讯电缆即可。
选配一触摸屏通讯端口我们这里以MT6070IH2和s7-200进行通讯S7-200的通讯端口是一个9孔(famel)D型插头,针脚分布如下所示:S7-200通讯端口(端口0)与威纶通触摸屏的通讯连接,如下图所示:S7-200编程及设置在缺省情况下S7-200的通讯端口是不支持Modbus协议的,要想实现Modbus通讯必需在PLC的主程序模块中调用Modbus通讯子程序。
Modbus通讯子程序可以从“STEP 7-Micro/WIN Add-On: Instruction Library (STEP 7-Micro/WIN附件:指令库)”中获得。
在安装了“STEP 7-Micro/WIN附件:指令库”后,在导航树“指令/库”下面我们可以找到“Modbus Protocol”。
在其下面包含了MBUS_INIT和MBUS_SLAVE两个子程序,MBUS_INIT用于对Modbus通讯进行初始化,MBUS_SLAVE用于在指定端口上提供Modbus从站通讯服务。
下在介绍如何在主程序中调相关子程序及环境参数设置:调用Modbus通讯初始化命令首先为MBUS_INIT命令建立一个触发条件(只触发一次),如:SM0.1;从导航树“指令/库/ Modbus Protocol”下面,将MBUS_INIT指令拖拽到主程序块中。
再就是正确设置MBUS_INIT各项调用参数和执行结果输出地址,我们可以建立一下如下图所示初始化调用过程:Mode:协议类型,1-Modbus协议;0-PPI协议。
触摸屏与变频器MODBUS通讯步骤
![触摸屏与变频器MODBUS通讯步骤](https://img.taocdn.com/s3/m/486d02e56294dd88d0d26bc9.png)
触摸屏与变频器MODBUS通讯步骤
A)硬件:昆仑通泰触摸屏
无锡博尔变频器
RJ45通讯线
B)软件:MCGS组态软件
C)资料:无锡博尔变频器说明书(查各个寄存器对应MODBUS地址)D)调试过程:同时建立多个MODBUS通讯路
1、在组态软件上新建立一个项目
2、建立一个父通讯路
3、在父通讯路下插入两个子通讯路(设备1:远程IO 和设备2变频器)
4、分别定义各个通讯路的通讯协议数据(地址,通讯格式:波特率、数据位数、停止位数、数据校验方式;注意:一条路上所有设备的通讯格式要一致)
5、在“实时数据库中”创建所需变量
6、在组态好的通讯设备里创建所链接的数据格式和寄存器地址,每个通讯子设备都有一个“通讯监测”的变量,在画面组态中可以用它来判断通讯是否正常,正常显示为0,显示为2表示无通讯,3为通讯数据格式错误。
7、将定义好的寄存器地址跟所对应变量关联起来
8、组态画面关联组态好的变量;
注:1、无锡博尔的变频器MODBUS地址转化为十进制后要加一,且读写数据都是用功能4,用功能3则通讯后检测通讯正常与否的寄存器会报错(显示3)。
2、以太网通讯时,组态软件里的IP地址要去触摸屏设置的IP一致,电脑网卡的IP地址网段要一致。
3、寄存器定义的格式有两种:读写位和读写一个字。
(整理)MCGS组态软件对ModBusRTU设备读写命令分析.
![(整理)MCGS组态软件对ModBusRTU设备读写命令分析.](https://img.taocdn.com/s3/m/5555b77c767f5acfa1c7cd73.png)
MCGS组态软件对ModBus RTU设备读写命令分析在PC机MCGS组态软件环境下,编制测试程序通过RS485接口对LG的PLC(ModBus RTU通讯协议)进行继电器、寄存器读写操作(命令类型1、0、3、4),同时利用广州致远LA1032逻辑分析仪对通讯信号进行判读、分析。
1、继电器类型—1输入继电器(只读)使用ModBus RTU通讯协议的命令2(Read Input Status)1-1、设备(PLC)地址=2;继电器地址=1;通道数量=102h(设备地址)+ 02h(命令)+ 00h(起始地址Hi)+ 00h(起始地址Lo)+ 00h(点数Hi)+ 01h(点数Lo)+XX h(CRC Hi)+ XX h(CRC Lo)02h(设备地址)+ 02h(命令)+ 01h(字节数)+ XX h(数据字节)+XX h(CRC Hi)+ XX h(CRC Lo)1-2、设备(PLC)地址=2;继电器地址=2;通道数量=302h(设备地址)+ 02h(命令)+ 00h(起始地址Hi)+ 01h(起始地址Lo)+ 00h(点数Hi)+ 03h(点数Lo)+XX h(CRC Hi)+ XX h(CRC Lo)02h(设备地址)+ 02h(命令)+ 01h(字节数)+ XX h(数据字节)+XX h(CRC Hi)+ XX h(CRC Lo)2、继电器类型—0输出继电器(读/写)2-1、读状态时使用ModBus RTU通讯协议的命令1(Read Coil Status),类似于ModBus RTU通讯协议的命令2(Read Input Status)设备(PLC)地址=2;继电器地址=3;通道数量=402h(设备地址)+ 01h(命令)+ 00h(起始地址Hi)+ 02h(起始地址Lo)+ 00h(点数Hi)+ 04h(点数Lo)+XX h(CRC Hi)+ XX h(CRC Lo)02h(设备地址)+ 01h(命令)+ 01h(字节数)+ XX h(数据字节)+XX h(CRC Hi)+ XX h(CRC Lo)2-2、写状态时使用ModBus RTU通讯协议的命令5(Force Single Coil)置位操作:设备(PLC)地址=1;继电器地址=65;通道数量=201h(设备地址)+ 05h(命令)+ 00h(起始地址Hi)+ 40h(起始地址Lo)+ ffh(写数据Hi)+ 00h(写数据Lo)+XX h(CRC Hi)+ XX h(CRC Lo)01h(设备地址)+ 05h(命令)+ 00h(起始地址Hi)+ 40h(起始地址Lo)+ ffh(写数据Hi)+ 00h(写数据Lo)+XX h(CRC Hi)+ XX h(CRC Lo)01h(设备地址)+ 05h(命令)+ 00h(起始地址Hi)+ 41h(起始地址Lo)+ ffh(写数据Hi)+ 00h(写数据Lo)+XX h(CRC Hi)+ XX h(CRC Lo)01h(设备地址)+ 05h(命令)+ 00h(起始地址Hi)+ 41h(起始地址Lo)+ ffh(写数据Hi)+ 00h(写数据Lo)+XX h(CRC Hi)+ XX h(CRC Lo) 2-3、写状态时使用ModBus RTU通讯协议的命令5(Force Single Coil)清零操作:设备(PLC)地址=1;继电器地址=65;通道数量=201h(设备地址)+ 05h(命令)+ 00h(起始地址Hi)+ 40h(起始地址Lo)+ 00h(写数据Hi)+ 00h(写数据Lo)+XX h(CRC Hi)+ XX h(CRC Lo)01h(设备地址)+ 05h(命令)+ 00h(起始地址Hi)+ 40h(起始地址Lo)+ 00h(写数据Hi)+ 00h(写数据Lo)+XX h(CRC Hi)+ XX h(CRC Lo)01h(设备地址)+ 05h(命令)+ 00h(起始地址Hi)+ 41h(起始地址Lo)+ 00h(写数据Hi)+ 00h(写数据Lo)+XX h(CRC Hi)+ XX h(CRC Lo)01h(设备地址)+ 05h(命令)+ 00h(起始地址Hi)+ 41h(起始地址Lo)+ 00h(写数据Hi)+ 00h(写数据Lo)+XX h(CRC Hi)+ XX h(CRC Lo)3、寄存器类型—3输入寄存器(只读)使用ModBus RTU通讯协议的命令4(Read Input Registers)3-1、设备(PLC)地址=3;寄存器地址=4;通道数量=403h(设备地址)+ 04h(命令)+ 00h(起始地址Hi)+ 02h(起始地址Lo)+ 00h(点数Hi)+ 04h(点数Lo)+XX h(CRC Hi)+ XX h(CRC Lo)03h(设备地址)+ 04h(命令)+ 08h(字节数)+ XX h(数据1字节Hi)+ XX h(数据1字节Lo)+ XX h(数据2字节Hi)+ XX h(数据2字节Lo)+ …XX h(数据4字节Hi)+ XX h(数据4字节Lo)+XX h(CRC Hi)+ XX h(CRC Lo)4、寄存器类型—4输入寄存器(只读)使用ModBus RTU通讯协议的命令3(Read Holding Registers),类似于ModBus RTU通讯协议的命令4(Read Input Registers)4-1、设备(PLC)地址=1;寄存器地址=2;通道数量=301h(设备地址)+ 03h(命令)+ 00h(起始地址Hi)+ 01h(起始地址Lo)+ 00h(点数Hi)+ 03h(点数Lo)+XX h(CRC Hi)+ XX h(CRC Lo)01h(设备地址)+ 03h(命令)+ 06h(字节数)+ XX h(数据1字节Hi)+ XX h(数据1字节Lo)+ XX h(数据2字节Hi)+ XX h(数据2字节Lo)+ XX h(数据3字节Hi)+ XX h(数据3字节Lo)+XX h(CRC Hi)+ XX h(CRC Lo)5、寄存器类型—4输入寄存器(读/写)5-1ModBus RTU通讯协议的命令3(ReadHolding Registers),写数ModBus RTU通讯协议的命令6(Preset Single Register)设备(PLC)地址=1;寄存器地址=5;通道数量=101h(设备地址)+ 03h(命令)+ 00h(起始地址Hi)+ 04h(起始地址Lo)+ 00h(点数Hi)+ 01h(点数Lo)+XX h(CRC Hi)+ XX h(CRC Lo)01h(设备地址)+ 03h(命令)+ 02h(字节数)+ XX h(数据字节Hi)+ XX h(数据字节Lo)+XX h(CRC Hi)+ XX h(CRC Lo)01h(设备地址)+ 06h(命令)+ 00h(起始地址Hi)+ 04h(起始地址Lo)+ XXh(数据Hi)+XXh(数据Lo)+XX h(CRC Hi)+ XX h(CRC Lo)01h(设备地址)+ 06h(命令)+ 00h(起始地址Hi)+ 04h(起始地址Lo)+ XXh(数据Hi)+XXh(数据Lo)+XX h(CRC Hi)+ XX h(CRC Lo)5-2ModBus RTU通讯协议的命令6 (Preset Single Register)设备(PLC)地址=1;寄存器地址=5;通道数量=201h(设备地址)+ 06h(命令)+ 00h(起始地址Hi)+ 04h(起始地址Lo)+ XXh(数据Hi)+XXh(数据Lo)+XX h(CRC Hi)+ XX h(CRC Lo)01h(设备地址)+ 06h(命令)+ 00h(起始地址Hi)+ 04h(起始地址Lo)+ XXh(数据Hi)+XXh(数据Lo)+XX h(CRC Hi)+ XX h(CRC Lo)01h(设备地址)+ 06h(命令)+ 00h(起始地址Hi)+ 05h(起始地址Lo) + XXh(数据Hi)+XXh(数据Lo)+XX h(CRC Hi)+ XX h(CRC Lo)01h(设备地址)+ 06h(命令)+ 00h(起始地址Hi)+ 05h(起始地址Lo) + XXh(数据Hi)+XXh(数据Lo)+XX h(CRC Hi)+ XX h(CRC Lo)。
MCGS与Modbus应用总结
![MCGS与Modbus应用总结](https://img.taocdn.com/s3/m/cbfaec0d03d8ce2f00662387.png)
1. Modbus是MODICON公司于1979年开发的一种通讯协议,是一种工业现场总线协议标准。
1996年施耐德公司推出了基于以太网TCP/IP的Modbus协议——ModbusTCP。
2.Modbus协议是一项应用层报文传输协议,包括ASCII、RTU、TCP三种报文类型,协议本身并没有定义物理层,只是定义了控制器能够认识和使用的消息结构,而不管他们是经过何种网络进行通信的。
3.标准的Modbus协议物理层接口有RS232、RS422、RS485和以太网口。
采用Master/Slave(主/从)方式通信。
4. Modbus是一种简单客户机/服务器应用协议,客户机能够向服务器发送请求,服务器分析请求,处理请求,向客户机发送应答。
当服务器对客户机响应时,它使用功能码域来指示正常(无差错)响应或者出现某种差错(称为异常响应)。
对于一个正常响应来说,服务器仅复制原始功能码。
对于异常响应,服务器将原始功能码的最高有效位设置逻辑1后返回。
5.Modbus协议帧格式:Modbus协议定义了一个与基础通信层无关的简单协议数据单元(PDU)。
在特定总线或网络上的Modbus协议映射能够在应用数据单元(ADU)上引入一些附加域。
Modbus通用帧格式如下:6.串行链路上的Modbus地址规则:❖主要是在RS485和RS232等物理接口上实现Modbus协议。
❖Modbus串行链路协议是一个主/从协议❖在Modbus链路层上客户机的功能由主站提供而服务器的功能由从站实现。
❖地址0为广播地址,Modbus主节点没有地址,子节点必须有一个唯一的地址❖Modbus通信由主节点发起,子节点在没有收到来自主节点的请求时,从不会发送数据。
❖子节点之间互不通信。
❖主节点在同一时刻只会发起一个Modbus事务处理。
7.ModbusTCP简介❖ModbusTCP是运行在TCP/IP上的Modbus 报文传输协议。
通过此协议,控制器相互之间通过网络(例如以太网)和其它设备之间可以通信。
MCGS常见问题解答
![MCGS常见问题解答](https://img.taocdn.com/s3/m/91595d0a54270722192e453610661ed9ad515528.png)
MCGS常见问题解答M C G S常见问题解答Company Document number:WTUT-WT88Y-W8BBGB-BWYTT-19998MCGS常见问题解答1、问题:plc和模块能否挂接在一个串口下回答:原则来说,只要串口参数(例如波特率、数据位、停止位等)相同就可以。
但是MCGS不推荐这样使用,因为协议内部可能存在潜在冲突,例如对PLC的某个寄存器的写操作的指令,有可能被误认为是对模块的某个操作,进而导致设备访问冲突。
2、问题:在没有网线的情况下怎样用IE访问本机上网络版的工程3、问题:MCGS的按钮提供了一个“按1松0”的功能。
但是如果有多个变量,如何实现回答:在按钮上的“按1松0”只能连接一个变量,如果要实现多个变量按1松0,必须使用“事件”。
在按钮上单击鼠标右键->“事件”,在MouseDown中让变量(可以是多个)等于1,在MouseUp中等于0。
对于以上的版本也可以在按钮的抬起脚本里让变量等于1,在按下脚本里让变量等于0。
4、问题:如何在我的组态中使用定制的驱动回答:把定制的驱动dll文件拷到D:\MCGS\Program\Drivers\用户定制设备目录下即可。
5、问题:历史表格不刷新什么问题回答:在MCGS中,窗口中的历史表格是不会自动刷新的。
历史表格只有在其窗口打开时才去访问数据库读数据,此后不再进行数据库的访问,除非组态时刷新窗口。
可以使用窗口名称.Refresh()函数来刷新窗口。
在循环策略或窗口的循环脚本中执行该函数。
6、问题:变量删不掉什么原因回答:先用“使用计数检查”命令检查变量使用情况,然后使用“清除未使用变量”就可以删除没有用到的变量。
如果某变量删不掉,说明此变量正在使用,不能删除。
7、问题:如果当前工程的点数比软件狗的点数大,会出现什么后果回答:在MCGS中记录了实时数据库变量的创建先后顺序,这样一来,如果超过软件狗限制的变量,在运行环境中,变量的值不会刷新,初始值是多少就永远保持不变。
MCGS入门笔记3-与S7200(master)Modbus-Rtu通讯
![MCGS入门笔记3-与S7200(master)Modbus-Rtu通讯](https://img.taocdn.com/s3/m/783de3667f21af45b307e87101f69e314332fad8.png)
MCGS⼊门笔记3-与S7200(master)Modbus-Rtu通讯MCGS⼊门笔记3-与S7200(master)Modbus-Rtu通讯本⽂介绍通过485串⼝连接MCGS与S7200进⾏Modbus-Rtu通讯,MCGS为从站,S7200为主站。
S7200这个⽼古董,就是活在⼝中的东西,要不是项⽬需要,真的想不到还会⽤到这个,组态软件Micro/WIN也是年代久远,所以写了另⼀篇⽂章,S7200⼊门笔记。
Modbus通讯协议是⼯业全球流⾏的通讯的协议了,相⽐⼤家都熟悉,不熟悉的建议先了解下,有助于项⽬实现,如果我发布了我⾃⼰写的modbus的草稿,你能在博客页⾯找到这篇⽂章。
前⾯两篇⽂章链接:1. 组态MCGS这⼀部分跟上篇⽂章⽅法类似,这⾥省略的地⽅可能在前⾯能找到1.1组态通讯驱动添加串⼝,主要设置端⼝号,这⾥的端⼝号跟MCGS的端⼝号⼀致对应添加设备,从站要选择modbus串⼝数据转发设备,设置从站地址和添加通讯变量分别添加I0.0-I0.7、Q0.0-Q0.7、WORD40001-WORD40008变量(下图对应的是前篇⽂章S7300的图,仅供参考)1.2画⾯组态添加按钮,⽤于改变变量按下图操作,图⽐较乱。
按钮设置数据对象为取反可能更容易调试。
添加矩形显⽰,⽤于显⽰变量变化,相当于LED添加滑动块,⽤于改变多位整数,40001滑条设置0-65535对应的是16位⽆符号字变量。
40002设置为0-255对应低字节。
画⾯显⽰效果如图。
⼆、组态S7-2002.1组态软件和硬件S7200PLC组态软件是STEP7_MicroWin32。
组态软件因为年代久远,并不友好,所以不好上⼿,很多注意的地⽅,⽐如通讯下载不⽀持以太⽹,另外Modbus通讯需要安装指令库,这部分教程可以看另⼀篇⽂章,S7200⼊门笔记硬件是CPU 224XP CN REL 02.012.2测试程序编程关于程序编程,西门⼦官⽅出了⽐较完整的教程,强烈推荐,⾥⾯还有例程Modbus RTU 主站功能编程1. 调⽤ Modbus RTU 主站初始化和控制⼦程序使⽤ SM0.0 调⽤ MBUS_CTRL 完成主站的初始化,并启动其功能控制:2. 调⽤ Modbus RTU 主站读写⼦程序MBUS_MSG,发送⼀个Modbus 请求我这⾥⽤的是v1.0的modbus旧版本库指令,与官⽅有⼀点不同,官⽅的v1.2如下图v1.2指令官⽅说明⽐较清楚a.EN使能:同⼀时刻只能有⼀个读写功能(即 MBUS_MSG)使能注意:建议每⼀个读写功能(即 MBUS_MSG)都⽤上⼀个MBUS_MSG 指令的 Done 完成位来激活,以保证所有读写指令循环进⾏(见例程)。
使用MODBUS协议与传感器、工控屏对接时碰到的问题
![使用MODBUS协议与传感器、工控屏对接时碰到的问题](https://img.taocdn.com/s3/m/20e6a2d3ba4cf7ec4afe04a1b0717fd5360cb2bc.png)
使用MODBUS协议与传感器、工控屏对接时碰到的问题当控制器作为可编程逻辑器件用于工控系统时,其需要与各种不同的传感器对接,同时需要与工控屏对接,以提供人机界面与用户进行交互;对接的传感器功能多种多样,有检测环境的温、湿度、二氧化碳、光照等的传感器。
有检测电压、电流、功率等的智能电表。
有用于智能灌溉用于检测雨量和水量的传感器。
...控制器与MODBUS设备的连接框图从传感器读取的数据的数据格式不同功能的传感器,其数据类型也可能不相同的。
控制器作为MODBUS主模式从作为从模式的传感器读取到数据之后,需要考虑采用什么样的数据格式对读取到的数据进行解析、处理、判断。
大部分情况下,数据是16位的无符号,但是也有一些特别的,比如:1.温度是16位的有符号数,一般温度会保留一位小数,比如从温度传感器读到的数据为65526时。
‘温度并不是6552.6°C,转为16位有符号数为-10,对应温度为-1°C。
2.有一次,帮客户对接RS485智能电表时,从智能电表读取到的有功功率出现了6000多kw的情况。
经排查,也是因为把本该是有符号数当作无符号数处理,另外智能电表在计算有功功率时没有做下限判断或者取绝对值处理,当小于0时置为0。
没有取绝对值处理,万一用户将电缆穿过电流互感器时,穿错了方向,导致读到的数据都是负数。
需要采集数据方做取绝对值的处理。
3.环境光照的动态范围很大,最低可能到1lux,最高可能到10*9次方lux,如下:黑夜:0.001—0.02lux;月夜:0.02—0.3lux;阴天室内:5—50lux;阴天室外:50—500lux;晴天室内:100—1000lux;夏季中午太阳光下的照度:约为10*9次方;因此,光照的数据格式为32位的无符号数。
4.有些水量传感器的数据为16位或者32位的BCD数。
以上,从传感器读取到的数据需要根据传感器的数据格式定义进行数据转换。
工控屏和传感器接到同一个RS485总线一般情况下,控制器工作于MODBUS主模式,传感器工作于MODBUS从模式。
MODBUS主站通讯时的注意事项
![MODBUS主站通讯时的注意事项](https://img.taocdn.com/s3/m/3589943c6529647d2628523d.png)
有关 TSXSCP114卡及TSXSCY21601/TSXSCY11601 模块在Premium/Micro PLC 中作为MODBUS主站通讯时的注意事项目录1.前言 (2)2.TSXSCPCM4030的接线 (2)3.TSXSCYCM6030的接线 (3)4.ANSWER DELAY 的参数设置 (4)5.NUMBER OF RETRIES 参数设置 (5)6.CHARACTER DELAY 参数设置 (5)7.通讯管理字 (6)7.1详细的错误代码: (7)7.2超时时间设置 (8)8.通讯函数调用 (9)9.其他注意事项 (10)1. 前言近来发现有些客户反映在应用SCP114或SCY21601/ SCY11601模块作为MODBUS (RTU模式)主站与其他从站设备以RS485方式通讯时,有通讯不畅或不能采集到数据的情况。
经对部分客户的现场调查,发现有部分原因是由于对SCP114或SCY模块的的配置及应用程序编写不当而引起。
本文指出其中一些需要注意的问题,望大家在以后使用SCP114卡或SCY21601/SCY11601时注意一下。
2. TSXSCPCM4030的接线应用TSXSCP114卡作MODBUS RTU RS485方式通讯时,采用的连接的电缆应选择TSXSCPCM4030电缆。
原先手册中的接线如下:请注意的新订的TSXSCPCM4030电缆的颜色编码已经改变为如下:当TSXSCP114卡连接作为网络中间节点时,只需要将绿线(D-)与棕线(D+)接入网络。
但当TSXSCP114卡连在未端应按未端的接法接线,如下图所示:即在未端时,加上终端电阻及上拉下拉电阻,以提高线路的通讯性能。
对于最后一个从站也应加上终端电阻以防止信号反射引起通讯不稳定。
有些从站上本身带有终端电阻可以通过拔码设置,有些从站设备本身没带终端电阻需要并接一个120欧姆左右的电阻,具体情况可视最后一个从站设备而定。
MCGS触摸屏与电脑调试软件modbus通讯
![MCGS触摸屏与电脑调试软件modbus通讯](https://img.taocdn.com/s3/m/525a0c5448d7c1c708a14575.png)
MCGS触摸屏与电脑调试软件modbus通讯
一、硬件准备工作
1、有一个带串口的电脑或者USB转串口也可以;
2、有一个MCGS触摸屏TPC7062KX或者带RS232协议的MCGS触摸
屏;
3、一条通讯线,触摸屏的DP9母头和电脑DP9母头,2和3交叉相连,
5和5针相连即如图一所示;
图七、添加0区通道
0区通道,在电脑端即能读也能写,
4、一条触摸屏下载线。
二、软件准备工作
1、触摸屏编程软件(MCGS_嵌入版7.6(03.0001)完整安装包)其他版
本也可,MCGS官网可以下载;
2、串口调试助手sscom32;
3、cnc校验码生成器;
三、触摸屏编写及下载
1、触摸屏编程
图四、串口数据转发窗口
五、删除设备通道
图六、ቤተ መጻሕፍቲ ባይዱ加1区设备通道
添加1区通道,1区在电脑端只能读取触摸屏的数据而不能写
MCGS组态软件对ModBus RTU设备读写命令分析
![MCGS组态软件对ModBus RTU设备读写命令分析](https://img.taocdn.com/s3/m/d97ed97931b765ce0508146a.png)
MCGS组态软件对ModBus RTU设备读写命令分析在PC机MCGS组态软件环境下,编制测试程序通过RS485接口对LG的PLC(ModBus RTU通讯协议)进行继电器、寄存器读写操作(命令类型1、0、3、4),同时利用广州致远LA1032逻辑分析仪对通讯信号进行判读、分析。
1、继电器类型—1输入继电器(只读)使用ModBus RTU通讯协议的命令2(Read Input Status)1-1、设备(PLC)地址=2;继电器地址=1;通道数量=102h(设备地址)+ 02h(命令)+ 00h(起始地址Hi)+ 00h(起始地址Lo)+ 00h(点数Hi)+ 01h(点数Lo)+XX h(CRC Hi)+ XX h(CRC Lo)02h(设备地址)+ 02h(命令)+ 01h(字节数)+ XX h(数据字节)+XX h(CRC Hi)+ XX h(CRC Lo)1-2、设备(PLC)地址=2;继电器地址=2;通道数量=302h(设备地址)+ 02h(命令)+ 00h(起始地址Hi)+ 01h(起始地址Lo)+ 00h(点数Hi)+ 03h(点数Lo)+XX h(CRC Hi)+ XX h(CRC Lo)02h(设备地址)+ 02h(命令)+ 01h(字节数)+ XX h(数据字节)+XX h(CRC Hi)+ XX h(CRC Lo)2、继电器类型—0输出继电器(读/写)2-1、读状态时使用ModBus RTU通讯协议的命令1(Read Coil Status),类似于ModBus RTU通讯协议的命令2(Read Input Status)设备(PLC)地址=2;继电器地址=3;通道数量=402h(设备地址)+ 01h(命令)+ 00h(起始地址Hi)+ 02h(起始地址Lo)+ 00h(点数Hi)+ 04h(点数Lo)+XX h(CRC Hi)+ XX h(CRC Lo)02h(设备地址)+ 01h(命令)+ 01h(字节数)+ XX h(数据字节)+XX h(CRC Hi)+ XX h(CRC Lo)2-2、写状态时使用ModBus RTU通讯协议的命令5(Force Single Coil)置位操作:设备(PLC)地址=1;继电器地址=65;通道数量=201h(设备地址)+ 05h(命令)+ 00h(起始地址Hi)+ 40h(起始地址Lo)+ ffh(写数据Hi)+ 00h(写数据Lo)+XX h(CRC Hi)+ XX h(CRC Lo)01h(设备地址)+ 05h(命令)+ 00h(起始地址Hi)+ 40h(起始地址Lo)+ ffh(写数据Hi)+ 00h(写数据Lo)+XX h(CRC Hi)+ XX h(CRC Lo)01h(设备地址)+ 05h(命令)+ 00h(起始地址Hi)+ 41h(起始地址Lo)+ ffh(写数据Hi)+ 00h(写数据Lo)+XX h(CRC Hi)+ XX h(CRC Lo)01h(设备地址)+ 05h(命令)+ 00h(起始地址Hi)+ 41h(起始地址Lo)+ ffh(写数据Hi)+ 00h(写数据Lo)+XX h(CRC Hi)+ XX h(CRC Lo) 2-3、写状态时使用ModBus RTU通讯协议的命令5(Force Single Coil)清零操作:设备(PLC)地址=1;继电器地址=65;通道数量=201h(设备地址)+ 05h(命令)+ 00h(起始地址Hi)+ 40h(起始地址Lo)+ 00h(写数据Hi)+ 00h(写数据Lo)+XX h(CRC Hi)+ XX h(CRC Lo)01h(设备地址)+ 05h(命令)+ 00h(起始地址Hi)+ 40h(起始地址Lo)+ 00h(写数据Hi)+ 00h(写数据Lo)+XX h(CRC Hi)+ XX h(CRC Lo)01h(设备地址)+ 05h(命令)+ 00h(起始地址Hi)+ 41h(起始地址Lo)+ 00h(写数据Hi)+ 00h(写数据Lo)+XX h(CRC Hi)+ XX h(CRC Lo)01h(设备地址)+ 05h(命令)+ 00h(起始地址Hi)+ 41h(起始地址Lo)+ 00h(写数据Hi)+ 00h(写数据Lo)+XX h(CRC Hi)+ XX h(CRC Lo)3、寄存器类型—3输入寄存器(只读)使用ModBus RTU通讯协议的命令4(Read Input Registers)3-1、设备(PLC)地址=3;寄存器地址=4;通道数量=403h(设备地址)+ 04h(命令)+ 00h(起始地址Hi)+ 02h(起始地址Lo)+ 00h(点数Hi)+ 04h(点数Lo)+XX h(CRC Hi)+ XX h(CRC Lo)03h(设备地址)+ 04h(命令)+ 08h(字节数)+ XX h(数据1字节Hi)+ XX h(数据1字节Lo)+ XX h(数据2字节Hi)+ XX h(数据2字节Lo)+ …XX h(数据4字节Hi)+ XX h(数据4字节Lo)+XX h(CRC Hi)+ XX h(CRC Lo)4、寄存器类型—4输入寄存器(只读)使用ModBus RTU通讯协议的命令3(Read Holding Registers),类似于ModBus RTU通讯协议的命令4(Read Input Registers)4-1、设备(PLC)地址=1;寄存器地址=2;通道数量=301h(设备地址)+ 03h(命令)+ 00h(起始地址Hi)+ 01h(起始地址Lo)+ 00h(点数Hi)+ 03h(点数Lo)+XX h(CRC Hi)+ XX h(CRC Lo)01h(设备地址)+ 03h(命令)+ 06h(字节数)+ XX h(数据1字节Hi)+ XX h(数据1字节Lo)+ XX h(数据2字节Hi)+ XX h(数据2字节Lo)+ XX h(数据3字节Hi)+ XX h(数据3字节Lo)+XX h(CRC Hi)+ XX h(CRC Lo)5、寄存器类型—4输入寄存器(读/写)5-1ModBus RTU通讯协议的命令3(ReadHolding Registers),写数ModBus RTU通讯协议的命令6(Preset Single Register)设备(PLC)地址=1;寄存器地址=5;通道数量=101h(设备地址)+ 03h(命令)+ 00h(起始地址Hi)+ 04h(起始地址Lo)+ 00h(点数Hi)+ 01h(点数Lo)+XX h(CRC Hi)+ XX h(CRC Lo)01h(设备地址)+ 03h(命令)+ 02h(字节数)+ XX h(数据字节Hi)+ XX h(数据字节Lo)+XX h(CRC Hi)+ XX h(CRC Lo)01h(设备地址)+ 06h(命令)+ 00h(起始地址Hi)+ 04h(起始地址Lo)+ XXh(数据Hi)+XXh(数据Lo)+XX h(CRC Hi)+ XX h(CRC Lo)01h(设备地址)+ 06h(命令)+ 00h(起始地址Hi)+ 04h(起始地址Lo)+ XXh(数据Hi)+XXh(数据Lo)+XX h(CRC Hi)+ XX h(CRC Lo)5-2ModBus RTU通讯协议的命令6 (Preset Single Register)设备(PLC)地址=1;寄存器地址=5;通道数量=201h(设备地址)+ 06h(命令)+ 00h(起始地址Hi)+ 04h(起始地址Lo)+ XXh(数据Hi)+XXh(数据Lo)+XX h(CRC Hi)+ XX h(CRC Lo)01h(设备地址)+ 06h(命令)+ 00h(起始地址Hi)+ 04h(起始地址Lo)+ XXh(数据Hi)+XXh(数据Lo)+XX h(CRC Hi)+ XX h(CRC Lo)01h(设备地址)+ 06h(命令)+ 00h(起始地址Hi)+ 05h(起始地址Lo)+ XXh(数据Hi)+XXh(数据Lo)+XX h(CRC Hi)+ XX h(CRC Lo)01h(设备地址)+ 06h(命令)+ 00h(起始地址Hi)+ 05h(起始地址Lo)+ XXh(数据Hi)+XXh(数据Lo)+XX h(CRC Hi)+ XX h(CRC Lo)。
MODBUS主站通讯时地注意事项
![MODBUS主站通讯时地注意事项](https://img.taocdn.com/s3/m/9037f0736137ee06eff918e8.png)
有关 TSXSCP114卡及TSXSCY21601/TSXSCY11601 模块在Premium/Micro PLC 中作为MODBUS主站通讯时的注意事项目录1.前言 (2)2.TSXSCPCM4030的接线 (2)3.TSXSCYCM6030的接线 (3)4.ANSWER DELAY 的参数设置 (4)5.NUMBER OF RETRIES 参数设置 (5)6.CHARACTER DELAY 参数设置 (5)7.通讯管理字 (6)7.1详细的错误代码: (7)7.2超时时间设置 (8)8.通讯函数调用 (9)9.其他注意事项 (10)1.前言近来发现有些客户反映在应用SCP114或SCY21601/ SCY11601模块作为MODBUS (RTU模式)主站与其他从站设备以RS485方式通讯时,有通讯不畅或不能采集到数据的情况。
经对部分客户的现场调查,发现有部分原因是由于对SCP114或SCY模块的的配置及应用程序编写不当而引起。
本文指出其中一些需要注意的问题,望大家在以后使用SCP114卡或SCY21601/SCY11601时注意一下。
2.TSXSCPCM4030的接线应用TSXSCP114卡作MODBUS RTU RS485方式通讯时,采用的连接的电缆应选择TSXSCPCM4030电缆。
原先手册中的接线如下:请注意的新订的TSXSCPCM4030电缆的颜色编码已经改变为如下:当TSXSCP114卡连接作为网络中间节点时,只需要将绿线(D-)与棕线(D+)接入网络。
但当TSXSCP114卡连在未端应按未端的接法接线,如下图所示:即在未端时,加上终端电阻及上拉下拉电阻,以提高线路的通讯性能。
对于最后一个从站也应加上终端电阻以防止信号反射引起通讯不稳定。
有些从站上本身带有终端电阻可以通过拔码设置,有些从站设备本身没带终端电阻需要并接一个120欧姆左右的电阻,具体情况可视最后一个从站设备而定。
3. TSXSCYCM6030的接线应用TSXSCY21601 / TSXSCY11601通讯模块 作MODBUS RTU RS485方式通讯时应采用TSXSCYCM6030通讯电缆,其不作为未端使用时接线方式如下:SCP1142#Temperature meter3#protection1# Power meterPremium PLCC P U若作未端连接时则应如下方式连接:注意:上述图中D(A)为D-, D(B)为D+。
MCGS与变频器的MODBUSRTU通讯
![MCGS与变频器的MODBUSRTU通讯](https://img.taocdn.com/s3/m/977c1b89168884868662d653.png)
MCGS与英威腾变频器通讯之阳早格格创做
设备:MCGS TPC1062K 英威腾变频器100A
协议:modbus rtu协议
1.硬件参数树立
变频器
2.MCGS参数树立
(1)MCGS增加设备
TPC1062K 有一个集成COM心,RS232是com1心,RS485是com2心,此处是modbus rtu 485通讯,应采用COM2.通讯参数19200,8,1,奇校验
(2)MODBUS RTU启动树立
设备天点1,分块支集办法1按连绝天点分块
注意:校验办法,从矮到下校验,可则数据堕落.
简略所有默认的通讲天点
完毕以上树立便不妨通讯了,为了考验是可通讯便采与“通讯状态”去考验.
通讯状态隐现:0 通讯平常
1收支数据校验过失
2不支到数据
3交支数据校验过失(校验办法导致).
3,数据树立
以上天点定义是十六进造的,需要转移成十进造的,那里的天点是从0启初的,所以转移成十进造后要加一.
(1),通讯统造下令
1000H转移成十进造是
4096 ,加1是4097,以
正转为例
(2),变频器状态,以
正转运止中为例
(3)通讯设定值。