lmhtz 发表于 2014-9-15 21:31:12

用海尔 201 给朋友做的投币洗衣机控制器

本帖最后由 lmhtz 于 2014-9-16 08:54 编辑

补上 hex 文件,其他滞后....
补上 pcb 文件,徒手画无原理图,有需要有空再补,其他文件还在整理....
仅限交流,不得用于其他谋利目地....

文件正在整理,整理好后分享;
控制板有多路输出与输入,也可用于其他用途
功能包括:1、价格设置;2、洗涤时间设置;3、断电记忆设置;4、投币累计;5、可扩展刷卡;6、进排水及门开关与偏心平衡保护等....

PCB实物



程序截图





PCB文件


hex 文件


lklhzu 发表于 2014-9-15 21:42:37

顶顶顶!

lklhzu 发表于 2014-9-15 21:43:26

硬币识别模块用的哪种?

海尔_小海 发表于 2014-9-15 21:47:53

太棒了!~~

weiqinghonghong 发表于 2014-9-15 21:48:23

程序就不要截图了吧,直接上代码呗

lmhtz 发表于 2014-9-15 21:52:11

lklhzu 发表于 2014-9-15 21:43
硬币识别模块用的哪种?

这东西还用啥模块,又不是高档货,放个30左右的投币器OK

cc6868 发表于 2014-9-15 21:53:52

好东西哈顶顶

majialou 发表于 2014-9-15 21:53:52

识别模块自己做的?

lmhtz 发表于 2014-9-15 21:54:32

weiqinghonghong 发表于 2014-9-15 21:48
程序就不要截图了吧,直接上代码呗

好几个独立的 C 构成,没整理很乱{:titter:}

lmhtz 发表于 2014-9-15 21:57:48

majialou 发表于 2014-9-15 21:53
识别模块自己做的?

投币识别用这玩意, 常用{:titter:}

lmhtz 发表于 2014-9-15 21:59:54

普通的东西,别一想到识别就认为是什么高档货,普通的很,平常的很{:titter:}

lmhtz 发表于 2014-9-15 22:00:44

weiqinghonghong 发表于 2014-9-15 21:48
程序就不要截图了吧,直接上代码呗

预热预热{:lol:}

sunliezhi 发表于 2014-9-15 22:15:38

投币器,便宜的有¥20+ ,上面有一根线是投币识别成功脉冲输出,可设置极性

zjy9430 发表于 2014-9-15 22:22:35

这种洗衣机我是不敢用哦,呵呵,以前在学校看到有人把鞋都丢里面洗!

bmz7869737 发表于 2014-9-15 22:40:09

看上去不错,功能比较全面。

whf199191 发表于 2014-9-15 22:51:27

这年头真是啥都有模块……

steven_hee 发表于 2014-9-15 23:01:01

对投币器的硬币识别感兴趣。

cpwander 发表于 2014-9-15 23:08:57

LZ的可扩展刷卡也是IC卡模块吗?

lmhtz 发表于 2014-9-16 06:15:45

cpwander 发表于 2014-9-15 23:08
LZ的可扩展刷卡也是IC卡模块吗?

有现成模块,在功能需求相应成本相当情况下自然是优先考虑,除非成本功能等无法达到预期才会考虑自己处理.....

lmhtz 发表于 2014-9-16 06:22:58

steven_hee 发表于 2014-9-15 23:01
对投币器的硬币识别感兴趣。

硬币识别应该不难,过一个线圈检测金属导磁率吧,或许加个测过线圈的速度,没分析过,大致如此吧,那玩意弄个大小材质相当的扔下即可.....

lmhtz 发表于 2014-9-16 06:37:00

zjy9430 发表于 2014-9-15 22:22
这种洗衣机我是不敢用哦,呵呵,以前在学校看到有人把鞋都丢里面洗!

这种东西放在公共场所,有这类情况难免的,大部分人还是守规矩的

bdllllll 发表于 2014-9-16 06:49:45

很好,支持

YS126 发表于 2014-9-16 08:03:18

几年前也做过一个,顶楼主

wxws 发表于 2014-9-16 08:06:58

变压器左侧那种 插电源进线的端子叫什么名?

LCH201328 发表于 2014-9-16 08:08:32

顶顶顶,再顶

lmhtz 发表于 2014-9-16 08:08:36

wxws 发表于 2014-9-16 08:06
变压器左侧那种 插电源进线的端子叫什么名?

6.3 焊板插片

机器人天空 发表于 2014-9-16 08:09:13

mark......

lmhtz 发表于 2014-9-16 08:11:55

YS126 发表于 2014-9-16 08:03
几年前也做过一个,顶楼主

现在搞这个有点晚了,不是朋友三天两头催着给他弄,也懒的搞....

gdmfq 发表于 2014-9-16 08:12:30

感谢分享 支持

hongmark 发表于 2014-9-16 08:14:19

不错,很好

wxws 发表于 2014-9-16 08:20:05

lmhtz 发表于 2014-9-16 08:08
6.3 焊板插片

谢谢,找到了。

原理图能不能贴一下?
特别是下方驱动阀的,驱动的是什么阀?220?

水位开关是普通洗衣机的气压式?

黄晨0410 发表于 2014-9-16 08:20:50

看到天微的LED驱动芯片

zky26 发表于 2014-9-16 08:26:52

楼主这都可以开源!!!!!!!赞一个!

lmhtz 发表于 2014-9-16 08:34:38

黄晨0410 发表于 2014-9-16 08:20
看到天微的LED驱动芯片

其他产品有在用,直接拿来{:titter:}

tianxingjian 发表于 2014-9-16 08:41:49

以前有朋友也做过,他们那个除了支持投币功能外,还能够刷会员卡洗衣服。

lmhtz 发表于 2014-9-16 08:44:26

zky26 发表于 2014-9-16 08:26
楼主这都可以开源!!!!!!!赞一个!

又不是核弹,算不上高新尖,何必捏着紧紧不放....

lmhtz 发表于 2014-9-16 08:46:54

本帖最后由 lmhtz 于 2014-9-16 08:48 编辑

wxws 发表于 2014-9-16 08:20
谢谢,找到了。

原理图能不能贴一下?


徒手画的板,没图,有需要抽空看,进排水 ac 220v,水压使用机械式,电子式需要改动....

successliufei 发表于 2014-9-16 09:21:41

厉害。。。。

juncheng14 发表于 2014-9-16 09:48:54

太厉害了,学习的榜样!

Bicycle 发表于 2014-9-16 10:09:34

lmhtz 发表于 2014-9-16 08:34
其他产品有在用,直接拿来

楼主能否共享下TM驱动?

xurenhui 发表于 2014-9-16 10:15:36

希望能开源,让大家学习学习

dqlm016 发表于 2014-9-16 10:48:33

不错,好东西

fgtzjl123 发表于 2014-9-16 10:52:52

这东西成品有在卖的很多了吧

qqrenzhi1 发表于 2014-9-16 11:15:49

功能不错,

kuki0702 发表于 2014-9-16 11:30:13

买一个串口投币机就行了。我们公司就是买现成的。

wanderhope 发表于 2014-9-16 11:56:47

以前学校有,偶尔可以在洗衣机里面捡到钱。
不过洗涤时间好像不能设置,用的时候按照投的币的多少决定是甩干还是洗涤,1个币甩干,3个币洗涤

startwar0418 发表于 2014-9-16 12:55:19

lmhtz 发表于 2014-9-16 08:46
徒手画的板,没图,有需要抽空看,进排水 ac 220v,水压使用机械式,电子式需要改动.... ...

徒手画板,难道是不用原理图,直接摆元器件?

LVmcu 发表于 2014-9-16 13:05:57

lmhtz 发表于 2014-9-16 08:46
徒手画的板,没图,有需要抽空看,进排水 ac 220v,水压使用机械式,电子式需要改动.... ...

不要原理图就画板,你是怎么做的PCB检查?

xiangzhi28 发表于 2014-9-16 14:18:02

我很想知道,5角 1元的如何识别?比如游戏机币呢

bestlong22 发表于 2014-9-16 14:20:13

楼主徒手画板不累?

ts-fjw 发表于 2014-9-16 14:22:02

哈哈 记得很久之前有个朋友做设备 就是卡到硬币识别那了现在可以直接买现成的了

lmhtz 发表于 2014-9-17 07:43:56

bestlong22 发表于 2014-9-16 14:20
楼主徒手画板不累?

系统不复杂还好,不建议这样做....

lmhtz 发表于 2014-9-17 07:46:03

LVmcu 发表于 2014-9-16 13:05
不要原理图就画板,你是怎么做的PCB检查?

不画图不等于心中无图,不等于无概要略图.....

lmhtz 发表于 2014-9-17 07:55:52

本帖最后由 lmhtz 于 2014-9-17 07:59 编辑

Bicycle 发表于 2014-9-16 10:09
楼主能否共享下TM驱动?

//包含文件
#ifndef TM1668_H_
#define TM1668_H_
#include "config.h"


#define TM1638_CLK PA6        //时钟线
#define TM1638_DIO PA7        //数据线
#define TM1638_STB PA5        //TM1668片选

//外部数据声明
//extern const unsigned char seg_code[];//数字段编码表
//extern unsigned char section2 play_buff;//显示内容寄存器
//extern unsigned char section2 key_data;//读取的按键数据

extern void display(void);//显示驱动
extern void key_scan(void);//键扫驱动
//
#endif


//****************************************************************
//写入数据
void indate(u8 input)
{
    u8 i;
    for (i=0; i<8; i++)
    {
       TM1638_CLK=0;            //先将“CLK”清零
                  if ((input & 0x01) == 1) TM1638_DIO=1;
                  else TM1638_DIO=0;
       TM1638_CLK=1;            //送时钟的上升沿
                  input = input >> 1; //准备送下一个BIT
    }                     //送完一个字节后退出循环
}


//****************************************************************
//读数据
u8 outdate(void)
{
    u8 temp;
    u8 i,dat = 0;//i—控制循环次数,dat—临时保存读到的数据
    TM1638_DIO=1;                  //释放DIO为输入
    PAT7 = 1; //输入输出状态
    for (temp=0; temp < 100; temp++);
    for (i=0; i<8; i++)
    {
       TM1638_CLK=0;            //先将“CLK”清零
                  for (temp=0; temp < 100;temp++);
                  dat = dat >> 1;
       if (TM1638_DIO == 1) dat = dat | 0x80; //读取数据
       TM1638_CLK=1;            //送时钟的上升沿
    }                     //送完一个字节后退出循环
    PAT7 = 0; //输入输出状态
    return dat;            //返回读到的1字节数据
}


void Write_COM(u8 cmd)                //发送命令字
{
    TM1638_STB=0;
    indate(cmd);
    TM1638_STB=1;
}

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

//键扫描程序
void key_scan(void)
{
    u8 i,temp;
    TM1638_STB=0;                  //保证“STB”为低电平,程序不依赖于之前端口的状态
    indate(B0100_0010);    //传数据设置命令,设置为读按键
    for (i=0; i<4; i++)
    {
      temp = outdate();
      key_data = temp;
    }
    TM1638_STB=1;                  //保证“STB”为低电平,程序不依赖于之前端口的状态
//-------------------------------       
   .........
   读出的按键数据存于数组中,依据需要相应处理......

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


//****************************************************************
//显示处理
//显示内容预先放入 play_buff 中即可
void display(void)
{
    TM1638_DIO=1; TM1638_CLK=1; TM1638_STB=1;
        if (power == 1) Write_COM(B1000_1111);        // 8f 开显示亮度最大
    else Write_COM(B1000_0111);        // 8f 开显示亮度最大
    Write_COM(B0100_0000);        //40 设置数据命令
    TM1638_STB=0;
    indate(B1100_0000);        //c0 设置显示地址
//------------------------------
        indate(seg_code]);                indate(0);//0,1,时十位
        indate(seg_code]);                indate(0);//4,5,分十位
        indate(seg_code]);                indate(0);//6,7,分个位
        indate(seg_code]);                indate(0);//8,9,时个位
        TM1638_STB=1;
}

wqtslove 发表于 2014-9-17 09:01:39

看到case 73我就晕了,楼主写这个程序之前要写流程图之类的吗

LVmcu 发表于 2014-9-17 09:12:23

lmhtz 发表于 2014-9-17 07:46
不画图不等于心中无图,不等于无概要略图.....

我公司也有一个工程师和你一样的做PCB,看他每次都是人工检查,很花时间呀。所以想请教下你是这样做的吗?

qiushui_007 发表于 2014-9-17 09:53:17

海尔201, Mark下.

海尔_小海 发表于 2014-9-17 15:14:26

LVmcu 发表于 2014-9-17 09:12
我公司也有一个工程师和你一样的做PCB,看他每次都是人工检查,很花时间呀。所以想请教下你是这样做的吗 ...

我们这边也是需要人工检查的

LVmcu 发表于 2014-9-17 16:11:47

海尔_小海 发表于 2014-9-17 15:14
我们这边也是需要人工检查的

人工检查是要的,但是想这种没有net的,有时候不该连在一起的线连起来而自己有没有发现的情况还是会有的,要是有net的话可以自动检查出来的。

dengnian602 发表于 2014-9-17 17:29:32

lmhtz 发表于 2014-9-15 21:57
投币识别用这玩意, 常用

检测准确吗,游戏币能测出来吗?

xyx2012xyx 发表于 2014-9-17 18:21:39

看着有个工频变压器

shudenaye6 发表于 2014-9-17 19:35:19

顶一下 好东西

happyliu 发表于 2014-9-17 22:26:47

实用的东西 不错

长江后烂 发表于 2014-9-18 00:02:04

楼主用的程序分支好多吧,以前做了一个类似的东西,用51,上了tiny RTOS,简单了很多

lmhtz 发表于 2014-9-18 05:49:04

没几个分支,别被 case xx 吓到,

lmhtz 发表于 2014-9-18 05:50:14

dengnian602 发表于 2014-9-17 17:29
检测准确吗,游戏币能测出来吗?

必须的,一般的够用...

lmhtz 发表于 2014-9-18 05:56:05

LVmcu 发表于 2014-9-17 09:12
我公司也有一个工程师和你一样的做PCB,看他每次都是人工检查,很花时间呀。所以想请教下你是这样做的吗 ...

是,东西不复杂,即使查也花不了多少时间,留意端口类型与特性,规划好分配,小系统一般没什么问题.....

lmhtz 发表于 2014-9-18 06:04:21

wqtslove 发表于 2014-9-17 09:01
看到case 73我就晕了,楼主写这个程序之前要写流程图之类的吗

case 73,不是73,别吓到,写流程要看系统功能与复杂程度而定,一般搞一下主流程,分流程与详细的不会刻意写会随编程深入应变...

hamxiyue 发表于 2014-9-18 08:35:54

学习了,谢谢分享

海尔_大海 发表于 2014-9-18 18:03:50

不错, 奖励先

songfei 发表于 2014-9-18 18:13:10

感觉不错。

sql 发表于 2014-9-21 20:12:44

不错啊,好东西。

adalim 发表于 2014-9-21 21:57:30

支持支持

HMYJ 发表于 2014-9-22 08:59:33

给力,感谢分享

片羽之神 发表于 2014-9-22 12:20:43

学习了!没看出来用的是什么mcu

轻风 发表于 2014-9-22 13:33:22

帮顶,,,

stevencheng 发表于 2014-9-22 13:40:16

我是来赚分的。

waterghost 发表于 2014-9-22 13:40:56

第一个函数 有一个Return ;编译器也不报错?

fengdingkusong 发表于 2014-9-22 14:35:12

收藏,谢谢分享

SWDZ1010110 发表于 2014-9-27 15:06:21

mark。。。。

Samzzt 发表于 2014-10-11 13:49:35

我们学校刚上来几台投币洗衣机

aquarius0703 发表于 2014-10-27 16:15:55

学习,感谢分享。

ylei12 发表于 2014-10-27 16:29:41

有个疑问哦,洗衣机洗完有个完成信号输出么,不然怎么知道洗衣机洗完了没有

lmhtz 发表于 2014-10-27 18:56:52

ylei12 发表于 2014-10-27 16:29
有个疑问哦,洗衣机洗完有个完成信号输出么,不然怎么知道洗衣机洗完了没有 ...

可以有输出信号,这个通常没多大必要吧,除非有连接下级什么东西需要有信号要求

罗敏爱之恋 发表于 2014-10-27 19:01:11

厉害啊!

lmhtz 发表于 2014-10-27 19:02:25

罗敏爱之恋 发表于 2014-10-27 19:01
厉害啊!

用点心,谁都可以,没什么大不了的

ylei12 发表于 2014-10-27 19:36:54

lmhtz 发表于 2014-10-27 18:56
可以有输出信号,这个通常没多大必要吧,除非有连接下级什么东西需要有信号要求 ...

那这个洗衣机就是洗完预定时间就停止,不像家里的全自动洗衣机一样洗涤、漂洗、脱水整个过程完成?如果要整个过程完成,应该要有个洗完成的信号输出给控制器,控制器再断电吧

jackiezeng 发表于 2014-10-27 19:44:30

很好的东西,谢谢。

lmhtz 发表于 2014-10-27 20:01:55

ylei12 发表于 2014-10-27 19:36
那这个洗衣机就是洗完预定时间就停止,不像家里的全自动洗衣机一样洗涤、漂洗、脱水整个过程完成?如果要 ...

完整功能,投币触发,完成后待机等待再次投币....

hfutzhl 发表于 2014-10-27 20:04:07

不错,顶下{:smile:}

xurenhui 发表于 2014-10-27 20:30:01

程序也一块上吗,何必搞一部分呢

ripple78 发表于 2014-10-27 20:54:47

看看,,,,,,,,,

阿文 发表于 2014-10-28 00:49:34

谢谢分享

tonyhobby 发表于 2014-10-28 08:28:54

学习,谢谢分享

wei669 发表于 2014-10-28 10:10:33

期待程序

zjk 发表于 2014-10-28 10:16:44

mark,标记

夜里的雪 发表于 2014-10-28 10:30:25

研究研究!!!

dengchengmi 发表于 2014-10-31 14:06:50

呵呵,洗球鞋      

蓝蓝的恋 发表于 2014-10-31 16:17:57

徒手画pcb略叼~

绝对零度 发表于 2014-10-31 16:38:51


mark,标记
页: [1] 2
查看完整版本: 用海尔 201 给朋友做的投币洗衣机控制器