You are on page 1of 42

13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

Đồ Án Vi Điều Khiển

Thiết kế thi công mạch đo dòng điện AC dùng


cảm biến ACS712 hiển thị LCD sử dụng
PIC16F877A.

Người Thực Hiện

Đặng Hoàng Tài MSSV: 0309181072

Bộ Môn Tự Động Hóa

Khoa Điện-Điện Tử

Trường Cao Đẳng Kỹ Thuật Cao Thắng

about:blank 1/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

Đồ Án Vi Điều Khiển

Thiết kế thi công mạch đo dòng điện AC dùng


cảm biến ACS712 hiển thị LCD sử dụng
PIC16F877A.

Giáo viên hướng dẫn:

T.S Đặng Đắc Chi

Người Thực Hiện

Đặng Hoàng Tài MSSV: 0309181072

Bộ Môn Tự Động Hóa

Khoa Điện-Điện Tử

Trường Cao Đẳng Kỹ Thuật Cao Thắng

about:blank 2/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

Lời Nhận XMt CNa Giáo Viên Phản Biện

.......................................................................................................................

.......................................................................................................................

.......................................................................................................................

.......................................................................................................................

.......................................................................................................................

.......................................................................................................................

.......................................................................................................................

.......................................................................................................................

.......................................................................................................................

.......................................................................................................................

.......................................................................................................................

.......................................................................................................................

.......................................................................................................................

.......................................................................................................................

.......................................................................................................................

.......................................................................................................................

.......................................................................................................................

.......................................................................................................................

about:blank 3/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

Lời cảm ơn

Trong suốt thời gian thực hiện đồ án này, em đã nhận được sự giúp đỡ, đóng
góp ý kiến, chỉ bảo tận tình của thầy cô và bạn bè.

Em xin chân thành cảm ơn các thầy cô khoa điện- điện tử đã tận tình giúp
em trong suốt quá trình học tập và nghiên cứu. Đặt biệt, em xin gửi lời cảm
ơn chân thành đến thầy TS. Đặng Đắc Chi đã quan tâm giúp đỡ, hướng dẫn
em hoàn thành đồ án này.

Trong quá trình thực hiện không thể tránh khỏi sai sót nhất định rất mong
nhận được sựu phê bình, đóng góp ý kiến cảu thầy cô để đồ án được hoàn
thiện hơn.

Em xin chân thành cảm ơn !

about:blank 4/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

Mụ.c lụ.c

Giới thiệu tổng quan về đề tài 5

1.1 Tổng quan về đề tài...................................................................5

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

1.3 Cấu trúc quyển đồ án................................................................ 5

Lý Thuyết Cơ Bản 7

2.1 Lý thuyết cơ bản....................................................................... 7

2.1.1 Vi điều khiển PIC16F877A.................................................................7

2.1.2 module cảm biến ACS712.................................................................. 9

2.1.3 IC ổn áp LM7805..............................................................................11

2.1.4 Màn hình LCD1602.......................................................................... 13

2.1.5 Loa buzz............................................................................................14

Thiết kế sơ đồ khối và sơ đồ nguyên lý 15

3.1 Sơ đồ khối của hệ thống..........................................................15

3.2 Sơ đồ nguyên lý...................................................................... 16


3.2.1 Khối nguồn........................................................................................16

3.2.2 Khối cảm biến...................................................................................17

3.2.3 Khối hiển thị..................................................................................... 18

about:blank 5/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

3.2.4 Khối xử lý trung tâm.........................................................................19

3.2.5 Khối công suất.................................................................................. 20

3.2.6 Khối nút nhấn....................................................................................21

3.3 Sơ đồ mạch in......................................................................... 22

Chương trình điều khiển 24

4.1 Lưu đồ giải thuật.....................................................................24

4.1.1 Chương trình chính...........................................................................24

4.1.2 Chương trình con đo dòng................................................................ 25

4.1.3 Chương trình con nút nhấn............................................................... 26

4.1.4 Chương trình con cảnh báo...............................................................27

4.2 Chương trình điều khiển......................................................... 27

kết quả đạt được và hướng phát triển 34

5.1 Kết luận...................................................................................34

5.1.1 Kết quả đạt được............................................................................... 34

5.1.2 Hạn chế............................................................................................. 34

5.2 Hướng phát triển..................................................................... 34

about:blank 6/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

Document continues below

Discover more from:


tài liệu tham khảo
2002
535 documents

Go to course

BÀI GIẢNG HÀNG HÓA VẬN TẢI 3TC-20

151 tài liệu tham khảo 100% (19)

Bài giảng Phương pháp nghiên cứu khoa học

183 tài liệu tham khảo 100% (16)

Chuyên Đề 6 Động Từ Khuyết Thiếu-Modal Verbs


(ĐÃ IN)
19
tài liệu tham khảo 93% (14)

Chuyên Đề 5 Sự Hoà Hợp Giữa Chủ Ngữ Và Động


Từ Subject And Verb Agreements
11
tài liệu tham khảo 100% (3)

Unit2. Four Corners 2 Student Book

10 tài liệu tham khảo 100% (3)

about:blank 7/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

Đánh giá hiệu quả giao nhận hàng nhập khẩu qua
các tiêu chí
8
tài liệu tham khảo 100% (2)
Hình 2.1 PIC16F877A 7

Hình 2.2 Sơ đồ chân PIC6F877A 8

Hình 2.3 Cảm biến ACS712 9

Hình 2.4 Sơ đồ chân cảm biến ACS712 10

Hình 2.5 IC ổn áp LM7805 11

Hình 2.6 Sơ đồ chân IC7805 12

Hình 2.7 Màn hình LCD1602 13

Hình 2.8 Loa buzz 14

Hình 3.1 Sơ đồ khối 15

Hình 3.2 Khối nguồn 16

Hình 3.3 Cảm biến ACS712 17

Hình 3.4 Khối hiển thị 18

Hình 3.5 Khối xử lý trung tâm 19

Hình 3.6 Khối công suất 20

Hình 3.7 Khối nút nhấn 21

Hình 3.8 Sơ đồ mạch in 22

Hình 4.1 Chương trình chính 24

Hình 4.2 chương trình con đo dòng 25

Hình 4.3 Chương trình con nút nhấn 26

about:blank 8/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

Thiết kế thi công mạch đo dòng điện AC dùng cảm biến


ACS712 hiển thị LCD sử dụng PIC16F877A.

Đặng Hoàng Tài

MSSV:0309181072

Bộ Môn Tự Động Hóa

Khoa Điện-Điện Tử

Trường Cao Đẳng Kỹ Thuật Cao Thắng

Tóm Tắt

Đồ án đo dòng điện AC là một đề tài có tính áp dụng trong thực tế. trong
xu hướng công nghiệp hóa – hiện đại hóa hiện nay, việc phát triển các thiết bị
đo để phù hợp với nhu cầu của mọi người là rất cần thiết.

Với đồ án này em sẽ tìm hiểu và sử dụng cảm biến ACS712 để đo dòng


điện AC và hiển thị kết quả đo được lên LCD 16x2, thông qua lập lập trình
và điều khiển bằng vi điều khiển PIC16F877A.

Có cảnh báo bằng đèn và loa để cảnh báo quá dòng cho người sử dụng.

Sử dụng phần mềm PIC C Compiler để lập trình cho vi điều khiển và
phần mềm Altium designer để thiết kế mạch kết nối các linh kiện.

Các phần mềm liên quan:

 Protues để chạy mô phỏng.


 PICkit để nạp chương trình cho vi điều khiển.

about:blank 9/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

Giới thiệu tổng quan về đề tài

1.1 Tổng quan về đề tài


Ngày nay, khi đời sống ngày càng được nâng cao, trong xu hướng công
nghiệp hóa – hiện đại hóa hiện nay, các thiết bị ngày càng hiện đại và có
nhiều thông số khác nhau, việc phát triển các thiết bị đo để đo kiểm các thiết
trước khi sữa chữa là rất cần thiết phù hợp với nhu cầu của người sử dụng.

Đo điện áp và dòng điện sẽ luôn hữu ích trong khi tạo hoặc gỡ lỗi bất kỳ
hệ thống điện nào. Trong dự án này, em sẽ chế tạo Ampe kế kỹ thuật số của
riêng mình bằng Vi điều khiển PIC16F877A và cảm biến dòng ACS712-5A.
Nên em đã chọn đề tài thiết kế mạch đo dòng điện AC dùng cảm biến
ACS712 hiển thị lên màn hình LCD sử dụng vi điều khiển PIC16F877A, em
cảm thấy đề tài này là phù hợp với chuyên ngành Điều Khiển và Tự Động
Hóa.

Thiết bị đo dòng AC là một mạch điện có thể đo được các đòng điện xoay
chiều như quạt, đèn, các thiết bị điện, điện mạch điện… Bằng cách mắc nối
tiếp với các thiết bị cần đo, mạch đo dòng điện này có thể đo được các thiết
bị có dòng điện cao đến vài Ampe.

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

 Có thể đo được dòng điện xoay chiều, hiển thị thông số đo được lên
màn hình LCD.
 Hiểu được nguyên lý của cảm biến ACS712, PIC16F877A, màn hình
LCD.
 Giao tiếp được với nút nhấn.
 Có hệ thống cảnh báo bằng loa và đèn.

1.3 Cấu trúc quyển đồ án

about:blank 10/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

Chương 1: Giới thiệu tổng quan về đề tài.

about:blank 11/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

- Giới thiệu về đề tài.


- Mục tiêu đề tài.
Chương 2: Lý thuyết cơ bản.

- Giới thiệu các thiết bị sử dụng trong đề tài.


Chương 3: Sơ đồ khối và sơ dồ nguyên lý.

Chương 4: Chương trình điều khiển

Chương 5: Kết quả đạt được và hướng phát triển.

about:blank 12/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

Lý Thuyết Cơ Bản

2.1 Lý thuyết cơ bản

2.1.1 Vi điều khiển PIC16F877A

Hình 2.1 PIC16F877A

Thông số kỹ thuật
 Nguồn cung cấp dương từ 2V đến 5V.
 Tập lệnh gồm 35 lệnh có độ dài 14 bit.
 Tốc độ hoạt dộng cho phép là 20 MHz với một chu kì lệnh là 20ms.
 Bộ nhớ 368x8 byte RAM.
 Số port I/O là 5 với 33 chân I/O.
 Có kênh chuyển đổi ADC 10 bit.

about:blank 13/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

Sơ đồ chân

Hình 2.2 Sơ đồ chân PIC6F877A

PIC16F877A có các thông số chân bao gồm:


 2 chân GND
 2 chân 5V
 1 chân reset
 33 chân xuất nhập trong đó có 2 chân có thể sử dụng như PWM

about:blank 14/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

 2 chân ngõ vào ra dao động thạch anh hoặc xung clock bên ngoài

2.1.2 module cảm biến ACS712


Cảm biến ACS712 (Hall Effect Current Sensor) dùng để đo dòng điện dựa
trên hiệu ứng Hall để đo dòng điện AC/DC, cảm biến có kích thước nhỏ gọn,
dễ kết nối, giá trị trả ra là điện áp Analog tuyến tính theo cường độ dòng điện
cần đo nên rất dễ kết nối và lập trình với Vi điều khiển, thích hợp với các ứng
dụng cần đo dòng AC/DC với độ chính xác cao.

Module cảm biến dòng điện hall ACS712 5A, 20A, 30A sử dụng ic
ACS712ELC tương ứng dựa trên hiệu ứng Hall chuyển dòng điện cần đo
thành giá trị điện thế.

Cảm biến dòng điện Hall 5A ACS712 là ic cảm biến dòng tuyến tính dựa
trên hiệu ứng Hall. chân ACS712 sẽ xuất ra một tín hiệu analog ở chân Vout
biến đổi tuyến tính theo Ip (dòng điện cần đo) được lấy mẫu thứ cấp DC
(hoặc AC) trong phạm vi cho phép.

Hình 2.3 Cảm biến ACS712

Thông số kỹ thuật cNa cảm biến ACS712


 Điện áp hoạt động: 5VDC.
 Đường tín hiệu analog có độ nhiễu thấp.

about:blank 15/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

 Thời gian tăng của đầu ra để đáp ứng với đầu vào là 5µs.
 Điện trở dây dẫn trong là 1.2mΩ.
 ACS 712 5A, ACS 712 20A, ACS 712 30A
 Ip: 5A, 20A, 30A
 Nhiệt độ hoạt động: -40 đến 85 độ C
 Độ phân giải của cảm biến:
 ACS 712-05B (5Ampe):
 180 – 190 mV/A
 Ip: -5A đến - 5A.
 ACS 712-20A (20Ampe):
 96 – 104 mV/A
 Ip: -20A đến - 20A.
 ACS 712-30A (30Ampe
 64 – 68 mV/A
 Ip: -30A đến - 30A.

Sơ đồ chân

Hình 2.4 Sơ đồ chân cảm biến ACS712

Nguyên lý hoạt động

about:blank 16/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

Khi đo dòng điện AC, do dòng điện AC không có chiều nên không cần
quan tâm chiều.

Cấp nguồn 5v cho module khi chưa có dòng Ip (chưa có tải mắc nối tiếp
với domino hoặt thiết bị chưa có điện), thì Vout=2.5v. khi có dòng xoay chiều
đi qua Ip (dòng AC) do dòng xoay chiều độ lớn thay đổi liên tục theo hàm
sin, nên điện thế Vout truyền cho vi điều khiển sẽ là điện thế xoay chiều hình
sin có độ lớn tuyến tính với dòng điện AC, 0 đến 5V (điện thế xoay chiều)
tương ứng với -5A đến 5A (dòng xoay chiều).

Vì cảm biến đọc về giá trị tuyến tính với giá trị điện áp trả về. Nên sau khi
đọc được giá trị ADC tức giá trị điện áp, chỉ cần đem chia cho độ phân giải
của các loại cảm biến thì sẽ tìm được dòng điện tương ứng

2.1.3 IC ổn áp LM7805
IC LM7805 là loại IC cung cấp điện áp ngõ ra với giá trị ổn định mặc dù
trong lúc đó điện áp ngõ vào IC thay đổi liên tục và thiếu sự ổn định.

IC LM7805 được phân loại là một loại IC điều chế điện áp DC dương vì
ngõ ra của IC này luôn có mức điện áp dương so với mức điện áp nối
mass(GND).

Hình 2.5 IC ổn áp LM7805

about:blank 17/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

Thông số kỹ thuật
 Điện áp vào lớn nhất: 20V.
 Điện áp vào nhỏ nhất: 7V.
 Kiểu đóng vỏ: TO-220.
 Nhiệt độ hoạt động lớn nhất: 85°C.
 Nhiệt độ hoạt động nhỏ nhất: -20°C.
 Dòng cực đại có thể duy trì: 1A.
 Điện áp ổn định: 5V.
 Công suất tiêu tán cực đại nếu không dùng tản nhiệt: 2W.
 Công suất tiêu tán nếu dùng tản nhiệt đủ lớn: 15W.

Sơ đồ chân

Hình 2.6 Sơ đồ chân IC7805

 Chân 1 là chân Iput dùng để cung cấp điện áp DC đầu vào, điện áp cung
cấp từ 7V đến 20v.
 Chân thứ 2 là chân Ground để đấu với mass (chân GND).
 Chân thứ 3 chân Output là chân ngõ ra cung cấp điện áp ổn định là 5V.

Nguyên lý hoạt động


IC LM7805 là IC với một điện áp đầu ra cố định là 5V, yêu cầu điện áp
đầu vào tối thiếu là 7V. IC LM7805 có thế cung cấp điện áp đầu ra với dòng
điện lên đến 1A

about:blank 18/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

2.1.4 Màn hình LCD1602


Màn hình LCD1602 xanh lá sử dụng driver HD44780, có khả năng hiển
thị 2 dòng với mỗi dòng 16 ký tự, màn hình có độ bền cao, rất phổ biến,
nhiều code mẫu và dễ sử dụng thích hợp cho những người mới học và làm dự
án.

Hình 2.7 Màn hình LCD1602

Thông số kỹ thuật
 Điện áp hoạt động là 5 V.
 Kích thước: 80 x 36 x 12.5 mm
 Chữ đen, nền xanh lá
 Khoảng cách giữa hai chân kết nối là 0.1 inch tiện dụng khi kết nối với
Breadboard.
 Tên các chân được ghi ở mặt sau của màn hình LCD hổ trợ việc kết nối,
đi dây điện.
 Có đèn led nền, có thể dùng biến trở hoặc PWM điều chình độ sáng để sử
dụng ít điện năng hơn.
 Có thể được điều khiển với 6 dây tín hiệu

about:blank 19/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

 Có bộ ký tự được xây dựng hổ trợ tiếng Anh và tiếng Nhật

about:blank 20/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

Kết nối LCD


 Trong 16 chân của LCD được chia ra làm 3 dạng tín hiệu như sau:
 Các chân cấp nguồn: Chân số 1 là chân nối mass (0V), chân thứ 2 là Vcc
nối với nguồn+5V. Chân thứ 3 dùng để chỉnh contrast thường nối với biến
trở.
 Các chân điều khiển: Chân số 4 là chân RS dùng để điều khiển lựa chọn
thanh ghi. Chân RW dùng để điều khiển quá trình đọc và ghi. Chân EN là
chân cho phép dạng xung chốt.
 Các chân dữ liệu D0 đến D7: Chân số 7 đến chân số 14 là 8 chân dùng để
trao đổi dữ liệu giữa thiết bị điều khiển và LCD

2.1.5 Loa buzz


Loa có kích thước nhỏ gọn giúp trong việc lắp đặt cũng như sử dụng.

Mục đích tạo âm thanh cảnh báo.

Hình 2.8 Loa buzz

Thông số kỹ thuật
 Điện áp đầu vào 5V.
 Dòng hoạt động 12mA.
 Âm thanh đầu ra: tít tít.
 Màu sắc: đen.

about:blank 21/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

Thiết kế sơ đồ khối và sơ đồ nguyên lý

3.1 Sơ đồ khối cNa hệ thống

5V 5V
Khốếi nguốồn

5V
Analog Khốếi xử lý trung Digital
Khốếi cảm biếến tấm Khốếi hiển thị

Digital Digital

Thiếết bị AC Khốếi nút nhấến Khốếi cống suấết

Hình 3.1 Sơ đồ khối

Phân tích sơ đồ khối:


 Khối nguồn: cấp nguồn 5VDC cho khối xử lí trung tâm, khối cảm biến và
khối hiển thị.
 Khối xử lí trung tâm: nhận tín hiệu analog từ cảm biến ACS712 và hiển
thị giá trị dòng điện lên LCD. Ngoài ra khối xử lí trung tâm còn nhận tín
hiệu digital từ nút nhấn để cài giá trị dòng điện khối xử lí sẽ hiển thị dòg
điện được cài và cấp nguồn ngược lại cho nút nhấn.
 Khối cảm biến: đọc giá trị dòng điện từ thiết bị AC, gửi tín hiệu analog
xuống cho khối xử lí.
 Khối hiển thị: hiển thị dong điện, các thông số cài đặt dòng điện.
 Khối công suất: nhận tính digital từ khối xử lí.
 Thiết bị AC: là các thiết bị điện sử dụng điện áp xoay chiều

about:blank 22/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

 Khối nút nhấn: sử dụng nút nhấn để cài giới hạn.

3.2 Sơ đồ nguyên lý

3.2.1 Khối nguồn

Hình 3.2 Khối nguồn

Linh kiện sử dụng


 LM7805
 2 tụ phân cực 470uF
 2 tụ 104
 1 trở 2200
 1 led nguồn

Chức năng
Khối nguồn: cấp nguồn 5VDC cho khối xử lí trung tâm, khối cảm biến và
khối hiển thị

Nguyên lý hoạt động


Chúng ta sẽ cung cấp điện áp đầu vào sẽ từ 7-12v và thông qua IC ổn áp
LM7805 điện áp ổn định ở ngõ ra sẽ là 5V.

Tụ C1 và C2 để lọc điện áp đầu vào cấp cho chân Vi của IC 7805, tụ C1


có tác dụng cung cấp điện áp tạm thời cho chân Vi khi nguồn đột ngột bị sụt
áp, tụ C2 là tụ gốm nên trở kháng lớn, C2 có tác dụng ngăn nguồn đầu vào
tăng áp đột ngột làm dạng sóng điện áp đầu vào có hình răng cưa.

about:blank 23/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

Tụ C3 và C4 để lọc điện áp cấp cho tải tiêu thụ lấy từ chân Vo của IC
7805, tụ C3 có các dụng cung cấp điện áp tạm thời cho tải khi điện áp tải đột
ngột bị sụt áp, tụ C4 trở kháng lớn, C4 có tác dụng lọc nhiễu điện áp đầu ra
(nhiễu là các điện áp không mong muốn làm cho dạng sóng điện áp ngõ ra có
hình răng cưa).

3.2.2 Khối cảm biến

Hình 3.3 Cảm biến ACS712

Linh kiện sử dụng


 1 cảm biến ACS712

Chức năng
Khối cảm biến: đọc giá trị dòng điện từ thiết bị AC, gửi tín hiệu analog
xuống cho khối xử lí.

Nguyên lý hoạt động khi đo dòng điện AC


Khi đo dòng điện AC, nối trực tiếp cảm biến vào thiết bị đo, do dòng điện
AC không có chiều nên không cần quan tâm chiều.

about:blank 24/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

Cấp nguồn 5v cho module khi chưa có dòng Ip (chưa có tải mắc nối tiếp
với domino hoặt thiết bị chưa có điện), thì Vout=2.5v. khi có dòng xoay chiều
đi qua Ip (dòng AC) do dòng xoay chiều độ lớn thay đổi liên tục theo hàm
sin, nên điện thế Vout truyền cho vi điều khiển sẽ là điện thế xoay chiều hình
sin có độ lớn tuyến tính với dòng điện AC, 0 đến 5V (điện thế xoay chiều)
tương ứng với -5A đến 5A (dòng xoay chiều).

Vì cảm biến đọc về giá trị tuyến tính với giá trị điện áp trả về. Nên sau khi
đọc được giá trị ADC tức giá trị điện áp, chỉ cần đem chia cho độ phân giải
của các loại cảm biến thì sẽ tìm được dòng điện tương ứng

3.2.3 Khối hiển thị

Hình 3.4 Khối hiển thị

Linh kiện sử dụng


 1 LCD 16x2.
 1 biến trở 10k.

Chức năng
Khối hiển thị: hiển thị giá trị dòng điện, các thông số cài đặt dòng điện.

Nguyên lý hoạt động

about:blank 25/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

Màn hình LCD sử ụng chế độ 4 bit nhận giá trị tín hiệu Digital từ khối xử
lý trung tâm để hiển thị giá trị lên màn hình

3.2.4 Khối xử lý trung tâm

Hình 3.5 Khối xử lý trung tâm

Linh kiện sử dụng


 1 Pic16F877a
 1 thạch anh 4MHZ
 1 nút nhấn
 1 trở 10k
 2 tụ 22p

Chức năng

about:blank 26/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

Chức năng khối xử lý trung tâm: tính toán giá trị nhận được từ cảm biến
và điều khiển các thiết bị

Nguyên lý hoạt động


Khối xử lí trung tâm: nhận tín hiệu analog từ cảm biến ACS712 và hiển thị
giá trị dòng điện lên LCD. Ngoài ra khối xử lí trung tâm còn nhận tín hiệu
digital từ nút nhấn để cài giá trị dòng điện khối xử lí sẽ hiển thị dòg điện
được cài và cấp nguồn ngược lại cho nút nhấn.

3.2.5 Khối công suất

Hình 3.6 Khối công suất

Linh kiện sử dụng


 1 còi buzz
 1 trở 1k
 1 trở 330
 1 led báo
 1 transistor A1015

about:blank 27/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

Chức năng
Thiết bị AC: là các thiết bị điện sử dụng điện áp xoay chiều

Nguyên lý hoạt động


Cài sẵn cho thiết bị một giới hạn cho phép đo được. khi giá trị dòng điện
đo được vượt quá giới hạn cho phép, bộ xử lý trung tâm sẽ suất tín hiệu làm
cho đèn cảnh báo chớp tắt, và loa bắt đầu kêu.

3.2.6 Khối nút nhấn

Hình 3.7 Khối nút nhấn

Linh kiện sử dụng


 2 nút nhấn
 1 tở thanh 4k7

Chức năng
Khối nút nhấn: sử dụng nút nhấn để cài giới hạn.

Nguyên lý hoạt động


Cài một giá trị giới hạn dòng điện đo được, khi dòng điện vượt quá giới hạn
sẽ kích khối công suất hoạt động

about:blank 28/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

3.3 Sơ đồ mạch in

Hình 3.8 Sơ đồ mạch in

3.4 Mạch thực tế và thiết bị hoàn thành

Hình 3.9 mạch thực tế

about:blank 29/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

Hình 3.10 thiết bị đo dòng hoàn thành

about:blank 30/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

Chương trình điều khiển

4.1 Lưu đồ giải thuật

4.1.1 Chương trình chính

Bắết đấồu

Khởi tạo dữ liệu Khởi tạo giá trị I/O Cài ADC

While(true) end

Dodong(); Gioihan(): Canhbao():

Hiển thị LCD

Hình 4.1 Chương trình chính

about:blank 31/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

4.1.2 Chương trình con đo dòng

Begin

Value=read_ADC

S S
Value>maxvalue Value<minvalue

Đ Đ

Maxvalue=value Minvalue=value

TB=(maxvalue-
minvalue)/2

Volt=TB*5.0/1023

Amp=volt*0.707/0.185

Hình 4.2 chương trình con đo dòng

about:blank 32/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

4.1.3 Chương trình con nút nhấn

Begin

S S
B4==0 B5==0

Đ Đ

Dem=Dem+0.1 Dem=Dem-0.1

Đ Đ Dem=5.0
Dem==5.0 Dem=0 Dem==0.0

S
S
S S
B4==0 B5==0

Đ Đ

Hiển thị LCD Hiển thị LCD

Hiển thị LCD

Hình 4.3 Chương trình con nút nhấn

about:blank 33/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

4.1.4 Chương trình con cảnh báo

Begin

S
Amp<dem

output_bit(pin_B1,1); Delay_ms(500); output_bit(pin_B1,0) output_bit(pin_B0,0);


output_bit(pin_B0,1); output_bit(pin_B1,1);

4.2 Chương trình điều khiển

about:blank 34/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

#include <16f877a.h>

#device ADC=10

#fuses hs,nowdt,put,noprotect,nolvp

#use delay(clock=4000000)

#define LCD_RS_PIN PIN_D0

#define LCD_RW_PIN PIN_D1

#define LCD_ENABLE_PIN PIN_D2

#define LCD_DATA4 PIN_D4

#define LCD_DATA5 PIN_D5

#define LCD_DATA6 PIN_D6

#define LCD_DATA7 PIN_D7

#include <LCD.C>

INT16 value;

INT16 maxvalue;

INT16 minvalue;

float a;

float dem;

float volt;

float amp;

INT32 tongmin;

about:blank 35/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

INT32 tongmax;

void dodong()

For(int i=0;i<100;i++)

value = read_adc();

for(int i=0;i<10;i++)

if (value > maxvalue)

maxvalue = value;

if (Value < minValue)

minValue = value;

tongmin=tongmin+minvalue;

tongmax=tongmax+maxvalue;

minvalue=1023;

maxvalue=0;

about:blank 36/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

a= ((tongmax/100)-(tongmin/100));

volt =(float)( a * 5.0)/1023.0;

amp =(float)((volt/2.0)*0.707)/0.185 ;

maxValue = 0.0;

minValue = 1023.0;

tongmax=0;

tongmin=0;

void hienthi()

{ LCD_GOTOXY(1,

1);

LCD_PUTC("DONG DIEN=");

LCD_GOTOXY(11,1);

printf( LCD_PUTC,"%0.2f",amp);

LCD_GOTOXY(1,2);

LCD_PUTC("GIOI HAN=");

LCD_GOTOXY(11,2);

printf( LCD_PUTC,"%0.2f",dem);

delay_ms(50);

void canhbao()

about:blank 37/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

if(amp<dem)

output_bit(pin_B0,1);

output_bit(pin_B1,1);

else

output_bit(pin_B1,0);

output_bit(pin_B0,1);

void nutnhan()

IF(input(pin_B5)==0)

dem=dem-0.1;

if(dem<0.0)

dem=5.0;

WHILE(input(pin_B5)==0)

hienthi();

about:blank 38/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

IF(input(pin_B4)==0)

dem=dem+0.1;

if(dem>5.0)

dem=0.0;

WHILE(input(pin_B4)==0)

hienthi();

void main()

set_tris_b(0xf0);

output_b(0x0f);

dem=5.0;

tongmax=0;

tongmin=0;

maxValue = 0.0;

minValue = 1023.0;

about:blank 39/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

amp=0;

lcd_init();

LCD_gotoxy(1,1);

printf(LCD_putc,"DANG HOANG TAI\n");

printf(LCD_putc,"BAO CAO DA VDK");

delay_ms(2000);

LCD_putc('\f');

SETUP_ADC(ADC_CLOCK_INTERNAL);

SETUP_ADC_PORTS(AN0);

SET_ADC_CHANNEL(0); DELAY_MS(1);

while(true)

dodong();

hienthi();

canhbao();

nutnhan();

}
}

about:blank 40/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

kết quả đạt được và hướng phát triển

5.1 Kết luận

5.1.1 Kết quả đạt được


 Đo được dòng điện, hiển thị được kết quả lên LCD.
 Cài được giới hạn dòng điện cho phép, có còi thông báo quá quá dòng.

5.1.2 Hạn chế


 Nút nhấn chống dội chưa được tốt.
 Vẽ mạch chưa tính toán kĩ dẫn đến in mạch không được đẹp.
 Dòng điện đo về còn chưa ổn định.

5.2 Hướng phát triển


 Sử dụng cảm biến ACS712 để đo dòng điện và điều khiển các thiết
bị khác.

 Phát triển lên thiết bị VOM có thể đo được cả dòng điện, điện trở,
điện áp.

about:blank 41/42
13:17 31/10/2023 [123doc] - mach-do-dong-dien-ac-dung-cam-bien-acs712-voi-pic16f877a

Tài liệu tham khảo

[1] Giáo trình vi điều khiển PIC16F877A Cao Đẳng kỹ thuật Cao Thắng.
[2] Simple-circuitdigest.com, <https://circuitdigest.com/microcontroller-
projects/digital-ammeter-circuit-using-pic16f877a-acs712>
[3] huynhnhattung.com, <https://huynhnhattung.com/cam-bien-acs712-do-dong-
dien-hien-thi-lcd1602-pic16f877a/>
[4] sparkfun.com,
<https://www.sparkfun.com/datasheets/BreakoutBoards/0712.pdf>

about:blank 42/42

You might also like