欧洲精品久久久av无码电影,日日噜噜夜夜爽爽,精品无码国产自产拍在线观看蜜,人妻少妇被粗大爽9797pw,羞国产在线拍揄自揄视频,国产白嫩漂亮美女在线观看,天码欧美日本一道免费,av大片在线无码免费

      歡迎來到同城快修-附近家電維修、家電清洗、家電安裝服務(wù)平臺

      24小時家電維修熱線:

      400—1558638

      當(dāng)前位置:主頁 > 空調(diào) > 維修資訊 >

      如何更換洗衣機水位傳感器(怎樣更換洗衣機水位傳感器圖片)

      發(fā)布日期:2022-11-30 20:38:33 瀏覽:
      如何更換洗衣機水位傳感器(怎樣更換洗衣機水位傳感器圖片)

      前沿拓展:


      (一)洗衣機故障檢修

      我們有個老舊的全自動洗衣機,是廣東產(chǎn)的“愛德牌”。14年前因為出現(xiàn)無法排水故障,另外買了個金鈴洗衣機。當(dāng)時看它各個部件和外觀都還挺好,想留待有空時再檢修,就沒有丟棄它。

      最近想騰空雜物房,就考慮是否該丟棄這洗衣機了?考慮到擱置十多年,各個部件和馬達(dá)都應(yīng)該銹蝕死了。但通電試機,沒想到它的馬達(dá)還能正常運轉(zhuǎn)。試運行它的“無水試機程序”,還能正常洗滌和進(jìn)出水。灌水進(jìn)去試,可以洗衣服,但排水只能排一半就停機了,也不能甩干。

      拆開背蓋,看到主軸上有個離合器,通過皮帶和齒輪與馬達(dá)連接,但我完全看不明白它的工作原理。只好上網(wǎng),查找該洗衣機的電路圖和相關(guān)維修資料,其中有關(guān)離合器的工作原理介紹如下:

      ====

      減速離合器洗滌工作過程:進(jìn)入洗滌程序時,排水電磁鐵斷電,剎車桿在彈簧力的作用下,針剎車鎖定,使脫水軸不能轉(zhuǎn)動。同時剎車桿上一撥叉棘爪將棘輪撥過一個角度,方絲離合彈簧固定在棘輪壁上的這一端被撥動,另一端處于自由狀態(tài),離合套與外套軸分離,由丁方絲離合彈簧被撥松,洗滌軸與脫水軸分離,當(dāng)電動機轉(zhuǎn)動時,V帶傳動,從大帶輪傳過來的轉(zhuǎn)動通過齒輪軸傳至行星減速器,減速后由波輪軸傳出,帶動波輪旋轉(zhuǎn)。

      洗滌時,電動機運轉(zhuǎn),通過減速離合器,降低轉(zhuǎn)速帶動波輪間歇正反轉(zhuǎn),進(jìn)行洗滌,此時洗滌脫水桶不轉(zhuǎn)動;脫水時,電動機運轉(zhuǎn),通過離合器,不減速(即高速)帶動脫水桶順時針方向運轉(zhuǎn),進(jìn)行脫水,此時波輪也隨著脫水桶一起運轉(zhuǎn)。

      圖1)

      ==

      上述信息我反復(fù)琢磨半天仍不得要領(lǐng),只是粗略了解其大概工作原理。沒辦法,邊干邊體會吧!

      為了便于檢修,我拆開洗衣機蓋板(控制主板、進(jìn)水電磁閥、水位傳感器都固定在蓋板上)。由于外殼不好拆卸,我就把整個洗衣機翻轉(zhuǎn)過來。下圖2+圖3是離合器與排水電磁鐵(通過電磁鐵動作牽引排水閥)結(jié)構(gòu)外觀—俯視圖和側(cè)視圖:

      圖2)離合器 圖3)排水電磁鐵

      我琢磨:我的洗衣機能夠正常洗滌,說明馬達(dá)及離合器沒太大問題。排水只能排一半,說明排水電磁閥也沒完全損壞,很可能是電磁鐵芯生銹導(dǎo)致行程受阻,離合桿和棘爪也沒能移動到位,以致影響馬達(dá)帶動不了脫水桶甩干。我試用起子撬動電磁鐵芯,強行讓離合桿和棘爪移動到位,并轉(zhuǎn)到皮帶輪,發(fā)現(xiàn)脫水桶是可以旋轉(zhuǎn)的,這說明離合器并沒有銹蝕,問題可能就是電磁鐵芯吸合不到位。

      找點機油涂抹到電磁鐵芯和相關(guān)驅(qū)動機件上,多次運行脫水程序,給電磁鐵反復(fù)通電吸合再釋放。最后放水試機,洗滌和脫水都正常了。但又發(fā)生開機進(jìn)水不停,似乎是水位傳感器有問題,導(dǎo)致單片機檢測不到有水信號,機器就不能開始洗滌程序。

      愛德洗衣機的水位傳感器在市面上也沒有找到合適的替代品。從電路圖看不出水位傳感器的工作原理,我從網(wǎng)上找到資料有如下介紹:

      =

      圖4為該水位傳感器的結(jié)構(gòu)示意圖,下部的氣室加橡皮膜組成壓力傳感部分,上部的活動磁芯和線圈與振蕩電路板一起組成LC振蕩電路。 工作時,隨著水位的升高,氣室中的壓力也升高。當(dāng)壓力升高到一定值時,橡皮膜推塑料盤頂著磁芯上移,電感線圈的電感發(fā)生變化,LC振蕩電路的振蕩頻率也發(fā)生相應(yīng)變化。當(dāng)頻率達(dá)到程序控制器預(yù)定值后(表示預(yù)定水位),程序控制器便發(fā)出指令停止進(jìn)水,并轉(zhuǎn)入洗滌程序。水位傳感器在出廠前,振蕩頻率定為高水位頻率22.60kHz,空水位頻率25.20kHz。 水位越低,傳感器輸出的信號頻率越高。

      =

      網(wǎng)上的上述信息與愛德洗衣機的水位傳感器情況吻合。我拆開我們的水位傳感器,發(fā)現(xiàn)其橡皮膜已經(jīng)老化開裂,怪不得不能工作了。我找氣球等類似材料替代原橡皮膜換上,水位傳感器又能工作了。不過水位感應(yīng)誤差變大了,通過調(diào)節(jié)傳感器里面的螺絲,可以部分彌補誤差。但最后只能使用“中低水位”,如果用高水位,結(jié)果進(jìn)水到水溢出了,洗衣機仍會以為水位不夠而不斷進(jìn)水。為了廢物利用,我只好將就地用“中低水位”來洗衣服了!

      3點備忘錄:

      (1)洗衣機的開蓋安全開關(guān)SA1有防抖動功能:當(dāng)洗衣機脫水時,如果衣物堆放不勻,致使脫水桶劇烈振動,以幾十周的頻率撞擊安全開關(guān)SAI的傳感桿, SA1連續(xù)輸出通、斷信號,微處理器(單片機)發(fā)出糾正指令,使洗衣機進(jìn)入停水→進(jìn)水一漂洗一排水一脫水程序,以便消除衣物擺放不勻造成的振動。如果反復(fù)幾次不能消除該現(xiàn)象,單片機會令洗衣機進(jìn)入脫水保護(hù)狀態(tài)。該開關(guān)還有脫水時開蓋斷電功能,我使用感覺不太方便,就將其拆除了。以后不管是否開蓋,洗衣機都可以照樣脫水。

      (2)排水電磁鐵標(biāo)牌工作電壓是直流198V,從電路圖上看不出直流198V電壓的電路(其電源通斷由雙向可控硅控制)。實測工作電壓是直流202V,用交流檔測是96V交流這可能是由220V交流半波整流得到的脈動直流。

      (3)該洗衣機的電路原理圖如下(圖5):

      圖5

      圖6)洗衣機控制面板外觀

      =======================

      (二)全自動洗衣機硬件修改及軟件設(shè)計

      洗衣機用一段時間后,又發(fā)生洗衣到最后階段“甩干排水”時就停機了。檢查各個硬件未見有問題,估計是單片機程序因為某次無意的錯誤碰觸高壓打火干擾,導(dǎo)致軟件意外被修改?盡管這個可能性“很扯”,反正洗衣機就是可以循環(huán)3次洗滌和進(jìn)水+排水,但最后一次的“甩干排水”就不執(zhí)行了。

      我試運行產(chǎn)品的無水洗衣模擬測試程序,洗滌進(jìn)出水各個功能都是正常的(說明洗衣機的硬件沒問題)。因為該產(chǎn)品配有參考電路圖,我手頭又有好幾個洗衣機的例程,干脆嘗試更換單片機,自己重寫程序看看效果如何。

      開始以為這是很簡單的工作,真正動手時,才發(fā)現(xiàn)問題多多。

      最主要問題是原機單片機不知道是什么型號?其引腳排列和51系列產(chǎn)品完全不同,這就導(dǎo)致硬件工作量大為增加,比自己另外做一個洗衣機的工作量還要大。

      下圖6+圖7,先將原單片機拆焊下來,加一個單片機插座,以便以后可以隨意更換單片機。

      圖6)已經(jīng)拆下了原單片機的部分電路板

      圖7)加焊了一個單片機插座

      圖8)原單片機底部引腳布線

      圖9)更換51單片機后,重新更改的引腳走線。

      圖10)最后修改好的電路板。

      硬件修改完成后,在進(jìn)行實際軟件設(shè)計時,才發(fā)現(xiàn)要按照原硬件原理圖接線來設(shè)計軟件,會有很多無法躲避的麻煩。

      第一個難點:由于該單片機的硬件接口有限,原洗衣機操作面板顯示不同工作狀態(tài)的的14個LED燈與2個數(shù)碼管是共用單片機端口端口,軟件編程時就不能簡單地令某個端口變高或變低電平來控制LED的亮滅,這樣會導(dǎo)致數(shù)碼管亂閃。反之亦然,數(shù)碼管顯示時,LED也會亂閃。如何通過控制4個片選三極管來分時顯示LED和數(shù)碼管,浪費了我很多測試時間。

      第二個難點:我是用定時器做洗衣程序調(diào)度器,單片機給洗衣機按鍵、LED、數(shù)碼管和馬達(dá)按不同時間間隙執(zhí)行不同的動作,這比順序循環(huán)運行的軟件設(shè)計及調(diào)試要麻煩很多。陸陸續(xù)續(xù)搞了很長時間才把程序走通。

      第三個難點:水位傳感器沒買到合適產(chǎn)品,自己換氣室的薄膜后,重新測試高中低不同水位對應(yīng)不同輸出電壓值。期間要反復(fù)進(jìn)水排水測試,也是挺費神的。最尷尬的是,我是在住房室內(nèi)進(jìn)行將水位和軟硬件聯(lián)合測試的。某次測試后,洗衣機沒排水就撂下不管了。結(jié)果我外出辦事半天后,洗衣機排水閥發(fā)生漏水故障,洗衣機里的水全漏出來,房間泡了1厘米的水,還通過地板裂縫漏到樓下鄰居的臥房,把人家的床鋪被子和床墊全淋濕透了。最后硬著頭皮給人家道歉、賠錢,過后很長時間都不好意思面對人家,真是難堪死了!

      (三)最后實現(xiàn)的軟硬件情況說明:

      洗衣機是用STC89C52RC或STC89C54RC類單片機,水位傳感器是用電感式震蕩電路。為了節(jié)省端口,洗衣狀態(tài)顯示的14個發(fā)光二極管是與2個LED數(shù)碼管共用端口的,由4個三極管(VT7VT10)驅(qū)動發(fā)光,并經(jīng)軟件分時控制來輪流顯示,這導(dǎo)致了系統(tǒng)軟件的復(fù)雜和不易讀懂。

      全自動洗衣機實際產(chǎn)品應(yīng)用程序功能:

      洗衣進(jìn)程有3種:全洗衣(洗滌+漂洗+甩干);漂洗甩干;單獨甩干。

      洗衣模式有2種:標(biāo)準(zhǔn)、省時。

      水位設(shè)定有4種:高,中,低2,低1。

      按下起動按鍵后,洗衣機開始進(jìn)水,到達(dá)設(shè)定水位后停止進(jìn)水。緊接著電動機開始正反轉(zhuǎn)運行,每次正反轉(zhuǎn)由四個節(jié)拍組成:

      1)正轉(zhuǎn)= 510秒; 2)停轉(zhuǎn)= 34秒; 3)反轉(zhuǎn)= 510秒; 4)停轉(zhuǎn)= 34秒。

      進(jìn)水= 3分鐘,洗滌= 省時39分鐘/標(biāo)準(zhǔn)51分鐘,排水=3分鐘,脫水=1.5分鐘。脫水時電動機正轉(zhuǎn)90秒(Tspin_Minute)。

      預(yù)定洗滌時間完成后,就排水和甩干。到達(dá)預(yù)定的3次循環(huán)洗滌排水周期后,洗衣過程結(jié)束,并發(fā)出提醒蜂鳴聲。全過程約為省時39分鐘/標(biāo)準(zhǔn)51分鐘。

      為防止意外,在進(jìn)水和排水期間,如果超過80秒水位都沒變化,便認(rèn)為進(jìn)出水有故障而停機報警。

      =

      (四)全自動洗衣機主要源碼

      //洗滌方式選擇

      //標(biāo)準(zhǔn)洗滌程序=1,經(jīng)濟=2, F_Normal=1, F_Econormy=2,

      void key_scan() //可以選擇洗滌暫停菜單(改變洗滌方式)

      { static uchar Kpress_Count; //按鍵次數(shù)計數(shù)器

      if(Key_Start == 0) // = P33=Key_Start=開始或暫停按鍵,按下鍵= 低電平0

      { Beep50();

      if(Key_Start == 0)

      { while(!Key_Start); //wait for key release

      if(flag_Washing ==0) //= 0表示還未開始洗滌

      // 1th按下啟動鍵=開始,如果重復(fù)按&34;開啟/暫停&34;key,其狀態(tài)flag_Washing會10反復(fù)轉(zhuǎn)換

      { flag_Washing = 1; //=1復(fù)位洗滌標(biāo)志,

      ET1=1; //打開調(diào)度器(setting里會令ET1=0)

      if(Kpress_Count ==0) { //是1th按啟動鍵嗎?

      //1th按啟動鍵,Int1_Count=0.給&34;正常洗衣&34;參數(shù)賦值。2th,Int1_Count>=1,不必再給&34;正常洗衣&34;參數(shù)賦值,避免暫停洗衣后,重新運行又賦初始值,導(dǎo)致半途洗衣定時不對。

      Kpress_Count++;

      wash_on(); //start washing

      }

      else Redo(); //redo washing, //允許定時器T1中斷并打開水泵+1秒后,由T1中斷服務(wù)來打開馬達(dá)

      }

      else if(flag_Washing) // 2th按下啟動鍵=暫停

      { flag_Washing = 0; //==0表示暫停洗滌或進(jìn)出水

      ET1=0; //關(guān)閉調(diào)度器,顯示將不能刷新,令洗衣機暫停! Suspend();

      LED_Timer_on(); Beep50();

      }//end else

      }

      }

      }

      void Timer0_Init(void) //T0設(shè)為16位計數(shù)器,對信號脈沖進(jìn)行計數(shù)。

      { TMOD |= 0X05; //設(shè)16位計數(shù)工作方式1,手動重裝計數(shù)初值 方式選擇位C/T=1=計數(shù)方式

      TH0=0; TL0=0; //計數(shù)器T0初值為0

      TR0=1; ET0=1;

      }

      void Timer2_Init(void)

      {// 復(fù)位時, T2MOD=T2CON=00H,方式選擇位C/T=0=定時工作方式。

      T2CON=0;

      RCAP2H=(6553662500)>>8; //在程序初始化的時候給RCAP2L和RCAP2H賦值,

      RCAP2L=(6553662500)%256; //中斷產(chǎn)生時自動使TH2=RCAP2H,TL2=RCAP2L。

      TH2=RCAP2H; TL2=RCAP2L;

      ET2=1; //打開定時器2中斷

      TR2=1; //定時器2開始計時

      }

      //T1=0001,設(shè)為16位定時工作方式1,作為1秒的調(diào)度器

      void Timer1_Init(void)

      { TMOD &= 0X0f; // 高位T1計數(shù)方式清0

      TMOD |= 0X10; // T1=計數(shù)方式1= 16位,

      //T1方式選擇位C/T=0=定時工作方式,定時方式1= 16位,不自動重裝參數(shù)

      PreT1h= PreloadT1H; PreT1l= PreloadT1L;

      TH1= PreT1h; TL1= PreT1l;

      TR1 = 1; ET1=1;

      PT1= 1; //T1為最高優(yōu)先級

      }

      //水位脈沖從P3.4=T0輸入,要用到下面的中斷計數(shù):

      void timer0(void) interrupt 1 //16位計數(shù)器0溢出中斷

      {//計數(shù)溢出時,中斷并累加計數(shù)(即每收到256個脈沖就中斷1次)。到1秒后,在T2中斷換算為頻率。

      TH0=00; TL0=00; //clear counter,正常時,TH0和TL0記錄水位脈沖數(shù)

      }

      //在中斷服務(wù)里計算水位頻率F_level

      void timer2(void) interrupt 5 //12M晶振,定時器2中斷(62.5ms中斷一次,每半秒測一次),

      { TF2=0; //定時器2的中斷標(biāo)志位TF2不能夠由硬件清零,所以要在中斷服務(wù)程序中將其清零

      count_T2++;

      if (count_T2>=8) //定時0.5s時間到

      { TR0=0; //計數(shù)器停止計數(shù)

      count_T2=0; //中斷次數(shù)清0

      Led_1S= ~Led_1S; //=p16仿真時便于觀察

      //仿真時,為了可以無水運行,如下修改(還需將下面的水位采集語句屏蔽:=start

      if(W_progress==1) F_level= W_level; //進(jìn)水時W_level=W_MIDD=242;

      else if(W_progress==3) F_level= W_empty; //排水時,W_empty=252=超過最低水位=無水

      //仿真時,為了可以無水運行,修改:=end

      F_level = (uint)((TH0<<8)+TL0)/50; //如果不用(uint)限定,F(xiàn)_level會變成0!!!

      //比較20S間隔內(nèi)2次水位,如果無變化,可能進(jìn)出水有問題start

      T_in_out20s++ ;

      if(T_in_out20s ==40)

      { F_level_40= F_level; } //1th水位值存于F_level_40

      else if(T_in_out20s ==80) //(8040)0.5S=20S

      { F_level_80= F_level; } //2th水位值存于F_level_80

      TL0=0; TH0=0; //清零16位計數(shù)器T0

      TR0=1; //計數(shù)器T0開始計數(shù)

      T2_FLAG=1; //標(biāo)志位置1=頻率計算結(jié)束標(biāo)志未用到

      }

      }

      //啟動洗滌程序后,就交由調(diào)度器控制。

      void Timer1(void) interrupt 3 //1秒調(diào)度器

      { TH1= PreT1h; TL1= PreT1l; //reload 定時值PreloadT1H= (6553650000)>>8;

      if(T50ms_count++ >=20) // =1S interrupt (1)

      { T50ms_count = 0;

      if(flag_Washing==1) //=已經(jīng)按下啟動鍵,運行標(biāo)志,=1為已經(jīng)開始運行,0為暫停 (2)

      {

      Second; // 對各個洗滌進(jìn)程做減時計算 (在menu里已經(jīng)令Second=0)

      if((Second <=0)&&(Minute != 0)) //這是洗滌減一計時器。

      { Minute; Second = 59;

      if(T_all_reman < 0) T_all_reman=0; //顯示剩余時間

      } //Minute和Second 是各個洗滌階段的剩余耗時值

      // W_progress =0進(jìn)水,1洗滌,2馬達(dá)正反轉(zhuǎn), 3漂洗(排水),4甩干,

      if(W_progress==0) //(A)在wash_on()開始后跳到這里

      { W_progress=1; Water_in(); //進(jìn)水時間在Water_in()定義

      T_in_out20s=0; err=0; } //清零進(jìn)出水測頻時間間隔

      else if(W_progress==1) //(A)在(W_progress==0)開始進(jìn)水,0.5S后跳到這里

      { //li排水次數(shù)計數(shù)器Dump_count,初值=0,排一次水,運行一次out(),

      //測試水位傳感器是否有問題:start

      if(T_in_out20s >80) //T_in_out20s在T2累加,

      { //如果傳感器正常,無水時F_level>253,有水時0<F_level<253,

      T_in_out20s =0; //清零以便T2中斷再次保存水位值。

      if((F_level_40 & F_level_80) &&(F_level_40 ==F_level_80))

      //如果40S內(nèi)2次水位值不為0,而且相同,說明水位傳感器有問題。

      { if(err++>=2) W_progress=8; }

      }

      //end of測試水位傳感器是否有問題:end

      if(F_level >W_level) // 檢測到預(yù)定水位W_level嗎?

      { if((Second<0)&&(Minute==0)) //水位未到,但超時

      { W_progress =8; } //=err, goto (F)超時處理

      } //進(jìn)水期間W_progress=1

      else if((F_level<=W_level)&&(F_level>0)) //如果未超時,去洗滌

      { W_progress=2;

      xi(); Beep50(); } //去洗滌

      } //end of if(W_progress==1)

      else if(W_progress== 2) //(B)馬達(dá)正反轉(zhuǎn)時間控制

      { T_motor++; //正反轉(zhuǎn)控制計時,

      if(Washprogram ==1) //=normal wash mode

      { //如果是1th,T_motor++=1

      switch(T_motor) //1th,T_motor=1=case1,每秒中斷后+1

      {

      //1th,電機右轉(zhuǎn)10秒;10th,電機停4秒;14th,電機左轉(zhuǎn)10秒;23th后,停止轉(zhuǎn)動

      case 1: ZhengZhuan(); break; //第1秒,電機右轉(zhuǎn)

      case 10: Stop_Motor(); break; //第10秒,電機停

      case 14: FanZhuan(); break; //第14秒,電機左轉(zhuǎn)10秒

      case 23:Stop_Motor(); break; //第19秒,電機停4秒

      default: //第27秒后,如果洗滌時間未完,再去正轉(zhuǎn)

      if(T_motor>=27) { T_motor=0; }

      }

      }

      else if(Washprogram ==2) //=econormy wash mode

      {

      //if set minute=1,則每分鐘正反轉(zhuǎn)3.54次,然后甩干10秒=15聲,3個周期后=3分鐘,結(jié)束洗滌

      switch(T_motor) //1th,T_motor=1=case1,每秒中斷后+1

      {

      //1th,電機右轉(zhuǎn)5秒;6th,電機停3秒;7th,電機左轉(zhuǎn)5秒;13th后,停止轉(zhuǎn)動。

      case 1: ZhengZhuan(); break; //第1秒,電機右轉(zhuǎn)5秒

      case 6: Stop_Motor(); break; //第6秒,電機停3秒

      case 9: FanZhuan(); break; //第9秒,電機左轉(zhuǎn)5秒

      case 14:Stop_Motor(); break; //第14秒,電機停3秒

      default: //第15秒后,如果洗滌時間未完,再去正轉(zhuǎn)

      if(T_motor>=17) { T_motor=0; }//17S后,從頭再來

      }

      }

      if((Second<=0)&&(Minute==0))

      //如果1th洗滌cycal時間到(Second=0xff=1)就排水

      { W_progress =3; Water_out(); } //goto 排水處理

      } //end of if(W_progress==2)

      else if(W_progress==3) //(C)如果排水完,就甩干。

      {

      //測試水位傳感器是否有問題:start

      if(T_in_out20s >80) //T_in_out20s在T2累加,

      { //如果傳感器正常,無水時F_level>253,有水時0<F_level<253,

      T_in_out20s =0; //清零以便T2中斷服務(wù)里再次保存水位值。

      if((F_level_40 & F_level_80) &&(F_level_40 ==F_level_80))

      //如果40S內(nèi)2次水位值不為0,而且相同,說明水位傳感器有問題。

      { if(err++>=2) W_progress=8; }

      }

      //測試水位傳感器是否有問題:end

      if((F_level <W_empty)&&(F_level>0)) //是否還有水?

      { if((Second<=0)&&(Minute==0)) //超時了,還沒排干水=err

      { W_progress =8; } //goto (F)超時處理

      }

      else if(F_level >= W_empty) //水確實排干了

      { // 如果無水....

      if(Wash_count < Wash_cycle) //水排干了,但洗滌次數(shù)未夠

      { W_progress =4;

      Tuoshui(); Wash_count++; } //水排干了,去脫水,

      else if(Wash_count >Wash_cycle) W_progress =9;

      //如果超過3次排水,不甩干就結(jié)束W_progress=9

      //如果是單獨排水,就設(shè)置Wash_count =Wash_cycle+1 >3,所以只排水一次,不甩干就結(jié)束

      }

      } //end of if(W_progress==3)

      else if(W_progress==4) //(D) 甩干完了,進(jìn)水或結(jié)束

      { if((Second<=0)&&(Minute==0)) // 甩干時間到否?

      {// Wash_cycle =洗滌次數(shù)=3次=(進(jìn)水+洗滌+排水+甩干)3

      if(Wash_count >=Wash_cycle) //甩干時間到了,結(jié)束洗滌

      { W_progress =9; } //goto (G)=over()

      else

      { W_progress =0; Water_in(); }

      //甩干時間到,但洗滌未夠3次,Wash_count<Wash_cycle,繼續(xù)洗滌

      }

      } //end of if(W_progress==4)

      //===============================================

      else if(W_progress== 8) //(F)err超時處理

      { T_all_reman=99; Second=0; Minute=0; Beep300();

      err =1; Stop_Motor();

      Pump_out_off(); Pump_in_off();

      }

      else if(W_progress==9) //(G)洗滌結(jié)束

      { T_all_reman=88; Second=0; Minute=0; over(); }

      //===================================================

      } //end of if(!flag_Washing) //按下啟動鍵 (1)end

      } //end of if(T50ms_count++>=20)(2)end

      }

      //由于LED與SEG共用P0口,所以必須用輪流顯示LED,數(shù)碼管由中斷刷新

      void Led_Update(void)

      { Seg_disable(); //數(shù)碼管不顯示

      Show_water_led(); Delay_1ms(1); //須延時1MS才能看到LED亮

      Show_progress_led(); Delay_1ms(1);

      Show_program_led(); Delay_1ms(1);

      if(f_Ledtimer == 1)

      { LED_Timer_on(); Delay_1ms(1); } //定時器LED亮,暫停時LED_Timer=on

      else LED_Timer_off(); //正常工作時LED_Timer=off

      }

      /管腳初始化程序/

      void InitAll(void)

      { // LED_Regular =ON; //ON=1,默認(rèn)為標(biāo)準(zhǔn)程序,燈亮

      Pump_in = OFF; //OFF=0; 進(jìn)水控制,關(guān), 單個反相器驅(qū)動

      Pump_out= 1; // P2^0=排水控制,1=關(guān),因為本人另加有2個反相器串聯(lián)電路

      Motor_R = OFF; //電機正轉(zhuǎn),不走=OFF=0, 單個反相器驅(qū)動

      Motor_L = OFF; //電機反轉(zhuǎn),不走=OFF=0, 單個反相器驅(qū)動

      Beeper = OFF; //報警喇叭,不叫=OFF=0

      P1= 0xef; //let P1口為輸入= 3個按鍵=P12P14P15,注意:P17=beeper=0不響

      K_program= 1; //let P33口為輸入,K_program = P3^3=啟停按鍵1=int1 port

      //標(biāo)志清零:

      flag_Washing =0; //運行標(biāo)志,1為已經(jīng)開始運行,0為暫停

      f_Ledtimer =0; // 控制LED亮或滅的標(biāo)志,timer_led=off=0

      F_level=W_empty; // F_level是檢測到的水位頻率,

      W_level=W_MIDD; // W_level是預(yù)置的水位,W_MIDD=242,中LED=亮,

      Level_case = F_MIDD; //設(shè)置水位時的增量累加器=1234=highmiddlelow2low1,

      T_Normal_min=9; //=9對應(yīng)=93+24=51分鐘

      T_Normal_sec=0;

      T_Econormy_min=5; //=5對應(yīng)=53+24=39分鐘 =省時洗滌,仿真=1

      T_Econormy_sec=0;

      //進(jìn)出水+甩干的時間

      Tin_Minute = 3; //waterin時間 =3分鐘

      Tin_Second = 0; // =秒

      Tout_Minute = 3; //waterout時間=3分鐘

      Tout_Second = 0;

      Tspin_Minute= 1; //甩干時間=1分30秒,如果2分鐘可能會太長.

      Tspin_Second= 30; //如果仿真用30秒

      T_in_out20s = 0; //20S時間間隔計數(shù)器用于每20S測試一次進(jìn)出水,看是否正常?

      F_level_40 = 0;

      F_level_80 = 0; //80S間隔水位頻率暫存值,比較其變化值來判斷進(jìn)出水是否正常?

      Wash_count =0; //實際循環(huán)洗滌次數(shù)計數(shù)器=清零

      Wash_cycle = 3; //循環(huán)洗滌次數(shù)(一個循環(huán)=進(jìn)水+洗滌+脫水)=3是標(biāo)準(zhǔn)洗滌次數(shù)

      W_progress = 0; // 工作狀態(tài)跳轉(zhuǎn)控制標(biāo)志=0進(jìn)水(浸泡),1洗滌,2排水,3甩干

      Washprogram= 2; //1=標(biāo)準(zhǔn),2=省時

      if(Washprogram== 1) //1=標(biāo)準(zhǔn),2=省時

      { Txi_Minute = T_Normal_min; //正常洗滌=7分3,對應(yīng)=21分鐘;仿真時=0分鐘+30秒

      Txi_Second = T_Normal_sec;

      }

      else

      { Txi_Minute = T_Econormy_min; //省時洗滌=5分3,對應(yīng)=15分鐘;仿真時=0分鐘+30秒

      Txi_Second = T_Econormy_sec;

      }

      }

      //==================================

      void main()

      { uchar Tms=500; //延時顯示參數(shù)實際應(yīng)用=APP=500

      InitAll(); //管腳初始化,報警喇叭,進(jìn)水、排水、電機正轉(zhuǎn)反轉(zhuǎn)均=關(guān)閉

      Beep50(); //Beeper=0=stop蜂鳴器, =1=響=p17

      Timer1_Init(); // T1作調(diào)度器

      Timer0_Init(); // 定時器0中斷作為水位檢測脈沖計數(shù)

      Timer2_Init(); // 定時器2中斷計時,將T0的頻率計數(shù)轉(zhuǎn)為頻率

      EA=1;

      T_all_reman= T_all; //T_all(洗滌總時長);T_all_reman=洗滌剩余時間

      while(1)

      {

      //設(shè)置洗滌參數(shù):

      if(flag_Washing==0) //如果在暫停狀態(tài)(首次開機或按了暫停鍵)才可以設(shè)置洗滌參數(shù)

      {

      Set_Level_case(); //設(shè)置水位, =key2=p13, Level_case++;

      //改變洗滌進(jìn)程:

      Set_progress(); //progress=key3=p15,

      //改變洗滌方式:

      Set_program(); //program=key4,洗滌方式:F_Normal=1, F_Econormy=2,

      ET1= 0; //調(diào)度器T1關(guān)中斷,調(diào)度器不工作,停止循環(huán)顯示,

      }

      key_scan(); //選擇&34;啟動/暫停&34;

      //=key scan + wash start。如果開始洗滌,就從wash_on()開始

      Led_Update(); //洗衣狀態(tài)的LED顯示

      Seg_Update(); //輪流顯示水位和剩余洗滌時間

      //因為試運行出錯時,調(diào)度器里不能關(guān)斷pumpin,所以這里加err超時處理

      if((F_level <W_OVER)||(F_level==W_ERR))

      // 檢測到的水位F_level有問題,W_ERR=0,W_OVER=220=過高水位

      { W_progress=8; T_all_reman=99;

      Second=0; Minute=0; Beep300();

      Stop_Motor(); Pump_out_off(); Pump_in_off();

      }

      }

      }

      //程序結(jié)束。

      20220814

      拓展知識:

      如何更換洗衣機水位傳感器

      修復(fù)及檢bai查:
      拔下水位傳感器的透明管下du端吹氣,可以聽到傳感器的動作zhi聲音,說明通水dao管未漏氣。
      拆開洗衣機殼上部,拔下水位選擇旋鈕,找到傳感器并卸下,再次吹氣并測量觸點接觸情況,發(fā)現(xiàn)接觸不良,斷定是傳感器故障而不是控制板的問題。
      傳感器用鐵制圓形外殼封閉且是壓邊固定在傳感器座上的,水位控制旋鈕通過不同深度的齒形撥叉控制觸點的距離來控制水位,只好用薄改錐慢慢撬開拆下。
      觸點快速動作銅片與普通的微動開關(guān)一樣,只是較大,其觸點僅是一條壓焊的銅絲,用砂紙打磨并測量接觸良好,恢復(fù)原狀。如吹氣時動作不靈敏,可稍微調(diào)節(jié)一下調(diào)節(jié)螺釘使之能靈活通、斷。
      注意!拆下觸點部分時,要先拆下側(cè)殼(板正2個固定腳,拔下),再拆下水位控制鐵壓板、彈簧及壓帽(壓板及傳動桿各一個),再將傳動桿芯旋轉(zhuǎn)90度就可分解。不要丟掉那幾個彈簧、壓帽!
      恢復(fù)原狀,試機即可。此答案適用于任何海爾洗衣機

      如何更換洗衣機水位傳感器

      修復(fù)及檢查:
      1. 拔下水位傳感器的透明管下端吹氣,可以聽到傳感器的動作聲音,說明通水管未漏氣。
      2. 拆開洗衣機殼上部,拔下水位選擇旋鈕,找到傳感器并卸下,再次吹氣并測量觸點接觸情況,發(fā)現(xiàn)接觸不良,斷定是傳感器故障而不是控制板的問題。
      3. 傳感器用鐵制圓形外殼封閉且是壓邊固定在傳感器座上的,水位控制旋鈕通過不同深度的齒形撥叉控制觸點的距離來控制水位,只好用薄改錐慢慢撬開拆下。
      4. 觸點快速動作銅片與普通的微動開關(guān)一樣,只是較大,其觸點僅是一條壓焊的銅絲,用砂紙打磨并測量接觸良好,恢復(fù)原狀。如吹氣時動作不靈敏,可稍微調(diào)節(jié)一下調(diào)節(jié)螺釘使之能靈活通、斷。
      注意!拆下觸點部分時,要先拆下側(cè)殼(板正2個固定腳,拔下),再拆下水位控制鐵壓板、彈簧及壓帽(壓板及傳動桿各一個),再將傳動桿芯旋轉(zhuǎn)90度就可分解。不要丟掉那幾個彈簧、壓帽!
      5. 恢復(fù)原狀,試機即可。
      水位傳感器就相當(dāng)于壓力開關(guān)。當(dāng)你設(shè)定好一個壓力值以后,注水后產(chǎn)生水壓,達(dá)到壓力值后就自動通電,達(dá)到了開關(guān)的作用洗衣機水位開關(guān)分為電子式(可調(diào)電阻式)和開關(guān)式兩種,它們都是通過水位上升時所產(chǎn)生的空氣壓力通過管道傳遞到傳感器使電阻發(fā)生變化或內(nèi)部開關(guān)接通來使電腦產(chǎn)生動作的,它損壞后都會產(chǎn)生注水不準(zhǔn),長注水不動作(運轉(zhuǎn)),排完水后不甩干(此情況比較少見,原因是傳感器不復(fù)位)。檢修時應(yīng)注意檢查管道是否破裂,兩端密封是否良好,傳感器是否漏氣,檢查傳感器時可用嘴從空氣入口處吹入空氣同時用表測量傳感器兩端阻值是否發(fā)生變化或開關(guān)是否接通,開關(guān)式傳感器上面的螺釘是用來調(diào)整水位注入高低用的,水位不準(zhǔn)時可調(diào)整. 本回答被網(wǎng)友采納
      主站蜘蛛池模板: 90后极品粉嫩小泬20p| 高清国产av一区二区三区| 超碰曰口干天天种夜夜爽| 亚洲乱码精品久久久久.. | 99999久久久久久亚洲| 久久精品国产一区二区无码| 波多野结衣办公室双飞| 国产精品毛片一区视频播| 国产自在自线午夜精品视频| 在线播放日韩| 中文字幕无码免费久久| 四虎成人久久精品无码| 丁香综合| 蜜桃久久久久久久| 在厨房被c到高潮a毛片奶水| 中文精品一卡2卡3卡4卡国色 | 97人妻成人免费视频| 国产乱码卡二卡三卡老狼| 蓝牛av| 7878成人国产在线观看| 国产偷窥女洗浴在线观看| 国产精品久久久久久99| 青青插| 免费看美女被靠到爽的视频| 18禁h免费动漫无码网站| 成人性做爰aaa片免费| 国产激情91| 日本xxxxx片免费观看喷水| 三级在线视频| 欧美在线精品一区二区三区 | 亚洲国产福利成人一区| 成人av手机在线| 十八禁国产精品一区二区| 亚洲人成线无码7777| 久久人人爽人人爽人人片| 一级黄网站| 天天操夜夜操| 亚洲精品日韩中文字幕久久久| 狠狠干美女| 亚洲精品666| av无码久久久久不卡免费网站|