Và sau này dã có nhiều bộ vi điều khiển thuộc họ 8051 ra ời với những sự cải tiến dặc biệt của nhiều hãng sản xuất như vi điều khiển 8052, AT89S52… Họ vi điều khiển 8051 được ứng dụn
Trang 1TRƯỜNG ĐẠI HỌC ĐIỆN LỰC
KHOA ĐIỆN TỬ VIỄN THÔNG
electronics and communications
BÁO CÁO HỌC TẬP
ĐỒ ÁN MÔN HỌCMÔN THIẾT BỊ ĐẦU CUỐI
ĐỀ TÀI : ĐO LƯỜNG ĐIỆNNHÓM 5 :
Trang 2LỜI NÓI ĐẦU
Xã hội ngày càng phát triển nhờ những tiến bộ vượt bậc của khoa học kỹ thuật Theo dòng phát triển công nghệ, công nghệ bán dẫn đã và đang phát triển rất
mạnh Thành tựu của nó là sự ra đời của các hệ vi xử lý , vi điểu khiển Và một trong những họ vi điều khiển đang được ứng dụng rộng rãi ngày nay là họ vi điều khiển 8051 Các bộ vi điều khiển thuộc hộ 8051 đầu tiên ra đời vào năm 1981 Các
bộ vi điều khiển này mới chỉ có 128 byte Ram, 4 kb Rom, 2 bộ định thời, 1 cổng nối tiếp và 4 cổng vào ra Tất cả được đặt trên cùng 1 chip Và sau này dã có nhiều
bộ vi điều khiển thuộc họ 8051 ra ời với những sự cải tiến dặc biệt của nhiều hãng sản xuất như vi điều khiển 8052, AT89S52…
Họ vi điều khiển 8051 được ứng dụng trong thực tế rất phổ biến như ứng dụng đểđiều khiển động cơ,điều khiển led, điều khiển đèn giao thông, làm bộ đếm sản phẩm, khóa điện tử….trong nhiều ứng dụng đó nhóm sinh viên chúng em đã tham gia vào thục hiện đề tài “ thiết kế mạch điều khiển đo lường điện tử ” sử dụng 89c52
Trang 3xử lý chậm chạp ít chính xác được thay thế bằng các hệ thống điều khiển tự độngvới các lệnh chương trình đã được thiết lập trước.
Trong phạm vi nội dung đồ án này,chúng em nghiên cứu thiết kế mạch đolường điện và vi điều khiển AT89C51
2 Đối tượng nghiên cứu:
Nếu như những kiến thức lý thuyết là điều kiện cần thì thực hành lắp rápmạch thật là điều kiện đủ Nó đem lại rất nhiều lợi ích cho chúng em:
- Chúng em có thể đưa những lý thuyết khô khan vào thực tế để có thể đánhgiá một cách khách quan cơ sở lý thuyết
- Từ những gì chúng ta đã làm được từ đó rút kinh nghiệm ra quá trình làmlần sau và xa hơn là các quá trình sản xuất công nghiệp sau này
Trang 4- Để làm được một mạch thật hoàn chỉnh chúng em phải trải qua rất nhiềukhâu Qua đây chúng em có một cách nhìn tổng quát cho một dây chuyền sản xuấtcác ứn dụng của ngành điện tử.
Chính những lợi ích đó cũng là những mục đích mà nhóm sinh viên chúng
em mong muốn đạt được
3 Mục đích nghiên cứu:
Đồ án được nghiên cứu nhằm thiết kế bộ điều khiển đo lường điện tử “đodòng và đo áp”
4 Phương pháp nghiên cứu:
Các phương pháp nghiên cứu được sử dụng bao gồm:
- Tham khảo tài liệu: tài liệu tham khảo được thu thập chủ yếu qua Internet
- Tự nghiên cứu: Từ nguồn tài liệu thu thập được, quá trình thực hiện đồ ánbắt buộc phải trải qua việc nghiên cứu các nguồn tài liệu, chắt lọc những thông tincó giá trị, đồng thời tự suy nghĩ tìm ra cách giải quyết vấn đề
- Thực tế làm việc: Từng bước thực hiện giải quyết vấn đề đã đặt ra Trongquá trình thực hiện nảy sinh những vấn đề khó khăn mà người nghiên cứu phải trựctiếp giải quyết mới có thể tìm ra cách giải quyết đúng đắn
5 Phương tiện nghiên cứu:
Các phương tiện phục vụ cho quá trình nghiên cứu bao gồm: file hướng dẫn,sách tham khảo, tài liệu thu thập từ Internet,…
6 Giới hạn của đề tài:
Trang 5Do còn hạn chế về kiến thức và khả năng nghiên cứu của người nghiên cứunên đồ án vẫn còn nhiều hạn chế.
Chương 2:
GIỚI THIỆU CÁC LINH KIỆN CÓ TRONG MẠCH
1 Cấu trúc vi điều khiển 89c52
Sơ đồ bên trong con 8051 có những tài nguyên, Interrupt, Ram, Timer, serial prortPhần chính của vi điều khiển 89C52 là bộ xử lý trung tâm ( CPU : central processing unit ) bao gồm :
- Các thanh ghi chức năng đặc biệt (SFR)
- Đơn vị logic học ( ALU : Arithmetic Logical Unit )
Trang 6Các cổng (port0, port1, port2, port3) sử dụng vào mục đích điều khiển.
ở cổng 3 còn có thêm các đường dẫn điều khiển dùng để trao đổi với bộ nhớ bên ngoài, hoặc để đầu nối giao diện nối tiếp, cũng như các đường ngắt dẫn bên ngoài.Giao diện nối tiếp cũng chứa một bộ truyền và bộ nhận không đồng bộ làm việc độclập với nhau Tốc độ truyền qua cổng nối tiếp có thể đặt trong dải rộng và được ấnđịnh bằng một bộ định thời
Trong vi điều khiển 89C52 có 2 thành phần quan trọng khác là bộ nhớ và thanhghi :
Bộ nhớ có bộ nhớ Ram và bộ nhớ Rom dùng để lưu trữ dữ liệu và mã lệnh
Các thanh ghi sử dụng để lưu trữ thông tin trong quá trình xử lý, khi CPU làm việcnó thay đổi nội dung của các thanh ghi
Trang 7Ram nội và các thanh ghi
Trang 8Ở trên 80H, vì các địa chỉ từ 00 đến 7FH là địa chỉ của bộ nhớ Ram bên trong 8051.Không phải tất cả mọi địa chỉ từ 80H đến FFH đều do SFR sử dụng, nhưng vị trí ngăn nhớ
từ 80H đến FFH chưa dùng là để dự trữ và lập trình viên 8051 cũng không sử dụng
Các nguồn ngắt ngoài :
Các Một chương trình chính không có ngắt thì chạy liên tục, còn chương trình có ngắt thì
cứ khi nào điều kiện ngắt được đảm bảo thì con trỏ sẽ nhảy sang hàm ngắt, thực hiện xonghàm ngắt lại quay về đúng chỗ cũ và thực hiện tiếp chương trình
Sơ đồ chân và hình ảnh thực tế của vi điều khiển 89c52
Trang 9Là IC đóng vỏ dạng DIP có 40 chân , mỗi chân có 1 ký hiệu tên và có các chứcnăng như sau :
- Chân 40 : nối với nguồn nuôi +5V
- Chân 20 : nối với đất (Mass,GND)
- Chân 29(PSEN)(program store enable) là tín hiệu điều khiển xuất ra của89c52 , nó cho phép chọn bộ nhớ ngoài và được nối chung với chân của OE (OutEnable) của EPROM ngoài để cho phép đọc các byte của chương trình
- Chân 30 (ALE :Adress Latch Enable) là tín hiệu điều khiển xuất ra 89c52nó cho phép phân kênh bus địa chỉ và bus dữ liệu của Port 0
Trang 10- Chân 31 (EA :Eternal Acess) được đưa xuống thấp cho phép chọn bộ nhớngoài đối với 89c52
Đối cới 89c52 thì EA=5V : chọn ROM nội EA =0V » chọn ROM ngoại
32 chân còn lại chia làm 4 cổng vào ra : vào ra tức là có thể dùng chân đó đểchọn mức logic (0,1 ứng với 0V,5V) Vào hay xuất logic (0,1)
- P0 từ chân 39 32 tương úng các chân P0_0 P0_7
- P1 từ chân 1 8 tương úng các chân P1_0 P1_7
- P2 từ chân 21 28 tương ứng các chân P2_0 P2_7
- P3 từ các chân 10 17 tương úng các chân P3_0 P3_7
Riêng cổng 3 có thêm chức năng ở mỗi chân như hình vẽ
P3.0 _RxD: chân nhận dữ liệu nối tiếp khi giao tiếp RS232 (cổng COM) P3.1 _TxD :chân truyền dữ liệu nối tiếp khi giao tiếp RS232.
P3.2_ INT0 :interrupt 0 , ngắt ngoài 0
P3.3_ INT1 :interrupt 1 , ngắt ngoài 1
P3.4_T0 : timer 0 , đầu vào timer 0.
P3.5_T1 : timer 1 , đầu vào timer 1
P3.6_WR : write ,điều khiển ghi dữ liệu
P3.7_RD : read , điều khiểu đọc dữ liệu.
- Chân 18,19 nối với thạch anh tạo thành mạch dao động cho VDK , tần sốthạch anh thường được dùng trong các ứng dụng là 11,0592 Mhz (giao tiếp vớicổng COM máy tính là 12Mhz)
Trang 11Tần số tối đa là 24 Mhz tần số càng lớn VĐK xử lý càng nhanh
Các bộ chuyển đổi ADC thuộc những thiết bị được sử dụng rộng rãi nhất để thu
dữ liệu Các máy tính số sử dụng các giá trị nhị phân, nhưng trong thế giới vật lýthì mọi đại lượng ở dạng tương tự (liên tục) Nhiệt độ, áp suất (khí hoặc chất lỏng),
độ ẩm và vận tốc và một số ít những đại lượng vật lý của thế giới thực mà ta gặphằng ngày Một đại lượng vật lý được chuyển về dòng điện hoặc điện áp qua mộtthiết bị được gọi là các bộ biến đổi Các bộ biến đổi cũng có thể coi như các bộcảm biến Mặc dù chỉ có các bộ cảm biến nhiệt, tốc độ, áp suất, ánh sáng và nhiềuđại lượng tự nhiên khác nhưng chúng đều cho ra các tín hiệu dạng dòng điện hoặcđiên áp ở dạng liên tục Do vậy, ta cần một bộ chuyển đổi tương tự số sao cho bộ
vi điều khiển có thể đọc được chúng Một chip ADC được sử dụng rộng
rãi là ADC0804
Trang 12Hình dạng thực tế ADC0804
Sơ đồ chân ADC0804Chip ADC0804 là bộ chuyển đổi tương tự số thuộc họ ADC800 của hãng
National Semiconductor Chip này cũng được nhiều hãng khác sản xuất
Chip có điện áp nuôi +5V và độ phân giải 8 bit Ngoài độ phân giải thì thời
gian chuyển đổi cũng là một tham số quan trọng khi đánh giá bộ ADC Thời
gian chuyển đổi được định nghĩa là thời gian mà bộ ADC cần để chuyển
một đầu vào tương tự thành một số nhị phân Đối với ADC0804 thì thời
Trang 13gian chuyển đổi phụ thuộc vào tần số đồng hồ được cấp tới chân CLK và CLK IN
và không bé hơn 110µs Các chân khác của ADC0804 có chức năng như sau:
- CS (Chip select): Chân số 1, là chân chọn chip, đầu vào tích cực mức thấp được
sử dụng để kích hoạt Chip ADC0804 Để truy cập tới ADC0804 thì chân này phải được đặt ở mức thấp
- RD (Read): Chân số 2, là chân nhận tín hiệu vào tích cực ở mức thấp Các bộ chuyển đổi của 0804 sẽ chuyển đổi đầu vào tương tự thành số nhị phân và giữ nó ởmột thanh ghi trong Chân RD được sử dụng để cho phép đưa dữ liệu đã được chyển đổi tới đầu ra của ADC0804 Khi CS = 0 nếu có một xung cao xuống thấp
áp đến chân RD thì dữ liệu ra dạng số 8 bit được đưa tới các chân dữ liệu (DB0 – DB7)
- WR (Write): Chân số 3, đây là chân vào tích cực mức thấp được dùng báo cho ADC biết để bắt đầu quá trình chuyển đổi Nếu CS = 0 khi WR tạo ra xung cao xuống thấp thì bộ ADC0804 bắt đầu quá trình chuyển đổi giá trị đầu vào tương tự Vin thành số nhị phân 8 bit Khi việc chuyển đổi hoàn tất thì chân INTR được ADC hạ xuống thấp
- CLK IN và CLK R: CLK IN (chân số 4), là chân vào nối tới đồng hồ ngoài được
sử dụng để tạo thời gian Tuy nhiên ADC0804 c ũng có một bộ tạo xung đồng hồ riêng Để dùng đồng hồ riêng thì các chân CLK IN và CLK R (chân số 19) được nối với một tụ điện và một điện trở Khi đó tần số được xác định bằng biểu thức:
Trang 14để đưa dữ liệu ra.
- Vin (+) và Vin (-): Chân số 6 và chân số 7, đây là 2 đầu vào tương tự vi sai, trongđó Vin = Vin(+) – Vin(-) Thông thường Vin(-) được nối tới đất và Vin(+) được dùng làm đầu vào tương tự và sẽ được chuyển đổi về dạng số
- Vcc: Chân số 20, là chân nguồn nuôi +5V Chân này còn được dùng làm điện áp tham chiếu khi đầu vào Vref/2 để hở
- Vref/2: Chân số 9, là chân điện áp đầu vào được dùng làm điện áp tham chiếu Nếu chân này hở thì điện áp đầu vào tương tự cho ADC0804 nằm trong dải 0 đến +5V Tuy nhiên, có nhiều ứng dụng mà đầu vào tương tự áp đến Vin khác với dải 0đến +5V Chân Vref/2 được dùng để thực hiện các điện áp đầu ra khác 0 đến +5V
Trang 151.5 0 – 3 3/256 = 11.71
Bảng 2: Quan hệ điện áp Vref/2 với Vin
- D0 – D7, chân số 18 – 11, là các chân ra dữ liệu số (D7 là bit cao nhất MSB và D0 là bit thấp nhất LSB) Các chân này được đệm ba trạng thái và dữ liệu đã được chuyển đổi chỉ được truy cập khi chân CS = 0 và chân RD đưa xuống mức thấp
Để tính điện áp đầu ra ta tính theo công thức sau:
Dout = Vin / Kích thước bước
3 Hình ảnh thực tế và chân của Led hiển thị
Trang 16Đây là loại đèn dùng hiển thị các số từ 0 đến 9, đèn gồm 7 đọan a, b, c, d, e,
f, g, bên dưới mỗi đọan là một led (đèn nhỏ) hoặc một nhóm led mắc song song(đèn lớn).Quy ước các đọan cho bởi:
Khi một tổ hợp các đoạn cháy sáng sẽ tạo được một con số thập phân từ 0 - 9
Đối với led 7 đoạn ta phải tính toán sao cho mỗi đoạn của led 7 đoạn códòng điện từ 10 20mA Với điện áp khoảng 5V thì điện trở cần dùng là 270-330Ω; công suất là 1,4 W
Bảng giá trị Led 7 Đoạn
Trang 174 Một số linh kiện phụ:
Hình II.15 Trở 1k ,Tu gốm33pf ,Trở thanh 10k
Hình II.16 thạch anh 12mhz và transistor pnp S8550
Hình II.17 Tụ 10uf , button
Trang 18Phần 3: THIẾT KẾ
A Phần cứng
1 Khối nguồn.
560 R17
D4
Vin Vout GND
U3
7805
104 C7
VCC
GND
D1Diode 1N4007 D2
D3 D5 Diode 1N4007
C8 10uF
Nguồn đầu vào là 12Vac đi qua cầu chỉnh lưu ra điện áp 1 chiều : 12 VDC
Từ đây đưa vào IC ổn áp LM7805 cho ra đầu ra 5VDC ổn định ( thực tế khoảng điện áp ra dao động từ 4.8V – 5.4 V )
Trang 19Hiện tại trên thị trường có 2 loại LM7085CV và LM7085KA Nên mua loại
LM7805CV là tốt nhất, có thể chịu dòng và áp lớn
Tụ điện ở đây đóng vai trò lọc nguồn và san phẳng điện áp
Để lọc được tần số càng cao thì điện dung của tụ điện càng nhỏ
IC ổn áp 7805 : đầu vào >7V , đầu ra 5v,500mA Mạch ổn áp :cần cho VĐk
và nếu nguồn choVĐK không ổn định thì sẽ treo VĐK ,không chạy đúng ,hoặcreset liên tục, thậm chí là chết chip
2 khối vi điều khiển
P1.0/T2 1
P1.1/T2EX 2
P1.2 3 P1.3 4 P1.4 5 P1.5 6 P1.6 7 P1.7 8 RST 9 P3.0/RxD 10
P3.1/TxD 11
P3.2/INT0 12
P3.3/INT1 13
P3.4/T0 14
P3.5/T1 15
P3.6/WR 16
P3.7/RD 17
XTAL2
18 XTAL119
VSS
20 P2.0/A8P2.1/A9 2122
P2.2/A10 23P2.3/A11 24P2.4/A12 25P2.5/A13 26P2.6/A14 27P2.7/A15 28PSENALE 2930 EA/VPP 31P0.7/AD7 32P0.6/AD6 33P0.5/AD5 34P0.4/AD4 35P0.3/AD3 36P0.2/AD2 37P0.1/AD1 38P0.0/AD0 39VCC 40
C2
GND
10K R9
GND
RESET1
10uF C1
X1 X2
X1
X2
D4
D0 D1 D2 D3 D5 D6 D7
P37 P36 P33
GND
VCC
VCC VCC
A1 L4 L3 L2 L1
g f e d c b a
H
33p C3
Sử dụng vi điều khiển AT89c52
Port 0 của AT89c52 là một PORT với cực máng hở, do vậy nếu muốn dùng
PORT0 như một cổng vào ra ( I/O port ) thì cần có điện trở treo lên dương nguồn Vcc
Trang 20AT89S52 sử dụng RESET bằng mức dương, vì vậy mạch RESET được thiết kế như trên Khi có nguồn vào, tụ C1 nạp, cho dòng chạy qua, tạo cho chân RST một mức dương, khi tụ được nạp đầy, không cho dòng đi qua, chân RST lại trở về mức 0V, quá trình Reset được hoàn tất
Reset có thể thực hiện bằng phần cứng như mạch reset, có thể thực hiện bằng phần mềm thông qua Watchdog Reset là quá trình đưa con trỏ lệnh ( IP )về vị trí lệnh đầu tiên, nói nôm na là khiến cho chíp thực hiện chương trình lại từ đầu
D0 D1 D2 D3 D4 D5 D6 D7 VCC
GND
GND
GND
10K R10
150P C5
2 WR
DB7 11DB6 12DB5 13DB4 14DB3 15DB2 16DB1 17DB0 18VCC 20
IN+
6
IN 7
-AGND 8
REF/2 9
DGND 10
CLK IN
4 CLKOUT 19
Trang 21Sử dụng một led quét 4 Nó thực chất là 4 con led 7 thanh đơn ghép nhau, sử dụngchung chân Data ( từ a – dot )
Để hiện thị đo dòng và đo áp cho acquy
4 chân điều khiển bằng mức dương
Để dễ dàng trong điều khiển 4 chân điều khiển của led này ta sử dụng transistor kích dòng
5 khối công suất:
Khối kích dòng này vừa tạo cho ta sự dễ dàng trong điều khiển, vừa là khối hút dòng, cấp dòng cho led sáng rõ và ổn định hơn
Trang 22Q1 S8550
R5 100
VCC
R1
R8 100
VCC
R4 1K
Q2 S8550
R6 100
VCC
R2 1K
Q3 S8550
R7 100
VCC
R3 1K
L1
Trở công suất 100 ôm là trở hạn dòng bảo vệ transistor
Để bảo vệ cực B của tran, ta sử dụng trở 1k
Sơ đồ nguyên lý toàn mạch :
Trang 23P1.0/T2 1 P1.1/T2EX 2
P1.2 3 P1.3 4 P1.4 5 P1.5 6 P1.6 7 P1.7 8 RST 9 P3.0/RxD 10 P3.1/TxD 11 P3.2/INT0 12
P3.3/INT1 13
P3.4/T0 14 P3.5/T1 15 P3.6/WR 16 P3.7/RD 17 XTAL2
18 XTAL119 VSS
20 P2.0/A8P2.1/A9 2122
P2.2/A10 23P2.3/A11 24P2.4/A12 25P2.5/A13 26P2.6/A14 27P2.7/A15 28PSENALE 2930 EA/VPP 31P0.7/AD7 32P0.6/AD6 33P0.5/AD5 34P0.4/AD4 35P0.3/AD3 36P0.2/AD2 37P0.1/AD1 38P0.0/AD0 39VCC 40
X1 X2
X1
X2
D4
D0 D1 D2 D3 D5 D6 D7
P37 P36 P33
GND
VCC
VCC VCC
D0 D1 D2 D3 D4 D5 D6 D7
A1 L4 L3 L2 L1
150P C5
P37
ADC
g f e d c b a
H
560 R17
D4
Vin Vout GND
U3
7805
104 C7
VCC
GND
D1Diode 1N4007 D2 D3 D5 Diode 1N4007
CS 1 RD 2 WR
3 INTR 5
DB7 11DB6 12DB5 13DB4 14DB3 15DB2 16DB1 17DB0 18VCC 20
IN+
6
IN 7 AGND 8
-REF/2 9
DGND 10
CLK IN 4 CLKOUT 19
R13 22K
GND
1 2
HD1 IN
R14 1K
GND DONG
ADC GND R16
1K
VCC
1 3
2
LM358 R1510K
104 C4
VCC
Q1 S8550
R5 100
VCC
R1
R8 100
VCC
R4 1K
Q2 S8550
R6 100
VCC
R2 1K
Q3 S8550
R7 100
VCC
R3 1K
Sơ đồ mạch in :
Trang 246
7
2 1
11 12 13 14 15 16 17 18
19
20
10 8 7 6 5 4 3
2 1
2 1
2
1
2 1
2 1
2
2
1 2
1
1 2 3
1 2 3
1 2 3
1 2 3
1 2
1 2
6 5 4
3 2
1
2 1
1
2
2 1
1 2
2
2 1
2 1
B Phần mềm
Code:
#include<REGX51.H>
#include<math.H>