1. PLC怎么与上位机进行通讯

PLC与上位机进行通讯,采用BlandC编写主机与PLC的通信程序,必须对COM1口进行初始化,波特率为9600bps,奇偶校验位采用偶校验,七位有效数据

当计算机接收到来自PLC的应答字符ACK后,就可以进入数据通信了。

计算机可对PLC内各软设备进行读、写和强制ON/OFF操作。除开PLC的计时器和计数器的设定值采用常数时,以及文件寄存器内的数据,FX2N系列PLC的所有开关量输入、输出以及各软件设备对计算机都是透明的。

为了保证主机与PLC的通信准确无误,上位机也必须按通信协议进行和校验。如接收的信息有误,则重新读取。如重复3次仍不行,则显示错误信息。

使用C语言实现以上编程,主机还可向PLC写数据,进行单点的强近置位和复位。

在利用外部设备与可编程控制器之间进行通讯前,必须首先规定一些参数,如数据长度,奇偶校验、停止位以及波特率等,即通讯格式。

通讯格式是通过一个四位的16进制数而设定,这里设定为H6880,其含义是数据长度为7位,终结符为7位,奇偶校验为无,控制线为RS232接口,停止位为1位,和校验为自动添加,波特率为9600BPS,协议为专用协议,标题无,传输控制协议为协议格式1。

通讯格式是在PLC中首先将其设置好的。其中协议格式的通讯格式依次规定了控制代码、站号、PC号、命令、消息等待以及和校验代码等。在FX系列编程控制器中,站号是通过特殊寄存器D8121来设定的。设定范围是从00H到0FH。

实验台中由于上位机只和一个PLC气动实验台通信,所以站号为00H。PC号是A系列MELSECNET(II)或MELSECNET/B用来确定可编程控制器CPU的数字。FX系列的PC号为FFH,由两位ASCII字符来代表,即“FF”。

命令用来指定要求的操作(如读,写),在此控制软件中所使用的向PLC发送的主要指令有:

批量读出位元件BR指令;批量写入位元件BW指令;强制PLC运行(RUN)RR指令;强制PLC停止(STOP)RS指令。

消息等待是一段计算机要求的延迟时间,以实现在发送和接受状态间的转换。和校验代码用来确定消息中的数据没有受到破坏。它是通过加上和校验区域中的ASCII字符的16进制值计算得到的。

(1)无序通讯扩展阅读:  

PLC与PC机之间实现通道,可使二者互补功能上的不足,PLC用于控制方面既方便又可靠,而PC机在图形显示、数据处理、打印报表以及中文显示等方面有很强的功能。

因此,各PLC制造厂家纷纷开发了适用于本公司的各种型号PLC与PC机通信的接口模块。三菱公司开发的FX-232AW接口模块用于FX2N系列上位机和PLC在遵循相同的通讯格式和通讯协议下便可以进行通讯了。

其通讯的基本过程是:先由上位机控制软件向PLC发出一条指令,随即控制软件进入等待状态,准备接收PLC的回应信息,在收到反馈信息后进行解读并判断通讯是否正确;如果判定反馈信息正确,就解读其反馈信息,在获得了所需的信息以后,即完成该次通讯过程,并准备进入下一个通讯过程。

反之,如果判定反馈信息不正确,则进行相应的错误处理,如向PLC重发指令等等。

2. 求助,关于三菱PLC的两种通信协议,分不清楚它们分别是哪一种

的PLC,协议的顺序为:起始符+命令码+起始地址+操作字节数+结束码+和效验。这就完了,你可以任意操作PLC的 软元件 D.M.X.Y.C.T,比如来一个操作把H1234写到D100。十六进制数据串的第一位当然是起始符02,第二位是命令码31,第三、四、五、六位是D100对应的地址 43 38 31 30(两个字节,具体算法搜下网络)。第七八位就是从起始地址开始要写的个数,也就是字节数,一个寄存器D占两个字节嘛,算下就知道了,D100占2个字节,那么第七八位是 30 32,第九、十、十一、十二位就是要写的数据 H1234,为 33 34 31 32,第十三位是结束符 03,最后加上效验位,和效验的算法就是:起始符后一位开始,一直加到最后,即31+43+38+31+30+30+32+33+34+31+32+03=?。在这里我就不算了,然后把这一串数据发出去就ok了

3. 请问三菱QJ71C24N串口通讯模块中的无顺序协议和双向协议分别是什么意思谢谢

无顺序协议:CPU和外部设备之间进行任意数据通信的功能。通信格式可以由用户自由设定的一种通信功能。
双向协议:串行通信的一种通信顺序,实现数据通信功能。