1. Trang chủ
  2. » Luận Văn - Báo Cáo

Đo và ổn định độ sáng phòng

28 395 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Đo và ổn định độ sáng phòng
Thể loại Báo cáo
Định dạng
Số trang 28
Dung lượng 401,5 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Đề tài : Đo và ổn định độ sáng phòng

Trang 1

Đề tài: Đo và ổn định độ sỏng phũng

NộI DUNG BáO CáO :

I.Mục đớch yờu cầu

II.Sơ đồ khối tổng quát

III.Mạch nguyên lý,tính toán và mạch in

IV.Lu đồ thuật toán

V.Phần mềm điều khiển

Trang 2

I Mục đớch yờu cầu

Trong thực tế, nhiều khi ta cần đo và ổn định độ sỏng của một phũng, một

toà nhà Mục đớch của bài toỏn này là thiết kế hệ thống đo và ổn định độ

sỏng phũng một cỏch tự động Khoảng ỏnh sỏng cần ổn định đựơc nhập vào

theo yờu cầu sử dụng, hệ thống điều khiển sẽ đo và thay đổi độ sỏng phũng

theo yờu càu bằng cơ cấu rốm cửa và búng đốn

II Sơ đồ khối tổng quỏt

1.Sơ đồ khối :

Sơ đồ khối tổng quát của hệ thống đo lờng và điều khiển là:

Từ sơ đồ khối tổng quát, dựa theo yêu cầu bài toán ta có sơ đồ khối

cụ thể của mạch đo và điều khiển ánh sáng là:

I/O

So sánh

àP/àC/PCA/D

Chỉ thị kết quả

Trang 3

2.Giới thiệu các linh kiện chính:

a.Quang trở:

Đặc trng của các cảm biến điện trở là sự phụ thuộc của điện trở vào thông lợng bức xạ và phổ của bức xạ đó.Các tế bào quang dẫn là một trong những cảm biến quang có độ nhạy cao.Cơ sở vật lý của tế bào quang dẫn là hiện tợng quang dẫn do kết quả của hiệu ứng quang điện nội:hiện tợng giải phóng hạt tải điện trong vật liệu dới tác dụng của ánh sáng làm tăng độ dẫn của vật liệu

Trong đề tài này ta dùng quang trở RCdS chế tạo bằng bán dẫn đa tinh thể

đồng nhất.Độ nhạy của quang trở rất cao và còn phụ thuộc vào nhiệt độ làm việc.Điện trở tối của nó khoảng 104-109 ôm ở 270c.Điện trở giảm rất nhanh khi

độ rọi tăng,đơn vị của độ rọi là:LUX

b Bộ chuyển đổi tương tự/số

Boọ chuyeồn ủoồi tửụng tửù – soỏ ủửụùc sửỷ duùng trong heọ thoỏng laứ ADC

0809 ẹaõy laứ IC ủửụùc cheỏ taùo theo coõng ngheọ CMOS goàm moọt boọ chuyeồn ủoồi tửụngtửù - soỏ 8 bit, boọ choùn 8 keõnh vaứ moọt boọ logic ủieàu khieồn tửụng thớch.Boọ chuyeồn ủoồi AD 8 bit naứy duứng phửụng phaựp chuyeồn ủoồi xaỏp xổ lieõn tieỏp Boọ choùn keõnh coự theồ truy xuaỏt baỏt kyứ keõnh naứo trong caực ngoừ vaứo tửụng tửù moọt caựch ủoọc laọp

Phửụng phaựp ADC xaỏp xổ lieõn tieỏp (Successive- Approximation ADC) laứ moọt trong nhửừng phửụng phaựp ủửụùc sửỷ duùng roọng raừi Tuy maùch ủieọn phửực taùp nhửng thụứi gian chuyeồn ủoồi laùi ngaộn hụn Phửụng phaựp

chuyeồn ủoồi ADC xaỏp xổ lieõn tieỏp coự thụứi gian chuyeồn ủoồi coỏ ủũnh khoõng phuù thuoọc vaứo ủieọn aựp ngoừ vaứo

+

-DAC Thanh ghi ủieàu khieồn Logic ủieàu khieồn MSB LSB

Trang 4

- Hoạt động:Khi tác động cạnh xuống của xung start thì ADC bắt đầu chuyển đổi Mạch logic điều khiển set bit có nghĩa lớn nhất (MSB) của thanh ghi điều khiển lên mức cao và tất cả các bit còn lại ở mức thấp Số nhị phân ra ở mạch thanh ghi điều khiển được qua mạch DAC để tạo

ra điện áp tham chiếu V’a

+ Nếu V’a >Va thì ngõ ra bộ so sánh xuống mức thấp, làm cho mạch logic điều khiển xóa bit MSB xuống mức thấp

+ Nếu V’a<Va thì ngõ ra của bộ so sánh vẫn ở mức cao và làm cho mạch logic điều khiển giữ bit MSB ở mức cao

Tiếp theo mạch logic điều khiển đưa bit có nghĩa kế bit MSB lên mức cao và tạo ở ngõ ra khối DAC một điện áp tham chiếu V’a rồi đem

so sánh tương tự như bit MSB ở trên Quá trình này cứ tiếp tục cho đến bit cuối cùng trong thanh ghi điều khiển Lúc đó V’a gần bằng Va ngõ ra của mạch logic điều khiển báo kết thúc chuyển đổi

Như vậy mạch đổi ra n bit chỉ mất n chu kỳ xung clock nên có thể đạt tốc độ rất cao Tuy nhiên nhược điểm của phương pháp ADC xấp xỉ liên tiếp là không thể đáp ứng với tín hiệu tương tự vào biến đổi cực nhanh

- Sơ đồ chân ADC 0809:

ADC0809 28

15

1

14

IN2 IN1 IN0 A B C ALE 2 -1 2 -2 2 -3 2 -4 2 -8 REF 2 -6

START

IN3 IN4 IN5 IN6 IN7 EOC 2 -5 OE CLK V

CC REF GND 2 -7

Trang 5

+ A, B, C : giải mã chọn 1 trong 8 ngõ vào+ Z-1 đến Z-8 : ngõ ra song song 8 bit

+ ALE : cho phép chốt địa chỉ

- Các đặc điểm của ADC 0809:

+ Độ phân giải 8 bit+ Tổng sai số chưa chỉnh định ± ½ LSB; ± 1 LSB+ Thời gian chuyển đổi: 100µs ở tần số 640 kHz+ Nguồn cung cấp + 5V

+ Điện áp ngõ vào 0 – 5V+ Tần số xung clock 10kHz – 1280 kHz+ Nhiệt độ hoạt động - 40oC đến 85oC+ Dễ dàng giao tiếp với vi xử lý hoặc dùng riêng+ Không cần điều chỉnh zero hoặc đầy thang

- Nguyên lý hoạt động: ADC 0809 có 8 ngõ vào tương tự, 8 ngõ ra

8 bit có thể chọn 1 trong 8 ngõ vào tương tự để chuyển đổi sang số 8 bit

Các ngõ vào được chọn bằng cách giải mã Chọn 1 trong 8 ngõ vào tương tự được thực hiện nhờ 3 chân ADDA , ADDB , ADDC như bảng trạng thái sau:

0 0 0 0 1 1 1

0 0 1 1 0 0 1

0 1 0 1 0 1 0

IN0 IN1 IN2 IN3 IN4 IN5 IN6

Trang 6

1 1 1 IN7

Sau khi kích xung start thì bộ chuyển đổi bắt đầu hoạt động ở cạnh xuống của xung start, ngõ ra EOC sẽ xuống mức thấp sau khoảng 8 xung clock (tính từ cạnh xuống của xung start) Lúc này bit có trọng số lớn nhất (MSB) được đặt lên mức 1, tất cả các bit còn lại ở mức 0, đồng thời tạo ra điện áp có giá trị Vref/2, điện thế này được so sánh với điện thế vào Vin

+ Nếu Vin > Vref/2 thì bit MSB vẫn ở mức 1

+ Nếu Vin < Vref/2 thì bit MSB vẫn ở mức 0

Tương tự như vậy bit kế tiếp MSB được đặt lên 1 và tạo ra điện thế có giá trị Vref/4 và cũng so sánh với điện áp ngõ vào Vin Quá trình cứ tiếp tục như vậy cho đến khi xác định được bit cuối cùng Khi đó chân EOC lên mức 1 báo cho biết đã kết thúc chuyển đổi

Trong suốt quá trình chuyển đổi chân OE được đặt ở mức 1, muốn đọc dữ liệu ra chân OE xuống mức 0, nếu có 1 xung start tác động thì ADC sẽ ngưng chuyển đổi Mã ra N cho một ngõ vào tùy ý là một số nguyên

) ( )

(

) ( ) (

256

− +

ref IN

V V

V V N

Trong đó: Vin : điện áp ngõ vào hệ so sánh

Vref(+) : điện áp tại chân REF(+)

Vref(-) : điện áp tại chân REF(-)

Nếu chọn Vref(-) = 0 thì N = 256

) ( +

ref

in

V V

Vref(+) = Vcc = 5V thì đầy thang là 256

Giá trị bước nhỏ nhất: 1 LSB = 285−1 = 0,0196 V/byte

Vậy với 256 bước điện áp vào lớn nhất của ADC0809 là Vin = 5V

- Mạch tạo xung clock cho ADC 0809: Sử dụng mạch dao động dùng các cổng NOT để tạo dao động cho ADC như sau:

Trang 7

Tần số dao động của mạch là f = 3RC1

Tần số dao động chuẩn là 600 kHz

Suy ra 640 = 3RC1

Với R từ 100Ω đến vài kΩ Ta chọn R =1 kΩ⇒ C = 500 pF

c.Bộ vi điều khiển

Hệ thống sử dụng bộ vi điều khiển AT89C51 có các đặc điểm sau :

+ 4 kbyte ROM, 128 bit RAM

+ 4 port vào ra 8 bit

+ 2 bộ định thời 16 bit

+ 1 port nối tiếp

+ 64 KB không gian bộ nhớ chương trình mở rộng

+ 64 KB không gian bộ nhớ dữ liệu mở rộng

- Sơ đồ khối bộ vi điều khiển AT89C51

Vcc

500 pF

10K

IK

IK

Trang 8

TXD RXD

P0 P1 P2 P3EA\ RST PSEN ALE

CPU

Port nối tiếp Các port I/O

Tạo dao

động

Đếm /

Định thời

XTAL

Trang 9

- Sơ đồ chân bộ vi điều khiển AT89C51

- Chức năng các chân:

+ Port0: là port đa hợp từ chân 32 đến 39 Nếu không dùng bộ nhớ mở rộng nó có chức năng như các đường vào ra Đối với các thiết kế sử dụng bộ nhớ mở rộng nó còn được sử dụng làm các đường địa chỉ

+ Port1: là một port vào ra từ chân 1 đến 8 Các chân được ký hiệu P1.0, P1.1, P1.2 …P1.8 có thể dùng cho các thiết bị ngoài nếu cần Port1 chỉ được dùng trong giao tiếp với các thiết bị ngoài.+ Port2: là một port có công dụng kép từ chân 21 đến 28, được dùng như các đường xuất nhập hoặc là byte cao của bus địa chỉ đối với các thiết kế dùng bộ nhớ mở rộng

+ Port3: từ chân 10 đến 17 Các chân của port này có nhiều chức năng, các công dụng chuyển đổi có liên hệ với các đặc tính đặc biệt của AT89C51 như ở bảng sau :

AT89C51

X1

19 X218

P3.1

11 P3.010

Trang 10

Bit Tên Chức năng chuyển đổi

Dữ liệu nhận cho port nối tiếp Dữ liệu phát cho port nối tiếp Ngắt 0 bên ngoài

Ngắt 1 bên ngoài Ngõ vào của timer/counter 0 Ngõ vào của timer/counter 1 Xung ghi bộ nhớ dữ liệu ngoài Xung đọc bộ nhớ dữ liệu ngoài+ PSEN (Program Store Enable): AT89C51 có 4 tín hiệu điều khiển PSEN là tín hiệu ra trên chân 29, nó là tín hiệu điều khiển cho phép bộ nhớ chương trình mở rộng và thường được nối đến chân OE (Output Enable) của một EPROM để cho phép đọc các byte mã lệnh PSEN sẽ ở mức thấp trong thời gian lấy lệnh Các mã nhị phân của chương trình được đọc từ EPROM qua bus và được chốt vào thanh ghi lệnh của AT89C51 để giải mã lệnh Khi thi hành chương trình trong ROM nội PSEN sẽ ở mức thụ động (mức cao)

+ ALE (Address Latch Enable): tín hiệu ra ALE trên chân 30 AT89C51dùng ALE để giải các bus địa chỉ và dữ liệu đa hợp Khi port 0 vừa là bus dữ liệu vừa là byte thấp của địa chỉ, ALE là tín hiệu để chốt địa chỉ vào một thanh ghi bên ngoài trong nữa đầu của chu kỳ bộ nhớ Sau đó, port 0 dùng để xuất hoặc nhập dữ liệu trong nữa sau chu kỳ của bộ nhớ

+ EA (External Access): Tín hiệu vào EA trên chân 31 thường được mắc lên mức cao (+5V) hoặc mức thấp (GND) Nếu ở mức cao, AT89C51 thi hành chương trình từ ROM nội trong khoảng địa chỉ thấp (4K) Nếu ở mức thấp, chương trình chỉ được thi hành từ bộ nhớ mở rộng Nếu EA được nối mức thấp, bộ nhớ bên trong chương trình AT89C51 sẽ bị cấm và chương trình thi hành từ EPROM mở rộng Người ta còn dùng chân EA làm chân cấp điện áp 21V khi lập trình cho EPROM trong AT89C51

Trang 11

+ RST (Reset): Ngõ vào RST trên chân 9 là ngõ reset của AT89C51 Khi tín hiệu này được đưa lên mứùc cao trong ít nhất 2 chu kỳ, các thanh ghi trong AT89C51 sẽ được thiết lập về những giá trị thích hợp để khởi động hệ thống RST có thể được kích khi cấp điện dùng một mạch R-C Sơ đồ mạch Reset được sử dụng

trong hệ thống:

Trạng thái của tất cả các thanh ghi của AT89C51/8031 sau khi reset hệ thống được tóm tắt trong bảng sau:

Thanh ghi Nội dung

00H

00H 07H 0000H FFH XXX00000B 0XX00000B 00H

00H 00H 0XXXXXXB 0XXX0000B+ Các ngõ vào bộ dao động trên chip: Như đã thấy trong các hình trên, AT89C51 có một bộ dao động trên chip Nó thường được nối với thạch anh giữa hai chân 18 và 19 Tần số thạch anh thông thường là 12MHz

Trang 12

+ Các chân nguồn: AT89C51 vận hành với nguồn đơn +5V Vccđược nối vào chân 40 và Vss (GND) được nối vào chân 20.

d.Cấu trúc của động cơ bước

H×nh: CÊu trĩc cđa motor bíc

Trang 13

Hình: Sơ đồ nguyên lí của khối khuếch đại công suất động cơ.

Bộ khuếch đại công suất sử dụng 1 transitor công suất cho mỗi cuộn dây:

"ABCD"= "0001" → "0010" → "0100" → "1000" → "0001"

→ "ABCD" thực hiện lệnh dịch 4 lần, động cơ quay 1 vòng

T2

Ta có công thức: ∆n=k∆T

→ "ABCD" quay16,6x4lần = 66,4lần/giây

Với xung nhịp = 17,4kHz → cứ 17,4kHz/66.4=262 xung =∂1 "ABCD" quay 1 lần

n2=10000vòng phút, tơng tự trên, 26 xung =∂2 "ABCD" quay 1 lần

12V QC

QB QA

Trang 14

Khi nhiệt độ biến thiên từ T0 đến T8, thì biến chỉ báo nhiệt độ VT biến thiên từ

000.0000.0000b đến 8x255=2040=111.1111.1000b

→ k=1.69.10-5

Khi ở nhiệt độ TX→ 1/∂ - 1/262 = 1,69.10-5x(VT-0)

Nh vậy, với tần số xung là 17,4kHz thì cứ ∂ xung thì "ABCD" quay 1 lần

III.Sơ đồ nguyên lý,tính toán và mạch in.

-12V

khối hiển thị

Q10 2N2222

+ C22

R22 1K

U33C 74LS04

R30

U7

ADC0809

10 9 7

17 8 20

CLK OE EOC

D0 D3 D6

START ALE

REF+

IN0 IN3 IN6 A

Q14 2N2222

Q14 2N2222

R24 1K

C6 104

18 15 12 COM GND

IN1 IN4 IN7 OUT1 OUT4 OUT7

5V

X1

U33A 74LS04

SW4 RESET

5V

Enter X2

+ C16

U14

7447

7 6

4 5 13 10 14

D0 D3

BI/RBO RBI LT A D G

C2 33pF

SW1 A5

R9

Q13 2N2222

R19 C10

khối tạo xung cho ADC0809

CTRL1

X8 X10 C8

6 A Y3 Y6

G1 G2A

1K

Q15 2N2222

R15 D4

Q9 2N2222

U33F 74LS04

6 A Y3 Y6

G1 G2A

Q12 2N2222

khối nguồn

+12V

PhimTang

U34F 74LS04

U33B 74LS04

Q5 2N2222

X3

+

C12 1000uF

31

1 4 7 21 24 27 10 13 16 39 36 33 RST

GND PSEN ALE/PROG

EA/VPP

P1.0 P1.3 P1.6 P2.0/A8 P2.3/A11 P2.4/A12 P2.5/A13 P2.6/A14 P3.0/RXD P3.3/INT1 P3.4/T0 P3.7/RD

P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 P0.4/AD4 P0.5/AD5 P0.6/AD6

+

C11 2200uF

N1 A7

Trang 15

2.TÝnh to¸n khèi c¶m biÕn.

(với Uso là điện áp sau khi chuyển đổi A/D)

thay vào biểu thức trên ta được

Đồ thị biểu thị sự phụ thuộc của điện trở CDS vào độ sáng

coi gần đúng sự phụ thuộc trên là tuyến tính, ta có:

5 V

1 2 V

- 1 2 V

V T 0 -

Trang 16

E = b – a.R (3.4)bằng thực nghiệm ta xác định được cặp các giá trị R1, R2 tương ứng với E1,

Trang 17

Sơ đồ mạch in tổng quát

Trang 18

IV Lưu đồ thuật toỏn

V Phần mềm điều khiển

Chơng trình đựoc viết bằng ngôn ngữ lập trình C trên môi trờng RIDE

Chơng trình đợc chia thành 5 module chính:

1 Module khai báo

2 Module điều khiển ADC

Nhận dữ liệu

từ cảm biến

Xử lí dữ liệu và đưa tín hiệu tương ứng ra cơ cấu chấp hành

Hiển thị ra đèn LED các giá trị về

ánh sáng

Trang 19

Module khai báo: đây là 1 tệp tiêu đề đặt tên là “define.h”

độ cần ổn định

//************************************************************

#include <define.h>

//Khai bao cac bien

extern unsigned int E, EDuoi, ETren;

//Khai bao cac ham

void HienthiLEDDuoi(); //Display to 7 bar LED gia tri can duoi

void HienthiLEDTren(); //Display to 7 bar LED gia tri can tren

void Hienthi(unsigned time);

void Delay(unsigned int time);

void ThietLap()interrupt 0; //Ngat ngoai 0

// -void ThietLap()interrupt 0 //Ngat ngoai 0

Trang 21

#include <define.h>

void Delay(unsigned int time);

void Hienthi(unsigned time);

// -unsigned char QuetDuLieuSo()

{

unsigned char so,i;

unsigned int Sum;

Trang 22

#include <define.h>

// Variables used in this program

extern unsigned int E, EDuoi, ETren;

bit Q0_hn, Q1_hn, Q2_hn, Q3_hn, Q0_ht, Q1_ht, Q2_ht, Q3_ht,

Q0_hc, Q1_hc, Q2_hc, Q3_hc, Q0_hdv, Q1_hdv, Q2_hdv, Q3_hdv;

//Functions used in this program

void Delay(unsigned int time);

void Khoitaoht(unsigned char gt);

void Khoitaohc(unsigned char gt);

void Khoitaohdv(unsigned char gt);

void Khoitao(unsigned int num);

void HienthiLEDHienThoi(); //Display to 7 bar LED gia tri anh sang hien thoivoid HienthiLEDDuoi(); //Display to 7 bar LED gia tri anh sang can duoivoid HienthiLEDTren(); //Display to 7 bar LED gia tri anh sang can trenvoid Hienthi(unsigned int time);

void Duavao7447(bit bi0,bit bi1,bit bi2,bit bi3);

Trang 23

Q3_hn=(gt&0x08)?1:0;

}

void Khoitaoht(unsigned char gt)

Trang 25

#include <define.h>

//Khai bao cac bien dung trong chuong trinh

Trang 26

unsigned char Eso, Solantran;

unsigned int E, EDuoi, ETren, BuocRem;

//Cac ham dung trong chuong trinh

void HienthiLEDHienThoi(); //Ham hien thi ra LED 7 thanh

void HienthiLEDDuoi();

void HienthiLEDTren();

void Hienthi(unsigned int time);

unsigned char QuetDuLieuSo(); //Lay du lieu tu cac cam bien o cac vi tri va luu vao bo nho

unsigned int AnhSang(unsigned char so);

void KiemTra()interrupt 1; //Ngat do bo dinh thoi 0

void Delay(int time);

//Chuong trinh chinh

void main()

{

//Cho phep ngat do bo dinh thoi 0 va ngat ngoai 0

IE=0x83; //10000011 EA=1 va ET0=1 , EX0=1

PX0=1; //Uu tien cho ngat ngoai 0

IT0=1; //Chon ngat ngoai 0 duoc kich thich boi canh

//Khoi tao bo dinh thoi 0 va bo dinh thoi 1

BuocRem = 0; //Khoi tao rem o vi tri dong han

//Khoi tao dong co buoc

CTRL0 = 0;

CTRL1 = 0;

Ngày đăng: 16/04/2013, 08:07

HÌNH ẢNH LIÊN QUAN

Sơ đồ khối tổng quát của hệ thống đo lờng và điều khiển là: - Đo và ổn định độ sáng phòng
Sơ đồ kh ối tổng quát của hệ thống đo lờng và điều khiển là: (Trang 2)
Sơ đồ chân AT89C51 - Đo và ổn định độ sáng phòng
Sơ đồ ch ân AT89C51 (Trang 9)
Đồ thị biểu thị sự phụ thuộc của điện trở CDS vào độ sáng - Đo và ổn định độ sáng phòng
th ị biểu thị sự phụ thuộc của điện trở CDS vào độ sáng (Trang 15)
Sơ đồ mạch in tổng quát - Đo và ổn định độ sáng phòng
Sơ đồ m ạch in tổng quát (Trang 17)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w