技术论坛

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

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

经验值:104
发帖数: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
游侠

经验值:306
发帖数:4
精华帖: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
侠圣

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

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

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

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

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

will666
侠圣

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

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

污水处理自控工程师,简称污师。
yzs
侠圣

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

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

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

1.时间轮换控制:

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

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

2.优先度控制:


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

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

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

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

moyb
游侠

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

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

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

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

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

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

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

QQ:2541809761
yzs
侠圣

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

比较得出最大或最小的值有很多种方法,有些方法比较笨,在数量少的情况下比较没有问题,在数量多的时候呈几何倍的增长,这也就是为何有2楼的Z版的方法和其他各类优化的比较方法了。这类的办法可以极大的优化程序量达到想要的目的。正因为比较有很多种方法,因此我并没有明确说思路采用哪种比较方法,只要能实现此功能即可。

对于水泵台数控制为何说标准化是7台泵而不是10台,20台甚至100台,因为在实际情况下7台泵已经可以应付99%的应用场景了,再多的台数只会徒增程序而实际用不到。在7台的比较中可以用你的办法,用Z版的办法,也可以用最原始的两两比较的办法,程序量不是太大都可以接收的。

为何我强调程序记录设备当前运行时间,当前停止时间,总运行时间。因为这3种时间并不仅给你程序使用,而更重要的是给客户使用,客户通过观看水泵的使用时间可以直观了解水泵的当前运行状况,也可以帮助其了解下次该启哪台泵,该停哪台泵。同时通过时间的报表记录更可以清楚了解某一天哪台泵运行了多少小时,某个月哪台泵运行了多少小时,这个涉及到设备的日常运营管理的。

好的中控系统并不是设备控制没问题才是好的,这是最基本的东西,客户并不会因为你写的程序好坏而说你的系统好,因为程序客户是不知道的,只有程序很多问题的时候客户才知道你的程序烂,当你的程序没有问题的时候客户并不知道你的程序好!因此现在好的中控系统关键还是在界面,在功能,在管理等方方面面。PLC程序是关键,是重要,但只能在你的心里有个执念:我要将PLC程序写好,稳定性要高,方方面面的问题都要考虑到,安全性是第一位!

Rossi84
侠圣

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

我当初做的一个要求低些的项目,我采用的是创建三个队列(备用队列,运行队列,故障队列),根据不同要求对队列内元素进行从新排队。希望对留住

无法改变之前,努力改变之后
sueyishui
侠圣

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

我一直以为这是很常见的一种水泵控制办法。以前是3用一备。先工频启动2台,变频启动第三台;流量监测是否满足,如不满足,直接工频启动第四台,第三台变频下降;如满足或超过。下调变频器频率,

不知道我是不是没理解楼主的意思。

自律的人生才有机会。
马纳个峰
侠客

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

还要考虑到一个因素,就是PLC逻辑上想让某一台泵启动,但是实际这台泵因为种种原因没有真正启动起来,那么我们程序就需要在短时间内判断出这种情况,跳开这台无法启动的泵,去启动另一台备用泵,否则你的程序会一直卡死在某一段。

锋言锋语
奇侠

经验值:7416
发帖数:1289
精华帖:26
22楼    2021-02-03 15:24:51
精编帖  主题:回复:运行时间最短的设备优先启动及水泵根据压力自动加减水泵台数的程序要如何实现?

我来说两句。

从道理上讲, 这个程序用继电器思维来做, 是很难做出来的,也不是不可以, 但是难度很大。


如果你有一些高级语言的技术,  哪怕只是大学谭浩强课后题能独立完成的水平, 做这个都么有问题。 为甚?因为功夫永远在代码之外。 最重要的是 编程的三要素: 语法、 数据结构、算法。


看看这个题目, 循环、排序、选择, 这些基本的编程结构都要用到; 数组, 这种最基本的数据结构也用到; 算法, 就是上面版主说的提纲, 每个人都能想出来。 三者缺一不可。


所有, 想自己独立解决这种问题, 或者引申出的这一类超脱继电器的问题。 还是老老实实去把上面三个方面夯实一下。  高级语言(比如c)、数据结构、算法。

这个题目用到了数组, 排序, 可能别的项目要用到 先入先出, 后入先出出, 允许插队的循环队列, 二叉树...... 等等。 这次的问题,算法比较简单, 可能别的项目更复杂呢。   这些东西, 不去专门学一下, 永远只能望洋兴叹。

不忘初心
bit1573
侠士

经验值:1451
发帖数:37
精华帖:0
27楼    2021-02-07 09:08:15
精编帖  主题:回复:运行时间最短的设备优先启动及水泵根据压力自动加减水泵台数的程序要如何实现?

编程时除去时间考虑,

剩下的就是一个恒压供水的案例,我用个一个变频器来做的,当频率没有达到50hz的时候,末次运行的马达变频运行,当频率达到50hz时,转为工频运行,为下一个马达变频运行作准备,这样在硬件线路上复杂一点,但是经济可以满足运行,对管网压力要求不高的时候,可以达到要求

博大精深,同心致遠,學以致用,修學儲能!
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。