- 发布
- 浔之漫智控技术(上海)有限公司
- 品牌
- 西门子
- 型号
- 模块
- 产地
- 德国
- 电话
- 15821971992
- 手机
- 15821971992
- 发布时间
- 2023-07-19 17:06:40
问:我想编一个时间循环控制的程序,例如一个小时运行一个小时停止,时间是可以设置的。请大家指点一下编程思路? 答:关键是如何读系统时钟: S7-200的时钟精度典型值是2分钟/月(25°C),大误差7分钟/月(0 - 55°C)。 为了提高运算效率,应当避免每个程序周期都读取实时时钟。实际上可读取的小时间单位是1秒,可每秒读取一次(使用SM0.5上升沿触发读取指令)。 使用程序读取的实时时钟数据为BCD格式,可在状态图中使用十六进制格式查看。 CPU靠内置超级电容(+外插电池卡)在失去供电后为实时时钟提供电源缓冲;缓冲电源放电完毕后,再次上电后时钟将停止在缺省值,并不开始走动。 要设置日期、时间值,使之开始走动,可以: 用编程软件(Micro/WIN)的菜单命令plc > Time of Day Clock...,通过与CPU的在线连接设置,完成后时钟开始走动 使用 S7-200 的 READ_RTC(读取实时时钟)和 SET_RTC(设置实时时钟)指令时, 读取和设置的数据格式都是 BCD 码的。如果觉得不便计算、处理,可使用 Clock Integer 指令库。 Clock_Integer 指令库用于将 BCD 码格式的 S7-200 日期、时间转换为十进制整数格式,以及将十进制整数格式的日期、时间值设定为 S7-200 时钟。 要使用 Clock_Integer 指令库,须遵循下列步骤: 取得 Clock_Integer 指令库文件,并添加到编程软件 STEP 7-Micro/WIN 中; |
主要通过举例讲述了 PROFIBUS-DP现场总线在生产现场的具体应用, 详细介绍了西门子PLC与变频设备通过 PROFIBUS-DP通讯的硬件组态、软件编程以及变频器的相关参数设置。
在工业厂矿的生产应用中,尤其是钢铁冶金行业,利用 PLC通过PROFIBUS-DP现场总线对变频装置进行控制,实现电机的启动、 停车和调速为常见。下面通过一个具体的实例来讲述西门子变频器与S7-300/400 的PROFIBUS-DP通讯的全过程。
一、硬件组态变频器
在 STEP 7 软件 中创 建一 个项 目, 再硬 件组 态该项 目 , 并建 一 个PROFIBUS-DP网络,变频器在PROIBUS DP->SIMOVERT 文件夹里进行组态,并设定好通讯的地址范围。如下图所示 :
二、建立通讯 DB块
一般地,读写数据都做在一个 DB块中,且好与硬件组态设定的 I,O地址范围大小划分相同大小的区域, 便于建立对应关系和管理。如下图所示,读变频器的数据的 12个字节在 DB0~DB11中,写给变频器的 12 个字节数据放在 DB12~DB23 中。接下来还可以存放诸如通讯的错误代码和与变频器有关的其它计算数据。
三、写通讯程序
通 讯 程 序 可 以 直 接 调 用 STEP 7 编 程 软 件 的 系 统 功 能
SFC14(DPRD_DAT),SFC15(DPWR_DAT) 来实现。例程段如下:
CALL SFC 14 // 变频器- >PLC
RET_VAL:=DB15.DBW24 // 错误代码 : 查帮助可得具体含义
RECORD :=P#DB15.DBX0.0 BYTE 12 // 传送起始地址及长度
CALL SFC 15 //PLC ->变频器
RECORD :=P#DB15.DBX12.0 BYTE 12 // 传送起始地址及长度
RET_VAL:=DB15.DBW26 // 错误代码 : 查帮助可得具体含义
四、变频器参数设置
变频器的简单参数设置如下表
对于写变频器的数据是与变频器的 k3001~k3016(参见变频器使用大全功能图 120)建立对应关系,读变频器的数据则是与变频器的参数 P734建立对应关系。如下图所示:
即 DB15.DBW12~DB15.DBW22对应 P734的 W01~W06。B15.DBW0~DB15.DBW11对应 k3001~k3012。PLC 读取变频器的数据可以通过设置参数 P734的值来实现,PLC写给变频器的数据存放在变频器数据 k3001~k3012 中,在变频器的参数设置里可以进行调用,从而建立了彼此的对应关系。
这样,变频器与 PLC的连接已经基本建立, 就可以编写程序通过 PLC来控制变频器的启、停、速度给定等各项功能,满足工艺给定要求。同时也可以读取变频器数据通过上位机进行显示,达到在线监视和诊断的目的。