ID : 608
数据通信
数据通信是在PacScript上与外部器材进行数据通信的功能。
任务和线路
数据通信时任务打开线路,并使用该线路进行通信。
任务打开线路时,该任务获取线路的通信权,其它任务不能打开该线路。任务可以打开多个线路,但不能多个任务同时打开线路。其它任务不能访问已被某任务打开的线路。*
控制器与任务状态和运行模式无关,将保持线路编号和打开线路的任务直至切断电源。
在数据通信功能中,使用唯一Comm.Close方法将自变量指定为“-1”时,可关闭自任务未打开的线路。当任务打开的线路出现死机等情况时,可使用该方法强制关闭所有线路。仅作为错误处理程序等使用,在通常任务中请勿使用。
通信方式的选择
将通信方式分配至各线路编号。
RS-232C
RS-232C方式下的通信无法进行信号交换,因此通信时请确保使用Comm.Open来使线路处于打开状态。
线路处于打开状态时,收到的数据会储存在通信缓冲区中。通过Comm.Input指令可获取储存的数据。
RS-232C的线路编号是1、2、3、40、41。
在“通信端口设定”中可设定线路编号对应的物理端口。参照设定画面
Ethernet
Ethernet的线路编号是4-15。
使用Ethernet的数据通信会在确立线路后发送/接收数据。
通过在“服务器”的线路上连接“用户”的线路,来确立使用Ethernet的数据通信。“服务器”和“用户”成对进行通信。
确立Ethernet的通信线路的方法如下所示。
- 使服务器侧的线路处于打开状态。
- 使用户侧的线路处于打开状态。服务器的线路未处于打开状态时会发生错误。
- 发送/接收数据。
数据类型的选择
可选择以下2种通信数据。
- 文本
- 发送/接收文本数据。
- 二进制
- 发送/接收二进制数据。参照“二进制方式的数据通信”
数据通信中使用的指令
在数据通信中使用以下指令。
指令名 | 功能 |
---|---|
Comm.Open | 数据通信时打开线路。 |
Comm.Close | 数据通信时关闭指定线路。 |
Comm.Output | 用数据通信功能发送数据。 |
Comm.Input | 用数据通信功能接收数据。 |
Comm.Clear | 清空数据通信的接收缓冲区。 |
Comm.Count | 返回从数据通信功能的接收缓冲区读取的数据的字节数。 |
Comm.State | 返回数据通信功能的端口状态。 |
ID : 608