西门子S7-200SMART通过MODBUS通信控制变频器的起停,如何随时看电流频率?

能随时起停变频器,能时时看到频率和电流,这个程序该怎么做... 能随时起停变频器,能时时看到频率和电流,这个程序该怎么做 展开
 我来答
宿友定芫
2020-01-08 · TA获得超过3742个赞
知道大有可为答主
回答量:3098
采纳率:32%
帮助的人:248万
展开全部

S7-200SMART提供了免费的MODBUS-RTU库程序,还要知道变频器的启动,停止,频率和电流对应的寄存器地址就可以编写程序了。

首先必须保证接线正确,PLC的端口3为+,8为-,如下图为PLC和V20的接线

然后是对变频器的参数进行设置,如:

P0700[0]
选择命令源

P2023[0]RS485
协议选择

P2010[0]USS/MODBUS
波特率

P2021[0]MODBUS
地址

P2022[0]MODBUS
应答超时

下面就要编程实现对变频器的控制:

1,调用Modbus
RTU的主站程序,初始化Modbus
Master端口:

EN:使能位,必须用SM0.0一直接通

Mode:为1
=
Modbus,
0
=
PPI
(stop
Modbus),用SM0.0一直接通

Baud:波特率,一般为9600

Parity:效验方式,0=无效验,1=奇效验,2=偶效验

Port:0=CPU集成的端口,1=通过扩展SB信号板的端口

Timeout:从站响应时间,超时时间,单位:ms毫秒

Done:完成标志位

Error:错误代码

2,控制变频器启动,读或写从站数据指令,变频器寄存器地址40100对应了变频器的启动。

EN:使能位,必须用SM0.0一直接通

First:读写请求,必须使用脉冲触发,加沿指令

Slave:从站地址(0-247)

RW:读写命令,1=写,0=读,此处要控制启动需要使用1

Addr:从站通信数据起始地址,要写Modbus地址

Count:
通信数据区地址的数量

DataPtr:主站通信数据区地址

Done:完成标志位

Error:错误代码

上图指令写入到VW0,可以控制变频器的正反转,每个变频器的对应的写入值不同。

3,读取变频器的相关参数,由上面的描述,RW为0,则为读取数据,此处为读取寄存器地址为40111的频率值,并进行转换,是否需要转换,需要看变频器的要求,其他品牌的变频器不一定需要。

需要特别注意的一边就是RS485为半双工通讯方式,每次对变频器的读写只能有一个指令在执行,所以需要进行轮询程序的编写。一般可以使用Done和Error做为下一个读写指令的启动指令。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式