直播课堂
HOME
直播课堂
正文内容
plc编程通信控制 PLC如何通讯控制变频器?图文讲解USS通讯控制!
发布时间 : 2024-11-24
作者 : 小编
访问数量 : 23
扫码分享至微信

PLC如何通讯控制变频器?图文讲解USS通讯控制!

变频器我们讲过很多次了,控制方式有很多种。

包括线路控制,PROFIBUS-DP控制以及PROFINET控制,今天我们来讲解以下USS通讯控制。

很多人不了解通讯控制,一听到通讯这两个就头疼,或者觉得通讯控制很高端,其实大可不必这样。所有的通讯控制其实都是一个原理,即硬件加软件。

硬件是通讯的双方应该支持同一协议,并按照该协议接线。

而软件则是双方定义好的,按照商议好的方式进行沟通,这就是一个完整的通讯。

今天我们以S7-200和M440为例进行讲解。

在做此通讯实验前应该了解以下知识点:

1、S7-200 通讯端口的功能定义。

上表中,3和8为RS-485信号,它们的背景颜色与PROFIBUS电缆、PROFIBUS网络插头上的颜色标记一致。通信端口可以从2和7向外供24V直流电源。

需要注意的是:

CPU通信口上的25 针在内部是连通的,并且它们和CPU上的传感器电源(+24V)的M 也是连通的通信口插座的金属壳、1 号针,与CPU接线端子上的电源部分的PE 导通,而与上述的M 不通拥有两个通信口的CPU,其Port0、Port1的25 针相通,也与M 连通

2、西门子MM440变频器和USS通讯相关的接线方式。

在 MM 440 前面板上的通信端口是 RS 485 端口。与 USS 通信有关的前面板端子有:

因 MM 440 通信口是端子连接,故 PROFIBUS 电缆不需要网络插头,而是剥出线头直接压在端子上。如果还要连接下一个驱动装置,则两条电缆的同色芯线可以压在同一个端子内。PROFIBUS 电缆的红色芯线应当压入端子 29;绿色芯线应当连接到端子 30。

一个示例接线图如下:

以上是硬件部分;

我们来看下软件部分;

1.USS指令使用(最简单的调试)

1.1、USS_INIT指令:被用于启用和初始化或禁止MicroMaster驱动器通讯。在使用任何其他USS协议指令之前,必须先执行USS_INIT指令,才能继续执行下一条指令。

1.1.1、EN:输入打开时,在每次扫描时执行该指令。仅限为通讯状态的每次改动执行一次USS_INIT指令。使用边缘检测指令,以脉冲方式打开EN输入。欲改动初始化参数,执行一条新USS_INIT指令。

1.1.2、MODE(模式):输入值1时将端口0分配给USS协议,并启用该协议;输入值0时将端口0分配给PPI,并禁止USS协议。

1.1.3、BAUD(波特率):将波特率设为1200、2400、4800、9600、19200、38400、57600或115200。

1.1.4、ACTIVE(激活)表示激活的驱动器。

站点号具体计算如下:

其中D0~D31代表有32台变频器,四台为一组,共分成八组。如果要激活某台变频器就使该位为1,现在激活18号变频器,即为表二所示。,构成16进位数得出Active即为0004000

若同时有32台变频器须激活,则Altive为16#FFFFFFFF,此外还有一条指令用到站点号,USS-CTRL中的Drive驱动站号不同于USS-INIT中的Active激活号,Active激活号指定哪几台变频器须要激活,而Drive驱动站号是指先激活后的哪台电机驱动,因此程序中可以有多个USS-CTRC指令。

1.2、USS_CTRL指令:被用于已在USS_INIT指令中ACTIVE(激活)的驱动器。且仅限为一台驱动器。

1.2.1、EN(使能):打开此端口,才能启用USS_CTRL指令。且该指令应当始终启用。

1.2.2、RUN(运行):表示驱动器是打开(1)还是关闭(0)。当RUN(运行)位打开时,驱动器收到一条命令,按指定的速度和方向开始运行。为了使驱动器运行,必须符合以下条件:DRIVE(驱动器)在USS_INIT中必须被选为ACTIVE(激活)。OFF2和OFF3必须被设为0。FAULT(故障)和INHIBIT(禁止)必须为0。当RUN(运行)关闭时,会向驱动器发出一条命令,将速度降低,直至电机停止。

1.2.3、OFF2:位被用于允许驱动器滑行至停止。

1.2.4、OFF3:位被用于命令驱动器迅速停止。

1.2.5、F_ACK :用于确认驱动器中的故障。当从0转为1时,驱动器清除故障。

1.2.6、DIR:表示驱动器应当移动的方向正转/反转。

1.2.7、Drive(驱动器):指定运行的驱动器号,必须已经在USS_INIT中被选为ACTIVE(激活)。

1.2.8、Type(类型—:选择驱动器类型,3系列或更早的为0,4系列为1。

1.2.9、Speed_SP(速度设定值):作为全速百分比的驱动器速度。Speed_SP的负值会使驱动器反向旋转方向。范围:-200.0%至200.0%

1.2.10、Resp_R(收到应答):确认从驱动器收到应答。对所有的激活驱动器进行轮询,查找最新驱动器状态信息。每次从驱动器收到应答时,Resp_R位均会打开,进行一次扫描,所有数值均被更新。

1.2.11、Error(错误):包含对驱动器最新通讯请求结果的错误字节。

1.2.12、Status(状态):驱动器返回的状态字原始数值。

1.2.13、Speed(速度):按全速百分比显示驱动器当前速度。范围:-200.0%至200.0%。

1.2.14、Run_EN(运行启用):表示驱动器是运行(1)还是停止(0)。

1.2.15、D_Dir:表示驱动器的旋转方向。

1.2.16、lnhibit(禁止):表示驱动器上的禁止位状态(0 - 不禁止,1 - 禁止)。欲清除禁止位,“故障”位必须关闭,RUN(运行)、OFF2和OFF3输入也必须关闭。

1.2.17、Fault(故障):表示故障位状态(0 - 无故障,1 - 故障)。

四、以下是变频器MM420的设置说明和步骤:

(1)MICROMASTER4 可以有两种USS 通讯接口:RS232 和RS485。RS232 接口用选件模块(订货号为:6SE6400-1PC00-0AA0)实现。RS485 接口时,是将端子14 和15 分别连接到P+和N-来实现。

(2)为了进行USS 通讯,必须确定变频器采用的是RS485 接口,还是RS232 接口。据此可以确定USS参数应设定为哪个下标。

①P0003 =2(访问第2 级的参数所必须的)。

②P2010=USS 波特率。这一参数必须与主站采用的波特率相一致。USS 支持的最大波特率是57600 波特。(P2010的P2010[0](IN000)是设置COM链路的串行接口,P2010[1](IN001)是设置BOP链路的串行接口;一般我们用RS485的话是使用P2010[0](IN000)。)

③P2011=USS 结点地址。这是为变频器指定的唯一从站地址。(P2011的P2011[0](IN000)是设置COM链路的串行接口,P2011[1](IN001)是设置BOP链路的串行接口;一般我们用RS485的话是使用P2010[0](IN000)。 一旦设置了这些参数,就可以进行通讯了。主站可以对变频器的参数(PKW 区)进行读和写,也可以监测变频器的状态和实际的输出频率(PZD 区)

④P0700 =4 或5。这一设置允许通过USS 对变频器进行控制。“PZD 区”一节中,给出了对每一位含义的解释。常规的正向运行(RUN)和停车(OFF1)命令分别是047F(hex)和047E(hex)。其它的例子已在“PZD 区”一节中给出。

⑤P1000 =4 或5。这一设置允许通过USS 发送主设定值。这是缺省情况下用P2000 进行的规格化,所以,4000(hex)=在P2000 中设定的数值。

为了对早期生产的变频器具有兼容性,也可以用P2009(访问级3)进行规格化。

以下是变频器设置步骤参数表:

注:(1)设置参数前先将变频器参数复位为工厂缺省设定值,应该按照下面的数值设定参数:

1.设定P0010=30

2.设定P0970=1

完成复位过程至少要1分钟。

(2)设定P0003=2 允许访问扩展参数

(3)设定电机参数时先设定P0010=1(快速调试),电机参数设置完成设定P0010=0(准备)

注意:变频器MM420只能保留有操作面板(BOP)的小面板,必须把有PROFIBUS接口的大面板取下来否则不能通信!!!!!!!!!!!!!!!!(另P3037可能要调整因为出现R5017??错误,但第二次调试又不出现了)

再提示:使用USS指令前必须先安装“USS协议库(Tbox_V32_STEP7)”,然后才能使用USS指令,但是安装完USS库如出现“错误18:(操作数1)未为库分配V存储区。在指令树中程序块的鼠标右键菜单项目中选择【库存储区。。。】。”的编译错误,请按下面提示设置:

(1)找到编程软件第二列的“指令树”,并找到其中的“程序块”;

(2)在“程序块”上点击鼠标的右键,找到“库存储区”选项;

(3)选择“库存储区”,则弹出USS Protocol的库存储区分配窗口,在“建议地址”上用鼠标左键点击,则选择合适的建议地址,前提是这里选择的建议地址必须避开常用的地址(VB2000以后的地址不常用)。

西门子PLC利用自由口实现通讯,配合中断效果好!图文实例讲解!

以前我们讲过关于自由口通讯的实例,今天我们讲一下自由口通讯配合中断的实例。

在一些特定场合,比如说与松下系列伺服驱动器的控制时,为了保证数据的安全,我们需要进行多次往返的数据交换,这就需要严格控制通讯的时间。那么这个时候对于PLC来说通讯就是最重要的,所以我们需要打断PLC的正常功能,优先处理通讯,这就需要通讯中断。

实例:2台S7-200 SMART CPU(端口0)采用自由口通信方式实现相互通信

(本文仅为展示自由口通讯和中断,如果想要实现这两个PLC的通讯其实最好是使用向导进行以太网通讯,有机会我们也会进行讲解!)

通信任务:CPU1 每秒触发一次 XMT 指令将 CPU 的实时时钟发送到 CPU2;CPU2 接收到 CPU1 发送的信息后立即将 CPU2 的实时时钟回复到 CPU1。

接线:每个 S7-200 SMART CPU 都提供一个以太网端口和一个 RS485 端口(端口0),标准型 CPU 额外支持 SB CM01 信号板(端口1),信号板可通过 STEP 7-Micro/WIN SMART 软件组态为 RS232 通信端口或 RS485 通信端口。

CPU 通信端口引脚分配

1、CPU1 编程

1.1、CPU1 主程序编程如图 所示:

CPU1主程序

程序讲解:

1. 设置 SMB30 = 2#00001001 (自由口通信,波特率 9600 bps,8 位数据位,无校验)。

2. 设置 SMB87 = 2#10010100,使用空闲线检测为信息接收的起始条件,使用字符间定时器为信息接收的结束条件。

3. 设置空闲线定时器 SMW90 = 5 ms,字符间定时器 SMW92 = 5 ms,允许最大接收字符个数 SMB94 = 10。

4. 连接中断子程序 INT_0 到通信端口 0 发送完成事件,并启用中断。

5. 每秒钟读取一次 CPU 的实时时钟,并将发送缓冲区长度设置为 8 个字符。

6. 执行 XMT 指令之前设置 SM87.7 = 0,同时执行 RCV 指令,终止消息接收。

7. 每秒钟执行一次 XMT 指令将 CPU 的实时时钟发送出去。

1.2、 CPU1 发送完成中断子程序 INT_0 编程

中断子程序INT_0用于恢复 SMB87 的设置(SM87.7 = 1),并执行 RCV 指令开始接收 CPU2的应答信息。程序如图4. 所示:

CPU1 中断子程序 INT_0

2、CPU2 编程

2.1、CPU2 主程序编程如图所示:

CPU2主程序

1. 设置 SMB30 = 2#00001001 (自由口通信,波特率 9600 bps,8 位数据位,无校验)。

2. 设置 SMB87 = 2#10010100,使用空闲线检测为信息接收的起始条件,使用字符间定时器为信息接收的结束条件。

3. 设置空闲线定时器 SMW90 = 5 ms,字符间定时器 SMW92 = 5 ms,允许最大接收字符个数 SMB94 = 10。

4. 连接中断子程序 INT_0 到通信端口 0 接收完成事件,中断子程序 INT_1 到通信端口 0 发送完成事件,并启用中断。

5. 使用 SM0.1 调用 RCV 指令地执行。

2.2、 CPU2 接收完成中断子程序 INT_0 编程

中断子程序INT_0用于读取 CPU 实时时钟,并调用 XMT 指令将实时时钟信息发送出去。程序如图所示。

CPU2 接收完成中断子程序 INT_0

2.3、 CPU2 发送完成中断子程序 INT_1 编程

中断子程序 INT_1 用于执行 RCV 指令,并开始新的信息接收任务。程序如图 7.所示。

CPU2 发送完成中断子程序 INT_0

相关问答

plc通信故障怎么解决?

PLC通信故障是指在程序编程中,PLC与外部设备或控制系统之间的通信出现了问题。以下是几种可能的解决方法:检查线路连接:首先需要检查线路连接是否松动或者损...

plc与控制系统怎么通讯?

PLC与控制系统的通信,不同品牌的PLC提供的通信接口不同,所以不能一概而论。以西门子PLC为例,如果与西门子自己的WINCC开发的控制系统通信,有多种选择。最常...

串口调试助手如何和PLC连接-年年岁岁庆有余的回答-懂得

首先你要知道PLC的通讯协议,然后用串口编程线把PLC和电脑连接起来,打开串口调试助手,通过ASCII码对应的数据向PLC发送数据。首先你要知道PLC的通讯...

怎么样具体实现三菱PLC通过485接口与电脑的通信?越详细...

1)三菱FX2NFX3U有一个编程口,用485BD板可以扩展一个485通信口2)硬件实现,买一根USB-485的线,连接在电脑上,装上驱动,可以产生一个485的串口。如果有232的线...

plc通讯协议详解?

plc通讯协议:(一)mpi接口、dp接口:这两者均为基于RS485接口(可以理解为硬件标准)。mpi与dp是通信协议的名称(可以理解为软件)。(二)MPI:MPI是多点接...plc...

plc通讯怎样理解?

1、不管是PLC还是什么,只要是两个“大脑”(人脑或其它芯片)要想沟通,那就是通讯了。2、其实我们现在的交流要是通讯的一种方式。那么两个PLC相互沟通呢?PLC...

plc通信有几种方式?

一、PPI通讯PPI协议是S7-200CPU最基本的通信方式,通过原来自身的端口(PORT0或PORT1)就可以实现通信,是S7-200CPU默认的通信方式。二、RS485串口通讯第三...

简述组态王与PLC通讯的时候,组态王进行通讯设置的步骤?

组态王与PLC通讯首先要定义外部设备,1、在组态王工程浏览器树型目录中选择设备,在右边工作区中出现了“新建”图标,双击此“新建”图标,弹出“设备配置向导”...

plc怎样通过485端口对变频器和温控器实现控制,是怎样的连线方式,请大师帮忙讲解的通俗点具体点?

PLC端口,你需要定义下,你想通过485控制是需要通讯协议的,只能运用MODBUSASCII或者MODBUSRUT通讯模式控制变频器,所以你需要了解这2种通讯格式。PLC端口,你...

PLC的通讯模式有几种,具体是什么?

首先要知道你的PLC是什么品牌,什么型号,以此来确定PLC支持的通讯方式,安川机器人支持主流的所有通讯方式,两者具备相同的通讯接口就可以了,还有就是通过I/O...

 光子计算机  极品飞车8中文版 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2024  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

在线咨询真诚为您提供专业解答服务

热线

188-0000-0000
专属服务热线

微信

二维码扫一扫微信交流
顶部