Đồ án: Nhà giữ xe tự động dùng RFID

52 1.5K 25
Đồ án: Nhà giữ xe tự động dùng RFID

Đ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

Đồ án bãi giữ xe tự động áp dụng công nghệ RFID nhận biết xe ra vào, động cơ mở cửa ra vào, có lưu thời gian và tính tiền giữ xe, thông báo khi hết chỗ để xe, có hướng dẫn chỗ để xe, hiển thị trên màn hình LCD, dùng module đọc thẻ Rfid RC522, RTC DS1307, động cơ servo mở cửa, có cảm biến hồng ngoại phát hiện xe đã vào hết hoặc ra hêt để đóng cửa đảm bảo an toàn tránh sự cố đáng tiếc làm hỏng xe.

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH ĐỒ ÁN ĐIỆN TỬ ĐỀ TÀI: THIẾT KẾ VÀ THI CÔNG MƠ HÌNH NHÀ GIỮ XE TỰ ĐỘNG GVHD: Nguyễn Trường Duy SVTH: Lê Thanh Tiến - 15141304 Tp Hồ Chí Minh, ngày tháng 12 năm 2018 MỤC LỤC MỤC LỤC CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI 1.1 GIỚI THIỆU ĐỀ TÀI: 1.2 MỤC TIÊU: 1.3 GIỚI HẠN ĐỀ TÀI: 1.4 CÁC SẢN PHẨM LIÊN QUAN: .3 1.4.1 Máy giữ xe thông minh làn: 1.4.2 Bãi giữ xe thông minh CarParking- Vietek .4 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2.1 GIỚI THIỆU ARDUINO PROMINI: 2.2 GIỚI THIỆU MODULE DS1307 .8 2.3 GIỚI THIỆU MODULE RFID RC522 10 2.4 GIỚI THIỆU LCD 12 2.4.1 LCD 20x4 12 2.4.2 Module chuyển đổi I2C 14 2.5 GIỚI THIỆU ĐỘNG CƠ SERVO SG90 15 2.6 GIỚI THIỆU MẠCH CHUYỂN USB TO UART CH340 .16 2.7 GIỚI THIỆU MODULE CẢM BIẾN HỒNG NGOẠI 17 2.8 GIỚI THIỆU BUZZER 18 2.9 GIỚI THIỆU CÁC CHUẨN GIAO TIẾP 19 2.9.1 Chuẩn I2C 19 2.9.2 Chuẩn SPI 20 2.10 GIỚI THIỆU PHẦN MỀM ARDUINO IDE 22 CHƯƠNG 3: THIẾT KẾ 23 3.1 THIẾT KẾ SƠ ĐỒ KHỐI 23 3.1.1 Sơ đồ khối 23 3.1.2 Chức khối .23 3.1.3 Nguyên tắc hoạt động 24 3.2 THIẾT KẾ 25 3.2.1 Khối điều khiển( Arduino Promini) .25 3.2.2 Khối RFID RC522 26 3.2.3 Khối cảm biến hồng ngoại .27 3.2.4 Khối RTC DS1307 27 3.2.5 Khối hiển thị(LCD) .28 3.2.6 Khối động Servo .29 3.2.7 Khối Buzzer 30 3.2.8 Khối nguồn 30 CHƯƠNG 4: THIẾT KẾ PHẦN MỀM 32 4.1 Lưu đồ giải thuật .32 4.2 Giải thích lưu đồ .33 CHƯƠNG 5: THI CÔNG 34 5.1 Sơ đồ nguyên lý 34 5.2 Nguyên lý hoạt động 34 5.3 Hình ảnh mơ hình thi công thực tế 35 36 CHƯƠNG 6: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 37 6.1 Kết luận 37 6.2 Hướng phát triển .37 TÀI LIỆU THAM KHẢO .38 PHỤ LỤC 39 ĐỒ ÁN THIẾT KẾ VÀ THI CÔNG MƠ HÌNH NHÀ GIỮ XE TỰ ĐỘNG CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI 1.1 GIỚI THIỆU ĐỀ TÀI: Ngày nay, mà giới nóng lên vận động, phát triển mặt kinh tế, trị, khoa học kỹ thuật,…Trong đó, ứng dụng khoa học kỹ thuật tiên tiến làm cho giới ngày thay đổi, văn minh đại Sự phát triển kỹ thuật điện tử tạo hàng lọat thiết bị với đặc điểm bật xác cao, tốc độ nhanh, gọn nhẹ yếu tố cần thiết góp phần cho họat động người đạt hiệu cao Tại thị lớn Hà Nội TP Hồ Chí Minh xe máy, tơ phương tiện lại phổ biến Nhưng với bãi giữ xe thủ cơng nhiều thời gian nhân lực Để khắc phục nhược điểm trên, qua trình tìm hiểu, khảo sát Arduino Promini, em nhận thấy rằng: ứng dụng Arduino Promini vào bãi giữ xe phương pháp tối ưu, vừa tiết kiệm thời gian vật chất Được đồng ý thầy, em tiến hành thực đề tài “ Thiết kế thi công mô hình nhà giữ xe tự động” Đề tài kết hợp kiến thức học nhà trường với q trình tìm tòi nghiên cứu hướng dẫn tận tình giáo viên hướng dẫn, q trình làm khơng tránh khỏi hạn chế thiếu sót Em mong nhận ý kiến đóng góp q báu phê bình, dẫn Thầy Cô bạn ĐỒ ÁN THIẾT KẾ VÀ THI CƠNG MƠ HÌNH NHÀ GIỮ XE TỰ ĐỘNG 1.2 MỤC TIÊU: Mục tiêu đề tài lập trình cho Arduino Promini để kết nối, điều khiển thiết bị ngoại vi cho sản phẩm nhà giữ xe tự động có nhiều tính thơng minh như: đếm số xe vào, tính tiền gửi xe theo thời gian, đóng mở cửa tự động, Đề tài giúp em biết dùng RFID RC522 để đọc thẻ, biết dùng RTC DS1307 để đọc thời gian thực, biết dùng Eeprom Arduino để lưu truy xuất giá trị cần thiết, biết dùng LCD để hiển thị liệu, biết điều khiển động Servo kết hợp cảm biến hồng ngoại để đóng mở cửa, biết dùng phần mềm Arduino IDE lập trình cho Arduino Promini 1.3 GIỚI HẠN ĐỀ TÀI: Trong phạm vi đồ án mơn học em thực đề tài mơ hình đơn giản, tính hạn chế, chưa thể ứng dụng hiệu ngồi thực tế Sau có thời gian em mở rộng đề tài ứng dụng thực tế với thêm tính thơng minh như: chụp lưu bảng số xe xử lý ảnh, gắn thêm Camera để quản lí xe, có tính hướng dẫn chỗ đậu xe, thêm cảm biến để phân biệt xe máy tơ, nhiều tính khác Qua góp phần nâng cao chất lượng, hiệu bãi xe cố lòng tin người gửi xe ĐỒ ÁN THIẾT KẾ VÀ THI CƠNG MƠ HÌNH NHÀ GIỮ XE TỰ ĐỘNG 1.4 CÁC SẢN PHẨM LIÊN QUAN: 1.4.1 Máy giữ xe thông minh làn: Hệ thống gồm máy tính (mỗi máy điều khiển hai xe), hình, vào bố trí cổng vào tòa nhà, Camera, đầu đọc thẻ, cột treo Camera, Gờ giảm tốc 3m, card ghi hình camera, phần mềm quản lý T Parking Mơ hình hệ thống: Nguyên lý hoạt động: - Khi xe vào, nhân viên quét thẻ (nhập thông tin biển số xe), thao tác khoảng 3-5 giây, sau thẻ đưa cho khách Khi quét thẻ thông tin biển số xe ghi lên thẻ, tồn thơng tin hình ảnh, ngày vào, người quét thẻ… lưu trực tiếp vào Database hệ thống - Khi xe ra, khách hàng trả thẻ quét thẻ Khi quét thẻ hệ thống tự động hiển thị hình ảnh xe lúc vào lúc Lúc nhân viên điều khiển phải so sánh hình ảnh lúc vào lúc ra, thông tin biển số, người điều khiển, xe cho khách Tồn hình ảnh, ngày giờ…được lưu lại vào hệ thống để phục vụ cho trình kiểm tra sau, truy xuất lại sau ĐỒ ÁN THIẾT KẾ VÀ THI CƠNG MƠ HÌNH NHÀ GIỮ XE TỰ ĐỘNG 1.4.2 Bãi giữ xe thông minh CarParking- Vietek Hệ thống kiểm sốt xe thơng minh dùng thẻ tầm xa RFID Vietek kiểm sốt việc vào tơ/ xe máy cách thuận tiện Hệ thống kết hợp với hệ thống Camera, phần mềm nhận dạng biển số, lưu trữ hình ảnh thời điểm phương tiện vào bãi xe thông qua hệ thống đầu đọc tầm xa Hệ thống quản lý bãi giữ xe thông minh dùng thẻ từ xa giải pháp tồn diện khép kín, đảm bảo đáp ứng đầy đủ nhu cầu quản lý cho loại hình bãi xe quy mơ từ nhỏ đến lớn Thông tin hệ thống hiển thị cập nhật tức giúp người quản lý ln chủ động việc điều hành quản lý bãi xe Quy trình vận hành hệ thống đơn giản, linh hoạt chặt chẽ mang lại tiện lợi an tâm cho người sử dụng khách hàng Hệ thống kết hợp hoàn hảo thiết bị dẫn, kiểm sốt tính phí cho phương tiện Mơ hình hệ thống: ĐỒ ÁN THIẾT KẾ VÀ THI CƠNG MƠ HÌNH NHÀ GIỮ XE TỰ ĐỘNG Nguyên lý hoạt động: * Đối với khách vãng lai: Khi xe vào: khách quẹt thẻ lấy thông tin xe vào (ID thẻ, thời gian, biển số, hình ảnh) liệu lưu vào liệu đầu vào máy chủ xử lý Barrier tự động mở cho xe vào Khi xe ra: Khách quẹt thẻ lấy thông tin ra, hệ thống xác định thông tin xe vào Nếu thông tin sai hệ thống đưa cảnh báo tùy chọn xử lý Thơng tin hệ thống in hóa đơn tốn cho khách, thơng tin khách cập nhật vào liệu xe Barrier mở cho xe * Đối với xe thuê bao: Khi xe vào: Khách quẹt thẻ lấy thông tin xe vào Hệ thống xác định thông tin khách đăng ký sai hệ thống đưa cảnh báo tùy chọn xử lý Nếu hệ thống lưu liệu đầu vào mở cửa cho xe vào Khi xe ra: Khách quẹt thẻ lấy thông tin xe ra, hệ thống xác thực với thông tin xe vào sai hệ thống đưa cảnh báo tùy chọn xử lý Thông tin hệ thống cập nhật liệu xe barrier mở cho xe ĐỒ ÁN THIẾT KẾ VÀ THI CÔNG MƠ HÌNH NHÀ GIỮ XE TỰ ĐỘNG ĐỒ ÁN THIẾT KẾ VÀ THI CƠNG MƠ HÌNH NHÀ GIỮ XE TỰ ĐỘNG CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2.1 GIỚI THIỆU ARDUINO PROMINI: Arduino Pro Mini phiên nhỏ gọn dòng Arduino giữ đầy đủ tính tương đương với Arduino Uno/Nano sử dụng Vi điều khiển ATmega328P, phiên sử dụng chip dán nên Arduino Pro Mini có nhiều Arduino Uno chân Analog A6 A7, với thiết kế nhỏ gọn giá thành phải chăng, Arduino Pro Mini lựa chọn tối ưu cho vô số ứng dụng khác Hình ảnh Arduino Promini: ĐỒ ÁN THIẾT KẾ VÀ THI CƠNG MƠ HÌNH NHÀ GIỮ XE TỰ ĐỘNG 5.3 Hình ảnh mơ hình thi cơng thực tế Hình ảnh bao qt mơ hình: 35 ĐỒ ÁN THIẾT KẾ VÀ THI CƠNG MƠ HÌNH NHÀ GIỮ XE TỰ ĐỘNG Hình ảnh LCD hiển thị xe ra: Hình ảnh LCD hiển thị xe vào: 36 ĐỒ ÁN THIẾT KẾ VÀ THI CƠNG MƠ HÌNH NHÀ GIỮ XE TỰ ĐỘNG CHƯƠNG 6: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 6.1 Kết luận * Ưu điểm: - Mạch nhỏ gọn, mơ hình đơn giản, dễ thực - Hoạt động ổn định, đáp ứng yêu cầu đề tài - Hiển thị thông tin đầy đủ, rõ ràng * Hạn chế: - Chưa nhận biết người gửi xe để chống trộm - Chưa phân biệt xe máy tơ - Chưa có tính hướng dẫn chỗ đậu xe - Chỉ có xe xe vào dùng chung module đọc thẻ nên gặp khó khăn lượng xe đông 6.2 Hướng phát triển - Đề tài áp dụng cho bãi giữ xe quy mơ nhỏ, khơng đòi hỏi hệ thống phải hoạt động liên tục - Nếu muốn áp dụng cho bãi xe quy mơ lớn, đòi hỏi tính an ninh cao cần phải cải tiến thêm với nhiều tính thơng minh như: đọc biển số xe xử lý ảnh, lắp thêm cemera để giám sát an ninh, chống trộm xe, lắp thêm cảm biến phân biệt xe máy tơ, thêm tính hướng dẫn chỗ đậu xe để tiết kiệm thời gian gửi, mở rộng thêm nhiều cho xe xe vào với nhiều máy quẹt thẻ để bãi xe không bị tải cao điểm 37 ĐỒ ÁN THIẾT KẾ VÀ THI CƠNG MƠ HÌNH NHÀ GIỮ XE TỰ ĐỘNG TÀI LIỆU THAM KHẢO Vi Điều Khiển Và Ứng Dụng Arduino Dành Cho Người Tự Học Phạm Quang Huy - Nguyễn Trọng Hiếu – NXB Bách Khoa Hà Nội Hướng Dẫn Sử Dụng Arduino Phạm Quang Huy, TS Trương Đình Nhơn– NXB Thanh Niên 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ị Hương, Vũ Trung Kiên – NXB Giáo Dục Website http://alldatasheet.com/ Website http://arduino.vn/ Website http://codientu.org/ Website http://webdien.com/ Website http://www.tailieu.vn/ Website http://wikipedia.com/ 38 ĐỒ ÁN THIẾT KẾ VÀ THI CƠNG MƠ HÌNH NHÀ GIỮ XE TỰ ĐỘNG PHỤ LỤC CHƯƠNG TRÌNH #include #include #include #include #include #include #include #include #define INFRARED_PIN1 #define INFRARED_PIN2 #define SERVO_PIN1 #define SERVO_PIN2 #define SPEAKER_PIN #define SS_PIN 10 #define RST_PIN Servo gServo1; Servo gServo2; int my_second[10], my_minute[10], my_hour[10], my_wday[10], my_month[10], my_year[10]; int temp_second, temp_minute, temp_hour, temp_day, temp_month, temp_year; int time_giuxe[10][3]; MFRC522 rfid(SS_PIN, RST_PIN); // Instance of the class LiquidCrystal_I2C lcd(0x27, 20, 4); int time_in[10][3];//thoi gian bat dau gui byte data[10][5];//chua id the card int slot_max = 10, slot; float price = 1; byte nuidPICC[4]; int dem; my_day[10], temp_wday, 39 ĐỒ ÁN THIẾT KẾ VÀ THI CƠNG MƠ HÌNH NHÀ GIỮ XE TỰ ĐỘNG void setup() { //RTC.set(1542678840);//bo dong sau set thoi gian rtc //setTime(1542678840); gServo1.attach(SERVO_PIN1); gServo2.attach(SERVO_PIN2); pinMode(SPEAKER_PIN,OUTPUT); gServo1.write(0); gServo2.write(0); digitalWrite (SPEAKER_PIN,HIGH); pinMode(INFRARED_PIN1, INPUT_PULLUP); pinMode(INFRARED_PIN2, INPUT_PULLUP); xoa_du_lieu(); //neu muon khoi phuc thi read eeprom Serial.begin(9600); SPI.begin(); // Init SPI bus rfid.PCD_Init(); // Init MFRC522 lcd.begin(); lcd.backlight(); lcd.clear(); lcd.setCursor(0, 0); lcd.print(" DO AN "); lcd.setCursor(0, 1); lcd.print(" NHA GIU XE TU DONG "); lcd.setCursor(0, 2); lcd.print(" LE THANH TIEN "); lcd.setCursor(0, 3); lcd.print(" MSSV: 15141304 "); Serial.println("\r\nRestore"); //Restore data for (int count = 0; count < 10; count++) { for (int count2 = 0; count2 < 4; count2++) { 40 ĐỒ ÁN THIẾT KẾ VÀ THI CÔNG MƠ HÌNH NHÀ GIỮ XE TỰ ĐỘNG data[count][count2] = EEPROM.read(count * 10 + count2); //id the thu luu o 0,1,2,3;id the thu luu o 10,11,12,13; (moi the co byte) } } for (int count = 0; count < 10; count++) { for (int count2 = 0; count2 < 3; count2++) { data[count][count2] = EEPROM.read(200 + count * 10 + count2); //time xe thu luu dia chi 200,201,202(time gom byte:h,ph,s) } } dem = EEPROM.read(500); //bien dem duoc luu o dia chi 500 if (dem > 10) dem = 0; } int tien = 0; long pre_time_action = 0, pre_time_home_screen=0; bool clear_lcd=false; void loop() { if ( ! rfid.PICC_IsNewCardPresent())//tim the moi { if (digitalRead(INFRARED_PIN1) == 0) { gServo1.write(0); } else if (digitalRead(INFRARED_PIN2) == 0) { gServo2.write(0); } // sau quet the thi cap nhat lai pre_time_action,clear_lcd==false //sau 5s thi vao kt bien clear_lcd==false xoa hinh lcd //va tro lai man hinh home(cap nhat thoi gian 1s lan) //doi lan quet the tiep theo thi lam tuong tu 41 ĐỒ ÁN THIẾT KẾ VÀ THI CƠNG MƠ HÌNH NHÀ GIỮ XE TỰ ĐỘNG if ((millis() - pre_time_action > 5000)) //5s { if(clear_lcd==false) {lcd.clear();clear_lcd=true;} if(millis()-pre_time_home_screen>=1000) { pre_time_home_screen=millis(); readDS1307(); lcd.setCursor(0, 2); lcd.print(temp_year, DEC); lcd.print("/"); lcd.print(temp_month, DEC); lcd.print("/"); lcd.print(temp_day, DEC); lcd.print(" "); if(temp_hour=11 (nghĩa la xe thu 11) { 46 ĐỒ ÁN THIẾT KẾ VÀ THI CƠNG MƠ HÌNH NHÀ GIỮ XE TỰ ĐỘNG lcd.clear(); lcd.setCursor(0, 1); lcd.print("!XIN LOI QUY KHACH!"); lcd.setCursor(0, 2); lcd.print("!NHA XE DA HET CHO!"); Serial.print("\r\n"); Serial.print("DANG FULL"); gServo1.write(0); } } pre_time_action = millis(); rfid.PICC_HaltA(); rfid.PCD_StopCrypto1(); } bool xoa_du_lieu() { for (int i = 0; i < 600; i++) { EEPROM.write(i, 0); } } bool check_the_co_roi() { for (int i = 0; i < 10; i++) { if ((rfid.uid.uidByte[0] == data[i][0]) && (rfid.uid.uidByte[1] == data[i][1]) && (rfid.uid.uidByte[2] == data[i][2])) { return true; } } return false; } int checkID_trong() { 47 ĐỒ ÁN THIẾT KẾ VÀ THI CƠNG MƠ HÌNH NHÀ GIỮ XE TỰ ĐỘNG for (int i = 0; i < 10; i++) { if (data[i][0] == || data[i][0] == 255) //Số default la 255 de biết chưa có { Serial.print(i+1); //in vi tri de huong dan xe vao vi tri return i; } } return 0; } void readDS1307() { Wire.beginTransmission(0x68); Wire.write((byte)0x00); Wire.endTransmission(); Wire.requestFrom(0x68, 7); temp_second = bcd2dec(Wire.read() & 0x7f ); temp_minute = bcd2dec(Wire.read() ); temp_hour = bcd2dec(Wire.read() & 0x3f); // chế độ 24h temp_wday = bcd2dec(Wire.read() ); temp_day = bcd2dec(Wire.read() ); temp_month = bcd2dec(Wire.read() ); temp_year = bcd2dec(Wire.read() ); temp_year += 2000; } void buzzer() { digitalWrite (SPEAKER_PIN,LOW); delay(100); digitalWrite (SPEAKER_PIN,HIGH); } /* Chuyển từ format BCD (Binary-Coded Decimal) sang Decimal */ int bcd2dec(byte num) 48 ĐỒ ÁN THIẾT KẾ VÀ THI CÔNG MƠ HÌNH NHÀ GIỮ XE TỰ ĐỘNG { return ((num / 16 * 10) + (num % 16)); } 49 ... MƠ HÌNH NHÀ GIỮ XE TỰ ĐỘNG ĐỒ ÁN THIẾT KẾ VÀ THI CÔNG MÔ HÌNH NHÀ GIỮ XE TỰ ĐỘNG CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2.1 GIỚI THIỆU ARDUINO PROMINI: Arduino Pro Mini phiên nhỏ gọn dòng Arduino giữ đầy... bạn ĐỒ ÁN THIẾT KẾ VÀ THI CÔNG MƠ HÌNH NHÀ GIỮ XE TỰ ĐỘNG 1.2 MỤC TIÊU: Mục tiêu đề tài lập trình cho Arduino Promini để kết nối, điều khiển thiết bị ngoại vi cho sản phẩm nhà giữ xe tự động. .. tin người gửi xe ĐỒ ÁN THIẾT KẾ VÀ THI CÔNG MÔ HÌNH NHÀ GIỮ XE TỰ ĐỘNG 1.4 CÁC SẢN PHẨM LIÊN QUAN: 1.4.1 Máy giữ xe thông minh làn: Hệ thống gồm máy tính (mỗi máy điều khiển hai xe) , hình, vào

Ngày đăng: 16/07/2019, 13:02

Từ khóa liên quan

Mục lục

  • MỤC LỤC

  • CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI

  • 1.1. GIỚI THIỆU ĐỀ TÀI:

  • 1.2. MỤC TIÊU:

  • 1.3. GIỚI HẠN ĐỀ TÀI:

  • 1.4. CÁC SẢN PHẨM LIÊN QUAN:

  • 1.4.1. Máy giữ xe thông minh 4 làn:

  • 1.4.2. Bãi giữ xe thông minh CarParking- Vietek

  • CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

  • 2.1. GIỚI THIỆU ARDUINO PROMINI:

  • 2.2. GIỚI THIỆU MODULE DS1307

  • 2.3. GIỚI THIỆU MODULE RFID RC522

  • 2.4. GIỚI THIỆU LCD

  • 2.4.1. LCD 20x4

  • 2.4.2. Module chuyển đổi I2C

  • 2.5. GIỚI THIỆU ĐỘNG CƠ SERVO SG90

  • 2.6. GIỚI THIỆU MẠCH CHUYỂN USB TO UART CH340

  • 2.7. GIỚI THIỆU MODULE CẢM BIẾN HỒNG NGOẠI

  • 2.8. GIỚI THIỆU BUZZER

  • 2.9. GIỚI THIỆU CÁC CHUẨN GIAO TIẾP

Tài liệu cùng người dùng

Tài liệu liên quan