西门子PLC226自由口通信是怎么通信的?

如题所述

  S7-200 CPU的通信口可以设置为自由口模式。选择自由口模式后,用户程序就可以完全控制通信端口的操作,通信协议也完全受用户程序控制。

  S7-200 CPU上的通信口在电气上是标准的RS-485半双工串行通信口。此串行字符通信的格式可以包括:

  一个起始位
  7或8位字符(数据字节)
  一个奇/偶校验位,或者没有校验位
  一个停止位
  自由口通信速波特率可以设置为1200、2400、4800、9600、19200、38400、57600或112500。

  凡是符合这些格式的串行通信设备,理论上都可以和S7-200 CPU通信。

  自由口模式可以灵活应用。Micro/WIN的两个指令库(USS和Modbus RTU)就是使用自由口模式编程实现的。

  在进行自由口通信程序调试时,可以使用PC/PPI电缆(设置到自由口通信模式)连接PC和CPU,在PC上运行串口调试软件(或者Windows的Hyper Terminal-超级终端)调试自由口程序。

  USB/PPI电缆和CP卡不支持自由口调试。

  自由口通信要点
  应用自由口通信首先要把通信口定义为自由口模式,同时设置相应的通信波特率和上述通信格式。用户程序通过特殊存储器SMB30(对端口0)、SMB130(对端口1)控制通信口的工作模式。

  CPU通信口工作在自由口模式时,通信口就不支持其他通信协议(比如PPI),此通信口不能再与编程软件Micro/WIN通信。CPU停止时,自由口不能工作,Micro/WIN就可以与CPU通信。

  通信口的工作模式,是可以在运行过程中由用户程序重复定义的。

  如果调试时需要在自由口模式与PPI模式之间切换,可以使用SM0.7的状态决定通信口的模式;而SM0.7的状态反映的是CPU运行状态开关的位置(在RUN时SM0.7="1",在STOP时SM0.7="0")

  自由口通信的核心指令是发送(XMT)和接收(RCV)指令。在自由口通信常用的中断有“接收指令结束中断”、“发送指令结束中断”,以及通信端口缓冲区接收中断。

  与网络读写指令(NetR/NetW)类似,用户程序不能直接控制通信芯片而必须通过操作系统。用户程序使用通信数据缓冲区和特殊存储器与操作系统交换相关的信息。

  XMT和RCV指令的数据缓冲区类似,起始字节为需要发送的或接收的字符个数,随后是数据字节本身。如果接收的消息中包括了起始或结束字符,则它们也算数据字节。

  调用XMT和RCV指令时只需要指定通信口和数据缓冲区的起始字节地址。

  XMT和RCV指令与NetW/NetR指令不同的是,它们与网络上通信对象的“地址”无关,而仅对本地的通信端口操作。如果网络上有多个设备,消息中必然包含地址信息;这些包含地址信息的消息才是XMT和RCV指令的处理对象。
温馨提示:内容为网友见解,仅供参考
无其他回答

西门子PLC226自由口通信是怎么通信的?
S7-200 CPU的通信口可以设置为自由口模式。选择自由口模式后,用户程序就可以完全控制通信端口的操作,通信协议也完全受用户程序控制。S7-200 CPU上的通信口在电气上是标准的RS-485半双工串行通信口。此串行字符通信的格式可以包括:一个起始位 7或8位字符(数据字节)一个奇\/偶校验位,或者没有校验位...

西门子PLC之间的通讯是怎么完成的?
S7-200通信最经济的方式就是采用PPI协议和自由口通信协议。对于S7-200之间进行通信,PPI协议又更适合——它比自由口通信的编程更简单!下面就对这个PPI通信进行说明——以2台S7-200通信为例,做一个实例。 设备配置:1台S7-200 CPU 226CN的PLC、 1台S7-200 CPU 224XP的PLC 硬件连接:原则上需要配备1条紫色的P...

PLC 自由口通讯的作用
自由口通讯是没有标准通信协议的,可自己规定。第三方设备大多支持RS485,所以通常叫做基于485的半双工自由口通讯。你所说的连电脑的意义在于,电脑相当于上位机,给你发送指令,你再将某些状态量上传供调试人员或用户观测使用。

西门子1200PLC怎么用自由口跟条码扫描枪通信?最好有程序例子。哪位大师...
首先要确定扫描枪的接口是不是485串口,第二要知道该扫描枪的通讯格式然后才能通过自由口进行编程。

西门子 S7 - 200 SMART PLC 的自由口通信
西门子S7-200 SMART PLC的自由口通信是一种没有标准协议的通信方式,用户能自行定义通信规则。这种模式基于RS-485通信基础,采用半双工方式,广泛应用于第三方设备如变频器、自动化仪表等的控制。实现自由口通信的关键在于特殊寄存器及相应指令。自由口控制寄存器包括SMB30(端口0)和SMB130(端口1),用于...

西门子PLC串口通讯的几种方法
第三方设备大部分支持,西门子S7PLC可以通过选择自由口通信模式控制串口通信。最简单的情况只用发送指令 (XMT)向打印机或者变频器等第三方设备发送信息。不管任何情况,都必须通过 S7 PLC编写程序实现。当选择了自由口模式,用户可以通过发送指令(XMT)、接收指(RCV)、发送中断、接收中断来控制通信口的...

西门子226PLC通讯问题
或者你干脆放弃PPI协议,使用自由口,MODBUS协议。组态王有专门的和西门子200 MODBUS协议通讯的驱动配置程序,下载到PLC中就可以实现PLC和组态王的MODBUS通讯,这个协议最长理论通讯距离1200米,一个网络可以支持32个从站。而你实现这个只需要一个RS232转485的转换器。所以,以上所有的方案都要优于你的设想...

西门子plc自由口通信可以同时发送和接收吗
西门子的自由口是485协议,是半双工的,不能同时收发。在西门子的官方文档里有说明,西门子的MODBUS协议也是基于自由口协议上开发的,一种特殊的自由口通信方式。

PLC在自由口通信中作为主站和从站的区别?
PLC在自由口通信中作为主站和从站的区别是(程序图为主站):1、功能不同。总站是主控制单元,含有CPU,从站可以不加CPU,可以作为远程站,用主站控制。主站通常具有CPU模块能够进行运算处理,通迅处理等功能。从站也是有CPU的,像一个西门子的系统,通过Profinet或Profibus-dp联网后,主站读从站的数据...

西门子S7200 PLC自由口通讯程序的设计方法(含源码)
在设计西门子S7-200 PLC自由口通讯程序时,关键步骤需明确:首先,设置通讯参数。若基于RS485口,配置地址SMB30;采用通讯信号板,则在SMB130中设置。两者参数相同,仅通讯口不同。其次,定义接收信息的控制字节。对于RS485口,在SMB87设置;对于通讯信号板,设置在SMB187。用户需自行选择端口。再者,根据...

相似回答