⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 temperaturemonitor.h

📁 很好c语言编写的pid算法,具有很好的参考价值
💻 H
字号:
////////////////////////////////////////////////////////
//	僼傽僀儖偺愢柧丗壏搙娔帇僋儔僗僿僢僟
////////////////////////////////////////////////////////
#ifndef __TEMPERATURE_MONITOR_H
#define __TEMPERATURE_MONITOR_H

#include "Rtos.h"
#include "TemperatureController.h"
#include "PIDController.h"
#include "OnOffController.h"
#include "PowerSaver.h"
#include "TemperatureMonitor.h"
#include "UserInterface.h"

////////////////////////////////////////////////////////
//	僪儊僀儞    丗搾暒偐偟傾僾儕働乕僔儑儞
//	僋儔僗偺愢柧丗壏搙娔帇僋儔僗
////////////////////////////////////////////////////////
class TemperatureMonitor
{


///////////////////////////////////////////////////////
//	掕悢掕媊
///////////////////////////////////////////////////////
#define		MONITOR_CONTROL_PERIOD	(60)		// 惂屼廃婜
#define		STERILIZE_TEMP			(100)		// 嶦嬠壏搙
#define		STERILIZE_TIME			(3*60)		// 嶦嬠帪娫

///////////////////////////////////////////////////////
//	僨乕僞儊儞僶乕
///////////////////////////////////////////////////////
protected:
	enum e_temp_cond
	{
		TEMP_COND_KEEP = 0,						//曐壏忬懺
		TEMP_COND_BOIL,							//暒偐偟偰偄傞忬懺
		TEMP_COND_STERILIZE,					//嶦嬠忬懺
	};
	e_temp_cond	temperetureCondition;			//曐壏丄暒偐偡忬懺

	TemperatureController	* boilControl;		// 搾暒偐偟僆僽僕僃僋僩
	TemperatureController	* sterilizeControl;	// 搾暒偐偟屻偺嶦嬠僆僽僕僃僋僩
	TemperatureController	* keepControl;		// 曐壏僆僽僕僃僋僩
	TemperatureSelector	* temperatureSelectorObj;// 壏搙慖戰僆僽僕僃僋僩
	BOOL					reboilFlag;			// 暒偐偟捈偟僼儔僌
	PowerSaver				* powerSaverObj;	// 愡揹僆僽僕僃僋僩
	HeaterController		* heaterControllObj;// 僸乕僞乕惂屼

///////////////////////////////////////////////////////
//	儊僜僢僪
///////////////////////////////////////////////////////
public:
	TemperatureMonitor();
	//壏搙娔帇僞僗僋
	VOID monitorTemperatureTask( INT StaCd );
	//搾暒偐偟曽幃偺愝掕
	VOID setBoilControl( TemperatureController * pBoil )
	{
		this->boilControl = pBoil;
	};
	//嶦嬠曽幃偺愝掕
	VOID setSterilizeControl( TemperatureController * pSterilize )
	{
		this->sterilizeControl = pSterilize;
	};
	//曐壏曽幃偺愝掕
	VOID setKeepControl( TemperatureController * pKeep )
	{
		this->keepControl = pKeep;
	};
	//壏搙慖戰偺愝掕
	VOID setTemperatureSelector( TemperatureSelector * tempSelect )
	{
		this->temperatureSelectorObj = tempSelect;
	};
	// 愡揹僆僽僕僃僋僩偺愝掕
	VOID setPowerSaver( PowerSaver * powerSaverObj)
	{
		this->powerSaverObj = powerSaverObj;
	};
	// 僸乕僞乕惂屼僆僽僕僃僋僩偺愝掕
	VOID setHeaterController( HeaterController * heaterControllObj)
	{
		this->heaterControllObj = heaterControllObj;
	};
	//暒偐偟捈偟
	VOID reboil(  );

protected:
	//栚昗壏搙傑偱壛擬偡傞
	VOID boil( SHORT Target );
	//嶦嬠
	VOID sterilize( SHORT Time, SHORT Target );
	//曐壏
	VOID keep( );
};

#endif	// __TEMPERATURE_MONITOR_H

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -