西门子 品牌
代理商厂商性质
上海市所在地
SINAMICS V20 3AC380-480V-15/+10% 47-63Hz 标称功率 1.5kW mit 150% 过载 用于 60sec 未过滤 I/O-Interface:4DI,2DO, 2AI,1AO 现场总线:USS/MODBUS RTU mit eingebautem BOP 防护方式 IP20/UL Open 型式 尺寸:FSA 90x 166x 146(宽x高x深)
MODBUS通讯
概述
在 MODBUS 通讯中,只有主站可以发起通讯,从站应答。主站可使用两种方式向从站发送消息。一种是单播模式(地址为 1 至 247),此模式下主站直接寻址一个从站;另一种是广播模式(地址为 0),此模式下主站寻址所有从站。
当从站被寻址并收到消息后,可以通过功能代码得知要执行的任务。从站接收的某些数据对应由功能代码定义的任务。此外还包含一个用于错误检测的 CRC(循环冗余校验)码。
MODBUS 从站在接收并处理一个单播消息之后会发送应答,此前提是接收的消息中未检测到错误。如果发生处理错误,从站会发送错误消息进行应答。消息中有如下固定的成帧字符不可被更改:8 个数据位、1 个奇偶校验位以及 1 个或 2 个停止位。
支持的功能代码
SINAMICS V20仅支持三种功能代码。如果收到带有未知功能代码的请求,从站会返回错误消息。
FC3 - 读保持寄存器
当接收的消息带有 FC = 0 x 03 时,则为 4 字节数据,即 FC3 有 4 字节数据:
字节 1 | 字节 2 | 字节 3 | 字节 4 | 字节 5 | 字节 6 | 字节 7 | 字节 8 |
---|---|---|---|---|---|---|---|
地址 | FC(0x03) | 起始地址 | 寄存器数 | CRC | |||
高 | 低 | 高 | 低 | 高 | 低 |
变频器的响应
字节 1 | 字节 2 | 字节 3 | 字节 4 | 字节 5 | ... | 字节 N*2 - 1 | 字节 N*2 | 字节 N*2 + 1 | 字节 N*2 + 2 |
---|---|---|---|---|---|---|---|---|---|
地址 | FC(0x03) | 字节数 | 寄存器 1 的值 | ... | 寄存器 N 的值 | CRC | |||
高 | 低 | 高 | 低 | 高 | 低 |
FC6 - 写单一寄存器
当接收的消息带有 FC = 0x06 时,则为 4 字节数据,即 FC6 有 4 字节数据:
字节 1 | 字节 2 | 字节 3 | 字节 4 | 字节 5 | 字节 6 | 字节 7 | 字节 8 |
---|---|---|---|---|---|---|---|
地址 | FC(0x06) | 起始地址 | 新寄存器值 | CRC | |||
高 | 低 | 高 | 低 | 高 | 低 |
变频器的响应
字节 1 | 字节 2 | 字节 3 | 字节 4 | 字节 5 | 字节 6 | 字节 7 | 字节 8 |
---|---|---|---|---|---|---|---|
地址 | FC(0x06) | 起始地址 | 新寄存器值 | CRC | |||
高 | 低 | 高 | 低 | 高 | 低 |
FC16 - 写多寄存器
当接收的消息带有 FC = 0x10 时,则为 5 + N 字节数据,即 FC16 有 5 + N 字节数据:
字节 1 | 字节 2 | 字节 3 | 字节 4 | 字节 5 | 字节 6 | 字节 7 | ... | 字节 N - 1 | 字节 N | 字节 N + 1 | 字节 N + 2 |
---|---|---|---|---|---|---|---|---|---|---|---|
地址 | FC(0x10) | 起始地址 | 寄存器数 | 字节数 | ... | 寄存器 N 的值 | CRC | ||||
高 | 低 | 高 | 低 | 高 | 低 | 高 | 低 |
变频器的响应
字节 1 | 字节 2 | 字节 3 | 字节 4 | 字节 5 | 字节 6 | 字节 7 | 字节 8 |
---|---|---|---|---|---|---|---|
地址 | FC(0x10) | 起始地址 | 寄存器数 | CRC | |||
高 | 低 | 高 | 低 | 高 | 低 |
异常响应
如果在 MODBUS 请求处理时检测到错误,从站会返回请求的功能代码进行响应,但数据域中只包含功能代码的zui高位以及异常代码。但是,在全局地址 0 上检测到的任何错误都不会产生响应,因为所有从站不能同时进行响应。
如果在接收到的消息中检测到错误(例如,奇偶校验错误、CRC 错误等),从站不会向主站发送响应。
请注意,如果收到带有 FC16 的请求且其中包含一个变频器无法执行的写指令(包括向零条目中写入),从站即使发送异常响应也仍然会执行其他有效的写指令。
SINAMICS V20 支持以下 MODBUS 异常代码:
异常代码 | MODBUS名称 | 含义 |
---|---|---|
01 | 非功能代码 | 不支持的功能代码 – 仅支持 FC3、FC6 和 FC16 |
02 | 非法数据地址 | 查询无效地址。 |
03 | 非法数据值 | 识别到无效的数据值。 |
04 | 从站装置故障 | 从站装置在进行处理操作时发生不可恢复的错误。 |
下表列出了异常代码所对应的错误情况:
错误描述 | 异常代码 |
---|---|
未知功能代码 | 01 |
读寄存器,不在范围内 | 02 |
写寄存器,不在范围内 | 02 |
过多寄存器(>125)的读请求 | 03 |
过多寄存器(>123)的写请求 | 03 |
消息长度不正确 | 03 |
向只读寄存器中写入 | 04 |
写寄存器,参数访问错误 | 04 |
读寄存器,参数管理器错误 | 04 |
向零条目中写入 | 04 |
未知错误 | 04 |
变频器基本设置
参数 | 功能 | 设置 |
---|---|---|
P0010 | 调试参数 | = 30:恢复出厂设置 |
P0970 | 工厂复位 | 可设为以下值: = 1:复位所有参数(不包括用户默认设置)至默认 值 = 21:复位所有参数及所有用户默认设置至工厂 复位状态 说明:参数 P2010、P2021、P2023 的值不受工厂复位影响。 |
P0003 | 用户访问级别 | = 3 |
P0700 | 选择命令源 | = 5:RS485 上的 USS / MODBUS 通讯 工厂缺省值:1(操作面板) |
P2010[0] | USS / MODBUS波特率 | 可设为以下值: = 6:9600 bps(工厂缺省值) = 7:19200 bps = 8:38400 bps ... =12:115200 bps |
P2014[0] | USS / MODBUS报文间断时间[ms] | 时间设为 0 时不发生故障(即看门狗被禁止)。 |
P2021 | Modbus地址 | 设置变频器的*地址。 范围:1 至 247(工厂缺省值:1) |
P2022 | Modbus应答超时[ms] | 范围:0 至 10000(工厂缺省值:1000) |
P2023 | RS485协议选择 | = 2:Modbus 工厂缺省值:1(USS) 说明:在更改 P2023 后,须对变频器重新上电。在此过程中,请在变频器断电后等待数秒,确保 LED 灯熄灭或显示屏空白后方可再次接通电源。如果通过 PLC 更改 P2023,须确保所做出的更改已通过 P0971 保存到 EEPROM 中。 |
r2024[0] ... r2031[0] | USS / MODBUS错误统计 | 无论 P2023 中选择何种通讯协议,都可以报告 RS485 上的报文信息状态。 |
r2018[0...7] | CO:通过RS485上的USS / MODBUS接收的PZD | 显示通过 RS485 上的 USS/MODBUS 接收的过程数据。 |
P2019[0...7] | CI:通过RS485上的USS / MODBUS发送的PZD | 显示通过 RS485 上的 USS/MODBUS 发送的过程数据。 |
P2034 | RS485 上的 MODBUS 奇偶校验 | 设置 RS485 上 MODBUS 报文的奇偶校验。 可设为以下值: = 0:无奇偶校验 = 1:奇校验 = 2:偶校验 |
P2035 | RS485 上的 MODBUS 停止位 | 设置 RS485 上 MODBUS 报文中的停止位数。 可设为以下值: = 1:1 个停止位 = 2:2 个停止位 |
映射表
下表显示了 SINAMICS V20 变频器支持的寄存器。“访问类型”一列中的“R”、“W”、“R/W”分别代表读、写、读/写。下表中带 * 的寄存器只有在连接了 I/O 扩展模块之后才有效。
HSW(转速设定值)、HIW(实际转速)、STW(控制字)、ZSW(状态字)为控制数据。更多详情请参见“参数列表”章节的参数 r2018 和 P2019。
寄存器编号 | 描述 | 访问类型 | 单位 | 定标系数 | 范围或开/关文本 | 读取 | 写入 | ||
---|---|---|---|---|---|---|---|---|---|
变频器 | MODBUS | ||||||||
0 | 40001 | 看门狗时间 | R/W | ms | 1 | 0 - 65535 | - | - | |
1 | 40002 | 看门狗动作 | R/W | - | 1 | - | - | - | |
2 | 40003 | 频率设定值 | R/W | % | 100 | 0.00 - 100.00 | HSW | HSW | |
3 | 40004 | 运行使能 | R/W | - | 1 | 0 - 1 | STW:3 | STW:3 | |
4 | 40005 | 正向/方向命令 | R/W | - | 1 | 0 - 1 | STW:11 | STW:11 | |
5 | 40006 | 启动命令 | R/W | - | 1 | 0 - 1 | STW:0 | STW:0 | |
6 | 40007 | 故障确认 | R/W | - | 1 | 0 - 1 | STW:7 | STW:7 | |
7 | 40008 | PID 设定值参考 | R/W | % | 100 | -200.0 - 200.0 | P2240 | P2240 | |
8 | 40009 | PID 使能 | R/W | - | 1 | 0 - 1 | r0055.8 | (BICO) P2200 | |
9 | 40010 | 电流极限值 | R/W | % | 10 | 10.0 - 400.0 | P0640 | P0640 | |
10 | 40011 | 加速时间 | R/W | s | 100 | 0.00 - 650.0 | P1120 | P1120 | |
11 | 40012 | 减速时间 | R/W | s | 100 | 0.00 - 650.0 | P1121 | P1121 | |
12 | 40013 | (保留) | |||||||
13 | 40014 | 数字量输出 1 | R/W | - | 1 | 高 | 低 | r0747.0 | (BICO) P0731 |
14 | 40015 | 数字量输出 2 | R/W | - | 1 | 高 | 低 | r0747.1 | (BICO) P0732 |
15 | 40016 | 基准频率 | R/W | Hz | 100 | 1.00 - 550.00 | P2000 | P2000 | |
16 | 40017 | PID 上限 | R/W | % | 100 | -200.0 - 200.0 | P2291 | P2291 | |
17 | 40018 | PID 下限 | R/W | % | 100 | -200.0 - 200.0 | P2292 | P2292 | |
18 | 40019 | 比例增益 | R/W | - | 1000 | 0.000 - 65.000 | P2280 | P2280 | |
19 | 40020 | 积分增益 | R/W | s | 1 | 0 - 60 | P2285 | P2285 | |
20 | 40021 | 微分增益 | R/W | - | 1 | 0 - 60 | P2274 | P2274 | |
21 | 40022 | 反馈增益 | R/W | % | 100 | 0.00 - 500.00 | P2269 | P2269 | |
22 | 40023 | 低通 | R/W | - | 100 | 0.00 - 60.00 | P2265 | P2265 | |
23 | 40024 | 频率输出 | R | Hz | 100 | -327.68 - 327.67 | r0024 | r0024 | |
24 | 40025 | 转速 | R | RPM | 1 | -16250 - 16250 | r0022 | r0022 | |
25 | 40026 | 电流 | R | A | 100 | 0 - 163.83 | r0027 | r0027 | |
26 | 40027 | 扭矩 | R | Nm | 100 | -325.00 - 325.00 | r0031 | r0031 | |
27 | 40028 | 功率实际值 | R | kW | 100 | 0 - 327.67 | r0032 | r0032 | |
28 | 40029 | 总能耗 | R | kWh | 1 | 0 - 32767 | r0039 | r0039 | |
29 | 40030 | 直流母线电压 | R | V | 1 | 0 - 32767 | r0026 | r0026 | |
30 | 40031 | 参考 | R | Hz | 100 | -327.68 - 327.67 | r0020 | r0020 | |
31 | 40032 | 额定功率 | R | kW | 100 | 0 - 327.67 | r0206 | r0206 | |
32 | 40033 | 电压输出 | R | V | 1 | 0 - 32767 | r0025 | r0025 | |
33 | 40034 | 正向/反向 | R | - | 1 | FWD | REV | ZSW:14 | ZSW:14 |
34 | 40035 | 停止/运行 | R | - | 1 | 停止 | 运行 | ZSW:2 | ZSW:2 |
35 | 40036 | zui大频率运行 | R | - | 1 | zui大 | 否 | ZSW:10 | ZSW:10 |
36 | 40037 | 控制方式 | R | - | 1 | 串行 | 本地 | ZSW:9 | ZSW:9 |
37 | 40038 | 使能 | R | - | 1 | ON | OFF | ZSW:0 | ZSW:0 |
38 | 40039 | 运行准备就绪 | R | - | 1 | 就绪 | OFF | ZSW:1 | ZSW:1 |
39 | 40040 | 模拟量输入 1 | R | % | 100 | -300.0 - 300.0 | r0754[0] | r0754[0] | |
40 | 40041 | 模拟量输入 2 | R | % | 100 | -300.0 - 300.0 | r0754[1] | r0754[1] | |
41 | 40042 | 模拟量输出 1 | R | % | 100 | -100.0 - 100.0 | r0774[0] | r0774[0] | |
43 | 40044 | 实际频率 | R | % | 100 | -100.0 - 100.0 | HIW | HIW | |
44 | 40045 | PID 设定值输出 | R | % | 100 | -100.0 - 100.0 | r2250 | r2250 | |
45 | 40046 | PID 输出 | R | % | 100 | -100.0 - 100.0 | r2294 | r2294 | |
46 | 40047 | PID 反馈 | R | % | 100 | -100.0 - 100.0 | r2266 | r2266 | |
47 | 40048 | 数字量输入 1 | R | - | 1 | 高 | 低 | r0722.0 | r0722.0 |
48 | 40049 | 数字量输入 2 | R | - | 1 | 高 | 低 | r0722.1 | r0722.1 |
49 | 40050 | 数字量输入 3 | R | - | 1 | 高 | 低 | r0722.2 | r0722.2 |
50 | 40051 | 数字量输入 4 | R | - | 1 | 高 | 低 | r0722.3 | r0722.3 |
53 | 40054 | 故障 | R | - | 1 | 故障 | OFF | ZSW:3 | ZSW:3 |
54 | 40055 | zui后一个故障 | R | - | 1 | 0 - 32767 | r0947[0] | r0947[0] | |
55 | 40056 | 故障 1 | R | - | 1 | 0 - 32767 | r0947[1] | r0947[1] | |
56 | 40057 | 故障 2 | R | - | 1 | 0 - 32767 | r0947[2] | r0947[2] | |
57 | 40058 | 故障 3 | R | - | 1 | 0 - 32767 | r0947[3] | r0947[3] | |
58 | 40059 | 报警 | R | - | 1 | 报警 | OK | ZSW:7 | ZSW:7 |
59 | 40060 | zui后一个报警 | R | - | 1 | 0 - 32767 | r2110 | r2110 | |
60 | 40061 | 变频器版本 | R | - | 100 | 0.00 - 327.67 | r0018 | r0018 | |
61 | 40062 | 变频器型号 | R | - | 1 | 0 - 32767 | r0201 | r0201 | |
99 | 40100 | STW | R/W | - | 1 |
| PZD 1 | PZD 1 | |
100 | 40101 | HSW | R/W | - | 1 |
| PZD 2 | PZD 2 | |
109 | 40110 | ZSW | R | - | 1 |
| PZD 1 | PZD 1 | |
110 | 40111 | HIW | R | - | 1 |
| PZD 2 | PZD 2 | |
199 | 40200 | 数字量输出 1 | R/W | - | 1 | 高 | 低 | r0747.0 | (BICO) P0731 |
200 | 40201 | 数字量输出 2 | R/W | - | 1 | 高 | 低 | r0747.1 | (BICO) P0732 |
201 | 40202 | 数字量输出 3 * | R/W | - | 1 | 高 | 低 | r0747.2 | (BICO) P0733 |
202 | 40203 | 数字量输出 4 * | R/W | - | 1 | 高 | 低 | r0747.3 | (BICO) P0734 |
219 | 40220 | 模拟量输出 1 | R | % | 100 | -100.0 - 100.0 | r0774[0] | r0774[0] | |
239 | 40240 | 数字量输入 1 | R | - | 1 | 高 | 低 | r0722.0 | r0722.0 |
240 | 40241 | 数字量输入 2 | R | - | 1 | 高 | 低 | r0722.1 | r0722.1 |
241 | 40242 | 数字量输入 3 | R | - | 1 | 高 | 低 | r0722.2 | r0722.2 |
242 | 40243 | 数字量输入 4 | R | - | 1 | 高 | 低 | r0722.3 | r0722.3 |
243 | 40244 | 数字量输入 5 * | R | - | 1 | 高 | 低 | r0722.4 | r0722.4 |
244 | 40245 | 数字量输入 6 * | R | - | 1 | 高 | 低 | r0722.5 | r0722.5 |
259 | 40260 | 模拟量输入 1 | R | % | 100 | -300.0 - 300.0 | r0754[0] | r0754[0] | |
260 | 40261 | 模拟量输入 2 | R | % | 100 | -300.0 - 300.0 | r0754[1] | r0754[1] | |
299 | 40300 | 变频器型号 | R | - | 1 | 0 - 32767 | r0201 | r0201 | |
300 | 40301 | 变频器版本 | R | - | 100 | 0.00 - 327.67 | r0018 | r0018 | |
319 | 40320 | 额定功率 | R | kW | 100 | 0 - 327.67 | r0206 | r0206 | |
320 | 40321 | 电流极限值 | R/W | % | 10 | 10.0 - 400.0 | P0640 | P0640 | |
321 | 40322 | 加速时间 | R/W | s | 100 | 0.00 - 650.0 | P1120 | P1120 | |
322 | 40323 | 减速时间 | R/W | s | 100 | 0.00 - 650.0 | P1121 | P1121 | |
323 | 40324 | 基准频率 | R/W | Hz | 100 | 1.00 - 650.0 | P2000 | P2000 | |
339 | 40340 | 参考 | R | Hz | 100 | -327.68 - 327.67 | r0020 | r0020 | |
340 | 40341 | 转速 | R | RPM | 1 | -16250 - 16250 | r0022 | r0022 | |
341 | 40342 | 频率输出 | R | Hz | 100 | -327.68 - 327.67 | r0024 | r0024 | |
342 | 40343 | 电压输出 | R | V | 1 | 0 - 32767 | r0025 | r0025 | |
343 | 40344 | 直流母线电压 | R | V | 1 | 0 - 32767 | r0026 | r0026 | |
344 | 40345 | 电流 | R | A | 100 | 0 - 163.83 | r0027 | r0027 | |
345 | 40346 | 扭矩 | R | Nm | 100 | -325.00 - 325.00 | r0031 | r0031 | |
346 | 40347 | 功率实际值 | R | kW | 100 | 0 - 327.67 | r0032 | r0032 | |
347 | 40348 | 总能耗 | R | kWh | 1 | 0 - 32767 | r0039 | r0039 | |
348 | 40349 | 手动/自动 | R | - | 1 | 手动 | 自动 | r0807 | r0807 |
399 | 40400 | 故障 1 | R | - | 1 | 0 - 32767 | r0947[0] | r0947[0] | |
400 | 40401 | 故障 2 | R | - | 1 | 0 - 32767 | r0947[1] | r0947[1] | |
401 | 40402 | 故障 3 | R | - | 1 | 0 - 32767 | r0947[2] | r0947[2] | |
402 | 40403 | 故障 4 | R | - | 1 | 0 - 32767 | r0947[3] | r0947[3] | |
403 | 40404 | 故障 5 | R | - | 1 | 0 - 32767 | r0947[4] | r0947[4] | |
404 | 40405 | 故障 6 | R | - | 1 | 0 - 32767 | r0947[5] | r0947[5] | |
405 | 40406 | 故障 7 | R | - | 1 | 0 - 32767 | r0947[6] | r0947[6] | |
406 | 40407 | 故障 8 | R | - | 1 | 0 - 32767 | r0947[7] | r0947[7] | |
407 | 40408 | 报警 | R | - | 1 | 0 - 32767 | r2110[0] | r2110[0] | |
498 | 40499 | 参数错误代码 | R | - | 1 | 0 - 254 | - | - | |
499 | 40500 | PID 使能 | R/W | - | 1 | 0 - 1 | r0055.8 | (BICO) P2200 | |
500 | 40501 | PID 设定值参考 | R/W | % | 100 | -200.0 - 200.0 | P2240 | P2240 | |
509 | 40510 | 低通 | R/W | - | 100 | 0.00 - 60.0 | P2265 | P2265 | |
510 | 40511 | 反馈增益 | R/W | % | 100 | 0.00 - 500.00 | P2269 | P2269 | |
511 | 40512 | 比例增益 | R/W | - | 1000 | 0.000 - 65.000 | P2280 | P2280 | |
512 | 40513 | 积分增益 | R/W | s | 1 | 0 - 60 | P2285 | P2285 | |
513 | 40514 | 微分增益 | R/W | - | 1 | 0 - 60 | P2274 | P2274 | |
514 | 40515 | PID 上限 | R/W | % | 100 | -200.0 - 200.0 | P2291 | P2291 | |
515 | 40516 | PID 下限 | R/W | % | 100 | -200.0 - 200.0 | P2292 | P2292 | |
519 | 40520 | PID 设定值输出 | R | % | 100 | -100.0 - 100.0 | r2250 | r2250 | |
520 | 40521 | PID 反馈 | R | % | 100 | -100.0 - 100.0 | r2266 | r2266 | |
521 | 40522 | PID 输出 | R | % | 100 | -100.0 - 100.0 | r2294 | r2294 | |
549 | 40550 | 参数号 | RW | - | 1 | 0 - 65535 | - | - | |
550 | 40551 | 参数下标 | RW | - | 1 | 0 - 65535 | - | - | |
551 | 40552 | 预留 | RO | - | - | - | - | - | |
553 | 40554 | 参数高位字 | RW | - | 1 | 0 - 65535 | - | - | |
554 | 40555 | 参数低位字 | RW | - | 1 | 0 - 65535 | - | - | |
557 | 40558 | 参数高位字 | RO | - | 1 | 0 - 65535 | - | - | |
558 | 40559 | 参数低位字 | RO | - | 1 | 0 - 65535 | - | - |
编程举例
以下程序为计算 MODBUS RTU 的 CRC 的示例。
unsigned int crc_16 (unsigned char *buffer, unsigned int length)
{
unsigned int i, j, temp_bit, temp_int, crc;
crc = 0xFFFF;
for ( i = 0; i < length; i++ )
{
temp_int = (unsigned char) *buffer++;
crc ^= temp_int;
for ( j = 0; j < 8; j++ )
{
temp_bit = crc & 0x0001;
crc >>= 1;
if ( temp_bit != 0 )
crc ^= 0xA001;
}
}
}
参数定标
由于受到 MODBUS 协议中整数数据的限制,在发送变频器参数值之前有必要将其进行换算。通过定标可实现这一换算,参数定标是用一个系数乘以带有一位小数的参数值,从而去除其小数部分。具体的定标系数见上表。
BICO参数
在参数处理的过程中会同时在后台进行BICO参数的更新。由于受到寄存器值的限制,只能向 BICO 参数中写入‘0’或‘1’。这就表示 BICO 输入始终为静态值‘0’或‘1’。而其先前与另一参数的连接则会丢失。读取BICO参数即返回当前的BICO输出值。
例如:MODBUS 寄存器号 40200。向该寄存器中写入值 0 或 1 即使其 BICO 输入 P0731 静态等于所写的值。读取参数即返回 BICO 输出,该输出值存储于 r0747.0。
故障
满足以下三个条件时,变频器会显示故障 F72:
西门子V206SL3210-5BE21-5UV0代理商
西门子V206SL3210-5BE21-5UV0代理商