行业资讯
你的延时是不是有问题??单片机的定时器是不是向上计数的?怎么我看你程序觉得你用向下计的呢? 还有看你程序似乎是:(moc30=0)先开启可控硅然后根据dw的数值去决定延时多少再关控制信号(moc30=1),但是有一点是,可控硅若不是可控关断的话,就有问题了,普通可控硅是开通之后只要有电流就不会关断,它只会在交流电过零时自动关断.要想达到调光效果,可以这样控制:过零检测后开始延时(根据dw的数值),延时到后开启可控硅缺念,然后必须在交流电再次过零前撤消控制信号,以便可控硅过零时关断,当再检测到过零信号再重复上面的控制就可伏州困以了,也就是说你的控制信迹坦号是100HZ的脉冲才得.
洗衣机按下电源按钮后毫无反应怎么回事
主要有以下原因:
1、电源电压过低洗衣机满陪祥载时电压低于180V不能正常工作,但在空载时一般应能启动。
2、负载过重启动转矩不能克服负载转矩而不能启动。但是,减小负载后应能启动。
3、电容器故障电容器的容量不足时,电动机启动转矩变小负载时不能启动,但一般空载时能启动。电容器断路时,电动机不能启动,但这时如用手拨动电动机轴,电动机便能沿手动的方向转动起来。电容器短路时,电动机两绕组将通过同相电流,电动机发出很大嗡嗡声,发热很快,手拨动电动机轴电动机也不能启动。
4、主、副绕组中有一个断路主、副绕组中有一个断路时,用手拨动电动机轴即能缓慢地启动起来。
5、电动机接线有错误洗涤电动机的绕组接线和中线错接,脱水电动机的主、副绕组接线错误,都将造成空载时可以启动,但是负载时不能启动。
6、绕组有短路故障绕组有短路故障时,也会出现空载时可以启动,但是负载时不能启动。
7、转子铝条断裂转子铝条断裂的条数占整个转子槽数七分之一时,电动机也不能启动。
洗衣机有电源显示 启动不了
滚桶洗衣机查看门是否关严,或按下面的例案检查
例1. 波轮不转(齿轴与齿套打滑)
例2. 通电后功能选择指示灯直接显示到脱水功能,无洗衣、漂洗功能,且不能脱水(功能选择开头损坏)
例3. 通电后电源指示灯亮,整机不工作(水磁同步电机烧坏)
例4. 电机不转动(电机烧坏)
例5. 使用中电机突然停转冒烟并有严重的焦糊味(电机绕组短路)
例6. 开启电源,电源指示发光二极管不亮,按键无反应(保护电路误动作)
例7. 通电后指示灯亮,电机不转(双向可控硅T1损坏)
例8. 所有功能失效(稳压二极管DZ短路)衣物洗涤干净。
例9. 不能洗涤,进排水正常(启动电容器烧坏)
例10. 突然停转并伴有焦糊味(电机绕组线圈烧坏,VS2和VS4损环芦蔽搏)
例11. 洗涤不正常(水位开关失灵)
例12. 电机不能运并渗转或转速慢(可控硅TR1损坏)
可控硅必须检测过零信号。只有零点以后触发,才会有效。而且在下一个零点到来的时候,可控硅会自动关历亮闭。你这个程序里面只有一句P=1,没有P=0,那么这个端口一直开启,没有关闭。负载将一直投入。不可能关闭。所以,根本不可能调压!
想要调压:1、增加一个过零检测电路。清烂弯
2、每次触发以后,过一段时间必须把触发信号关闭。也可以在过零中断时,将触发信号关闭。
3、调压的大小值受过零后多长时间投入。注答闷意10MS以内必须完成一次控制。否则控制将不正常。
滚桶洗衣机查看门是否关严,或按下面的例案检查
例1. 波轮不转(齿轴与齿套打滑)
例2. 通电后功能选择指示灯直接显示到脱水功能,无洗衣、漂洗功能,且不能脱水(功能选择开头损坏)
例3. 通电后电源指示灯亮,整机不工作(水磁同步电机烧坏)
例4. 电败衡裤机不转动(电机烧坏)
例5. 使用中电机突然停转冒烟并有严重的焦糊味(电机绕组短路)
例6. 开启电源,电源指示发光二极管不亮,按键无反应(保护电路误动作)
例7. 通电后指示灯亮,电机不转(双向可控硅T1损坏)
例8. 所有功能失效(稳压二极管DZ短路)衣物洗涤干净。
例9. 不能洗涤,进排水正常(启动电容器烧坏)
例10. 突然停转并伴有焦糊味(电机绕组线拦蠢圈烧坏,VS2和VS4损环)
例11. 洗涤不正常(水位开关失灵)
例12. 电机不能运转或转速慢(可控硅TR1损坏)
例13. 使用中电机突然停转(停机续流熄弧电阻R短路)
例14. 不工作(电机线圈烧毁)
例15. 不能洗涤(抱簧动作不灵活)
例16. 洗涤电机不转,但有“嗡嗡”声(启动电容损坏)
例17. 漂洗和脱水电机均不转动且发出“嗡嗡”声(启动电容损坏)
例18. 洗衣机不工作,电机有“嗡嗡”声(启动电容损坏)
例19. 开机后各程序娄码管均正常发光,但按下“启动/暂停”按钮,波轮不转动(传动皮带拉断)
例20. 通电后操作面板显示正常,但按下启动键洗衣机不工作(电子门锁位置偏移)
例21. 进完水后不能进行洗涤(电机接线盒脱落)
例22. 甩干时电机突然停转(电机损坏)
例23. 通电后蜂鸣器报警,面板上只有电源指示灯和低水位指示灯亮,其余均不亮,按键均无效(电容察简C13漏电)
例24. 不能正常洗涤(洗涤定时开关损坏)
例25. 通电后显示正常,电机不转动且有“嗡嗡”声(双向可控硅无穿)
例26. 开机后发光管不亮,按键不起作用,蜂鸣器不响(电位器R3接解不良)
故障排除法,有问题还是直接找售后。
PID控制在8位单片机中仍然有广泛的应用,比如温度控制,利用比例、积分、微分补偿来做恒温补偿控制,当然由于有这些数学处理,用C语言相对方便厅森一些,以下是一个具体的实例。
#includereg51.h
#includeintrins.h
#includemath.h
#includestring.h
struct PID {
unsigned int SetPoint; // 设定目标 Desired Value
unsigned int Proportion; // 比例常数 Proportional Const
unsigned int Integral; // 积分常数 Integral Const
unsigned int Derivative; // 微分常数 Derivative Const
unsigned int LastError; // Error[-1]
unsigned int PrevError; // Error[-2]
unsigned int SumError; // Sums of Errors
};
struct PID spid; // PID Control Structure
unsigned int rout; // PID Response (Output)
unsigned int rin; // PID Feedback (Input)
sbit data1=P1^0;
sbit clk=P1^1;
sbit plus=P2^0;
sbit subs=P2^1;
sbit stop=P2^2;
sbit output=P3^4;
sbit DQ=P3^3;
unsigned char flag,flag_1=0;
unsigned char high_time,low_time,count=0;//占空比调节参数
unsigned char set_temper=35;
unsigned char temper;
unsigned char i;
unsigned char j=0;
unsigned int s;
/***********************************************************
延时子程序,延时时间以12M晶振为准,延时时间为30us×time
***********************************************************/
void delay(unsigned char time)
{
unsigned char m,n;
for(n=0;ntime;n++)
扮基亩 for(m=0;m2;m++){}
}
/***********************************************************
写一位数据子程序
***********************************************************/
void write_bit(unsigned char bitval)
{
EA=0;
DQ=0; /*拉低DQ以开始一个写时序*/
if(bitval==1)
{
_nop_();
DQ=1; /*如要锋睁写1,则将总线置高*/
}
delay(5); /*延时90us供DA18B20采样*/
DQ=1; /*释放DQ总线*/
_nop_();
_nop_();
EA=1;
}
/***********************************************************
写一字节数据子程序
***********************************************************/
void write_byte(unsigned char val)
{
unsigned char i;
unsigned char temp;
EA=0;
TR0=0;
for(i=0;i8;i++) /*写一字节数据,一次写一位*/
{
temp=vali; /*移位操作,将本次要写的位移到最低位*/
temp=temp1;
write_bit(temp); /*向总线写该位*/
}
delay(7); /*延时120us后*/
// TR0=1;
EA=1;
}
/***********************************************************
读一位数据子程序
***********************************************************/
unsigned char read_bit()
{
unsigned char i,value_bit;
EA=0;
DQ=0; /*拉低DQ,开始读时序*/
_nop_();
_nop_();
DQ=1; /*释放总线*/
for(i=0;i2;i++){}
value_bit=DQ;
EA=1;
return(value_bit);
}
/***********************************************************
读一字节数据子程序
***********************************************************/
unsigned char read_byte()
{
unsigned char i,value=0;
EA=0;
for(i=0;i8;i++)
{
if(read_bit()) /*读一字节数据,一个时序中读一次,并作移位处理*/
value|=0x01i;
delay(4); /*延时80us以完成此次都时序,之后再读下一数据*/
}
EA=1;
return(value);
}
/***********************************************************
复位子程序
***********************************************************/
unsigned char reset()
{
unsigned char presence;
EA=0;
DQ=0; /*拉低DQ总线开始复位*/
delay(30); /*保持低电平480us*/
DQ=1; /*释放总线*/
delay(3);
presence=DQ; /*获取应答信号*/
delay(28); /*延时以完成整个时序*/
EA=1;
return(presence); /*返回应答信号,有芯片应答返回0,无芯片则返回1*/
}
/***********************************************************
获取温度子程序
***********************************************************/
void get_temper()
{
unsigned char i,j;
do
{
i=reset(); /*复位*/
} while(i!=0); /*1为无反馈信号*/
i=0xcc; /*发送设备定位命令*/
write_byte(i);
i=0x44; /*发送开始转换命令*/
write_byte(i);
delay(180); /*延时*/
do
{
i=reset(); /*复位*/
} while(i!=0);
i=0xcc; /*设备定位*/
write_byte(i);
i=0xbe; /*读出缓冲区内容*/
write_byte(i);
j=read_byte();
i=read_byte();
i=(i4)0x7f;
s=(unsigned int)(j0x0f); //得到小数部分
s=(s*100)/16;
j=j4;
temper=i|j; /*获取的温度放在temper中*/
}
/*====================================================================================================
Initialize PID Structure
=====================================================================================================*/
void PIDInit (struct PID *pp)
{
memset ( pp,0,sizeof(struct PID)); //全部初始化为0
}
/*====================================================================================================
PID计算部分
=====================================================================================================*/
unsigned int PIDCalc( struct PID *pp, unsigned int NextPoint )
{
unsigned int dError,Error;
Error = pp-SetPoint - NextPoint; // 偏差
pp-SumError += Error; // 积分
dError = pp-LastError - pp-PrevError; // 当前微分
pp-PrevError = pp-LastError;
pp-LastError = Error;
return (pp-Proportion * Error // 比例项
+ pp-Integral * pp-SumError // 积分项
+ pp-Derivative * dError); // 微分项
}
/***********************************************************
温度比较处理子程序
***********************************************************/
void compare_temper()
{
unsigned char i;
if(set_tempertemper) //是否设置的温度大于实际温度
{
if(set_temper-temper1) //设置的温度比实际的温度是否是大于1度
{
high_time=100; //如果是,则全速加热
low_time=0;
}
else //如果是在1度范围内,则运行PID计算
{
for(i=0;i10;i++)
{
get_temper(); //获取温度
rin = s; // Read Input
rout = PIDCalc ( spid,rin ); // Perform PID Interation
}
if (high_time=100)
high_time=(unsigned char)(rout/800);
else
high_time=100;
low_time= (100-high_time);
}
}
else if(set_temper=temper)
{
if(temper-set_temper0)
{
high_time=0;
low_time=100;
}
else
{
for(i=0;i10;i++)
{
get_temper();
rin = s; // Read Input
rout = PIDCalc ( spid,rin ); // Perform PID Interation
}
if (high_time100)
high_time=(unsigned char)(rout/10000);
else
high_time=0;
low_time= (100-high_time);
}
}
// else
// {}
}
/*****************************************************
T0中断服务子程序,用于控制电平的翻转 ,40us*100=4ms周期
******************************************************/
void serve_T0() interrupt 1 using 1
{
if(++count=(high_time))
output=1;
else if(count=100)
{
output=0;
}
else
count=0;
TH0=0x2f;
TL0=0xe0;
}
/*****************************************************
串行口中断服务程序,用于上位机通讯
******************************************************/
void serve_sio() interrupt 4 using 2
{
/* EA=0;
RI=0;
i=SBUF;
if(i==2)
{
while(RI==0){}
RI=0;
set_temper=SBUF;
SBUF=0x02;
while(TI==0){}
TI=0;
}
else if(i==3)
{
TI=0;
SBUF=temper;
while(TI==0){}
TI=0;
}
EA=1; */
}
void disp_1(unsigned char disp_num1[6])
{
unsigned char n,a,m;
for(n=0;n6;n++)
{
// k=disp_num1[n];
for(a=0;a8;a++)
{
clk=0;
m=(disp_num1[n]1);
disp_num1[n]=disp_num1[n]1;
if(m==1)
data1=1;
else
data1=0;
_nop_();
clk=1;
_nop_();
}
}
}
/*****************************************************
显示子程序
功能:将占空比温度转化为单个字符,显示占空比和测得到的温度
******************************************************/
void display()
{
unsigned char code number[]={0xfc,0x60,0xda,0xf2,0x66,0xb6,0xbe,0xe0,0xfe,0xf6};
unsigned char disp_num[6];
unsigned int k,k1;
k=high_time;
k=k%1000;
k1=k/100;
if(k1==0)
disp_num[0]=0;
else
disp_num[0]=0x60;
k=k%100;
disp_num[1]=number[k/10];
disp_num[2]=number[k%10];
k=temper;
k=k%100;
disp_num[3]=number[k/10];
disp_num[4]=number[k%10]+1;
disp_num[5]=number[s/10];
disp_1(disp_num);
}
/***********************************************************
主程序
***********************************************************/
void main()
{
unsigned char z;
unsigned char a,b,flag_2=1,count1=0;
unsigned char phil[]={2,0xce,0x6e,0x60,0x1c,2};
TMOD=0x21;
TH0=0x2f;
TL0=0x40;
SCON=0x50;
PCON=0x00;
TH1=0xfd;
TL1=0xfd;
PS=1;
EA=1;
EX1=0;
ET0=1;
ES=1;
TR0=1;
TR1=1;
high_time=50;
low_time=50;
PIDInit ( spid ); // Initialize Structure
spid.Proportion = 10; // Set PID Coefficients 比例常数 Proportional Const
spid.Integral = 8; //积分常数 Integral Const
spid.Derivative =6; //微分常数 Derivative Const
spid.SetPoint = 100; // Set PID Setpoint 设定目标 Desired Value
while(1)
{
if(plus==0)
{
EA=0;
for(a=0;a5;a++)
for(b=0;b102;b++){}
if(plus==0)
{
set_temper++;
flag=0;
}
}
else if(subs==0)
{
for(a=0;a5;a++)
for(b=0;a102;b++){}
if(subs==0)
{
set_temper--;
flag=0;
}
}
else if(stop==0)
{
for(a=0;a5;a++)
for(b=0;b102;b++){}
if(stop==0)
{
flag=0;
break;
}
EA=1;
}
get_temper();
b=temper;
if(flag_2==1)
a=b;
if((abs(a-b))5)
temper=a;
else
temper=b;
a=temper;
flag_2=0;
if(++count130)
{
display();
count1=0;
}
compare_temper();
}
TR0=0;
z=1;
while(1)
{
EA=0;
if(stop==0)
{
for(a=0;a5;a++)
for(b=0;b102;b++){}
if(stop==0)
disp_1(phil);
// break;
}
EA=1;
}
}
单用一个变压器绕组,可控硅的那组桥式整流和VD1~4的这组同时供电,可控硅导通时其阳极和A点是等电位的,所耐滚以当然要在X处断开。你胡核有另一个变压器当然可以按原图接线,TR1有两组互不相裤亩掘通的绕...
什么是高精度硅传感器技术2、温度传感器有哪几种3、MEMS自动化生产中可控硅压力传感器封装哪家做得好?什么是高精度硅传感器技术可控硅压力传感器是一种基于硅微加工...
MEMS自动化生产中可控硅压力传感器封装哪家做得好?2、压力传感器封装哪家做得好?3、传感器检测电路跟传感器封装一样吗4、如何做好压力传感器封装?5、压力传感器...
全面详细解析CMOS和CCD图像传感器2、ccd全称是什么?3、ccd是什么传感器4、CCD线性图像传感器5、ccd传感器原理详细介绍6、什么是CCD图像传感器...
可控硅哪家好?2、淄博哪儿有大点的电子元件批发市场?谢谢了,大神帮忙啊3、请问淄博张店区有卖电子元件的市场或店面吗,我只知道在美食街东面那里有...4、淄博有没...
电子类原件有哪些?2、电子元器件有哪些3、电子元器件有哪些?4、电子元器件具体有哪些?电子类原件有哪些?1、电子元器件主要有:电阻器、电容器、电感器、变压器、半...
c2是什么元器件如何装配2、dcdc电源模块是什么3、表面组装元件和表面组装器件没有区别c2是什么元器件如何装配1、元器件选择功放电路中CC2为电解电容器,耐压...
什么叫做直流支撑电容器?主要是想知道为什么叫做直流支撑?2、对交直交传动的机车中间直流环节的支撑电容进行预充电,需设充电电路...3、电容怎么样什么叫做直流支撑...
江海股份?江海股份一季度业绩大幅上涨原因?江海股份属于什么公司?_百度...2、江海电容器厂上班辛苦吗3、国内电容的厂家有哪些?4、南通江海电容器股份有限公司电...
电容器有何用途?2、电容到底是干什么用的?3、电容器的作用4、电容器有什么用?5、电容有什么用电容器有何用途?1、电容的用途非常多,主要有如下几种:1.隔直流:...
电容器在电路中的作用2、滤波电容的作用3、谐振电容与滤波电容有什么区别电容器在电路中的作用1、电容器主要用于交流电路及脉冲电路中,在直流电路中电容器一般起隔断直...
一点销电子网
Yidianxiao Electronic Website Platform