TRIO控制器内置OMRON Hostlink协议,可以与OMRON PLC直接连接,连接举例:
SETCOM(38400,7,2,2,1,6)
HLM_TIMEOUT=200
while true
HLM_READ(1,0,PLC_IR,1451,1,MC_VR,145)
HLM_READ(1,0,PLC_DM,260,3,MC_TABLE,260)
HLM_WRITE(1,0,PLC_IR,1450,1,MC_VR,150)
HLM_WRITE(1,0,PLC_DM,265,5,MC_TABLE,265)
WA(20)
WEND
HLM_WRITE和HLM_READ的指令说明在新版手册里有,手册上www.triomotion.com处注册后,免费下载。
另外,TRIO串口还内置Modbus从站协议,任何支持Modbus主站协议的PLC都可以连接
1. OMRON PLC只支持Hostlink 从站协议,所以和Trio控制器连接时,Trio的控制器不能做从站,也就只能做主站主动和PLC“说话了”。和触摸屏用OMRON Hostlink连接时,Trio控制器倒是可以可以做从站。
2. 这个不太好给你举例,你可以上网找个Modbus模拟软件,设置其为主站,然后用串口与Trio控制器连接,在控制器内setcom(38400,8,1,2,1,4),应该就可以模拟了,至于地址对应,请看TRIO手册第13章,里面有说明。
3.自由协议的编写,PLC请咨询PLC厂家的技术人员。在Trio侧很简单,主要用以下几个指令:setcom,key,get,print。setcom设定串口类型,最后一个参数设置为0就代表自己控制。key是用来查询对应端口有无数据,get用来从对应端口读出一个“字节”。print用来向对应端口输出数据。例如:
setcom(38400,8,1,2,1,0) ‘设定端口1为自由协议通讯
print #1, "abc" ‘向端口1发送字符串“abc”
value=$10
print#1,CHR(value); ‘向端口1发送1个字节的16进制数“10”
while true
if key#1 then ‘判断端口1缓存是否收到数据
get#1,c ‘读取缓存内最前面的一个字节数据
endif
wend
4. 如果选择Hostlink协议,Trio做主站,那么怎么对应完全是你自己定义的,如果Trio做从站(一般是和触摸屏才这样做),则IR--》VR的位。DM--》Table
如果选择Modbus协议,Trio只能做从站(一般也是和触摸屏或其他HMI连接),HMI组态时一般选择Modicon类型PLC,也就是说把Trio控制器当做Modicon PLC,对应关系:1000n---》IN(n-1), 4000n-->VR(n-1), n最小从1开始
TRIO和PLC还有其他的连接方式:
1. Profibus DP: MC206x及其他一些控制器可以再选装一块Probibus DP的从站模块,这样可以和支持ProfibusDP主站的PLC直接连接。
2.DeviceNet:如果你没有用到Trio的IO扩展模块的情况下,TRIO的CAN接口可以被配置为DeviceNet协议从站,可以和支持DeviceNet主站的PLC连接。
3.Modbus/TCP: MC206x及其他一些控制器可以配置以太网模块,TRIO以太网模块内置Modbus/TCP从站协议,如果你选装的PLC支持该协议,则也可以与控制器进行连接
以上三种方式相比串口连接,速度更快,可靠性更高,只是成本也会高一些而已,希望上述说明对你能有所启示