海川化工论坛

标题: 有没有会写程序的 [打印本页]

作者: csxl123456    时间: 2023-6-6 17:01
标题: 有没有会写程序的
现在有个问题,压力下降变化速率报警,在程序里怎么写,比如说现在压力1MPA,在5分钟内下降到0.5MPA,变化速率是10%,超过这个变化速率就报警,在程序里怎么写,随便什么系统的

作者: 一笑而过^O^    时间: 2023-6-6 17:02
可以通过以下步骤在程序中实现压力下降变化速率报警:

1. 定义变量并初始化:定义一个记录上一次读取压力值的变量pressure,一个记录上一次读取时间的变量last_time,一个记录变化速率的变量speed_rate。初始化pressure为当前的压力值,last_time为当前时间。

2. 循环读取压力值:使用循环语句,每隔一段时间(比如1秒)读取当前的压力值,并记录当前时间。然后计算出压力变化量delta_pressure和时间变化量delta_time(当前时间与上一次读取时间差值),根据公式speed_rate = delta_pressure / delta_time计算出变化速率。

3. 判断是否报警:将当前的压力值和变化速率与设定的阈值进行比较,如果变化速率超过阈值,则输出报警信息。

下面是一个伪代码实现的例子:

pressure = current_pressure
last_time = current_time

while True:
    current_pressure = read_pressure()
    current_time = get_current_time()
   
    delta_pressure = abs(current_pressure - pressure)
    delta_time = abs(current_time - last_time)
   
    speed_rate = delta_pressure / delta_time
   
    if speed_rate > threshold:
        print("报警:压力下降变化速率超过阈值!")
        
    pressure = current_pressure
    last_time = current_time
   
    sleep(1)  # 等待1秒再继续读取压力值
.
作者: Agelxx    时间: 2023-6-7 07:40
我也有个问题。有个计量罐出口未安装流量计。要求1h内液位下降到一个设定值,通过调节阀进行PID自动控制。哪个给个思路?
作者: jlshnlhj    时间: 2023-6-7 08:20
Agelxx 发表于 2023-6-7 07:40
我也有个问题。有个计量罐出口未安装流量计。要求1h内液位下降到一个设定值,通过调节阀进行PID自动控制。 ...

熟悉一套DCS系统,,要多看手册,吃透每一个模块。
参考:
横河:Velocity Limiter Block (VELLIM)模块。
中控:VLM模块.
作者: jlshnlhj    时间: 2023-6-7 08:33
本来系统是有变化速率报警的,但那是以一个采样周期来计算的。
如果要求以:“5分钟内下降0.5MPA,变化速率是10%,超过这个变化速率就报警”。
1.将5分钟内下降0.5MPA,变化速率是10%,折算为一个采样周期的值。
2.用折线模块。
3.自己编程。
作者: qqgd    时间: 2023-6-7 09:12
简单的方法就是,出点钱,给DCS厂家,让厂家工程师对这个的控制点进行重新组态编程就行了。要把自己要求的条件和现有的工况条件给人家提清楚。
作者: pzhmotor    时间: 2023-6-7 11:06
Agelxx 发表于 2023-6-7 07:40
我也有个问题。有个计量罐出口未安装流量计。要求1h内液位下降到一个设定值,通过调节阀进行PID自动控制。 ...

若浓度稳定,可以考虑增加压差液位计,转化为楼主的问题来解决。
闭环控制,需要一次检测元件,常规的还是检测液位、流量、压力。

很典型的问题,期待有其他思路
作者: wuwoliangwang    时间: 2023-6-7 11:55
1MPa降到0.5MPa速率是10%?
作者: wuwoliangwang    时间: 2023-6-7 11:56
Agelxx 发表于 2023-6-7 07:40
我也有个问题。有个计量罐出口未安装流量计。要求1h内液位下降到一个设定值,通过调节阀进行PID自动控制。 ...

控制液位跟装没装流量计没有直接关系
作者: 段誉王语嫣    时间: 2023-6-7 13:30
jlshnlhj 发表于 2023-6-7 08:20
熟悉一套DCS系统,,要多看手册,吃透每一个模块。
参考:
横河:Velocity Limiter Block (VELLIM)模块 ...

是的。DCS系统里有的
作者: liu530014416    时间: 2023-6-7 16:55
Agelxx 发表于 2023-6-7 07:40
我也有个问题。有个计量罐出口未安装流量计。要求1h内液位下降到一个设定值,通过调节阀进行PID自动控制。 ...

思路不好,没流量计就装流量计
作者: cww9521    时间: 2023-6-8 11:51
本帖最后由 cww9521 于 2023-6-12 14:18 编辑
Agelxx 发表于 2023-6-7 07:40
我也有个问题。有个计量罐出口未安装流量计。要求1h内液位下降到一个设定值,通过调节阀进行PID自动控制。 ...

计量槽液位压降随高度变化而变化,并且液位检测不到下封头(液位计取源位置以下的量)
方案一、如果一定要用液位,那么要加压恒压输送(管道泵也行),保证使用液位在可测量区间
方案二、液位改称重,用重量单位时间减少的量作为近似流量,与调节阀形成闭环控制。
我工厂某装置,因物料中有杂质及不溶物,溶剂不导电,滴加流速较小,因选不到合适的流量计,故采用方案二,能达到工艺控制要求。仅供参考。
作者: 愛    时间: 2023-6-8 13:27
自己写一个就好  滞后模块
输入延时一段时间后输出,其延时时间为:t=(NUM+1)*T。  
算法
当置位开关SET=ON,输出Y=YSET,用于初始化。
当置位开关SET=OFF,输出为输入的延时输出。
作者: 愛    时间: 2023-6-8 13:29
Agelxx 发表于 2023-6-7 07:40
我也有个问题。有个计量罐出口未安装流量计。要求1h内液位下降到一个设定值,通过调节阀进行PID自动控制。 ...

这个简单 液位与调节阀 做个回路就能解决
作者: 愛    时间: 2023-6-8 13:29
wuwoliangwang 发表于 2023-6-7 11:55
1MPa降到0.5MPa速率是10%?

差个时间系数
作者: Agelxx    时间: 2023-6-8 15:44
wuwoliangwang 发表于 2023-6-7 11:56
控制液位跟装没装流量计没有直接关系

是因为没有设计流量无法控制滴加速度,想用软件解决,用液位变化率控制调节阀从而控制流量,不是控制液位
作者: Agelxx    时间: 2023-6-8 15:44
愛 发表于 2023-6-8 13:29
这个简单 液位与调节阀 做个回路就能解决

什么回路?
作者: Agelxx    时间: 2023-6-8 15:45
liu530014416 发表于 2023-6-7 16:55
思路不好,没流量计就装流量计

哈哈,按理是要严格变更设计施工改造的。如果软件能解决想偷个懒
作者: Agelxx    时间: 2023-6-8 15:47
jlshnlhj 发表于 2023-6-7 08:20
熟悉一套DCS系统,,要多看手册,吃透每一个模块。
参考:
横河:Velocity Limiter Block (VELLIM)模块 ...

用的和利时的……
没太整明白用什么模块……
作者: 愛    时间: 2023-6-8 16:16
Agelxx 发表于 2023-6-8 15:44
什么回路?

单回路
作者: 愛    时间: 2023-6-8 16:22
Agelxx 发表于 2023-6-8 15:44
什么回路?

如果单回路满足不了控制的精度       从做一个换算液位成重量在加个时间变化量 把液位转换成流量计来使用   转换成流量 在关联调节阀做个单回路就可以
作者: Agelxx    时间: 2023-6-12 12:39
就是没会写这个时间变化量,主要测量值也是个变量,没想出来怎么换算




欢迎光临 海川化工论坛 (https://bbs.hcbbs.com/) Powered by Discuz! X3.5