//****************************************************************************** // FILE: FUZZY.h // POPURSE: 仿人温度控制 // WRITER: xukaiming // DATE: 2020.09.01 //****************************************************************************** #ifndef _FUZZY_H #define _FUZZY_H //#define PWM_SCAN 0xFFF //控制周期 0.5s #define PWM_PERIOD 0xFFF //最大升温功率 0xFFF #define PWM_PITCED 0x00 void InitFuzzy(void); void TaskFuzzy(void); void CtrlStove(u16 cOpen,u16 *CurTemp, u16 lDestTemp,u16 speed); void StopHeat(void); void SetPOut(int Power); extern void PIDOutStart(u16 PIDOutputData); typedef struct { long WarmFlag; //允许加热 long iDestTemp; //目标温度值 u16 *gTemp; //实时温度的AD值 long CTEMP; //开始控制温度 long speed; //目标速度 long Error[2]; //偏差 long dErr ; //偏差变化率 升温速度 // long SumErrLimit; //加热初值 积分值 long PreOut; //上一次的输出 long CurOut; //本次输出 }AI_CONTROL; #endif