下面就S系列I/O前端与组态王的直接连接予以说明, S系列I/O前端与组态王的连接是一项不复杂的连接工作,基本上有如下几步:设置S系列I/O前端;在组态王的当前运行项目下定义计算机的通讯口;定义连接的外部设备(如S系列I/O前端的S1108);定义每个I/O通道对应的变量地址及工况参数;变量的动画连接等工作。
连接要点及注意事项
● 运行组态王的计算机与S系列I/O前端的通讯连接方式为主从式,计算机为主,S系列I/O前端为从。
● 确定组态王与S系列I/O前端的通讯速率,例如9600bps。
● 普通PC机串行口为RS232,S系列I/O前端的通讯接口为RS485,因此在计算机侧应加装RS232/RS485转换器(如本公司的S9101)。
● 用户在连接之前,应使用S系列I/O前端设置测试程序《XMH_SIOSET》,将S系列I/O前端的站址设置好,并将通讯速率设置为约定好的通讯速率,通信协议为MODBUS。对于模拟量而言,整型请选择为MODBUS(I),浮点请选择为MODBUS(F1)或MODBUS(F2)。S系列I/O前端的其它参数,用户根据现场实际工况自行设置。
● 用户可使用S系列I/O前端设置测试程序《XMH_SIOSET》,对已连接完毕的系统硬件环境进行测试,以确定硬件连接无误,并可进行相应的功能和精度核查。
● 如有多个S系列I/O前端请用RS485总线(屏蔽双绞线),将所有S系列I/O前端串接在一起,再与计算机侧的RS485接口相连。
● 计算机与S系列I/O前端的通讯电缆连接对应表(以S9101单路隔离RS232/RS485转换器为例)
RS232通讯线 计算机的COM 口(九芯) S9101的RS232侧
2 (RXD) -------------- 3 (TXD )
3 (TXD) -------------- 2 (RXD)
5 (GND) -------------- 5 (GND)
RS485通讯线 S9101的RS485侧 S系列I/O前端的接线端子
1号站 2号站 N号站
1 (RS485 A ) --- 37 ----- 37 -------------- 37 (RS485 A )
2 (RS485 B ) --- 36 ----- 36 -------------- 36 (RS485 B )
3 (RS485 地) --- 35 ----- 35 -------------- 35 (RS485 地)
以组态王连接4个S系列I/O前端的某工程为例,S 系列I/O前端型号分别为S1104、S1108、S1316、S1504,对应站址为1、2、3、4,通讯协议对应为MODBUS(I)、MODBUS(F2)、MODBUS、MODBUS,通讯速率为9600 bps,连接于COM1口。
● 在组态王环境中,定义PC机与S系列I/O前端相连接的通讯口(以串口COM1为例)打开新建工程,出现工程浏览器画面,从左侧系统树中选择“设备”,处双击“COM1”,出现设置串口COM1画面(如图1),按照与S系列I/O前端约定的通讯速率,设置COM1口。设置如下:通讯速率为约定(例如9600bps)、无校验、8位数据位、1位停止位、RS485通讯方式。
● 在组态王环境中,定义PC机通讯口下的连接设备(以串口COM1为例)
S系列I/O前端的通讯协议为标准的莫迪康公司的MODBUS—RTU协议,协议的具体细节用户可忽略,确定各种输入输出信号对应的寄存器地址即可完成输入输出的管理。
定义外部设备步骤如下:
通讯口设置完成后,点击画面右侧的“新建”,出现设备配置向导(如图2)画面,按提示将COM1口连接设备设置为PLC的莫迪康MODBUS(RTU)的串行方式(S系列I/O前端的通讯协议为标准的莫迪康公司的MODBUS—RTU协议),命名第一个外部连接设备如“S1104A”,在设备地址中输入所要连接的S系列I/O前端的通讯站址(如所连接的S1104的通讯地址为01,则将连接设备“S1104”的设备地址中输入1),串行口连接为COM1,通信故障恢复参数可使用系统默认。重复以上操作对剩下的设备进行设置,外部连接设备命名可分别为“S1108A”、“S1316A”、
“S1504A”,通讯站址分别对应为2、3、4。
● 通道参数定义 在工程浏览器的左侧树形结构中选择“数据库”中“数据词典”,右侧双击“新建”,弹出定义变量对话框(如图3)。因各种设备的信号输入、输出类型不同,现对各种类型输入、输出信号的参数定义分别说明:
整型模拟量输入
整型模拟量输入对应的寄存器地址为3xxxx,从30001开始,每个寄存器地址对应一个整型模拟量输入通道,N个通道占用N个寄存器,到30000+N为止。
以S1104为例,因为其通讯协议为MODBUS(I)。S1104要求定义4个变量,名称可分别设置为S1104-1、S1104-2、S1104-3、S1104-4;4个变量的变量类型全部设置为“I/O实数”;连接设备全部为“S1104A”;4个变量各占用1个寄存器,寄存器地址是连续的,地址分别为 30001、30002、30003、30004;数据类型全部为“INT”;读写属性为“只读”;按照实际的工程量标度设置变量的最大、最小值,工程单位、报警值、历史数据是否记录以及报警安全区、允许DDE数据交换等,将以上数据如实填写到需定义的变量中。(参见图3)。
浮点模拟量输入
浮点模拟量输入对应的寄存器地址为8xxxx,从80001开始,每两个寄存器地址对应一个浮点模拟量输入通道,N个通道占用2N个寄存器,到80000+2N为止。。
MODBUS(F1):MODBUS(F1)为发送数据为浮点数的块传送MODBUS协议,每通道数据占用4字节(例0.41的浮点格式为0X3ED1EB85,发送顺序为0XEB,0X85,0X3E,0XD1)。
MODBUS(F2):同MODBUS(F1),只是浮点数据发送顺序不同(例0.41的浮点格式为0X3ED1EB85,发送顺序为0X3E,0XD1,0XEB,0X85)。
以S1108为例,其通讯协议为MODBUS(F2)。S1108有8个模拟量输入通道,名称可分别设置为S1108-1、S1108-2、S1108-3、S1108-4、S1108-5、S1108-6、S1108-7、S1108-8;8个通道对应变量的变量类型设置全部为“I/O实数”;连接设备全部为“S1108A”;由于浮点数据要占用两个寄存器,所以8个变量的寄存器地址是间隔的,分别为 80001、80003、80005、80007、80009、80011、80013、80015;数据类型全部为“FLOAT”;读写属性为“只读”;按照实际的工程量标度设置变量的最大、最小值,工程单位、报警值、历史数据是否记录以及报警安全区、允许DDE数据交换等,将以上数据如实填写到需定义的变量中。
当通讯协议为MODBUS(F1)时,需另外设置一个I/O变量,寄存器为SWAP,数据类型为UINT,读写属性。
开关量输入
开关量输入对应的寄存器地址为1xxxx,从10001开始,每个寄存器地址对应一个开关量输入通道,N个通道占用N个寄存器,到10000+N为止。
以S1316为例(16个开关量输入信号),名称可分别设置为 S1316-1、S1316-2······S1316-16;变量类型全部设置为“I/O离散”;连接设备全部为“S1316A”;16个变量各占用1个寄存器,寄存器地址是连续的,地址分别为 10001、10002、······10016;数据类型为 “bit”;读写属性为“只读”;按照实际的工程量标度设置变量的起始状态、允许DDE数据交换等,将以上数据如实填写到需定义的变量中。
开关量输出
开关量输出对应的寄存器地址为0xxxx,从00001开始,每个寄存器地址对应一个开关量输出通道,N个通道占用N个寄存器,到00000+N为止。
以S1316为例(8个开关量输出信号)。参数定义基本同开关量输入,不同之处为读写属性为“读写”;8个变量的寄存器地址为00001、00002······00008,数据类型为“bit”,按照实际的工程量标度设置变量的起始状态、允许DDE数据交换等,将以上数据如实填写到需定义的变量中。对S1504的开关量输出信号定义基本同S1316的定义,不同的是“连接设备名称”和“变量名称”。
模拟量输出
模拟量输出对应的寄存器地址为4xxxx,从40001开始,每个寄存器地址对应一个模拟量输入通道,N个通道占用N个寄存器,到40000+N为止。
以S1504为例(4个模拟量输出)。参数定义基本同整点模拟量输入,不同之处为变量名称不同;读写属性设置为“只写”或“读写”;4个变量的寄存器地址分别为40001、40002、40003、40004;连接设备全部为“S1504A”。
完成以上步骤后,即完成了组态王与S系列I/O前端的设备定义和通讯连接准备工作,其它进行动画连接及完成组态王的更高级功能,请参见亚控公司的《组态王使用手册》。
2026-01-30
2026-01-30
2026-01-30
2026-01-30
2026-01-30
2026-02-02
2026-02-03
10月31日,以 “解锁・下一步” 为主题的2025红帽论坛暨媒体沟通会在北京JW万豪酒店盛大召开。红帽通过核心主旨演讲、重磅新品发布、权威报告解读及高层对话,全方位展现了其以开源技术破解行业痛点、引领企业数字化转型的实力与愿景,为 AI 时代的企业创新注入强劲动力。
作者:何发
评论
加载更多