[西门子] S7 200/200smart及1200与ABB ACS550进行Modbus通讯

[复制链接]
查看69 | 回复0 | 2024-4-14 17:11:10 | 显示全部楼层 |阅读模式
面只说200smart为例。200和1200一样(请自己下载ABB550变频器说明书)
使用S7 200Smart库中的Modbus主站通讯程序。具体步骤如下:
1. ABB ACS 550变频器设置:
9802=1 MODBUS
5302=3 站号
5303=9.6kbit/s 波特率
5304=0 无校验
5305为0 ABB DRV LIM(ABB传动简装版)
1001=10 启/停和方向信号来自现场总线(由MODBUS控制变频器启停)
1102=0 选择外部控制1
1103=8 给定值来自串行通讯
2. 在STEP 7-MicroWIN SMART软件中编写程序。(如图)













3. 下载并调试程序。
程序编写完成后,使用SMART 200CPU自带的以太网口进行下载至CPU中。并将CPU切换至运行状态。通过STEP 7-MicroWIN SMART软件中的状态图表来进行在线修改变量,从而达到启、停和改变变频器的转速,或监控变频器的实际频率与电流等。
变频器参数设定完成后,给变频器断电,接好SMART 200CPU与变频器之间的串行通讯电缆,并重新启动变频器,记住不要忘了将变频器的控制模式切换远程控制模式下。
打开STEP 7-MicroWIN SMART软件中的状态图表,输入需要监控的变量。在程序中使用了VB300来监控变频器0XXXX寄存器中的控制字,在说明书中已明确了该寄存器中的控制字为只读(除非使用了强制功),因此使用读功能来读取,读取方式为字节,如V300.0,V300.1…;同样我们可以读取1XXXX寄存器中的状态字。(如图)




启动变频器:在ABB ACS550变频器的手册中,已定义了变频器的控制字是直接映射到了4XXXX寄存器中的40001(在本程序中对应CPU中的存贮区地址为VW500),是以字节的形式读写的(以十六进制存格式保存);4XXXX寄存器中的40002(在本程序中对应CPU中的存贮区地址为VW502)为外部控制1,同样也是以字节的形式读写的。
因此在状态图表中地址栏输入VW500,在新值中输入1142后点击写入图标(十进制),初始化变频器。(记住,这一步不要省,是关键一步。在做通讯时,我就在这一步,卡了好几天,想想头还大,呵呵);变频器初始化完成后,再将VW500中的新值改为1151,并写入,此时变频器开始运行。要想停止变频器,输入1143(1142也可)并写入,就可以停止变频器。
转速输入:在状态图表中地址栏输入VW502,输入0~20000的值后,写入。这样变频器的转速会根据输入值的改变而改变;同样,如果想要监控变频器中实际运行参数,可以在状态图表中地址栏输入VW508,VW510,这样就可以显示相对应的参数值了(如图)。




这样我们就完成了S7 200SMART与ABB ACS550之间的Modbus通讯
下面是200的CPU226做得,1200的,没做










以上内容来源于网络


加群聊,二维码过期请使用面对面加群聊方式,输入1236

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则