逢 自動控制工程學系專題製作 專 題 - fcu.edu.t ·...

41
自動控制工程學系專題製作 單晶片做溫度控制 Temperature Control with Micro-Computer 指導教授:蘇文彬 生:張哲堃陳科璁 ㆗華民國九十㆒年五月㆔十日 1

Transcript of 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t ·...

Page 1: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

逢 ㆙ 大 學

自動控制工程學系專題製作

專 題 論 文

單晶片做溫度控制

Temperature Control with Micro-Computer

指導教授:蘇文彬

學 生:張哲堃、陳科璁

㆗ 華 民 國 九 十 ㆒ 年 五 月 ㆔ 十 日

1

Page 2: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

2

Page 3: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

感 謝

感謝老師蘇文彬先生悉心指導,從旁協助,使得專題能如期得以完成,在此

不勝感激;尤其發現某些困難時,老師更是熱心從旁鼓勵,指引方向,提供詳細

資料與方法,在此至㆖最高敬意。

同時也感謝系㆖同學及其他老師從旁協助,讓我們遇事能得心應手,更感謝

福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突

破,及感謝所有曾經幫助過我們的所以朋友們。

3

Page 4: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

㆗ 文 摘 要

有鑒於溫度的影響,與我們的生活息息相關,所以本專題才想到往有關溫度

方面來作為本次畢業專題之研究與討論。

此次專題利用 8051單晶片來作為控制溫度的主要單元,經由感測元件

DS1821作為溫度之檢測,將輸出的數位信號經由 8051讀後由七截燈管顯示目前

之溫度,同時我們亦可由 SW開關來設定溫度,作為水溫加熱之溫度控制,而且

能加水溫控制在所設定的水溫之㆗,達到控制溫度的目的。

4

Page 5: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

Abstract

We know that temperature is closely linked with us . In order to understand the

influence of the temperature , our subject is a discussion of the temperature .

We use the 8051 chip to control the temperature in this major topic . By an

induced body DS1821 , it can measure the temperature . The digital signal of output

can show the temperature on the screen . The digital signal is scaned by 8051 . At the

same time , we can set the temperature by a switch to control the water temperature .

In addition to , controling the water temperatue on our expecting temperature . So we

can control the temperature .

5

Page 6: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

目 錄

感謝…………………………………………………………………………………i

㆗文摘要……………………………………………………………………………ii

英文摘要……………………………………………………………………………iii

目 錄………………………………………………………………………………iv

圖目錄………………………………………………………………………………v

表目錄………………………………………………………………………………vi

㆒.前言………………………………………………………………………………1

㆓.動作原理及公式推導

2.1動作原理………………………………………………………………………3

2.2溫度計算公式…………………………………………………………………6

2.3誤差探討………………………………………………………………………6

㆔.實驗計畫與工作進度

3.1實驗計畫………………………………………………………………………7

3.2目前進度………………………………………………………………………7

3.3動作說明…………………………………………………………………… 10

㆕.硬體規格敘述說明

4.1 8051系列簡介………………………………………………………………12

4.2 DS1821之介紹………………………………………………………………15

五.軟體程式及流程圖

5.1軟體流程圖說明…………………………………………………………… 19

5.2軟體程式…………………………………………………………………… 20

六.結論………………………………………………………………………………32

附錄………………………………………………………………………………… 33

參考文獻…………………………………………………………………………… 49

6

Page 7: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

圖 目 錄

圖 2.1方塊圖…………………………………………………………………………4

圖 2.2方塊圖…………………………………………………………………………5

圖 3.1電路圖…………………………………………………………………………9

圖 4.1 8051 40隻接腳圖…………………………………………………………13

圖 4.2.1 DS1821 接腳………………………………………………………………15

圖 4.2.2 DS1821內部方塊圖……………………………………………………… 16

圖 4.2.3 DS1821溫度量測電路…………………………………………………… 17

圖 5.1軟體流程圖……………………………………………………………………19

7

Page 8: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

表 目 錄

表 4.1 MCS-51族系單晶片…………………………………………………………14

表 4.2 DS1821輸出之訊號與位址…………………………………………………18

8

Page 9: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

第㆒章 前言

1.1單晶片簡介:

單晶片與㆒般微處理器最大的不同,就是將 CPU與其㆒些周邊的晶片如

﹝ROM,RAM,I/O,TIMER/COUNTER……等﹞全部做在㆒顆 IC裡,因而在

使用㆖減少了很多介面設計與介接的工作,除錯也更為簡單,不但減少產品開發

的時間,也降低產品成本。以往再工業控制及自動化產品的設計㆖都採用八位元

的微處理機如 Z80,8085等,但由於近年來單晶片的發展神速,有更多的周邊晶

片﹝如 UART,A/D…等﹞被融入單晶片㆗,因而其功能更為增強,所以逐漸成

為為控制﹝MICRO-CONTROLLER﹞的主流﹝1﹞。

1.2 單晶片微處理器的應用範圍:

1.2.1 智慧型產品:

單晶片微處理器與傳統機的機械產品相結合,使傳統的機械產品結構簡單

化,控制智慧化,構成新㆒代機電整合的產品。

1.2.2 智慧型儀表:

用單晶片微處理器改良原有的測量,控制儀表,能使儀表數位化,智慧化,

多功能化,綜合化。而量測儀器㆗的誤差修正,線性化等問題也可迎刃而解。

1.2.3測控系統:

用單晶片微處理器可以設計各種工業控制系統,環境控制系統,資料控制系

統,例如:溫室㆟工氣候控制、水閘自動控制、電鍍生產線自動控制、氣輪機電

液調節控制系統。

1.2.4數位控制機:

9

Page 10: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

再目前數位控制系統的簡易控制機㆗,採用單晶片可提高其可靠性以及增強

功能,降低控制器成本,例如:在兩座標系的連續控制系統㆗,用單晶片微處理

器組成的系統代替 Z-80所組成的系統,在完成同樣功能的條件㆘,其程式長度

可減少 50%,提高了執行速度。數位控制機採用單晶片微處理器後可能改變數控

制溫機的結構模式,例如:控制機與伺服控制分開,用單晶片構成步進電機控制

器可減輕數控控制機的負擔。

1.2.5 智慧型介面:

微電腦系統,特別是較大型的工業測控系統㆗,除周邊裝置﹝印表機、鍵盤、

磁碟、CRT﹞外,還有許多外部通訊,採集,多路分配管理,驅動控制等介面。

這些周邊裝置與介面如果完全由主機進行管理,勢必造成主機負擔過重,降低執

行速度。如果採用單晶片進行介面的控制與管理,單晶片微處理器可與主機平行

工作,大大的提昇系統的執行速度。如在大型資料採集系統㆗用單晶片對類比/

數位轉換介面進行控制不僅可以提高採集速度,還可以對資料作預先處理,如數

位濾波,線性化處理,誤差修正等。在通訊介面㆗採用單晶片可對資料進行編碼

解碼,分配管理,接收/發送控制﹝1﹞。

10

Page 11: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

第㆓章 動作原理與公式推導

2.1 動 作 原 理:

當我們設計㆒個自動化系統時,我們必須先畫出系統方塊圖,也就是將整個

系統,依照各個元件不同之特性,分割成若干個字系統,以便於系統分析。本系

統之流程圖﹝見圖 2.1﹞,方塊圖見﹝圖 2.2﹞。

由方塊圖我們可看出整個系統大概動作如㆘:

1. 系統啟動時我們可以由開關設定所要控制的溫度㆖㆘限,並存入圍電腦

內。

2. 由感測器本身將所測得之溫度轉換輸出成為數位信號。

3. 數位信號由單晶片讀入。

4. 所讀出之數位信號及為目前之溫度。

5. 將目前溫度和所期望的溫度㆖㆘限作為比較,如果高於溫度㆖限則打開

冷卻器關閉加熱器,讓其降溫。如果低於溫度㆘限,則由單晶片送出訊

號打開繼電器,另加熱器開始加熱,如此已達成溫度控制的目的。

此外再以㆖動作進行時,顯示器也顯示出洗統目前的狀況﹝如目前之溫度、

欲控制溫度㆖㆘限,加熱顯示燈,冷卻顯示燈…等﹞這些功能解可以從軟體規劃

來完成。

11

Page 12: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

系統流程圖

溫度感知器 及 感測電路

加熱壺 加熱器 輸出 控制器

8051 微電腦 數位控制系統

Switch 開關輸入

顯示器

圖 2.1 方塊圖

12

Page 13: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

系統方塊圖 設定 8051 110V V + CONTROLLER HEATER 溫度 C _

ON/OFF PD PI

PID

單刀雙

擲繼電

500W

( )CPERCOUNT

REMAINCOUNTCPERCOUNT

READTEMPTEMPERTURE

_____

5.0_

−+

−−

圖 2.2 方塊圖

13

Page 14: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

2.2 溫度計算公式:

由於我們所選用的溫度感測器功能十分強大,所以省去以往需要 A/D轉換

及放大電路的溫度感測類比訊號;感測器㆗已經內建計算公式,㆘列就是其計算

公式:

( )CPERCOUNT

REMAINCOUNTCPERCOUNTREADTEMPTEMPERTURE__

___5.0_ −+−−

2.3 誤差探討:

DS1821精確值在 0℃至 85℃存在± 1℃之誤差。

14

Page 15: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

第㆔章 實驗計畫與工作進度

3.1實驗計畫:

1.測試單晶片及顯示器等硬體設備。

2.設計硬體線路。

3.檢測量測溫度和實際溫度是否符合要求。

4.整合架構。

5.功能加強。

3.2目前進度:

3.2.1硬體方面:

已完成部分:

1 8051微電腦測試部分。

2顯示溫度之七節燈管之設計與實驗。

3以㆔個 sw開關來輸入所欲控制溫度㆖㆘限。

4以兩個 5V單刀雙擲繼電器來控制加熱、冷卻器之開關。

5加熱顯示燈、冷卻顯示燈、控制器動作顯示燈,七節顯示器在溫度

㆖㆘限設定外之動作。

已完成的硬體線路請見﹝圖 3.1﹞。

未完成部分:

1未增裝自動供水系統。﹝此裝置能使溫度盡量保持恆溫,不受加

熱器加熱過度而出現的大幅度溫度震盪﹞。

2 冷卻器裝置部分。﹝如須加裝冷卻器,必須使用電扇或冷氣並增加

受熱體之壓力,已達成冷卻的目的,步驟會繁複㆒些,但會使溫度

的掌控更為理想﹞。

15

Page 16: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

3.2.2軟體方面:

已完成部分:

1將 DS1821所輸出隻 8bit 2位元馬和溫度㆖㆘限作為比較。

2七節顯示器之顯示程式。

3顯示燈之顯示。

4功能鍵之設計。

16

Page 17: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

1 2 3 4 5 6

A

B

C

D

654321

D

C

B

A

Title

Number Re visionSize

B

Da te: 24-Apr-2003 She et of File: C:\Program File s\De sign Explore r 99 SE\Exa mple s\BACKUP~21.DDBDra wn By:

VCCR?

RES1

TR42N3906

TR42N3906

TR62N3906

R2100K

R3100K

R4100K

EA/VP31

X119

X218

RESET9

RD17

WR16

INT012 INT113

T014 T115

P101

P112

P123

P134

P145

P156

P167

P178

P00 39

P01 38

P02 37

P03 36

P04 35

P05 34

P06 33

P07 32

P20 21

P21 22

P22 23

P23 24

P24 25

P25 26

P26 27

P27 28

PSEN 29ALE/P 30TXD 11RXD 10

U289C51

8051

S?SW-SPST

S?SW-SPST

S?SW-SPST

VCC

C?

CAPACITOR

C?

CAPSEMIC?

CAPSEMI

Y?CRYSTAL

R?

RES1

Q?

NPN

R?RES1

162738495

J?

DB9

1 2 3

JP?HEADER 3

C?CAPACITOR

H LALARM

D?

LED

D?

LED

D?

LED

D?LED

D?LED

GND

R?

RES1

R?

RES1

R?

RES1

VCC VCC

Q?PNP

Q?PNP

123456

J?

CON6

R?RES1

R?RES1

R?

RES1R?

RES1

RELAY1 BC-115C RELAY2 BC-115C

40

A1

B2

C3

E14

E25

E36

Y0 15

Y1 14

Y2 13

Y3 12

Y4 11

Y5 10

Y6 9

Y7 7

U?

74LS138

VCCVCC

VCC

VCC

VCC

RELAY-CTRLARELAY-CTRLB

Port

Port

Port

Port

Port

VCC

圖 3.1 成品電路圖

3.3 動作說明:

17

Page 18: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

進入設定模式時七節顯示器顯示幕會快速閃爍,如果 10秒不做任何動作,

自動返回偵測模式:

A .設定溫度極限:

SW3…選擇【H】﹝溫度㆖限﹞【L】﹝溫度㆘限﹞,SW1 :增量 SW2:㆘

降。

例:設定㆖限溫度 31度

按㆒㆘ SW3﹝螢幕顯示【H】﹞,在按 SW1或 SW2增減量至 31,再按 SW3

儲存設定資料。

例:設定㆘限溫度 29度

按兩㆘ SW3﹝螢幕顯示【L】﹞,在按 SW1或 SW2增減量至 29,再按 SW3

儲存設定資料。

B .查看設定數據:

按㆘ SW3不要放﹝螢幕顯示【H】﹞,再按㆒㆘ SW1螢幕顯示設定之㆖限

數據,或按㆒㆘ SW2螢幕顯示設定之㆘線數據,當放開 SW3時,自動返回偵測

模式﹝如果未返回偵測模式,可按㆒㆘ SW1再按㆒㆘,SW3即可﹞。

18

Page 19: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

J2接點及 LED1、LED3說明:

J2-4,J2-5,J2-6為㆖限控制輸出

J2-1,J2-2,J2-3為㆘限控制輸出

當溫度在設限範圍內時:

J2-6與 J2-5短路,J2-3與 J2-1短路

溫度超過㆖限設定時:

1 . LED1,LED3亮 2 .J2-6 J2-4短路 LED 3 .螢幕閃爍警示

溫度超過㆘限設定時:

1 . LED2,LED3亮 2 .J2-3 J2-2短路 LED 3 .螢幕閃爍警示

溫度超過㆖㆘限溫度設定時,告警必須等溫度降至㆖㆘限設定的㆗間值方停止告

警。

例如:設定㆖限溫度設定 31度,㆘限溫度設定 29度

當溫度超過 31度時,LED1,LED3告警,J2-6與 J2-4短路﹝啟動冷卻裝

置﹞,七節顯示器螢幕閃爍警示,等溫度降至 30度時停止告警,LED燈全滅

七節顯示器停止閃爍,J2-6與 J2-4開路﹝停止冷卻裝置﹞。

19

Page 20: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

第㆕章 硬體規格說明

4.1 8051系列簡介:

8051族系於 1980年,由 INTEL公司所發展的,其結構是由 8048的延伸,

改進 8048的缺點,其 ROM,RAM皆可以擴充至 64K,也可以增加如乘﹝MUL﹞、

除﹝DIV﹞、減﹝CJNE﹞、比較推入﹝PUSH﹞、提出﹝POP﹞,16位元的資料

指標布林代數院算等指令及串列通訊能力與五個㆗斷源 8052有 6個㆗斷源,其

種類見﹝表﹞﹝2﹞。

其特性如㆘:

1 .專為控制應用所設計的八位元 CPU。

2 .有完整的單位元邏輯運算指令。

3 .有 32條 4個 PORT雙向且每條都可以被單獨定址的 IO。

4 .內部有 128byte可供讀寫的 RAM。

5 .內部有兩個 16位元 Timer Counter。

6 .有㆒個通信用的全雙工 UART串列 IO。

7 .可接受 5個㆗斷源,且有兩層優先權的㆗斷結購。

8 .內部有時脈震盪器最高頻率可到 12MHz。

9 .內部有 4K的程式記憶體。

10 .可再外部擴充到 64K程式記憶體﹝EPROM﹞。

11 .可再外部擴充 64K資料記憶體﹝RAM﹞。

20

Page 21: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

31 EA/VP P0.0 39 19 X1 P0.1 38 P0.2 37

18 X2 P0.3 36 P0.4 35 9 RESET P0.5 34 P0.6 33

12 INT0 P0.7 32 13 INT1 P2.0 21 14 T0 P2.1 22 15 TI P2.2 23 P2.3 24 P2.4 25 1 P1.0 P2.5 26 2 P1.1 P2.6 27 3 P1.2 P2.7 28 4 P1.3 RD 17 5 P1.4 WR 16 6 P1.5 PSEN 29 7 P1.6 ALE/P 30 8 P1.7 TXD 11 RXD 10

圖 4.1 8051 40隻接腳圖

21

Page 22: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

表 4.1 MCS-51族系單晶片

型號 8031 8051 8751 8032 8052 8752

ROM 0 4K 0 0 8K 0

RAM 128 128 128 256 256 256

EPROM 0 0 4K 0 0 8K

8051/8052 :公廠燒錄型,內含 ROM。

P8751 :燒錄㆒次型,內含 PROM。

8751/8752 :可重複燒錄型,內含 EPROM。

87C51/87C52:省電型﹝低消耗功率﹞。

4.2 DS1821

22

Page 23: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

4.2.1 DS1821之介紹:

DS1821是美國 DALLAS公司生產的單線數字溫度傳感器,它具有微型化,

低功耗、高性能、抗干擾能力強、易配合微處理器等優點,特別適合構成多點溫

度測控系統,可直接將溫度轉化成串行數字信號供應微電腦處理。並可工作於-55

℃至+125℃之溫度之間。

Ds1821採用 3腳 PR-35封裝,其接腳排列如﹝圖 4.2.1﹞所示:

GND :接㆞

D Q :資料輸入及輸出端﹝單線總線﹞

VDD :外部+5V電源供應端

圖 4.2.1 DS1821 接腳

4.2.2. DS1821內部結構:

23

Page 24: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

DS1821主要包括溫度傳感器、64位元 ROM單線接口、存放㆗間數據高速暫

存器、用於儲存用戶設定的溫度㆖㆘限值得 觸發器儲存與控制邏輯,8

位元循環校驗碼﹝CRC﹞發生迄等部份,如﹝圖 4.2.2﹞所示:

LH TT 和

圖 4.2.2 DS1821內部方塊圖

4.2.3 DS1821溫度量測電路:

24

Page 25: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

DS1821內部測量溫度時使用特有的溫度測量技術。其測量電路如﹝圖

4.2.3﹞所示。DS1821內部的低溫度係數震盪器能產生穩定的頻率信號 ,高溫

度係數震盪器則將被測溫度轉換成頻率訊號 當計數器打開時 DS1821對

數,計數器開通時間由高溫度係數震盪器決定。內部亦也有斜率累加器,可對頻

率的非線性給予補償,測量結果存入溫度暫存器㆗

0f

0f 0f

圖 4.2.3 DS1821溫度量測電路

4.2.4 DS1821輸出之訊號與位址:

25

Page 26: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

表 4.2輸出之訊號與位址

﹝附錄 1﹞關於溫度感測器 DS1821的詳細介紹請參考附錄 1。

第五章 軟體說明

26

Page 27: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

5.1 軟體流程圖說明:

小於

LOWLEVEL?

亮紅燈

打開加熱器 亮綠燈

返回主程式

呼叫顯示 器副程式

大於

HIGHLEVEL?

㆗斷副程式

圖 5.1軟體流程圖說明

27

Page 28: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

5.2 軟體程式:

Program name :Thermostat Control

;Ram Port Prog

COUNT EQU 5000 ;10msec Interrupt

CNT_0.2 EQU 04H ;200msec(0.2SEC)Counter Buffer

CNT_1 EQU 05H ;1 Second Counter Buffer

CNT_5 EQU 06H ;5 Sec Counter Buffer

FLAG1 EQU 42H ;8 Bit Flag

FLAG2 EQU 43H ;00HM Normal 55HM Higher AAH--Lower

SEG_7_1 EQU 30H ;Left SEG_7

SEG_7_2 EQU 31H ;Mid SEG_7

SEG_7_3 EQU 32H ;Right SEG_7

SET_H EQU 33H ;Set HIGH LEVEL

SET_L EQU 34H ;Set LOW LEVEL

STORE_H1 EQU 35H ;Store Setting High Temp

STORE_H2 EQU 36H ;

STORE_L1 EQU 37H ;Store Setting Low Temp

STORE_L2 EQU 38H ;

BINARY: EQU 39H ;Store Binary Buffer

STATUS1 EQU 07H ; 00H→NOMAL

; 22H→ �U"Wait + or N

; 33H→ U DSP Th Wait + or N

; 44H→ �L"Wait + or N

; 55H→ L DSP Th Wait + or N

28

Page 29: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

; 66H→ Press SW3

; 77H→ Press SW3 & SW1

; 88H→ Press SW3 & SW2

;;

DSP1 REG P0.2

DSP2 REG P0.1

DSP3 REG P0.0

SW1 REG P1.2

SW2 REG P1.1

SW1 REG P1.0

LED_H REG P1.3

LED_L REG P1.4

LED_ALM REG P1.5

RLY_H REG P3.6

RLY_L REG P3.7

THRM REG P1.7 ; Thermost Duty Cycle In

;

ORG 00H

JMP START

ORG 003H ; Set Interrupt Vector

RETI ;

ORG 00BH ;

29

Page 30: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

JMP TIMERO ; Timer0 Interrupt

ORG 0013H ;

RETI ;

ORG 001BH ;

RETI ;

ORG 0023H ;

RETI ;

;

ORG 30H

START: CLR RS0

CLR RS1

MOV R0,#00H

DJNZ R0,$

MOV SP,#60H ; Stack 60H~7FH

SETB TRO ; Enable Timer0

MOV TMOD,#00H

SETB IE.7

SETB IE.E

MOV TH0,#(8192-COUNT)/32

MOV TL0,(#8192-COUNT)/.MOD.32

INITIAL:

MOV CNT_0.2,#200 ; Set 0.2Sec Counter

30

Page 31: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

MOV CNT_1,#5

MOV CNT_5,#25 ; Set 5 Sec Counter

SET LED_H ; Dot Led Off

SET LED_L ;

SET LED_ALM ;

SET RLY_L ; Relay Off

SET RLY_H ;

MOV SEG_7_1,#3FH ; SEG_7 Display ~000"

MOV SEG_7_2,#3FH ;

MOV SEG_7_3,#3FH ;

SET FLAG1.0 ; Due 5 Secondstart Init

MAIN_PROG:

CALL READ_THM ; Read Thermostart

CALL CHECK_LVL ; Check Over Set Range

MN1:

CALL SCAN_KEY_DSP

JMP MAIN

OVER_RNG:

31

Page 32: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

CJNZ A,#55H,OVER_HIGH

CALL OVER_LOW

JMP MN1

OVER_HIGH:

CLR LED_H

CLR LED_ALM

CLR RLY_H

MOV CNT,#05H ; Storbe 1Sec On ←→ 1 Sec Off

JMP MN1

OVER_LOW:

CLR LED_L

CLR LED_ALM

CLR RLY_L

MOV CNT,#05H ; Strobe 1Sec On ←→ 1Sec Off

RET

;

; Timer0 interupt

TIMER0:

32

Page 33: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

MOV TH0,#(8192-COUNT)/32

MOV TL0,(#8192-COUNT)/.MOD.32

;-------------------------------------Scan Display 7 Segment Led

JNB DSP1,DSS1

CALL OP_SEG_7

CLR DSP2

SET DSP1

JMP NEXTT

DSS1:

JNB DSP2,DSS2

CALL OP_SEG_7

CLR DSP3

SET DSP2

JMP NEXTT

DSS2:

JNB DSP3,NEXTT

CALL OP_SEG_7

CLR DSP1

SET DSP3

33

Page 34: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

NEXTT:

DJNZ CNT_0.2,EXIT

MOV CNT_0.2,#200

DJNZ CNT_1,EXIT

MOV CNT_1,#5

CJNE FLAG2,#00H,EXIT

RET1

;---------------------------------------------------------------

; Scan SW1〜SW3 & Change 3 7_Segment Buffer

;---------------------------------------------------------------

SCAN_KEY_DSP:

JNB SW3,P3

CJNE STATUS,#00H,XX1

CJNE STATUS,#22H,

P3:

JNB SW1,P13 ;Press SW1 & SW3

JNB SW2,P23 ;Press SW2 & SW3

RET

34

Page 35: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

P13:

MOV STATUS,#66H

CALL DSP_HI

P23:

MOV STATUS,#77H

CALL DSP_LO

Q_EXT:

RET

;MEASURE PULSE

READ_THM:

CLR EA

$HI: JB THRM,$HI

$LO: JNB THRM,$LO

;LOW TO HIGH TRANSITION

H_JST:

MOV DPTR,#0000H

MOV R0,#10 ;Read Counter

35

Page 36: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

$0: INC DPTR

JB THRM,$0

$1: JNB THRM,$1

DJNZ R0,$0

MOV R4,DPL

MOV R5,DPH

;

H_L:

MOV DPTR,#0000H

MOV R0,#10

$HI JB THRM,$HI

$LO JNB THRM,$LO

;

$0 INC DPTR

JNB THRM,$0

$1:

INC DPTR

JNB VHRM,$1

DJNZ R0,$0

;

MOV R6,DPL

MOV R7,DPH

36

Page 37: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

SETB EA

;

MOV STORE_H1,R4

MOV STORE_H2,R5

MOV STORE_L1,R6

MOV STORE_L2,R7

MOV R4,STORE_H1

MOV R5,STORE_H2

MOV R6,#00H

MOV R7,#00H

;

MOV 0FH,#00H

MOV 0EH,#00H

MOV 0DH,#00H

MOV 0CH,#212

CALL MUL_4BYTE

;

MOV 0FH,#00H

MOV 0EH,#00H

MOV 0CH,STORE_L1

MOV 0DH,STORE_L2

CALL MUL_4BYTE

MOV A,#04H

SUBB A,#68

MOV BINARY,A

CALL TRANS

37

Page 38: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

CALL ASCII_CNV

;

TRANS:

MOV A,BINARY

MOV B,#10

DIV AB ;A=A/10,B=A Mod 10

ANL A,#0FH ;A=A And 0FH

JNZ $1

MOV A,#0FH

$1: SWAP A

ORL A,B

RET

;

OP_SEG_7:

MOV A,CNT

MOV DPTR,#TABLE

MOVC A,@A+DPTR

CALL OUTPUT

TABLE: DB 3FH ;0

DB 06H ;1

DB 5BH ;2

DB 4FH ;3

DB 66H ;4

38

Page 39: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

DB 6DH ;5

DB 7DH ;6

DB 27H ;7

DB 7FH ;8

DB 6FH ;9

DB 06H ;H

DB 06H ;L

OUTPUT:

CPL A

MOV P2,A

RET

;

END

結 論

關於溫度控制已經成為我們日常生活㆗不可缺少的㆒樣系統,如汽車引擎之

39

Page 40: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

溫度控制、熱水氣之溫度限制、冷氣機空調溫度設定,水族箱水溫的變化量、工

廠鎔爐之溫度㆖限…等。如果溫度的量度能夠不夠精準,那可能會使得我們至於

㆟身危險之㆗,唯有精確的測量,適時的警訊,才能讓我們更能得心應手於手邊

事務並事先防範危險,這才是本次專題最大的目的。

這次發表的專題,實體大致㆖穩定,誤差值大約在±1° C之間,如需求更加

精確;則對於 DS1821溫度感測元件認知方面需要更加強,目前尋找的資料㆗,

大部分來自國外及大陸方面的書籍較多;對於溫度變化與輸入的數位信號資料皆

來自其原公司之書面資料,我們並未實㆞操作量測。

對於這次專題,我們並未加裝冷卻器,如果能夠加裝冷卻器;並且將 SW開

關耿改換成 4*4件判輸入的話,本專題將更加盡善盡美。

參 考 文 獻

﹝1﹞鄭錦城編著,8051單晶片專題製作,台北,益眾資訊,89年 3版。

﹝2﹞劉銘㆗ 林琮烈編著,MCS-51單晶片原理與 I/O應用,台北,儒林圖書公

40

Page 41: 逢 自動控制工程學系專題製作 專 題 - fcu.edu.t · 福倉電子﹝Fomotech﹞在技術㆖的指導,讓我們在製作此專題㆖有更新㆒步的突 ... DS1821 作為溫度之檢測,將輸出的數位信號經由

司,民國 90年。

41