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

bài tập lớn vi xử lý trong đo lường và điều khiển

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.2 MB, 37 trang )

Đề số 1. ĐIỀU KHIỂN ĐỘNG CƠ MỘT CHIỀU VÀ HIỂN THỊ LÊN LCD
Môn học : Vi xử lý trong Đo lường và Điều khiển
ST

Tên sinh viên

T
1
2
3

TRẦN VĂN BÍNH
ĐẶNG TRẦN MINH
NGUYỄN VĂN HÒA

MSSV
2017602524
2017602674
2017602627

Lớp
TĐH - 2
TĐH - 2
TĐH - 2

Khoá
K-12
K-12
K-12

I. ĐỀ TÀI:


Đo và hiển thị tốc độ động cơ
 ấn start động cơ chạy, ấn up tăng tốc, ấn dơn giảm tốc, ấn left quay
thuận, ấn right quay nghịch, ấn stop dừng
II. YÊU CẦU VỀ NỘI DUNG
Chương 1: Tổng quan về Vi xử lý trong Đo lường và Điều khiển
1.1.
1.2.
1.3.

Cấu trúc hệ thống đo lường điều khiển có sử dụng Vi xử lý
Cấu trúc chung họ 8052
Tổng quan về ngôn ngữ C và các hàm, kiểu dữ liệu hay dùng cho việc lập
trình cho Vi điều khiển

Chương 2: Tổng quan về ENCODER và đọng cơ 1 chiều
2.1. Tổng quan về encoder
2.2. Tổng quan LCD
2.3. Mạch cầu H


Chương 3: Xây dựng ứng dụng trên cơ sở 8051
3.1.Chương trình điều khiển xây dựng trên keil C xây dựng trên keil C
3.2. Kết quả mô phỏng, thiết kế mạch nguyên lý và Thực nghiệm trên mạch thực
Kết luận: Sinh viên tổng kết những vấn đề đã làm được và chưa làm được
III. YÊU CẦU VỀ HÌNH THỨC VÀ THỜI GIAN
+ Báo cáo in trên giấy A4, 2 mặt, in màu ảnh chụp mạch thực
+ Nội dung báo cáo (bản word) nộp về email: trước khi
bảo vệ ít nhất 2 ngày.
+ Về thời gian thực hiện:
Ngày giao đề:………………. Ngày hoàn thành : ………………..

Hà Nội, ngày……tháng…….năm……..
Trưởng bộ môn

Giáo viên hướng dẫn
Phạm Văn Hùng


Lời nói đầu
Trong những năm gần đây với sự phát triển mạnh mẽ của khoa học – kĩ
thuật.Đặc biệt của ngành công nghiệp chế tạo các linh kiện bán dẫn,các các vi
mạch tích hợp IC một hướng phát triển mới của Vi xử lý đã hình thành đó là Vi
Điều Khiển.Với những ưu điểm to lớn về tốc độ, độ chính xác cao, khả năng sử lý
các bìa toán, tính linh hoạt nên các Vi Điều khiển đã được ứng dụng trên hầu hết
các lĩnh vực trong cuộc sống. Bằng cách áp dụng Vi Điều Khiển trong sản xuất và
xử lý, Vi Điều Khiển đã thực sự thể hiện được các ưu điểm của mình so với các
thiết bị thông thường khác.
Vì những ứng dụng to lớn của Vi điều khiển, do đó mà ở các trường Đại
Học, Cao Đẳng, TCCN…. Về khoa học – công nghệ. Môn vi xử lý đã trở thành
một môn học không thể thiếu được trong trương trình đào tạo.vi điều khiển 8051 sẽ
cung cấp cho sinh viên những khái nhiện cơ bản cách thức hoạt động của Vi xử lý
qua đó sinh viên có tư duy, kiến thức nền tảng, để có thể giải quyết các bài toán
ứngdụng thực tế trong cuộc sống, cũng như là cơ sở để học tập nghiên cứu các
dòng Vi xử lý khác như: PIC, AVR….
Qua đồ án này chúng em có cái nhìn thực tế hơn, sâu sắc hơn về vi điều
khiển. chúng em cũng đã hiểu thêm nhiều về cách thức xử lý một bài toán thực tế
phức tạp.
Với sự hường đẫn tận tình của thầy: PHẠM VĂN HÙNG chúng em hi vọng
chúng em có thể hoàn thành tốt đồ án này.
CHƯƠNG 1: TỔNG QUAN VỀ VI XỬ LÝ TRONG ĐO LƯỜNG ĐIỀU KHIỂN


1.1.

Cấu trúc của hệ thống đo lường và điều khiển


NGUỒN 12V

NÚT ẤN
HIỂN THỊ
LCD
VI XỬ LÝ 8051

ĐIỀU KHIỂN
ĐỘNG CƠ

ĐỘNG CƠ DC12V

NGUỒN 5V

ENCODER

Chức năng và nhiệm vụ của từng khối
 Đông cơ: động cơ được sử dụng là động cơ điện một chiều có điện áp đặt
vào tối đa 24V.Trên trục động cơ có gắn encoder để có thể đo được tốc độ
động cơ ở đây chúng ta dùng động cơ DC 12V.
 Encoder: dùng để đo số vòng quay của động cơ và phát hiện chiều quay của
động cơ encoder nó sẽ đo tốc độ động cơ thông qua sự liên lạc, mất liên lạc
của led phát quang và bộ phận thu quang rồi chuyển thành các xung điện áp
vuông gửi tới chân ngắt của Vi Xử Lý.
 Vi xử lý: nhận các tín hiệu từ encoder thông qua cơ chế ngắt từ đó căn cứ

vào xung do đó nó sẽ tính toán và xử lý để Vi Xử Lý:nhận các tín hiệu từ
encoder thông qua cơ chế ngắt từ đó căn cứ vào
- Đưa ra tốc độ động cơ hiển thị lên led 7 thanh.
- Điều chế độ rộng xung PWM để điều khiển tốc độ động cơ cho phù
hợp với yêu cầu. Khối xử lý là trái tim của của hệ thống là phấn quan trọng
nhất của điều khiển mọi hoạt động của mạch.


 Khối điều khiển: điều khiển hướng của động cơ diện một chiều trong bài này
chúng em xử dụng mạch cầu H để điều khiển hướng của động cơ.
 Khối hiển thị:nhận số liệu về tốc độ động cơ từ vi xử lý rồi hiển thị lên các
led 7
 Khối hiển thị: Nhận số liệu về tốc độ động cơ từ vi xử lý rồi hiển thị lên các
lên LCD theo sự điều khiển của vi xử lý
 Khối nguồn 5V: có chức năng cung cấp điện áp ổn định cho các khối trong
trong mạch mạch.Cụ thể trong mạch ta sử dụng hai nguồn riêng biệt:
- Nguồn 5V DC dùng để nuôi các IC trong mạch hoạt động tạo ra các tín
hiệu xuất ra chuẩn TTL, tránh các trường hợp nhiễu điện áp không đúng với
điện áp cấp cho IC => tránh IC không hoạt động, hỏng hóc, chập cháy.
- Nguồn 12V DC dùng để cung cấp cho động cơ một chiều DC
CHƯƠNG II: CẤU TRÚC AT89S52

AT89S52 LÀ PHIÊN BẢN 8051 CÓ ROM trên chip là Flash> phiên bản nayd
thích hợp cho ứng dụng nhanh vì bộ nhớ flash có thể xáo trong vòng vài giây.
AT89S52 có thể lập trình qua cổng COM của máy tính IBM PC
Các thành phần bên trong nó bao gồm
128 byte RAM
8K byte ROM
32 đường nhập xuất
3 bộ định thời

8 chế độ ngắt
 Sơ đồ khối của AT89S52


 Sơ đồ chân của AT89S52


 Chức năng của các chân


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:
Bit

Tên

Chức năng chuyển đổi

P3.0

RXD


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

P3.1

TXD

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

P3.2

INT0 Ngõ vào ngắt ngoài thứ 0.

P3.3

INT1 Ngõ vào ngắt ngoài thứ 1.

P3.4

T0

Ngõ vào TIMER/ COUNTER thứ 0.

P3.5

T1

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

P3.6


WR

1.

P3.7

RD

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.

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ương
trình được đọc từ Eprom qua bus dữ liệu, được chốt vào thanh ghi lệnh bên trong
89S52 để 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):
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ết
nố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ấp
nguồ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 phải tự
động reset.
Các giá trị tụ và điện trở được chọn là:
R1=10, R2=220, C=10 F.
Các ngõ vào bộ dao động X1, X2:


Bộ tạo dao động được tích hợp bên trong 89S52.
Khi sử dụng 89S52, người ta chỉ cần 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à 22p
- 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 để:
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à được
cho 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ưu
trong thanh ghi IP (Interrupt Priority) hay nói cách khác thanh ghi IP cho phép
chọn mức ưu tiên cho các ngắt (giá trị thanh ghi IP khi reset là 00h).

Bit

Ký hiệu

Địa chỉ bit

Mô tả

IP.7

_

_

Không được mô tả


IP.6

_

_

Không được mô tả

IP.5

ET2

BDH

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

IP.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

IP.2

EX1

BAH

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

IP.1

ET0

B9H

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

IP.0

EX0

B8H


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


 Nếu 2 ngắt xảy ra đồng thời thì ngắt nào có nào có mức ưu tiên cao hơn
sẽ được phục vụ trước.
 Nếu 2 ngắt xảy ra đồng thời có cùng mức ưu tiên thì thứ tự ưu tiên được
thực hiện từ cao đến thấp như sau: ngắt ngoài 0 – timer 0 – ngắt ngoài 1 – timer 1 –
cổng nối tiếp – timer 2.
 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ột
ngắ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ột
chươ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.
Bit

Ký hiệu

Địa chỉ bit

Mô tả

IE.7

EA

AFH

Cho phép / Cấm toàn bộ


IE.6

_

AEH

Không được mô tả

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

IE.3

ET1

ABH


Cho phép ngắt từ Timer 1

IE.2

EX1

AAH

Cho phép ngắt ngoài 1

IE.1

ET0

A9H

Cho phép ngắt từ Timer 0

IE.0

EX0

A8H

Cho phép ngắt ngoài 0
Tóm tắt thanh ghi IE

- Các cờ ngắt:



Khi điều kiện ngắt xảy ra thì ứng với từng loại ngắt mà loại cờ đó được đặt
lên mức cao để xác nhận ngắt.
Ngắt

Cờ

Thanh ghi SFR và vị trí bit

Bên ngoài 0

IE0

TCON.1

Bên ngoài 1

IE1

TCON.3

Timer 1

TF1

TCON.7

Timer 0

TF0


TCON.5

Port nối tiếp

TI

SCON.1

Port nối tiếp

RI

SCON.0

Các loại cờ ngắt
- Các vectơ ngắt:
Khi chấp nhận ngắt, giá trị được nạp vào PC gọi là vector ngắt. Nó là địa chỉ
bắt đầu của ISR cho nguồn tạo ngắt, các vector ngắt được cho ở bảng sau :
Ngắt

Cờ

Địa chỉ vector

Reset hệ thống

RST

0000H


Bên ngoài 0

IE0

0003H

Timer 0

TF0

000BH

Bên ngoài 1

IE1

0013H

Timer 1

TF1

001BH

Port nối tiếp

TI và RI

0023H


Timer 2

002BH


Vector reset hệ thống (RST ở địa chỉ 0000H) được để trong bảng này vì theo nghĩa
này, nó giống ngắt: nó ngắt chương trình chính và nạp cho PC giá trị mới.
 Hoạt động của timer
a, Các thanh ghi của bộ định thời
SFR

Mục đích

TCON
Thanh ghi điều khiển
TMOD
Thanh ghi chế độ
TL0
Byte thấp của bộ định thời 0
TL1
Byte thấp của bộ định thời 1
TH0
Byte cao của bộ định thời 0
TH1
Byte cao của bộ định thời 1
T2CON
Điều khiển bộ định thời 2
RCAP2L
Nhận byte thấp của bộ định thời 2

RCAP2H
Nhận byte cao của bộ định thời 2
TL2
Byte thấp của bộ định thời 2
TH2
Byte cao của bộ định thời 2
- Thanh ghi TMOD (Timer Moder Register)

Các bit M1, M0 được dùng để thiết lập chế độ hoạt động cho các bộ
Timer/Counter.
Các chế độ hoạt động của Timer/Counter được mô tả như trong bảng sau.


Bit C/T được sử dụng để chon xung clock.
Khi bit C/T = 0. Bộ Timer/Counter hoạt động dựa vào xung clock nội bên trong
chip. Tần số của xung clock này được tính bằng 1/12 của tần số thạch anh. Ví dụ
nếu sử dụng thạch anh 12MHz, thì tần số của Timer/Counter sẽ là (1/12)*12MHz =
1MHz.
Khi bit C/T = 1. Bộ Timer/Counter hoạt động dựa vào xung clock cấp từ bên ngoài
đưa vào trên chân T0 (sử dụng cho Timer/Counter 0), chân T1 (sử dụng cho
Timer/Counter 1).
Bit GATE được sử dụng để xác định việc điều khiển khởi động/dừng hoạt động của
bộ Timer.
Nếu GATE = 0. Bộ Timer/Counter được khởi động bằng cách set bit TRx lên 1.
(TR0 cho Timer/Counter 0, TR1 cho Timer/Counter 1). Bộ Timer/Counter dừng
hoạt động nếu bit TRx được xóa về 0.


Nếu GATE = 1. Bộ Timer/Counter được khởi động bằng cách set bit TRx lên 1 và
chân INTx được set lên mức 1. Ngược lại nếu TRx không được set lên 1 hoặc chân

INTx không được set lên 1 thì bộ Timer/Counter dừng hoạt động.
Trong phạm vi bài học này, chúng ta sẽ viết các chương trình với bit GATE = 0. có
nghĩa là không cần khởi động và dừng các bộ định thời bằng phần cứng từ bên
ngoài.
- Thanh ghi điều khiển: TCON

ó 4 bit trong thanh ghi TCON được sử dụng cho bộ Timer/Counter.
Có 2 bit để điều khiển khởi động/dừng hoạt động của Timer/Counter. Đó là:
Bit TR0 dùng để khởi động/dừng Timer/Counter 0. TR0 =1: khởi động. TR0 = 0:
dừng
Bit TR1 dùng để khởi động/dừng Timer/Counter 1. TR1 =1: khởi động. TR1 = 0:
dừng
Có 2 bit cờ báo trạng thái tràn của bộ Timer/Counter. Đó là:
Bit TF0 báo tràn cho bộ Timer/Counter 0. Khi giá trị trong thi ghi chứa giá trị đếm
TL0, TH0 bị tràn, thì bit TF0 sẽ được bật lên 1.


Bit TF1 báo tràn cho bộ Timer/Counter 1. Khi giá trị trong thi ghi chứa giá trị đếm
TL1, TH1 bị tràn, thì bit TF1 sẽ được bật lên 1.
Cả hai bit TF0, TF1 được bật bằng phần cứng, và phải xóa bằng phần mềm.

CHƯƠNG III: TỔNG QUAN VỀ THIẾT BỊ
1.ENCODER

 Cấu tạo và nguyên lý hoạt động của encoder
o Một bộ thu phát quang (LED phát – LED thu).
o Một hệ thống lỗ (rãnh) được bố trí trên một đĩa tròn hoặc một thanh
thẳng

theo một quy tắc nào đó.


Encoder tương đối cung cấp một lượng xung xác định trong một vòng quay. Đầu ra
có thể là một dòng xung duy nhất (kênh A) hoặc hai dòng xung (kênh A và kênh B)
được bù để xác định xoay. Pha này giữa hai tín hiệu được gọi là cầu phương.


 Nguyên tắc hoạt động.
Để tạo mã xung thì mỗi encoder sẽ sử dụng 2 led phát và tương ứng là hai bộ tách
sóng( 2 mắt thu ). Hai led đặt sao cho 2 tín hiệu ra có pha lệch nhau 900
Tốc độ quay của đọng cơ được xác định nhờ vào tần số của tín hiệu. chiều quay
được xác định bằng bằng cách xem tín hiệu nào sớm pha hơn

2.Màn hình LCD

2.Màn hình LCD
Chân số

Tên chân

Chức năng


1

Vss

Chân này phải được nối GND

2


Vcc

Chân nối nguồn cấp (5V)

3

Vee

Chỉnh độ tương phản

4

RS

Chọn thanh ghi

5

R/W

6

E

7

DB0

Chận dữ liệu


8

DB1

Chân dữ liệu

9

DB2

Chân dữ liệu

10

DB3

Chân dữ liệu

11

DB4

Chân dữ liệu

12

DB5

Chân dữ liệu


13

DB6

Chân dữ liệu

14

DB7

Chân dữ liệu

15

LED+

Anode của led

16

LED-

Cathode của led

Đọc hoặc ghi
Cho phép mô-đun


Mô-đun LCD 16 × 2 có một bộ lệnh mỗi lệnh để thực hiệnmột công việc cụ thể với
màn hình. Chúng ta sẽ thảo luận chi tiết về các lệnh sau. Nếu mức logic cao đưa

vào chân RS thì sẽ chọn thanh ghi dữ liệu và mức logic thấp ở chân RS thì sẽ chọn
thanh ghi lệnh. Nếu chúng ta đặt chân RS lên cao và đặt dữ liệu vào dòng dữ liệu 8
bit (DB0 đến DB7), mô-đun LCD sẽ nhận ra đó là dữ liệu sẽ được hiển thị. Nếu
chúng ta làm cho chân RS ở mức thấp và đặt dữ liệu trên đường dữ liệu, mô-đun sẽ
nhận ra đó là một lệnh.
Chân R / W có nghĩa là để chọn giữa chế độ đọc và ghi. Mức cao ở chân này cho
phép chế độ đọc và mức thấp ở chân này cho phép chế độ ghi.
Chân E là để kích hoạt các mô-đun. Chuyển đổi từ cao xuống thấp ở chân này sẽ
cho phép mô-đun.
DB0 đến DB7 là các chân dữ liệu. Dữ liệu được hiển thị và lệnh được đặt trên các
chân này.
LED+ là cực dương của đèn LED phía sau và chân này phải được kết nối với Vcc
thông qua một điện trở giới hạn dòng thích hợp. LED- là cực âm của đèn LED phía
sau và chân này phải được nối đất.


Các lệnh cho mô-đun LCD 16x2
Mô-đun LCD 16 × 2 có một bộ hướng dẫn lệnh đặt trước. Mỗi lệnh sẽ làm cho môđun thực hiện một nhiệm vụ cụ thể. Các lệnh thường được sử dụng và chức năng
của chúng được đưa ra trong bảng dưới đây
Lệnh
0F

Chức năng
LCD bật, con trỏ bật, con trỏ nhấp nháy bật

01

Xoá toàn màn hình

02


Quay về màn hình chính

04

Giảm con trỏ

06

Tăng con trỏ

0E
80

Màn hình bật, con trỏ nhấp nháy tắt
Bắt con trỏ trở về vị trí đầu tiên của hàng 1

C0
38

Bắt con trỏ trở về vị trí đầu tiên của hàng 2
Sử dụng 2 hàng và ma trận 5x7

83

Con trỏ hàng 1 vị trí 3

3C

Kích hoạt dòng 2


08

Tắt màn hình hiển thị và con trỏ

C1

Nhảy đến dòng 2 vị trí 1

OC

Bật màn hình hiển thị, tắt con trỏ

C2

Nhảy đến hàng 2, vị trí 2

Khởi tạo LCD
Các bước phải được thực hiện để khởi tạo màn hình LCD được đưa ra dưới đây và
các bước này là phổ biến cho hầu hết các ứng dụng.
B1: Gửi 38H đến dòng dữ liệu 8 bit để khởi tạo
B2: Gửi 0FH để bật LCD, con trỏ BẬT và con trỏ nhấp nháy ON.
B3:Gửi 06H để tăng vị trí con trỏ.


B4: Gửi 01H để xóa màn hình và trả về con trỏ.
Đưa dữ liệu vào LCD
Các bước để gửi dữ liệu đến mô-đun LCD được đưa ra dưới đây. Mô-đun LCD có
các chân RS, R / W và E. Chính trạng thái logic của các chân này làm cho mô-đun
xác định xem đầu vào dữ liệu đã cho là lệnh hay dữ liệu được hiển thị.

Đặt R / W mức thấp.
Đặt RS = 0 nếu byte dữ liệu là lệnh và tạo RS = 1 nếu byte dữ liệu là dữ liệu sẽ
được hiển thị.
Đặt byte dữ liệu trên thanh ghi dữ liệu.
Xung E từ cao xuống thấp.
Lặp lại các bước trên để gửi dữ liệu khác.
2. Mạch cầu H
Đảo chiều quay được thực hiệ
bằng cách đảo chiều dòng điện
cấp vào động cơ hoặc đảo chiều
dòng điện cấp vào cuộn kích

A

B

B

A

từ( do sử dụng động cơ kích từ
bằng nam châm vĩnh cửu nên
không dùng đước cách này) là có thể thay đổi chiều quay. Một số phương pháp
dảo chiều quay: dùng công tắc 3 cực, hùng mạch cầu H. và trong bài này em
chọn mạch cầu H
Mạch nguyên lý gồm 4 role dùng để điều chiều động cơ và có thêm một
transitor để điều khiển tốc độ động cơ
Khi role A đóng role B mở thì dộng cơ quay thuận và ngược lại khi role B
đóng và đọng cơ A mở thì động cơ quay nghịch
Mạch cầu H

3. Động cơ 1 chiều


 Động cơ một chiều DC (DC là từ viết tắt của Direct Current Motors) là động
cơ được điều khiển bằng dòng có hướng xác định hay nói cách khác thì đây
là loại động cơ chạy bằng nguồn điện áp DC - điện áp 1 chiều.
 Cấu tạo của động cơ điện 1 chiều thường gồm những bộ phận chính như sau:
o Stator: là 1 hay nhiều cặp nam châm vĩnh cửu hoặc nam châm điện
o Rotor: phần lõi được quấn các cuộn dây để tạo thành nam châm điện
o Chổi than (brushes): giữ nhiệm vụ tiếp xúc và tiếp điện cho cổ góp
o Cổ góp (commutator): làm nhiệm vụ tiếp xúc và chia nhỏ nguồn điện
cho các cuộn dây trên rotor.
 Số lượng các điểm tiếp xúc sẽ tương ứng với số cuộn dây trên rotor. Căn cứ
vào phương pháp kích từ, có thể chia động cơ điện 1 chiều thành những
dòng chính như sau:
 Động cơ điện 1 chiều kích từ bằng nam châm vĩnh cửu
 Động cơ điện 1 chiều kích từ độc lập
 Động cơ điện 1 chiều kích từ nối tiếp
 Động cơ điện 1 chiều kích từ song song
 Động cơ điện 1 chiều kích từ hỗn hợp bao gồm 2 cuộn dây kích từ, 1
cuộn được mắc nối tiếp với phần ứng, 1 cuộn được mắc song song với
phần
 Nguyên tắc hoạt động
Stato của động cơ điện 1 chiều thường là 1 hoặc nhiều cặp nam châm vĩnh
cửu hay nam châm điện, rotor gồm có các cuộn dây quấn và được kết nối
với nguồn điện một chiều. Một phần quan trọng khác của động cơ điện 1
chiều chính là bộ phận chỉnh lưu, bộ phận này làm nhiệm vụ đổi chiều dòng
điện trong chuyển động quay của rotor là liên tục. Thông thường, bộ phận
này sẽ có 2 thành phần: một bộ cổ góp và một bộ chổi than tiếp xúc với cổ
góp.  



Nếu trục của động cơ điện một chiều được kéo bằng 1 lực ngoài thì động cơ
này sẽ hoạt động như một máy phát điện một chiều, và tạo ra một xuất điện
động cảm ứng Electromotive force. Khi vận hành ở chế độ bình thường,
rotor khi quay sẽ phát ra một điện áp được gọi là sức phản điện động
counter-EMF hoặc sức điện động đối kháng, vì nó đối kháng lại với điện áp
bên ngoài đặt vào động cơ. Sức điện động này sẽ tương tự như sức điện
động được phát ra khi động cơ sử dụng như một máy phát điện. Như vậy
điện áp đặt trên động cơ sẽ bao gồm 2 thành phần: sức phản điện động và
điện áp giáng tạo ra do điện trở nội của các cuộn dây phản ứng. Dòng điện
chạy qua động cơ sẽ được tính theo công thức sau:
o I=(Vnguon-Vphandiendong)/Rphanung
o Công suất cơ mà động cơ đưa ra được sẽ tính bằng:
o P=I*Vphandiendong
4. Điều khiển tốc độ động cơ bằng phương pháp PWM
Điều khiển tốc độ động cơ là một yêu cầu cần thiết vì có những máy móc hoạt
động với nhiều cấp tốc độ khác nhau, nhanh chậm tùy vào điều kiện làm việc.
Ta có thể diều khiển tốc độ động cơ một chiều bằng cách thay dổi diệ áp phần
ứng của nó. Điều khiển điện áp vào phần ứng ta có nhiều cách như: Sử dụng
bộ điều khiển chỉnh lưu có điều khiển hoặc bộ điều chỉnh xung áp động cơ
điện một chiều (PWM).
Phương pháp điều chỉnh xung áp là đóng ngắt nguồn vào động cơ một cách có
chu kỳ (T). sử dụng bộ băm áp để tạo ra dãy xung điện áp một chiều cung cấp
cho phần ứng của động cơ. Khi ta thay đổi độ rộng xung đó, giá trị trung bình
của điện áp thay đổi, nhờ đó điều chỉnh được tốc độ động cơ. Sơ đồ nguyên lý
đơn giản


Điện áp trung bình của bộ

băm xung

Eb=Utb=U.
Để điều khiển tốc độ
động cơ, chỉ cần thay đổi
thời gian và giữ nguyên
Tck và ta sử dụng loại van
công suất như transistor
hoặc tiristor các van này
tác động nhanh và điều
khiển bằng tín hiệu điện
thường được tích hợp
trong mạch cầu H
 Tính toán các tham số
1. Đọc tín hiệu encoder
Sử dụng một timer để định thời gian lấy mẫu và một counter để
đếm số xung

TIMER 0

Count 1

ENCODER
Sử dụng timer 1 làm chế độ đếm xung cạnh của encoder
Sử dụng timer 0 để định thời gian ngắt (T), ta tính T một cách đơn
giản nhất
Ta có chu kỳ xung thu
được là T1= suy ra f1=
Tốc độ động cơ là n=( N là
số xung /vòng của encoder)



×