📄 jf_act._c
字号:
}
t_comp_stop =0; //压缩机启动时压缩机停机时间=0
t_comp_stop_times=0;
run_state &=~b_comp_stop;
if ((t_comp_run>=15) ||(t_comp_run_times>=1)) //压缩机启动15秒后检测低压保护
{ //低压保护延时计时
if ((PINA &b_lpp)==0) //低压开关保护LPP 接通时为低压保护
{
if (t_lppdelay >=t_lppdelay_set) fun_lpp(); //压缩机低压开关保护
else t_lppdelay++; //计时+1
}
//20080201 else if ((fault_state4 &b_fault_lpp) &&(fault_lpp_times <3))//压缩机运行15分钟后无低压保护,则清除连续次数
else if ((fault_lpp_times>0 ) &&(fault_lpp_times <3))//压缩机运行15分钟后无低压保护,则清除连续次数
{
if (lpp_clear_time >900) //超过15分钟正常运行时清除低压保护故障及次数
{
fault_state4 &=~b_fault_lpp; //清除低压保护故障
fault_lpp_times =0; //低压保护故障出现次数=0
t_lppdelay =0; //计时清0
start_state2 &=~b_lpp_delay2start; //低压保护时启动计时3分钟
t_lpp_delaytime=0; //
run_state2 &=~b_lpp_delay2; //3分钟到标志清0
}
else lpp_clear_time++; //累加低压保护清除的时间
}
}
}
else //comp=0
{
if (t_comp_stop_times >=mint_compstop_set) run_state |=b_comp_stop; //压缩机停机min时间到置标志1
else
{
t_comp_stop++; //计到60秒时次数+1,
if (t_comp_stop>=60) {t_comp_stop_times++; t_comp_stop=0;}
}
t_comp_run =0; //压缩机停机时压缩机运行时间清0
t_comp_run_times =0;
run_state &=~b_comp_run;
/*20080201去掉压缩机关时连续30秒检测低压保护(20080120临时加的)
if (t_lpp_compoff>30) //压缩机关时低压保护检测秒
{//当压缩机关时,连续30秒监测到低压信号,显示故障提示,故障灯亮,压缩机不能启动
fault_state4 |=b_fault_lpp;fault_lpp_times=3;
}
else
{//当压缩机关时,连续30秒监测到低压信号
if ((PINA &b_lpp)==0) //低压开关保护LPP 接通时为低压保护
{
t_lpp_compoff++; //
if (t_lpp_compoff>30) //压缩机关时低压保护检测秒
{//当压缩机关时,连续30秒监测到低压信号,显示故障提示,故障灯亮,压缩机不能启动
fault_state4 |=b_fault_lpp;fault_lpp_times=3;
fun_fault_beep(); //20080201增加故障报警蜂鸣器子程序
}
}
else t_lpp_compoff=0; //无低压时清除低压保护计时
}*/
}
//如高水位无连续10秒时,进水阀才可以动作
if ((PINC &b_highwater)==0) //1高水位时置故障200706
{
t_highwater_ok++; //高水位无计时
if (t_highwater_ok>=10)t_highwater_ok =31;
}
else
{
t_highwater_ok=0;
PORTD &=~b_yv_in; //高水位PD1进水阀YV-in关
}
}
void fun_delaytime_20s(void) //在20S中定时程序
{
//20080203增加在20秒计时SHT故障不恢复时间10分钟后仍不能恢复正常,则故障成立
if (((fault_state2 &b_fault_sht)!=0) &&(b_fault_sht_times<3))
{
if (t_b_fault_sht>30)
{
b_fault_sht_times=3;
fun_fault_beep(); //20080201增加故障报警蜂鸣器子程序
}
else t_b_fault_sht++; //在20秒计时中定义SHT故障是否恢复
}
//20080215增加在20秒计时通讯故障10分钟后仍不能恢复正常,则故障成立
if (((fault_state2 &b_fault_tongxun)!=0) &&(fault_tongxun_times<3))
{
if (t_b_fault_tongxun>30)
{
fault_tongxun_times=3;
fun_fault_beep(); //20080201增加故障报警蜂鸣器子程序
}
else t_b_fault_tongxun++; //在20秒计时中定义SHT故障是否恢复
}
//压缩机启动 延时
if (start_state &b_comp_ondelaystart)
{
t_comp_ondelay++; //计时+1
if (t_comp_ondelay >=t_comp_ondelay_set)
{ run_state |=b_comp_ondelay; //时间到置标志1
start_state &=~b_comp_ondelaystart;//清开始计时标志
t_comp_ondelay=0; //计时清0
}
}
//内风机关机 延时
if (start_state &b_fan_offdelaystart)
{
t_fan_offdelay++; //计时+1
if (t_fan_offdelay >=t_fan_offdelay_set)//时间到置标志1
{ run_state |=b_fan_offdelay;
start_state &=~b_fan_offdelaystart;//清开始计时标志
t_fan_offdelay=0; //计时清0
}
}
//20S中定时1min
t_1min_times++; //计时+1
if (t_1min_times >=3) //定时1min到
{ t_1min_times=0; //计时清0
time_flag |=b_time_1min; //置标志1
}
//20S中定时低压保护计时3min
if (start_state2 &b_lpp_delay2start)
{
t_lpp_delaytime++;
if (t_lpp_delaytime >=9) //定时3min到
{ t_lpp_delaytime=0; //计时清0
run_state2 |=b_lpp_delay2; //置低压保护计时3min 标志1
start_state2 &=~b_lpp_delay2start; //
if ((PINA &b_lpp)==0) //低压开关保护LPP接通时为低压保护 //延时3分钟后如低压开关保护,则判断低压保护故障
{
fault_state4 |=b_fault_lpp;fault_lpp_times=3;
fun_fault_beep(); //20080201增加故障报警蜂鸣器子程序
} //低压保护连续次数
else //停机3分钟后低压恢复,立即开压缩机
{
PORTB |=b_comp; // 开压缩机
PORTC |= b_yv_dry; //PC0除湿阀YV-DRY开
PORTG |= b_ofan; //PG0外风机OFAN
start_state |=b_yvcomp_delaystart;//需延时3秒开YV-COMP
t_yvcomp_ondelay=0; //供液阀延时启动时间3秒
fault_state4 &=~b_fault_lpp; //20080201清除故障标志
}
}
}
//20S中定时压缩机过载保护计时3min
if (start_state2 &b_comp_gz_delaystart)
{
t_comp_gz_delaytime++;
if (t_comp_gz_delaytime >=9) //定时3min到
{
t_comp_gz_delaytime=0; //计时清0
start_state2 &=~b_comp_gz_delaystart; //
if (PINC &b_comp_guozai) //延时3分钟后如压缩机过载保护,则判断压缩机过载保护故障
{
fault_state4 |=b_fault_comp_guozai; fault_comp_guozai_times=3;//压缩机过载保护连续次数
fun_fault_beep(); //20080201增加故障报警蜂鸣器子程序
}
else //停机3分钟后压缩机过载恢复,立即开压缩机
{
PORTB |=b_comp; // 开压缩机
PORTC |= b_yv_dry; //PC0除湿阀YV-DRY开
PORTG |= b_ofan; //PG0外风机OFAN
start_state |=b_yvcomp_delaystart;//需延时3秒开YV-COMP
t_yvcomp_ondelay=0; //供液阀延时启动时间3秒
fault_state4 &=~b_fault_comp_guozai; //20080201停机3分钟后压缩机过载恢复,清除故障
}
}
}
//20S中定时停3分钟后若排气温度小于90℃,压缩机重新启动
if (start_state2 &b_exTHh_delaystart)
{
t_exh_delaytime++;
if (t_exh_delaytime >=9) //定时3min到
{
t_exh_delaytime=0; //计时清0
start_state2 &=~b_exTHh_delaystart; //
if (exghaust_TH >=90) //延时3分钟后排气温度大于90℃,判断排气保护故障
{
fault_state4 |=b_fault_exTHh;fault_exh_times=3; //PC5排气过高
fun_fault_beep(); //20080201增加故障报警蜂鸣器子程序
}
else //停机3分钟后排气温度小于90℃,立即开压缩机
{
PORTB |=b_comp; // 开压缩机
PORTC |= b_yv_dry; //PC0除湿阀YV-DRY开
PORTG |= b_ofan; //PG0外风机OFAN
start_state |=b_yvcomp_delaystart;//需延时3秒开YV-COMP
t_yvcomp_ondelay=0; //供液阀延时启动时间3秒
fault_state4 &=~b_fault_exTHh; //20080201恢复时清除故障
}
}
}
//20S中定时停3分钟后若感温包短路故障恢复,压缩机重新启动
if (start_state2 &b_exTH0_delaystart)
{
t_exTH0_delaytime++;
if (t_exTH0_delaytime >=9) //定时3min到
{
t_exTH0_delaytime=0; //计时清0
start_state2 &=~b_exTH0_delaystart; //
if ((exghaust_AD>=250) ||(exghaust_AD<=5)) //延时3分钟后室外排气温度AD值不正常,判断排气感温包故障
{
fault_state4 |=b_fault_exTH0;fault_exTH0_times=3; //PC5排气过高
fun_fault_beep(); //20080201增加故障报警蜂鸣器子程序
}
else //停机3分钟后室外排气温度AD值正常,立即开压缩机
{
PORTB |=b_comp; // 开压缩机
PORTC |= b_yv_dry; //PC0除湿阀YV-DRY开
PORTG |= b_ofan; //PG0外风机OFAN
start_state |=b_yvcomp_delaystart;//需延时3秒开YV-COMP
t_yvcomp_ondelay=0; //供液阀延时启动时间3秒
fault_state4 &=~b_fault_exTH0; //20080201恢复时清除故障
}
}
}
//20S中定时能量调节电磁阀3分钟15s计时
if (start_state2 &b_yvadjust_delaystart)
{
t_yvadjust_delaytime++;
if (t_yvadjust_delaytime >=10) //定时3min15s到
{ t_yvadjust_delaytime=0; //计时清0
run_state2 |=b_yvadjust_delay; //置能量调节电磁阀4分钟标志1
start_state2 &=~b_yvadjust_delaystart; //
PORTG &=~b_yv_adjust; //PG1调节阀YV-ADJUST=0
}
}
//加湿电流连续5分钟低于1A
if ((fault_state2 &b_fault_humid_lowi)==0)
{
if (PIND &b_humid) //加湿开时如加湿电流连续10分钟低于1A
{
if (i_humid10 <10)
{//20080128改为当加湿电流连续10分钟小于1A时
//if (fault_humid_lowi_time >=15)
if (fault_humid_lowi_time >=30)
{
fault_state2 |=b_fault_humid_lowi;
fun_fault_beep(); //20080201增加故障报警蜂鸣器子程序
}
else fault_humid_lowi_time++;
}
else fault_humid_lowi_time =0;
}
else fault_humid_lowi_time =0; //加湿关时电流小的时间清0
}
NOP(); //加湿开时如连续3分钟检测到电流>1.3ISET,排水故障
if ((fault_state3 &b_fault_humid_paishui)==0)
{
if (PIND &b_humid) //加湿开时如加湿电流连续3分钟>1.3ISET
{
if (i_humid10 >(1.3*imax10_set))
{
if (fault_i_humid_time >=9)
{
fault_state3 |=b_fault_humid_paishui;
fun_fault_beep(); //20080201增加故障报警蜂鸣器子程序
}
else fault_i_humid_time++;
}
else fault_i_humid_time =0;
}
else fault_i_humid_time =0; //加湿关时
}
//加湿开检测高水位
if ((fault_state2 &b_fault_highwater)==0)
{
if (PIND &b_humid) //加湿开时
{
if (start_state2 &b_highwater_delaystart) //置高水位延时20min 开始标志1
{
fault_highwater_time++; //高水位保护故障时间20min
if (fault_highwater_time >=60)
{
start_state2 &=~b_highwater_delaystart; //clear
fault_highwater_time =0;
if (PINC &b_highwater)
{
fault_state2 |=b_fault_highwater; //1高水位时置故障200706
fun_fault_beep(); //20080201增加故障报警蜂鸣器子程序
}
}
}
else if (PINC &b_highwater) //1高水位时置故障200706
{
start_state2 |=b_highwater_delaystart;
fault_highwater_time=0;
PORTD &= ~b_yv_in; //PD1进水阀YV-IN关
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -