西门子V20变频器与S7-200之间的USS通讯详解
1、本例程的系统配置:(1)安装Step7 Micro/Win V4.0 SP6软件和USS协议V2.3,软件下载地址:西门子标准库指令:http://www.ad.siemens.com.cn/download/searchResult.aspx?searchText=S0010Micro/WIN V4.0 SP6软件下载地址:http://www.ad.siemens.com.cn/download/searchResult.aspx?searchText=S0002(2)PC/PPI电缆、S7-200、电源模块、通信电缆。(3)V20驱动装置和一台PC机。
2、在使用MicroWin software 创建项目之前,确认USS库文件已经安装:
http://p3.qhimg.com/t019aa10d6fb205ea0e.jpg?size=550x426
3、创建一个例程:3.1 设置通讯接口本例程使用PC/PPI电缆。
http://p0.qhimg.com/t0166fd1aec34375451.jpg?size=550x422
3.2 建立PC和PLC之间的连接
http://p9.qhimg.com/t0110431083b9005f4e.jpg?size=550x426
“双击刷新”搜索到PLC后,点击”确认”。
3.3 用电缆将S7-200 Port 0端口与V20的RS485接口相连(注意端口连接规则:V20的 P+对3、N-对8),如下图所示:
http://p1.qhimg.com/t016b054101ce6b90da.jpg?size=537x301
3.4 变频器参数设置:
V20 可以通过选择连接宏Cn010实现USS控制,也可以通过直接更改变频器参数的方法来实现。参数设置如下表所示:
表一:参数描述Cn010默认值实际设置备注P0700选择命令源55RS485为命令源P1000选择频率55RS485为速度设定值P2023RS485协议选择11USS协议P2010USS/MODBUS波特率86波特率为9600bpsP2011USS地址13变频器的USS地址P2012USS PZD长度22PZD部分的字数P2013USS PKW长度127127PKW部分字数可变P2014USS/MODBUS报文间断时间5000接收数据时间
3.5 使用USS协议的初始化模块初始化S7-200的PORT0端口:
EN使能:每次改变通讯状态都应该执行一次初始化指令。所以EN信号应该通过边沿检测元件脉冲激活。
Mode:用这个USS输入值选择通讯协议。
1:为端口0指定USS协议,并启用该协议。
0:为端口0指定PPI协议,并禁止USS协议。
Baud: 波特率:9600,19200…115200。
Active:激活驱动地址。
Done:当USS_INIT 指令执行完成后,Done=1。
Error:指令执行的结果,如果有错误,显示错误代码。Active:激活驱动地址举例:
http://p0.qhimg.com/t0149e706edfbcbb495.jpg?size=590x145
3.6 使用USS——CTRL模块来控制USS地址为3的变频器,为了运行变频器需要按照表一设置参数:
http://p9.qhimg.com/t019147e6bb8c49e353.jpg?size=500x411
状态表:
http://p1.qhimg.com/t01e77f85aba0c6502b.jpg?size=590x184
功能块定义:
EN:通常情况总是激活。
RUN:指示驱动为启用(1),或禁止(0)。
OFF2:允许V20自由停车。
OFF3:允许V20快速停止。
F _ACK:V20故障复位。
DIR:V20转动方向(0:逆时针;1:顺时针)。
Drive:V20地址 0-31。
Speed:速度给定值,以全速的百分比给出 (-200.0~~200.0%,负值时,V20反向)。
Resp_R:轮询V20,扫描时=1,并更新下面值。
Error:错误字节,参见表:USS指令执行错误。
Status:V20返回状态值。
Speed:V20速度,(-200.0~~200.0%)。
Run_EN:V20运行状态(1:运行;0:停止)。
D_DIR:V20转动方向(0:逆时针;1:顺时针)
Inhibit:V20禁止位状态。 (0:启用;1:禁止)。要清除禁止位,必须将Fault清零,
RUN,OFF2, OFF3输入也要清零。
Fault:指示故障状态。根据V20故障表确认故障。故障排除后,置位F _ACK使Fault
清零。
表二:Error 信息http://p6.qhimg.com/t01d65fbaf6225dcf77.png?size=559x609
3.7 库存储区分配:在编译程序之前,选择 “程序块” ->“ 库” 右键,选择“库存储区”。在点击 “建议地址” 选择V存储区的地址后点击 “OK”退出。
http://p1.qhimg.com/t01ccd122b0ef8b3379.jpg?size=550x427
3.8 读写U16类型参数:3.81举例:使用USS_RPM_W读取参数P0700的值;
http://p1.qhimg.com/t010213e2ef6c926ec1.jpg?size=590x207
状态表:
http://p8.qhimg.com/t01539627cfcc87cd8f.jpg?size=590x314
注意:
(1)写参数P1000,其数据类型为U16无符号整数。
(2)只要给V350.0一个上升沿,就完成一次P1000参数的写操作。
(3)EEPR~的逻辑为0时,写入的值只保存到RAM中,为1时,写入得值保存到EEPROM。
(4)EEPROM中写数据是有次数限制的,V20最多不超过50000次。3.9 读写U32类型参数:3.9.1举例:使用USS_RPM_D读取参数P0771.In000的值;
http://p1.qhimg.com/t013f87540565fa68b9.jpg?size=590x211
状态表:
http://p6.qhimg.com/t015e7ca6963ca0dffe.jpg?size=590x336
注意:
(1)读参数P771,其数据类型为U32无符号整数。
(2)只要给V400.0一个上升沿,就完成一次P771参数的读操作。
(3)读入的参数被放在VD432里。16#00150000=21.0。
(4)需要注意的是Index为0时代表读Pxxx.0参数组。3.9.2 举例:使用USS_WPM_D设置参数P0771.In000
http://p5.qhimg.com/t018a5f46bb8995827b.jpg?size=590x273
状态表:
http://p1.qhimg.com/t0146125635a3129b7e.jpg?size=590x354
注意:
(1)写参数P771,其数据类型为U32无符号整数。
(2)只要给V450.0一个上升沿,就完成一次P771参数的写操作。
(3)EEPR~的逻辑为0时,写入的值只保存到RAM中,为1时,写入得值保存到EEPROM。
(4)EEPROM中写数据是有次数限制的,V20最多不超过50000次。3.10读写Float类型参数:3.10.1举例:使用USS_RPM_R读取参数P0305.In001的值;
状态表:
http://p3.qhimg.com/t013c48938f63fcd5f4.jpg?size=590x376
注意:
(1)读参数P0305.In001,其数据类型为浮点数。
(2)只要给V550.0一个上升沿,就完成一次P0305.In001参数的读操作。
(3)读入的参数被放在VD532里。
(4)需要注意的是Index为1时代表读Pxxx.1参数组。3.10.2举例:使用USS_WPM_R设置参数P0305.In001=1.5A
http://p1.qhimg.com/t0170fae3567564df9a.jpg?size=590x270
状态表:
http://p1.qhimg.com/t01e5c1250c8b4e3fba.jpg?size=590x382
注意:
(1)写参数P0305.In001,其数据类型为浮点数。P0305更改条件:P0010=1快速调试。
(2)只要给V550.0一个上升沿,就完成一次参数P0305.In001的写操作。
(3)EEPR~的逻辑为0时,写入的值只保存到RAM中,为1时,写入得值保存到EEPROM。
(4)EEPROM中写数据是有次数限制的,V20最多不超过50000次。
强烈支持楼主ing…… 无回帖,不论坛,这才是人道。
画面感太强了,仿佛身临其境! 原来还有这种操作,长见识了! 蹲个后续,楼主记得更新呀,在线等挺急的~ 路过混个脸熟,顺便为优质内容打 call~ 笑不活了,评论区比正文还精彩! 楼主太会说了,字字句句都在理 求个链接 / 教程,楼主好人一生平安~
页:
[1]
2