技术论坛

 运行时间最短的设备优先启动及水泵根据压力自动加减水泵台数的程序要如何实现?

返回主题列表
作者 主题
蜕变ing
游民

经验值: 145
发帖数: 6
精华帖: 0
楼主    2021-01-28 22:20:29
主题:运行时间最短的设备优先启动及水泵根据压力自动加减水泵台数的程序要如何实现? 精编帖 

1、5台水泵4用1备或3用2备(水泵运行台数要求可选)。

2、按下启动按钮后先从运行时间最短的水泵开始运行,每台水泵都带变频器,根据水管压力来控制变频器的频率。

3、第一台水泵如果运行15分钟后(加减载设备时间要求可以在HMI上修改)压力达不到设定压力且频率达到48HZ(可修改),自动加载运行时间第二短的水泵且第一台水泵以50HZ满负荷运行,以此类推,直到水泵最多开始4台水泵为此(如果4台水泵同进在运行且压力还是达不到设定值时将不再开启第5台水泵,最多只允许开启4台水泵)。

4、设备减载刚好与加载相反,如果开启了4台水泵(也可以是3台或是2台)且频率以最低频率30HZ(要求可修改)运行且达到15分钟(要求时间可修改),系统自动停止最后开启的水泵,此时第3台水泵解除工频运行(50HZ运行)以变频的模式来运行,设备的减载以此类推。

5、运行中的水泵有故障时自动切换至备用泵运行


wayneleeeeeeeeee
侠客

经验值: 711
发帖数: 6
精华帖: 1
2楼    2021-01-29 08:14:25
精华帖  精编帖  主题:回复:运行时间最短的设备优先启动及水泵根据压力自动加减水泵台数的程序要如何实现?

 十年前Z版提出环形移位移位法控制泵。

http://www.ad.siemens.com.cn/club/bbs/post.aspx?b_id=4&a_id=819555&s_id=0&num=0#anch

四宝山张学友
yzs
侠圣

经验值: 3409
发帖数: 435
精华帖: 6
3楼    2021-01-29 18:08:50
精华帖  精编帖  主题:回复:运行时间最短的设备优先启动及水泵根据压力自动加减水泵台数的程序要如何实现?
1.累计时间设置:程序记录设备当前运行时间,当前停止时间,总运行时间。注:当前运行时间需程序判断启泵时就开始累计,避免出现时间冲突情况。
2.启停泵控制:优先启动当前停止时间最长的泵,优先停止当前运行最长时间的泵,当时间相同时如2#和3#泵时间相同时优先启停2#泵。
3.增减泵控制:设置最低频率减泵,当运行频率低于设定值一段时间后停止其中一台泵,当运行频率达到50HZ时一段时间后启动其中一台泵。PID可以控制运行时间最短的那台也可以所有泵都参与PID控制,建议前者。
4.故障替换:当水泵故障时自动启动备用水泵。
5.时间轮换:当水泵当前运行时间超过设定时间时,有备用水泵可进行轮换的,进行水泵轮换。
6.水泵延时启动控制:当需要同时启动两台或以上的水泵时,先启动一台水泵,延时15S再启动第二台水泵。要养成良好习惯避免同时启动水泵造成电网冲击,当然小功率水泵可以省除该部分程序。
7.水泵轮换时想要保证水流或水压平稳基本是先启泵后停泵,保证流量平稳过渡,如果控制要求不高倒没必要注意该点。

以上基本是时间控制水泵的一些控制编程要点,此编程思路主要用于多台泵的启停控制。

------------------------------------------------------------------------------------

其实编程思路就像写作文要先写提纲,提纲写出来了,按照提纲进行编程就好。编完程后再通过模拟程序测试一下你的程序是否运行正常,人为制造一些可能出现的故障情况看看你程序是否应对正确。

对于这类多台泵启停设备如果用的地方比较多建议可以做一套标准程序,如1-7台泵的启停控制程序,现场需要用多少台泵简单设置一下水泵的控制台数,其他的就对应填入水泵的信号即可。有这样一套标准程序下次写这类的控制10分钟就可以搞定了。因此为何很多人强调程序标准化的重要性,多台水泵的启停可以作为程序标准化的基本应用之一。

远行的虎
至圣

经验值: 16135
发帖数: 2440
精华帖: 17
4楼    2021-01-30 16:35:07
主题:回复:运行时间最短的设备优先启动及水泵根据压力自动加减水泵台数的程序要如何实现?

对,这是非常好的编程思路。

will666
奇侠

经验值: 8840
发帖数: 1997
精华帖: 12
5楼    2021-01-30 21:19:02
精编帖  主题:回复:运行时间最短的设备优先启动及水泵根据压力自动加减水泵台数的程序要如何实现?

根据运行时间判断启停水泵的编号非常简单,选择运行时间最短的就给一个Tmin置一个非常大的值,然后跟所有满足条件且停止的水泵运行时间比较,比这个变量小就把当前泵运行时间付给Tmin,同时将编号赋给Nmin,一轮比较下来Nmin就是时间最短泵的编号,如此每次扫描都这样比较就可以。

污水处理自控工程师,简称污师。
liudiankaio
侠士

经验值: 1445
发帖数: 34
精华帖: 7
6楼    2021-02-01 08:18:50
主题:回复:运行时间最短的设备优先启动及水泵根据压力自动加减水泵台数的程序要如何实现?

学习学习学习学习学习学习学习学习学习学习

yecao2006
至圣

经验值: 17879
发帖数: 1522
精华帖: 2
7楼    2021-02-01 08:28:09
主题:回复:运行时间最短的设备优先启动及水泵根据压力自动加减水泵台数的程序要如何实现?

讲解得非常好。

我回来了!继续努力!
zhcwos
侠圣

经验值: 3103
发帖数: 440
精华帖: 0
8楼    2021-02-01 08:38:20
主题:回复:运行时间最短的设备优先启动及水泵根据压力自动加减水泵台数的程序要如何实现?

 过来学习学习思路,取点经

云淡风轻
不断攀登
至圣

经验值: 12543
发帖数: 1843
精华帖: 0
9楼    2021-02-01 08:59:55
主题:回复:运行时间最短的设备优先启动及水泵根据压力自动加减水泵台数的程序要如何实现?

不错,思路不错。

邮箱 yongquancun@126.com
yzs
侠圣

经验值: 3409
发帖数: 435
精华帖: 6
10楼    2021-02-01 10:54:08
精编帖  主题:回复:运行时间最短的设备优先启动及水泵根据压力自动加减水泵台数的程序要如何实现?

泵的台数控制在PLC编程中很常见,多见于泵站,水厂,污水厂等多台水泵的控制,常用于液位控制,流量控制及压力控制。无论哪种控制归根到底就是台数控制。如果在现实工程中经常会使用到,建议可以以台数控制为起点开始自己的程序标准化制作。

下面简单谈谈常用泵的台数控制方法的优缺点:

1.时间轮换控制:

此类控制是我们最常用的控制手段,简单的说就是先启先停。这类控制最大的好处就是水泵运行时间大致相同,避免水泵的单次频繁启停,同时不怎么需要人为干预,可以做到无人值守。

缺点或不足之处:时间轮换控制较多用于所有泵都是同一类型的,但现场很多时候是分有变频泵,非变频泵,大小泵等等,如果采用时间轮换或故障轮换往往和实际需求有一定的偏差。这个时候就需要对泵进行分类进行轮换控制。另外时间轮换控制优点是不需要人为干预,缺点也是不便于人为干预。

2.优先度控制:


优先度控制是通过人为设定水泵的启动顺序来对水泵进行控制,如上图所示先启动的是1#泵,再启动2#泵,先停2#泵,再停1#泵。当水泵连续运行超过设定时间后通过自动改变水泵的优先度来实现水泵的超时轮换功能。此类控制的优点是能够人为定义水泵的启动顺序,可以通过人为的改变优先度实现水泵的轮换。在大型的水厂和污水厂中控都是有人的,一两天人为改一次优先度就可以充分调动各台泵的运转顺序,能够根据实际情况选择水泵的优先启停顺序是其最大的优点。

缺点或不足之处:此类控制是后启先停,可能存在水泵频繁启停的风险。如果应用在无人值守情况下建议采用时间轮换控制方式,如果想使用优先度控制可将最长连续运行时间缩短如(8h)也可实现水泵的均衡控制。

--------------------------------------------------------------------------------------

台数控制的思路有很多,我只抛砖引玉的提出两种常用的控制思路,如果有其他的思路或者更好的控制思路也可以分享和探讨。

moyb
游侠

经验值: 482
发帖数: 49
精华帖: 1
14楼    2021-02-02 05:30:46
精编帖  主题:回复:运行时间最短的设备优先启动及水泵根据压力自动加减水泵台数的程序要如何实现?

楼上多以面向过程的思路解决问题,在泵的数量不多的情况下,编程还是可以的,程序运行的效率也高。但是如果参与的泵的数量比较多的话,编程就比较复杂了。

用面向对象的方法相对思路就简单一些。泵作为一个类,定义“累计运行时间”,“运行状态”,“启动序号”三个属性。于是楼主的要求就可以简单的转换为如下表述:

1、启动泵:在达到启动下一台泵的条件时(按启动按钮或高频低压超时),就是把”运行状态“为”停止“的泵中”累计运行时间“最小值的泵挑出来启动,并把“运行状态”改为“正在运行”,同时这台泵把”启动序号“设置为所有”运行状态“为”正在运行“的泵的数量

2、停泵:低频高压超时,就是把”运行状态“为”正在运行“的泵中,”启动序号“最大的那台泵筛选出来停止,把这台泵的“运行状态”改为“停止”,把“启动序号”置零。

3、故障:当泵的“运行状态”为“故障”时,自动停这台泵,启用它相应的备用泵(由于楼主这方面要求并不完整清晰,这里只能给个笼统的说法了)

可见,用面向对象方法,改变泵的数量时,并不需要改变程序。3台泵是这个程序,30台泵也是这个程序,不过是把for的循环次数调整一下,只要给“泵的数量”这个变量赋值就可以了,

QQ:2541809761
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。