1、是不是只需要调用USS_INIT和USS_CTRL这2个块就可以?我看到书上只调用了这2个。
2、如图1,激活站号是不是每次调用只能激活一个?如果有多台变频器,就多次调用这2个块?
3、如图2,SPEED引脚,SPEED_SP引脚数据类型是DWORD,这个应该可以直接用浮点数吧?
问题补充:
hbttkj.您好。像您说的,如果我激活了3台,还需要调用哪些块呢?每个USS_CTRL只有一个SPEED_SP引脚啊。我怎么给3台都送信号?
图片说明:
最佳答案
问题补充:可能你和我对字面的理解不太 一样,我再详细说一下,希望对你有所帮助。我把以前的回答删到了,加到一起1800多字了,不能上传了,请谅解!
1.调用USS—INIT初始化改变USS的通讯参数,只需要调用一次即可。一般采用SM0.1,首次扫描周期时打开。或采用一个常开点的上升沿P和N下降沿条件,允许或禁止PLC和变频器之间的通讯(方便只有一个端口时,在PPI和USS之间切换)。在执行其他USS协议前,必须先成功的执行一次USS-INIT指令,目的主要是设定通信波特率和设定支持变频器通信地址,如2#101100表示激活地址为2、3、5的变频器(从右向左数是0至31地址,为1时表示激活),只有当该指令成功执行完成后其完成位(DONE)置位后,才能继续执行其他USS的指令。
2.假如你设计激活控制三台变频器,在程序中每一个被激活的变频器只能用一条USS-DRIVE-CTRL指令(激活三台变频器,每台被激活的变频器只能用一条USS-DRIVE-CTRL指令,三台使用三条USS-DRIVE-CTRL呀,呵呵,这可能是你想得到的答案吧?)只要将三条USS-DRIVE-CTRL指令中变频器地址分别设为2、3、5,PLC就能识别到每一台变频器,你也就能分别控制每台变频器啦。2、3、5是举例也可0、1、2,主要是和变频器P2011值对应,还有前面USS—INIT波特率和变频器P2010对应(6=9600),采用USS方式控制P700要设为5。SPEED定义上面说的很清楚了,你应该明白了吧,但要注意变频器里P2009为0,不能规格化。
3.读取变频器参数及写变频器参数也是经常用到的,可以任意多次使用USS-RPM-X?或USS-WPM-X指令,但是每次只能激活其中的一条指令,经常用上一个指令的Done完成输出,作为下一个指令EN的开始条件,这样就实现顺序读写啦。
其实USS是现成的库,理解其定义说明就很好掌握了,你可以在目录和索引里查看USS库的帮助文件。如果你有200PLC和MM440变频器+电机实物,相信你一天就能摆弄会。对了在实物通信时注意通信接线,我一般采用DP头和紫色通信线,3针B(绿色)为正 连变频器的P+(29),8针A(红色)为负 连变频器的N-(30),DP接头根据你的网络情况注意偏置和终端电阻设置,末端变频器也应装偏置和终端电阻(一般和光盘、说明书在一起四根线的小东西)。请你详细阅读MM440使用大全里通信内容,把报文理解透了,用S7300PLC通过PROFIBUS-DP也很好掌握啦。
提问者对于答案的评价:
明白了,谢谢哈。
专家置评
已阅,最佳答案正确。
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc298735.html