BAOCAO_dk dong co buoc theo nhiet do
Trang 1TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
KHOA ĐIỆN TỬ - VIỄN THễNG
o0o
-BàI TậP LớN
Môn: Vi xử lý
Đề tài: Điều khiển động cơ bước theo nhiệt độ
Giáo viên hướng dẫn: Thầy Phạm Ngọc Nam Sinh viên thực tập: Nhóm 5_ĐT9K47
1.Nguyễn Sỹ Dũng (nt) 2.Nguyễn Minh Đức 3.Nguyễn Tiến Dũng 4.Trịnh Hoàng Long 5.Đào Trần Hùng 6.Nguyễn Tuấn Anh
Hà Nội.11/2005
1
Trang 2Lời mở đầu
Trong cuộc sống hiện đại ngày nay các ứng dụng về điều khiển tự động
đang trở thành gần gủi với hầu hết mọi ngời Là một sinh viên khoa Điện tử viễn thông sau khi đã học xong môn Vi xử lý chúng em thiết nghĩ mình có thể làm một số ứng dụng nhỏ về áp dụng những kiến thức về Vi xử lý và các Vi
điều khiên thông dụng Đề tài của bọn em là dựa vào sự biến đổi của nhiệt độ
để đa ra tín hiện điều khiển tốc độ của động cơ bớc thông qua một Vi điều khiển thông dụng
Chúng em xin chân thành cám ơn thầy Phạm Ngọc Nam đã hết lòng giúp đỡ bọn em trong việc hoàn thành đề tài này.
2
Trang 3ơng I
Mở đầu
I Đặt vấn đề
Ngày nay với sự phát triển của công nghệ vi điện tử các hệ thống điều khiển dần dần đợc tự động hoà Với những kỹ thuật tiên tiến nh vi xử lý, vi
điều khiển đ… ợc ứng dụng vào các lĩnh vực điều khiển thì các hệ thống điều khiển cơ khí thô sơ, với tốc độ xử lý chậm ít chính xác đợc thay thế bằng các
hệ thống điều khiển tự động với các lệnh chơng trình đã đợc thiết lập trớc Trong quá trình sản xuất ở các nhà máy, xí nghiệp,việc đo và khống chế nhiệt độ tự động là một yêu cầu hết sức cần thiết và quan trọng Vì nếu nắm bắt đợc nhiệt độ làm việc của hệ thống, dây chuyền sản xuất ,giúp ta biết đ…
-ợc tình trạng làm việc của các yêu cầu và có những xử lý kịp thời để tránh h hỏng và giải quyết các xự cố xảy ra
Để đáp ứng đợc yêu cầu đo và không chế nhiệt độ tự động, thì có nhièu phơng pháp để thực hiện Nghiên cứu khảo sát các vi xử lý và vi điều khiển, nhóm chúng em đã thấy rằng việc khống chế nhiệt độ bằng động cơ bớc có nhiều u điểm nh: dễ dàng điều khiển vận tốc động cơ để khống chế nhiệt độ nhờ vào quạt gió …
Do trong điều kiện hạn chế về kinh tế, thời gian và trình độ nên nhóm chúng em chỉ dừng lại ở việc mô phỏng điều chỉnh vận tốc động cơ tự động theo nhiệt độ môi trờng và phần nhiệt độ môi trờng này đợc hiện thị thông qua Led 7 thanh
3
Trang 4II Mục đích Thiết kế
- Phát huy những thành quả ứng dụng của vi điều khiển và vi xử lý tạo ra những sản phẩm tiên tiến có độ tích hợp cao về công nghệ
- Việc thực hiện đề tài này giúp chúng em đợc tiếp cận với thực tế, phát huy những kiến thức đã đợc học trong môn Vi xử lý
- Qua đây có thêm nhiều kinh nghiệm giúp ích sau khi ra trờng có thể tham gia ngay vào các hoạt động sản xuất trong xã hội
III Giới thiệu về nội dung đề tài
1 Đề tài
Điều khiển tốc độ động cơ theo sự biến đổi của nhiệt độ môi trờng
2 Chức năng của hệ thống
- Đo, xử lý và hiện thị nhiệt độ của môi trờng thông qua hệ thống LED7 thanh
- Điều khiển tốc độ động cơ bớc theo nhiệt độ của môi trờng Khi nhiệt độ tăng thì vận tốc động cơ (cánh quạt ) tăng và khi nhiệt độ giảm tốc độ giảm
Động cơ có khả năng đảo chiều quay để phục vụ nhiều mục đích khác nhau
Ch
ơng II
Thiết kế
4
Trang 5i Nhiệm vụ thiết kế
- Thiết mạch đo nhiệt độ và điều khiển động cơ bớc theo nhiệt độ sử dụng máy tính Vậy ta cần trình tự thiết kế nh sau :
+ Mạch cảm biến
+ Bộ chuyển đổi số tơng tự
+ Mạch Vi điều khiển
+ Bộ giải mã địa chỉ và hiện thị nhiệt độ thông qua LED7
+ Thiết kế khối công suất cho động cơ
+ Viết chơng trình điều khiển
I. Sơ đồ khối hệ thống
x
Nhiệt
độ mụi
Vi Điều khiển
Khối Cụng suất
Động
cơ Bước
Hiển thị
5
Trang 6(1) Bộ cảm biến ghi lại sự thay đổi nhiệt độ của nguồn nhiệt và chuyển về
đại lợng điện
(2) Bộ biến đổi ADC chuyển tín hiệu Analog thành tín hiệu Digital đa vào Mạch ghép nối
(3) Khối Vi điều khiển có nhiệm vụ nhận tín hiệu số từ khối ADC và đa vào xử lý cho ra tín hiệu hiện thị và xuất xung điều khiển ra khối công suất
(4) Mạch công suất có tác dụng điều khiển động cơ
(5) Động cơ bớc
(6) Khối hiện thị hiển thị nhiệt độ môi trờng hiện thời
II Thiết kế và phân tích nguyên lý của từng khối
1.Bộ cảm biến
Để đo đợc nhiệt độ cần có một đầu đo thích hợp Đầu dò là một cảm biến nhiệt độ có nhiệm vụ chuyển từ nhiệt độ môi trờng qua tín hiệu điện
Có rất nhiều loại cảm biến khác nhau nhng đối với hệ thống này ta sử dụng
IC cảm biến Các IC cảm biến có độ chính xác cao, dễ tìm và giá thành rẻ Một trong số đó là LM35, là loại thông dụng trên thị trờng hiện nay đồng thời nó có những đặc tính làm việc phù hợp với thiết kế chi tiết của mạch
a Một số đặc tính kỹ thuật của LM35
- LM35 có độ biến thiên theo nhiệt độ 10mV /1oC
- Độ chính xác cao, tính nay cảm biến nhiệt độ nhạy, ở nhiệt độ 25oC nó
có sai số không quá 1% Với tầm đo từ -55oC đến 150oC, tín hiệu ra tuyến tính với những thay đổi kỹ thuật của tín hiệu vào
- Thông số kỹ thuật
+ Tiêu tán công suất thấp
+ Dòng làm việc 138àA – 141àA
6
Trang 7+ Khoảng điện áp làm việc là 4-30V + sai số dòng tĩnh 3àA
+ Sự thay đổi dòng theo nhiêt độ là 0,7 àA/0C
- Đặc tính điện
- Theo thông số nhà sản xuất LM35, quan hệ giữa nhiệt độ và ngõ ra
điện áp ra nh sau :
Vout = 250mV tại 250C 1500mV tại 1500C 55mV tại -550C
c Tính toán và lựa chọn linh kiện
Ta chọn R sao cho R= Vs/50uA
2 Mạch ADC
a Giới thiệu về ADC 0804
7
TXD * RXD *
P0 P1 P2 P3
INT\ * 1
INT\ * 0 TIMER2 TIMER1 PORT nối tiếp
EA\ RST PSEN ALE
Rom 4K-8051 OK-8031
CPU
Caực port I\O
Trang 8
V X L V X L
H i ệ u c á c đ ầ u v à o
- Một số đặc tính kỹ thuật của ADC 0804
+ Không yêu cầu một giao diện logic nào để ghép nối với VXL + Thời gian chuyển đổi nhỏ hơn 100às
+ Có bộ dao động nội
- Nguyên lý hoạt động của ADC 0804:
ADC bắt đầu hoạt động khi chân CS và WR đồng thời ở mức thấp (tích cực ).Chân INTR đợc reset để ở mức cao ( không tích cực ) Tín hiệu analog ỏ các chân VIN+ và VIN- đợc đa vào lấy mẫu và mã hoá trong 8 xung clock nội của 0804 Sau dó chân INTR đợc chuyển xuống mức thấp (tích cực) báo hiệu cho vi điều khiển quá trình chuyển đổi ADC đã hoàn tất Vi điều khiển đa tín hiệu mức thấp vào chân RD của 0804 để lấy dữ liện ra (Chân RD và CS có thể đợc nối đất) Quá trình chuyển đổi tiếp theo lại bắt đầu khi CS và WR nhận đợc tín hiệu ở mức thấp ( từ vi điều khiển )
b Sơ đồ lắp mạch ADC
8
TXD * RXD *
P0 P1 P2 P3
INT\ * 1 INT\ * 0 TIMER2 TIMER1 PORT nối tiếp
EA\ RST PSEN ALE
Rom 4K-8051 OK-8031
CPU
Caực port I\O
Trang 9
+ 5 V
2 1
2 0
8
1 0 4
1 9 9 7 6
1 1
.
1 8
F p 5
K 0
4 0 0 C D A
V R E F / 2
V i n
W R
I N T R
8 9 C 5 1
3 Mạch Vi điều khiển
a Giới thiệu sơ lợc về 89C51
IC vi điều khiển 89C51 tơng thích với họ MSC51 có các đặc điểm sau : + 4Kbyte FLASH ROM
+ 128 Bytes RAM
+ 4 Port 8bit
+ Hai bộ định thời 16 bit
+ Có một port nối tiếp
+ Có thể mở rộng để 64KB bộ nhớ chơng trình ngoài
+ Bộ xử lý bit
- Cấu trúc bên trong của 89C51
9
TXD * RXD *
T1*
T2*
P0 P1 P2 P3
INT\ * 1 INT\ * 0 TIMER2 TIMER1 PORT nối tiếp
EA\ RST PSEN ALE
Cỏc thanh ghi khỏc
128 byte Ram
Rom 4K-8051 OK-8031
Timer1 Timer2
Điều khiển
ngắt
ẹieàu khieồn bus
CPU
Port noỏi tieỏp
Caực port I\O Taùo dao
ủoọng
Trang 10Sơ đồ chân của 89C51
Mạch vi điều khiển có tác dụng nhận tín hiệu từ bộ biến đổi ADC và xử lý đa
ra tín hiệu hiển thị nhiệt độ để truyền vào bộ giải mã địa chỉ 7447
Chân 9 (RST) là mạch RESET
10
18
19 12MHz
40
29 30
31 9
17 16 15 14 13 12 11 10
RD\
WR\
T1 T0 INT1 INT0 TXD RXD
A15 A14 A13 A12 A11 A10 A9 A8
28 27 26 25 24 23 22 21
8 7 6 5 4 3 2 1
32 33 34 35 36 37 38 39
Po.7 Po.6 Po.5 Po.4 Po.3 Po.2 Po.1 Po.0
AD7 AD6 AD5 AD4 AD3 AD2 AD1 AD0
P1.7 P1.6 P1.5 P1.4 P1.3 P1.2 P1.1 P1.0
P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0
PSEN\
ALE EA\
RET
Vcc
20 Vss
30p
30p
XTAL1 XTAL2
Trang 11
+ 5 V
K 0
1 0 u F
Mạch ghép nối giữa ADC và vi điều khiển
4 Mạch giải mã địa chỉ và hiển thị tín hiệu nhiệt độ ra Led
â, Giới thiệu về IC giải mã 7447
Hình- IC 7447
11
Trang 12IC 7447 là bộ giải mã cho LED hiển thị 7 thanh Nó có 4 đầu vào là A, B,
C và D (ứng với các chân số 7, 6, 1, 2) và 7 đầu ra (các chân từ 9 đến 15 ứng với 7 thanh hiển thị của đèn LED 7 thanh) Bảng chân lý của IC này nh sau:
Trong trờng hợp riêng của bài thực tập này thì các chân số 3, 4 và 5
không đợc dùng đến
b, Giới thiệu về đèn Led hiển thị
Đèn hiển thị LED 7 thanh:
Hình - LED hiển thị 7 thanh
Trong bài thực tập này ta sử dụng loại đèn Anode chung, tức là một trong hai chân ở giữa của hai hàng chân sẽ đợc nối lên +5V, các chân còn lại đợc nối
12
Trang 13đến đầu ra của IC 7447 một cách tơng ứng theo tên chân (nh đã nêu trên hình trên )
5 Mạch Công suất
Mạch điều khiển sử dụng IC ULN2003 là mạch khuếch đại công suất mắc kiểu darlington có diot để dập điện áp ngợc
a.Giới thiệu về ULN2003
Mạch tơng đơng của ULN2003
ULN2003 ngoài tác dụng đóng ngắt dòng qua cuộn dây điều khiển động cơ còn có tác dụng ngăn điện áp ngợc làm hỏng các mạch vi điều khiển
6 Động cơ bớc
a)Cấu trúc động cơ bớc
b) Phơng pháp điều khiển tốc độ động cơ bớc
Các cuộn dây đợc cấp dòng theo vòng Mỗi khi vòng dây đợc cấp dòng động cơ quay đợc 1 bớc
13
A B
C D A',B',C',D'
Trang 14Hình : Hoạt động của từng cuộn dây trong động cơ bớc
Bộ khuếch đại công suất sử dụng transistor mắc kiểu Darlington sử dụng IC UNL2003
“ABCD” = “0001” ”0010””0100” > “1000” ”0001” …
”ABCD” thực hiện lệnh dịch 4 lần động cơ quay 1vòng
Giả sử ta có vận tốc tại thời điểm T0 = 25oC là 300 vòng /phút
n0 = 3,3vòng/s “ABCD” quay 3,3x4lần =13,2lần trên một dây
Với xung nhịp 2kHz thì cứ 2kHz/13,2 =151 =α xung thì “ABCD” quay
một vòng
Ta có công thức chuyển đổi vận tốc động cơ và nhiệt độ
.
n k T
∆ = ∆
14
A
A'
t B
B'
t C
C'
t
D
D'
t
12V QC
QB QA
QD
A
B
C
D
Step motor
Trang 15∆ là độ dịch của vận tốc động cơ so với tốc độ tại 25oC
T
∆ độ biến thiên nhiệt độ
nt = n0 + k1.∆T
0 0 2
Trong khuôn khổ bài thực hành ,để đơn giản ta chọn k1 = k2 =2 , (đây là điểm còn cha tốt của chơng trình cần đợc khắc phục khi mở rộng đề tài)
Từ các phân tích trên ta có sơ đồ nguyên lý của mạch nh sau :
15
Trang 16V r e f / 2
V C C
K H O I N G U O N
B 3
L B 1
V C C
4 7 0 u F
A 2 L A 1
3 1
1 8 4
1 1
8 5
1 2 7
C 1
D 1
E 1 F
G 1
O P 1 AN
C 2
D 2
E 2
F 2
G 2
O P 2
1 0 k
3 3 p F
1 0 u F
A 6
V C C
V r e f / 2
B 4
7 8 0 5
1 3
V I N V O U T
1 3 5
A
A
1
4
R 3 9 0
3 9 0
A 1
R 3 9 0
A 3
+ 5 V
R e s e t
R 3 9 0
L B 2
A
X T A L 2
1 0 4
C 1
V i n +
R 3 9 0
L A 2
L A 3
7 2
1 1 9
1 5
I N A
I N B
I N C
I N D
O U T C
O U T D
O U T E
O U T F
O U G T G
L B 4
A
B 1
C 2
R 3 9 0
A 4
R 3 9 0
B 3
R e s e t
V C C
R 3 9 0
L B 1
A 7
1
2
A
C 3
L A 3
L B 4
R 3 9 0
L B 3
A 8
B 1
R 3 9 0
B 2
1 4
2 3
L A 1
C L K i n
1 3 5 7
1 6
1 4
1 2
1 0 9
1 B
3 B
5 B
7 B
1 C
3 C
5 C
7 C
C O M
B 2
R 3 9 0
L B 2
C 3
X T A L 2
V i n +
K H O I C A M B I E N N H I E T D O
A
R 3 9 0
C 1
2 9
4 0
3 1
1 9 9
3 9
3 7
3 5
3 3 1 3 5 7
2 1
2 3
2 5
2 7
1 0
1 2
1 4
1 6
PASL EN
V C C G
E A
X 1
R S T
P 0 0 / A D 0
P 0 1 / A D 1
P 0 2 / A D 2
P 0 3 / A D 3
P 0 4 / A D 4
P 0 5 / A D 5
P 0 6 / A D 6
P 0 7 / A D 7
P 1 0
P 1 2
P 1 4
P 1 6
P 2 0 / A 8
P 2 1 / A 9
P 2 2 / A 1 0
P 2 3 / A 1 1
P 2 4 / A 1 2
P 2 5 / A 1 3
P 2 6 / A 1 4
P 2 7 / A 1 5
P 3 0 / R X D
P 3 1 / T X D
P 3 2 / I N T 0
P 3 3 / I N T 1
P 3 4 / T 0
P 3 5 / T 1
P 3 6 / W R
P 3 7 / R D
A
B 1
R 3 9 0
L A 2
C L K i n
L A 4
1 0 k R
7 2
1 1 9
1 5
I N A
I N B
I N C
I N D
O U T C
O U T D
O U T E
O U T F
O U G T G
B 4
1 k R
R 3 9 0
L B 3
1 3 5 7
9
1 0
1 2
1 4
C L R 1
D 1
C L K 1
P R 1
Q 1
Q 1 D A O
G Q N 2 D DQ 2A O
P 2
C DL K2 2
CV L RC2
C 2
R
A
6
9
1 1
1 3
1 5
1 7
1 9
2 0
4
5 1
2
+ I N
- I N
V R E F / 2
D B
D B
D B
D B
D B
D B
D B
D B
C L K R
V C C / V R E
C L K I N
I N T R
C S
R D
W R
Trang 17IV.Lập trình
1.Lu đồ thuật toán của chơng trình
Begin
T.Lập mode cho 89C51
Cho động cơ khởi
động
Đếm xung
đồng hồ
ADC biến đổi xong
Cho động cơ nhảy 1 bước
Đọc nhiệt độ
Đủ xung cho
động cơ nhảy tiếp?
Trang 18¬ng tr×nh n¹p cho n¹p cho 89C51 nh sau :
#include <sfr51.inc>
WR EQU P3.7
RD EQU P3.5
INTR EQU P3.6
ORG 0
LJMP MAIN
ORG 00BH
LJMP DONGCO
MAIN:
MOV R2,#11H ;00010001B
MOV TMOD,#01H ;TIMER CHE DO 1
MOV P1,#0FFH ;CHON P1 LA CONG VAO
MOV IE,10000111B ;CHO PHEP NGAT TIMER 0
MOV TH0,#0H
MOV TL0,#0H
SETB TR0 ;KHOI DONG BO TIMER 0
LAP:
LCALL HIENTHI
SJMP LAP
HIENTHI:
SETB RD ; RD=1
SETB WR ; WR=1
CLR WR ; BAT DAU CHUYEN DOI
WAIT:
JB INTR,WAIT ; KIEM TRA DA CHUYEN DOI XONG CHUA CLR RD ; XUAT DU LIEU RA VI DIEU KHIEN
MOV A,P1 ;LUU VAO A
MOV B,#05
MUL AB
MOV R0,B
MOV R1,A
MOV B,#10
18
Trang 19DIV AB
SWAP A
ORL A,B
MOV P0,A
DONGCO:
CLR TR0 ; XOA TR0
MOV R5,A ; CAT TAM THOI A
MOV A,R2
RR A
MOV R2,A
MOV P2,A
MOV TH0,R0
MOV TL0,R1
MOV A,R5
SETB TR0
RETI
END
Tµi liÖu tham kh¶o:
1. KÜ thuËt Vi xö lý T¸c gi¶: V¨n ThÕ Minh
2 CÊu tróc vµ lËp tr×nh hä vi ®iÒu khiÓn 8051 T¸c gi¶: NguyÔn T¨ng Cêng _ Phan Quèc Th¾ng
3. Datasheet cña c¸c linh kiÖn AT89c51, ULN2003, ADC0804, LM35, 74LS74AN, 74LS47 lÊy tõ www.alldatasheet.com
19