S7-200和ACS550通讯(MODbus)(总结)

更新时间:2024-07-04 18:27:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

S7-200与ACS550做MODBUS通讯

1.S7-200做主站对ACS550进行读写参数 第一步:硬件连接

针 1 2 3 4 5 6 7 8 9 连接外壳 PROFIBUS名称 屏蔽 24V返回 RS-485信号B 发送申请 5V返回 +5V +24V RS-485信号A 不用 屏蔽 端口0/端口1 逻辑地 逻辑地 RS-485信号B RTS(TTL) 逻辑地 +5V,100欧姆串联电阻 +24V RS-485信号A 10位协议选择(输入) 机壳接地 通过上图确定连接电缆的连接,也就是九针串口的3和RS-485信号B+相连接,九针串口的8和RS-485信号A-相连接,就可以了。

ACS550变频器的28-32端子的拨码开关要打到on状态(即向下), 第二步:软件准备。

西门子s7-200编程软件中(3.2版本以上已经包含了MODBUS通讯的库,无须编程),安装完编程软件件后,安装西门子标准库文件就可以了。 第三步:变频器基本参数设置

1. 基本设置

99.01 ENGLISH

02 APPLICATION MODE-----FACTORY

04 MOTOR CTRL MODE------SCALAR(或DTC) 05~09 电机铭牌参数

10 MOTOR ID RUN MODE-----ID MAGN

98.02 COMM.MODULE LINK------STD MODBUS-----1 53.01 在9802设置为1时自动生成 02 站地址(如果要更改的话需先将5302设为0重启才能更改) 03 9600 04 0----奇偶校验 ,1个停止位,1-8个数据位

05 0----ABB DIVE

10 实际值(0102速度) 11 实际值(0103频率) 12 实际值(0104电流) 13 实际值(0105转矩) 14 实际值(0106功率) 15 实际值(0109电压)

(注:设置完通讯参数后无需刷新,必须重新上电更新。)

10.01 EXT1 STRT/STP/DIR-----COMM.CW(通讯启动变频器) KEY PAD(面板启动变频器)

要说明的是:10.01设置为COMM.CW时,电机的启停通过控制字来启停。即 初始化为16#476(1142),启动控制字为16#47F(1151),停止控制字为16#477(1143)。控制字传递给40001

11.01 KEY PAD REF SEL-----REF1(rmp) 02 外部给定选择------EXT1

03 EXT1 REF SELECT-----COMM.REF

五、读写变频器参数

在Modbus控制器的存储器中,控制字、状态字、参数和实际值的定位如下: 5310开始的数据中可以设置需要采集的实际值,如:5310----0102,5311---0103,5312---0104,5313---0105,5314---0106,5315---0109,该设置在变频器上设置,分别对应于速度,频率等参数。

40001的控制字为:初始化---16#476,启动----16#47F,停止-----16#477 控制字 40001 给定1 40002 给定2 40003 实际值1 40005 实际值2 40006 实际值3 40007 实际值4 40008 实际值5 40009 实际值5 40010 固定 10000 5310 5311 5312 5313 5314 5315 说明:40001是控制字,40002是给定,只要在上位机上这些地址中给出值,可以自动写入,无需变频器中设置;即控制字、给定值直接给到40001、40002中即可,40002中10000为给定频率25Hz(或转速)(10进制10000,20000对应最大频率50Hz),通过改变改值可设定不同频率(或转速);数据自动设置到相应参数中,查看参数可以看到参数发生变化。 第四步:PLC编程

同一时刻只能有一个读写功能(即 MBUS_MSG)使能,所以每一个读写功能(即 MBUS_MSG)都用上一个 MBUS_MSG 指令的 Done 完成位来激活。 本例给出启动变频器,并且给定50HZ的速度的编程。 1. 调用 Modbus RTU 主站初始化和控制子程序

使用 SM0.0 调用 MBUS_CTRL 完成主站的初始化,并启动其功能控制。

各参数意义如下:

EN 使能: 必须保证每一扫描周期都被使能(使用 SM0.0)

Mode 模式: 为 1 时,使能 Modbus 协议功能;为 0 时恢复为系统 PPI 协议 Baud 波特率: 支持的通讯波特率为1200,2400,4800,9600,19200,38400,57600,115200。 Parity 校验: 校验方式选择

0=无校验 ;1=奇较验 ;2=偶较验

Timeout 超时:主站等待从站响应的时间,以毫秒为单位,典型的设置值为 1000 毫秒(1秒),允许设置的范围为 1 - 32767。 注意: 这个值必须设置足够大以保证从站有时间响应。 Done 完成位: 初始化完成,此位会自动置1。可以用该位启动 MBUS_MSG 读写操作(见例程)

Error 初始化错误代码(只有在 Done 位为1时有效):

0= 无错误 ;1= 校验选择非法 ;2= 波特率选择非法 ;3= 模式选择非法 2. 调用 Modbus RTU 主站读写子程序MBUS_MSG,发送一个Modbus 请求;

同时要注意,Modbus的主站需要不断轮询扫描从站的数据,从而读取数据,但是写入的话只需要写入一次就够了。

可同时将所有的变频器参数读取过来,然后再分开来进行操作。

本文来源:https://www.bwwdw.com/article/2bl.html

Top