电工学习网

 找回密码
 立即注册
查看: 2003|回复: 0
打印 上一主题 下一主题

西门子S7-1200系列PLC之给自己的程序来个“精装修”

[复制链接]
跳转到指定楼层
楼主
发表于 2020-12-26 21:26:11 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
这是一个很简单的单机应用系统,采用S7-1200系列plc进行控制,应用场景见下图
西门子S7-1200系列PLC之给自己的程序来个“精装修”

    黄色部分为此单机系统控制范围,缓存斗之前由整个工厂控制系统负责(S7-1500),单机控制系统通过Profinet智能设备方式与工厂控制系统进行通信。
    简单介绍下工作步骤
    1:工厂控制系统负责往缓存斗里放料,缓存斗下有个卸料闸门,打开闸门往移动料斗里放料。
    2:移动料斗所在的称量位置可能装有称重单元,重量达到设定重量后,移动料斗,开始启动,往目标位置移动(目标位置来自于工厂控制系统PLC)。
    3:到达目标位置后,移动料斗停止运行,同时打开放料闸门,当移动料斗下料位感应不到有物料后,开始关闸门。
    4:闸门关到位后,移动料斗开始返回称量位置。
    5:在不同的工厂称量位置可以是1...N中任意位置。

        好简单的控制要求啊,就是一台电机和一台闸门的控制吗。老规矩了解控制要求后开始程序设计吧。
首先,订好程序架构建成一个毛坯房1:移动料斗控制主程序;2:于上位控制器通讯程序;3:初始化程序;4:其它一些错误处理程序,当然少不了OB1。
    整个程序结构如下图

西门子S7-1200系列PLC之给自己的程序来个“精装修”

    系统的IO点
西门子S7-1200系列PLC之给自己的程序来个“精装修”

程序架构定好了,开始每个软件模块编写吧,最重要的当然是移动料斗控制主程序了。考虑到之前客户供应商的控制程序出现过,某些信号失效的移动料斗一直往一个方向移动直到“撞墙”了电机还在工作的情况,所以,在硬件上,我们在移动导轨起点终点位置安装了行程开关,当移动料斗接触到形成开关后,直接断开系统主电源,强制保护。
毛坯版的程序设计思路很简单
前面介绍过控制步骤了,这里只写一点毛坯版的移动料斗定位的程序思路。
1:移动料斗 根据目标位置 判断运动方向,同时开始检测定位计数开关,每次经过一个位置时,计数加1或者减1,实际位置和目标位置只相差一个位置时,系统减速。
2:当实际位置等于目标位置时停止,开始放料。
3:放料完成,关闸门,开始返回,同时系统开始计数,当实际位置和称量位置相等,移动料斗停止运行,一个工作循环结束。
按照上面的毛坯版程序进行调试后,出现了很多异常情况,不得不对自己的程序进行“精装修”了。
下面就调试遇到的主要问题,来说明“精装修”过程吧
1:移动料斗定位出错

情况1:移动料斗在往目标位置运动或者返回称量位置时 ,计数用的接近开关,可能超出了定位铁块,见下图;
西门子S7-1200系列PLC之给自己的程序来个“精装修”
毛坯版程序,电机刚启动的时候就监视计数,所以这种情况下,会导致定位出错。

解决方案:增加定位计数延时时间。
找到问题就装修吧,加个定时器,每次移动料斗启动后,延时一定时间开始监控计数(时间必须可调啊)。改完,下载,效果还是挺好的,定位出错的情况大大减少了。
情况2:移动料斗在移动过程中,驱动变频突然跳闸,同时,定位开关离定位铁块很近的情况
虽然定位出错的情况大大减少了,但是,在使用过程中还是会出现定位出错情况,经过观察,发现这种分析下程序推测可能原因就是,自己在程序里面加了启动延时,但是这延时条件不合适。
解决方案:再次装修,更改延时启动条件,仅在称量位置启动和目标位置返回时,启动计数延时;
情况3某个位置的定位铁块安装位置不合适,有时定位开关经过时感应不到;
解决方案:增加定位计数信号超时时间。小车在移动过程中,从一个位置到另外一个位置的时间是固定的,因此,设定一个定位开关检测监控时间(时间可调)当超出这个时间后,没有检测到定位信号,系统故障,停止驱动电机,同时发出报警。
最极端的就是定位开关坏了,这种情况在客户前供应商的系统中出现过,偏偏起点和终点的保护开关,采用的是 漫反射广电开关,同时那个漫反射开关也失效了,导致了,移动料斗在不断地“撞墙“.

情况4:移动料斗在经过一个位置时,料斗会抖动,导致定位开关感应到多个定位信号(主要发生2根导轨连接处)
解决方案:增加定位计数信号屏蔽时间。移动小车在经过一个位置后,不可能短时间内,就到达下一个位置,因此每次检测到一个位置后(DI的信号滤波在CPU硬件设置里面设置为10ms),在设定时间内多次检测到信号,系统不计数。
2:料斗返回时,残料过多

多次发现,移动料斗返回称量位置时,残料过多的情况。经过观察发现,当放料闸门在放料时,由于传感器精度以及传感器选型原因,明明料斗里面还有很多料,但是,料位传感器提示料斗已空。
解决方案:设定最小放料时间(时间可调),在最小放料时间完成后,同时,料位传感器提示料斗已空,料斗才开始关闸门返回称量位置。

经过了多次“装修”,程序总算稳定运行了!期间还对定时器的应用进行更改过以适配客户一些低固件版本的PLC。

来源:西门子工业技术论坛


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

电工学习网 ( )

GMT+8, 2024-4-27 02:00

Powered by © 2011-2022 www.diangon.com 版权所有 免责声明 不良信息举报

技术驱动未来! 电工学习网—专业电工基础知识电工技术学习网站。

栏目导航: 工控家园 | 三菱plc | 西门子plc | 欧姆龙plc | plc视频教程

快速回复 返回顶部 返回列表