目前我們有凈水器及配件—凈水器控制電腦板,我剛好想計(jì)劃學(xué)習(xí)單片機(jī)的東西,所以就想著以現(xiàn)有的項(xiàng)目做切入,在實(shí)踐中逐漸學(xué)習(xí),看看有沒有大神幫忙指點(diǎn),因?yàn)榭雌饋?lái)很簡(jiǎn)單,但是自己剛開始摸索,很多東西搞不懂,所以也在這里求助大家:
計(jì)劃分步完成: 1、完成單片機(jī)最基礎(chǔ)的控制部分的軟件,單片機(jī)選型直接借鑒現(xiàn)有的板子;
2、繼續(xù)借鑒現(xiàn)有的板子,完成外圍電路的開發(fā),直接可以控制凈水器,直接使用;
3、完成TDS檢測(cè)這個(gè)系統(tǒng)的部分,并整合到整塊板上;
3、之前想做這個(gè)的時(shí)候,已經(jīng)打樣了幾塊液晶顯示板,連接并實(shí)現(xiàn)驅(qū)動(dòng);
4、完成上述部分的同時(shí)考慮后續(xù)的wifi和gprs的增加,預(yù)留接口和程序?qū)崿F(xiàn)串口透?jìng)鞯韧ㄓ嵑瓦h(yuǎn)程控制功能(現(xiàn)在使用的安卓和蘋果app都有,做這個(gè)部分的時(shí)候先考慮安卓,蘋果因?yàn)槌杀締栴}后面再說(shuō));
5、后續(xù)可能增加的功能:
A、增加一個(gè)水龍頭tds顯示和濾芯使用情況顯示的分支,包含一個(gè)水龍頭用的觸控開關(guān)控制一個(gè)電磁閥供水到水龍頭(市場(chǎng)有類似產(chǎn)品);
B、通過檢測(cè)的tds值來(lái)動(dòng)態(tài)調(diào)整沖洗的頻率或者沖洗比例閥的大小,實(shí)現(xiàn)動(dòng)態(tài)調(diào)整節(jié)水的目標(biāo);
C、設(shè)定一個(gè)閾值,tds超過這個(gè)值后,進(jìn)行報(bào)警,但并不強(qiáng)制停機(jī)(這個(gè)也可以通過跳碼開關(guān)實(shí)現(xiàn)超過一個(gè)值持續(xù)一定的時(shí)候后就強(qiáng)制待機(jī));
D、濾芯的時(shí)間根據(jù)tds的大小動(dòng)態(tài)調(diào)整,而不是一個(gè)固定時(shí)間,這個(gè)時(shí)間自行擬定一個(gè)公式進(jìn)行核算,譬如設(shè)定tds值150的時(shí)候是標(biāo)準(zhǔn)值,每增加10%則濾芯使用時(shí)間在標(biāo)準(zhǔn)值基礎(chǔ)上上調(diào)10%計(jì)入實(shí)際使用時(shí)間;
F、濾芯到了設(shè)定時(shí)間后,進(jìn)行濾芯更換提醒(這里也可以用撥碼開關(guān)實(shí)現(xiàn),是否強(qiáng)制停機(jī)進(jìn)入待機(jī)狀態(tài))
現(xiàn)有的電腦板的主要元器件: 1、 STM8S005K6T6C 2、 STM8S003F3P6 3、 顯示驅(qū)動(dòng)HT1621B 4、 泵和進(jìn)水電磁閥驅(qū)動(dòng)MOS管:4406A或GA 5N2P 5、 Wifi:ESP12F樂鑫 6、 Gprs:廣和通G510
現(xiàn)有的電腦板分三種:
1、 普通版,控制凈水器運(yùn)作,可以顯示進(jìn)水出水tds值;
2、 Wifi版,有普通版的功能,有app可以聯(lián)網(wǎng),使用樂鑫esp8266聯(lián)網(wǎng)實(shí)現(xiàn)遠(yuǎn)程查看數(shù)據(jù)及控制的功能;
3、 Gors版,普通版的功能外,有app可以聯(lián)網(wǎng),使用廣和通g510聯(lián)網(wǎng)實(shí)現(xiàn)遠(yuǎn)程查看數(shù)據(jù)及控制的功能;
普通版的具體功能和運(yùn)作流程: 1、 控制系統(tǒng)正常運(yùn)作,大致流程是: A、 上電,檢測(cè)低壓開關(guān)(低壓閉合說(shuō)明自來(lái)水接入,沒有閉合會(huì)提示缺水,并蜂鳴器6聲報(bào)警,缺水指示燈閃爍,持續(xù)閃爍直到低壓開關(guān)閉合,停止閃爍), B、 低壓開關(guān)閉合有水后,檢測(cè)高壓開關(guān)(高壓開關(guān)的作用是檢測(cè)儲(chǔ)水桶的水有沒有滿,水滿則待機(jī),水沒有滿,高壓開關(guān)是閉合的,這時(shí)候進(jìn)入制水狀態(tài),制水指示燈閃爍直至推出制水狀態(tài)), C、 如果高壓開關(guān)斷開說(shuō)明水滿,則進(jìn)入水滿狀態(tài),整機(jī)待機(jī),水滿狀態(tài)燈閃爍,直至狀態(tài)改變?yōu)橹梗?/div> D、 如果:曾經(jīng)低壓斷開過,則低壓再閉合直接先進(jìn)入沖洗狀態(tài),之后再檢測(cè)高壓等等流程, E、 累計(jì)制水6個(gè)小時(shí),中間沒有因?yàn)閿嚯姡彼M(jìn)入過沖洗狀態(tài),那么沖洗一次,這個(gè)計(jì)時(shí)不計(jì)待機(jī)時(shí)間,只計(jì)算制水時(shí)間(可以考慮只計(jì)時(shí)泵運(yùn)轉(zhuǎn)的時(shí)間) F、 連續(xù)制水3個(gè)小時(shí),連續(xù)的,中間沒有水滿過,則進(jìn)入系統(tǒng)認(rèn)為超時(shí),系統(tǒng)進(jìn)入故障狀態(tài),整機(jī)待機(jī),故障燈閃爍,需要重新上電才能消除故障狀態(tài); G、 輸入:高壓開關(guān),低壓開關(guān),輸出:泵+進(jìn)水電磁閥(這兩個(gè)產(chǎn)品運(yùn)作周期相同,直接并聯(lián)輸出即可),排水電磁閥(排水狀態(tài)打開其他狀態(tài)關(guān)閉),輸出還包括各狀態(tài)指示燈:制水,水滿,缺水,沖洗,故障;
2、 除了基礎(chǔ)的控制部分,還有顯示屏,顯示信息,段碼屏,用ht1621(b)驅(qū)動(dòng),不超過128段;
3、 五級(jí)濾芯顯示,濾芯會(huì)定義一個(gè)時(shí)間,每個(gè)濾芯有不同的時(shí)間設(shè)置,隨著時(shí)間的減少,進(jìn)行倒計(jì)時(shí),目前的狀態(tài)是五段逐漸變暗,直到最后全部變暗,同時(shí)考慮另外的一種顯示方式,一個(gè)燈,不斷變暗直至滅掉;
4、 單獨(dú)一個(gè)單片機(jī)實(shí)現(xiàn)兩路tds檢測(cè),顯示在面板上(這個(gè)液晶面板已經(jīng)有打樣,后續(xù)批量的時(shí)候可能要稍微調(diào)整,但大體上不變);
5、 Pcb板尺寸130*60mm,顯示屏窗口尺寸30*70mm,這個(gè)是通用版的尺寸。
附件是CSDN下載的一個(gè)STM32的智能凈水器的源碼,但是因?yàn)闆]有電路原理圖等我也看的不是很明白,分享給大家一起看看吧。
有愿意一起合作的,我也沒有能力支付什么費(fèi)用,只能說(shuō),有機(jī)會(huì)做成成品,標(biāo)注上你的名字或id吧,另外可以考慮幫助最多的以后購(gòu)買產(chǎn)品可以有優(yōu)惠,因?yàn)閷?shí)際的支付能力有限,希望你能喜歡吧。
希望各位大咖恢復(fù)一些相關(guān)的內(nèi)容或者代碼,謝謝!
有意一起合作搞一下的兄弟姐妹加我微信:tigerlyt (不知道能不能發(fā)聯(lián)系方式,如果不合適幫忙刪掉就好了)
現(xiàn)有的板子的樣子:
IMG_20190403_102804.jpg (1.68 MB, 下載次數(shù): 121)
下載附件
2019-5-5 11:35 上傳
IMG_20190403_102546.jpg (2.09 MB, 下載次數(shù): 129)
下載附件
2019-5-5 11:35 上傳
我自己畫的最簡(jiǎn)單的原理圖和流程圖:
凈水器原理圖.png (25.43 KB, 下載次數(shù): 135)
下載附件
2019-5-5 11:35 上傳
流程圖.jpg (52.54 KB, 下載次數(shù): 126)
下載附件
2019-5-5 11:35 上傳
準(zhǔn)備后期可以加的龍頭:
帶tds水龍頭.jpg (17.23 KB, 下載次數(shù): 120)
下載附件
2019-5-5 11:37 上傳
現(xiàn)在的板子實(shí)用的狀態(tài):
產(chǎn)品.jpg (50.51 KB, 下載次數(shù): 141)
下載附件
2019-5-5 11:38 上傳
佛山云米科技小米智能凈水器源碼用IAR設(shè)計(jì)的基于STM32的程序:下載
智能凈水器.7z
(2.62 MB, 下載次數(shù): 114)
2019-5-5 16:17 上傳
點(diǎn)擊文件名下載附件
我自己的單片機(jī)程序和思路,不過目前是不可行的,請(qǐng)指出一些錯(cuò)誤吧,謝謝:
- /*Main.c file generated by New Project wizard
- *
- * Created: 4 17 2019
- * Processor: 89C52
- * Compiler: Keil for 89C52
- ****/
- #include <reg52.h>
- #include <stdio.h>
- #include "main.h"
- #include "delay.h"
- void delay_ms(uint timer)
- {
- uchar j=0;
- while(timer--)
- {
- for(j=110;j>0;j--)
- {
- ;
- }
- }
- }
- sbit LOW=P2^0; //低壓開關(guān)
- sbit HIGH=P2^1; //高壓開關(guān)
- sbit LED1=P1^0; //沖洗指示燈
- sbit LED2=P1^1; //水滿指示燈
- sbit LED3=P1^2; //缺水指示燈
- sbit LED4=P1^3; //故障指示燈
- sbit LED5=P1^4; //制水指示燈
- sbit run=P1^5; //泵+進(jìn)水閥
- sbit flow=P1^6; //排水閥
- sbit dula=P2^6;
- sbit wela=P2^7;
- /*void display(uchar,uchar);
- uchar code table[]={
- 0x3f,0x06,0x5b,0x4f,
- 0x66,0x6d,0x7d,0x07,
- 0x7f,0x6f,0x77,0x7c,
- 0x39,0x5e,0x79,0x71};*/
- uchar num1,num2,flag,shi,ge,shine;
- uint num,numx,aa;
- void main()
- {
- TMOD=0X11;
- TH0=(65536-45872)/256;
- TL0=(65536-45872)%256;
- TH1=(65536-45872)/256;
- TL1=(65536-45872)%256;
- EA=1;
- ET0=1;
- ET1=1;
- TR0=1;
- TR1=1;
- num=0;
-
- //display (shi,ge);
-
-
- while(1)
- {
- if(LOW==0|flag==1) //檢測(cè)有無(wú)自來(lái)水和連續(xù)制水6小時(shí)
- {
- delay_ms(10); //延時(shí)去抖
- if(LOW==0|flag==1)
- {
- run=0; //有水,沖洗
- flow=0;
- shine=1;
- aa=0;
- delay_ms(18000); //沖洗延時(shí)18秒
- }
- else if(HIGH==0) //高壓沒動(dòng)作,水桶沒滿,進(jìn)入制水
- {
- run=0;
- flow=1;
- shine=5;
- num=0;
- numx=aa;
- if(num==10800)
- {
- num=0;
- shine=4;
- run=1;
- flow=1;
- }
-
- if(numx==21600)
- {
- numx=0;
- flag=1;
- }
- }
- else
- {
- num=0;
- aa=numx;
- shine=2;
- run=1;
- flow=1;
- }
- }
- else
- {
- shine=3;
- run=1;
- flow=1;
- }
- switch(shine)
- {
- case 1:
- while(1)
- {
- delay_ms(500);
- LED1=~LED1;
- }
- case 2:
- while(1)
- {
- delay_ms(500);
- LED2=~LED2;
- }
- case 3:
- while(1)
- {
- delay_ms(500);
- LED3=~LED3;
- }
- case 4:
- while(1)
- {
- delay_ms(500);
- LED4=~LED4;
- }
- case 5:
- while(1)
- {
- delay_ms(500);
- LED5=~LED5;
- }
-
- }
- }
-
- */
- void T0_time() interrupt 0
- {
- TH0=(65536-45872)/256;
- TL0=(65536-45872)%256;
- num1++;
- if(num1==20)
- {
- num1=0;
- num++;
-
- }
- }
-
- void T1_time() interrupt 1
- {
- TH1=(65536-45872)/256;
- TL1=(65536-45872)%256;
- num2++;
- if(num2==20)
- {
- num2=0;
- numx++;
- }
- }
復(fù)制代碼
124/128段液晶顯示板:
小板.jpg (110.72 KB, 下載次數(shù): 123)
下載附件
2019-5-5 18:28 上傳
小板真值表.jpg (82.83 KB, 下載次數(shù): 130)
下載附件
2019-5-5 18:28 上傳
|