VPC 串口通信例程

30

description

VPC 串口通信例程. 上电科网研中心. 2011-01-05. 内容. 总则 PLC 与编程软件的通信 PLC 作为 Modbus-RTU 从站 PLC 作为 Modbus-RTU 主站 自由口通信 PLC 自组网通信. 总则. VPC 系列 PLC 的串行口支持 5 种功能的通信:上位机链接通信(编程口)、 PC-Net 自组网通信、自由口通信、 Modbus-RTU 从站、 Modbus-RTU 主站。 各通信功能遵照先配置后使用的原则: 首先进行通信主配置,配置通信方式及通信格式; 然后,在某些方式下,还需要进一步的配置; - PowerPoint PPT Presentation

Transcript of VPC 串口通信例程

Page 1: VPC 串口通信例程
Page 2: VPC 串口通信例程

VPC串口通信例程上电科网研中心

2011-01-05

Page 3: VPC 串口通信例程

内容• 总则• PLC与编程软件的通信 • PLC作为Modbus-RTU从站 • PLC作为Modbus-RTU主站 • 自由口通信 • PLC自组网通信

Page 4: VPC 串口通信例程

总则• VPC 系列 PLC 的串行口支持 5 种功能的通信:上位机链接通信(编程口)、

PC-Net 自组网通信、自由口通信、 Modbus-RTU 从站、 Modbus-RTU 主站。• 各通信功能遵照先配置后使用的原则:

– 首先进行通信主配置,配置通信方式及通信格式;– 然后,在某些方式下,还需要进一步的配置;– 最后,在使用中,某些方式需要有通信指令及相关标志位的配合。其中,第一步是必须的,后两步依据不同的通信方式而定。

• 通信主配置字 Port0 : MW36 ; Port1 : MW37 ; Port2 : MW38

名词解释:通信方式:即指上述的各种通信功能,体现在主配置字中。通信格式:即串口格式,包含波特率、数据位、校验、停止位,体现在主配置字中。具体通信模式:即各通信方式下的详细配置,体现在副配置字中。

Page 5: VPC 串口通信例程

各通信方式所依赖的配置及使用步骤

Page 6: VPC 串口通信例程

• 两种通信主配置方式之一– 直接在用户程序中通过编程将配置参数赋值给相应的寄存器

例如右图的程序,将在程序运行的首轮扫描时,将 16进制数 0x3000写入 Port0 的主配置字 MW36 ,即将 Port0 配置为 Modbus 从站方式。

Page 7: VPC 串口通信例程

• 两种通信主配置方式之二– 通过在编程软件的 PLC 系统设置块中完成相应配置并下载来实现。

右图即为系统设置窗口中的端口设置页。注意在下载时要勾选“ PLC系统设置”项,如上图。注意:两种配置方式不可同时使用,否则可能会由于不一致而造成冲突。

推荐该配置方式。

Page 8: VPC 串口通信例程

• PLC 所带有串口的个数、类型及支持的通信功能依据不同的 PLC 机型而不同。 • 通常情况下,串口将按照用户配置的方式进行工作。特殊地,当 PC 处于编程模式时, Port0 将忽略配置字,而固定为上位机链接方式,通信格式为: 115200bps , 8 , N , 1 。• 串口的配置即修改即生效。• 串口的配置具有断电保存的功能。上电时串口的工作方式将配置成和上次一样。• PLC 出厂时, Port0 默认为上位机链接方式,通信格式为: 115200bp

s , 8 , N , 1 。 Port1 默认为 Modbus-RTU 从站方式,站地址为 4 ,通信格式为: 19200bps , 8 , N , 1 。

Page 9: VPC 串口通信例程

PLC与编程软件的通信 • 使用方法:将目标端口配置成上位机链接方式即可。• 特殊说明:当 PC 处于编程模式时, Port0 将固定为上位机链接通信方 式,通信参数为: 115200bps , 8 , N , 1 。

返回

Page 10: VPC 串口通信例程

PLC作为Modbus-RTU从站 • 使用方法:将目标端口配置成 Modbus 从站方式;设置正确的从站地址。• 配置字:

MW102 : Port0 的站地址 MW103 : Port1 的站地址 MW105 : Port2 的站地址

说明:编程软件 VX-Pro 的系统设置块中额外支持 Modbus 从站地址的配置,因此,通过这种方式可以一步完成 Modbus 从站通信的配置。

Page 11: VPC 串口通信例程

返回

Modbus

地址

Page 12: VPC 串口通信例程

PLC作为Modbus-RTU主站 • 使用方法:将目标端口配置成 Modbus 主站方式,在程序中使用 Modbus 主站指令。• Modbus 主站指令: 非周期请求: MBAR (字型), MBARX (位型)周期请求: MBCR (字型), MBCRX (位型)删除周期请求: MDCR

• 标志位:SX43 通信口 0 周期 Modbus 命令请求允许标志 SX44 通信口 0 非周 Modbus 命令请求允许标志SX48 通信口 1 周期 Modbus 命令请求允许标志 SX49 通信口 1 非周 Modbus 命令请求允许标志SX73 通信口 2 周期 Modbus 命令请求允许标志 SX74 通信口 2 非周 Modbus 命令请求允许标志

Page 13: VPC 串口通信例程

MBAR (MBARX) 的典型应用:单次执行

说明:如右图,用 WX0.0 作为操作标志位。当 IX0.0 的上升沿到来时,将触发 WX0.0使能,若允许标志位 SX49 使能,则将执行 MBAR 指令,然后复位 WX0.0 ,不再执行;若此时 SX49 不使能,则程序将一直扫描直到 SX49 使能,则执行 MBAR ,然后才复位 WX0.0 。(假设以 WW1 起始的区域已预先存入了请求帧信息)

•非周期指令意味着扫描一次就执行一次•前置条件:触发标志位 + 允许标志位 触发标志位由用户所控制,在需要的时候产生。 允许标志位由系统产生,当通信负荷满时,会暂时关闭该标志。•后置处理: MBAR 执行后则及时清除触发标志,防止非周期指令被多次执行。

Page 14: VPC 串口通信例程

MBAR (MBARX) 的典型应用:周期执行

说明:如右图,用 0.5s 交替变化的信号沿来触发 WX0.0 标志位,则可以达到用非周期指令实现周期性操作的目的。

•要点:触发标志的控制

Page 15: VPC 串口通信例程

MBCR (MBCRX) 的典型应用

说明:如右图,用 WX0.0 作为操作标志位。当 IX0.0 的上升沿到来时,将触发 WX0.0使能,若允许标志位 SX48 使能,则将执行 MBCR 指令,然后复位 WX0.0 ,不再执行;若此时 SX48 不使能,则将无法执行 MBCR 指令。与非周期指令不同的是,周期指令一旦执行后就具有长效性,需要设定该请求的周期时间,系统支持默认的周期时间。

•周期指令意味着一旦执行后就会周期地重复该请求•前置条件:触发标志位 + 允许标志位(可省略) 触发标志位由用户所控制,在需要的时候产生。 允许标志位由系统产生,当通信负荷满时,会一直关闭该标志,除非清除周期请求。•后置处理: MBCR 执行后则及时清除触发标志,防止周期请求被多次添加。

Page 16: VPC 串口通信例程

MBCR (MBCRX) 的典型应用说明:常常以初次扫描标志作为条件,来执行 MBCR 指令。

注意:周期 Modbus 指令目前支持的最大请求数为 16 。当请求队列满 时,则允许标志位将关闭,不允许继续添加周期请求。 使用 MBDR 指令将删除当前所有的周期请求,并使能允许标志位。

Page 17: VPC 串口通信例程

例程: PLC 作为 Modbus 主站连接格力特变频器

首轮扫描时,将标志位 QX10.0 置位,并且添加一个读取转速的周期性请求。

Page 18: VPC 串口通信例程

利用前面置位的标志位 QX10.0 发出一个设置转速的命令。

Page 19: VPC 串口通信例程

利用 IX0.0 的上升和下降沿分别产生两个标志位,给后续程序使用。

Page 20: VPC 串口通信例程

利用标志位 QX10 .2 发出一个开始转动的命令请求,执行后将该标志复位。

Page 21: VPC 串口通信例程

利用标志位 QX10 .3 发出一个停止转动的命令请求,执行后将该标志复位。返回

Page 22: VPC 串口通信例程

自由口通信 • 使用方法: 将目标端口配置成自由口通信方式, 在程序中详细配置自由口的工作模式, 在程序中使用自由口通信指令完成所需的任务。• 配置字: 通信口 0 : MW88~MW94 通信口 1 : MW95~MW101

• 自由口通信指令: 自由口发送: RXD自由口接收: TXD

• 标志位:SX40 通信口 0 自由口接收完成标志

SX41 通信口 0 自由口发送允许标志(暨上一次发送完成标志)SX45 通信口 1 自由口接收完成标志SX46 通信口 1 自由口发送允许标志(暨上一次发送完成标志)

Page 23: VPC 串口通信例程

例程: PLC以自由口方式连接格力特变频器• 在程序中详细配置自由口的工作模式

在首轮扫描时,配置自由口的工作模式为:以空闲行时间作为接收消息的 开始和结束条件,空闲行时间设为 50ms 。发送不做额外处理。

Page 24: VPC 串口通信例程

在首轮扫描时,将以WW0起始的 8 个字节通过 Port1 发送出去,完成设置转速的操作。注意:与前面 Modbus 主站方式不一样的是,此时待发送帧的所有数据都要自己准备好,包括结束的校验字要预先算好,填进去。而 Modbus 方式时,系统会自动计算 CRC 校验。

Page 25: VPC 串口通信例程

利用 IX0.0 的上升和下降沿分别产生两个标志位,给后续程序使用。

Page 26: VPC 串口通信例程

利用标志位 QX10 .2 ,将以WW0起始的 8 个字节通过 Port1 发送出去, 完成开始转 动的操作,执行后将该标志复位。

Page 27: VPC 串口通信例程

利用标志位 QX10 .3 ,将以WW0起始的 8 个字节通过 Port1 发送出去, 完成停止转 动的操作,执行后将该标志复位。

Page 28: VPC 串口通信例程
Page 29: VPC 串口通信例程

返回

Page 30: VPC 串口通信例程

谢谢!