1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

Thiết kế hệ thống đo nhiệt độ, độ ẩm và điều khiển thiết bị điện bằng module bluetooth

26 839 2

Đ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

Định dạng
Số trang 26
Dung lượng 741,33 KB

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

Nội dung

Chính vì vậy ngoài việc dùng điện thoại để liên lạc một vấn đề được đặt ra là chúng ta có thể sử dụng điện thoại như một chiếc Remote để điều khiển các thiết bị điện từ xa.. - Kinh nghiệ

Trang 1

BỘ NÔNG NGHIỆP VÀ PHÁT TRIỂN NÔNG THÔN

HỌC VIỆN NÔNG NGHIỆP VIỆT NAM

-o0o -ĐỒ ÁN MÔN HỌC VI XỬ LÝ TRONG ĐIỀU KHIỂN

Đề tài : “Thiết kế hệ thống đo nhiệt độ, độ ẩm và điều khiển thiết bị

điện bằng module Bluetooth”

Giảng viên hướng dẫn : Th.S Lại Văn Song

Sinh viên thực hiện : Nguyễn Thanh Phú _ 576126

Phạm Thế Sự _ 576134

Vũ Văn Kiệm _576117

Trang 2

CHƯƠNG I :TỔNG QUAN VỀ HỆ THỐNG

1.1 Giới thiệu

Ngày nay, ngành công nghệ thông tin đã đạt được những tiến bộ vượt bậc với

sự ra đời của ngành công nghiệp phần cứng, cũng như phần mềm việc giải quyết các công việc giúp con người trở nên dễ dàng, thuận tiện và nhanh chóng Cùng với sự phát triển của ngành công nghệ thông tin là sự phát triển mạnh mẽ của các hệ thống thông tin liên lạc, sự ra đời của các dịch vụ điện thoại mà cụ thể là điện thoại di động với ưu thế dễ dàng hoạt động khi di chuyển mọi lúc mọi nơi Chính vì vậy ngoài việc dùng điện thoại để liên lạc một vấn đề được đặt ra là chúng ta có thể sử dụng điện thoại như một chiếc Remote để điều khiển các thiết bị điện từ xa Từ yêu cầu trên và những kiến

thức em được học ở trường em đã lựa chọn đề tài: “Thiết kế chế tạo mô hình

hệ thống điều khiển các thiết bị điện trong nhà thông qua điện thoại.”

1.2Mục tiêu của đề tài

Nghiên cứu và xây dựng mô hình điều khiển quá trình dựa trên vi điều khiển AT89S52 Từ đó phát triển cao hơn, đưa bộ điều khiển áp dụng vào trong thựctế

Làm quen với việc tính toán thiết kế , chế tạo, nguyên lý hoạt động của quá trình khoá mở cửa điện tử và củng cố phần lý thuyết về mạch điện tử, cảm biến

và mạch điều khiển bằng vi điều khiển

1.3 Nội dung đề tài

Việc thực hiện nghiên cứu đề tài ‘‘Thiết kế chế tạo mô hình hệ thống điều khiển các thiết bị điện trong nhà thông qua điện thoại.”trong điều kiện :

- Thời gian thực hiện đề tài chỉ trong một học kỳ

- Kinh nghiệm thực tế chưa nhiều

- Vật tư và linh kiện không đồng bộ

Vì vậy em đã thực hiện nghiên cứu đề tài với những đặc điểm chính sau đây:

- Lập trình bằng vi xử lý AT89S52

- Tìm hiểu cách thức hoạt động của 1 số loại linh kiện điện tử

- Thiết kết mô hình thí nghiệm

1.4 Phương pháp nghiên cứu

Phương pháp kế thừa: Kế thừa từ các tài liệu, công trình nghiên cứu trước đó

về hai mảng chính của đề tài: Cấu trúc vi điều khiển 8051

Phương pháp thực nghiệm kiểm chứng: Sau khi đã xây dựng xong cơ sở lý thuyết của đề tài sẽ tiến hành thử nghiệm sự hoạt động trên các thiết bị hiện có

Trang 3

Các bước tiến hành nghiên cứu là tìm hiểu cơ sở lý thuyết về vấn đề nghiên cứu, tiến hành thiết kế chương trình điều khiển và mạch điều khiển, sau đó thử nghiệm trên mô hình để đưa ra kết luận

CHƯƠNG II: GIỚI THIỆU VỀ VI ĐIỀU KHIỂN VÀ CÁC THIẾT

số học 8 bit gồm cả lệnh nhân và lệnh chia Nó cung cấp những hổ trợ mở rộngtrên chip dùng cho những biến một bit như là kiểu dữ liệu riêng biệt cho phép quản

lý và kiểm tra bit trực tiếp trong hệ thống điều khiển

AT89S52 cung cấp những đặc tính chuẩn như: 8 KByte bộ nhớ chỉ đọc cóthể xóa và lập trình nhanh (EPROM), 128 Byte RAM, 32 đường I/O, 3TIMER/COUNTER 16 Bit, 5 vectơ ngắt có cấu trúc 2 mức ngắt, một Port nối tiếpbán song công, 1 mạch dao động tạo xung Clock và bộ dao động ON-CHIP

Các đặc điểm của chip AT89S52 được tóm tắt như sau:

 8 KByte bộ nhớ có thể lập trình nhanh, có khả năng tới 1000 chu kỳ ghi/xoá

 Tần số hoạt động từ: 0Hz đến 24 MHz

 3 mức khóa bộ nhớ lập trình

 3 bộ Timer/counter 16 Bit

 128 Byte RAM nội

 4 Port xuất /nhập I/O 8 bit

 Giao tiếp nối tiếp

 64 KB vùng nhớ mã ngoài

Trang 4

 64 KB vùng nhớ dữ liệu ngoại.

 4 s cho hoạt động nhân hoặc chia

Hình 2.1 Sơ đồ khối của 8051

Trang 5

Hình 2.2 Sơ đồ khối AT89S52

2.1.2 Mô tả chân 89S52

a) Sơ đồ chân 89S52

Mặc dù các thành viên của họ 8051(ví

dụ 8751, 89S52, 89C51, DS5000) đều có các

kiểu đóng vỏ khác nhau, chẳng hạn như hai

hàng chân DIP (Dual In-Line Pakage), dạng

vỏ dẹt vuông QPF (Quad Flat Pakage) và dạng

chip không có chân đỡ LLC (Leadless Chip

Carrier) thì chúng đều có 40 chân cho các

chức năng khác nhau như vào ra I/O, đọc

RD , ghi WR , địa chỉ, dữ liệu và ngắt Cần

phải lưu ý một số hãng cung cấp một phiên

bản 8051 có 20 chân với số cổng vào ra ít hơn

cho các ứng dụng yêu cầu thấp hơn Tuy nhiên

vì hầu hết các nhà phát triển sử dụng chíp

đóng vỏ 40 chân với hai hàng chân DIP nên ta

chỉ tập trung mô tả phiên bản này

b) Chức năng của các chân 89S52

Port 0:từ chân 32 đến chân 39 (P0.0 _P0.7) Port 0 có 2 chức năng: trong các

thiết kế cỡ nhỏ không dùng bộ nhớ mở rộng nó có chức năng như các đường IO,đối với thiết kế lớn có bộ nhớ mở rộng nó được kết hợp giữa bus địa chỉ và bus dữliệu

Port 1:từ chân 1 đến chân 9 (P1.0 _ P1.7) Port 1 là port IO dùng cho giao tiếp với

thiết bị bên ngoài nếu cần

Port 2:từ chân 21 đến chân 28 (P2.0 _P2.7) Port 2 là một port có tác dụng kép

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 bịdùng bộ nhớ mở rộng

Port 3:từ chân 10 đến chân 17 (P3.0 _ P3.7) Port 3 là port có tác dụng kép Các

chân của port này có nhiều chức năng, có công dụng chuyển đổi có liên hệ đến cácđặc tính đặc biệt của 89S52 như ở bảng sau:

Trang 6

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

Ngõ vào dữ liệu nối tiếp

Ngõ xuất dữ liệu nối tiếp

Ngõ vào ngắt cứng thứ 0

Ngõ vào ngắt cứng thứ 1

Ngõ vào TIMER/ COUNTER thứ 0

Ngõ vào của TIMER/ COUNTER thứ1

Tín hiệu ghi dữ liệu lên bộ nhớ ngoài

Tín hiệu đọc bộ nhớ dữ liệu ngoài

Bảng 2.1 Bảng chức năng P3

PSEN (Program store enable):

PSEN là tín hiệu ngõ ra có tác dụng cho phép đọc bộ nhớ chương trình

mở rộng và thường được nối đến chân OE của Eprom cho phép đọc các byte

mã lệnh

PSEN ở mức thấp trong thời gian 89S52 lấy lệnh Các mã lệnh của chươngtrình được đọc từ Eprom qua bus dữ liệu, được chốt vào thanh ghi lệnh bên trong89S52 để giải mã lệnh Khi 89S52 thi hành chương trình trong ROM nội, PSEN ởmức cao

ALE (Address Latch Enable):

Trang 7

Khi 89S52 truy xuất bộ nhớ bên ngoài, Port 0 có chức năng là bus địa chỉ và

dữ liệu do đó phải tách các đường dữ liệu và địa chỉ Tín hiệu ra ALE ở chân thứ

30 dùng làm tín hiệu điều khiển để giải đa hợp các đường địa chỉ và dữ liệu khi kếtnối chúng với IC chốt

Tín hiệu ở chân ALE là một xung trong khoảng thời gian port 0 đóng vai trò

là địa chỉ thấp nên chốt địa chỉ hoàn toàn tự động

EA (External Access):Tín hiệu vào EA (chân 31) thường được mắc lên mức 1

hoặc mức 0 Nếu ở mức 1, 89S52 thi hành chương trình từ ROM nội Nếu ở mức 0,89S52 thi hành chương trình từ bộ nhớ mở rộng Chân EA được lấy làm chân cấpnguồn 21V khi lập trình cho Eprom trong 89S52

RST (Reset):Khi ngõ vào tín hiệu này đưa

lên mức cao ít nhất 2 chu kỳ máy, các thanh

ghi bên trong được nạp những giá trị thích hợp

để khởi động hệ thống Khi cấp điện mạch

nối thêm thạch anh và các tụ Tần số thạch

anh tùy thuộc vào mục đích của người sử

dụng, giá trị tụ thường được chọn là 33p

Hình 2.4 Sơ đồ kết nối chân X1,X2

2.1.3 Tổ chức bên trong AT89S52

Bộ nhớ trong 89S52 bao gồm ROM

và RAM RAM trong 89S52 bao gồm nhiều thành phần: phần lưu trữ đa dụng,phần lưu trữđịa chỉ hóa từng bit, các bank thanh ghi và các thanh ghi chức năngđặc biệt

AT89S52 có bộ nhớ được tổ chức theo cấu trúc Harvard: có những vùng bộnhớ riêng biệt cho chương trình và dữ liệu Chương trình và dữ liệu có thể chứabên trong 89S52 nhưng 89S52 vẫn có thể kết nối với 64K byte bộ nhớ chươngtrình và 64K byte dữ liệu bên ngoài

Trang 8

Địa chỉ

Bản đồ bộ nhớ Data bên trong Chip 89S52 được tổ chức như sau:

RAM bên trong AT89S52 được phân chia như sau:

 Các bank thanh ghi có địa chỉ từ 00H đến 1FH

 RAM địa chỉ hóa từng bit có địa chỉ từ 20H đến 2FH

b) RAM có thể định địa chỉ bit

Vùng địa chỉ từ 20h -2Fh gồm 16 byte có thể thực hiện như vùng RAM đadụng (truy xuât mỗi lần 8 bit) hay thực hiện truy xuất mỗi lần 1 bit bằng các lệnh

xử lý bit

c) Các bank thanh ghi

Vùng địa chỉ 00h – 1Fh được chia thành 4 bank thanh ghi: bank 0 từ 00h –07h, bank 1 từ 08h – 0Fh, bank 2 từ 10h – 17h và bank 3 từ 18h – 1Fh Các bankthanh ghi này được đại diện bằng các thanh ghi từ R0 đến R7 Sau khi khởi độngthì hệ thống bank 0 được chọn sử dụng

Trang 9

Do có 4 bank thanh ghi nên tại một thời điểm chỉ có một bank thanh ghiđược truy xuất bởi các thanh ghi R0 đến R7 Viêc thay đổi bank thanh ghi đượcthực hiện thông qua thanh ghi từ trạng thái chương trình (PSW).

d) Các thanh ghi có chức năng đặc biệt

Các thanh ghi trong 89S52 được định dạng như một phần của RAM trên chip

vì vậy mỗi thanh ghi sẽ có một địa chỉ (ngoại trừ thanh ghi bộ đếm chương trình vàthanh ghi lệnh vì các thanh ghi này hiếm khi bị tác động trực tiếp) Cũng như R0đến R7, 89S52 có 21 thanh ghi có chức năng đặc biệt (SFR: Special FunctionRegister) ở vùng trên của RAM nội từ địa chỉ 80H đến 0FFH

Sau đây là một vài thanh ghi đặc biệt thường được sử dụng:

Thanh ghi trạng thái chương trình (PSW: Program Status Word)

BIT SYMBOL ADDRESS DESCRIPTION

00=Bank 0; address 00H07H01=Bank 1; address 08H0FH10=Bank 2; address 10H17H11=Bank 3; address 18H1FH

Chức năng từng bit trạng thái chương trình

- Cờ Carry CY (Carry Flag):Cờ nhớ thường nó được dùng cho các lệnh toán

học: C =1 nếu phép toán cộng có sự tràn hoặc phép trừ có mượn và ngượclại C = 0 nếu phép toán cộng không tràn và phép trừ không có mượn

Trang 10

- Cờ Carry phụ AC (Auxiliary Carry Flag): Khi cộng những giá trị BCD

(Binary Code Decimal), cờ nhớ phụ AC được set nếu kết quả 4 bit thấp nằmtrong phạm vi điều khiển 0AH - 0FH Ngược lại AC = 0

- Cờ 0 (Flag 0):

Cờ 0 (F0) là 1 bit cờ đa dụng dùng cho các ứng dụng của người dùng

- Những bit chọn bank thanh ghi truy xuất:

RS1 và RS0 quyết định dãy thanh ghi tích cực Chúng được xóa sau khi reset

hệ thống và được thay đổi bởi phần mềm khi cần thiết

Tùy theo RS1, RS0 = 00, 01, 10, 11 sẽ được chọn Bank tích cực tương ứng

là Bank 0, Bank1, Bank2 và Bank3

Thanh ghi TIMER

Vi Điều Khiển 89S52 có 3 timer 16 bit, mỗi timer có bốn cách làm việc Người ta sử dụng các timer để:

Trang 11

o Định khoảng thời gian.

o Đếm sự kiện.

o Tạo tốc độ baud cho port nối tiếp trong 89S52.

Trong các ứng dụng định khoảng thời gian, người ta lập trình timer ở những khoảng đều đặn và đặt cờ tràn timer Cờ được dùng để đồng bộ hóa chương trình để thực hiện một tác động như kiểm tra trạng thái của các ngõ vào hoặc gửi sự kiện ra các ngõ ra Các ứng dụng khác có thể sử dụng việc tạo xung nhịp đều đặn của timer để đo thời gian trôi qua giữa hai sự kiện (ví dụ

đo độ rộng xung).

Thanh ghi ngắt (INTERRUPT)

Một ngắt là sự xảy ra một điều kiện, một sự kiện mà nó gây ra treo tạm thời thời chương trình chính trong khi điều kiện đó được phục vụ bởi một chương trình khác.

Các ngắt đóng một vai trò quan trọng trong thiết kế và cài đặt các ứng dụng

vi điều khiển Chúng cho phép hệ thống đáp ứng bất đồng bộ với một sự kiện vàgiải quyết sự kiện đó trong khi một chương trình khác đang thực thi

- Tổ chức ngắt của 89S52:

Có 5 nguồn ngắt ở 89S52: 2 ngắt ngoài, 2 ngắt từ timer và 1 ngắt port

nối tiếp Tất cả các ngắt theo mặc nhiên đều bị cấm sau khi reset hệ thống và đượccho phép từng cái một bằng phần mềm Mức độ ưu tiên của các ngắt được lưutrong thanh ghi IP (Interrupt Priority) hay nói cách khác thanh ghi IP cho phépchọn mức ưu tiên cho các ngắt (giá trị thanh ghi IP khi reset là 00h)

IP.5 ET2 BDH Chọn mức ưu tiên cao (=1) hay thấp (=0)

tại timer 2IP.4 ES BCH Chọn mức ưu tiên cao (=1) hay thấp (=0)

tại cổng nối tiếp

IP.3 ET1 BBH Chọn mức ưu tiên cao (=1) hay thấp (=0)

tại timer 1

Trang 12

IP.2 EX1 BAH Chọn mức ưu tiên cao (=1) hay thấp (=0)

tại ngắt ngoài 1IP.1 ET0 B9H Chọn mức ưu tiên cao (=1) hay thấp (=0)

tại timer 0IP.0 EX0 B8H Chọn mức ưu tiên cao (=1) hay thấp (=0)

 Nếu chương trình của một ngắt có mức ưu tiên thấp đang chạy mà có mộtngắt xảy ra với mức ưu tiên cao hơn thì chương trình này tạm dừng để chạy mộtchương trình khác có mức ưu tiên cao hơn

- Cho phép và cấm ngắt:

Mỗi nguồn ngắt được cho phép hoặc cấm ngắt qua một thanh ghi chức năng đặt biệt có định địa chỉ bit IE (Interrupt Enable: cho phép ngắt) ở địa chỉ A8H

IE.5 ET2 ADH Cho phép ngắt từ Timer 2 (8052)

IE.4 ES ACH Cho phép ngắt port nối tiếp

Trang 13

IE.0 EX0 A8H Cho phép ngắt ngoài 0

Trang 14

Bluetooth module SLAVE cho phép vi điều khiển kết nối với các thiết bị ngoại vi: smartphone, laptop, usb bluetooth thông qua giao tiếp Serial gửi và nhận tín hiệu 2 chiều.

Module bluetooth được tích hợp trên board cho phép bạn sử dụng nguồn từ 3.5V đến 6V cung cấp cho board mà không cần lo lắng về chênh lệch điện áp 3V - 5V gây hỏng board

Bluetooth module gồm 6 chân theo thứ tự: KEY, VCC, GND, TX, RX, STATE.Đây là module bluetooth SLAVE nghĩa là bạn không thể chủ động kết nối bằng vi điều khiển, mà cần sử dụng smartphone, laptop, bluetooth usb để dò tín hiệu và kết nối (pair) từ smartphone, laptop, bluetooth usb Sau khi pair thành công, bạn

có thể gửi và nhận tín hiệu từ vi điều khiển đến các thiết bị này

Hướng dẫn nối dây

Trang 15

RX TX

Lưu ý: không được gắn lộn dây Vcc và Gnd vì sẽ gây hỏng module bluetooth ngay lập tức.

Tần số làm việc: 2.4GHz

Kích thước module: 44mm x 16mm x 7mm Có sẵn 1 dây nối dài 4 bus 18cm

Sau khi pair và nối dây cho module bluetooth, bạn sẽ nhận dữ liệu như 1 cổng Serial thông thường

Bước 3: Chuyển Key lên 3.3V

Dùng phần mềm Terminal hoặc Hercules để cài đặt ( Các bạn có thể xem hướng dẫn tạihttp://mcu.banlinhkien.vn ( Mục module)

1.1 Test

Gõ lệnh: AT

Trang 16

Màn hình trả về: OK

2.2.Thay đổi tốc độ

Gõ: AT+BAUD1

Màn hình trả về: OK1200 ( Module đã được cài tốc độ 1200, muốn giao tiếp với module phải thay đổi tốc độ thành 1200)

Tương tự: AT+BAUDx ( x là các ký tự tương ứng dưới đây)

1 -1200

2 -2400

3 -4800

4 -9600

5 -19200

6 -38400

7 -57600

8 -115200

9 -230400

A -460800

B -921600

C -1382400

Không nên sử dụng tốc độ > 115200 ( Module hoạt động không ổn định)

3.3 Thay đổi tên ( Chỉ áp dụng cho Slaver)

Gõ : AT+NAMEname

Màn hình trả về: OKname

( Module đã có tên là “name” , chú ý chỉ cài được <20 ký tự)

VD: Muốn tên Module là banlinhkien

Gõ: AT+NAMEbanlinhkien

Màn hình trả về OKbanlinhkien là đã cài đặt thành công

4.4 Thay đổi pass.

Gõ AT+PINxxxx

Màn hình trả về: OKsetpin

xxxx: là mật khẩu đặt là 4 ký tự

VD: Muốn đặt pass là 8888

Gõ: AT+PIN8888

2.3 Module Relay 5V

2.3.1 Giới thiệu

Rơ-le là một loại linh kiện điện tử thụ động rất hay gặp trong các ứng dụng thực tế Khi bạn gặp các vấn đề liên quan đến công suất và cần sự ổn định cao, ngoài ra có

Trang 17

thể dễ dàng bảo trì, thì rơ-le chính là cái bạn cần tìm Vì vậy, hôm nay, chúng ta sẽ cùng nhau tìm hiểu về relay và các ứng dụng của nó trong cuộc sống!

2.3.2 Relay (rơ-le) là gì ?

Từ rơ-le là từ vay mượn từ tiếng nước ngoài (cụ thể là tiếng Pháp) nên trong từ đó không bao hàm ý nghĩa gì nhiều Vì vậy, ta sẽ không phân tích rơ-le là gì thông qua tên gọi của nó Vì vậy, sẽ sử dụng những linh kiện điện tử khác mà chắc chắn

đã biết rồi để diễn giải!

Rơ-le là một công tắc (khóa K) Nhưng khác với công tắc ở một chỗ cơ bản, rơ-le

được kích hoạt bằng điện thay vì dùng tay người Chính vì lẽ đó, rơ-le được dùng

làm công tắc điện tử! Vì rơ-le là một công tắc nên nó có 2 trạng thái: đóng và mở.

"Khi nào nó đóng? Khi nào nó mở? và làm sao thay đổi được trạng thái của nó?, " đó chính là những câu hỏi mà chúng ta cần tìm kiếm câu trả lời.

2.3.3 Các loại rơ-le và cách xác định trạng thái của nó

Trên thị trường chúng ta có 2 loại module rơ-le: module rơ-le đóng ở mức

thấp (nối cực âm vào chân tín hiệu rơ-le sẽ đóng),module rơ-le đóng ở mức cao (nối cực dương vào chân tín hiệu rơ-le sẽ đóng) Nếu so sánh giữa 2 module

rơ-le có cùng thông số kỹ thuật thì hầu hết mọi kinh kiện của nó đều giống nhau,

chỉ khác nhau ở chỗ cái tranzitocủa mỗi module Chính vì cái transistor này nên

mới sinh ra 2 loại module rơ-le này (có 2 loại transistor là NPN - kích ở mức cao,

và PNP - kích ở mức thấp)

Làm sao để nhận biết được module rơ-le nào thuộc loại nào? Có 3 cách :

- Hỏi người bán và sau khi mua về chúng ta đặt ngăn nắp, loại nào ra loại đấy

Ngày đăng: 05/02/2017, 19:32

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w