大庆西门子电源模块授权代理
远程PLC经上述设置后,在其运行期间每当接收到一组数据后便自动产生中断请求,在中断服务的子程序中,设定一标志位(如MO.0)置位,用来表示允许进入中断服务,在主程序中通过检测M0.O的状态来确定是否转入读数据操作的子程序,读数据操作完毕后及时将接收数据标志M0.0复位,从而完成一次读数据过程。PLC数据的上传则是根据所读数据的内容来响应上位的请求,上传数据的编码和字节均依照约定的格式写入,每次的读写操作仅在PLC一个扫描周期内(数毫秒)完成,系统的响应是实时的。
3.5 远程PLC数据的读写操作
PLC数据的读写是依据约定的数据类型实施操作的。对于字节、字、双字、实数及I/0端口各自有约定的数据类型特征字,在下位PLC程序中通过对数据类型特征字的解析后来确定读取数据的字节数。对I/0端口的读写操作则是根据约定的地址编码直接读写出相应的状态信息。每组收发数据的存储单元从VBl00到VBll7共18个字节。由前述的数据发送量的约定可知,每组数据的Byte5~Byte8表示PLC数据的地址,由于每次读写的地址是不同的,Byte5~Byte8字节给定的就是地址指针,在PLC编程中就要以此指针采用间接寻址的方式,假设Byte5~Byte8存放在PLC的VB104~VBl07单元,其间址指令则为:
MOVD&VBl04,ACl读取该地址内容时则根据数据类型的不同而有所区别,假如读写字节时指令为:MOVB*ACl,VBl60;则读写字的指令为:MOVW*ACl,VWl60;读写双字的指令为:MOVD*ACl,VDl60;读写实数的指令则为:MOVR*ACl,VDl60。
4 结束语
本系统经实际测试基本达到了预期效果。远程PLC在省际间距离的测控响应与在本市区地域的测控响应基本相同,通过对PLCI/O的读写、模拟量数据的读写、单字节、双字节及实数的读写,均未出现数据差错现象,远程的响应速度基本上是对上位的指令立即响应,操作人基本感觉不出时间的延时。在PLC中,由于本远程测控程序字节量较少,可以嵌入在PLC的过程控制程序中运行,由于在自由口通讯中,
对上位PC读写的响应采用的是中断方式快速响应,对PLC的过程控制程序的实时性基本无影响