快速发布求购| | | | | 加微群|
关注我们
本站客户服务

线上客服更便捷

仪表网官微

扫一扫关注我们

|
客户端
仪表APP

安卓版

仪表手机版

手机访问更快捷

仪表小程序

更多流量 更易传播

产品求购企业资讯会展供应

发布询价单
仪表网>产品库>系统集成及工控>PAC/PLMC>I/O模块>通过以太网为控制器扩展功能模块 I/O模块
  • 通过以太网为控制器扩展功能模块 I/O模块

通过以太网为控制器扩展功能模块 I/O模块

参考价
面议
具体成交价以合同协议为准
  • 型号
  • 品牌
  • 所在地深圳市
  • 更新时间2022-10-17
  • 厂商性质经销商
  • 入驻年限1
  • 实名认证已认证
  • 产品数量19
  • 人气值937
客服在线 索取相关资料 在线询价

联系方式:刘经理 查看联系方式

联系我们时请说明是 仪表网 上看到的信息,谢谢!

同类产品

深圳市一天广联科技有限公司是研发生产自学习式Modbus多主机通讯网关、多网口串口服务器、高性能can-bus网关、以太网IO模块的专业厂家。公司具有十五年代工及生产经验,对生产销售的所有产品均拥有自主知识产权。

点击展示更多内容
产地国产 加工定制
通过以太网为控制器扩展功能模块
AiMaker、AiMaster产品可以通过自身以太网网口来连接并控制远程IO模块、远程模拟量输出模块、远程模拟量输入模块等各类兼容的模块。
通过以太网为控制器扩展功能模块 I/O模块 产品详情

一、    概述通过以太网为控制器扩展功能模块

AiMaker、AiMaster产品可以通过自身以太网网口来连接并控制远程IO模块、远程模拟量输出模块、远程模拟量输入模块等各类兼容的模块。

模块扩展功能通过100Mpbs以太网实现,通讯速度比传统PLC扩展方式要快10至100倍。在可连接模块数量上也远超传统的PLC方案。通过以太网为控制器扩展功能模块

本方案采用标准的Modbus TCP协议作为扩展协议,*使用以太网和TCP/IP方式进行通讯,并且可以跨网段通讯。

在使用网线连接时,主机与扩展模块之间的距离可以达到100米。在使用以太网光纤通讯时,两者稳定通讯距离可达几十公里。如果可以容忍较大的通讯延迟,也可以使用WiFi、手机网、电力猫等等各类线路进行扩展。

目前所有的扩展模块均为多网口设计,多个扩展模块可以通过以太网手拉手分支、级联,实现自组以太网,无需单独购买交换机。

每个控制器多可驱动8个IO模块、8个模拟量输出模块、8个模拟量采集模块,对模块的通道数量没有限制。

兼容的远程IO模块:GL-IO4(4路IO),GL-IO8(8路IO),GL-IO32(32路IO)

兼容的远程模拟量输出模块:GL-DAC3,3路模拟量输出产品。此模块有4个型号,分别支持0至20mA输出,0至10v输出,0至5V输出,PWM输出。

兼容的远程模拟量采集模块:GL-EXT600,同时支持8路模拟量采集和8路IO,此模块有3个型号,分别支持0至20mA采集,0至10v采集,0至5V采集。

 

本文的示例代码均可在免费编程软件xframe中查看运行。单击下载xframe编程软件

 

二、    示例连接图

下图演示了,为一台AiMaker600扩展1个3路模拟量输出模块、1个8路开关量输入输出模块的连接方式。
将以此图为例子,分别描述控制模拟量输出、控制IO的方法。

 

 

三、    控制器模块扩展服务描述

1、    TCP/IP连接方式
控制器与扩展模块之间采用TCP/IP协议通讯,控制器作为Client连接至Server模式的扩展模块。扩展通讯协议为Modbus TCP。使用502通讯端口。

2、    模块扩展函数库
extdac:扩展模拟量输出函数库
extdio:扩展IO函数库
extadc:扩展模拟量采集函数库

3、    启动扩展模块服务函数
启动扩展模拟量输出服务:extdac.startextdac(0,"192.168.192.252",502,20,5000,15);
启动扩展IO模块服务:extdio.startextdio(0,"192.168.192.252",502,20,5000,15);
启动扩展模拟量采集模块服务:extadc.startextadc(0,"192.168.192.252",502,20,5000,15);
启动扩展模块服务函数在整个程序中,只需调用一次即可。
4、    使用方法
使用方法非常简单,以控制远程IO模块继电器输出为例子进行简要说明

下行代码startextdio启动扩展远程IO服务启动,远程IO的IP为192.168.192.102,端口为502。
extdio.startextdio(0,"192.168.192.102",502,20,5000,15);

正确启动服务后,即可调用继电器控制函数,无需其他操作了。
seton设置远程IO模块的第1路继电器为接通
extdio.seton(0,0)
setoff设置远程IO模块的第1路继电器为断开
extdio.setoff(0,0)

更详细例子请参考下面的说明

5、    可靠性

控制器模块扩展服务可以自动连接扩展模块,并且可以自动检测与扩展模块的通讯情况,如果检测出与扩展模块通讯中断,将会自动的不断尝试重连,直到成功连接模块。整个过程是全自动的,无需用户干预。
 

四、    控制远程模拟量输出例子。

1、    控制4至20mA模拟量输出
 

print("演示连接远程DAC模块,并进行控制,本例子测试的是0~20mA输出。")

--startextdac启动扩展远程模拟量输出服务
--参数1:服务索引,有效值为0~7,可同时支持控制8个远程DAC输出模块。
--参数2:远程ip,为远程IO模块的IP地址
--参数3:远程端口,为远程IO模块的Modbus TCP协议端口。
--参数4:接收超时,为秒值,达到此超时未能收到远程模块返回数据,将判定此连接故障
--后台服务将断开此连接,并在等待“重试连接间隔”后,重新尝试连接远程IO模块。
--参数5:重试连接间隔,为毫秒值。
--参数6:保持连接的周期,为秒值,后台服务将以此间隔不断的向远程DAC模块发送报文,以测试通讯线路是否正常。
--此参数为秒,应小于远程DAC模块的TCP/IP接收超时参数。
extdac.startextdac(0,"192.168.192.101",502,20,5000,15);
local setvalue=0.0
while(true) do 
--setdac420ma设置扩展模拟量输出0至20mA值
--参数1:扩展远程模拟量输出服务索引,此索引应由startextdac函数启动后方可使用。
--参数2:设置的模拟量输出值,有效值为0至20。
--参数3:的模拟量输出通道,为0起,0为个模拟量输出通道。
--返回:成功返回大于0的值,否则为失败

--循环设置远程DAC模块的通道1输出0~20mA电流,每次增加1mA。

res=extdac.setdac420ma(0,setvalue,0)
print(string.format("rnsetdac420ma 执行结果%d", res));

setvalue=setvalue+1
if setvalue>20.0 then
setvalue=0
end

syslib.ossleep(2000);

end  
end  

 

2、    控制0至10V模拟量输出
 

print("演示连接远程DAC模块,并进行控制,本例子测试的是0~10V输出。")

--startextdac启动扩展远程模拟量输出服务
--参数1:服务索引,有效值为0~7,可同时支持控制8个远程DAC输出模块。
--参数2:远程ip,为远程IO模块的IP地址
--参数3:远程端口,为远程IO模块的Modbus TCP协议端口。
--参数4:接收超时,为秒值,达到此超时未能收到远程模块返回数据,将判定此连接故障
--后台服务将断开此连接,并在等待“重试连接间隔”后,重新尝试连接远程IO模块。
--参数5:重试连接间隔,为毫秒值。
--参数6:保持连接的周期,为秒值,后台服务将以此间隔不断的向远程DAC模块发送报文,以测试通讯线路是否正常。
--此参数为秒,应小于远程DAC模块的TCP/IP接收超时参数。
extdac.startextdac(0,"192.168.192.101",502,20,5000,15);
local setvalue=0.0
while(true) do 
--setdac010v设置扩展模拟量输出0至10V值
--参数1:扩展远程模拟量输出服务索引,此索引应由startextdac函数启动后方可使用。
--参数2:设置的模拟量输出值,有效值为0至10。
--参数3:的模拟量输出通道,为0起,0为个模拟量输出通道。
--返回:成功返回大于0的值,否则为失败

--循环设置远程DAC模块的通道1输出0~10v电压,每次增加1v。

res=extdac.setdac010v(0,setvalue,0)
print(string.format("rnsetdac010v 执行结果%d", res));
setvalue=setvalue+1
if setvalue>10.0 then
setvalue=0
end

syslib.ossleep(2000);

end  

 

3、  读取模拟量输出值

 

print("演示连接远程DAC模块,设置0~20mA输出值,并回读输出值。")

--startextdac启动扩展远程模拟量输出服务
--参数1:服务索引,有效值为0~7,可同时支持控制8个远程DAC输出模块。
--参数2:远程ip,为远程IO模块的IP地址
--参数3:远程端口,为远程IO模块的Modbus TCP协议端口。
--参数4:接收超时,为秒值,达到此超时未能收到远程模块返回数据,将判定此连接故障
--后台服务将断开此连接,并在等待“重试连接间隔”后,重新尝试连接远程IO模块。
--参数5:重试连接间隔,为毫秒值。
--参数6:保持连接的周期,为秒值,后台服务将以此间隔不断的向远程DAC模块发送报文,以测试通讯线路是否正常。
--此参数为秒,应小于远程DAC模块的TCP/IP接收超时参数。
extdac.startextdac(0,"192.168.192.101",502,20,5000,15);
local setvalue=0.0
while(true) do 
--setdac420ma设置扩展模拟量输出0至20mA值
res=extdac.setdac420ma(0,setvalue,0)
print(string.format("rnsetdac420ma 执行结果%d", res));
setvalue=setvalue+1
if setvalue>20.0 then
setvalue=0
end
--readdac420ma读取远程DAC模块0~20mA输出通道的当前值
--参数1:扩展远程模拟量输出服务索引,此索引应由startextdac函数启动后方可使用。
--参数2:读取的0~20mA模拟量输出的通道号,为0起,0读取路模拟量输出通道。
--返回:返回1:成功返回大于0,否则失败,返回2:当前模拟量输出的值,为浮点数。
res,dacoutvalue=extdac.readdac420ma(0,0)

if res>0 then
   print(string.format("rnreaddac420ma 执行结果:%d,通道值:%2.2f",res,dacoutvalue));  
end
syslib.ossleep(2000);

end  
 

 

 

四、    控制远程IO的例子。

 

1、控制远程IO的继电器输出

 

print("演示通过以太网控制远程IO模块的1路开关量输出")

--startextdio启动扩展远程IO服务
--参数1:服务索引,有效值为0~7,可同时支持控制8个远程IO模块。
--参数2:远程ip,为远程IO模块的IP地址
--参数3:远程端口,为远程IO模块的Modbus TCP协议端口。
--参数4:接收超时,为秒值,达到此超时未能收到远程模块返回数据,将判定此连接故障
--后台服务将断开此连接,并在等待“重试连接间隔”后,重新尝试连接远程IO模块。
--参数5:重试连接间隔,为毫秒值。
--参数6:保持连接的周期,为秒值,后台服务将以此间隔不断的向远程IO模块发送报文,以测试通讯线路是否正常。
--此参数为秒,应小于远程IO模块的TCP/IP接收超时参数。
extdio.startextdio(0,"192.168.192.102",502,20,5000,15);

while(true) do
--seton设置远程IO通道为接通
--参数1:扩展远程IO服务索引
--参数2:设置的通道,为0起,0为第1路输出通道。
--返回:成功返回大于0的值,否则为失败
res=extdio.seton(0,0)
print(string.format("rn设置扩展IO通道1为接通的执行结果%d", res));
syslib.ossleep(1000);

--setoff设置远程IO通道为断开
--参数1:扩展远程IO服务索引
--参数2:设置的通道,为0起,0为第1路输出通道。
--返回:成功返回大于0的值,否则为失败
res=extdio.setoff(0,0)
print(string.format("rn 设置远程IO通道1为断开的执行结果 %d", res));
syslib.ossleep(1000);
end  

 

2、读取远程IO开关量输入状态

print("演示通过以太网读取远程IO模块的1路开关量输入状态")

--startextdio启动扩展远程IO服务
--参数1:服务索引,有效值为0~7,可同时支持控制8个远程IO模块。
--参数2:远程ip,为远程IO模块的IP地址
--参数3:远程端口,为远程IO模块的Modbus TCP协议端口。
--参数4:接收超时,为秒值,达到此超时未能收到远程模块返回数据,将判定此连接故障
--后台服务将断开此连接,并在等待“重试连接间隔”后,重新尝试连接远程IO模块。
--参数5:重试连接间隔,为毫秒值。
--参数6:保持连接的周期,为秒值,后台服务将以此间隔不断的向远程IO模块发送报文,以测试通讯线路是否正常。
--此参数为秒,应小于远程IO模块的TCP/IP接收超时参数。
extdio.startextdio(0,"192.168.192.102",502,20,5000,15);

while(true) do
--get1ich读取远程IO模块开关量输入通道的状态
--参数1:扩展远程IO服务索引,此索引应由startextdio函数启动后方可使用。
--参数2:读取的开关量输入通道,为0起,0为读取第1路开关量输入通道
--返回:参数1,成功返回大于0的值,否则为失败,参数2为开关量输入状态值,0为断开,1为接通
res,distate=extdio.get1in(0,0)
if (res>0) then
    print(string.format("rn开关量输入1状态:%d", distate));
   end
   
syslib.ossleep(1000);
end  

 

2、一次读取全部远程IO开关量输入状态

print("演示通过以太网读取远程IO模块全部开关量输入通道状态")
local alldi={}
--startextdio启动扩展远程IO服务
--参数1:服务索引,有效值为0~7,可同时支持控制8个远程IO模块。
--参数2:远程ip,为远程IO模块的IP地址
--参数3:远程端口,为远程IO模块的Modbus TCP协议端口。
--参数4:接收超时,为秒值,达到此超时未能收到远程模块返回数据,将判定此连接故障
--后台服务将断开此连接,并在等待“重试连接间隔”后,重新尝试连接远程IO模块。
--参数5:重试连接间隔,为毫秒值。
--参数6:保持连接的周期,为秒值,后台服务将以此间隔不断的向远程IO模块发送报文,以测试通讯线路是否正常。
--此参数为秒,应小于远程IO模块的TCP/IP接收超时参数。
extdio.startextdio(0,"192.168.192.102",502,20,5000,15);

while(true) do
alldi={}
--getallin读取远程IO模块全部输入通道状态
--参数1:扩展远程IO服务索引,此索引应由startextdio函数启动后方可使用。
--参数2:读取的开关量输入通道数量。例如设置为4,读取全部4路输入通道的状态。
--参数3:开关量输入状态数据输出数组,每个数组元素的8个bit表示8路开关量输入状态。
--bit状态为0说明开关量输入断开,1为接通。
--例如,数组[1]的值表示第开关量输入1~8输入状态,数组[2]表示9~16开关量输入状态。
--返回:成功返回大于0的值,否则为失败
res=extdio.getallin(0,4,alldi)

if (res>0) then
     debug.printarray(alldi); 
   end
   
syslib.ossleep(1000);
end  
 

 

五、    读取远程模拟量采集模块通道值

print("演示连接远程模拟量采集模块,读取0~20mA模拟量输入值。")

--startextadc启动扩展远程模拟量采集服务
--参数1:服务索引,有效值为0~7,可同时支持读取8个远程模拟量采集模块数据。
--参数2:远程ip,为远程IO模块的IP地址
--参数3:远程端口,为远程IO模块的Modbus TCP协议端口。
--参数4:接收超时,为秒值,达到此超时未能收到远程模块返回数据,将判定此连接故障
--后台服务将断开此连接,并在等待“重试连接间隔”后,重新尝试连接远程IO模块。
--参数5:重试连接间隔,为毫秒值。
--参数6:保持连接的周期,为秒值,后台服务将以此间隔不断的向远程模拟量采集模块发送报文,以测试通讯线路是否正常。
--此参数为秒,应小于远程模拟采集模块的TCP/IP接收超时参数。
extadc.startextadc(0,"192.168.192.101",502,20,5000,15);
local extadcval=0.0
while(true) do 
--readadc420ma读取远程模块0~20mA输入通道值
--参数1:扩展远程模拟量输入服务索引,此索引应由startextadc函数启动后方可使用。
--参数2:读取的0~20mA模拟量输入的通道号,为0起,0读取路模拟量输入通道。
--返回:返回1:成功返回大于0,否则失败,返回2:当前模拟量输入的值,为浮点数,单位为mA。
res,extadcval=extadc.readadc420ma(0,0)
if res>0 then
   print(string.format("rnreadadc420ma 执行结果:%d,通道值:%2.2f",res,extadcval));  
 else
   print(string.format("rnreadadc420ma 执行失败:%d",res));
end
syslib.ossleep(2000);

end  

热门产品
产品名称参考价地区公司名称更新时间 
菲尼克斯PHOENIX温度模块材质 面议 上海市 上海乾拓贸易有限公司 2023-07-19 在线询价
意大利SENECA模块R-8AI-8DIDO ¥100 上海 上海荆戈工业控制设备有限公司 2023-02-01 在线询价
台州市西门子16点输入模块TXM1.16D I/O模块 ¥100 济南市 济南工达捷能科技发展有限公司 2022-10-26 在线询价
PHOENIX菲尼克斯继电器模块说明 面议 上海市 上海乾拓贸易有限公司 2024-04-28 在线询价
TURCK电子模块NIIO-G18-AP6X 面议 上海市 上海乾拓贸易有限公司 2023-08-19 在线询价
欧戟进口HIMA断路器95691.2 I/O模块 面议 上海市 上海欧戟贸易有限公司 2022-10-28 在线询价
免责申明

所展示的信息由会员自行提供,内容的真实性、准确性和合法性由发布会员负责,仪表网对此不承担任何责任。仪表网不涉及用户间因交易而产生的法律关系及法律纠纷,纠纷由您自行协商解决

友情提醒 :本网站仅作为用户寻找交易对象,就货物和服务的交易进行协商,以及获取各类与贸易相关的服务信息的平台。为避免产生购买风险,建议您在购买相关产品前务必确认供应商资质及产品质量。过低的价格、夸张的描述、私人银行账户等都有可能是虚假信息,请采购商谨慎对待,谨防欺诈,对于任何付款行为请您慎重抉择!如您遇到欺诈等不诚信行为,请您立即与仪表网联系,如查证属实,仪表网会对该企业商铺做注销处理,但仪表网不对您因此造成的损失承担责任!

关于我们|网站导航|本站服务|会员服务|网站建设|特色服务|旗下网站|友情链接|在线投诉|兴旺通

仪表网-仪器仪表行业“互联网+”服务平台

Copyright ybzhan.cn All Rights Reserved法律顾问:浙江天册律师事务所 贾熙明律师ICP备案号:浙B2-20100369

客服热线:0571-87756399,87759942加盟热线:0571-87756399展会合作:0571-87759945客服邮箱:873582202@qq.com 投稿邮箱:ybzhan@qq.com

网站客服:服务咨询:对外合作:仪表采购群: 仪表技术群:

版权所有©浙江兴旺宝明通网络有限公司


提示

×

*您想获取产品的资料:

以上可多选,勾选其他,可自行输入要求

个人信息: