设为首页
收藏本站
PLC技术网
开启辅助访问
切换到宽版
登录
注册哦
只需一步,快速开始
微信扫码登录
门户
Portal
论坛
BBS
导读
Guide
排行榜
Ranklist
搜索
搜索
本版
文章
帖子
用户
PLC论坛-全力打造可编程控制器专业技术论坛
»
论坛
›
工控技术交流区
›
『国外:三菱/西门子/欧姆龙/松下』
›
5台水泵自动轮换启停案例(故障自动切换) ...
返回列表
发新帖
[西门子]
5台水泵自动轮换启停案例(故障自动切换)
[复制链接]
629
|
1
|
2024-6-26 09:21:07
|
显示全部楼层
|
阅读模式
>导读:在工业现场中通常需要设备正常、稳定、高效运行,这样才能保证工厂经济效益。那么本文就针对甲方提出的设备运行时间均衡而编写的程序。
一、控制要求
现场有5台水泵,5台水泵具体的运行过程如下:
1.每次只有一台水泵运行,运行时需要记录电机的运行时间
2.为了确保每台水泵的运行时间均衡,每次启动时,启动运行时间最少的水泵
3.每台水泵都有故障信号,当水泵出现故障时能自动切换到下一台运行时间最少的水泵运行。
4.故障出现后,水泵的运行时间需要保持不变,不能丢失。
I/O分配表
二、程序设计
1.新建FB3012程序块,定义接口变量
2.程序段1
1).初始化数据
2).读取以"#Motor_Runtime[1]"为起始的第1个元素,因为“#FieldRead_Index”的值是1,并且把该值当作最小值且记录元素的下标值到“#Min_Index”中
3).当找最少水泵运行条件不满足时,则跳出该FB块的执行
3.改变数组的下标值指向下一个元素,并使用FieldRead指令读取对应元素值,对读取的值用于与最小值做比较,如果读取的值比最小值的值还小则交换,把读取的元素值放回到最小值的寄存器中
4.新建FB3013程序块,并且定义接口变量
5.由于本案例中用于存储电机运行时间的存储器使用的是INT数据类型的变量,当水泵出现故障时,为了把故障排除,重新从剩下的电机中找到一台运行时间最少的水泵运行,可在出现故障时,把一个最大值32767赋值到故障电机运行时间记录的存储器中。而在故障消失后,记录的正常运行时间又需要保持,所以在出现故障时把电机正常运行时间转存到另外的存储器,在故障消失后把该值放回到记录水泵的运行时间中。
6.当按下启动按钮或是出现故障,而停止条件不满足时需要调用FB3012程序块,找出运行时间最少的水泵。
7.当运行条件满足时,根据计算出来的运算时间最少的电机是哪一台而启动运行,电机运行时需要对电机的运行时间进行累计。
8.电机运行时间与运行信号进行映射
9.调用FB3013程序块,并且赋参数。
写在最后:如果文章对您有所帮助,帮忙点个“赞”和“在看”呗!!!
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
注册哦
x
回复
举报
hanjiantree
|
2024-9-8 18:23:42
|
显示全部楼层
思路很好!感谢分享!能否把程序分享学习下?
回复
支持
反对
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册哦
本版积分规则
发表回复
回帖后跳转到最后一页
PLC工业机器人
回复楼主
返回列表
『国外:三菱/西门子/欧姆龙/松下』
『国产:台达/汇川/信捷产品交流区』