項(xiàng)目成品圖片:
01
—
項(xiàng)目簡(jiǎn)介
1.功能詳解
基于STM32的智慧農(nóng)業(yè)系統(tǒng)。
功能如下:
溫濕度采集:使用DHT11溫濕度傳感器采集環(huán)境溫濕度
土壤濕度采集:通過(guò)土壤濕度模塊采集土壤濕度
光照強(qiáng)度采集:通過(guò)BH1750模塊采集環(huán)境光照強(qiáng)度
二氧化碳濃度采集:通過(guò)CCS811模塊采集環(huán)境二氧化碳濃度
風(fēng)扇控制:可自動(dòng)模式下根據(jù)環(huán)境溫度觸發(fā)或手動(dòng)模式下按鍵開(kāi)閉
水泵控制:可自動(dòng)模式下根據(jù)土壤濕度觸發(fā)或手動(dòng)模式下按鍵開(kāi)閉
LED照明燈控制:自動(dòng)模式下根據(jù)環(huán)境光強(qiáng)觸發(fā)或手動(dòng)模式下按鍵開(kāi)閉
蜂鳴器報(bào)警:二氧化碳濃度超標(biāo)時(shí)蜂鳴器報(bào)警
TFT顯示屏顯示:顯示環(huán)境溫濕度、土壤濕度、光照強(qiáng)度、二氧化碳濃度和工作模式等信息。
工作模式選擇:按鍵選擇工作模式為自動(dòng)、手動(dòng)或者云端
OneNET云端:通過(guò)舊版OneNET網(wǎng)頁(yè)平臺(tái)查看設(shè)備上報(bào)的實(shí)時(shí)數(shù)據(jù)。
2.材料清單
STM32F103C8T6最小系統(tǒng)板
1.8寸TFT顯示屏
DHT11溫濕度傳感器
BH1750光照傳感器
土壤濕度傳感器
CCS811二氧化碳傳感器
WiFi模塊(ESP8266-01s)
大功率LED照明燈模塊
5V風(fēng)扇模塊
5V水泵模塊
繼電器
蜂鳴器
02
—
原理圖設(shè)計(jì)
03
—
1.PCB圖
2.PCB板及元器件圖
04
—
程序設(shè)計(jì)
int main(void){ unsigned char *dataPtr = 0; delay_init(); //延時(shí)函數(shù)初始化 SWITCH_Init(); //初始化與LED連接的硬件接口 水泵 風(fēng)扇 Usart2_Init(115200); //wifi模塊串口 uart_init(115200); //串口1 I2C_GPIO_Config(); //iic初始化 ccs811,模塊初始化 檢測(cè)CO2 CS_EN(); //對(duì)ccs811 配置 delay_ms(100); ON_CS(); delay_ms(100); Single_ReadI2C(CCS811_Add,0x20,Information,1); //Read CCS's information ,ID,0x81 Single_ReadI2C(CCS811_Add,0x23,&Information[1],2); //FW_Boot_Version Single_ReadI2C(CCS811_Add,0x24,&Information[3],2); //FW_App_Version Single_ReadI2C(CCS811_Add,0x00,&Status,1); if(Status&0x10) Single_MWriteI2C_byte(CCS811_Add,0xF4,&temp,0); //Used to transition the CCS811 state from boot to application mode, a write with no data is required. Single_ReadI2C(CCS811_Add,0x00,&Status,1); Single_ReadI2C(CCS811_Add,0x01,&MeasureMode,1); Single_WriteI2C_byte(CCS811_Add,0x01,0x10); //Write Measure Mode Register,sensor measurement every second,no interrupt OFF_CS(); //二氧化碳模塊初始化 KEY_Init();//按鍵初始化 Lcd_Init();//st7735 LCD屏幕初始化 LCD_LED_SET;//通過(guò)IO控制背光亮 Lcd_Clear(WHITE); //清屏 Adc_Init(); //ADc初始化,采集土壤濕度模塊的模擬量 init_data(); //初始閾值參數(shù)設(shè)置 while(DHT11_Init()) //DHT11初始化 溫濕度 { delay_ms(200); } //TIM4_Int_Init(999,7199); bh1750_iic_init();///光照模塊初始化 Gui_DrawFont_GBK16(10,60,BLACK,WHITE,"正在連接ONENET"); ESP8266_Init(); //初始化ESP8266 wifi while(OneNet_DevLink()) //接入OneNET delay_ms(500); Onenet_succes=1; ///表示接入成功 Lcd_Clear(WHITE);//清屏 Shuju();//獲取環(huán)境數(shù)據(jù) Gui_DrawFont_GBK16(10,144,BLACK,WHITE,"WIFI:"); if(Onenet_succes) Gui_DrawFont_GBK16(60,144,BLACK,WHITE,"已連接:"); else Gui_DrawFont_GBK16(60,144,BLACK,WHITE,"未連接:"); while(1) { key=KEY_Scan(0);//檢測(cè)按鍵 threshold_value(); //界面和按鍵處理 counts++;//累加,用于onenet數(shù)據(jù)上傳計(jì)時(shí) control_set();//控制處理 if(counts>20) //counts>90 向云平臺(tái)發(fā)送數(shù)據(jù) { OneNet_SendData(); //發(fā)送數(shù)據(jù) ESP8266_Clear(); //清理esp8266 wifi模塊數(shù)據(jù)緩存 counts=0; Shuju(); //數(shù)據(jù)采集 } dataPtr = ESP8266_GetIPD(0);//檢測(cè)onenet是否下發(fā)數(shù)據(jù) if(dataPtr != NULL) OneNet_RevPro(dataPtr);//處理下發(fā)數(shù)據(jù) delay_ms(2);//延遲 } }
05
—
實(shí)驗(yàn)效果
-
STM32
+關(guān)注
關(guān)注
2270文章
10895瀏覽量
355722 -
智能大棚
+關(guān)注
關(guān)注
0文章
14瀏覽量
7669 -
智慧農(nóng)業(yè)
+關(guān)注
關(guān)注
4文章
785瀏覽量
19832
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論