西门子数字量信号板 SB DT04
1 系统配置
1.1软硬件配置
(1)配备支持USS通信功能控制单元G120变频器,异步电机。本例中,使用的控制单元是CU240E-2,固件版本V4.5。
(2)S7-200 PLC,与PC的连接电缆。本例中,使用的是CPU224 XP CN,连接电缆使用CP5512。
(3)安装了Step7 Micro-Win V4.0软件和USS协议库的PC机。本例中,使用的是Step7 Micro-Win V4.0 SP6,USS协议库为2.3版本。
在进行PLC编程之前,请确认USS协议库已经安装,如图1-1。
图1-1
2.2 S7-200与控制单元间的接线
图1-2
CU240E-2的控制端子排如图1-2,从控制单元底部看,共有5个接线端子,其中2号端子为RS485P,3号端子为RS485N,用于通信数据的发送和接收。
图1-3
S7-200作为USS通信主站,其通信端口和变频器从站的接线如图1-3。在通信网络的首、末端需要使用终端电阻。
对于S7-200,需要在通信端口端子3和8之间,连接一阻值为120欧姆的电阻。
对于变频器,把通信网络末端的CU240E-2终端电阻拨码开关拨到ON位置即可(位置在图1-1中,标号⑨);中间位置的CU240E-2,终端电阻拨码开关必须拨到OFF位置。
本例中,S7-200(CPU224 XP CN)使用通信端口Port 0和变频器进行通信。
2 变频器设置
2.1 地址设置
变频器的USS通信地址可以通过控制单元上的总线地址拨码开关(位置在图1-1中,标号⑤)进行设置。当地址拨码开关的位置都为OFF时,也可用过参数P2021进行设置。
2.2 参数设置
除了设置地址之外,还需要对变频器一些基本的通信参数进行设置,才可以进行USS通信,如表2-1所示:
表2-1
参数 | 描述 |
P0015 = 21 | 变频器宏程序。 15:通过现场总线控制 设置方法:P10=1 → P15=21 → P10=0 |
p2030 = 1 | 现场总线协议选择 1:USS协议 |
p2020 | 现场总线波特率 设置范围是 4800 bit/s … 187500 bit/s,出厂为 19200 bit/s 本例使用:6(9600) |
P2021 | USS地址(在地址拨码开关都为OFF时,才有效) 本例使用:3 |
p2040 | 过程数据监控时间 指没有收到过程数据时发出报警的延时。 注:必须根据从站数量、总线波特率加以调整,出厂设置为 100 ms。 |
西门子数字量信号板 SB DT04
3 PLC编程
3.1使用USS协议的初始化模块初始化S7-200的PORT0端口
图3-1
功能块说明:
注: 此处以及下文的“功能块说明”仅介绍了功能块内的主要管脚
功能,未说明的管脚功能,请参考Step7 Micro-Win V4.0软件的
帮助文件。
输入:
EN:使能。每次改变通讯状态都应该执行一次初始化指令,EN信号应该通过脉冲激活。本例中,Port 0端口一直作为USS通信端口使用,因此使用SM0.1初始化一次即可。
Mode:1——为端口0USS协议,并启用该协议。
Baud:波特率,应与变频器定义的波特率*。本例中,使用9600。
Active:激活驱动器地址,参考图3-2。本例中,使用2#1000,即激活驱动器地址3。
图3-2 激活驱动器地址3和5
3.2 使用USS_CTRL功能块控制变频器的运行
3.2.1 USS_CTRL功能块编程
图3-3
功能块说明:
输入:
EN:通常情况总是激活。
RUN:启动变频器。0-停止;1-启动。
OFF2:自由停车。0-正常;1-自由停车。
OFF3:快速停止。0-正常;1-快速停止。
F _ACK:故障复位。通过上升沿对变频器进行故障复位。
DIR:运行方向。0-正转;1-反转
Drive:变频器USS地址,0-31。本例使用3。
Speed~:速度设定值,通过百分比进行设定,范围 -200.0~~200.0%。
输出:
Error:错误代码。有关错误代码说明,请参考表3-1。
Status:变频器返回的状态字。有关G120变频器状态字,请参考《参数手册》有关r52参数的说明。
Speed:变频器返回的速度实际值的百分比。
Run_EN:变频器运行状态。0-停止;1-运行。
D_Dir:变频器运行方向。0-正转;1-反转。
Inhibit:变频器禁止位状态。0-正常;1-禁止。
Fault:变频器故障状态。0-正常;1-故障。
表3-1
错误代码 | 说明 |
0 | 无错。 |
1 | 驱动器不应答。 |
2 | 检测到来自驱动器的应答中检验和错误。 |
3 | 检测到来自驱动器的应答中校验错误。 |
4 | 来自用户程序的干扰造成错误。 |
5 | 尝试非法命令。 |
6 | 提供非法驱动器地址。 |
7 | 未为USS协议设置通讯端口。 |
8 | 通讯端口正在忙于处理指令。 |
9 | 驱动器速度输入超出范围。 |
10 | 驱动器应答长度不正确。 |
11 | 驱动器应答*个字符不正确。 |
12 | 驱动器应答中的字符长度不受USS指令支持。 |
13 | 错误的驱动器应答。 |
14 | 提供的DB_Ptr地址不正确。 |
15 | 提供的参数号不正确。 |
16 | 选择了无效协议。 |
17 | USS激活,不允许改动。 |
18 | 了非法波特率。 |
19 | 无通讯:驱动器未设为激活。 |
20 | 驱动器应答中的参数或数值不正确或包含错误代码。 |
21 | 返回一个双字数值,而不是请求的字数值。 |
22 | 返回一个字数值,而不是请求的双字数值。 |
3.2.2 分配库存储区,编译,下载。
在编译程序之前,选择 “程序块” ->“ 库”, 右键点击,选择“库存储区”。在弹出的对话框中点击 “建议地址” 选择V存储区的地址后点击 “OK”退出。如图3-4。
图3-4