自动洗衣机梯形图(全自动洗衣机维修及软件设计)
自动洗衣机梯形图(全自动洗衣机维修及软件设计)
2024-09-27 10:36:16  作者:尽欢而散  网址:https://m.xinb2b.cn/sport/obr196180.html

(一)洗衣机故障检修

我们有个老旧的全自动洗衣机,是广东产的“爱德牌”。14年前因为出现无法排水故障,另外买了个金铃洗衣机。当时看它各个部件和外观都还挺好,想留待有空时再检修,就没有丢弃它。

最近想腾空杂物房,就考虑是否该丢弃这洗衣机了?考虑到搁置十多年,各个部件和马达都应该锈蚀死了。但通电试机,没想到它的马达还能正常运转。试运行它的“无水试机程序”,还能正常洗涤和进出水。灌水进去试,可以洗衣服,但排水只能排一半就停机了,也不能甩干。

拆开背盖,看到主轴上有个离合器,通过皮带和齿轮与马达连接,但我完全看不明白它的工作原理。只好上网,查找该洗衣机的电路图和相关维修资料,其中有关离合器的工作原理介绍如下:

-------------------==-----------------==

减速离合器洗涤工作过程:进入洗涤程序时,排水电磁铁断电,刹车杆在弹簧力的作用下,针刹车锁定,使脱水轴不能转动。同时刹车杆上一拨叉棘爪将棘轮拨过一个角度,方丝离合弹簧固定在棘轮壁上的这一端被拨动,另一端处于自由状态,离合套与外套轴分离,由丁方丝离合弹簧被拨松,洗涤轴与脱水轴分离,当电动机转动时,V带传动,从大带轮传过来的转动通过齿轮轴传至行星减速器,减速后由波轮轴传出,带动波轮旋转。

洗涤时,电动机运转,通过减速离合器,降低转速带动波轮间歇正反转,进行洗涤,此时洗涤脱水桶不转动;脱水时,电动机运转,通过离合器,不减速(即高速)带动脱水桶顺时针方向运转,进行脱水,此时波轮也随着脱水桶一起运转。

图1)


---------------------------------------------------------==

上述信息我反复琢磨半天仍不得要领,只是粗略了解其大概工作原理。没办法,边干边体会吧!

为了便于检修,我拆开洗衣机盖板(控制主板、进水电磁阀、水位传感器都固定在盖板上)。由于外壳不好拆卸,我就把整个洗衣机翻转过来。下图2 图3是离合器与排水电磁铁(通过电磁铁动作牵引排水阀)结构外观—俯视图和侧视图:


图2)离合器 图3)排水电磁铁

我琢磨:我的洗衣机能够正常洗涤,说明马达及离合器没太大问题。排水只能排一半,说明排水电磁阀也没完全损坏,很可能是电磁铁芯生锈导致行程受阻,离合杆和棘爪也没能移动到位,以致影响马达带动不了脱水桶甩干。我试用起子撬动电磁铁芯,强行让离合杆和棘爪移动到位,并转到皮带轮,发现脱水桶是可以旋转的,这说明离合器并没有锈蚀,问题可能就是电磁铁芯吸合不到位。

找点机油涂抹到电磁铁芯和相关驱动机件上,多次运行脱水程序,给电磁铁反复通电吸合再释放。最后放水试机,洗涤和脱水都正常了。但又发生开机进水不停,似乎是水位传感器有问题,导致单片机检测不到有水信号,机器就不能开始洗涤程序。

爱德洗衣机的水位传感器在市面上也没有找到合适的替代品。从电路图看不出水位传感器的工作原理,我从网上找到资料有如下介绍:

-------------------------------=

图4为该水位传感器的结构示意图,下部的气室加橡皮膜组成压力传感部分,上部的活动磁芯和线圈与振荡电路板一起组成LC振荡电路。 工作时,随着水位的升高,气室中的压力也升高。当压力升高到一定值时,橡皮膜推塑料盘顶着磁芯上移,电感线圈的电感发生变化,LC振荡电路的振荡频率也发生相应变化。当频率达到程序控制器预定值后(表示预定水位),程序控制器便发出指令停止进水,并转入洗涤程序。水位传感器在出厂前,振荡频率定为高水位频率22.60kHz,空水位频率25.20kHz。 水位越低,传感器输出的信号频率越高。


--------------------------------------=

网上的上述信息与爱德洗衣机的水位传感器情况吻合。我拆开我们的水位传感器,发现其橡皮膜已经老化开裂,怪不得不能工作了。我找气球等类似材料替代原橡皮膜换上,水位传感器又能工作了。不过水位感应误差变大了,通过调节传感器里面的螺丝,可以部分弥补误差。但最后只能使用“中-低水位”,如果用高水位,结果进水到水溢出了,洗衣机仍会以为水位不够而不断进水。为了废物利用,我只好将就地用“中-低水位”来洗衣服了!

3点备忘录:

(1)洗衣机的开盖安全开关SA1有防抖动功能:当洗衣机脱水时,如果衣物堆放不匀,致使脱水桶剧烈振动,以几十周的频率撞击安全开关SAI的传感杆, SA1连续输出通、断信号,微处理器(单片机)发出纠正指令,使洗衣机进入停水→进水一漂洗一排水一脱水程序,以便消除衣物摆放不匀造成的振动。如果反复几次不能消除该现象,单片机会令洗衣机进入脱水保护状态。该开关还有脱水时开盖断电功能,我使用感觉不太方便,就将其拆除了。以后不管是否开盖,洗衣机都可以照样脱水。

(2)排水电磁铁标牌工作电压是直流198V,从电路图上看不出直流198V电压的电路(其电源通断由双向可控硅控制)。实测工作电压是直流202V,用交流档测是96V交流---这可能是由220V交流半波整流得到的脉动直流。

(3)该洗衣机的电路原理图如下(图5):


图5


图6)洗衣机控制面板外观

=======================---

(二)全自动洗衣机硬件修改及软件设计

洗衣机用一段时间后,又发生洗衣到最后阶段“甩干排水”时就停机了。检查各个硬件未见有问题,估计是单片机程序因为某次无意的错误碰触高压打火干扰,导致软件意外被修改?尽管这个可能性“很扯”,反正洗衣机就是可以循环3次洗涤和进水 排水,但最后一次的“甩干排水”就不执行了。

我试运行产品的无水洗衣模拟测试程序,洗涤进出水各个功能都是正常的(说明洗衣机的硬件没问题)。因为该产品配有参考电路图,我手头又有好几个洗衣机的例程,干脆尝试更换单片机,自己重写程序看看效果如何。

开始以为这是很简单的工作,真正动手时,才发现问题多多。

最主要问题是原机单片机不知道是什么型号?其引脚排列和51系列产品完全不同,这就导致硬件工作量大为增加,比自己另外做一个洗衣机的工作量还要大。

下图6 图7,先将原单片机拆焊下来,加一个单片机插座,以便以后可以随意更换单片机。


图6)已经拆下了原单片机的部分电路板


图7)加焊了一个单片机插座


图8)原单片机底部引脚布线


图9)更换51单片机后,重新更改的引脚走线。


图10)最后修改好的电路板。

硬件修改完成后,在进行实际软件设计时,才发现要按照原硬件原理图接线来设计软件,会有很多无法躲避的麻烦。

第一个难点:由于该单片机的硬件接口有限,原洗衣机操作面板显示不同工作状态的的14个LED灯与2个数码管是共用单片机端口端口,软件编程时就不能简单地令某个端口变高或变低电平来控制LED的亮灭,这样会导致数码管乱闪。反之亦然,数码管显示时,LED也会乱闪。如何通过控制4个片选三极管来分时显示LED和数码管,浪费了我很多测试时间。

第二个难点:我是用定时器做洗衣程序调度器,单片机给洗衣机按键、LED、数码管和马达按不同时间间隙执行不同的动作,这比顺序循环运行的软件设计及调试要麻烦很多。陆陆续续搞了很长时间才把程序走通。

第三个难点:水位传感器没买到合适产品,自己换气室的薄膜后,重新测试高中低不同水位对应不同输出电压值。期间要反复进水排水测试,也是挺费神的。最尴尬的是,我是在住房室内进行将水位和软硬件联合测试的。某次测试后,洗衣机没排水就撂下不管了。结果我外出办事半天后,洗衣机排水阀发生漏水故障,洗衣机里的水全漏出来,房间泡了1厘米的水,还通过地板裂缝漏到楼下邻居的卧房,把人家的床铺被子和床垫全淋湿透了。最后硬着头皮给人家道歉、赔钱,过后很长时间都不好意思面对人家,真是难堪死了!

(三)最后实现的软硬件情况说明:

洗衣机是用STC89C52RC或STC89C54RC类单片机,水位传感器是用电感式震荡电路。为了节省端口,洗衣状态显示的14个发光二极管是与2个LED数码管共用端口的,由4个三极管(VT7-VT10)驱动发光,并经软件分时控制来轮流显示,这导致了系统软件的复杂和不易读懂。

全自动洗衣机-实际产品应用程序功能:

洗衣进程有3种:全洗衣(洗涤 漂洗 甩干);漂洗-甩干;单独甩干。

洗衣模式有2种:标准、省时。

水位设定有4种:高,中,低2,低1。

按下起动按键后,洗衣机开始进水,到达设定水位后停止进水。紧接着电动机开始正反转运行,每次正反转由四个节拍组成:

1)正转= 5-10秒; 2)停转= 3-4秒; 3)反转= 5-10秒; 4)停转= 3-4秒。

进水= 3分钟,洗涤= 省时39分钟/标准51分钟,排水=3分钟,脱水=1.5分钟。脱水时电动机正转90秒(Tspin_Minute)。

预定洗涤时间完成后,就排水和甩干。到达预定的3次循环洗涤排水周期后,洗衣过程结束,并发出提醒蜂鸣声。全过程约为省时39分钟/标准51分钟。

为防止意外,在进水和排水期间,如果超过80秒水位都没变化,便认为进出水有故障而停机报警。

---------------------------------------------------=

(四)全自动洗衣机主要源码

/

void InitAll(void)

{ // LED_Regular =ON; //ON=1,默认为标准程序,灯亮

Pump_in = OFF; //OFF=0; 进水控制,关, 单个反相器驱动

Pump_out= 1; // P2^0=排水控制,1=关,因为本人另加有2个反相器串联电路

Motor_R = OFF; //电机正转,不走=OFF=0, 单个反相器驱动

Motor_L = OFF; //电机反转,不走=OFF=0, 单个反相器驱动

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

P1= 0xef; //let P1口为输入= 3个按键=P12-P14-P15,注意:P17=beeper=0不响

K_program= 1; //let P33口为输入,K_program = P3^3=启停按键1=int1 port

//标志清零:

flag_Washing =0; //运行标志,1为已经开始运行,0为暂停

f_Ledtimer =0; // 控制LED亮或灭的标志,timer_led=off=0

F_level=W_empty; // F_level是检测到的水位频率,

W_level=W_MIDD; // W_level是预置的水位,W_MIDD=242,中LED=亮,

Level_case = F_MIDD; //设置水位时的增量累加器=1-2-3-4=high-middle-low2-low1,

T_Normal_min=9; //=9对应=9*3 24=51分钟

T_Normal_sec=0;

T_Econormy_min=5; //=5对应=5*3 24=39分钟 =省时洗涤,仿真=1

T_Econormy_sec=0;

//进出水 甩干的时间

Tin_Minute = 3; //water-in时间 =3分钟

Tin_Second = 0; // =秒

Tout_Minute = 3; //water-out时间=3分钟

Tout_Second = 0;

Tspin_Minute= 1; //甩干时间=1分30秒,如果2分钟可能会太长.

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

T_in_out20s = 0; //20S时间间隔计数器--用于每20S测试一次进出水,看是否正常?

F_level_40 = 0;

F_level_80 = 0; //80S间隔水位频率暂存值,比较其变化值来判断进出水是否正常?

Wash_count =0; //实际循环洗涤次数计数器=清零

Wash_cycle = 3; //循环洗涤次数(一个循环=进水 洗涤 脱水)=3是标准洗涤次数

W_progress = 0; // 工作状态跳转控制标志=0-进水(浸泡),1-洗涤,2-排水,3-甩干

Washprogram= 2; //1=标准,2=省时

if(Washprogram== 1) //1=标准,2=省时

{ Txi_Minute = T_Normal_min; //正常洗涤=7分*3,对应=21分钟;仿真时=0分钟 30秒

Txi_Second = T_Normal_sec;

}

else

{ Txi_Minute = T_Econormy_min; //省时洗涤=5分*3,对应=15分钟;仿真时=0分钟 30秒

Txi_Second = T_Econormy_sec;

}

}

//==================================-

void main()

{ uchar Tms=500; //延时显示参数-实际应用=APP=500

InitAll(); //管脚初始化,报警喇叭,进水、排水、电机正转反转均=关闭

Beep50(); //Beeper=0=stop蜂鸣器, =1=响=p17

Timer1_Init(); // T1作调度器

Timer0_Init(); // 定时器0中断作为水位检测脉冲计数

Timer2_Init(); // 定时器2中断计时,将T0的频率计数转为频率

EA=1;

T_all_reman= T_all; //T_all(洗涤总时长);T_all_reman=洗涤剩余时间

while(1)

{

//设置洗涤参数:

if(flag_Washing==0) //如果在暂停状态(首次开机或按了暂停键)才可以设置洗涤参数

{

Set_Level_case(); //设置水位, =key2=p13, Level_case ;

//改变洗涤进程:

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

//改变洗涤方式:

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

ET1= 0; //调度器T1关中断,调度器不工作,停止循环显示,

}

key_scan(); //选择"启动/暂停"

//=key scan wash start。如果开始洗涤,就从wash_on()开始

Led_Update(); //洗衣状态的LED显示

Seg_Update(); //轮流显示水位和剩余洗涤时间

//因为试运行出错时,调度器里不能关断pump-in,所以这里加-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();

}

}

}

//程序结束。

20220814

  • 为什么微信更新就没有漂流瓶(微信又迎来重大更新)
  • 2024-09-28微信又迎来重大更新欢迎转载,请注明出处,抄袭必究!微信作为一款国民应用,在功能上不断推陈出新是它一直被广大群众所热爱的原因而在近日,教授发现微信又迎来重大更新了,当然,这次依然还是内测版,不过正式版本估计也不远了那么这。
  • 怎么自己在家做发膜(自制护发膜的方法)
  • 2024-09-28自制护发膜的方法1、香蕉蜂蜜自制护发膜材料:1/2个香蕉、1茶匙纯酸奶、1/8茶匙卵鳞脂(到药店买),牛奶少许、1茶匙蜂蜜、1茶匙麦芽油制法:把所有材料放到搅拌机中搅拌,然后倒入碗中用法:洗发前在脖子上围上一条毛巾(。
  • 罗志祥和周扬青最终复合了吗(罗志祥和周扬青)
  • 2024-09-28罗志祥和周扬青2020年4月,周扬青一封分手信揭穿了罗志祥的真面目把众星捧月的他直接打入谷底一时间“多人运动”成了网络热词罗志祥还获得了“时间管理大师”等一系列用来讽刺他的外号他骗了无数的女生,甚至和旗下的女艺人、。
  • 终极笔记全部人物介绍(终极笔记盗笔系列的改编天花板)
  • 2024-09-28终极笔记盗笔系列的改编天花板至少十年之内,终极笔记必将是盗笔剧改天花板,为什么?1,它以36集的体量拍完4本小说内容,这个紧凑程度在国产剧中实属罕见2,编剧导演制作人对原著小说非常有爱,没有赶稿拼凑剧本,非常尊重原著细节重点并注。
  • 杨超越非常静距离(非常完美三度告白)
  • 2024-09-28非常完美三度告白如果一个男生拒绝了自己两次,你还会继续跟他告白吗?有网友说“女生不要那么被动也不要太主动,尽量对自己好点,不要把太多幸福寄托在另一半身上”在这个年代,女孩子告白不是一件矜持不矜持的事情,而是对自己幸福。
  • 猪猪侠的颜值进化史(猪猪侠的进化史)
  • 2024-09-28猪猪侠的进化史#秋日动漫创作月#哈喽小伙伴们大家好啊,这里是作者錒風对于大部分00后的小伙伴而言,猪猪侠最经典的莫过于初代的剧情,那时候的我们并没有对外表之类的过于在意,而是注重剧情的合理以及不弱智但随着……各种奇。
  • 2022初级会计延期考试时间(2022初级会计考试快恢复了)
  • 2024-09-282022初级会计考试快恢复了转眼时间进入到六月份,经过多方共同努力,不管是上海市,还是全国疫情都已经得到有效控制,防控形势持续向好公告显示:6月1日起,前期疫情最严重的上海市进入第三阶段,即全面恢复全市正常生产生活秩序阶段复工复。
  • 龙岩客家干蒸猪脚怎么蒸(一道让人越吃越爱吃的特色菜)
  • 2024-09-28一道让人越吃越爱吃的特色菜吃猪脚,大家是不是都喜欢用来炖?没错,炖的猪脚软烂入味,是很多人喜欢的口感,但是猪脚软烂的口感,吃多两块就容易腻,所以,今天铁头跟大家分享一道好吃不腻的猪脚做法,这个做法也是我们客家的特色吃法,味道很。
  • 有机硅酮损耗(生活中的有机硅)
  • 2024-09-28生活中的有机硅有机硅对很多人来说还是比较陌生的一款化工产品,有机硅有多种形态今天我就结合生活经常接触到的有机硅产品来给大家做一个简单介绍日常生活我们接触到有机硅材料多吗?我先列举一下生活中常常用到有机硅橡胶产品有哪。
  • 觉醒年代李大钊是谁演的(谁饰演觉醒年代的李大钊)
  • 2024-09-28谁饰演觉醒年代的李大钊《觉醒年代》中李大钊的饰演者:张桐张桐,1981年8月26日出生于天津,法国里昂艺术戏剧学院研究生毕业,中国内地男演员2002年首次参与拍摄电视剧《花开也有声》2004年在战争剧《亮剑》中饰演魏和尚一。