以下用一个例子介绍USS通信的应用。
【例9-10】用一台CPU 226CN对变频器进行USS无级速度给定,已知电动机的技术参数,功率为0.06kW,额定转速为1440r/min,额定电压为380V,额定电流为0.35A,额定频率为50Hz。请制定解决方案。
【解】
1.软硬件配置
①1套STEP 7-Micro/WIN V4.0 SP9(含指令库)。
81台MM 440变频器。
③1台CPU 226CN。
④1台电动机。
⑤1根编程电缆(或者CP 5611卡)。
⑥1根屏蔽双绞线。
硬件配置如图9-25所示。
图9-25 硬件配置图
【关键点】
1)图9-25中,编程口PORT0的第3脚与变频器的29脚相连,编程口PORT0的第8脚与变频器的30脚相连,并不需要占用PLC的输出点。还有一点要指出,STEP 7-Micro/WIN V4.0 SP5以前的版本中,USS通信只能用PORT0口,而STEP 7-Micro/WIN V4.0 SP5(含)之后的版本,则USS通信可以用PORT0口和PORT1口。调用不同的通信口使用的子程序也不同。
2)图9-25中,串口的第3脚与变频器的29脚相连,串口的第8脚与变频器的30脚相连,并不需要占用PLC的输出点。图9-25的USS通信连接是要求不严格时的做法,一般的工业现场不宜采用,工业现场的PLC端应使用专用的网络连接器,且终端开组要接通,如图9-26所示,变频器端的连接图如图9-27所示,在购买变频器时附带有所需的电阻,并不需要另外购置。还有一点必须指出:如果有多台变频器,则只有最末端的变频器需要接入如图9-27的电阻。
图9-26 网络连接器图(PLC端)
图9-27 连接图(变频器端)
2.相关指令介绍
(1)初始化指令
USS_INIT指令被用于启用和初始化或禁止驱动器通信。在使用任何其他USS协议指令之前,必须执行USS_INIT指令,且无错。一旦该指令完成,立即设置“完成”位,才能继续执行下一条指令。
EN输入打开时,在每次扫描时执行该指令。仅限为通信状态的每次改动执行一次USS_INIT指令。使用边缘检测指令,以脉冲方式打开EN输入。欲改动初始化参数,执行一条新USS_INIT指令。USS输入数值选择通信协议:输入值1将端口0分配给USS协议,并启用该协议;输入值0将端口0分配给PPI,并禁止USS协议。BAUD(波特率)将波特率设为1200、2400、4800、9600、19200、38400、57600或115200。
ACTIVE(激活)表示激活驱动器。当USS_INIT指令完成时,DONE(完成)输出打开。“错误”输出字节包含执行指令的结果。USS_INIT指令格式见表9-13。
表9-13 USS_INIT指令格式
站点号具体计算对应关系见表9-14。
表9-14 站点号具体计算对应关系
(www.xing528.com)
D0~D31代表32台变频器,要激活某一台变频器,就将该位置1,上面的表格将18号变频器激活,其16进制表示为16#00040000。若要将所有32台变频器都激活,则ACTIVE为16#FFFFFFFF。
假如PLC只要和地址为0的变频器通信,那么USS_INIT指令中的“Active”怎样设置?
根据表9-14,且PLC只要和地址为0的变频器通信,那么只要将D0=1即可,所以其16进制表示为16#00000001。初学者很容易将之设置为16#00000000,这是要特别注意的。
(2)控制指令
USS_CTRL指令被用于控制ACTIVE(激活)驱动器。USS_CTRL指令将选择的命令放在通信缓冲区中,然后送至编址的驱动器(DRIVE(驱动器)参数),条件是已在USS_INIT指令的ACTIVE(激活)参数中选择该驱动器。仅限为每台驱动器指定一条USS_CTRL指令。USS_CTRL指令格式见表9-15。
表9-15 USS_CTRL指令格式
具体描述如下:
①EN位必须打开,才能启用USS_CTRL指令。该指令应当始终启用。RUN(运行)(RUN/STOP(运行/停止))表示驱动器是打开(1)还是关闭(0)。当RUN(运行)位打开时,驱动器收到一条命令,按指定的速度和方向开始运行。为了使驱动器运行,必须符合三个条件,分别是DRIVE(驱动器)在USS_INIT中必须被选为ACTIVE(激活);OFF2和OFF3必须被设为0;FAULT(故障)和INHIBIT(禁止)必须为0。
8当RUN(运行)关闭时,会向驱动器发出一条命令,将速度降低,直至电动机停止。OFF2位被用于允许驱动器滑行至停止。OFF3位被用于命令驱动器迅速停止。Resp_R(收到应答)位确认从驱动器收到应答。对所有的激活驱动器进行轮询,查找最新驱动器状态信息。每次S7-200从驱动器收到应答时,Resp_R位均会打开,进行一次扫描,所有以下数值均被更新。F_ACK(故障确认)位被用于确认驱动器中的故障。当F_ACK从0转为1时,驱动器清除故障。DIR(方向)位表示驱动器应当移动的方向。“驱动器”(驱动器地址)输入是驱动器的地址,向该地址发送USS_CTRL命令。有效地址:0~31。“类型”(驱动器类型)输入选择驱动器的类型。将3(或更早版本)驱动器的类型设为0。将4驱动器的类型设为1。
③Speed_SP(速度设定值)是作为全速百分比的驱动器速度。Speed_SP的负值会使驱动器反向旋转方向。范围:-200.0%~200.0%。
④Error是一个包含对驱动器最新通信请求结果的错误字节。USS指令执行错误标题定义可能因执行指令而导致的错误条件。
⑤Status是驱动器返回的状态字原始数值。
⑥Speed是作为全速百分比的驱动器速度。范围:-200.0%~200.0%。
⑦Run_EN(运行启用)表示驱动器是运行(1)还是停止(0)。
⑧D_Dir表示驱动器的旋转方向。
⑨inhibit表示驱动器上的禁止位状态(0-不禁止,1-禁止)。欲清除禁止位,“故障”位必须关闭,RUN(运行)、OFF2和OFF3输入也必须关闭。
⑩Fau1t表示故障位状态(0-无故障,1-故障)。驱动器显示故障代码。欲清除故障位,纠正引起故障的原因,并打开F_ACK位。
3.设置变频器的参数
先查询MM 440变频器的说明书,再依次在变频器中设定表9-16中的参数。
表9-16 变频器参数表
【关键点】P2011设定值为18,与程序中的地址一致,正确设置变频器的参数是USS通信成功的前提。此外,要选用USS通信的指令,只要双击在如图9-28所示库中对应的指令即可。
图9-28 USS指令库
4.编写程序
程序如图9-29所示。
图9-29 程序
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。