加入星計(jì)劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長(zhǎng)期合作伙伴
立即加入

基于51單片機(jī)智能魚缸仿真LCD1602顯示( proteus仿真+程序+設(shè)計(jì)報(bào)告+講解視頻)

11/22 11:06
1661
服務(wù)支持:
技術(shù)交流群

完成交易后在“購(gòu)買成功”頁(yè)面掃碼入群,即可與技術(shù)大咖們分享疑惑和經(jīng)驗(yàn)、收獲成長(zhǎng)和認(rèn)同、領(lǐng)取優(yōu)惠和紅包等。

虛擬商品不可退

當(dāng)前內(nèi)容為數(shù)字版權(quán)作品,購(gòu)買后不支持退換且無(wú)法轉(zhuǎn)移使用。

加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論
放大
實(shí)物圖
相關(guān)方案
  • 方案介紹
    • 1. 主要功能:
    • 2. 講解視頻:
    • 3. 仿真
    • 4. 程序代碼
    • 5. 設(shè)計(jì)報(bào)告
    • 6. 設(shè)計(jì)資料內(nèi)容清單&&下載鏈接
  • 相關(guān)文件
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

基于51單片機(jī)智能魚缸仿真LCD顯示( proteus仿真+程序+設(shè)計(jì)報(bào)告+講解視頻)

仿真圖proteus7.8及以上

程序編譯器:keil 4/keil 5

編程語(yǔ)言:C語(yǔ)言

設(shè)計(jì)編號(hào):S0080

1. 主要功能:

基于51單片機(jī)的智能魚缸檢測(cè)控制系統(tǒng)proteus仿真

1.系統(tǒng)通過(guò)DS18B20檢測(cè)魚缸溫度,通過(guò)DAC0832采集PH傳感器水位傳感器數(shù)據(jù);

2.溫度低于閾值系統(tǒng)啟動(dòng)加熱功能;默認(rèn)正常范圍是大于25攝氏度;

3.水位過(guò)低系統(tǒng)自動(dòng)啟動(dòng)加水閥,水位過(guò)高系統(tǒng)自動(dòng)啟動(dòng)排水閥;默認(rèn)正常范圍90-100cm;

4.PH值過(guò)高或者過(guò)低,系統(tǒng)亮報(bào)警燈;默認(rèn)正常范圍6-8;

5.可以通過(guò)按鍵調(diào)整魚缸溫度,PH酸堿度和水位閾值;

6.通過(guò)LCD1602顯示溫度,PH酸堿度和水位測(cè)量值和相關(guān)的閾值;

需注意仿真中51單片機(jī)芯片是兼容的,AT89C51,AT89C52是51單片機(jī)的具體型號(hào),內(nèi)核是一樣的。相同的原理圖里,無(wú)論stc還是at都一樣,引腳功能都是一樣的,程序是兼容的,芯片可以替換為STC89C52/STC89C51/AT89C52/AT89C51等51單片機(jī)芯片。

img

資料下載鏈接:

騰訊文檔】S0080 網(wǎng)盤鏈接

https://docs.qq.com/doc/DS0J3RGp0aWFTakhG

以下為本設(shè)計(jì)資料展示圖:

2. 講解視頻:

講解視頻包含仿真運(yùn)行講解和代碼講解


基于51單片機(jī)的智能魚缸LCD1602顯示proteus仿真+程序+設(shè)計(jì)報(bào)告

3. 仿真

打開(kāi)仿真工程,雙擊proteus中的單片機(jī),選擇hex文件路徑,然后開(kāi)始仿真。顯示溫度,PH酸堿度和水位測(cè)量值和相關(guān)的閾值;

img

通過(guò)調(diào)整PH值滑動(dòng)變阻器模擬傳感器數(shù)值動(dòng)態(tài)變化,當(dāng)PH大于默認(rèn)閾值,警告燈亮。

img

水位低于閾值,進(jìn)水閥開(kāi)始工作,指示燈點(diǎn)亮。水位大于閾值,出水閥開(kāi)始工作,指示燈點(diǎn)亮。默認(rèn)水位正常范圍90-100cm;

imgimg

調(diào)整溫度低于閾值,加熱器啟動(dòng)開(kāi)始工作。

img

4. 程序代碼

使用keil4或者keil5編譯,代碼有注釋,可以結(jié)合視頻理解代碼含義。

// 引入51單片機(jī)頭文件
完整代碼見(jiàn)文章后面下載鏈接壓縮包
#include "reg51.h"
// 引入LCD1602液晶顯示模塊驅(qū)動(dòng)頭文件
#include "lcd1602.h" 
// 引入DS18B20溫度傳感器驅(qū)動(dòng)頭文件
#include "Ds18b20.h"
// 引入ADC0832模數(shù)轉(zhuǎn)換器驅(qū)動(dòng)頭文件
#include "ADC0832.h"
// 引入PID和PWM控制相關(guān)頭文件
#include"pid_pwm.h"
// 定義uchar類型(無(wú)符號(hào)字符型)
#define uchar unsigned char
// 定義uint類型(無(wú)符號(hào)整型)
#define uint unsigned int
// 定義按鈕引腳
sbit k1=P3^2; // 按鈕k1
sbit k2=P3^3; // 按鈕k2
sbit k3=P3^4; // 按鈕k3
sbit k4=P3^5; // 按鈕k4
sbit k5=P3^6; // 按鈕k5
sbit k6=P3^7; // 按鈕k6
// 定義輸出控制引腳
sbit out1=P2^4; // 輸出控制out1
sbit out2=P2^5; // 輸出控制out2
sbit out3=P2^6; // 輸出控制out3
sbit out4=P2^7; // 輸出控制out4
// 定義PH值高低電平檢測(cè)引腳
sbit ph_h=P3^0;
sbit ph_l=P3^1;
// 定義系統(tǒng)變量
uchar time=0, mode=0; // 計(jì)時(shí)變量time,模式變量mode
uchar wendu=0, ph=0, water=0; // 溫度變量wendu,pH值變量ph,水位變量water
uchar lim1=25, lim2=7, lim3=100; // 溫度閾值lim1,pH閾值lim2,水位閾值lim3
uchar disp1[]="T:000 P:00 H:000"; // 顯示緩沖區(qū)1
uchar disp2[]="  000   00   000"; // 顯示緩沖區(qū)2
uchar pwm=0; // PWM占空比變量
//主函數(shù)
void main()
{
	uchar i=0;
	init_1602(); // 初始化LCD1602液晶顯示器
	TMOD|=0X01;
	TH0=0X3C;
	TL0=0XB0;	
	ET0=1;//打開(kāi)定時(shí)器0中斷允許
	EA=1;//打開(kāi)總中斷
	TR0=1;//打開(kāi)定時(shí)器
	while(1)
	{
		//PWM輸出
		if(i<99)
		 	i++;
		else
			i=0;
		if(i<pwm)
			out4=0;
		else
			out4=1;
		//按鍵檢測(cè)
		if(!k1)		  // 溫度閾值遞增
		{
			if(lim1<120)
				lim1++;
			while(!k1);	 // 等待按鍵釋放
		}
		if(!k2)
		{
			if(lim1>0)
				lim1--;
			while(!k2);	 // 溫度閾值遞減
		}
		if(!k3)
		{
			if(lim2<14)
				lim2++;	  // PH閾值遞增
			while(!k3);
		}
		if(!k4)
		{
			if(lim2>0)
				lim2--;	   // PH閾值遞減
			while(!k4);
		}
		if(!k5)
		{
			if(lim3<127)
				lim3++;		  // 水位閾值遞增
			while(!k5);
		}
		if(!k6)
		{
			if(lim3>0)
				lim3--;	   // 水位閾值遞減
			while(!k6);
		}
	}
}
//定時(shí)器中斷
void Timer0() interrupt 1
{
	uint i=0;
	if(time<10)//0.5s
		time++;
	else
	{
		time=0;
		Ds18b20ReadTemp();//測(cè)溫
		wendu=ds18b20_temp;
		ph=ADC(1);//PH
		i=ph;
		ph=i*14/127; // 將模擬值轉(zhuǎn)換為pH范圍
		water=ADC(2);//水位
 		// 更新顯示緩沖區(qū)內(nèi)容
        // ...更新溫度、pH值、水位顯示字符串...
		disp1[2]=wendu/100+0x30;
		disp1[3]=wendu%100/10+0x30;
		disp1[4]=wendu%10+0x30;
		disp1[8]=ph/10+0x30;
		disp1[9]=ph%10+0x30;
		disp1[13]=water/100+0x30;
		disp1[14]=water%100/10+0x30;
		disp1[15]=water%10+0x30;
		write_string(1,0,disp1);
		disp2[2]=lim1/100+0x30;
		disp2[3]=lim1%100/10+0x30;
		disp2[4]=lim1%10+0x30;
		disp2[8]=lim2/10+0x30;
		disp2[9]=lim2%10+0x30;
		disp2[13]=lim3/100+0x30;
		disp2[14]=lim3%100/10+0x30;
		disp2[15]=lim3%10+0x30;
		write_string(2,0,disp2);
		// 根據(jù)設(shè)定閾值計(jì)算PWM占空比
		pwm=PID(lim1,wendu);
        // 根據(jù)pH值進(jìn)行高低電平控制
        if(ph>lim2+1)
            ph_h=0; // pH過(guò)高關(guān)閉高電平
        else
            ph_h=1; // pH正?;謴?fù)高電平
        if(ph<lim2-1)
            ph_l=0; // pH過(guò)低關(guān)閉低電平
        else
            ph_l=1; // pH正常恢復(fù)低電平
        
        // 根據(jù)水位進(jìn)行排水閥控制
        if(water>lim3)
            out2=0; // 水位過(guò)高開(kāi)啟排水閥
        else
            out2=1; // 水位正常關(guān)閉排水閥
  					// 根據(jù)水位進(jìn)行排水閥控制
        if(water<lim3-10)
            out1=0; // 水位過(guò)低開(kāi)啟進(jìn)水閥
        else
            out1=1;  // 水位正常關(guān)閉進(jìn)水閥
	}
	 // 重置定時(shí)器初值
	TH0=0X3C;
	TL0=0XB0;
}

5. 設(shè)計(jì)報(bào)告

8335字設(shè)計(jì)報(bào)告,內(nèi)容包括硬件設(shè)計(jì)、軟件設(shè)計(jì)、軟硬件框圖、調(diào)試、結(jié)論等

img

設(shè)計(jì)中的智能魚缸檢測(cè)控制系統(tǒng)具備了根據(jù)預(yù)設(shè)閾值自動(dòng)調(diào)節(jié)相關(guān)設(shè)備的能力。例如,當(dāng)檢測(cè)到魚缸內(nèi)水溫低于設(shè)定的適宜溫度時(shí),系統(tǒng)會(huì)立即啟動(dòng)加熱裝置,確保水溫恒定在最適宜魚類生活的范圍內(nèi);同時(shí),針對(duì)水位過(guò)低或過(guò)高情況,系統(tǒng)也能自動(dòng)開(kāi)啟加水閥或排水閥,維持水位在安全合理區(qū)間;另外,針對(duì)至關(guān)重要的水質(zhì)指標(biāo)——PH值,系統(tǒng)亦能及時(shí)捕捉其波動(dòng),并在PH值過(guò)高或過(guò)低時(shí)觸發(fā)報(bào)警提示,甚至聯(lián)動(dòng)酸堿度調(diào)節(jié)設(shè)備進(jìn)行調(diào)整。

為了驗(yàn)證并優(yōu)化設(shè)計(jì)的智能魚缸檢測(cè)控制系統(tǒng),我們還將借助功能強(qiáng)大的Proteus仿真平臺(tái)進(jìn)行詳細(xì)的系統(tǒng)建模與調(diào)試。Proteus的強(qiáng)大仿真能力使得我們?cè)趯?shí)際硬件搭建前就能完成系統(tǒng)功能的設(shè)計(jì)與驗(yàn)證,大大縮短開(kāi)發(fā)周期,降低研發(fā)成本,從而高效地將設(shè)計(jì)方案轉(zhuǎn)化為實(shí)用性強(qiáng)、可靠性高的智能魚缸檢測(cè)控制系統(tǒng),最終為用戶提供一個(gè)高度自動(dòng)化、精準(zhǔn)調(diào)控、操作便捷的最優(yōu)養(yǎng)殖環(huán)境解決方案。

6. 設(shè)計(jì)資料內(nèi)容清單&&下載鏈接

資料設(shè)計(jì)資料包括仿真,程序代碼、講解視頻、功能要求、設(shè)計(jì)報(bào)告、軟硬件設(shè)計(jì)框圖等。

0、常見(jiàn)使用問(wèn)題及解決方法–必讀?。。。?/p>

1、程序

2、proteus仿真

3、功能要求

4、軟硬件流程圖

5、開(kāi)題報(bào)告

6、設(shè)計(jì)報(bào)告

7、講解視頻

Altium Designer 安裝破解

KEIL+proteus 單片機(jī)仿真設(shè)計(jì)教程

KEIL安裝破解

Proteus元器件查找

Proteus安裝

Proteus簡(jiǎn)易使用教程

單片機(jī)學(xué)習(xí)資料

相關(guān)數(shù)據(jù)手冊(cè)

答辯技巧

設(shè)計(jì)報(bào)告常用描述

鼠標(biāo)雙擊打開(kāi)查找嘉盛單片機(jī)51 STM32單片機(jī)課程畢業(yè)設(shè)計(jì).url

img

資料下載鏈接:

https://docs.qq.com/doc/DS0J3RGp0aWFTakhG

  • 設(shè)計(jì)資料獲取聯(lián)系方式.doc

相關(guān)推薦

電子產(chǎn)業(yè)圖譜