『壹』 51單片機溫度控制系統原理圖
本裝置可以模擬溫度報警系統,可以進行目標溫度和警報溫度的設計,未達到目標溫度模擬加熱的Led燈會出現一閃一閃的情況,達到設定的目標溫度會停止模擬加熱,當當前溫度高於設定的警報溫度時,蜂鳴器會進行報警。
『貳』 MCS-51單片機的溫度測控設計(開題報告)
溫度變化范圍不大的用DS18B20 (-55~85)好象,控制用繼電器或者其它的都好,自己做吧,會在其中學到很多東西
『叄』 我是機電專業的學生,快要畢業了,我的畢業論文題目是基於51單片機的溫度控制系統設計
第1章 硬體電路分析
第1.1節 硬體電路概述該測溫系統由五部分組成:電源模塊、偵測模塊、顯示模塊、控制模塊、通訊模塊。電源模塊完成將200V,50Hz市電轉換為穩定的直流+5V電源的任務,包含變壓、整流、濾波和穩壓四部分,其中穩壓部分採用LM7805集成塊。串口通信模塊的任務是實現單片機與計算機的通信,通過軟體將程序下載至單片機中進行運行調試
以上內容來自5173論文網 http://www.lw5173.com/article/html/4627.html 點擊參考更多
『肆』 求一個51單片機的多路溫度控制系統的C語言程序。
#include<reg52.h> #include<math.h>
#include<INTRINS.H>
#define uchar unsigned char
#define uint unsigned int;
/******************************************************************/
/* 定義埠 */
/******************************************************************/
sbit seg1=P2^0;
sbit seg2=P2^1;
sbit seg3=P2^2;
sbit DQ=P1^7;//ds18b20 埠
sfr dataled=0x80;//前數顯示數據埠
/******************************************************************/
/* 全局變數 */
/******************************************************************/
uint temp;
uchar flag_get,count,num,minute,second;
uchar code tab[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
//7段數碼管段碼表共陽
uchar str[6];
/******************************************************************/
/* 函數聲明 */
/******************************************************************/
void delay1(uchar MS);
unsigned int ReadTemperature(void);
void Init_DS18B20(void);
unsigned char ReadOneChar(void);
void WriteOneChar(unsigned char dat);
void delay(unsigned int i);
/******************************************************************/
/* 主函數 */
/******************************************************************/
main()
{
unsigned char TempH,TempL;
TMOD|=0x01;//定時器設置游碼
TH0=0xef;
TL0=0xf0;
IE=0x82;
TR0=1;
P2=0x00;
count=0;
while(1)
{
str[5]=0x39; //顯示C符號
str[1]=tab[TempH/100]; //十位溫度
str[2]=tab[(TempH%100)/10]; //十位溫度
str[3]=tab[(TempH%100)%10]|0x80; //個位溫度,帶小數點
str[4]=tab[TempL];
if(flag_get==1) //神悔哪定時讀取當前溫度
{
temp=ReadTemperature();
if(temp&0x8000)
{
str[0]=0x40;//負號標志
temp=~temp; // 取反加1
temp +=1;
}
else
str[0]=0;
TempH=temp>>4;
TempL=temp&0x0F;
TempL=TempL*6/10;//小數近似處理
flag_get=0;
}
}
}
/******************************************************************/
/* 定時器中斷 */
/******************************************************************/
void tim(void) interrupt 1 using 1//中斷,用於數碼管掃描和溫度檢測間隔
{
TH0=0xef;//定時器重裝值
TL0=0xf0;
num++;
if (num==50)
{num=0;
flag_get=1;//標志位有效
second++;
if(second>=60)
{second=0;
minute++;
}
}
count++;
if(count==1)
{P2=0;
dataled=str[0];}//數碼管掃描
if(count==2)
{P2=1;
dataled=str[1];}
if(count==3)
{ P2=2;
dataled=str[2];
}
if(count==4)
{ P2=3;
dataled=str[3];
}
if(count==5)
{ P2=4;
dataled=str[4];
}
if(count==6)
{ P2=5;
dataled=str[5];
count=0;}
}
/******************************************************************/
/* 延時函數 */
/******************************************************************/
void delay(unsigned int i)//延時函數
{
while(i--);
}
/******************************************************************/
/* 初始化 */
/******************************************************************/
void Init_DS18B20(void)
{
unsigned char x=0;
DQ = 1; //DQ復位
delay(8); //稍做延時
DQ = 0; //單片機將DQ拉低
delay(80); //精確延時 大於 480us
DQ = 1; //拉高匯流排
delay(10);
x=DQ; //稍做延時後 如果x=0則初始化成功 x=1則初始化失敗
delay(5);
}
/******************************************************************/
/* 讀一個位元組 */
/******************************************************************/
unsigned char ReadOneChar(void)
{
unsigned char i=0;
unsigned char dat = 0;
for (i=8;i>0;i--)
{
DQ = 0; // 給脈沖信號
dat>>=1;
DQ = 1; // 給脈沖信號
if(DQ)
dat|=0x80;
delay(5);
}
return(dat);
}
/******************************************************************/
/* 寫一個位元組 */
/******************************************************************/
void WriteOneChar(unsigned char dat)
{
unsigned char i=0;
for (i=8; i>0; i--)
{
DQ = 0;
DQ = dat&0x01;
delay(5);
DQ = 1;
dat>>=1;
}
delay(5);
}
/******************************************************************/
/* 讀取溫度 */
/******************************************************************/
unsigned int ReadTemperature(void)
{
unsigned char a=0;
unsigned int b=0;
unsigned int t=0;
Init_DS18B20();
WriteOneChar(0xCC); // 跳過讀序號列號的操作
WriteOneChar(0x44); // 啟動溫度轉換
delay(200);
Init_DS18B20();
WriteOneChar(0xCC); //跳過讀序號列號的操作
WriteOneChar(0xBE); //讀取溫度寄存器等(共可讀9個寄存器) 前兩個就是溫度
a=ReadOneChar(); //低位
b=ReadOneChar(); //高位
b<<=8;
t=a+b;
return(t);
}
//LZ,這是測溫並且用數碼管顯示程序,報警可以自己另行添加!主要程序就是這些!
()
『伍』 基於MCS-51單片機的精密溫度控制系統的設計與實現
上傳內容
僅供學習與參考
摘要
本檢測系統硬體設計以AT89C51單片機為核心,用溫度感測器DS18B20實現溫度控制,用數碼管顯示實際溫度和預設溫度,製作數字溫度計,並可以實現溫度預警控制。
單片機系統的軟體編程採用單片機匯編進行編程。應用軟體採用KEIL和PROTEUS模擬軟體模擬實現控制過程。
溫度控制系統是基於單片機的計算機檢測技術的軟硬體開發和面向對象的高級可視化程序開發的有機結合。對溫度控制的發展有很大的好處。如果投入生產,不僅會創造良好的經濟效益,還可提高溫控的簡單化。
關鍵詞 單片機;DS18B20;調節;溫度
Abstract
This examination system hardware design take at89C51 monolithic integrated circuit as a core, realizes the temperature control with temperature sensor DS18B20, Demonstrates the actual temperature and the preinstall temperature with the nixie tube,manufactures the simple intelligence temperature control system - - digit thermometer,And may realize the temperature early warning control.
. The monolithic integrated circuit system's software programming uses the monolithic integrated circuit assembly to carry on the programming. The superior machine application software uses KEIL and the PROTEUS simulation software simulation realizes the controlled process.
This article develops the intelligence temperature control system is based on monolithic integrated circuit's computer examination technology software and hardware development and face the object high-level visualization procere development organic synthesis. Has the very big advantage to temperature control's development. If place in operation, not only will create the good economic efficiency, but may also propose the simplification which the high temperature will control.
Keywords microcontroller;DS18B20;measure;temperture
目錄
摘要 I
Abstract II
第1章 緒論 4
1.1 溫度感測器發展概述 4
1.2 單片機技術簡介 4
1.3 溫度檢測技術的發展 5
第2章 溫度感測器的選擇 8
2.1 測溫方法 8
2.2 DS18B20簡介 9
第3章 軟硬體設計 10
3.1 單片機的選擇 10
3.2 溫度感測器的選擇 10
3.3 模擬軟體的選擇 11
3.4 編譯軟體的選擇 11
3.5 PROTEUS 模擬電路圖 12
第4章 匯編語言程序 13
4.1 主程序和溫度值轉換成顯示值子程序的流程圖 13
4.2 DS18B20溫度子程序和顯示子程序的流程圖 14
4.3 匯編語言源程序 14
第1章 緒論
1.1 溫度感測器發展概述(略)
1.2 單片機技術簡介(略)
1.3 溫度檢測技術的發展(略)
第2章 溫度感測器的選擇
2.1 測溫方法
溫度是一個很重要的物理參數,鋼鐵的冶煉、石油的分餾、塑料的合成以
及農作物的生長等等都必須在一定的溫度范圍內進行,各種構件、材料的體積、電阻、強度以及抗腐蝕等物理化學性質,一般也都會隨溫度而變化。人們利用各種能源為人類服務,也往往是使某些介質通過一定的溫度變化來實現的。所以在生產和化學試驗中,人們經常會碰到溫度測量的問題。
溫度感測器是檢測溫度的器件,其種類最多,應用最廣,『發展最快。眾所周知,日常使用的材料及電子元件大部分都隨溫度而變化,資料【5】中介紹了作為實用感測器必須滿足的一些條件:
(1)在使用溫度范圍內溫度特性曲線要求達到的精度能符合要求:為了能
在較寬的溫度范圍內進行檢測,溫度系數不宜過大,過大了就難以使用,但對
於狹窄的溫度范圍或僅僅定點的檢測,其溫度系數越大,檢測電路也能越簡單。
(2)為了將它用於電子線路的檢測裝置,要具有檢測便捷和易於處理的特
性。隨著半導體器件和信號處理技術的進步,對溫度感測器所要求的輸出特性
應能滿足要求。
(3)特性的偏移和蠕變越小越好,互換性要好。
(4)對於溫度以外的物理量不敏感。
(5)體積小,安裝方便:為了能正確地測量溫度,感測器的溫度必須與被
測物體的溫度相等。感測器體積越小,這個條件越能滿足。
(6)要有較好的機械、化學及熱性能。這對於使用在振動和有害氣體的環
境中特別重要。
(7)無毒、安全以及價廉、維修、更換方便等。
溫度測量的方法很多,根據溫度感測器的使用方式,通常分為接觸式測溫
法與非接觸式測溫法兩類。
(1)接觸式測溫法
由熱平衡原理可知,兩個物體接觸後,經過足夠長時間的熱交換達到熱平
衡,則它們的溫度必然相等。如果其中之一為溫度計,就可以用它對另一個物體實現溫度測量,這種測溫方式稱為接觸式測溫法。接觸式測溫的優點顯而易
見,它簡單,可靠,測量精度高,但同時也存在不足:溫度計要與被測物體有
良好的熱接觸,並充分換熱,從而產生了測溫滯後現象;測溫組件可能與被測
物體發生化學反應;由於受到耐高溫材料的限制,接觸式測溫儀表不可能應用
於很高溫度的測量。
(2)非接觸式測溫法
由於測量組件與被測物體不接觸,利用物體的熱輻射能隨溫度變化的原理
測定物體溫度。因而測量范圍原則上不受限制,測溫速度較快,還可以在運動
中測量。這種測溫方式稱為非接觸式測溫法。它的特點是:不與被測物體接觸,也不改變被測物體的溫度分布,熱慣性小。從原理上看,用這種方法測溫無上限。通常用來測定1000℃以上的移動、旋轉或反應迅速的高溫物體的溫度或表面溫度。
2.2 DS18B20簡介
2.2.1技術性能描述
單線介面方式,DS18B20在與微處理器連接時僅需要一條口線即可實現微處理器與DS18B20的雙向通訊。測溫范圍 -55℃~+125℃,固有測溫解析度0.5℃。支持多點組網功能,多個DS18B20可以並聯在唯一的三線上,實現多點測溫。工作電源: 3~5V直流電源。
在使用中不需要任何外圍元件,測量結果以9~12位數字量方式串列傳送。適用於DN15~25, DN40~DN250各種介質工業管道和狹小空間設備測溫。
2.2.2應用范圍
該產品適用於冷凍庫,糧倉,儲罐,電訊機房,電力機房,電纜線槽等測溫和控制領域,軸瓦,缸體,紡機,空調,等狹小空間工業設備測溫和控制。
2.2.3接線說明
特點有一線介面,只需要一條口線通信 多點能力,簡化了分布式溫度感測應用 無需外部元件 可用數據匯流排供電,電壓范圍為3.0 V至5.5 V 無需備用電源 測量溫度范圍為-55 ° C至+125 ℃ 。華氏相當於是-67 ° F到257華氏度 -10 ° C至+85 ° C范圍內精度為±0.5 ° C。
溫度感測器可編程的解析度為9~12位 溫度轉換為12位數字格式最大值為750毫秒 用戶可定義的非易失性溫度報警設置 應用范圍包括恆溫控制,工業系統,消費電子產品溫度計,或任何熱敏感系統描述該DS18B20的數字溫度計提供9至12位(可編程設備溫度讀數。信息被發送到/從DS18B20 通過1線介面,所以中央微處理器與DS18B20隻有一個一條口線連接。為讀寫以及溫度轉換可以從數據線本身獲得能量,不需要外接電源。 因為每一個DS18B20的包含一個獨特的序號,多個DS18B20可以同時存在於一條匯流排。這使得溫度感測器放置在許多不同的地方。它的用途很多,包括空調環境控制,感測建築物內溫設備或機器,並進行過程監測和控制。【6】
第3章 軟硬體設計
3.1 單片機的選擇
單片機系統由單片機AT89C51、74HC245等晶元構成,完成數據採集、處理、通訊以及所有的功能,是整個系統的核心模塊。
單片機是整個系統的核心,對系統起監督、管理、控製作用,並進行復雜的信號處理,產生測試信號及控制整個檢測過程。所以在選擇單片機時,參考了以下標准。
(1)運行速度。單片機運行速度一般和系統匹配即可。
(2)存儲空間。單片機內部存儲器容量,外部可以擴展的存儲器(包括1/0口)空間。
(3)單片機內部資源。單片機內部存儲資源越多,系統外接的部件就越少,這可提高系統的許多技術指標。
(4)可用性。指單片機是否能很容易地開發和利用,具體包括是否有合適的開發工具,是否適合於大批量生產:、性能價格比,是否有充足的資源,是否有現成的技術資源等。
(5)特殊功能。一般指可靠性、功耗、掉電保護、故障監視等。
從硬體角度來看,與MCS-51指令完全兼容的新一一代AT89CXX系列機,比在片外加EPROM才能相當的8031-2單片機抗干擾性能強,與87C51-2單片機性能相當,但功耗小。程序修改直接用+5伏或+12伏電源擦除,更顯方便、而且其工作電壓放寬至2.7伏一6伏,因而受電壓波動的影響更小,而且4K的程序存儲器完全能滿足單片機系統的軟體要求。故AT89C51單片機是構造本檢測系統的更理想的選擇。本系統選用ATMEL生產的AT89C51單片機,其特性如下:
(1) 4K位元組可編程閃速程序存儲器;1000次循環寫/擦
(2)全靜態工作:OHz-24MHz
(3)三級程序存儲器鎖定
(4) 128 X 8位內部數據存儲器,32條可編程1/0線
(5)兩個十六位定時器/計數器,六個中斷源
(6)可編程串列通道,低功耗閑置和掉電模式
該器件採用了ATMEL的高密度非易失性的存儲器工藝,並且可以與工業標準的MCS-51指令集和輸出管腳兼容。由於將多功能8位CPU與閃速式存儲器組合在單個晶元中,AT89C51是一種高效的微控制器,為很多嵌入式系統提供了高靈活性且價廉的方案。
3.2 溫度感測器的選擇
DS18B20是美國達拉斯半導體公司的產品,與其他產品相比較它的性能有如下特點:①採用單匯流排專用技術,既可通過串列口線,也可通過其它I/O口線與微機介面,無須經過其它變換電路,直接輸出被測溫度值(9位二進制數,含符號位),②測溫范圍為-55℃-+125℃,測量解析度為0.0625℃,③內含64位經過激光修正的只讀存儲器ROM,④適配各種單片機或系統機,⑤用戶可分別設定各路溫度的上、下限,⑥內含寄生電源。所以在本設計中,我採用了DS18B20作為溫度感測器。【8】
3.3 模擬軟體的選擇
Proteus 是英國Labcenter公司開發的電路分析與實物模擬軟體。它運行於Windows操作系統上,可以模擬、分析(SPICE)各種模擬器件和集成電路,該軟體的特點是:
①實現了單片機模擬和SPICE電路模擬相結合。具有模擬電路模擬、數字電路模擬、單片機及其外圍電路組成的系統的模擬、RS232動態模擬、I2C調試器、SPI調試器、鍵盤和LCD系統模擬的功能;有各種虛擬儀器,如示波器、邏輯分析儀、信號發生器等。
②支持主流單片機系統的模擬。目前支持的單片機類型有:ARM7(LPC21xx)、 8051/52系列、AVR系列、PIC10/12/16/18系列、HC11系列以及多種外圍晶元。
③提供軟體調試功能。在硬體模擬系統中具有全速、單步、設置斷點等調試功能,同時可以觀察各個變數、寄存器等的當前狀態,因此在該軟體模擬系統中,也必須具有這些功能;同時支持第三方的軟體編譯和調試環境,如Keil C uVision2、MPLAB等軟體。【9】
3.4 編譯軟體的選擇
KEIL C51標准C編譯器為8051微控制器的軟體開發提供了C語言環境,同時保留了匯編代碼高效,快速的特點。C51編譯器的功能不斷增強,使你可以更加貼近CPU本身,及其它的衍生產品。C51已被完全集成到uVision2的集成開發環境中,這個集成開發環境包含:編譯器,匯編 器,實時操作系統,項目管理器,調試器。uVision2 IDE可為它們提供單一而靈活的開發環境。
C51 V7版本是目前最高效、靈活的8051開發平台。它可以支持所有8051的衍生產品,也可以支持所有兼容的模擬器,同時支持其它第三 方開發工具。因此,C51 V7版本無疑是8051開發用戶的最佳選擇。
uVision2集成開發環境具有如下功能:
一、項目管理
工程(project)是由源文件、開發工具選項以及編程說明三部分組成的。
一個單一的uVision2工程能夠產生一個或多個目標程序。產生目標程序的源文件構成「組」。開發工具選項可以對應目標,組或單個文件。
uVision2包含一個器件資料庫(device database),可以自動設置匯編器、編譯器、連接定位器及調試器選項,來滿足用戶充分利用特定 微控制器的要求。此資料庫包含:片上存儲器和外圍設備的信息,擴展數據指針(extra data pointer)或者加速器(math accelerator)的特 性。
uVision2可以為片外存儲器產生必要的連接選項:確定起始地址和規模。
二、集成功能
uVision2的強大功能有助於用戶按期完工。
1.集成源極瀏覽器利用符號資料庫使用戶可以快速瀏覽源文件。用詳細的符號信息來優化用戶變數存儲器。
2.文件尋找功能:在特定文件中執行全局文件搜索。
3.工具菜單:允許在V2集成開發環境下啟動用戶功能。
4.可配置SVCS介面:提供對版本控制系統的入口。
5.PC-LINT介面:對應用程序代碼進行深層語法分析。
6.Infineon的EasyCase介面:集成塊集代碼產生。【10】
3.5 PROTEUS 模擬電路圖
圖1是基於單片機的智能溫度檢測系統電路原理圖。控制加熱熱水器電源電路用LED燈模擬代替,取消無水報警電路。裝上水後接通電源,下方LED數碼管顯示當前水溫。上方LED數碼管顯示預設水溫。操作「個位」鍵和「十位」鍵可預設水溫(如99℃)控制點。該電路具有如下功能:
(1) 測量水溫,精度為1℃,范圍為0~99℃;
(2) 三位數碼管實時顯示水溫;
(3) 可預設水溫(如99℃)控制點,當水加熱到該水溫時自動斷電,當水溫低於該水溫時自動上電加熱;
(4) 無水自動斷電和報警功能(略)。
圖1 基於單片機的智能溫度檢測系統電路原理圖
第4章 匯編語言程序
4.1 主程序和溫度值轉換成顯示值子程序的流程圖
4.2 DS18B20溫度子程序和顯示子程序的流程圖
4.3 匯編語言源程序
ORG 0
LJMP MAIN1
ORG 0003H
LJMP ZINT0
ORG 13H
LJMP ZINT1
TMPH: EQU 28H
FLAG1: EQU 38H
DATAIN: BIT P3.7
MAIN1: SETB IT0
SETB EA
SETB EX0
SETB IT1
SETB EX1
SETB P3.6
SETB P3.2
MOV 74H,#0
MOV 75H,#0
MOV 76H,#0
MOV 77H,#0
MAIN: LCALL GET_TEMPER
LCALL CVTTMP
LCALL DISP1
AJMP MAIN
INIT_1820:
SETB DATAIN
NOP
CLR DATAIN
MOV R1,#3
TSR1: MOV R0,#107 ;保持642ms
DJNZ R0,$
DJNZ R1,TSR1
SETB DATAIN ;釋放DS18B20匯流排
NOP
NOP
NOP
MOV R0,#25H
TSR2: JNB DATAIN,TSR3
DJNZ RO,TSR2
CLR FLAG1
SJMP TSR2
TSR3: SETB FLAG1 ;標志位置1,證明DS18b20存在
CLR P1.7
MOV R0,#117
TSR6: DJNZ R0,$
TSR7: SETB DATAIN
RET ;延時254us
GET_TEMPER:
SETB DATAIN
LCALL INIT_1820
JB FLAG1,TSS2
NOP
RET ;DS18B20檢測程序
TSS2: MOV A,#0CCH ;跳過ROM,使用存儲器
LCALL WRITE_1820
MOV A,#44H ;對RAM操作,開始溫度轉換
LCALL WRITE_1820
ACALL DISP1
LCALL INIT_1820
MOV A,#0CCH
LCALL WRITE_1820
MOV A,#0BEH
LCALL WRITE_1820
LCALL READ_1820;讀暫存器中的溫度數值
RET
WRITE_1820:
MOV R2,#8
CLR C
WR1: CLR DATAIN
MOV R3,#6
DJNZ R3,$
RRC A
MOV DATAIN,C
MOV R3,#23
DJNZ R3,$
SETB DATAIN
NOP
DJNZ R2,WR1
SETB DATAIN
RET
READ_1820:
MOV R4,#2
MOV R1,#29H
RE00: MOV R2,#8
RE01: CLR C
SETB DATAIN
NOP
NOP
CLR DATAIN
NOP
NOP
NOP
SETB DATAIN
MOV R3,#9
RE10: DJNZ R3,RE10
MOV C,DATAIN
MOV R3,#23
RE20: DJNZ R3,RE20
RRC A
DJNZ R2,RE01
MOV @R1,A
DEC R1
DJNZ R4,RE00
RET
CVTTMP: MOV A,TMPH
ANL A,#80H ;判斷溫度正負,正不變,負則取反加1
JZ TMPC1
CLR C
MOV A,TMP1
CPL A
ADD A,#1
MOV TMP1,A
MOV A,TMPH
CPL A
ADDC A,#0
MOV TMPH,A
MOV 73H,#0BH
SJMP TMPC11
TMPC1: MOV 73H,#0AH
TMPC11: MOV A,TMP1
ANL A,#0FH
MOV DPTR,#TMPTAB
MOVC A,@A+DPTR
MOV 70H,A
MOV A,TMP1
ANL A,#0FH
SWAP A
ORL A,TMPL
B2BCD: MOV B,#100
DIV AB
JZ B2BCD1
MOV 73H,A
B2BCD: MOV A,#10
XCH A,B
DIV AB
MOV 72H,A
MOV 71H,B
TMPC12: NOP
DISBCD: MOV A,73H
ANL A,#0FH
CJNE A,#1,DISBCD0
SJMP DISBCD1
DISBCD0: MOV A,72H
ANL A,#0FH
JNZ DISBCD1
MOV A,73H
MOV 72H,A
MOV 73H,#0AH
DISBCD1: RET
TMPTAB: DB 0,1,1,2,3,3,4,4,5,6,6,7,8,8,9,9
DISP1: MOV R1,#70H
MOV R0,#74H
MOV R5,#0FEH ;顯示實際溫度
PLAY: MOV P1,#0FFH
MOV A,R5
MOV P2,A
MOV A,@R1
MOV DPTR,#TAB
MOVC A,@A+DPTR
MOV P1,A
MOV P1,A
MOV A,@R0
MOVC A,@A+DPTR
MOV P0,A
MOV A,R5
JB ACC.1,LOOP1
JB P1.7
CLR P1.7
CLR P0.7 ;顯示小數點
LOOP1: LCALL DL1MS
INC R1
INC R0
MOV A,R5
JNB ACC.3,ENDOUT
RL A
MOV R5,A
MOV A,73H
CJNE A,#1,DD2
SJMP LEDH
DD2: MOV A,72H
CJNE A,72H,DDH
SJMP DD1
DDH: JNE PLAY1
LEDH: CLR P3.6
SJMP PLAY
PLAY1: SETB P3.6
SJMP PLAY
ENDOUT: MOV P1,#0FFH
MOV P2,#0FFH
RET
TAB: DB 0C0H,0F9H,0A4H,0B0H,99H
DB 92H,82H,0F8H,80H,90H,0FFH,0BFH
DL1MS: MOV R6,#14H
DL1: MOV R7,#100
DJNZ R7,$
DJNZ R6,DL1
RET
ZINT0: PUSH A
INC 75H
MOV A,,75H
CJNE A,#10,ZINT01
MOV 75H,#0
ZINT01: POP A
RETI
ZINTT1: PUSH A
INC 76H
MOV A,76H
CJNE A,#10,ZINT11
MOV 76H,#0
ZINT11: POP A
RETI
『陸』 51單片機的溫度採集系統設計
第一章 確定系統功能與性能
本系統的功能主要有數據採集、數據處理、輸出控制。能對0~1000 �0�2c范圍內的各種電加熱爐的溫度進行精密測量,同時,四位LED顯示器直接跟蹤顯示被控對象的溫度值,准確度高,顯示清晰,穩定可靠,使用方便(在具體設計編程、調試過程中,為了調試方便,編程把溫度范圍設在0~100 �0�2c)。
本系統的原理框圖如下圖所示。
數據採集部分能完成對被測信號的采樣,顯示解析度0.1�0�2c,測量精度0.1�0�2c,控制精度0.1�0�2c,可以實現採集信號的放大及A/D轉換,並自動進行零漂校正,同時按設定值、所測溫度值、溫度變化速率,自動進行FID參數自整定和運算,並輸出0~10mA控制電流,配以主迴路實現溫度的控制。數據處理分為預處理、功能性處理、抗干擾等子功能。輸出控制部分主要是數碼管顯示控制。
第二章 確定系統基本結構及硬體設計
本單片機應用系統結構是以單片機為核心外部擴展相關電路的形式。確定了系統中的單片機、存儲器分配及輸入/輸出方式就可大體確定出單片機應用系統的基本組成。
1)單片機選用MCS-51系統的8031
8031是INTEL公司MCS-51系列單片機中最基本的產品,它採用INTEL公司可靠的CHMOS工藝技術製造的高性能8位單片機,屬於標準的MCS-51的HCMOS產品。它結合了HMOS的高速和高密度技術及CHMOS的低功耗特徵,標准MCS-51單片機的體系結構和指令系統。
8031內置中央處理單元、128位元組內部數據存儲器RAM、32個雙向輸入/輸出(I/O)口、2個16位定時/計數器和5個兩級中斷結構,一個全雙工串列通信口,片內時鍾振盪電路。但80C31片內並無程序存儲器,需外接ROM。
此外,8031還可工作於低功耗模式,可通過兩種軟體選擇空閑和掉電模式。在空閑模式下凍結CPU而RAM定時器、串列口和中斷系統維持其功能。掉電模式下,保存RAM數據,時鍾振盪停止,同時停止晶元內其它功能。8031有PDIP(40pin)和PLCC(44pin)兩種封裝形式。
主要功能特性:
· 標准MCS-51內核和指令系統
· 外部程序存儲器ROM地址空間64kB
· 32個可編程雙向I/O口
· 128x8bit內部RAM(可擴充64kB外部存儲器)
· 2個16位可編程定時/計數器
· 時鍾頻率3.5-16MHz
· 5個中斷源
· 5.0V工作電壓
· 全雙工串列通信口
· 布爾處理器
· 2層優先順序中斷結構
· 兼容TTL和CMOS邏輯電平
· PDIP(40)和PLCC(44)封裝形式
『柒』 跪求51單片機溫度控制系統開題報告以及論文
摘要
本文主要介紹了基於PID控制理論的單片機溫度的控制。控制器件使用單片機,單片機的應用有利於增加控制的靈活性,提高控制精度,減小控制部分的體積,是現代控制的主要硬體部分。
溫度是工業控制對象的主要被控參數之一,如冶金,機械,食品,化工各類工業中廣泛使用的各種加熱爐,熱處理爐,反應爐等。在過去多是採用常規的模擬調節器對溫度進行控制,本文採用了單片微型機對溫度實現自動控制。對不同的升溫速率升溫,再對某種儀器在不同升溫狀況下的特性進行檢測,達到了較高的精度。
應用繼電器自整定方法,可以快速整定PID參數,減少工人的工作量,計算出錯的幾率降低很多。所使用的時間也減少了很多,工作效率大大提高。並應用經驗公式快速計算出相應的數值。
關鍵詞: PID 單片機 繼電器整定 溫度控制
ABSTRACT
This text mainly introced the controller of PID in instry proce the control of the temperature.The controller piece uses a machine, the application of a machine is advantageous to the vivid of the increment control, exaltation control accuracy, let up the control the physical volume of the part, is main hardware part of the modern control.
The temperature is a mainly instry controled object, such as metallurgy, machine, food, each kind of instry of chemical engineering in various heating stove of the extensive usage, the hot processing stove, reactor etc..At pass by mostly the emulation molator adopt of the normal regulations carries on the control to the temperature, this literary grace uses a miniature machine to carry out the automatic control to the temperature.Carry on the examination towards heating the velocity to heat differently, again to a certain instrument under the condition that dissimilarity heat of characteristic, come to a the higher accuracy.
Using relay setting method, It can settle the parameter of PID quickly and rece the worker's workload, several rates that compute to come amiss lower many. The time also reced a lot of, Work efficiency raises consumedly.Apply the empirical formula also to compute a number for correspond quickly
Keyword: PID Single-chip microcomputer Relay setting temperature control
緒論
溫度是生產過程和科學實驗中普遍而且重要的物理 參數。在工業生產過程中為了高效地進行生產,必須對生產工藝過程中的主要參數,如溫度,壓力,流量,速度等進行有效的控制。其中溫度的控制在生產過程中佔有相當大的比例。准確測量和有效控制溫度是優質,高產,低耗和安全生產的重要條件。在工業的研製和生產中,為了保證生產過程的穩定運行並提高控制精度,採用微電子技術是重要的途徑。它的作用主要是改善勞動條件,節約能源,防止生產和設備事故,以獲得好的技術指標和經濟效益。本課題是結合生產實際和科研工作,運用PID演算法對溫度進行控制,以求達到較好的控制效果。
目前先進國家各種爐窯自動化水平較高,裝備有完善的檢測儀表和計算機控制系統。其計算機控制系統已採用集散系統和分布式系統的形式,大部分配有先進的控制演算法,能夠獲得較好的工藝性能指標。單片微型計算機是隨著超大規模集成電路的技術的發展而誕生的。由於它具有體積小,功能強,性價比高等優點,所以廣泛應用於電子儀表,家用電器,節能裝置,軍事裝置,機器人,工業控制等諸多領域,使產品小型化,智能化,既提高了產品的功能和質量又降低了成本,簡化了設計。本文主要涉及MCS-51單片機在溫度控制中的應用。應用單片機實現PID控制演算法和PID參數的整定。
PID 控制是最早發展起來的控制策略之一, 由於其演算法簡單、魯棒性好、可靠性高等優點, 被廣泛應用於工業過程式控制制。當用計算機實現後, 數字 PID 控制器更顯示出參數調整靈活、演算法變化多樣、簡單方便的優點。隨著生產的發展, 對控制的要求也越來越高, 隨之發展出許多以計算機為基礎的新型控制演算法, 如自適應 PID 控制、模糊 PID 控制、智能 PID 控制等等。
1.PID 控制原理
模擬 PID 控制系統原理框圖如圖 1- 1所示, 系統由模擬 PID 控制器和受控對象組成。
PID 控制器根據給定值 r(t) 與實際輸出值c(t) 構成的控制偏差:
(1-1 )
將偏差的比例(P)、積分( I) 和微分 (D ) 通過線性組合構成控制量, 對受控對象進行控制。其控制規律為:
(1- 2)
或寫成傳遞函數形式:
(1- 3)
式中, 為比例系數, 為積分時間常數, 為微分時間常數。
簡單說來, PID 控制器各校正環節的作用是這樣的:
●比例環節: 即時成比例地反應控制系統的偏差信號 , 偏差一旦產生, 控制器立即產生控製作用以減小誤差。
●積分環節: 主要用於消除靜差, 提高系統的無差度, 積分作用的強弱取決於積分時間常
數 , 越大積分作用越弱, 反之則越強。
● 微分環節: 能反應偏差信號的變化趨勢(變化速率) , 並能在偏差信號值變得太大之前,在系統中引入一個有效的早期修正信號, 從而加快系統的動作速度, 減小調節時間。
2. PID控制規律及對系統穩定性的影響
控制器輸出與偏差信號之間的函數關系稱為控制規律。控制規律決定了控制器的特性。在控制器輸出穩定之前,偏差 與輸出之間的相互關系,稱為控制器的動態特性。在控制器上施加恆定的偏差,經過一段時間,控制器的輸出達到穩定,偏差 與輸出 的相互關系稱為控制器的靜特性。控制器的輸入與輸出信號的相互關系如圖所示。圖中 為偏差信號,通常用測量值與給定值只差在全量程范圍中所佔的百分數來表示: