1. Trang chủ
  2. » Luận Văn - Báo Cáo

vi xử lý mạch đếm sản phẩm, đếm người ra vào phòng

24 1,1K 8

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 24
Dung lượng 1,77 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

vi xử lý mạch đếm sản phẩm, đếm người ra vào phòng, đếm xe ra vào bãi đỗ sử dụng 8051 và cảm biến hồng ngoại. vi xử lý mạch đếm sản phẩm, đếm người ra vào phòng, đếm xe ra vào bãi đỗ sử dụng 8051 và cảm biến hồng ngoại. vi xử lý mạch đếm sản phẩm, đếm người ra vào phòng, đếm xe ra vào bãi đỗ sử dụng 8051 và cảm biến hồng ngoại.

Trang 1

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

KHOA CÔNG NGHỆ ĐIỆN TỬ VÀ TRUYỀN THÔNG

BÁO CÁO THỰC HÀNH THỰC HÀNH VI ĐIỀU KHIỂN VÀ VI XỬ LÝ

Đề Tài:

GIAO TIẾP GIỮA VI ĐIỀU KHIỂN 8051 VỚI CẢM BIẾN HỒNG NGOẠI

THIẾT KẾ MẠCH ĐẾM XE RA VÀO BÃI ĐỖ

Giảng viên hướng dẫn : Đinh Quý Long Lớp : Kỹ Thuật Y Sinh – K14A Sinh viên thực hiện : Nguyễn Anh Hoàng

Thái Nguyên, ngày 20 tháng 3 năm 2018

Trang 2

MỤC LỤC

CHƯƠNG 1 PHÂN TÍCH BÀI TOÁN 3

1.1Tính cấp thiết của đề tài 3

1.2Yêu cầu bài toán 3

1.3 Giải pháp thiết kế 3

1.4 Lựa chọn linh kiện 4

CHƯƠNG 2 NGÔN NGỮ LẬP TRÌNH VÀ PHẦN MỀM PHỤ TRỢ 12

2.1 Ngôn ngữ lập trình 12

2.2 Phần mềm phụ trợ 13

CHƯƠNG 3 THỰC THI THIẾT KẾ 17

3.1Thiết kế phần cứng 17

3.2 Mã nguồn chương trình 19

3.3Một số hình ảnh của bài tập 22

CHƯƠNG 4: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 23

Kết luận 23

TÀI LIỆU THAM KHẢO 24

Trang 3

CHƯƠNG 1 PHÂN TÍCH BÀI TOÁN

1 Tính cấp thiết của đề tài

Ngày nay cùng với sự phát triển của khoa học kỹ thuật, xã hội ngày càng vănminh và hiện đại, nên việc ứng dụng khoa học vào đời sống càng được coi trọng và pháttriển mạnh mẽ Đặc biệt là trong ngành công nghiệp điện tử thì không thể thiếu vi điềukhiển với ứng dụng to lớn như được dùng để xây dựng hệ thống nhúng Nó xuất hiệnnhiều trong các dụng cụ điện tử, thiết bị điện, máy giặt, lò vi sóng, điện thoại, dâytruyền tự động

Từ đó có thể thấy được tầm quan trọng của vi điều khiển trong đời sống hằng ngày

Từ thực tế đó, chúng em quyết định chọn đề tài “Giao tiếp giữa vi điều khiển 8051 với cảm biến hồng ngoại” cho bài tập lớn môn học “Thực hành vi điều khiển và vi xử lý” để

thể hiện một phần nào đó cách giao tiếp giữa vi điều khiển và cảm biến qua mạch “Đếm xe ra vào trong bãi đỗ xe” rồi hiển thị lên led 7 thanh

2 Yêu cầu bài toán

Tìm hiểu về giao tiếp giữa vi điều khiển 8051 với cảm biến hồng ngoại.

- Thiết kế mạch đếm

- Hiển thị được kết quả mạch lên led 7 thanh

- Viết được mã nguồn chương trình để điều khiển hệ thống

1.3 Giải pháp thiết kế

Hệ thống gồm 4 khối:

Hình 1 1 Sơ đồ hệ thống

Trang 4

1.3.1 Khối cảm biến

Sử dụng cảm biến hồng ngoại để quét vật cản đi qua

1.3.2 Khối điều khiển trung tâm

Đề tài sử dụng khối vi điều khiển là vi điều khiển 8051 chức năng nhận tín hiệuthu về của cảm biến hồng ngoại và xử lý rồi hiển thị kết quả lên led 7 thanh

1.3.3 Khối hiển thị

Trong giao tiếp này nhóm chúng em sử dụng led 7 thanh anot chung

1.4 Lựa chọn linh kiện

1.4.1 Sơ lược về vi điều khiển 8051

Năm 1980 khi intel tung ra chip 8051 , bộ vi điều khiển đầu tiên của họ MCS-51 và làchuẩn công nghệ cho nhiều họ vi điều khiển được sản xuất sau này

Năm 1980 Intel công bố chip 8051 (80C51),bộ vi điều khiển đầu tiên của họ vi điều khiển MCS-51 bao gồm:

Trang 5

Hình ảnh AT98s52.

Hiện nay, Intel không còn cung cấp các loại Vi điều khiển họ MCS-51 nữa, thay vào

đó các nhà sản xuất khác như Atmel, Philips/signetics, AMD, Siemens, Matra&Dallas,Semiconductors được cấp phép làm nhà cung cấp thứ hai cho các chip của họ MSC-51

Chip Vi điều khiển được sử dụng rộng rãi trên thế giới cũng như ở Việt Nam hiện nay

là Vi điều khiển của hãng Atmel.các mã số chip được thay đổi chút ít khi được Atmel sản xuất Mã số 80 chuyển thành 89, chẳng hạn 80C52 của Intel khi sản xuất ở Atmel

mã số thành 89C52 (Mã số đầy đủ: AT89C52) với tính năng chương trình tương tự nhưnhau Tương tự 8051,8053,8055 có mã số tương đương ở Atmel là

89C51,89C53,89C55

Sau khoảng thời gian cải tiến và phát triển, hãng Atmel tung ra thị trường dòng Vi điềukhiển mang số hiệu 89Sxx với nhiều cải tiến và đặc biệt là có thêm khả năng nạp chương trình theo chế độ nối tiếp rất đơn giản và tiện lợi cho người sử dụng

Dung lượng RAM Dung lượng ROM Chế độ nạp:

89S51 128 byte 4 Kbyte nối tiếp

89S52 128 byte 8 Kbyte nối tiếp

Sơ đồ chân

Trang 6

sơ đồ chân AT89S52.

– Nhóm chân nguồn:

+ VCC: chân 40, điện áp cung cấp 5VDC

+ GND: chân 20(hay nối Mass)

– Nhóm chân dao động: gồm chân 18 và chân 19 (Chân XTAL1 và XTAL2), cho phép ghép nối thạch anh vào mạch dao động bên trong vi điều khiển, được sử dụng để nhận nguồn xung clock từ bên ngoài để hoạt động, thường được ghép nối với thạch anh và các tụ để tạo nguồn xung clock ổn định

XTAL 1: Ngõ vào đến mạch khuếch đại dao động đảo và ngõ vào đến mạch tạo xung clock bên trong

XTAL 2: Ngõ ra từ mạch khuếch đại dao động đảo

+ Chân chọn bộ nhớ chương trình: chân 31 (EA/VPP): dùng để xác định chương trình thực hiện được lấy từ ROM nội hay ROM ngoại

– Chân 31 nối mass: sử dụng bộ nhớ chương trình bên ngoài vi điều khiển

-Chân 31 nối VCC: sử dụng bộ nhớ chương trình (4Kb) bên trong vi điều

v RST(Chân RESET): Ngõ vào RST ở chân 9 là ngõ vào Reset dùng để thiết lập trạng thái ban đầu cho vi điều khiển Hệ thống sẽ được thiết lập lại các giá trị ban đầu nếu ngõ này ở mức 1 tối thiểu 2 chu kì máy

+Chân cho phép bộ nhớ chương trình PSEN:

PSEN ( program store enable) tín hiệu được xuất ra ở chân 29 dùng để truy xuất bộ nhớ chương trình ngoài Chân này thường được nối với chân OE (output enable) của ROM ngoài

Khi vi điều khiển làm việc với bộ nhớ chương trình ngoài, chân này phát ra tín hiệu kích hoạt ở mức thấp và được kích hoạt 2 lần trong một chu kì máy

Khi thực thi một chương trình ở ROM nội, chân này được duy trì ở mức logic không tích cực (logic 1)

(Không cần kết nối chân này khi không sử dụng đến)

v Chân ALE :(chân cho phép chốt địa chỉ-chân 30)

Khi Vi điều khiển truy xuất bộ nhớ từ bên ngoài, port 0 vừa có chức năng là bus địa chỉ, vừa có chức năng là bus dữ liệu do đó phải tách các đường dữ liệu và địa chỉ Tín

Trang 7

hiệu ở chân ALE dùng làm tín hiệu điều khiển để giải đa hợp các đường địa chỉ và các đường dữ liệu khi kết nối chúng với IC chốt.

Các xung tín hiệu ALE có tốc độ bằng 1/6 lần tần số dao động đưa vào Vi điều khiển, như vậy có thể dùng tín hiệu ở ngõ ra ALE làm xung clock cung cấp cho các phần khác của hệ thống

*Ghi chú : khi không sử dụng có thể bỏ trống chân này

+ Nhóm chân điều khiển vào/ra:

Ø Port 0:

gồm 8 chân (từ chân 32 đến 39) có hai chức năng:

-Chức năng xuất/nhập :các chân này được dùng để nhận tín hiệu từ bên ngoài vào để

xử lí, hoặc dùng để xuất tín hiệu ra bên ngoài, chẳng hạn xuất tín hiệu để điều khiển led đơn sáng tắt

– Chức năng là bus dữ liệu và bus địa chỉ (AD7-AD0) : 8 chân này (hoặc Port 0) còn làm nhiệm vụ lấy dữ liệu từ ROM hoặc RAM ngoại (nếu có kết nối với bộ nhớ ngoài), đồng thời Port 0 còn được dùng để định địa chỉ của bộ nhớ ngoài

Ø Port 3 (P3):

gồm 8 chân (từ chân 10 đến 17):

Chức năng xuất/nhập

Với mỗi chân có một chức năng riêng:

P3.0 RxD : Ngõ vào nhận dữ liệu nối tiếp

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

Trang 8

P3.2 INT0: Ngõ vào ngắt cứng thứ 0

P3.3 INT1: Ngõ vào ngắt cứng thứ 1

P3.4 T0 : Ngõ vào của Timer/Counter thứ 0

P3.5 T1 : Ngõ vào của Timer/Counter thứ 1

P3.6 WR : Ngõ điều khiển ghi dữ liệu lên bộ nhớ ngoài

P3.7 RD : Ngõ điều khiển đọc dữ liệu từ bộ nhớ bên ngoài

P1.0 T2 : Ngõ vào của Timer/Counter thứ 2

P1.1 T2X : Ngõ Nạp lại/thu nhận của Timer/Counter thứ 2

Chức năng:

Là vi điều khiển chính của mạch, 8 KB EPROM bên trong, 256 Byte RAM nội, 4 Port xuất /nhập I/O 8 bít, 3 bộ định thời 16 bit Watch dog timer

1.4.2 Led 7 thanh (anot chung)

LED 7 đo n hay LED 7 thanh (Seven Segment display) ạ  là 1 linh ki n r t ph  d ng , ệ ấ ổ ụ

được dùng nh  là 1 công c  hi n th  đ n gi n nh t .ư ụ ể ị ơ ả ấ

Trong LED 7 thanh bao g m ít nh t là 7 con LED m c l i v i nhau , vì v y mà có tên ồ ấ ắ ạ ớ ậ

là LED 7 đo n là v y ,7 LED đ n đạ ậ ơ ược m c sao cho nó có th  hi n th  đắ ể ể ị ược các s  ố

t  0 ­ 9 , và 1 vài ch  cái thông d ng, đ  phân cách thì ngừ ữ ụ ể ười ta còn dùng thêm 1 led

đ n đ  hi n th  d u ch m (dot) .ơ ể ể ị ấ ấ  

 Các led đ n l n lơ ầ ượ ượt đ c g i tên theo ch  cái A­ B ­C­D­E­F­G, và d u ch mọ ữ ấ ấdot . 

Nh  v y n u nh  mu n hi n th  ký t  nào thì ta ch  c n c p ngu n vào chân đó là ư ậ ế ư ố ể ị ự ỉ ầ ấ ồled s  sáng nh  mong mu n .ẽ ư ố

­Thông s  :ố  

LED 7 thanh dù có nhi u bi n th  nh ng t u chung thì cũng ch  v n có 2 lo i đó là :ề ế ể ư ự ỉ ẫ ạ  + Chân Anode chung (chân + các led m c chung l i v i nhau .)ắ ạ ớ

+ Chân Catode chung (Chân ­ các led được m c chung v i nhau .)ắ ớ

* Đ i v i lo i Anode chung :ố ớ ạ  

+ Chân 3 và 8 là 2 chân Vcc(n i ng n m ch l i v i nhau , sau đó n i chung ố ắ ạ ạ ớ ố

v i chân anode c a 8 led đ n .), v y mu n led nào đó sáng thì ch  vi c n i ớ ủ ơ ậ ố ỉ ệ ốchân catot xu ng mass .ố

Đi n áp gi a Vcc và mass ph i l n h n 1.3 V m i cung c p đ  led sáng, tuy ệ ữ ả ớ ơ ớ ấ ủnhiên không được cao quá 3V . 

Trang 9

Trong các m ch thì thạ ường dùng ngu n 5V nên đ  tránh vi c đót cháy led thì cách ồ ể ệ

Trang 10

- Kích Thước: LED Phi 3 ( 3mm).

- Ánh sáng phát ra từ LED hồng ngoại 3mm không nhìn thấy được

Led phát hồng ngoại

Trang 11

Led thu hồng ngoại

CHƯƠNG 2 NGÔN NGỮ LẬP TRÌNH VÀ PHẦN MỀM PHỤ TRỢ2.1 Ngôn ngữ lập trình

Khi sử dụng ngôn ngữ C người lập trình không cần hiểu sâu sắc về cấu trúc của bộ viđiều khiển

Cấu trúc chương trình C

Một chương trình viết bằng ngôn ngữ C thường gồm 2 phần : Phần khai báo và phầnthân chương trình Trong đó phần thân trương trình bắt buộc phải có

- Khai báo chỉ thị tiền xử lý

- Khai báo các biến toàn cục

- Khai báo nguyên mẫu các hàm

- Xây dựng các hàm và chương trình chính

Các kiểu dữ liệu

Trang 12

 Khai báo biến :

 Cú pháp: Kiểu_dữ_liệu Vùng_nhớ Tên_biến_at_ Đia_chỉ;

Ví dụ: Unsigned char data x;

Unsigned char x;

 Khi khai báo biến có thể gán luôn cho biến giá trị ban đầu

Ví dụ: Thay vì: unsigned char x; x = 0;

Ta chỉ cần: unsigned char x = 0;

 Có thể khai báo nhiều biến cùng một kiểu một lúc

Ví dụ: unsigned int x,y,z,t;

Trang 13

Hình 2 1 Giao diện khi bắt đầu mở Proteus 8.5

 Nhấn ‘P’ để tìm kiếm linh kiện

Hình 2 2 Cách tìm linh kiện

 Sắp xếp linh kiện, nối dây rồi chạy mô phỏng

Trang 14

Ảnh mô phỏng

2.2.2 Keil C

Để lập trình được cho 8051, các bạn cần phải có một công cụ gọi là Keil C là một

trình soạn thảo văn bản, giúp bạn viết code để nạp vào bo mạch 8051

Một trương trình viết bởi Keil C được lưu dưới định dạng hex

Các bước để sử dụng Keil C

ẢNH MÔ PHỎNG

Trang 15

Vùng điện áp lối vào: -0.3V đến +32V

Dòng cực máng nhỏ: 0.7mA

Dòng offset lối vào: 30nA max

Điện áp offset lối vào: 3mA max

Vùng nhiệt độ hoạt động: 0 đến 70 độ C

Sơ đồ chân

Trang 16

 Button

-Là một khí cụ đóng cắt bằng tay kiểu hộp, dung để đóng cắt mạch điện

Hình ảnh button

 Điện trở

Điện trở là sự cản trở dòng điện của một vật dẫn điện, nếu một vật dẫn điện

tốt thì điện trở nhỏ, vật dẫn điện kém thì điện trở lớn, vật cách điện thì điện trở là vô cùng lớn

Trang 17

 Biến trở

Biến trở là các thiết bị có điện trở thuần có thể biến đổi được theo ý muốn Chúng có thể được sử dụng trong các mạch điện để điều chỉnh hoạt động của mạch điện

Điều chỉnh giá trị điện trở, điều khiển tốc độ động cơ, độ sáng lcd

CHƯƠNG 3 THỰC THI THIẾT KẾ

1 Thiết kế phần cứng

Mạch đếm xe tại bãi đỗ xe sử dụng 2 cặp led thu phát hồng ngoại, khi led thu hồng ngoại không nhận được tín hiệu từ led phát(do có xe đi qua cản trở tia hồng ngoại ktới được led thu) ,điện trở của led thu rất lớn ,V2>V3 => lối ra điện áp bằng 0 ,khi led thu nhân được tín hiệu từ led phát ,điện trở của led thu giảm xuống mạnh (sự giảm đó phụ thuộc vào cường độ led phát ),khi đó V2<V3=>lối ra điện áp bằng 5v(ở mức cao)

Tín hiệu từ bộ cảm biến thu phát hồng ngoại sẽ đc đưa qua bộ so sánh trong

LM324 Bộ so sánh LM324 sẽ nhận tín hiệu ở mức cao hoặc thấp từ led thu hồng ngoại để đưa vào bộ vi điều khiển, bộ vi điều khiển sẽ sử lý thông tin sau đó hiển thị ra bộ hiển thị là led 7 thanh số xe có ở trong bãi xe

3.1.2 SƠ ĐỒ KHỐI

Biến trở tam giác

Trang 18

SƠ ĐỒ KHỐI

KHỐI CẢM BIẾN HỒNG NGOẠI

Trang 19

KHỐI ĐIỀU KHIỂN, KHỐI ĐẾM, KHỐI HIỂN THỊ

Trang 20

if(i<0){

Trang 21

if(i<0){

Trang 22

}}

}

2 Một số hình ảnh của bài tập

Mạch in

Trang 23

em đã hoàn thành được đề tài: “ Thiết kế giao tiếp vi điều khiển 8051 với cảm biến

hồng ngoại” Trong quá trình thực hiện đề tài chúng em đã đúc kết được nhiều kinh

nghiệm quý báu cho bản thân để phục vụ trong quá trình học tập và thực tế sau này

Sinh viên học tập môn học có được những kinh nghiệm thựchành tốt, được làm quen với các thiết bị hỗ trợ học tập.Trong phầnmềm thiết kế mạch sử dụng phần mềm vẽ mạch là phần mềmproteus 8.5 phầm mềm hỗ trợ vẽ mạch dễ sử dụng, phù hợp, có thế

vẽ thêm các linh kiện khác nhanh chóng Qua quá trình làm đề tàinhóm đã có được những kinh nghiệm làm mạch in, biết được cáchhoạt động của các linh kiện điện tử, có thêm được nhiều hiểu biết vềđiện tử, ứng dụng những kinh nghiệm học được vào cuộc sống

 Ưu điểm

-Mạch đơn giản dễ lắp đặt

-Hoạt động ổn định, chính xác

 Nhược điểm

-Còn hạn chế trong ý tưởng phát triển thực tế

Tuy nhiên bài báo cáo trên của chúng em vẫn còn nhiều thiếu sót chưa giảiquyết được hết yêu cầu như việc phân tích đề bài chúng em còn sơ sài do chúng emchưa hiểu kỹ về đề bài nên làm và phát triển theo hướng nào Về phần ngôn ngữa lậptrình và phần mền thì chúng em cũng tiến hành tìm kiếm và làm code cũng như cácphần mềm hỗ trợ, nhưng chúng em đã cố gắng tìm hiểu nghiên cứu về chương trình

mã nguồn

Qua bài báo cáo này chúng em mong thầy sẽ gúp đỡ chúng em thêm về các kỹ năng như lập trình và cách phân tích cái bài toán nhiều hơn để chúng em có thể cố gắng làm tốt hơn các bài tiếp theo

Trang 24

* Hướng phát triển

Trong suốt quá trình làm bài thực hành chúng em thấy đề tài này rất hay và cótính ứng dụng tương đối tốt Tuy nhiên với khả năng có hạn nên độ chính xác của sảnphẩm còn chưa cao Vì vậy nhóm chúng em đang cố gắng để hướng tới một sản phẩmtoàn diện hơn, độ chính xác cao hơn và có thể sử dụng vào trong thực tiễn

TÀI LIỆU THAM KHẢO

[1] Giáo trình Vi Xử Lý & vi điều khiển, Khoa CNĐTTT, Đại học CNTT & TT

[2] Giáo trình Nguyên lý điện tử 1, Khoa CNĐTTT, Đại học CNTT & TT

[3] Giáo trình Lý thuyết mạch, Khoa CNĐTTT, Đại học CNTT & TT

[4] Giáo trình Thực hành điện tử tương tự và số 2, Khoa ĐTTT, Đại học CNTT&TT[5] Hocdientu.vn

[6] Http://tailieu.vn

[7] Http://dientuvietnam.net

[8] Htttp://linhkien69.vn

[9] Http://youtube.com

Ngày đăng: 29/03/2018, 19:57

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1]. Giáo trình Vi Xử Lý &amp; vi điều khiển, Khoa CNĐTTT, Đại học CNTT &amp; TT Khác
[2]. Giáo trình Nguyên lý điện tử 1, Khoa CNĐTTT, Đại học CNTT &amp; TT Khác
[3]. Giáo trình Lý thuyết mạch, Khoa CNĐTTT, Đại học CNTT &amp; TT Khác
[4]. Giáo trình Thực hành điện tử tương tự và số 2, Khoa ĐTTT, Đại học CNTT&amp;TT [5]. Hocdientu.vn[6]. Http://tailieu.vn Khác
[7]. Http://dientuvietnam.net [8]. Htttp://linhkien69.vn [9]. Http://youtube.com Khác

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w