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

Điều khiển tốc độ động cơ dc dùng encoder hiển thị lên lcd

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 (480.89 KB, 29 trang )

HỌC VIỆN HÀNG KHÔNG VIỆT NAM
Khoa Điện tử - Viễn thông
_____________________

ĐỒ ÁN MÔN HỌC 2

Giáo viên hướng dẫn: Th.S Võ Phi Sơn
Sinh viên thực hiện: NGÔ ĐÌNH HÀO
Mã số SV: 1453020059
Lớp: DV2-K8

Thành phố Hồ Chí Minh – 5/2017


NHIỆM VỤ ĐỒ ÁN MÔN HỌC 2
Họ và tên sinh viên: Ngô Đình Hào

MSSV: 1453020059

Lớp: DV2-K8
1

Tên đồ án môn học: Mạch hiển thị tốc độ động cơ DC và hiển thị LCD

2

Nhiệm vụ:





Học và tìm hiểu vẽ mạch bằng ORCAD, PROTEUS
Nghiên cứu các loại mạch điều khiển tốc độ động cơ DC
Tìm hiểu về IC 16F877A

3

Ngày giao đồ án môn học: ngày 6 tháng 3 năm 2017

4

Ngày hoàn thành đồ án môn học: ngày 3 tháng 5 năm 2017

5

Họ tên người hướng dẫn: ThS Võ Phi Sơn
T/p Hồ Chí Minh, ngày

tháng 05 năm 2017

NGƯỜI HƯỚNG DẪN
(Ký và ghi rõ họ tên)


NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
………………………………………………………………………………….
…………………………………………………………………………………
…………………………………………………………………………………
……
Phần đánh giá:



Ý thức thực hiện:



Nội dụng thực hiện:



Hình thức trình bày:



Tổng hợp kết quả:
Điểm bằng số:

Điểm bằng chữ:

(Quy định về thang điểm và lấy điểm tròn theo quy định của trường)
Tp. Hồ Chí Minh, ngày

tháng 5 năm 2017
NGƯỜI HƯỚNG DẪN
(Ký và ghi rõ họ tên)


MỤC LỤC NỘI DUNG


MỤC LỤC HÌNH ẢNH



LỜI NÓI ĐẦU
Hiện nay đất nước ta trong thời kì đổi mới, thời kì công nghiệp hoá
hiện đại họá cùng với sự phát triển của công nghệ thông tin, ngành kỹ thuật
điện tự động hóa cũng phát triển lên tầm cao mới. Điều khiển tự động là một
trong những ngành quan trọng trong quá trình công nghiệp hóa, hiện đại hóa
đặc biệt là góp phần vào việc giải phóng sức lao động của con người và chính
xác hơn con người. Điều khiển tự động có mặt từ trước công nguyên đó là
chiếc đồng hồ có phao điều chỉnh Ktesibios của Hi Lạp. Rồi sau này cũng có
thêm một số máy móc điều khiển tự động (như: hệ điều chỉnh nhiệt độ của
Cornelis drebble, hệ điều chỉnh tốc độ được ứng dụng trong công nghiệp….).
Trong chiến tranh thế giới thứ 2 người hỏi điều khiển tự động để ứng dụng
vào mục đích quân sự (như: máy bay tự động lái, điều khiển vũ khí, điều
khiển ra đa...) . Những năm 50 các phương pháp toán học bắt đầu ra đời được
đưa nhanh vào ứng dụng thực tế. Ở Mỹ người ta nghiên cứu dựa trên miền tần
số còn ở Liên Xô thì lại dựa trên miền thời gian. Ngày nay để đáp ứng được
nhu cầu của con người, giảm tải lao động tay chân, hệ thống “Đo tốc độ động
cơ và hiển thị LCD” ra đời giúp cho việc đo tốc độ động cơ trong công nghiệp
trở nên dễ dàng và thuận tiện hơn rất nhiều, giảm thiểu các sai sót khi vận
hành hệ thống với các động cơ điện.

Xin chân thành cám ơn!
Người thực hiện
Ngô Đình Hào

6


PHẦN I

TỔNG QUAN VỀ ĐỒ ÁN
Chương 1: Giới thiệu chung về đồ án
Theo nghiên cứu của em hiện tại của em dự án này đã có nhiều người
thực hiện nhưng sản phẩm này còn rất nhiều nhược điểm như: mạch phức
tạp,hay bị nóng,tuổi thọ thấp…Dự án này là do chính em nghiên cứu và hoàn
thiện độc lập ngoài chức năng điều khiển tốc độ sau khi hoàn thiện đã khắc
phục hoàn toàn những vấn đề tồn tại của sản phẩm đi trước như: giá thành rất
rẻ (hoàn thành khoản 200 ngàn đồng), mạch không bị nóng,các linh kiện được
sắp xếp gọn gàng và dễ hiểu, mạch chạy ổn định cao…

7


Chương 2: Cơ sở lý thuyết
2.1.IC 16F877A
 Khái niệm:
- Pic 16F877A có tập lệnh gồm 35 lệnh, mỗi lệnh được thực hiện trong
một chu kỳ xung clock. Tốc độ hoạt động tối đa cho phép là 20mhz. với
mỗi chu kỳ lệnh là 200ms , bộ nhớ chương trình 8K*14bit . Số port I/O
là 5 với 33 pin I/O
 Các đặc tính ngoại vi bao gồm các khối chức năng sau:
- timer0: bộ đếm 8 bit với bộ chia tần số 8 bit
timer1: bộ đếm 16 bit với bộ chia tần số ,có thể thực hiện chức năng
đếm dựa vào xung clock ngoại vi ngay khi vi điều khi vi điều khiển
hoạt động ở chế độ sleep
-

timer2: bộ đếm 8 bit với bộ chia tần số, bộ postcaler
Hai bộ Capture /so sánh/ điều chế độ rộng xung
Các chuẩn giao tiếp UART với 9 bit địa chỉ

Các đặc tính Analog: 8 kênh chuyển đổi ADC 10 bit, 2 bộ so sánh
Bên cạnh đó là một vài đặc tính khác của vi điều khiển: như bộ nhớ
flash có thể nạp xóa 100.000 nghìn lần, bộ nhớ eproom ghi xóa được
1.000.000 lần.Nạp được chương trình ngay trên mạch điện ICSP

8


Hình 2.1.IC16F877A
 Thông số kỹ thuật :
- OSC1/CLKIN là chân ngả vào của mạch dao động thạch anh. Định tần
-

cho xung nhịp và cũng là một ngả vào của mạch tạo xung nhịp.
OSC2/CLKOUT là chân ngả ra của mạch dao động thạch anh và là ngả

-

ra của xung nhịp.
MCLR (Master Clear) là chân Reset, tác dụng của lệnh Reset là trả

-

chương trình về địa chỉ 0000h. Lệnh tác dụng ở mức áp thấp.
RA0, RA1, RA2, RA3, là các chân xuất nhập của bến cảng Port A.
RA4/TOCKI là chân đa nhiệm, vừa làm chân xuất nhập của Port A và
lại là chân lấy xung cho thanh đếm của đồng hồ Timer 0 (ở chân này có

-


cực Drain để hở).
RB0/INT là chân đa nhiệm, vừa làm chân xuất nhập của Port B và lại là
chân phát động theo ngắt ngoài. Các chân của Port B có thể được lập
trình để có trở kháng lớn dùng để làm ngả vào, nhập trạng thái ngoài

-

vào PIC.
RB1, RB2, RB3, là các chân xuất nhập của bến cảng Port B.
RB4, RB5, là các chân xuất nhập của Port B và phát động ngắt theo sự
thay đổi trên các chân này.
9


-

RB6, là 1 chân xuất nhập của Port B và phát động ngắt theo sự thay đổi
trên chân này. Nó còn có thể lập trình để dùng chân này phát xung nhịp

-

dùng cho công năng truyền dữ liệu nối tiếp.
RB7, là 1 chân xuất nhập của Port B và phát động ngắt theo sự thay đổi
trên chân này. Nó còn có thể lập trình để dùng chân này trao đổi dữ liệu

-

dùng cho công năng truyền dữ liệu nối tiếp.
VSS là chân nối masse để lấy dòng (ở đây là dòng điện tử).
VDD là chân nối vào đường nguồn dương (từ 2V đến 5.5V).


2.2.LCD 16X2
 Khái niệm :
- Màn hình tinh thể lỏng (Liquid Crystal Display, LCD) là loại thiết bị

hiển thị cấu tạo bởi các tế bào (các điểm ảnh) chứa tinh thể lỏng có
khả năng thay đổi tính phân cực của ánh sáng và do đó thay đổi cường
độ ánh sáng truyền qua khi kết hợp với các kính lọc phân cực. Chúng
có ưu điểm là phẳng, cho hình ảnh sáng, chân thật và tiết kiệm
điện.Ngày nay, thiết bị hiển thị LCD được sử dụng trong rất nhiều các
ứng dụng của VĐK. LCD có rất nhiều ưu điểm so với các dạng hiển
thị khác: Nó có khả năng hiển thị kí tự đa dạng, trực quan (chữ, số và
kí tự đồ họa), dễ dàng đưa vào mạch ứng dụng theo nhiều giao thức
giao tiếp khác nhau, tốn rất ít tài nguyên hệ thống và giá thành rẻ . . .
 Hình dạng và kích thức:
- Có rất nhiều loại LCD với nhiều hình dáng và kích thước khác nhau,
trên hình là loại LCD thông dụng

10


Hình 2.2.LCD 16x2 thực tế
-

Khi sản xuất LCD, nhà sản xuất đã tích hợp chíp điều khiển bên trong
lớp vỏ và chỉ đưa các chân giao tiếp cần thiết. Các chân này được đánh
số thứ tự và đặt tên như hình :

Hình 2.3.LCD trong proteus


11


Chân Kí hiệu

Ý nghĩa

1

VSS

Chân nối đất cho LCD, khi thiết kế mạch ta
nối chân này với GND của mạch điều khiển

2

Vdd

Chân cấp nguồn cho LCD, khi thiết kế
mạch ta nối chân này với VCC=5V của
mạch điều khiển

3

VEE

Điều chỉnh độ tương phản của LCD.

4


RS

Chân chọn thanh ghi (Register select). Nối
chân RS với logic “0” (GND) hoặc logic
“1” (VCC) để chọn thanh ghi.
+ Logic “0”: Bus DB0-DB7 sẽ nối với
thanh ghi lệnh IR của LCD (ở chế độ “ghi”
- write) hoặc nối với bộ đếm địa chỉ của
LCD (ở chế độ “đọc” - read)
+ Logic “1”: Bus DB0-DB7 sẽ nối với
thanh ghi dữ liệu DR bên trong LCD

5

RW

Chân chọn chế độ đọc/ghi (Read/Write).
Nối chân R/W với logic “0” để LCD hoạt
động ở chế độ ghi, hoặc nối với logic “1” để
LCD ở chế độ đọc.

12


6

E

Chân cho phép (Enable). Sau khi các tín
hiệu được đặt lên bus DB0-DB7, các lệnh

chỉ được chấp nhận khi có 1 xung cho phép
của chân E.
Ở chế độ ghi: Dữ liệu ở bus sẽ được LCD
chuyển vào(chấp nhận) thanh ghi bên trong
nó khi phát hiện một xung (high-to-low
transition) của tín hiệu chân E.
Ở chế độ đọc: Dữ liệu sẽ được LCD xuất
ra DB0-DB7 khi phát hiện cạnh lên (low-tohigh transition) ở chân E và được LCD giữ
ở bus đến khi nào chân E xuống mức thấp.

13


7-14

D0 – D7

Tám đường của bus dữ liệu dùng để trao
đổi thông tin với MPU. Có 2 chế độ sử
dụng 8 đường bus này :
+ Chế độ 8 bit : Dữ liệu được truyền trên
cả 8 đường, với bit MSB là bit DB7.
+ Chế độ 4 bit : Dữ liệu được truyền trên
4
đường từ DB4 tới DB7, bit MSB là
DB7










Chú ý :
- Ở chế độ “đọc”, nghĩa là MPU sẽ đọc thông tin từ LCD thông qua các
-

chân Dx.
Còn khi ở chế độ “ghi”, nghĩa là MPU xuất thông tin điều khiển cho

-

LCD thông qua các chân Dx.
Chân 15 và chân 16: ghi là A và K. Nó là anot và katot của một con led
dùng để sáng LCD trong bóng tối, chúng ta có thể k nối , nếu sử dụng

nối chân 15 với trở 220 or 330 ôm lên VCC, chân 16 nối đất.
- Tập lệnh của LCD.
 Một số chú ý :
- Trước khi tìm hiểu tập lệnh của LCD, sau đây là một vài chú ý khi giao
tiếp với LCD :Tuy trong sơ đồ khối của LCD có nhiều khối khác nhau,
nhưng khi lập trình điều khiển LCD ta chỉ có thể tác động trực tiếp
được vào 2 thanh ghi DR và IR thông qua các chân DBx, và ta phải
-

thiết lập chân RS, R/W phù hợp để chuyển qua lại giữ 2 thanh ghi này.
Với mỗi lệnh, LCD cần một khoảng thời gian để hoàn tất, thời gian này
có thể khá lâu đối với tốc độ của MPU, nên ta cần kiểm tra cờ BF hoặc

đợi (delay) cho LCD thực thi xong lệnh hiện hành mới có thể ra lệnh

-

tiếp theo.
Địa chỉ của RAM (AC) sẽ tự động tăng (giảm) 1 đơn vị, mỗi khi có

-

lệnh ghi vào RAM. (Điều này giúp chương trình gọn hơn)
Các lệnh của LCD có thể chia thành các nhóm như sau : Các lệnh về
kiểu hiển thị. VD : Kiểu hiển thị (1 hàng / 2 hàng), chiều dài dữ liệu (8

-

bit / 4 bit), …
Chỉ định địa chỉ RAM nội.
Nhóm lệnh truyền dữ liệu trong RAM nội.
Tập lệnh:
14


-

Tập lệnh của LCD tương đối đơn giản. Nhưng khi lập trình cho mạch
có LCD ta chỉ cần gọi các hàm có sẵn trong trình biên dịch mà không
cần phải đánh các lệnh phức tạp.

2.3 Motor
 Khái niệm:

- Motor là một thiết bị tạo ra chuyển động, như một động cơ, nó thường

được dùng để chỉ một động cơ điện hoặc một động cơ đốt trong. Nó
-

cũng có thể là:
Động cơ điện, một loại máy chuyển từ điện năng thành một chuyển

-

động cơ học.
AC motor, một động cơ điện xoay chiều.
Động cơ đồng bộ, một động cơ xoay chiều phân biệt bởi một cánh quạt
quay với cuộn dây nam châm qua với tỷ lệ giống như xen kẽ hiện tại và

-

kết quả từ lĩnh vực có ổ nó.
Cảm ứng vận động, cũng gọi là động cơ lồng sóc, một loại động cơ
không đồng bộ hiện luân phiên, nơi lực chính là cung cấp cho các thiết

-

bị quay bằng phương tiện cảm ứng điện từ.
DC Motor, một động cơ điện chạy trên điện hiện hành trực tiếp.
Brushed DC động cơ điện, một nội bộ commutated động cơ điện được

-

thiết kế để chạy từ một nguồn năng lượng trực tiếp hiện hành.

DC motor, một đồng bộ động cơ điện được cung cấp bởi điện hiện
hành trực tiếp và có một hệ thống điều khiển điện tử đổi lẩn nhau, thay

-

vì một hệ thống cơ khí đổi lẩn nhau dựa trên bàn chải.
Động cơ điện, một loại động cơ điện dựa trên việc thu hút và repulsion
phí điện Servo, một động cơ điện là điều hành một servo, thường được
sử dụng trong robotics Nội bộ quạt làm mát bằng động cơ điện, một
động cơ điện có nghĩa là tự do quạt làm mát bằng một, thường được sử
dụng cho động cơ với mật độ năng lượng cao.

15


Hình 2.4.Motor

2.4 Tụ điện

-

Khái niệm:
Tụ điện có khả năng tích trữ năng lượng dưới dạng điện trường.
Ký hiệu là: C.
Đơn vị: Farad (F).
Phân loại tụ điện:
Tụ giấy, Tụ gốm, Tụ mica (Tụ không phân cực ).

Hình 2.5.Tụ không phân cực
-


Các loại tụ này không phân biệt âm dương và thường có điện dung nhỏ
từ 0,47 µF trở xuống, các tụ này thường được sử dụng trong các mạch

-

điện có tần số cao hoặc mạch lọc nhiễu.
Tụ hoá (Tụ có phân cực):Tụ hoá là tụ có phân cực âm dương , tụ hoá có
trị số lớn hơn và giá trị từ 0,47µF đến khoảng 4.700 µF , tụ hoá thường
được sử dụng trong các mạch có tần số thấp hoặc dùng để lọc nguồn, tụ
hoá luôn luôn có hình trụ…
16


Hình 2.6: Tụ hoá
-

Tụ xoay là tụ có thể xoay để thay đổi giá trị điện dung, tụ này thường
được lắp trong radio để thay đổi tần số cộng hưởng khi ta dò đài.

Hình 2.7.Tụ xoay sử dụng trong radio
 Công dụng của tụ điện:
- Dùng để tích điện, và xả điện, chỉ cho tín hiệu xoay chiều đi qua, ngăn
-

dòng một chiều.
Khả năng nạp, xả điện nhiều hay ít phụ thuộc vào điện dung C của tụ.
Đơn vị đo điện dung ở mạch điện tử gồm: pF (Pico Fara), nF (nano

-


Fara), µF (Micro Fara).
Khi sử dụng tụ ta phải quan tâm đến 2 thông số:
Điện dung: Cho biết khả năng chứa điện của tụ.
Điện áp: Cho biết khả năng chịu đựng của tụ.

Encoder
 Khái niệm:
- Encoder mục đích dùng để quản lý vị trí góc của một đĩa quay, đĩa

2.5

quay có thể là bánh xe, trục động cơ, hoặc bất kỳ thiết bị quay nào cần
xác định vị trí góc.Encoder được chia làm 2 loại, absolute encoder và
incremental encoder. Tạm gọi là encoder tuyệt đối và encoder tương
đối. Với encoder tuyệt đối thì với tín hiệu ta nhận được, sẽ chỉ rõ ràng
vị trí của encoder, chúng ta không cần xử lý gì thêm, cũng biết chính
xác vị trí của encoder.Còn incremental encoder, là loại encoder chỉ có
17


1, 2, hoặc tối đa là 3 vòng lỗ. Ta có thể hình dung thế này, nếu bây giờ
các bạn đục một lỗ trên một cái đĩa quay, thì cứ mỗi lần đĩa quay 1
vòng, ta sẽ nhận được tín hiệu, và biết đĩa quay một vòng. Nếu bây giờ
các có nhiều lỗ hơn, ta sẽ có được thông tin chi tiết hơn, có nghĩa là đĩa
quay 1/4 vòng, 1/8 vòng, hoặc 1/n vòng, tùy theo số lỗ nằm trên
incremental encoder.Cứ mỗi lần đi qua một lỗ, chúng ta phải lập trình
để thiết bị đo đếm lên 1. Do vậy, encoder loại này có tên incremental
encoder


(encoder

tăng

lên1

đơnvị).

Hình 2.8.Encoder
 Nguyên lý cơ bản của encoder, đó là một đĩa tròn xoay, quay quanh

trục. Trên đĩa có các lỗ (rãnh). Người ta dùng một đèn led để chiếu lên
mặt đĩa. Khi đĩa quay, chỗ không có lỗ (rãnh), đèn led không chiếu
18


xuyên qua được, chỗ có lỗ (rãnh), đèn led sẽ chiếu xuyên qua. Khi đó,
phía mặt bên kia của đĩa, người ta đặt một con mắt thu. Với các tín hiệu
có, hoặc không có ánh sáng chiếu qua, người ta ghi nhận được đèn led
có chiếu qua lỗ hay không.Khi trục quay, giả sử trên đĩa chỉ có một lỗ
duy nhất, cứ mỗi lần con mắt thu nhận được tín hiệu đèn led, thì có
nghĩa là đĩa đã quay được một vòng.
 Nguyên lý cơ bản của hoạt động encoder.

Hình 2.9.Nguyên lý hoạt động của encoder
Với việc sử dụng encoder để đo xung và tính toán tốc độ của động cơ, ta phải
có công thức để có thể tính toán ra được tốc độ của động cơ
60.n
N .T


-

V=
V là vận tốc của động cơ (vòng/phút)
n là số xung xuất ra của 1 kênh trong 1s
N là số xung của đĩa của động cơ encoder
T là thời gian lấy mẫu

2.6 Các thành phần khác
 Ngoài các phần linh kiện chính trên ta còn chú ý đến các linh kiện khác
như:
- Nguồn cấp: chọn adapter 5V, đây là mức nguồn hỗ trợ tốt nhất cho
IC16F877A.
- Đèn led hiển thị dòng điện vào mạch
- Thạch anh 20MHz chống nhiễu tín hiệu
- Tín hiệu đầu motor: domino 2 chân.
- Biến trở 5k điều khiển độ sáng của màn hình LCD
19


20


PHẦN II
NỘI DUNG VÀ KẾT QUẢ
Chương 3: Thiết kế mạch thực tế
3.1. Sơ đồ khối
Khối nguồn sử dụng một cục sạc 5V.
Khối điều khiển gồm IC 16F877A nhận tín hiệu từ encoder của động cơ bước
truyền đến LCD hiển thị tốc độ vòng quay của động cơ

3.2. Mạch proteus
C1

KENH_A
OSC1

B

22P

X1

C2

C

20MHz

D

OSC2

LCD1

22P

16X2-LCD

1


RD0/PSP0
RD1/PSP1
RD2/PSP2
RD3/PSP3
RD4/PSP4
RD5/PSP5
RD6/PSP6
RD7/PSP7

R1

A

220R

D1

D0
D1
D2
D3
D4
D5
D6
D7
7
8
9
10
RD4

11
RD5 12
RD6
13
RD7
14

10k

RS
RW
E

19
20
21
22
27
28
29
30

RD0
RD1
RD2
RD3
RD4
RD5
RD6
RD7


VEE
2

RD1 4
RD25
RD36

RC0
RC1
RC2
RC3
RC4
RC5
RC6
RC7

RV1
VSS
VDD
VEE

15
16
17
18
23
24
25
26


RB2
RB3
RB4
RB5
RB6
RB7

J1
KENH_A

1
2
3

J2
1
2

SIL-100-03

SIL-100-02

PIC16F877A

K

LED-BLUE

KENH_A


1
5V 2
VEE3

RA0/AN0
RA1/AN1
RA2/AN2/VREF-/CVREF
RA3/AN3/VREF+
RA4/T0CKI/C1OUT
RA5/AN4/SS/C2OUT
RC0/T1OSO/T1CKI
RE0/AN5/RD
RC1/T1OSI/CCP2
RE1/AN6/WR
RC2/CCP1
RE2/AN7/CS
RC3/SCK/SCL
RC4/SDI/SDA
MCLR/Vpp/THV
RC5/SDO
RC6/TX/CK
RC7/RX/DT

33
34
35
36
37
38

39
40

0V

RE0 8
RE1 9
RE2 10

RB0/INT
RB1
RB2
RB3/PGM
RB4
RB5
RB6/PGC
RB7/PGD

50%

2
3
4
5
6
7

OSC1/CLKIN
OSC2/CLKOUT


0V
1

RA0
RA1
RA2
RA3
RA4
RA5

13
14

3 5V

U1
OSC1
OSC2

A

Hình 3.1.Sơ đồ nguyên lí hệ thống điều khiển tốc độ động cơ DC

21


Hình 3.2. Mạch layout

22



Hình 3.3. Mạch 3D

23


Hình 3.4.Mạch thực tế
3.3. Nguyên lý hoạt động
-

Mạch sử dụng vi điều khiển PIC 16F877A để đếm các xung xuất ra từ
chân của encoder bằng phương pháp ngắt ngoài và đếm số lần ngắt
ngoài đo được trên chân B0. Sau đó vi điều khiển sẽ tính toán theo
công thức đã cho sẵn và sẽ hiển thị ra LCD tốc độ vòng/phút và phần

-

trăm của động cơ.
Phần mềm thiết kế mạch in:Proteus.
Phần mềm mô phỏng: Proteus 8.0.
Phần mềm lập trình: CCS.

24


3.4. Lưu đồ thuật toan và code nạp cho vi điều khiển
 Lưu đồ:

Hình 3.5.Lưu đồ
 Chương trình:

25


×