gc 与上位机通讯(无协议通讯).pdf
文本预览下载声明
GC 与上位机通讯
(无协议通讯)
1. 概要
无协议通讯方法用来和一些 PLC 、主机以外的设备进行通讯。OIP 同时也要支持
该设备的通讯协议。
使用这种通讯方法,可以通过RS-232C 或RS-422/RS-485 来与调制解调器,IC 读
卡器,以及自身有着独特协议的设备(温度调整器,各类控制器等)通讯。
但是,要进行这样的通讯,必须要用K-basic 来描述相应的通讯协议。
2 . 系统设置
如果已经使用了无协议通讯方式,请按以下步骤设置与OIP 通讯的系统。
①从系统菜单中选择“System Setup”及相应的通道(在RS-232C-1,RS232C-2,和
RS-422/RS-485 中任选一)
②在“Communication Device ”中选“Not Used ”。
接着根据所连接的设备设定通讯速度,奇偶校验,停止位,及数据长度这些参
数。
请注意“Detail ”中的“Time out ”值的设定。如果通讯超过“Time out ”值仍然
没有接收到数据,则会产生一个Time-out 报错。如果“Time out ”值设定成“0.0 ”,
则相当于不设“Time out ”报错,也就是说不会产生Time- out 报错。
不需要设置“Detail ”。如果设置了,将会被忽略。
③同时也无需设置主机的通讯格式。如果设置了,将会被忽略。
注意:如果使用了无协议通讯,GC 的编辑软件 Screen Creator 5 中的“Project
Property ”中的设置是可以省略的。
3 . 如何用K-BASIC 来描述一个通讯协议
如果使用无协议方式来和远程设备进行通讯,必须用K-BASIC 来对通讯协议进行
描述。描述过程中,将会用到以下指令。
OPENSIO 打开串口
SETSIO 设置如何接收数据
WRITESIO 发送数据
WRITESIOB 发送数据(以二进制形式)
FLUSH 清除数据接收缓冲区
CLOSESIO 终止通讯
有关详情,请参考Vol.6 “Screen Creator 5,K-BASIC Program Description ”。
无协议通讯部品可作为标准部品使用。有关详情,请参考“Screen Creator 5 Standard
Parts Catalog ” 中的“Special parts”中的“Non-procedure communication parts ”。
3 .1 用K-BASIC 来描述时的注意点
在使用无协议方式进行通讯时,您必须牢记以下几点。
● 首先在接收数据的部品中执行OPENSIO 和SETSIO 指令。
● OPENSIO 指令不能在一个通道中同时用于多个部品。
● 在K-basic 中使用一个字符串变量来作为接收数据的缓冲器。这个变量必须是
全局变量或静态变量。
● 请记得在接收到数据后使用FLUSH 指令。否则,接收数据缓冲器中的数据会
充满。
● WRITESIO 和WRITESIOB 指令可以用来传送数据。这两个指令使数据从部品
中发送出去。此时,如果所用的通道没有事先用“OPENSIO ”指令打开,则就
会产生报错。
● WRITESIO 和WRITESIOB 指令不会立即把数据从串口中传送出去。它先把数
据放到OIP 的缓冲器中。清除传送缓冲器,使用IOCTL 指令。
3 .2 编程示例
本节将介绍如何通过编程来用一定的通讯协议从设备中读出数据或写入数据。
下面的例子将会对您有帮助。
【通讯协议一般规格】
① 读出数据
指令 RD XXXX YY ODH
RD : 读出指令(2 bytes )
XXXX : 读操作起始地址(4 bytes )
YY : 读出
显示全部