一、基本介紹
項(xiàng)目名:基于單片機(jī)下的新型智能花盆設(shè)計(jì)
項(xiàng)目名:花盆(實(shí)物)
項(xiàng)目編號:mcuclub-dz-196
單片機(jī)類型:STM32F103C8T6
具體功能:
1、通過防水式DS18B20測量土壤溫度,當(dāng)溫度高于設(shè)置最大值時(shí),進(jìn)行風(fēng)扇降溫,低于設(shè)置最大值,進(jìn)行防水加熱
2、通過土壤濕度傳感器檢測濕度值,當(dāng)濕度值低于設(shè)置最小值時(shí),進(jìn)行水泵澆水
3、通過光敏電阻檢測光照值,當(dāng)光照值小于設(shè)置最小值時(shí)則自動(dòng)進(jìn)行補(bǔ)光;當(dāng)光照值大于設(shè)置最大值時(shí),則自動(dòng)打開遮雨棚進(jìn)行遮光(四相步進(jìn)電機(jī)模擬)
4、通過雨水檢測模塊檢測是否下雨,如果下雨,則自動(dòng)打開遮雨棚
5、通過熱釋電感應(yīng)模塊檢測是否有小動(dòng)物,如果有,則啟動(dòng)電機(jī)驅(qū)趕
6、通過SGP30檢測CO2濃度,當(dāng)濃度超過設(shè)置最大值,進(jìn)行聲光報(bào)警
7、通過按鍵可設(shè)置各閾值
8、通過OLED顯示屏顯示測量值
9、通過藍(lán)牙模塊將測量數(shù)據(jù)發(fā)送到手機(jī)端,并可以控制風(fēng)扇、加熱、水泵、補(bǔ)光、遮光棚以及模式切換
二、資料總覽
實(shí)物資料
仿真資料
三、51單片機(jī)部分資料展示
1、實(shí)物圖展示
單片機(jī)型號:STC89C52
供電接口:TYPE-C
板子類型:PCB集成板,厚度1.2,兩層板(上下層覆銅接地)
器件類型:元器件基本上為插針式,個(gè)別降壓芯片會(huì)使用貼片式。
3、原理圖展示
軟件版本:AD2013
電路連線方式:網(wǎng)絡(luò)標(biāo)號連線方式
注意:原理圖只是畫出了模塊的引腳圖,而并不是模塊的內(nèi)部結(jié)構(gòu)圖
4、PCB圖展示
四、系統(tǒng)框圖
繪制軟件:VISIO
本設(shè)計(jì)以單片機(jī)為核心控制器,加上其他模塊一起組成此次設(shè)計(jì)的整個(gè)系統(tǒng),其中包括中控部分、輸入部分和輸出部分。中控部分采用了單片機(jī)控制器,其主要作用是獲取輸入部分的數(shù)據(jù),經(jīng)過內(nèi)部處理,邏輯判斷,最終控制輸出部分。輸入由八部分組成,第一部分是防水檢測模塊,通過該模塊檢測土壤溫度;第二部分是土壤濕度檢測模塊,通過該模塊檢測濕度值;第三部分是熱釋電紅外感應(yīng)檢測模塊,通過該模塊檢測是否有小動(dòng)物;第四部分是CO2檢測模塊,通過該模塊檢測CO2濃度值;第五部分是雨水檢測模塊,通過該模塊檢測是否下雨;第六部分是光照采集電路模塊,該模塊通過光敏電阻檢測光照值,當(dāng)光照值小于設(shè)置最小值時(shí)則自動(dòng)進(jìn)行補(bǔ)光;當(dāng)光照值大于設(shè)置最大值時(shí),則自動(dòng)打開遮雨棚進(jìn)行遮光;第七部分是按鍵模塊,通過該模塊可以切換界面、設(shè)置閾值、切換模式等;第八部分是供電模塊,通過該模塊可給整個(gè)系統(tǒng)進(jìn)行供電。輸出由四部分組成,第一部分是顯示模塊,通過該模塊可以顯示監(jiān)測的數(shù)據(jù)以及設(shè)置的閾值;第二部分是步進(jìn)電機(jī)模塊,該模塊通過熱釋電感應(yīng)檢測模塊檢測是否有小動(dòng)物,如果檢測到有小動(dòng)物,則啟動(dòng)電機(jī)驅(qū)趕;第三部分是繼電器模塊,通過五個(gè)繼電器分別控制風(fēng)扇、加熱、水泵、補(bǔ)光、遮光棚以及模式切換;第三部分是聲光報(bào)警模塊,當(dāng)檢測到CO2濃度超過設(shè)置最大值,進(jìn)行聲光報(bào)警。除此之外,藍(lán)牙模塊既作為輸入又作為輸出,藍(lán)牙模塊和手機(jī)進(jìn)行連接,可以將監(jiān)測的數(shù)據(jù)傳輸?shù)接脩羰謾C(jī)端,用戶也可以通過手機(jī)端發(fā)送指令控制繼電器的工作及其模式的切換。具體系統(tǒng)框圖如圖3.1所示。
五、部分程序展示
軟件版本:keil5
注意:邏輯程序和驅(qū)動(dòng)程序分開,分布于main.c和其他.c文件
*****處理函數(shù)
*****/
void Manage_function(void)
{
if(flag_display == 0) //測量界面
{
if(flag_mode == 0) //自動(dòng)模式
{
if(temp_value > temp_max10) //如果溫度大于最大值,開風(fēng)扇
{
RELAY_FS = 1;
RELAY_JR = 0;
}
else if(temp_value < temp_min10) //如果溫度小于最小值,開加熱
{
RELAY_FS = 0;
RELAY_JR = 1;
}
else //否則關(guān)閉
{
RELAY_FS = 0;
RELAY_JR = 0;
}文章來源:http://www.zghlxwxcb.cn/news/detail-826103.html
if(humi_value < humi_min) //如果濕度小于最小值,開水泵
{
RELAY_SB = 1;
}
else
{
RELAY_SB = 0;
}
if(light_value < light_min) //如果光照小于最小值,開補(bǔ)光
{
RELAY_BG = 1;
}
else
{
RELAY_BG = 0;
}
if(light_value > light_max || CHECK_R == 0) //如果光照大于最大值或正在下雨,開遮陽棚
{
if(flag_Step2 == 0)
{
flag_step2_c = 0;
flag_step2_o = 1;
}
}
else
{
if(flag_Step2 == 1)
{
flag_step2_c = 1;
flag_step2_o = 0;
}
}
if(co2_value > co2_max) //二氧化碳超過最大值,聲光報(bào)警,否則關(guān)閉
{
if(time_num % 3 == 0)
{
LED = ~LED;
BEEP = ~BEEP;
}
}
else
{
LED = 1;
BEEP = 0;
}
if(animal_value == 1) //有動(dòng)物,開啟驅(qū)趕,否則關(guān)閉
{
RELAY_QG = 1;
}
else
{
RELAY_QG = 0;
}
}
else
{
LED = 1;
BEEP = 0;
}
}
else //設(shè)置界面,關(guān)閉繼電器、聲光報(bào)警
{
LED = 1;
BEEP = 0;
RELAY_JR = 0;
RELAY_BG = 0;
RELAY_FS = 0;
RELAY_SB = 0;
RELAY_QG = 0;
}
}文章來源地址http://www.zghlxwxcb.cn/news/detail-826103.html
到了這里,關(guān)于【單片機(jī)畢業(yè)設(shè)計(jì)】【mcuclub-dz-196】基于單片機(jī)下的新型智能花盆設(shè)計(jì)的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!