Tải bản đầy đủ (.doc) (16 trang)

Thiết kế bộ đo vận tốc của vật chuyển động tịnh tiến sử dụng cổng nối tiếp

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 (456.81 KB, 16 trang )

Bộ Công Thương
Trường:Đại Học Công Nghiệp Hà Nội
Khoa:Điện Tử

ĐỒ ÁN MƠN HỌC ĐO LƯỜNG VÀ
ĐIỀU KHIỂN BẰNG MÁY TÍNH
ĐỀ TÀI:THIẾT KẾ BỘ ĐO VẬN TỐC
CỦA VẬT CHUYỂN ĐỘNG TỊNH TIẾN
SỬ DỤNG CỔNG NỐI TIẾP
GVHD: VŨ THỊ THU HƯƠNG
Nhóm 2

Nhận xét giáo viên hướng dẫn
1


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


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

Lời Nói Đầu
Ngày nay, các vi điều khiển đã thâm nhập vào mọi lĩnh vực vủa đời
sống từ dân sự, qn sự đến an ninh quốc phịng, có mặt trong hầu hết
các ứng dụng hàng ngày từ những thiết bị nhỏ như điện thoại di động,
máy nhắn tin, trò chơi điện tử, các thiết bị gia dụng (máy giặt, điều hịa,
tủ lạnh….) đến những thiết bị lớn như ơtơ, tàu thủy, xe lửa, máy bay, hệ
thống mạng điện thoại, các bộ điều khiển tự động trong nhà máy, các bộ
điều chỉnh trong nhà máy điện hạt nhân, trong các hệ thống điều khiển
ánh sáng…


2


Với một loạt các ứng dụng thú vị trên, ở đây chúng em xin giới thiệu
một ứng dụng nhỏ dùng vi điều khiển 8051 (cụ thể là vi điều khiển
AT89S52) để thiết kế đo vận tốc của vật chuyển động tịnh tiến sử dụng
cổng nối tiếp .

Do thời gian và trình độ cịn hạn chế, cịn thiếu kinh nghiệm thực
tế nên khơng tránh khỏi những sai sót. Chúng em rất mong nhận được
những ý kiến và đóng góp của các thầy cơ và các bạn để chúng em có thể
hồn thiện thiết kế hơn nữa...
Xin chân thành cảm ơn !

PHẦN 1
I,CẤU TRÚC VI ĐIỀU KHIỂN 8051
I-Giới thiệu tổng quan về họ 8051 (AT 89S52)
Họ vi điều khiển 8051 (còn gọi là C51) là một trong những họ vi điều
khiển thông dụng nhất. Đây là các bộ vi điều khiển 8 bít được sản xuất
theo cơng nghệ CMOS. Một số loại vi điều khiển thuộc họ 8051 thông
dụng nhất: AT89C2051, AT89C4051, AT89C51, AT89S52… Trong đó
AT89S52 là một bộ vi điều khiển thơng dụng giá rẻ có nhiều chức năng
và đặc biệt có tích hợp sẵn bộ nạp trên chíp.
3


Bộ vi điều khiển AT89S52 gồm các khối chức năng chính sau đây:
CPU (Central Processing Unit) bao gồm:
- Thanh ghi tích luỹ A
- Thanh ghi tích luỹ phụ B, dùng cho phép nhân và phép chia

- Đơn vị logic học (ALU: Arithmetic Logical Unit)
- Thanh ghi từ trạng thái chương trình (PSW: Progam Status
Word)
- Bốn băng thanh ghi
- Con trỏ ngăn xếp
Bộ nhớ chương trình (Bộ nhớ ROM) gồm 8Kb Flash.
Bộ nhớ dữ liệu (Bộ nhớ RAM) gồm 256 bytes.
Bộ UART (Universal Ansynchronous Receiver and Tranmitter)
làm chức năng truyền nhận nối tiếp, nhờ khối này AT89S52 có thể giao
tiếp với máy tính qua cổng COM.
3 bộ Timer /Counter 16 bít thực hiện các chức năng định thời và
đếm sự kiện.
WDM (Watch Dog Timer) được dùng để phục hồi lại hoạt động của CPU
khi nó bị treo bởi một nguyên nhân nào đó. WDM ở AT89S52 gồm một
bộ Timer 14 bít, một bộ Timer 7 bít, thanh ghi WDTPRG (WDT
programable) điều khiển Timer 7 bit và một thanh ghi chức năng
WDTRST (WDM register). Bình thường WDT khơng hoạt động (bị
cấm), để cho phép WDT, các giá trị 1EH và E1H cần phải được ghi liên
tiếp vào thanh ghi WDTRST. Timer 14 bit của WDT sẽ đếm tăng dần sau
mỗi chu kỳ đồng hồ cho đến giá trị 16383 thì xảy ra tràn. Khi xảy ra tràn,
chân RTS sẽ được đặt ở mức cao trong thời gian 96.Tosc (Tossc=1/Fosc)
và AT89S52 sẽ được reset. Khi WDT hoạt động, ngoại trừ reset phần
cứng và reset do WDT tràn thì khơng có cách nào cấm được WDT, vì vậy
khi sử dụng WDT thì các đoạn mã chương trình phải được đặt trong các
khe thời gian từ khi giữa các lần WDT được khởi tạo lại.
II- Sơ đồ các chân và chức năng

4



1. Port 0 (P0.0-P0.7 hay từ chân 32 đến chân 39): Gồm 8 chân,
ngoài chức năng xuất nhập ra, Port 0 còn là Bus đa hợp dữ liệu và địa chỉ
(AD0-AD7), chức năng này sẽ được sử dụng khi AT89S52 giao tiếp với
thiết bị ngồi có kiến trúc Bus

Hình 1: Cấu trúc của các chân trên Port 0
2. Port 1 (P1.0-P1,7 hay từ chân 1 đến chân 8) :
Có chức năng xuất nhập theo bit và byte. Ngoài ra, 3 chân P1.5, P1.6,
P1.7 được dùng để nạp ROM theo chuẩn ISP, 2 chân P1.0 và P1.1 được
dùng cho bộ Timer 2

5


Hình 2: Cấu trúc của các chân trên Port 1 và Port 3

3. Port 2 (P2.0- P2.7 hay từ chân 21 đến chân 28): Là một Port có cơng
dụng kép: là đường xuất nhập hoặc là byte cao của bus địa chỉ đối với các
thiết kế dùng bộ nhớ mở rộng.

Hình 3: Cấu trúc của các chân trên Port 2
4. Port 3 (P3.0- P3.7 hay từ chân 10 đến chân 17): Mỗi chân trên
Port 3 ngoài chức năng xuất nhập ra cịn có một chức năng riêng:
Bit
P3.0
P3.1

Tên
RXD
TXD


Chức năng
Dữ liệu nhận cho Port nối tiếp
Dữ liệu truyền cho Port nối tiếp
6


P3.2
P3.3
P3.4
P3.5
P3.6

INT0
INT1
T0
T1
WR

P3.7

RD

Ngắt 0 bên ngoài
Ngắt 1 bên ngoài
Ngõ vào của Timer/Counter 0
Ngõ vào của Timer/Counter 1
Xung ghi bộ nhớ dữ liệu bên

ngoài

Xung đọc bộ nhớ dữ liệu bên

ngoài
5. RST (Reset- chân 9):
Mức tích cực của chân này là mức 1, để reset ta phải đưa mức 1(5V) đến
chân này với thời gian tối thiểu 2 chu kỳ máy( tương đương 2µs đối với
thạch anh 12MHz.
6. XTAL1, XTAL2:
AT89S52 có một bộ dao động trên chip, nó thường được nối với một bộ
dao động thạch anh có tần số lớn nhất là 33MHz, thông thường là
12MHz.
7. EA (External Access):
EA thường được mắc lên mức cao (+5V) hoặc mức thấp (GND). Nếu ở
mức cao, bộ vi điều khiển thi hành chương trình từ ROM nội. Nếu ở mức
thấp, chương trình chỉ được thi hành từ bộ nhớ mở rộng.
8. ALE (Address Latch Enable):
ALE là tín hiệu để chốt địa chỉ vào một thanh ghi bên ngoài trong nửa
đầu của chu kỳ bộ nhớ. Sau đó các đường port 0 dùng để xuất hoặc nhập
dữ liệu trong nửa chu kỳ sau của bộ nhớ.

9. PSEN (Program Store Enable):
PSEN là điều khiển để cho phép bộ nhớ chương trình mở rộng và trường
được nối đến chân /OE (Output Enable) của một EPROM để cho phép
đọc các bytes mã lệnh.
7


PSEN sẽ ở mức thấp trong thời gian đọc lệnh. Các mã nhị phân của
chương trình được đọc từ EPROM qua Bus và được chốt vào thanh ghi
lệnh của bộ vi điều khiển để giải mã lệnh. Khi thi hành chương trình

trong ROM nội, PSEN sẽ ở mức thụ động (mức cao)
10. Vcc, GND:
AT89S52 dùng nguồn một chiều có dải điện áp từ 4V-5.5V được cấp qua
chân 40 (Vcc) và chân 20 (GND)

II,CẤU TRÚC IC MAX 232
Bộ vi điều khiển AT89s52 có khả năng giao tiếp với thiết bị ngồi qua
cổng nối tiếp. Vấn đề trở ngại duy nhất khi giao tiếp với máy tính là mức
logic ở bộ vi điều khiển và ở cổng COM khác nhau cụ thể như sau:

8


Đối tượng

Mức logic

Cổng COM
(Mức RS232)

1

Mức điện áp tương
ứng
-12 V đến -3V

0

+3V đến +12V


Vi Điều khiển
(Mức TTL)

1

+5V

0

0V

Khắc phục vấn đề này, người ta sử dụng vi mạch MAX 232 để chuyển
đổi mức điện áp giữa 2 chuẩn. Vi mạch này có chứa hai bộ chuyển đổi
mức logic từ TTL sang RS232 và ngược lại. Hình 6 là mạch giao tiếp
giữa vi điều khiển với máy tính qua cổng RS232C sử dụng vi mạch đổi
mức MAX232.

Hình 6: Truyền thơng qua cổng nối tiếp

9


Như vậy thực chất của việc truyền thông qua cổng nối tiếp thực chất là
việc truyền mã ASCII của ký tự.Để gửi cho máy tính các kí tự từ ‘0’ đến
‘9’ ta phải truyền mã ASCII của chúng lần lượt từ 0x30 đến 0x39.
Để kiểm tra xem máy tính có nhận được các kí tự mà vi điều khiển
truyền tới chưa, ta phải cho máy tính thi hành. Chương trình nhận số liệu
qua cổng nối tiếp chương trình này có thể viết bằng ngơn ngữ lập trình
Basic, Pascal, C, C++...Trong Windows có cung cấp sẵn cho chúng ta
một cơng cụ truyền tin qua cổng nối tiếp là Hyper Terminal.


PHẦN II : CƠ SỞ LÝ THUYẾT
Dựa trên nguyên tắc xác định vân tốc của một chuyển
động.ta có thể thực hiện việc xác định vận tốc bằng một
mơ hình co xư dụng các led thu và phát hồng ngoại đưa
tín hiệu vào môt bộ vi điều khiển 89s52 xử lý và đưa kết
quả ra cổng nối tiếp
Để đo vận tốc của một vật chuyển động tịnh tiến ta thưc
hiên theo thiết kế sau:
Dùng hai led thu hồng ngoại và hai led phát hồng
ngoại .Khi led thu nhận đươc tia hồng ngoại của led phát
thì điện trở giữa hai cực của led rất nhỏ .Điện áp đặt vào
chân IT0 rất nhỏ ~o tức điện áp ở mưc thấp .
Khi có vật chạy qua giữa led thu và led phát hồng
ngoại sẽ cản trở tia hồng ngoại đến led thu ,điện trở hai
cực của led thu sẽ tăng lên rất lớn khi đó điện áp tại chân
IT0 (IT1) rất lớn ~ Vcc tức điện áp ở chân này rất cao
,xuất hiện sự thay đổi điện áp sườn.Lúc đó sẽ có tín hiệu
10


vào IC .Chương trình đã được nap sẵn trong IC sẽ thực
hiện tính tốn và đưa ra kết quả ra cổng nối tiếp

PHẦN III: THIẾT KẾ PHẦN CỨNG

I,SƠ ĐỒ NGUYÊN LÝ

11



II,CHƯƠNG TRÌNH ĐIỀU KHIỂN

1,PHẦN VISUA BASIC

Private Sub Command1_Click()
End
12


End Sub
Private Sub Form_Load()
MSComm1.CommPort = 2
MSComm1.Settings = "9600,n,8,1"
Me.MSComm1.RThreshold = 1
MSComm1.InputLen = 1
MSComm1.PortOpen = True
End Sub
Private Sub MSComm1_OnComm()
If Me.MSComm1.CommEvent = comEvReceive Then
Label3.Caption = Asc(MSComm1.Input)
End If
End Sub

2,CODE C
#include <reg52.h>
unsigned char v ;
sbit x = P3^2;
sbit y = P3^3;
unsigned int s ;

void delay(unsigned int time)
{
while (time--)
{
TH0 = -1000/256;
TL0 = -1000%256;
TR0 = 1;
while (!TF0);
TR0 = 0;
TF0 = 0;
}
}
void send(unsigned char a)
{
SBUF=a;
while(TI==0){}
TI=0
}

13


void main(void)
{
TMOD=0x21;
TH1=TL1=-3;
SCON=0x50;
TR1=1;
while(1)
{

while(x==0)
{
}
while(y==0)
{
delay(1);
s++;
}
v= 20/s

;

send(v);
}
}

PHẦN IV
KẾT LUẬN

- Ưu điểm : Với mô hình này có thể đo đươc vận tốc của
một vật chuyển động chính xác và đưa ra kết quả rất
nhanh chóng mà khơng cần qua tính tốn gì khác
14


- Nhược điểm : mơ hình trên chỉ có thể đo được vận tơc
chuyển động của một vật có kich thước nhỏ và chuyển
động khơng q nhanh.Chưa có tính ứng dụng cao vào
thực tế.
- Hướng phát triển của đề tài :

Với đề tài này có thể phát triển thành nhiều ứng
dụng trong thực tế hiện nay . Với việc xác định vận
tốc chuyển động thông qua một hệ thống tự đơng là
rất cần thiết.Mơ hình này nếu được phát triển sẽ
đươc áp dụng rất nhiều trong thưc tế ta có thể xác
định được một cách chính xác tốc độ của mơt
chun đơng nào đó ma chẳng hạn ta khơng thể đến
gần nó…và nó cũng có thể được ứng dụng trong
giao thông để xác định vận tốc của một phương tiên
khi tham gia giao thông…
Chúng em xin chân thành cảm ơn cô Vũ Thị Thu Hương
đã trực tiếp hướng dẫn chúng em trong quá trình thực
hiện đề tài nay.

Tài liệu tham khảo
1.Vi điều khiển cấu trúc lập trình và ứng dụng (Kiều Xuân Thực – Vũ Thị
Thu Hương – Vũ Trung Kiên).
2.Giáo trình đo lường và điều khiển máy tính(Vũ Thị Thu Hương).
3. Họ vi điều khiển 8051 (Tống Văn On – Hoàng Đức Hải).
4. Internet: dientuvietnam.net
15


diendandientu.com
dientuvienthong.net

16




×