首页 > 代码库 > 作业1-加热罐实时控制案例分析
作业1-加热罐实时控制案例分析
加热罐实时控制案例分析
功能分析:
这个例子的实质就是一个电机控制系统,系统的核心就是控制电动阀。溶液由阀门流进加热罐,由加热罐地底部的排水管流出,罐中还有一个可控的加热器,系统如图所示。
在这个控制系统中,假设电机控制阀门位置,从罐中流出的液体的速率与液面高度成正比,罐中溶液混合极好,没有温度梯度,没有热量损失。就热能来说,温度的变化取决于流入流出的溶液间的能量传输和加热器释放的能量。测量装置有两个,分别测量液位和温度。控制系统需要保证液体的温度和所处的液位符合要求。由此可以建立相应的控制过程模型。
控制系统的结构:
如图所示,采用双环控制结构,内环控制阀门位置,外环控制液面。
任务结构:
全部任务及其优先级顺序是:
驱动任务;
报警任务;
阀门/液面控制任务;
温度控制任务;
检测任务;
数据 记录任务;
输出流和操作员的交互后台任务;
最高优先级的的任务是数据采集和驱动控制。例如ADC和电机驱动信号发送,必须保证高的实时性,要求的计算时间足够短。
控制计算是次高优先级的任务,由于液面控制室串联形式,把控制部分分作两个任务。液面控制环的采样时间要长于阀门位置环,这样使CPU的效率分更高。
比控制人物优先级更低的任务是检测任务,它的功能是根据生产状况的检测,确定控制的给定值,常常由管理生产的计算机传送到控制计算机。本例中检测任务设定初始给定值,然后改变为新的给定值。
数据记录任务的优先级更低,它的功能是使用采集到的数据数据信息进行参数调节,或者故障诊断。
后台任务的优先级最低,后台主要是提供与操作系统的接口,与操作人员交互作用。操作系接口的特征取决于特殊的实时软件,以及所使用的操作系统。在后台有几个不同功能的情况下,采用扩展的操作接口,可以把这些功能分解为几个单独的任务,以相同的优先级进行时间片任务调度。
在这个系统中,如果液面超过某个预定的极限值,就看做是异常状态或者有潜在危险。因此必须立刻采取某些措施,建立一个报警任务来处理这种情况。它的优先级比控制任务的优先级高,保证报警及时进行。报警时可以切断溶液的输入和关断加热器。报警任务可以直接驱动输出,让阀门和关断加热器。报警任务首先悬挂其他任务,然后直接发送驱动命令到外部设备,同时记录信息到输出流,通过声光信号或者媒体语音信号等通知操作人员。
任务间通信与数据依赖关系:
为了使整个系统具备恰当的功能,任务中的信息变化、传输必须是有序的。各个任务之间的数据依赖关系如下,左边一列是产生数据的任务,右边一列是使用数据的任务,中间一列表示数据的特征。多数任务既耗散数据,同时也产生数据。
在进行软件设计时,需要考虑到数据传送、拷贝时的安全,充分利用中断互斥技术等。
作业1-加热罐实时控制案例分析