Tải bản đầy đủ (.docx) (64 trang)

Chương trình giám sát và điều khiển mực nước dung PIC , có code

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 (3.41 MB, 64 trang )

VIẾT CHƯƠNG TRÌNH GIÁM SÁT VÀ
ĐIỀU KHIỂN MỰC NƯỚC DÙNG PIC

ĐỒ ÁN HỆ THỐNG NHÚNG
KỸ THUẬT ĐIỀU KHIỂN VÀ TỰ ĐỘNG
HĨA

VIẾT CHƯƠNG TRÌNH GIÁM SÁT VÀ
ĐIỀU KHIỂN MỰC NƯỚC DÙNG PIC

ĐỒ ÁN HỆ THỐNG NHÚNG


KỸ THUẬT ĐIỀU KHIỂN VÀ TỰ ĐỘNG

MỤC LỤC

• DANH MỤC CÁC HÌNH VẼ



ĐỒ ÁN HỆ THỐNG NHÚNG
Trang 4/64

CHƯƠNG 1.
1.1

GIỚI THIỆU ĐỀ TÀI

Giới thiệu:
Ngày nay với sự phát triển của công nghệ, các hoạt động sản xuất cũng như



sinh hoạt hàng ngày đều được chuyển đổi theo hướng tự động hóa. Với mục đích
nghiên cứu, ứng dụng những kiến thức về lập trình vi điều khiển đã được học vào
những dự án thực tế nên em đã quyết định nghiên cứu đề tài dùng cảm biến siêu âm
để đo, hiển thị mực nước cũng như điều khiển mực nước trong bồn.
1.2

Đối tượng nghiên cứu
Để hệ thống đo khoảng cách và điều khiển mực nước hoạt động tốt thì cần phải

nghiên cứu các đối tượng sau:


PIC 16f877A – Bộ điều khiển chính của hệ thống



Cảm biến siêu âm



Màn hình LCD để hiển thị giá trị



Máy bơm

1.3

Phạm vi nghiên cứu


Phạm vi nghiên cứu bao gồm:


Tìm hiểu về vi sử lý và cảm biến.



Thiết kế sơ đồ ngun lý cho hệ thống.



Viết chương trình hoạt động cho hệ thống.



Chạy mơ phỏng.



Thiết kệ mạch in và làm mạch thực tế cho hệ thống.



Thiết kế phần cứng và hồn thiện chạy hệ thống.

1.4

Kết quả dự kiến



Cảm biến siêu âm hoạt động đo được khoảng cách.



LCD nhận giá trị trả về từ chương trình cũng như cảm biến để hiện thị
khoảng cách.

Dùng cảm biến siêu âm đo mực nước


ĐỒ ÁN HỆ THỐNG NHÚNG
Trang 5/64



Khi mức nước xuống đến giá trị đã càu đặt thì kích hoạt máy bơm.



Khi bơm đến giá trị giới hạn trên thì ngừng bơm.

CHƯƠNG 2.
2.1

Linh kiện IC 7805:

2.1.1

Tổng Quan:




LÝ THUYẾT LIÊN QUAN

LM7805 hay 7805 là IC điều chỉnh điện áp dương đầu ra 5V. Nó là IC của
dịng ổn áp dương LM78xx. IC này được sử dụng rộng rãi trong các thiết bị
thương mại và giáo dục, dễ sử dụng và không cần nhiều linh kiện bên ngồi.
IC có nhiều tính năng tích hợp lý tưởng để sử dụng trong nhiều ứng dụng
điện tử như dòng điện đầu ra 1.5A, chức năng bảo vệ q tải, bảo vệ q
nhiệt, dịng điện tĩnh thấp.

Hình 2. 1 Linh kiện LM7805

2.1.2 Các linh kiện cần có trong mạch:

Dùng cảm biến siêu âm đo mực nước


ĐỒ ÁN HỆ THỐNG NHÚNG
Trang 6/64

Hình 2. 2 Các linh kiện chi tiết trong mạch



Cọc nguồn đầu vào 3A




Diode 3A



Cầu chì 1A



Tụ điện hóa



LED báo nguồn



Ơn áp



Cọc nguồn đầu ra

2.1.3 Cấu tạo chân:
Pin 1: Input chức năng của chân này là cung cấp điện áp đầu vào (12VDC-40VDC).
Nó phải năm trong khoảng từ 7V đén 35 V. Ap dụng điện áp khơng được kiểm sốt
cho chân này để điều chỉnh. Đối với đầu vào 7.2 V thì IC đạt hiệu suất tối đa.
Pin 2-Ground: Chân nối đất, đối với input và output thì chân này trung tính như
nhau
Pin 3- Output: chân này dùng để lấy điện áp đầu ra đã được hiệu chỉnh là 5V


Dùng cảm biến siêu âm đo mực nước


ĐỒ ÁN HỆ THỐNG NHÚNG
Trang 7/64

Hình 2. 3 Sơ đồ chân

2.2

Linh kiện PIC 16F877A

2.2.1 Cấu trúc tổng quát


PIC16F877A là một Vi điều khiển PIC 40 chân và được sử dụng hầu hết
trong các dự án và ứng dụng nhúng. Nó có năm cổng bắt đầu từ cổng A đến
cổng E. Nó có ba bộ định thời trong đó có 2 bộ định thời 8 bit và 1 bộ định
thời là 16 Bit. Nó hỗ trợ nhiều giao thức giao tiếp như giao thức nối tiếp,
giao thức song song, giao thức I2C. PIC16F877A hỗ trợ cả ngắt chân phần
cứng và ngắt bộ định thời.

Hình 2. 4 Cấu trúc tổng qt PIC16F877A



8K x 14 bits/word Flash ROM.

Dùng cảm biến siêu âm đo mực nước



ĐỒ ÁN HỆ THỐNG NHÚNG
Trang 8/64



368 x 8 Bytes RAM.



256 x 8 Bytes EEPROM.



5 Port xuất/nhập (A, B, C, D, E) tương ứng 33 chân ra.



2 Bộ định thời 8 bit Timer 0 và Timer 2.



1 Bộ định thời 16 bit Timer 1, có thể hoạt động ở chế độ tiết kiệm năng
lượng (SLEEP MODE) với nguồn xung clock ngồi.



2 Bộ Capture/ Compare/ PWM.(Bắt Giữ/ So Sánh/ Điều Biến Xung)




1 Bộ biến đổi Analog to Digital 10 bit, 8 ngõ vào.



2 Bộ so sánh tương tự (Compartor).



1 Bộ định thời giám sát (Watch Dog Timer).



1 Cổng giao tiếp song song 8 bit.



1 Port nối tiếp.



15 Nguồn ngắt (Interrupt).



Tập lệnh gồm 35 lệnh có độ dài 14 bit.



Tần số hoạt động tối đa 20 MHz.


2.2.2 Sơ đồ chân

Dùng cảm biến siêu âm đo mực nước


ĐỒ ÁN HỆ THỐNG NHÚNG
Trang 9/64

Hình 2. 5 Sơ đồ chân LCD

2.2.3 Chức năng các chân
Chân

Tên

Chức năng
– MCLR: Hoạt động Reset ở mức thấp

1

MCLR/VPP
– VPP : ngõ vào áp lập trình
– RA0: xuất/nhập số

2

RA0/AN0
– AN0 : ngõ vào tương tự
– RA1 : xuất/nhập số


3

RA1/AN1
– AN1: ngõ vào tương tự

4

RA2/AN2/VREF-/CV – RA2: xuất/nhập số
REF

Dùng cảm biến siêu âm đo mực nước

– AN2: ngõ vào tương tự


ĐỒ ÁN HỆ THỐNG NHÚNG
Trang 10/64

– VREF -: ngõ vào điện áp chuẩn (thấp) của bộ
A/D
– RA3: xuất/nhập số
5

RA3/AN3/VREF+

– AN3: ngõ vào tương tự
– VREF+ : ngõ vào điện áp chuẩn (cao) của bộ
A/D
– RA4: xuất/nhập số


6

RA4/TOCKI/C1OUT

– TOCKI: ngõ vào xung clock bên ngoài cho
timer0
– C1 OUT : Ngõ ra bộ so sánh 1
– RA5: xuất/nhập số

7

RA5/AN4//SS

– AN4: ngõ vào tương tự 4

/C2OUT

– SS: ngõ vào chọn lựa SPI phụ
– C2 OUT : ngõ ra bộ so sánh 2
– RE0: xuất nhập số

8

RE0//RD/AN5

– RD: điều khiển việc đọc ở port nhánh song
song
– AN5 : ngõ vào tương tự


– RE1: xuất/nhập số
9

RE1//WR/AN6

– WR: điều khiển việc ghi ở port nhánh song
song
– AN6 : ngõ vào tương tự

Dùng cảm biến siêu âm đo mực nước


ĐỒ ÁN HỆ THỐNG NHÚNG
Trang 11/64

– RE2: xuất/nhập số
– CS: Chip lựa chọn sự điều khiển ở port nhánh
10

RE2//CS/AN7
song song
– AN7 : ngõ vào tương tự

11

VDD

Chân nguồn của PIC.

12


VSS

Chân nối đất
Ngõ vào dao động thạch anh hoặc xung clock
bên
ngoài.
– OSC1: ngõ vào dao động thạch anh hoặc
xung

13

OSC1/CLKI

clock bên ngoài. Ngõ vào Schmit trigger khi
được
cấu tạo ở chế độ RC; một cách khác của
CMOS.
– CLKI: ngõ vào nguồn xung bên ngoài. Luôn
được
kết hợp với chức năng OSC1.

14

OSC2/CLKO

Ngõ vào dao động thạch anh hoặc xung clock
– OSC2: Ngõ ra dao động thạch anh. Kết nối
đến
thạch anh hoặc bộ cộng hưởng.

– CLKO: ở chế độ RC, ngõ ra của OSC2, bằng

Dùng cảm biến siêu âm đo mực nước


ĐỒ ÁN HỆ THỐNG NHÚNG
Trang 12/64

tần
số của OSC1 và chỉ ra tốc độ của chu kỳ lệnh.
– RC0: xuất/nhập số
15

RC0/T1 OCO/T1CKI

– T1OCO: ngõ vào bộ dao động Timer 1
– T1CKI : ngõ vào xung clock bên ngoài Timer
1
– RC1: xuất/nhập số
– T1OSI: ngõ vào bộ dao động Timer 1

16

RC1/T1OSI/CCP2

– CCP2: ngõ vào Capture 2, ngõ ra compare 2,
ngõ
ra PWM2
– RC2: xuất/nhập số


17

RC2/CCP1

– CCP1: ngõ vào Capture 1, ngõ ra compare 1,
ngõ
ra PWM1
– RC3: xuất/nhập số
– SCK: ngõ vào xung clock nối tiếp đồng
bộ/ngõ ra

18

RC3/SCK/SCL

của chế độ SPI
– SCL: ngõ vào xung clock nối tiếp đồng bộ/
ngõ ra
của chế độ I2C

19

RD0/PSP0

Dùng cảm biến siêu âm đo mực nước

– RD0: xuất/nhập số


ĐỒ ÁN HỆ THỐNG NHÚNG

Trang 13/64

– PSP0 : dữ liệu port nhánh song song
– RD1: xuất/nhập số
20

RD1/PSP1
– PSP1 : dữ liệu port nhánh song song
– RD2: xuất/nhập số

21

RD2/PSP2
– PSP2 : dữ liệu port nhánh song song
– RD3: xuất/nhập số

22

RD3/PSP3
– PSP3 : dữ liệu port nhánh song song
– RC4: xuất/nhập số

23

RC4/SDI/SDA

– SDI: dữ liệu vào SPI
– SDA : xuất/nhập dữ liệu vào I2C
– RC5: xuất/nhập số


24

RC5/SDO
– SDO : dữ liệu ra SPI
– RC6: xuất/nhập số

25

RC6/TX/CK

– TX: truyền bất đồng bộ USART
– CK : xung đồng bộ USART
– RC7: xuất/nhập số

26

RC7/RX/DT

– RX: nhận bất đồng USART
– DT : dữ liệu đồng bộ USART
– RD4: xuất/nhập số

27

RD4/PSP
– PSP4 : dữ liệu port nhánh song song
– RD5: xuất/nhập số

28


RD5/PSP5
– PSP5 : dữ liệu port nhánh song song

Dùng cảm biến siêu âm đo mực nước


ĐỒ ÁN HỆ THỐNG NHÚNG
Trang 14/64

– RD6: xuất/nhập số
29

RD6/PSP6
– PSP6 : dữ liệu port nhánh song song
– RD7: xuất/nhập số

30

RD7/PSP7
– PSP7 : dữ liệu port nhánh song song

31

VSS

Chân nối đất

32

VDD


Chân nguồn của PIC.
– RB0: xuất/nhập số

33

RB0/INT
– INT : ngắt ngoài

34

RB1

xuất/nhập số

35

RB2

xuất/nhập số
– RB3: xuất/nhập số

36

RB3
– Chân cho phép lập trình điện áp thấp ICPS
– xuất/nhập số

37


RB4
– Ngắt PortB
– xuất/nhập số

38

RB5
– Ngắt PortB
– RB6: xuất/nhập số

39

RB6/PGC

– PGC: mạch vi sai và xung clock lập trình
ICSP
– Ngắt PortB
– RB7: xuất/nhập số

40

RB7/PGD

– PGD: mạch vi sai và dữ liệu lập trình ICSP
– Ngắt PortB

Dùng cảm biến siêu âm đo mực nước


ĐỒ ÁN HỆ THỐNG NHÚNG

Trang 15/64

2.2.4 Thạch anh


Thạch anh là một linh kiện điện tử làm bằng tinh thể đá thạch anh được mài
phẳng và chính xác. Nó làm việc dựa trên hiệu ứng áp điện. Hiệu ứng này có
tính thuận nghịch. Khi áp một điện áp vào 2 mặt của linh kiện thạch anh, nó
sẽ bị biến dạng và ngược lại, khi ta tạo sức ép vào 2 bề mặt đó, nó sẽ phát ra
điện áp.



Ứng dụng của thạch anh: thạch anh được ứng dụng trong mạch dao động
cũng như mạch lọc tính hợp.

2.3

Cảm biến siêu âm HC-SR04 (Ultrasonic Sensor)


Cảm biến siêu âm HC-SR04 (Ultrasonic Sensor) đang được sử dụng phổ
biến ngày nay để xác định khoảng cách vì độ chính xác tương đối và đặt biệt
là giá thành rẻ. Cảm biến này sử dụng song siêu âm và có thể đo được
khoảng cách từ 2 – 300cm. Khi khoảng cách đo càng xa thì độ chính xác
càng giảm vì góc đo sẽ rộng theo hình nón. Cảm biến siêu âm được sử dụng
để đo khoảng cách từ cảm biến cho tới vật cản trong phạm vi đo của cảm
biến. Thơng qua tín hiệu truyền về chúng ta biết được khoảng cách từ cảm
biến cho tới vật cản.


Hình 2. 6 Cảm biến siêu âm HC-SR04

2.3.1 Các chân chức năng:

Dùng cảm biến siêu âm đo mực nước


ĐỒ ÁN HỆ THỐNG NHÚNG
Trang 16/64

VCC
TRIGGE

Cấp nguồn cho cảm biến (5V) hoặc 3.3V ở cảm biến 3V3
Chân phát sóng âm. Là chu kỳ của của điện cao /thấp diễn

R

ra.
Trạng thái ban dầu là 0V, khi có tín hiệu trả về sẽ là 5V và

ECHO
GND

sau đó trở về 0V
Nối cực âm của mạch

2.3.2 Nguyên lý hoạt động:

Hình 2. 7 Nguyên lý đo khoảng cách




Để đo khoảng cách thì cảm biến HC-SR04 phát 1 xung rất ngắn từ chân
Trigger (5 microSeconds). Sau đó cảm biến tạo ra một xung lên ở chân Echo
cho đến khi nhận lại song phản xạ lại ở pin này. Chiều rộng xung bằng thời
gian song phát ra và phản hổi lại.

Dùng cảm biến siêu âm đo mực nước


ĐỒ ÁN HỆ THỐNG NHÚNG
Trang 17/64



Ta dùng cách sau để xác định khoảng cách: Tốc độ âm thanh trong không khí
là hằng số khơng đổi có giá trị là 340 m/s, ứng với 29,412 ms/cm. Khi tính
đươc thời gian song phát ra và phản hồi lại, ta chia cho 29,412 sẽ ra được
khoảng cách đo.

2.4

Màn hình LCD


Màn hình LCD là thiết bị dùng để hiển thị trạng thái và thông số được sử
dụng rộng rãi trong các dự án điện tử và lập trình.

2.4.1 Cấu trúc tổng quản:



Màn hình LCD 16x2 có 16 chân, trong đó có 8 chân dữ liệu từ D0 đến D7 và
3 chân điều khiển là RS, RW và EN.



Các chân cịn lại dùng để cấp nguồn và đèn nền



Các chân điều khiển giúp chúng ta cấu hình màn hình LCD ở chế độ lệnh
hoặc chế độ dữ liệu.

2.4.2 Các chân chức năng

Dùng cảm biến siêu âm đo mực nước


ĐỒ ÁN HỆ THỐNG NHÚNG
Trang 18/64

Hình 2. 8 Sơ đồ chân LCD



VSS: cực âm nguồn cho LCD - GND: 0V




VDD: cực dương nguồn LCD - 5V



Constrast Voltage (Vo): điều khiển độ sáng màn hình



Register Select (RS): lựa chọn thanh ghi



RS=0 chọn thanh ghi lệnh



RS=1 chọn thanh ghi dữ liệu



Read/Write (R/W)



R/W=0 ghi dữ liệu



R/W=1 đọc dữ liệu.




Enable: Cho phép ghi vào LCD



D0 - D7: 8 chân trao đổi dữ liệu với các vi điều khiển, với 2 chế độ sử dụng



Chế độ 8 bit: Dữ liệu được truyền trên cả 8 đường, với bit MSB là bit DB7.

Dùng cảm biến siêu âm đo mực nước


ĐỒ ÁN HỆ THỐNG NHÚNG
Trang 19/64

2.5



Chế độ 4 bit : Dữ liệu được truyền trên 4 đường từ DB4 tới DB7, bit MSB là
DB7.



Backlight (Backlight Anode (+) và Backlight Cathode (-)): Tắt bật đèn màn
hình LCD.
Máy bơm


2.5.1 Thơng số kỷ thuật:
- Máy bơm mini có điện áp: DC 6-12V
- Dịng tiêu thụ: 0.6-2A
- Công suất: 5-12W
- Nhiệt độ hoạt động: 80 độ C
- Lưu lượng bơm: 1-2L/Min
- Kích thước: 90x40x35MM
- Đầu hút cách nước: <= 2 Mét
- Đẩy nước cao: <= 3 Mét (có ống Tio)

Hình 2. 9 Máy bơm mơ hình thực tế

2.6

Các phân mềm được sử dụng

2.6.1 Phần mềm Proteus

Dùng cảm biến siêu âm đo mực nước


ĐỒ ÁN HỆ THỐNG NHÚNG
Trang 20/64


Hình 2. 10 Phần mềm mơ phỏng Proteus




Proteus là phần mềm mơ phỏng mạch điện tử của Lancenter Electronics.
Phần mềm này mô phỏng được hết các linh kiện điện tử thơng dụng như PIC,
8051,.



Phần mềm gồm 2 phần là ISIS dùng để mô phỏng và ARES để vẽ mạch in.
Sau khi ta vẽ mạch nguyên lý hệ thống và chạy mơ phỏng hồn chỉnh thì ta
xuất sang file vẽ mạch in. Ta có thể dùng chế độ auto đi dây cũng như tự đi
theo ý muốn của mình.

2.6.2 Phần mêm Altium Designer

Hình 2. 11 Phần mềm thiết kế mạch Altium

Dùng cảm biến siêu âm đo mực nước


ĐỒ ÁN HỆ THỐNG NHÚNG
Trang 21/64



Altium Designer là 1 trong những công cụ vẽ mạch điện tử mạnh nhất được
phát triển bởi hãng Altium Limited.



Một số đặt trưng:
+ Giao diện thiết kế, quản lý và chỉnh sửa dễ dàng xử dụng.

+ Hỗ trợ mạnh mẽ trong việc thiết kế và đi dây tự động.
+ Hệ thống thư viện linh kiện phong phú và hồng chỉnh.
+ Mơ phỏng mạch 3D đem lại cái nhìn tổng quan cho mạch trong khơng gian
3 chiều.

2.6.3 Phần mềm CCS


CCS là trình biên dịch lập trình ngơn ngữ C cho vi điều khiển PIC.



CCS là trình biên dịch lập trình ngơn ngữ C cho Vi điều khiển PIC của hãng
Microchip.

CHƯƠNG 3.
3.1

THIẾT KẾ VÀ THI CÔNG

Sơ đồ khối:
- Hệ thống được chia làm 4 khối:

+ Khối Nguồn: Cấp nguồn 5V cho VĐK và chấp nguồn cho máy bơm chạy
+ Khối xử lý: PIC 16F877A làm trung tâm điều khiển và xử lý tín hiệu
+ Khối cảm biến: linh kiện chính là cảm biến siêu âm SRF04 dùng để thu số liệu
truyền về vi xử lý
+ Khối chấp hành: Nhận tín hiệu điều khiển và chấp hành lệnh điều khiển, gồm có 3
phần chính là switch điều khiển, màng hình LCD hiển thị thơng số đo và tình trạng
hoạt động của mạch, máy bơm nước vào hệ thống


Dùng cảm biến siêu âm đo mực nước


ĐỒ ÁN HỆ THỐNG NHÚNG
Trang 22/64

3.1.1 Khối nguồn:


Cấp nguồn 5V cho VĐK và chấp nguồn cho máy bơm chạy

Hình 3. 2 Thành phần bên trong khối nguồn

3.1.2 Khối cảm biến:


Linh kiện chính là cảm biến siêu âm SRF04 dùng để thu số liệu truyền về vi
xử lý.

Dùng cảm biến siêu âm đo mực nước


ĐỒ ÁN HỆ THỐNG NHÚNG
Trang 23/64

Hình 3. 3 Mơ phỏng cảm biến siêu âm SRF04

3.1.3 Khối xử lý :



Dùng PIC 16F877A làm trung tâm điều khiển và xử lý tín hiệu các tín hiệu
được gửi về từ khối cảm biến, và được cấp nguồn từ khối nguồn

Hình 3. 4 Mơ phỏng PIC-16F877A

3.1.4 Khối chấp hành:

Dùng cảm biến siêu âm đo mực nước


ĐỒ ÁN HỆ THỐNG NHÚNG
Trang 24/64



Nhận tín hiệu điều khiển và chấp hành lệnh điều khiển, gồm có 3 phần chính
là switch điều khiển, màng hình LCD hiển thị thơng số đo và tình trạng hoạt
động của mạch, máy bơm nước vào hệ thống:

3.1.4.1LCD hiển thị các thông số, và hệ số điều chỉnh và các chế độ:

Hình 3. 5 Mô phỏng LCD hiển thị

3.1.4.2Động cơ và cụm máy bơm nước:

Hình 3. 6 Mơ phỏng động cơ và máy bơm




Linh kiện dùng IRFZ44N là transistor MOSFET, loại transistor kênh N,
dùng để điều khiển động cơ bơm nước.

Dùng cảm biến siêu âm đo mực nước


ĐỒ ÁN HỆ THỐNG NHÚNG
Trang 25/64

Hình 3. 7 Sơ đồ chân



Cấu tạo của Mosfet ngược Kênh N: G (Gate) cực cổng là cực điều khiển
được cách lý hoàn toàn với cấu trúc bán dẫn cịn lại bởi lớp điện mơi cực
mỏng nhưng có độ cách điện cực lớn dioxit-silic, S (Source) cực nguồn , D
(Drain): cực máng đón các hạt mang điện

3.1.4.3Các switch điều khiển:

Hình 3. 8 Mơ phỏng nút nhấn

3.2

Mơ phỏng trên phần mềm Protues:


Để thiết kế sơ đồ nguyên lý, ta dựa trên những linh kiện đã chọn và dùng
phần mềm Proteus để tiền hành.


Dùng cảm biến siêu âm đo mực nước


×