Các công nghệ mới tiên tiến đã ra đời như công nghệ RFID, các công nghệ điều khiển và giám sát từ xa, công nghệ IoT Internet of Thing, xử lý ảnh … đã và luôn được ưu tiên ứng dụng vào cá
Trang 1THÀNH PHỐ HỒ CHÍ MINH
BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
S K L 0 0 9 7 9 6
Tp Hồ Chí Minh, tháng 12/2022
Trang 2TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HỒ CHÍ MINH
KHOA ĐÀO TẠO CHẤT LƯỢNG CAO
ĐỒ ÁN TỐT NGHIỆP
Khóa : 2018
Trang 3
CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Giáo viên hướng dẫn: ThS Nguyễn Văn Hiệp
Ngày nhận đề tài: 07/10/2022 Ngày nộp đề tài: 24/12/2022
1 Tên đề tài: Thiết kế và thi công mô hình bãi giữ xe ứng dụng RFID và xử lý ảnh
2 Các tài liệu, số liệu ban đầu: Nhóm đã tìm kiếm các kiến thức từ các tài liệu về giáo trình lập trình C/C++, C# tìm hiểu các datasheet về các linh kiện Arduino, RFID RC522, cảm biến vật cản hồng ngoại cũng như tham khảo các đồ án Iot, môn học của các anh chị đi trước
3 Nội dung thực hiện đề tài: Để thực hiện đề tài này nhóm đã lên ý tưởng cho đề tài, thiết
kế hệ thống, xây dựng mạch trên phần mềm Proteus, chỉnh sửa , thi công mô hình và cuối cùng là viết báo cáo cho đồ án này
4 Sản phẩm: Mô hình hệ thống bãi giữ xe ứng dụng RFID và xử lý ảnh
TRƯỜNG NGÀNH
(Ký và ghi đầy đủ họ tên)
GIẢNG VIÊN HƯỚNG DẪN
(Ký và ghi đầy đủ họ tên)
Trang 4CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc Lập – Tự Do -Hạnh Phúc
Tp.Hồ Chi Minh , 22 tháng 12 năm 2022
PHIẾU NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
Ngành: CNKT Điện tử - Viễn thông
Tên đề tài: Thiết kế và thi công mô hình bãi giữ xe ứng dụng RFID và xử lý ảnh Giáo viên hướng dẫn: ThS Nguyễn Văn Hiệp
NHẬN XÉT
1 Về nội dung đề tài & khối lượng thực hiện:
Đạt yêu cầu đề ra
2 Ưu điểm:
Có thi công mô hình hoạt động ổn
3 Khuyết điểm:
Báo cáo phần kết quả đánh giá chưa chi tiết
Mô hình còn chưa chuyên nghiệp
4 Đề nghị cho bảo vệ hay không?
Được bảo vệ
5 Đánh giá loại
Khá
Điểm: 8,5 (Điểm bằng chữ:Tám điểm rưỡi)
Tp Hồ Chí Minh, ngày 22 tháng 12 năm 2022
Giảng viên hướng dẫn
(Ký và ghi rõ họ tên)
Nguyễn Văn Hiệp
Trang 5CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc Lập – Tự Do -Hạnh Phúc
Tp.Hồ Chi Minh , tháng năm 20
PHIẾU NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN
Ngành: CNKT Điện tử - Viễn thông
Tên đề tài: Thiết kế và thi công mô hình bãi giữ xe ứng dụng RFID và xử lý ảnh
Giáo viên hướng dẫn: ThS Nguyễn Văn Hiệp
NHẬN XÉT
1 Về nội dung đề tài & khối lượng thực hiện:
2 Ưu điểm:
3 Khuyết điểm:
4 Đề nghị cho bảo vệ hay không?
5 Đánh giá loại
6 Điểm: (Điểm bằng chữ )
Tp Hồ Chí Minh, ngày tháng năm 20…
Giảng viên phản biện
(Ký và ghi rõ họ tên)
Trang 6LỜI CẢM ƠN
Trong thời gian thực hiện đề tài này, nhóm em đã nhận được nhiều sự giúp đỡ, đóng góp ý kiến và chỉ bảo nhiệt tình của bạn bè và các thầy cô trong trường đã tận tình hướng dẫn và thư viện trường đã cung cấp giáo trình và tài liệu tham khảo trong suốt quá trình học tập của sinh viên
Nhóm thực hiện đề tài xin gửi lời cảm ơn chân thành và sâu sắc nhất đến ThS
Nguyễn Văn Hiệp đã tận tình hướng dẫn, góp ý và chia sẻ kinh nghiệm, giúp đỡ và tạo
điều kiện cho nhóm nghiên cứu và hoàn thành đề án tốt nghiệp này
Cuối cùng, mặc dù đã cố gắng hoàn thành nhiệm vụ đề tài đặt ra và đảm bảo thời hạn nhưng do kiến thức còn hạn hẹp chắc chắn sẽ không tránh khỏi những thiếu sót, mong Thầy và các bạn sinh viên thông cảm Nhóm rất mong được sự góp ý, nhận xét đánh giá về nội dung và hình thức trình bày từ thầy để nhóm có thể hoàn thiện bài báo cáo tốt hơn
Nhóm chúng em xin chân thành cảm ơn!
Tp Hồ Chí Minh, ngày 22 tháng 12 năm 2022
Sinh viên thực hiện Nguyễn Thanh Hào Trần Vĩnh Khang
Trang 7LỜI MỞ ĐẦU
Ngày nay ở các trung tâm thành phố lớn sự phát triển mật độ dân cư và xe cộ ngày càng đông đúc Đặc biệt là sự gia tăng về số lượng xe ô tô ngày càng nhiều và điều này phần nào cũng phản ánh sự phát triển của một quốc gia Từ đó dẫn đến vấn đề môi trường,
ùn tắc giao thông và thiếu bãi đỗ xe cần được cấp thiết giải quyết
Điện tử đang trở thành một ngành công nghiệp đa nhiệm Điện tử đã đang đáp ứng những đòi hỏi không ngừng từ các lĩnh vực công, nông, lâm, ngư nghiệp cho đến các nhu cầu thiết bị trong đời sống hàng ngày và nhiều hơn thế nữa Các thiết bị điện tử đã, đang
và sẽ tiếp tục được ứng dụng ngày càng rộng rãi và mang lại hiệu quả trong hầu hết các lĩnh vực khoa học kỹ thuật cũng như trong đời sống xã hội đi đôi với sự phát triển của khoa học và công nghệ
Với trình độ khoa học kĩ thuật ngày càng phát triển Nhiều vấn đề đã được giải quyết nhanh gọn với công nghệ điện tử và tự động hóa Các bãi giữ xe truyền thống đã không còn phù hợp với hầu hết các tòa nhà, chung cư hay bệnh viện… vì những rắc rồi mà nó mang lại Với hệ thống máy giữ xe bằng thẻ từ (máy giữ xe quẹt thẻ) các vấn đề nan giải muôn thủa như vấn đề ùn tắc, tình trạng mất xe, mất vé gửi… dường như đã được giải
quyết triệt để Xuất phát từ các vấn đề thiết thực đó đề tài “THIẾT KẾ VÀ THI CÔNG
MÔ HÌNH BÃI GIỮ XE ỨNG DỤNG RFID VÀ XỬ LÝ ẢNH” đã được chọn cho quá
trình nghiên cứu
Trang 8MỤC LỤC
LỜI CẢM ƠN i
LỜI MỞ ĐẦU ii
DANH MỤC CÁC TỪ VIẾT TẮT vi
DANH MỤC CÁC BẢNG BIỂU vii
DANH MỤC HÌNH ẢNH viii
CHƯƠNG 1: TỔNG QUAN 1
1.1 Đặt vấn đề 1
1.2 Tình hình nghiên cứu hiện nay 1
1.2.1 Tình hình nghiên cứu trong nước 1
1.2.2 Tình hình nghiên cứu ngoài nước 2
1.3 Tính cấp thiết của đề tài 2
1.4 Mục tiêu của đề tài 3
1.5 Đối tượng nghiên cứu 3
1.6 Phạm vi nghiên cứu 3
1.7 Nhiệm vụ của đề tài 3
1.8 Phương pháp nghiên cứu 4
1.9 Bố cục đồ án 4
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 5
2.1 Tổng quan về các chuẩn truyền 5
2.1.1 Chuẩn giao tiếp UART 5
2.1.2 Chuẩn giao tiếp I2C 6
2.1.3 Chuẩn giao tiếp SPI 7
2.2 Tổng quan về công nghệ RFID 8
2.3 Giới thiệu phần cứng 10
2.3.1 Giới thiệu KIT Arduino UNO R3 10
2.3.3 Module LCD 16x2 12
2.3.4 Động cơ Servo SG90 14
2.3.5 Cảm biến vật cản hồng ngoại 15
2.3.6 Module NodeMCU ESP32 DEVKIT V1 15
2.3.7 Camera 16
2.4 Phần mềm lập trình điều khiển 17
2.4.1 Phần mềm lập trình Arduino IDE 17
Trang 92.4.2 Phần mềm lập trình Microsoft Visual Studio 18
2.5 Tổng quan ngôn ngữ lập trình Web 19
2.5.1 Ngôn ngữ HTML 19
2.5.2 Ngôn ngữ CSS 20
2.5.3 Ngôn ngữ JavaScript 20
2.6 Tổng quan cơ sở dữ liệu 21
2.6.1 SQL Server Management Studio 21
2.6.2 Firebase 21
2.7 Tổng quan về thư viện xử lý ảnh 22
2.8 Tổng quan về thuật toán xử lý nhận diện ảnh 23
2.8.1 Thuật toán OCR 23
2.8.2 Thuật toán Canny 23
CHƯƠNG 3: THIẾT KẾ VÀ XÂY DỰNG HỆ THỐNG 25
3.1 Giới thiệu 25
3.2 Yêu cầu hệ thống 25
3.3 Sơ đồ khối hệ thống 25
3.4 Tính toán và thiết kế phần cứng 26
3.4.1 Khối động cơ 27
3.4.2 Khối nút nhấn 27
3.4.3 Khối cảm biến vật cản 28
3.4.4 Khối hiển thị 29
3.4.5 Khối RFID 31
3.4.6 Khối xử lý và điều khiển (chính) 32
3.4.7 Khối xử lý và điều khiển (phụ) 32
3.4.8 Khối nguồn 33
3.5 Thiết kế phần mềm 33
3.5.1 Thiết kế phần mềm cho PC 33
3.5.2 Thiết kế trang web đặt chỗ 37
3.6 Sơ đồ nguyên lý toàn mạch 38
CHƯƠNG 4: HỆ THỐNG NHẬN DẠNG BIỂN SỐ XE 39
4.1 Mô hình tổng quát nhận dạng biển số xe 39
5.1 Phần cứng 45
5.1.1 Mạch in hệ thống 45
5.1.2 Board mạch đã hoàn thiện 45
Trang 105.1.3 Thi công mô hình bãi xe 47
5.2 Phần mềm 47
5.2.1 Phần mềm quản lý bãi giữ xe trên PC 47
5.2.2 Trang web đặt chỗ 50
CHƯƠNG 6: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 53
6.1 Kết luận 53
6.2 Hướng phát triển 54
6.3 Ứng dụng trong tương lai gần 54
TÀI LIỆU THAM KHẢO 55
PHỤ LỤC 56
Trang 11DANH MỤC CÁC TỪ VIẾT TẮT
UART Universal Asynchronous Receiver - Transmitter
Trang 12DANH MỤC CÁC BẢNG BIỂU
Bảng 2 1: Thông số kỹ thuật của Arduino UNO 10
Bảng 2 2: Thông số kỹ thuật của RFID RC522 11
Bảng 2 3: Chức năng các chân của LCD 16x2 13
Bảng 2 4: Thông số kỹ thuật Module cảm biến hồng ngoại 15
Bảng 2 5: Thông số kỹ thuật Module NodeMCU ESP32 DEVKIT V1 16
Bảng 3 1: Bảng kết nối chân Arduino với LCD 30
Bảng 3 2: Sơ đồ kết nối RC522 với Arduino 31
Bảng 3 3: Dòng và áp quy định các thiết bị trong đồ án 33
Trang 13DANH MỤC HÌNH ẢNH
Hình 2 1: Hình ảnh minh họa chuẩn giao tiếp UART 5
Hình 2 2: Hình ảnh minh họa giáo tiếp I2C 6
Hình 2 3: Hình ảnh giao tiếp SPI 8
Hình 2 4: Hình ảnh thực tế Board mạch Arduino UNO R3 10
Hình 2 5: Hình ảnh thực tế Module RFID RC522 11
Hình 2 6: Hình ảnh thực tế màn hình LCD 16x2 12
Hình 2 7: Module chuyển đổi I2C 14
Hình 2 8: Hình ảnh động cơ Servo SG90 14
Hình 2 9: Module cảm biến vật cản hồng ngoại 15
Hình 2 10: Module NodeMCU ESP32 DEVKIT V1 16
Hình 2 11: Hình ảnh camera 17
Hình 2 12 : Giao diện vùng làm việc của Arduino IDE 17
Hình 2 13: Giao diện của Microsoft Visual Studio 18
Hình 2 14: Hình ảnh minh họa hệ thống Firebase 22
Hình 3 1: Sơ đồ khối hệ thống 25
Hình 3 2: Sơ đồ kết nối ESP32 với 2 Servo 27
Hình 3 3: Sơ đồ kết nối nút nhấn 28
Hình 3 4: Sơ đồ kết nối cảm biến vật cản hồng ngoại 29
Hình 3 5: Sơ đồ kết nối LCD 30
Hình 3 6: Sơ đồ kết nối RC522 với Arduino 32
Hình 3 7: Lưu đồ phần mềm quản lý trên PC 34
Hình 3 8: Lưu đồ giải thuật Servo và nút nhấn 35
Hình 3 9: Lưu đồ giải thuật LCD 36
Hình 3 10: Lưu đồ giải thuật RFID Reader 37
Hình 3 11: Sơ đồ nguyên lý toàn mạch 38
Hình 4 1: Sơ đồ hệ thống nhận dạng biển số xe máy 39
Hình 4 2: Quá trình tiền xử lý 40
Hình 4 3: Nhị phân biển số 42
Hình 4 4: Chuẩn hóa và tìm ký tự 42
Hình 4 5: Thuật toán tạo mẫu ký tự 43
Hình 4 6: Thuật toán so sánh mẫu và xuất ký tự 44
Hình 5 1: Mạch in toàn hệ thống 45
Hình 5 2: Board mạch hoàn thiện 46
Hình 5 3: Mô hình bãi giữ xe 47
Hình 5 4: Giao diện đăng nhập phần mềm quản lý bãi xe 48
Hình 5 5: Giao diện kết nối Camera và Arduino 48
Hình 5 6: Giao diện SET THẺ của phần mềm quản lý bãi xe 49
Hình 5 7: Giao diện chụp hình khi biển số đúng 49
Hình 5 8: Giao diện chụp hình khi biển số sai 50
Trang 14Hình 5 9: Giao diện tình trạng bãi xe trên Realtime Database 50
Hình 5 10: Giao diện thông tin đặt chỗ được nhận và lưu trên Firebase 51
Hình 5 11: Danh sách xe đặt chỗ thành công 51
Hình 5 12: Giao diện Web booking 52
Hình 5 13: Giao diện các vị trị bãi giữ xe 52
Trang 15CHƯƠNG 1: TỔNG QUAN 1.1 Đặt vấn đề
Hiện nay đất nước ta đang trong quá trình công nghiệp hóa hiện đại hóa, cùng với
sự phát triển kinh tế xã hội của Việt Nam, lượng phương tiện giao thông như xe máy, xe
mô tô, ô tô và các phương tiện khác có xu hướng tăng cao dẫn đến các hoạt động bãi đỗ xe trở lên quá tải, khó kiểm soát hơn, gây ùn tắc giao thông là vấn đề cấp thiết cần được giải quyết Do đó bài toán đặt ra cho các bãi đỗ xe là làm thế nào để hệ thống giữ xe của mình hoạt động nhanh chóng hơn, kiểm soát ra vào và bảo mật hơn
Yêu cầu đặt ra là cần phải áp dụng các tiến bộ về khoa học kỹ thuật cho các bãi giữ
xe tiến đến tối ưu hóa tự động Các công nghệ mới tiên tiến đã ra đời như công nghệ RFID, các công nghệ điều khiển và giám sát từ xa, công nghệ IoT (Internet of Thing), xử lý ảnh
… đã và luôn được ưu tiên ứng dụng vào các hệ thống hiện đại và ứng dụng nó cho các bãi giữ xe là một thành công điển hình
Trong khi ngành công nghiệp điện tử cũng đang phát triển rất mạnh, đã và đang dần đáp ứng được nhu cầu từ tất cả các lĩnh vực công, nông, lâm, ngư nghiệp cho đến những nhu cầu trong đời sống hàng ngày Với trình độ khoa học kỹ thuật ngày càng phát triển, nhiều vấn đề từ đó đã được giải quyết nhanh gọn với công nghệ điện tử và tự động hóa Có thể thấy được ở hình thức giữ xe truyền thống đã mang lại nhiều vấn đề tồn động và cần được thay thế Ví dụ như mỗi vé giữ xe chỉ sử dụng một lần, hết lượt xe của khách ra khỏi bãi là nó trở thành rác và không thể tái sử dụng Ngoài ra, mỗi khi trời mưa vé xe dễ bị thấm nước, bị mờ số xe và nhân viên không thể nhận diện được, đôi khi khách hàng còn làm rách Ở hệ thống bãi giữ xe thông minh thì tất cả những điều
đó đều được giải quyết một cách triệt để, thẻ xe là thẻ điện từ, chống thấm nước khi trời mưa, tiện và gọn khách hàng và chủ đầu tư dễ dàng bảo quản và thời gian sử dụng của thẻ điện từ rất lâu khoảng 10 năm hoặc có thể hơn tùy vào mức độ bảo quản, mức độ an toàn cũng như an ninh được nâng cao hơn khi hạn chế được các hành vi giả mạo
Vậy nên các bãi xe truyền thống hiện nay đã không còn phù hợp với hầu hết các trung tâm thương mai, hội nghị, chung cư hay những bệnh viện lớn,vì những rắc rối mà nó mang lại như ùn tắc, mất xe, mất vé gửi xe,… Với hệ thống giữ xe bằng thẻ từ, các vấn đề gần như được giải quyết triệt để Xuất phát từ các vấn đề thiết thực đó, đề tài “Thiết kế và thi công bãi mô hình giữ xe ứng dụng RFID và xử lý ảnh” đã được nhóm chọn làm đề tài
để nghiên cứu
1.2 Tình hình nghiên cứu hiện nay
1.2.1 Tình hình nghiên cứu trong nước
Trang 16Hiện nay tình trạng bãi giữ xe dần trở nên là một vấn đề nan giải ở các thành phố lớn trong nước ta vào các dịp lễ Tết cũng như ngày thường Về vấn đề các bãi xe tự phát không đảm bảo về an ninh, chất lượng quản lý, cũng như việc tính tiền đội giá đã vấy lên nhiều vấn đề lo ngại Vì thế ta có thể thấy nhu cầu về các bãi giữ xe thông minh, an toàn là cực kì lớn
Gần đây 4 bãi giữ xe thông minh được đề xuất xây ở Sài Gòn, các bãi đậu cao tầng, lắp ghép, được đề xuất xây tại 4 vị trí khác nhau ở trung tâm TP HCM nhằm giải quyết cấp bách nhu cầu đỗ xe của người dân Trình bày với lãnh đạo UBND TP HCM chiều 29/3, một doanh nghiệp đưa ra các giải pháp tổ chức bãi giữ xe thông minh ở trung tâm thành phố Công ty này đề xuất xây bãi giữ xe thông minh cao tầng, lắp ghép, tại Công trường Lam Sơn (rộng 1.410 m2); Công viên 23/9 (4.048 m2); Công viên Lê Văn Tám (1.416 m2)
và Công viên Tao Đàn (570 m2) Khi hoàn thành, các bãi có thể giữ khoảng 500 ôtô cùng lúc Với công nghệ robot tự động xoay vòng, khi ôtô vào vị trí đậu, hệ thống tự động chuyển
xe lên vị trí cao hơn theo thứ tự Nếu chủ xe muốn lấy, hệ thống tự động đưa ôtô về vị trí ban đầu để chuyển sang trạng thái giao thông động
Cho tới thời điểm này hầu hết các trung tâm thương mại, siêu thị lớn đều đã tích hợp các bãi xe sử dụng công nghệ RFID và đạt bước thành công đột phá Tuy nhiên vấn
đề kết hợp công nghệ IoT và xử lý ảnh vào bãi xe vẫn còn đang là một hướng nghiên cứu mới khi Internet vạn vật đang dần thâm nhập vào hầu hết các quy trình công nghệ
1.2.2 Tình hình nghiên cứu ngoài nước
Ngày nay trên các nước tiên tiến trên thế giới như Nhật Bản, Hàn Quốc ở những thành phố chật hẹp, người ta xây dựng hệ thống bãi giữ xe ô tô tự động được trang bị thiết
bị nâng để di chuyển ô tô từ mặt đất lên điểm đỗ trên cao (hệ thống nổi hoặc di chuyển xe xuống điểm đỗ dưới lòng đất (hệ thống ngầm) Đây là những giải pháp giúp tăng hơn 100 lần số lượng xe trên một diện tích truyền thống, cho phép giải quyết trình trạng thiếu mặt bằng xây dựng
Ở các nước phát triển các công nghệ mới như RFID và IoT, xử lý ảnh đã và đang được ứng dụng rộng rãi trong hầu hết các lĩnh vực Việc ứng dụng các công nghệ mới đã góp phần phát triển kinh tế và bảo vệ môi trường Nạn kẹt xe hay thiếu chỗ và vấn đề về bảo mật, an ninh, sự không hài lòng về chất lượng quản lý ở các bãi giữ xe đã không còn nữa vì các bãi giữ xe truyền thống đã dần biến mất
1.3 Tính cấp thiết của đề tài
Như vấn đề đã đặt ra thì nhu cầu sử dụng bãi xe hiện nay ở thị trường Việt Nam rất cao và thậm chí là đã lên đến đỉnh điểm Nắm bắt được điểm yếu đó trên thị trường nên nhiều công ty về công nghệ đã không ngừng phát triển các hệ thống bãi xe
Trang 17Để khắc phục những vấn đề đó thì đề tài này phần nào góp phần giải quyết được nhu cầu về bãi xe, tích hợp được công nghệ RFID vào để cải thiện tính hiệu quả
và linh hoạt trong các hệ thống hiện có
1.4 Mục tiêu của đề tài
Mục tiêu của nhóm khi thực hiện đề tài này là thiết kế và thi công được một hệ thống bãi giữ xe gồm mô hình một bãi giữ xe ứng dụng RFID và xử lý ảnh với phần mềm quản
lý phương tiện ra vào trên máy tính, ứng dụng công nghệ RFID và xử lý ảnh để nhận dạng biển số
1.5 Đối tượng nghiên cứu
Để thực hiện các mục tiêu mà đề tài đã đặt ra, nhóm chúng em đã tìm hiểu các tài liệu, thông tin về ngôn ngữ lập trình web C, C++… Hiểu được các nguyên lý hoạt động
và mạch ứng dụng vi điều khiển Arduino UNO R3 Ngoài ra, nhóm còn tham khảo các thông tin cũng như nguyên lý hoạt động của các module sử dụng trong đề tài: cảm biến vật cản hồng ngoại, camera, module LCD 16x2 I2C, servo sg90 và module RFID RC522, module ESP32, chuông báo
1.6 Phạm vi nghiên cứu
Sau khi trao đổi thảo luận và tìm kiếm các thông tin nhóm em đã có thể giao tiếp và điều khiển các thiết bị sử dụng trong đề tài, truyền nhận dữ liệu giữa phần mềm quản lý web và phần cứng, giữa hai Arduino với nhau thông qua giao thức UART Nhóm em còn tính toán, lựa chọn thiết bị có thông số sao cho phù hợp với mục tiêu mà nhóm đã đề ra ngay từ ban đầu
1.7 Nhiệm vụ của đề tài
Nhằm tiết kiệm được chi phí và tạo được sự tiện lợi cho mọi người cũng như sức lực đề tài của nhóm đã đáp ứng được những nhiệm vụ sau:
Tiết kiệm thời gian và chi phí
Không gây hư hai cho phương tiện cho người dân
Trang 18 Hệ thống điều khiển các thiết bị hoạt động một cách ổn định
Hiển thị được vị trí còn trống hay đã có xe
Cập nhật được dữ liệu lên excel như thời gian vào/ra, biển số xe…
1.8 Phương pháp nghiên cứu
Để giải quyết vấn đề nhóm thực hiện phương pháp nghiên cứu như sau:
sau này cách tốt nhất
những đề tài liên quan
- Tìm kiếm thông tin từ sách, tạp chí về khoa học điện tử, tham khảo từ nguồn Internet
1.9 Bố cục đồ án
Chương 1: Tổng quan: Trong chương này, nhóm trình bày tổng quan về tình hình
nghiên cứu về các công nghệ hiện nay Mục tiêu, đối tượng và mục tiêu nghiên cứu của đề tài
Chương 2: Cơ sở lý thuyết: Trong chương này, nhóm sẽ giới thiệu sơ lược về các
linh kiện nhóm đã sử dụng bao gồm module Arduino UNO R3, module cảm biến vật cản hồng ngoại, camera, module LCD 16x2 I2C, servo sg90 và module RFID RC522, module ESP32, chuông báo
Chương 3: Thiết kế và thi công: Trong chương này, nhóm sẽ đưa ra các yêu cầu khi
thiết kế, các thiết kế về phần cứng và phần mềm
Chương 4: Hệ thống nhận dạng biển số xe: Trong chương này, nhóm trình bày sơ
bộ về hệ thống, nguyên lý hoạt động và giải thích hoạt động của hệ thống Trình bày các thuật toán nhận dạng biển số xe
Chương 5: Kết quả thi công: Trong chương này, nhóm sẽ đưa ra kết quả mà đạt
được, video, hình ảnh hệ thống sau khi thi công
Chương 6: Kết luận và hướng phát triển: Trong chương này, nhóm sẽ đưa ra kết
luận, những hạn chế và hướng phát triển của đề tài
Trang 19CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2.1 Tổng quan về các chuẩn truyền
2.1.1 Chuẩn giao tiếp UART
UART (Universal Asynchronous Receiver-Transmitter – Bộ truyền nhận dữ liệu nối tiếp bất đồng bộ) là một trong những giao thức truyền thông giữa thiết bị với thiết bị được
sử dụng nhiều nhất Bạn có thể thấy giao tiếp UART được sử dụng nhiều trong các ứng dụng để giao tiếp với các module như: Wifi, Bluetooth, Xbee, module đầu đọc thẻ RFID với Raspberry Pi, Arduino hoặc vi điều khiển khác
Trong giao tiếp UART, hai UART giao tiếp trực tiếp với nhau UART truyền chuyển đổi dữ liệu song song từ một thiết bị điều khiển như CPU thành dạng nối tiếp, truyền nó nối tiếp đến UART nhận, sau đó chuyển đổi dữ liệu nối tiếp trở lại thành dữ liệu song song cho thiết bị nhận
Hai đường dây mà mỗi thiết bị UART sử dụng để truyền dữ liệu đó là:
ngược lại Thông thường, quá trình truyền sẽ diễn ra ở 3.3V hoặc 5V UART là một giao thức một master, một slave, trong đó một thiết bị được thiết lập để giao tiếp với duy nhất một thiết bị khác
và truyền đến thiết bị nhận
song để giao tiếp với thiết bị điều khiển của nó
Hình 2 1: Hình ảnh minh họa chuẩn giao tiếp UART
Trang 20+ Full duplex: Giao tiếp đồng thời đến và đi từ mỗi master và slave
+ Half duplex: Dữ liệu đi theo một hướng tại một thời điểm
+ Simplex: Chỉ giao tiếp một chiều
Ưu điểm của chuẩn giao tiếp UART
+ Chỉ sử dụng hai dây để truyền dữ liệu
+ Không cần tín hiệu đồng hồ
+ Có một bit chẵn lẻ để cho phép kiểm tra lỗi
+ Cấu trúc của gói dữ liệu có thể được thay đổi miễn là cả hai bên được thiết lập cho nó
+ Phương pháp truyền đơn giản, giá thành thấp
Nhược điểm của chuẩn giao tiếp UART
+ Kích thước của khung dữ liệu được giới hạn tối đa là 9 bit
+ Không phù hợp với các hệ thống đòi hỏi nhiều thiết bị Master và Slave
+ Tốc độ truyền của mỗi UART phải nằm trong khoảng 10%
2.1.2 Chuẩn giao tiếp I2C
I2C là tên viết tắt của cụm từ tiếng anh “Inter-Integrated Circuit” Nó là một giao thức giao tiếp được phát triển bởi Philips Semiconductors để truyền dữ liệu giữa một bộ
xử lý trung tâm với nhiều IC trên cùng một board mạch chỉ sử dụng hai đường truyền tín hiệu
Đây là một loại giao thức giao tiếp nối tiếp đồng bộ Nó có nghĩa là các bit dữ liệu được truyền từng bit một theo các khoảng thời gian đều đặn được thiết lập bởi một tín hiệu đồng hồ tham chiếu
Giống như giao tiếp UART, I2C chỉ sử dụng hai dây để truyền dữ liệu giữa các thiết bị:
Hình 2 2: Hình ảnh minh họa giáo tiếp I2C
Trang 21Đặc điểm của chuẩn giao tiếp I2C
Chỉ cần có hai đường buýt (dây) chung để điều khiển bất kỳ thiết bị / IC nào trên mạng I2C
Không cần thỏa thuận trước về tốc độ truyền dữ liệu như trong giao tiếp UART Vì vậy, tốc độ truyền dữ liệu có thể được điều chỉnh bất cứ khi nào cần thiết Cơ chế đơn giản
để xác thực dữ liệu được truyền
Sử dụng hệ thống địa chỉ 7 bit để xác định một thiết bị / IC cụ thể trên buýt I2C Các mạng I2C dễ dàng mở rộng Các thiết bị mới có thể được kết nối đơn giản với hai đường buýt chung I2C
Ưu điểm của chuẩn giao tiếp I2C
+ Chỉ sử dụng 2 dây
+ Hỗ trợ nhiều Master va nhiều Slave
+ Bit ACK/NACK xác nhận mỗi khung được chuyển thành công
+ Phần cứng ít phức tạp
+ Giao thức được sử dụng rộng rãi
Nhược điểm của chuẩn giao tiếp I2C
+ Tốc độ truyền dữ liệu chậm hơn SPI
+ Kích thước của dữ liệu bị giới hạn 8 bit
+ Cần phần cứng phức tạp hơn để triển khai so với SPI
2.1.3 Chuẩn giao tiếp SPI
Giao tiếp ngoại vi nối tiếp hoặc SPI (Serial Peripheral Interface) là một chuẩn đồng
bộ nối tiếp để truyền dữ liệu ở chế độ song công toàn phần (full – duplex) tức trong cùng một thời điểm có thể xảy ra đồng thời quá trình truyền và nhận
Trang 22Ưu điểm của chuẩn giao tiếp SPI
+ Không có Start bit và Stop bit như trong giao tiếp I2C và giao tiếp UART Vì vậy dữ liệu có thể được truyền liên tục mà không bị gián đoạn
+ Không có hệ thống định địa chỉ slave phức tạp như I2C
+ Tốc độ truyền dữ liệu cao hơn I2C (nhanh gần gấp đôi)
+ Các dòng MISO và MOSI riêng biệt, vì vậy dữ liệu có thể được gửi và nhận cùng một lúc
Nhược điểm của chuẩn giao tiếp SPI
+ Sử dụng 4 dây trong khi UART và I2C chỉ sử dụng hai dây
+ Không xác nhận được là dữ liệu đã được nhận thành công
+ Không có hình thức kiểm tra lỗi chẵn lẻ
+ Chỉ cho phép duy nhất một thiết bị Master
2.2 Tổng quan về công nghệ RFID
Công nghệ RFID là một trong những công nghệ nhận dạng dữ liệu tự động tiên tiến nhất hiện nay có tính khả thi cao và áp dụng trong thực tế rất hiệu quả RFID đang hiện diện trong rất nhiều lĩnh vực tự động hóa, rất nhiều ứng dụng quản lý và các mô hình tổ chức khác nhau nhằm đem lại những giải pháp nhận dạng dữ liệu tự động tối ưu và hiệu quả hơn
Công nghệ RFID cho phép một thiết bị đọc thông tin chứa trong chip không tiếp xúc trực tiếp ở khoảng cách xa, không thực hiện bất kỳ giao tiếp vật lý nào hoặc giữa hai
Hình 2 3: Hình ảnh giao tiếp SPI
Trang 23vật không nhìn thấy Công nghệ này cho ta phương pháp truyền, nhận dữ liệu từ một điểm đến điểm khác
Đặc điểm của hệ thống công nghệ RFID
RFID có khả năng nhận biết các đối tượng theo dõi thông qua một hệ thống thu phát sóng radio Từ đó, người quản lý có thể giám sát, theo dõi và lưu lại dữ liệu của từng đối tượng bạn đang theo dõi RFID là một phương pháp nhận diện tự động và chuẩn xác dựa trên những dữ liệu đã được lưu trữ lại từ xa Từ đó, hệ thống RFID có được một số đặc điểm như sau:
- Đặc điểm đầu tiên của RFID phải kể đến chính là việc sử dụng hệ thống thiết bị không dây để thu phát sóng radio, không cần đến các đường kẻ vạch sáng giống mã vạch để
- Ngoài ra, RFID còn có thể hiển thị, đọc được các thông tin xuyên qua các môi trường,
kể cả những môi trường khó nhất như bê tông, tuyết rơi, băng giá, sương mù,… Có thể nói, hệ thống RFID đã có những bước cải tiến đột phá, vượt xa các công nghệ tiên tiến khác hiện nay để có thể phát huy tốt hiệu quả tuyệt đối
Công nghệ RFID hoạt động theo nguyên lý khá đơn giản: Đầu đọc RFID được đặt
cố định ở một vị trí và phát ra sóng vô tuyến điện ở một tần số nhất định để phát hiện thiết
bị phát xung quanh đó
Khi RFID phát đi vào vùng sóng vô tuyến điện mà đầu đọc RFID phát ra, nó sẽ nhận sóng điện tử, thu nhận và phát lại cho đầu đọc về mã số của mình Nhờ vậy mà đầu đọc RFID biết được thiết bị RFID phát nào đang nằm trong vùng hoạt động
Ưu điểm của công nghệ RFID
- Dung lượng thông tin thẻ lớn, tuổi thọ lâu dài, có thể sử dụng được nhiều lần
Trang 24Nhược điểm của công nghệ RFID
- Chi phí phát triển cao
2.3 Giới thiệu phần cứng
2.3.1 Giới thiệu KIT Arduino UNO R3
Arduino Uno là dòng mạch Arduino phổ biến tích hợp vi điều khiển ATmega328P (8bits), với khả năng lập trình cho các ứng dụng điều khiển phức tạp do được trang bị cấu hình mạnh cho các loại bộ nhớ ROM, RAM và Flash, các ngõ vào ra digital I/O trong đó
có nhiều ngõ có khả năng xuất tín hiệu PWM, các ngõ đọc tín hiệu analog và các chuẩn giao tiếp đa dạng như UART, SPI, I2C
Bảng 2 1: Thông số kỹ thuật của Arduino UNO
Hình 2 4: Hình ảnh thực tế Board mạch Arduino UNO R3
Trang 25Bảng 2 2: Thông số kỹ thuật của RFID RC522
Hình 2 5: Hình ảnh thực tế Module RFID RC522
Trang 26nếu là chip Slave thì MISO lại là Output MISO của Master và các Slaves được nối trực tiếp với nhau
nếu là chip Slave thì MOSI là Input MOSI của Master và các Slaves được nối trực tiếp với nhau
Hình 2 6: Hình ảnh thực tế màn hình LCD 16x2
Trang 27Bảng 2 3: Chức năng các chân của LCD 16x2
GND của mạch điều khiển
với VCC=5V của mạch điều khiển
+ Logic “1”: Bus DB0-DB7 sẽ nối với thanh ghi dữ liệu DR bên trong LCD
+ Ở chế độ ghi: Dữ liệu ở bus sẽ được LCD chuyển vào(chấp nhận) thanh ghi bên trong nó khi phát hiện một xung (high-to-low transition) của tín hiệu chân E
+ Ở chế độ đọc: Dữ liệu sẽ được LCD xuất ra DB0-DB7 khi phát hiện cạnh lên (low-to-high transition) ở chân E và được LCD giữ ở bus đến khi nào chân E xuống mức thấp
Trang 28Thông thường để sử dụng màn hình LCD, chúng ta sẽ mất khá nhiều chân trên Arduino, ngoài ra thì việc sử dụng quá nhiều dây kết nối dễ khiến mô hình trở nên rối và khó xử lý khi có trục trặc xảy ra Với module LCD I2C, chỉ cần sử dụng 4 chân, trong đó
2 chân cấp nguồn, 2 chân SDA và SCL để giao tiếp với Arduino và đưa thông tin hiển thị
ra màn hình LCD
Hoạt động I2C:
I2C chỉ sử dụng hai dây: SCL (đồng hồ nối tiếp) và SDA (dữ liệu nối tiếp) Cả hai cần được kéo lên với một điện trở để + Vdd Ngoài ra còn có bộ chuyển mức I2C có thể được sử dụng để kết nối với hai bus I2C có điện áp khác nhau
Hầu hết các thiết bị I2C đều hỗ trợ điều kiện khởi động lặp lại Điều này có nghĩa
là trước khi giao tiếp kết thúc với điều kiện dừng, thiết bị chính có thể lặp lại điều kiện bắt đầu với byte địa chỉ và thay đổi chế độ từ ghi sang đọc
2.3.4 Động cơ Servo SG90
Servo là một dạng động cơ điện đặc biệt Không giống như động cơ thông thường
là quay liên tục, servo chỉ quay khi được điều khiển (bằng xung PPM), với góc quay nằm trong khoảng bất kì từ 0o - 180o
Thông số kỹ thuật của động cơ:
Momen xoắn: 1.8kg/cm
Tốc độ hoạt động: 60 độ trong 0.1 giây
Hình 2 8: Hình ảnh động cơ Servo SG90 Hình 2 7: Module chuyển đổi I2C
Trang 29Bảng 2 4: Thông số kỹ thuật Module cảm biến hồng ngoại
2.3.6 Module NodeMCU ESP32 DEVKIT V1
Hình 2 9: Module cảm biến vật cản hồng ngoại
Trang 30Module NodeMCU ESP32 DEVKIT V1 là một trong những bo mạch phát triển được tạo bởi NodeMCU để đánh giá module ESP-WROOM-32 Nó rất phổ biến trong lĩnh vực IoT
Cốt lõi của module này là chip ESP32 những được mở rộng hơn Module có 2 CPU
có thể được điều khiển riêng hoặc cấp nguồn và tần số clock có thể điều chỉnh từ 80 MHz đến 240 MHz Ngoài ra nó còn có các chuẩn giao tiếp như: SPI, UART, I2C,… và 25 GPIO,
có thể đáp ứng nhu cầu học tập, làm các dự án vừa và nhỏ
Bảng 2 5: Thông số kỹ thuật Module NodeMCU ESP32 DEVKIT V1
Trang 31Ngôn ngữ lập trình có thể mở rộng thông qua các thư viện C/C++ Và do ngôn ngữ lập trình này dựa trên nền tảng ngôn ngữ C của AVR nên người dùng hoàn toàn có thể nhúng thêm code viết bằng AVR C vào chương trình nếu muốn
Hình 2 12 : Giao diện vùng làm việc của Arduino IDE
Arduino IDE có nhiều tính năng thông minh, có thể thao tác dễ dàng và linh hoạt,
Hình 2 11: Hình ảnh camera
Trang 32giao diện thân thiện với người dùng
Arduino
- Vùng 2: là vị trí của các cửa sổ chức năng, cho phép quản lý các thư viện hoặc board, quản lý các chương trình, compile project và verify project dùng để nạp và kiểm tra các đoạn mã code trong trình soạn thảo
trình
- Vùng 4: cửa sổ Serial Hiển thị các thông số kết quả được yêu cầu hiển thị ra để tương tác với người viết chương trình
2.4.2 Phần mềm lập trình Microsoft Visual Studio
Microsoft Visual Studio là một trong những công cụ hỗ trợ lập trình website rất nổi
tiếng nhất hiện nay của Mcrosoft Visual Studio được viết bằng 2 ngôn ngữ đó chính là C#
và VB+ Đây vốn là hai ngôn ngữ lập trình cho phép người dùng xây dựng hệ thống website
dễ dàng và nhanh chóng nhất
Visual Studio được giới lập trình ưa chuộng như vậy là bởi những ưu điểm:
CSS,…
Hình 2 13: Giao diện của Microsoft Visual Studio
Trang 33trình
xem giá trị của biến trong quá trình khởi chạy
và trên các ứng dụng khác nhau
có thể lựa chọn phiên bản phù hợp với mục đích sử dụng của mình
2.5 Tổng quan ngôn ngữ lập trình Web
2.5.1 Ngôn ngữ HTML
HTML viết tắt của Hypertext Markup Language là ngôn ngữ lập trình dùng để xây dựng và cấu trúc lại các thành phần có trong Website HTML tạm dịch là ngôn ngữ đánh dấu siêu văn bản Người ta thường sử dụng HTML trong việc phân chia các đoạn văn, heading, links, blockquotes …
Đặc biệt, HTML có thể hiển thị trên bất kỳ nền tảng nào khác như Linux, Windows,
và Max vì nó là một nền tảng độc lập
Ưu điểm của HTML
HTML được sử dụng để tạo bố cục, cấu trúc trang web Nó có một số ưu điểm sau: + Có nhiều tài nguyên hỗ trợ với cộng đồng người dùng vô cùng lớn
+ Có thể hoạt động mượt mà trên hầu hết mọi trình duyệt hiện nay
+ Học HTML khá đơn giản
+ Các markup sử dụng trong HTML thường ngắn gọn, có độ đồng nhất cao + Sử dụng mã nguồn mở, hoàn toàn miễn phí
+ HTML là chuẩn web được vận hành bởi W3C
+ Dễ dàng để tích hợp với các loại ngôn ngữ backend (ví dụ như: PHP, Node.js,…)
Trang 34 Nhược điểm của HTML
Bên cạnh ưu điểm, HTML cũng có các nhược điểm nhất định Cụ thể như sau: + Chỉ được áp dụng chủ yếu cho web tĩnh Nếu muốn tạo các tính năng động, lập trình viên phải dùng thêm JavaScript hoặc ngôn ngữ backend của bên thứ 3 (ví
sử dụng các tag này thì trình duyệt cũng không đọc được)
+ Một vài trình duyệt còn chậm cập nhật để hỗ trợ tính năng mới của HTML
2.5.2 Ngôn ngữ CSS
CSS là viết tắt của Cascading Style Sheets, nó là một ngôn ngữ được sử dụng để tìm
và định dạng lại các phần tử được tạo ra bởi các ngôn ngữ đánh dấu HTML CSS là ngôn ngữ tạo phong cách cho các phần tử của trang web HTML có vai trò định dạng các phần
tử trên website như tạo các đoạn văn bản, tiêu đề, bảng,…còn CSS sẽ giúp thêm vào các phần tử HTML đó như cân đổi bố cục, màu sắc trang, đổi màu chữ, font chữ, thay đổi cấu trúc…
CSS sẽ tìm dựa vào các vùng chọn mà người lập trình, vùng chọn có thể là tên một thẻ HTML, tên một ID, class hay nhiều kiểu khác Sau đó là nó tiến hành áp dụng các thuộc tính cần thay đổi lên vùng chọn đó
HTML và CSS có quan hệ với nhau rất mật thiết HTML là ngôn ngữ markup (nền tảng của site) và CSS định hình phong cách (tạo nên giao diện website), chúng là không thể tách rời
2.5.3 Ngôn ngữ JavaScript
Javascript là một ngôn ngữ lập trình website, được tích hợp và nhúng trong HTML
và giúp cho website trở nên sống động hơn Đây là dạng ngôn ngữ theo kịch bản, được hình thành dựa trên chính đối tượng phát triển có sẵn hoặc đơn giản là tự định nghĩa ra Javascript cho phép bạn kiểm soát các hành vi của trang web tốt hơn so với việc chỉ sử dụng mỗi HTML Có thể kể đến một vài ứng dụng thực tiễn cực kỳ quen thuộc của Javascript như slideshow, pop-up quảng cáo hay tính năng autocomplete của Google,… chúng đều được viết bằng ngôn ngữ Javascript
Ưu điểm của JavaScript
+ Khách hàng có thể dễ dàng sử dụng Javascript
Trang 35+ Ngôn ngữ lập trình thông dụng, phổ biến
+ Độ nhanh chóng với người dùng cuối
+ Mang tới tính năng bổ sung cho các website
+ Ứng dụng đa dạng trên nhiều trình duyệt khác nhau
lý nhất
+ Ngôn ngữ lập trình Javascript dễ bị khai thác: điều này đồng nghĩa với việc bảo mật cho ngôn ngữ này không được đánh giá cao Bởi vậy, trong quá trình sử dụng người dùng cần lưu ý những nguy cơ để chủ động xử lý khi có vấn đề xảy
ra
+ Với Javascript, chúng ta có thể sử dụng để thực thi mã độc trên máy tính của người dùng nên có thể gây những ảnh hưởng hay thiệt hại không nhỏ tới công việc mà chúng ta đang thực hiện
+ Javascript có thể không sử dụng được với một số trình duyệt cụ thể trong một
số trường hợp nhất định Điều này gây bất lợi cho một số người dùng khi không thể sử dụng ngôn ngữ này khi cần thiết
+ Javascript sở hữu code snippets khá lớn nên có thể khó khăn trong quá trình sử dụng
2.6 Tổng quan cơ sở dữ liệu
2.6.1 SQL Server Management Studio
SQL Server Management Studio gọi tắt là SSMS là một ứng dụng phần mềm thiết
kế bởi Microsoft, ra mắt lần đầu năm 2005 Ứng dụng này cho phép lập trình viên cấu hình, quản lý và quản trị bộ máy cơ sở dữ liệu (database engine) SQL Server
SQL Server có khả năng cung cấp đầy đủ các công cụ cho việc quản lý từ giao diện GUI đến sử dụng ngôn ngữ cho việc truy vấn SQL Điểm mạnh của SQL điểm mạnh của
nó là có nhiều nền tảng được kết hợp cùng như: ASP.NET, C# để xây dựng Winform cũng chính nó có khả năng hoạt động độc lập Tuy nhiên, SQL Server thường đi kèm với việc thực hiện riêng các ngôn ngữ SQL, T-SQL,
2.6.2 Firebase
Trang 36Firebase chính là một dịch vụ cơ sở dữ liệu được hoạt động ở trên nền tảng đám mây (Cloud) Đi kèm với đó là một hệ thống máy chủ mạnh mẽ của Google Hệ thống có chức năng chính là giúp cho người dùng có thể lập trình ứng dụng thông qua cách đơn giản hóa những thao tác với các cơ sở dữ liệu
Cụ thể là những giao diện lập trình ứng dụng API đơn giản mà không cần backend
Đặc biệt, còn là dịch vụ đa năng và bảo mật cực tốt Firebase hỗ trợ cả hai nền tảng Android và IOS Không có gì khó hiểu khi nhiều lập trình viên chọn Firebase làm nền tảng đầu tiên để xây dựng ứng dụng cho hàng triệu người dùng trên toàn thế giới
2.7 Tổng quan về thư viện xử lý ảnh
Ngày nay có rất nhiều thư viện hỗ trợ xử lý hình ảnh trên nền tảng các ngôn ngữ phổ biến Visual C++, C#,… như là OpenCV, EmguCV
OpenCV(Open Source Computer Vision) là thư viện hỗ trợ người làm việc xử lý các hình ảnh trên nền tảng ngôn ngữ C++, C, Java, Python, Windows,Linux,… Được viết tối ưu hóa C/C++
EmguCV là một cross flatform NET, một thư viện xử lý hình ảnh mạnh dành riêng cho ngôn ngữ C# Thích hợp các ngôn ngữ như C#, Python,VB,…Warpper có thể được dịch bởi Visual Studio, Xamarin Studio và Unity
Theo như nhóm nghiên cứu và tìm hiểu được thì EmguCv có một số lợi thế như sau:
EmguCV được viết hoàn toàn bằng C# Có thể chạy trên bất kỳ nền tảng hỗ trợ bao gồm iOS, Android, Windows Phone, Hệ điều hành Mac OS X và Linux
Hình 2 14: Hình ảnh minh họa hệ thống Firebase
Trang 37 Hỗ trợ tài liệu XML và intellisense
Sự lựa chọn để sử dụng hình ảnh lớp hoặc trực tiếp gọi chức năng từ OpenCV Trong đề tài này, nhóm đã xây dựng phần mềm quản lý cũng như điều khiển hoàn toàn trên ngôn ngữ C#, để sử dụng được OpenCV thì nhóm cần phải tốn khá nhiều thời gian để tạo Warpper kết nối giao tiếp giữa ngôn ngữ C++ của OpenCV với C# trong khi
đó sử dụng thư viện EmguCV thì hoàn toàn không cần thiết
Chính vì thế bộ thư viện EmguCV đã được nhóm lựa chọn để nghiên cứu và sử dụng
cho đề tài này
2.8 Tổng quan về thuật toán xử lý nhận diện ảnh
2.8.1 Thuật toán OCR
OCR là thuật toán nhận dạng ký tự bằng quang học được tạo ra để chuyển các hình ảnh của chữ viết tay hoặc chữ đánh máy (thường được quét bằng máy scanner) thành các văn bản tài liệu
Nhận dạng ký tự quang học (dùng các kỹ thuật quang học chẳng hạn như gương và ống kính) và nhận dạng ký tự số (sử dụng máy quét và các thuật toán máy tính) lúc đầu được xem xét như hai lĩnh vực khác nhau Bởi vì chỉ có rất ít các ứng dụng tồn tại với các
kỹ thuật quang học thực sự, bởi vậy thuật ngữ Nhận dạng ký tự quang học được mở rộng
và bao gồm luôn ý nghĩa nhận dạng ký tự số
Một số hạn chế của OCR nhóm đã tìm hiểu đươc:
Hầu hết các phần mềm sử dụng OCR chỉ nhận dạng được khoảng 80 - 90% trên hình ảnh rõ nét
Đối với những hình ảnh có màu nền mà màu chữ không có nhiều chênh lệch, hay các hình chụp chữ viết tay thì kết quả nhận dạng không khả quan cho lắm
Đến thời điểm hiện tại thì OCR chưa hỗ trợ tất cả các ngôn ngữ
2.8.2 Thuật toán Canny
Biên là vấn đề quan trọng trong trích chọn đặc điểm nhằm tìm hiểu ảnh Cho đến nay thì chưa có định nghĩa chính xác về biên, trong mỗi ứng dụng người ta đưa ra các độ
đo khác nhau về biên, một trong số các độ đo đó là sự thay đổi đột ngột về cấp xám Tập hơp các điểm biên tạo nên biên hay đường bao của đối tượng Người ta đưa ra 2 phương pháp phát hiện biên cơ bản:
Trang 381 Phát hiện trực tiếp: là phương pháp phát hiện biên dựa vào sự thay đổi của mức xám sử dụng các kỹ thuật thay đổi theo hướng
2 Phát hiện gián tiếp
Kỹ thuật phát hiện biên bằng phương pháp Canny là phương pháp dò biên trực tiếp rất hiệu quả áp dụng cho các loại ảnh nhiễu
Canny đưa ra ba điểm chính mà một phương pháp phát hiện biên phải xác định được
3 Tạo một mặt nạ cho đạo hàm bậc nhất của Gassian theo hướng x, y và gọi là
Gx, Gy và giá trị vẫn được giữ như ở bước 2
4 Nhân xoắn ảnh I cùng với G dọc theo các hàng tạo ảnh thành phần x gọi là
Ix và theo các cột tạo ra ảnh Iy
5 Nhân xoắn Ix với Gx để sinh ra I'x: thành phần x của I được nhân xoắn với đạo hàm của Gaussian, và nhân xoắn Iy với Gy để tạo ra I'y
Trang 39CHƯƠNG 3: THIẾT KẾ VÀ XÂY DỰNG HỆ THỐNG 3.1 Giới thiệu
Trong chương này, nhóm trình bày về sơ đồ khối, các tính toán, lựa chọn nguồn cho
hệ thống, giải thích chức năng hoạt động cho từng khối sơ đồ nguyên lý của các mạch trong hệ thống
3.2 Yêu cầu hệ thống
Nhằm thiết kế một hệ thống bãi giữ xe thông mình, an toàn, dễ sử dụng Hệ thống
có các tính năng như sau:
Phần mềm quản lý bãi xe trên PC có chức năng quản lý xe ra/vào sử dụng camera kết hợp với công nghệ RFID và nhận diện biển số xe
Đóng mở Barrier cho xe ra/v khi mã thẻ RFID chính xác
Cho phép điều chỉnh được số lượng thẻ sử dụng qua phẩn mềm
Cho phép đặt chỗ trước trên Web
Hiển thị tình trạng hoạt động của bãi xe
3.3 Sơ đồ khối hệ thống
KHỐI NGUỒN
KHỐI CẢM BIẾN VẬT CẢN
KHỐI ĐỘNG CƠ
KHỐI NÚT NHẤN
KHỐI HIỂN THỊ
PC
KHỐI DATABASE
CAMERA
Hình 3 1: Sơ đồ khối hệ thống
Trang 40Chức năng từng khối:
Khối xử lý và điều khiển (chính): Khối có chức năng nhận dữ liệu từ khối
RFID
Khối xử lý và điều khiển (phụ): Khối có chức năng thu tập thông tin từ các
cảm biến, camera gửi về khối xử lý và điều khiển trung tâm và nhận tín hiệu điều khiển từ khối xử lý trung tâm để điều khiển các thiết bị
Khối RFID: Đọc tín hiệu từ thẻ Tag của xe ra/vào gửi về cho vi điều khiển
Khối động cơ Servo: Điều khiển Servo đóng mở để điều khiển xe ra/vào
Khối cảm biến vật cản: Xác định và tính toán số lượng xe ra/vào
Khối hiển thị: Hiển thị thông tin trạng thái hoạt động bãi giữ xe gồm tổng số ô
đạu xe và số ô còn trống
Khối nút nhấn: Điều khiển servo đóng/mở
Khối nguồn: Cung cấp nguồn cho toàn mạch của hệ thống
Khối camera: chụp lại biển số xe kết hợp với xử lý ảnh để tách biển sô thành
dạng text và lưu vào thẻ tag
PC: phần mềm trên PC có chức năng kết hợp với camera để giám sát xe ra vào,
cùng đó là kết hợp với khối xử lý trung tâm để quản lý hệ thống
Khối cơ sở dữ liệu: có chức năng lữu trữ thông tin ngày giờ, mã thẻ biển số…
của xe ra/vào
Hoạt động của hệ thống
sẽ chụp ảnh và gửi về máy tính để nhận dạng biển số Các thông tin (biển số, mã thẻ, thời gian gửi) được lưu vào một cơ sở dữ liệu của hệ thống và hệ thống sẽ mở servo
để xe chạy vào Sau khi xe chạy vào thì hạ servo xuống và cảm biến thu phát hồng ngoại phát hiện để thông báo tình trạng bãi giữ xe hiện tại lên màn hình
mã ID của thẻ mà so sánh, nếu đúng với biển số xe ban đầu thì cho xe ra (có thể mở rộng thêm tính thời gian để thu tiền gửi xe) và servo tự động mở cho xe chạy ra còn nếu không trùng khớp hệ thống sẽ thông báo không đúng biển số
thực hiện Như vậy, hành khách muốn lấy xe buộc phải chứng minh xe mình được gửi trong bãi xe bằng các giấy tờ thùy thân Nhân viên kiểm tra giấy tờ của khách, kiểm tra biển số xe có tồn tại trong hệ thống cơ sở dữ liệu không nếu đúng thì nhân viên trong bãi sẽ nhấn nút nhấn để mở barrier cho xe đi ra
3.4 Tính toán và thiết kế phần cứng
Theo sơ đồ khối ta sẽ thiết kế phần cứng bao gồm: