Tải bản đầy đủ (.pdf) (40 trang)

ĐỒ ÁN ĐO LƯỜNG NHIỆT ĐỘ, ĐỘ ẨM BẰNG IC SHT10 và PIC16F877A - BKHN

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.55 MB, 40 trang )

1
Trường Đại học Bách Khoa Hà Nội
Viện Điện Tử - Viễn Thông






Báo cáo đồ án môn học đo lường tự động điều
khiển

Đề tài
: Hệ thống đo nhiệt độ, độ ẩm, thông gió cho
phòng làm việc.






Giảng viên hướng dẫn : xxxxxxxxx
Sinh viên thực hiện : xxxxxxxxx









Hà Nội 12-12-2011
2
Nội dung
1. Lời nói đầu………………………………………………………………… 2

2. Tổng quan về bài đồ án…………………………………………………… 3
2.1 Ý tưởng ………………………………………………………………….3
2.2 Phân tích yêu cầu……………………………………………………… 3
2.2.1 Yêu cầu chức năng ……………………………………… 3
2.2.2 Yêu cầu phi chức năng…………………………………… 3
2.3 Thiết kế………………………………………………………………… 4
2.3.1 Sơ đồ khối………………………………………………… 4
2.3.2 Các modul cần thực hiện……………………………………4
A. Vi xử lí…………………………………………………… 4
B. Khối cảm biến………………………………………………7
C. Khối thu phát hông ngoại………………………………….11
D. Khối LCD …………………………………………………13
E. Khối RS232……………………………………………… 16
F. Quạt thông gió…………………………………………… 18
G. Khối nguồn……………………………………………… 19
2.3.3 Lưu đồ thuật toán…………………………………………… 20
3. Thực hiện…………………………………………………………………… 21
3.1 Các công cụ thực hiện…………………………………………………….21
3.2 Sơ đồ nguyên lý………………………………………………………… 21
3.3 Mô phỏng………………………………………………………………….25
3.4 Coding…………………………………………………………………….26
3.5 Mạch in……………………………………………………………………31
3.6 Giao diện trên PC…………………………………………………………
4. Phân chia công việc…………………………………………………………….36
5. Kết luận…………………………………………………………………………37

6. Tài liệu tham khảo…………………………………………………………… 38



3
1. Lời nói đầu

Ngày nay cùng với sự tiến bộ của nghành kĩ thuật đo lường nói chung và nghành
đo lường tự động nói riêng đã và đang đóng góp vai trò to lớn trong đời sống sinh
hoạt cũng như trong lĩnh vực sản xuất.
Với vai trò to lớn đó. Môn Đo lường tự động điều khiển đã được đưa vào giảng
dạy chính thức trong nhiều năm qua cho các sinh viên nghành điện, điện tử,… của
trường đại học Bách khoa Hà Nội.
Môn đo lường tự động điều khiển giới thiệu cho sinh viên về hệ thống đo lường tự
động điều khiển, các kiến thức tổng hợp của chuyên nghành điện, điện tử, cơ khí.
Sau đây em xin trình bày kiến thức cơ bản của môn Đo lường tự động điều khiển.
Nội dung của môn học gồm có 2 phần chính là: đo lường tự động và điều khiển.
Đo lường tự động là một hệ thống đo lường thực hiện việc tự động đo và cập nhật
khi đối tượng đo thay đổi. Và sau đó , so sánh giá trị của đối tượng đo được so
sánh với giá trị mẫu ( mặc đinh hoặc được đặt trước ). Sự chênh lệch giữa hai giá
trị này sẽ được đưa lên mạch điều khiển . Mạch điều khiển sẽ cấp tín hiệu và điều
khiển cơ cấu chấp hành. Cơ cấu chấp hành sẽ khống chế giá trị của đối tượng cần
đo phải bằng giá trị mẫu.
Đo lường tự động có vai trò rất quan trọng đối với con người cũng như khoa học
kĩ thuật.
Trong quá trình học để giúp sinh viên có cái nhìn thực tế hơn về môn học. Nhóm
chúng em đã được giao nhiệm vụ thiết kế một hệ thống đo lường tự động điều
khiển. Sau thời gian tìm hiểu nhóm chúng em đã quyết định chọn đề tài : “Hệ
thống thông gió và bật tắt đèn tự động ”. Sau đây em thay mặt nhóm sẽ trình bày
chi tiết việc thực hiện đề tài trên.





4
2. Tổng quan

2.1 Ý tưởng: Thiết kế mạch đo nhiệt độ, độ ẩm và điều khiển quạt thông gió, đếm
số người trong phòng và bật tắt đèn tự đông.
2.2 Phân tích yêu cầu
2.2.1 Yêu cầu chức năng :
 Bật/tắt đèn tự động:
• Nếu có người vào phòng thì đèn tự động bật.
• Nếu không còn ai trong phòng thì đèn sẽ tắt.
 Hệ thống thông gió:
Nếu nhiệt độ phòng > nhiệt độ mẫu nhập vào => Quạt sẽ bật.
Nếu độ ẩm phòng > độ ẩm mẫu nhập vào => quạt thông gió sẽ bật.
 Mạch có chức năng cài đặt các giá trị mẫu thông qua các nút bấm trên
mạch.
 Mạch có truyền nhận dữ liệu với máy tính.
 Máy tính nhận dữ liệu là nhiệt độ , độ ẩm và hiển thị lên giao
diện của phần mềm.
 Máy tính truyền các giá trị mẫu cho vi xử lí để điều khiển cơ cấu
chấp hành.
2.2.2 Yêu cầu phi chức năng :
 Dễ sử dụng .
 Mạch được thiết kế đẹp, kích thước nhỏ gọn
 Chi phí thấp.








5



2.3 Thiết kế
2.3.1 Sơ đồ khối



 Đối tượng cần đo X:
 Nhiệt độ
 Độ ẩm
 Số người trong phòng.
 Cơ cấu chấp hành:
 Quạt thông gió
 Hệ thống đèn.

2.3.2 Các modul cần thực hiện
A.Khối Vi xử lí
Vi xử lí nhóm em sử dụng ở đây là PIC16F877A của Microchip với các thông số cần
quan tâm:
Packages:
6
 IC dạng 40 pin- PDIP.


Memory :
 Flash Program Memory : 8K x 14bits
 Data Memory : 368 bytes
 EEPROM Data Memory : 256 bytes
Interrupts :
 Số lượng ngắt : 15
 External Interrupt : chân RB0 sẽ “cảm nhận ” thay đổi khi ấn nút bấm.
 RB4-RB7 Interrupt : Chân RB4 đến RB7 “cảm nhận ” thay đổi khi ấn nút
bấm
 USART Transmit Interrupt : ngắt truyền nhận dữ liệu với PC.
I/O Ports :
 Ports A,B,C,D,E
Timer :
 Timer 0 , Timer 1 , Timer 2.
7
Serial Communications:
 Truyền nhận không đồng bộ USART thông qua 2 chân RC6 , RC7.
Parallel Communications:
 PSP
ADC Module :
 8 input channels
Operating Frequency : 20 MHz
Power : 5V-DC



Vi xử lí có chức năng:
 Giao tiếp với khối cảm biến để lấy dữ liệu từ cảm biến, xử lí và hiển thị kết
quả lên LCD.
 Truyền giá trị của thông số nhiệt đô, độ ẩm lên PC.

 Nhận giá trị mẫu từ PC để điều khiển cơ cấu chấp hành.
 Xử lí ngắt để đếm số người trong phòng.
8
 Xử lí ngắt ngoài để thiết lập các mẫu nhiệt độ ,độ ẩm từ nút bấm trên mạch
 Điều khiển cơ cấu chấp hành.


B. Khối cảm biến
Cảm biến nhiệt độ ,độ ẩm SHT10 của Sensirion được chế tạo theo công nghệ
CMOS.
SHT10 có bộ khuếch đại , ADC , bộ nhớ OTP và giao tiếp số.




Các thông số của SHT10
 Sơ đồ chân SHT10
9

 Power
Nguồn cung cấp cho SHT10 từ 2,4-5.5V. Nên dùng điện áp 3,3V.

Figure 1: Connection between SHT10 & MCU

 Sensor SHT10 nhận lệnh và gửi số liệu về cho PIC theo chuẩn ghép nối tương tự
I2C : tín hiệu đồng bộ SCK do PIC tạo ra . Chân số 2 là chân data 2 truyền song
công . Dữ liệu được Sensor gửi về cho PIC. PIC xử lí dữ liệu và hiển thị lên LCD.
 Giao tiếp SHT10 với PIC gồm các quá trình sau
 Khởi tạo phiên truyền : DATA ở mức thấp trong khi SCK ở mức cao, và
sau một chu kỳ xung nhịp SCK thì DATA ở đang tăng.

10

Figure 2: “Transmission Start” sequence

 Mã lệnh : Chuỗi mã lệnh gồm có 3 bit địa chỉ và mặc định là ‘000’ và 5 bit
lệnh . Sau khi sensor nhận được mã lệnh đúng từ PIC thì SHT10 sẽ kéo
tín hiệu ở chân DATA xuống mức ‘0’ sau xung clock SCK thứ 8. DATA
lên mức ‘1’ sau khi sườn xuống của SCK thứ 9. Dưới đây là bảng mã lệnh


Figure 3 : SHT1X Command List

 Đo nhiệt độ độ ẩm
Sau khi gửi mã lệnh (‘00000101’ đo độ ẩm , ‘00000011’ đo nhiệt độ ) , PIC phải đợi
cho cho sensor xử lí và gửi trả lại dữ liệu . Điều này diễn ra trong thời gian 20/80/320
ms cho chế độ đo 8/12/14 bit. Khi việc đo đã hoàn thành SHT10 sẽ kéo chân DATA
xuống mức ‘0’ và trở về trạng thái ‘Idle’ . PIC phải đợi cho đến khi dữ liệu ra sẵn
11
sang trước khi restarting SCK để đọc dữ liệu ra. Chú ý rằng : dữ liệu mà SHT10 đo
được lưu trữ cho đến khi đọc ra.
Hai byte dữ liệu đo được và 1 byte CRC checksum sẽ được truyền tới PIC. PIC phải
xác nhận với SHT10 rằng đã nhận được dữ liệu bằng cách là sau mỗi byte nhận được
PIC kéo chân DATA xuống mức ‘0’.
Việc truyền thông sẽ ‘kết thúc’ sau khi bit ACK của CRC data. Nếu CRC-8 checksum
không được sử dụng thì PIC có thể ‘kết thúc’ việc truyền thông bằng việc giữ ACK
mức cao. SHT10 sẽ tự động trở về trạng thái Sleep Mode sau khi việc truyền thông
kết thúc.

 Reset phiên truyền
Nếu truyền thông với SHT10 bị mất dữ liệu thì sẽ reset lại phiên truyền.


Figure 4 : Connection Reset Sequence
 Ví dụ về đo độ ẩm


Figure 5: Example RH measurement sequence for value “0000 0100 0001” = 1073 =
35. 5%RH

 Công thức tính RH và T
12

Figure 6: Formulation for Humidity calculation





Figure 7: Formulation for temperature Calculation

 Độ chính xác
13

Figure 8: Accuracy of Relative Humidity and Temperature

Relative Humidity : sai số nhỏ nhất là :

4,5% khi đo độ ẩm trong khoảng 20-80%
Temperature : sai số nhỏ nhất là :

0,5% khi đo tại nhiệt độ 20-25

0
C


C. Khối thu phát hồng ngoại
Sử dụng led thu phát hồng ngoại. Ưu điểm dễ sử dụng ,giá rẻ.



14

Figure 9: Counting People by using Led & Phototransistor

 Trên hình chân 1 và 2 sẽ lần lượt được nối vào 2 chân của PIC . 2 chân của PIC có
nhiệm vụ ‘cảm nhận’ thay đổi mức điện áp đầu vào.
Ta xét cặp Led thứ nhất LEDT1 : led phát , LEDR1 : led thu . Ban đầu khi chưa có
vật chắn giữa 2 led thì LEDR1 được ‘chiếu sáng’ và LEDR1 thông hay chân 1 của
PIC nối đất. Nếu có vật chắn giữa 2 đèn led thì LEDR1 không thông, khi đó chân 1
của PIC sẽ nhảy lên mức ‘1’. Sử dụng ngắt trên các trên 1 và 2 để “cảm nhận” được
sự thay đổi này. Tương tự với cặp led còn lại . Và từ đó ta sẽ xác định được người
đi vào hay ra khỏi phòng.




D. Khối hiện thị LCD

15

Figure 10: Pins of LCD1602


 LCD hiển thị được 2 hàng mỗi hàng hiển thị được 16 ký tự (LCD có 16 chân) như
được minh hoạ trên hình.
Thông số của LCD :
+Kích thước hiển thị : 16 ký tự x 2 dòng.
+Màu hiển thị: đen/trắng.
+Chế độ giao tiếp : 8 bít và 4 bít.
+Cỡ chữ hiển thị : 5x7 hoặc 5x10.
LCD có tổng số 16 chân chia làm 3 nhóm:
 Nhóm 1: (5 chân)
VDD:
Cấp 5V

VSS:
Cấp 0V

VEE:
Thay đổi điện áp để thay đổi độ tương phản

A,K
: Điều khiển led nền LCD

 Nhóm 2: (8 chân) Vào ra thông tin với VĐK : Từ chân D0-D7
 Nhóm 3 : (3 chân) Điều khiển việc vào ra thông tin : E,RS,R/W
E :
(Bật /tắt ) (cho phép/ không cho phép trao đổi thông tin với VĐK )
RS :
(Loại thông tin trao đổi) Là lệnh điều khiển hay dữ liệu để hiển thị.
R/W : (Hướng truyền của thông tin) đọc trạng thái từ LCD hay thông
tin do VĐK gửi vào LCD để hiển thị.





16








Cụ thể tên gọi và mô tả chức năng các chân được tổng kết trong bảng sau:
Số
chân


hiệu

Tên Mô tả chức năng
1 VSS

Đất 0V (GND)
2
VDD
Cấp nguồn Nối với dương nguồn (+4.5V~+5.5V)
3 VEE

Constast

Điều chỉnh điện áp chân này s
ẽ tăng giảm độ
tương
phản của LCD. Thường được nối với biến trở.
4 RS Chọn thanh ghi
Nếu RS=0 : LCD nhận lệnh từ VĐK
N
ếu RS=1: LCD nhận dữ liệu từ VĐK để hiển
thị
5 RW

Read/Write
Chọn chức năng ghi/ đọc
RW=1 : chọn chức năng đọc dữ liệu từ LCD v
ào
VĐK
RW=0 : chọn chức năng ghi dữ liệu từ VĐK v
ào
LCD
để hiển thị
6 E Read Write enable
Khi E chuyển từ 10 thì tín hi
ệu ở các chân
D0-D7
mới được đưa vào LCD.
7 D0
Data bus 0-7 8 chân này được dùng cho việc truyền dữ liệu
8 D1
9 D2
10 D3

11 D4
12 D5
13 D6
14 D7
Từ những đặc điểm và chức năng đã được đề cập ở trên ta có thể đi tới việc hình
thành việc ghép nối của LCD với vi điều khiển như sau:

17
























Như trên hình minh hoạ ta có thể thấy các chân D0-D3 là
đường tín hiệu 2 chiều (để trao đổi thông tin Vi điều khiển và
LCD). 3 chân điều khiển RS, R/W, E là chân đưa tín hiệu điều
khiển từ Vi điều khiển tới LCD nên nó chỉ là đường tín hiệu 1
chiều thôi.
Vì chân Contrast (VEE) điều chỉnh độ tương phản của LCD nên
ta cấp nguồn cho nó thông qua biến trở (như hình vẽ)













E. Khối RS232
18


Để nói về RS232 ta nói về cổng COM hay cổng nối tiếp.

Trên đây là 2 dạng cổng COM 9 chân và 25 chân. Trong bài tập lớn này em chọn cổng
COM 9 chân . Dưới đây em xin tóm tắt chức năng các chân của COM 9 chân.
19


Loại 9 chân(PIN) Viết tắt Tên gọi Chức năng
Pin3 TxD Transmit Data Truyền dữ liệu
Pin2 RxD Receive Data Nhận dữ liệu
Pin7 RTS Request To Send Yêu cầu gửi , bộ truyền đặt
đường này lên mức hoạt
động khi sẵn sàng truyền tín
hiệu
Pin8 CTS Clear To Send Xóa để gửi , bộ nhận đặt
đường này lên mức hoạt
động để thông báo cho bộ
truyền là nó sẵn sàng nhận
dữ liệu
Pin6 DSR Data Set Ready Dữ liệu sẵn sàng , như CTS
nhưng nó được điều khiển
bởi bộ truyền
Pin5 SG Signal Ground Mass của tín hiệu
Pin1 CD Carrier Detect Phát tín hiệu mang dữ liệu
Pin4 DTR Data Terminal
Ready
Đầu cuối dữ liệu sẵn sàng
Pin9 RI Ring Indicator Báo chuông, cho biết là bộ
nhận đang nhận tín hiệu
rung chuông.

Đáng chú ý nhất trong các chân COM là 3 chân 0V (GND) , chân phát dữ liệu
TxD và chân nhận dữ liệu RxD. Đây là 3 chân cơ bản phục vụ truyền thông
theo chuẩn RS232 và tương thích với UART trên PIC.

Một số tiêu chuẩn quan trọng trong truyền nối tiếp :

 Baud rate (tốc độ Baud ) : theo định nghĩa, tốc độ baud là số bit truyền
trên 1s .
 Frame (khung truyền) : khung truyền quy định về số bit trong mỗi lần
truyền , bit ‘báo’ như bit start và bit Stop , các bit kiểm tra như Parity,
ngoài ra số lượng các bit trong một data cũng được quy định bởi khung
truyền.
 Như hình vẽ : khung truyền gồm có một start bit , tiếp theo là 8 bit data ,
sau đó là 1 bit parity dùng để kiểm tra dữ liệu và cuối cùng là 2 bit stop.
 Start bit : start là bit đầu tiên được truyền trong một frame truyền ,bit này
có chức năng báo cho thiết bị nhận biết rằng có một gói dữ liệu sắp được
truyền tới.
 Data : data hay dữ liệu cần truyền là thông tin chính mà chúng ta cần gởi
và nhận. Data thường để 8bit.
 Parity bit : parity là bit dùng để kiểm tra dữ liệu truyền có đúng không. Có
2 loại parity : parity chẵn và parity lẻ.
 Stop bits : stop bits là một hoặc các bit báo cho thiết bị nhận rằng một gói
dữ liệu đã gửi xong. Sau khi nhận được stop bits thiết bị sẽ tiến hành kiểm
20
tra khung truyền để đảm bảo tính chính xác của dữ liệu. Stop bits là các bit
bắt buộc trong một khung truyền.
 Khung truyền phổ biến nhất : start bit + 8 bit data +1stop bit



Trong chuẩn UART ( trên PIC) tương ứng với điện áp cao (5V,TTL) trong khi
đối với RS232 thì mức tương ứng với điện áp thấp ( -12V ). Như vậy cần có
một ‘convetor’ kết nối giữa 2 chuẩn này. Để thực hiện việc đó ta dùng
MAX232 là một trong các IC chuyển UART-RS232.

F. Quạt thông gió

Chức năng : Khi nhiệt độ hoặc độ ẩm trong phòng lớn hơn nhiệt độ mẫu thì quạt sẽ tự
động được bật.

G.Khối nguồn
21

Figure 11: Supply Power

 IC LM7805
 Input :12V
 Output : 5V
 I
O
= 500mA
 LM1117
 Input : 4.8V to 12V
 Output : 3,3V
 I
O
= 10mA to 1A
 Tụ lọc C3,C5 = 100uF /25V
 Tụ C3,C1














2.3.3 Lưu đồ thuật toán
22


Figure 12: Lưu đồ thuật toán điều khiển nhiệt độ ,độ ẩm




Figure 13: Lưu đồ thuật toán điều khiển hệ thống đèn


2. Thực hiện
23
3.1 Các công cụ thực hiện
 Phần mềm : Proteus 7.6 dùng để mô phỏng mạch
PIC-C dùng để coding mã nguồn cho MCU PIC
Orcad 9.0 vẽ sơ đồ nguyên lý và mạch in.
 Các linh kiện và các dụng cụ để hoàn thành phần cứng
 Linh kiện : PIC16F877A
LCD1602
SHT10
Max232, Led thu phát hồng ngoại, nút bấm, trở tụ, thạch anh,
LM7805 , LM1117


 Các công cụ khác : Mạch nạp Pickit 2 , đồng hồ vạn năng , mỏ hàn ,….
3.2 Sơ đồ nguyên lý
3.2.1 Mạch nguồn













24
3.2.2 Vi xử lí

3.2.3 Sensor SHT10


3.2.4 RS232
25

3.2.5 Khối điều khiển đèn và quạt





3.2.6 Khối nút bấm

×