2、 本DNC控制系统通信规程的约定

为了使网络内不同结点之间能够正确进行数据通信,通信双方就必须有一套彼此能够相互了解和共同遵守的规则和约定,这些格式、约定及应答关系概括起来就叫做通信规程。

本DNC控制系统为主从总线型网络结构,上位机执行着整个系统的组织和管理。因此系统的通信规程是不平衡型的:上位机发送命令、接收响应并负责链路级的差错恢复:下位机发送响应、接收命令。

1) 通信信息及地址的编码

系统中RS422总线的一点对多点的通信是将所有下位机的接收端并联在总线上,接至上位机的发送端:而将所有下位机的发送端并联在总线上,接至上位机的接收端。因此,选择下位机和分辨下位机,确定通信路径是完成通信的第一步。

本系统采用一个字节来传递命令信息加地址信息或状态信息加地址信息,分别称为命令字、状态字。从上位机向下位机传送的为命令字,从下位机向上位机传送的为状态字。字节中地址信息占用字节的低四位,编码为1~3。命令信息或状态信息占用字节的高四位,地址信息、命令信息、状态信息都应该是独立和唯一的。

例如,急停命令信息编码040,若上位机想控制地址编码为1的正在加工的机床急停,则发送命令字应为041,该机床就会执行相应的动作,其他机床不予理会。又例如,若上位机接收到一个为02的状态字,由于编辑状态信息编码为000,故可相应判别出此状态字为地址编码为2的机床的编辑状态信息。

2) 命令字、状态字和文件传输的通信约定

在本DNC系统通信中,通信的内容除了有命令和状态,还有文件的传输,而文件中的字符是随机的,很可能会被某台机床误认为是对本机床的命令字而发生误动作:另外,由于电磁干扰和网络冲突的存在,接到的字符也可能并不是发送的字符。因此,为保证通信的可靠性和正确性,应该在通信设计中采取某些通信约定。

本DNC控制系统采用了特殊字符的双字符启动和正反码校验技术来实现上述目的。正反码校验技术是指在发送完字符的正码后,接着发送其反码,这样接收方就可根据前后两字符是否为反码来判断接收是否正确。正反码校验技术对每一字符的每一位都进行校验,比传统的奇偶校验及累加和校验要可靠得多。特殊启动字符BREAK规定为0X80,低四位字节为零,由于下位机的地址编码为1~3,故命令字与状态字都不会出现与BREAK相同的字符:文件传输中也采用正反码校验技术,因此文件传输中也不会出现连续的两个BREAK字符,保证了正确启动,不会引起误动作。

系统中约定不论是上位机发送命令,还是下位机发送状态,都必须先发送两个连续的BREAK,然后发送命令字或状态字,再接着发送其反码,这样连续几个字符称为一帧。