TỔNG QUAN
ĐẶT VẤN ĐỀ
Cuộc cách mạng công nghiệp 4.0 đang thúc đẩy sự phát triển mạnh mẽ của công nghệ nhận dạng kí tự quang học (OCR), một công nghệ không còn mới nhưng ngày càng được ứng dụng rộng rãi trong đời sống Công nghệ này giúp giảm thiểu giấy tờ lưu trữ, tối ưu hóa chi phí cho doanh nghiệp, và được sử dụng trong các phần mềm giám sát giao thông, hỗ trợ người già và người khiếm thị, cũng như trong việc nhập liệu và xử lý hóa đơn Sự tiến bộ của công nghệ đã nâng cao độ chính xác của OCR, cho phép nhận diện hầu hết các phông chữ phổ biến và tái tạo định dạng tài liệu gần giống bản gốc, bao gồm hình ảnh và bảng biểu.
Nhiều nghiên cứu trước đây đã tập trung vào các ứng dụng công nghệ nhận dạng ký tự quang học (OCR), trong đó có đề tài "Ứng dụng công nghệ OCR điều khiển Led".
Bài viết trình bày về việc sử dụng ESP8266 kết hợp với ứng dụng Android và cơ sở dữ liệu thời gian thực Firebase để truyền nhận dữ liệu và xử lý chức năng theo 7 màu sáng theo màu mong muốn.
Nhóm em đã quyết định thực hiện đề tài “Thiết kế và thi công mô hình xe trò chơi trẻ em ứng dụng công nghệ OCR” với hệ thống sử dụng vi điều khiển Arduino Uno R3, cảm biến hồng ngoại TCRT5000L, module L298N, động cơ DC giảm tốc, và một điện thoại thông minh Android làm camera cho xe cùng module Bluetooth HC-06 Người dùng có thể tự do thay đổi vị trí các biển báo trên mô hình, cũng như các lệnh và dữ liệu nhận sẽ được gửi về Arduino thông qua ứng dụng cài đặt trên điện thoại Android.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 2
MỤC TIÊU
Mô hình xe trò chơi trẻ em được thiết kế và thi công bằng công nghệ OCR, mang đến sự sáng tạo và hấp dẫn hơn cho các bé.
NỘI DUNG NGHIÊN CỨU
- NỘI DUNG 1: Tìm hiểu nguyên lý hoạt động của thanh 5 cảm biến hồng ngoại TCRT5000L
- NỘI DUNG 2: Tìm hiểu các chuẩn truyền thông USART, SPI
- NỘI DUNG 3: Tìm hiểu và giao tiếp đƣợc thanh 5 cảm biến hồng ngoại
TCRT5000L, module điều khiển động cơ L298N, module Bluetooth HC - 06 với Arduino Uno R3
- NỘI DUNG 4: Thiết kế app bằng Android Studio
- NỘI DUNG 5: Thiết kế và thi công mô hình xe trò chơi và mô hình đường chạy có biển báo
- NỘI DUNG 6: Đánh giá kết quả thực hiện.
GIỚI HẠN
- Mô hình xe có kích thước 23.5x16x21, mô hình đường chạy có kích thước 80x120
- Dùng một điện thoại thông minh sử dụng hệ điều hành Android để làm camera cho xe
- Sử dụng module Hc – 06 để truyện và nhận dữ liệu với điện thoại thông qua app Android trên điện thoại
- Sử dụng module thanh 5 cảm biến hồng ngoại TCRT5000L
- Mô hình đường chạy có cắm các biển báo mà có thể dễ dàng thay đổi vị trí các biển báo với nhau.
BỐ CỤC
Chương này trình bày đặt vấn đề, lý do chọn đề tài, mục tiêu, nội dung nghiên cứu, các giới hạn thông số và bố cục đồ án
- Chương 2: Cơ sở lý thuyết
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 3
Chương này trình bày lý thuyết về các module, cảm biến và linh kiện sử dụng trong hệ thống, các chuẩn truyền thông, giao thức
- Chương 3: Thiết kế và tính toán
Chương này thiết kế sơ đồ khối, sơ đồ nguyên lí của các khối trong hệ thống và thực hiện tính toán thiết kế
- Chương 4: Thi công hệ thống
Chương này trình bày lưu đồ giải thuật, thiết kế app android, viết chương trình hệ thống, thiết kế sơ đồ mạch in PCB
- Chương 5: Kết quả, nhận xét và đánh giá
Chương này trình bày kết quả thi công phần cứng và kết quả hình ảnh thực tế của tủ, nhận xét đánh giá chung về sản phẩm
- Chương 6: Kết luận và hướng phát triển
Trong chương này sẽ đưa ra kết quả đạt được, phân tích những ưu nhược điểm và đề xuất hướng phát triển đề tài
CƠ SỞ LÝ THUYẾT
TỔNG QUAN VỀ CÔNG NGHỆ OCR
OCR được phát triển từ nghiên cứu về nhận dạng mẫu, trí tuệ nhân tạo và thị giác máy Mặc dù nghiên cứu học thuật vẫn tiếp tục, nhưng nhiều ứng dụng thực tiễn của OCR đã được triển khai với các kỹ thuật đã được chứng minh hiệu quả.
Nhận dạng ký tự quang học và nhận dạng ký tự số ban đầu được xem là hai lĩnh vực riêng biệt, nhưng với sự phát triển của công nghệ, thuật ngữ Nhận dạng ký tự quang học đã được mở rộng để bao gồm cả nhận dạng ký tự số Hệ thống nhận dạng cần được huấn luyện với các mẫu ký tự cụ thể, và hiện nay, các hệ thống "thông minh" với độ chính xác cao đã trở nên phổ biến, hỗ trợ nhận diện hầu hết các phông chữ Một số hệ thống còn có khả năng tái tạo định dạng tài liệu gần giống với bản gốc, bao gồm hình ảnh, cột, bảng biểu và các thành phần không phải văn bản.
Phần mềm VnDOCR 4.0 hiện nay có khả năng nhận dạng chữ Việt trực tiếp từ tài liệu quét mà không cần lưu trữ dưới dạng tệp ảnh trung gian Người dùng có thể quét và lưu trữ tài liệu dưới dạng tệp tin nhiều trang, với kết quả nhận dạng được chuyển đổi sang định dạng Microsoft Word, Excel, giúp đáp ứng hiệu quả nhu cầu số hóa dữ liệu.
VietOCR là một dự án OCR Tiếng Việt được phát triển trên nền tảng mã nguồn mở tesseract-ocr do Google tài trợ, với khả năng nhận dạng chữ Việt rất tốt Chương trình này được viết bằng Java/.NET và hỗ trợ nhận dạng cho nhiều định dạng hình ảnh như PDF, TIFF, JPEG, GIF, PNG và BMP.
ABBYY, một trong những công ty công nghệ hàng đầu thế giới trong lĩnh vực Nhận dạng ký tự quang học, đã tiến hành nghiên cứu và triển khai công nghệ nhận dạng tiếng Việt vào tháng vừa qua.
Vào năm 2009, công nghệ Nhận dạng ký tự quang học (OCR) của ABBYY đạt độ chính xác trong việc nhận diện tài liệu chữ in tiếng Việt lên tới hơn 99%, tức là chỉ có chưa đến 1 ký tự sai trong 100 ký tự được nhận dạng Công nghệ này hỗ trợ hầu hết các định dạng ảnh đầu vào như PDF, TIFF, JPEG, GIF, PNG, BMP, PCX, DCX, và DjVu, và kết quả nhận dạng được lưu trữ một cách hiệu quả.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 5 lưu trữ tài liệu dưới nhiều định dạng như MS Word, MS Excel, HTML, TXT, XML, PDF, và PDF 2 lớp Đặc biệt, định dạng PDF 2 lớp là lựa chọn hoàn hảo cho việc lưu trữ và khai thác tài liệu, cho phép người đọc xem ảnh gốc một cách trung thực nhờ lớp ảnh bên trên, trong khi các công cụ tìm kiếm có thể tìm kiếm toàn văn trên văn bản nhờ lớp text nhận dạng bên dưới.
Người sử dụng có thể thử nghiệm công nghệ nhận dạng của ABBYY (miễn phí) tại trang web: www.sohoa.com.vn
Trạng thái hiện thời của công nghệ OCR :
Việc nhận dạng ký tự Latin qua đánh máy đã đạt được sự chính xác cao, với tỷ lệ thực tế lên tới 99% Tuy nhiên, một số ứng dụng yêu cầu độ chính xác vượt trội hơn vẫn cần sự kiểm tra của con người để phát hiện và sửa lỗi.
Việc nhận diện chữ in tay, chữ thảo và các phiên bản đánh máy vẫn là chủ đề nghiên cứu quan trọng, đặc biệt đối với những chữ có nhiều ký tự.
Các hệ thống nhận dạng ký tự viết tay đã có những thành công thương mại đáng kể trong những năm gần đây, đặc biệt là các thiết bị nhập cho PDA như phần mềm trên Palm OS, với Apple Newton là một trong những tiên phong Các thuật toán trong thiết bị này tận dụng thứ tự, tốc độ và hướng của các đoạn viết, nhưng lại yêu cầu người dùng phải sử dụng một số kiểu chữ nhất định Tuy nhiên, các phương pháp này không áp dụng cho phần mềm quét tài liệu giấy, dẫn đến việc nhận dạng văn bản in bằng tay vẫn là một thách thức lớn Mặc dù có thể nhận ra khoảng 80% đến 90% ký tự in bằng tay sạch sẽ, độ chính xác này vẫn tạo ra nhiều lỗi, khiến công nghệ này chỉ hiệu quả trong một số trường hợp nhất định Hiện nay, ICR (Nhận dạng Ký tự Thông minh) là một trong những công nghệ OCR đa dạng được biết đến trong ngành công nghiệp.
Nhận dạng chữ viết tay là một lĩnh vực nghiên cứu đầy thách thức, với tỷ lệ nhận diện thấp hơn so với văn bản in Để đạt được tỷ lệ nhận dạng cao hơn cho các bản viết tay chung, việc sử dụng thông tin về ngữ pháp và ngữ cảnh là điều cần thiết.
Việc nhận diện một từ hoàn chỉnh từ cuốn từ điển dễ dàng hơn so với việc tách rời các ký tự đơn lẻ trong đoạn văn Chẳng hạn, đọc dòng tổng cộng trên một tờ séc luôn được viết rõ ràng.
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT
Bộ môn Điện tử Công nghiệp – Y sinh 6 cho thấy việc sử dụng các từ điển nhỏ hơn có thể nâng cao tỷ lệ nhận dạng đáng kể Kiến thức về ngữ pháp của ngôn ngữ được quét giúp xác định chính xác từ loại, chẳng hạn như động từ hay danh từ, từ đó cải thiện độ chính xác của Nhận dạng ký tự quang học (OCR) lên tới 2/3 Hình dạng chữ viết tay không cung cấp đủ thông tin cần thiết để đạt được độ chính xác trên 98% trong việc nhận diện tất cả các đoạn chữ viết tay.
Một thách thức lớn trong việc nghiên cứu lịch sử là việc xử lý các bản lưu lễ thánh và đám cưới từ những nhà thờ cổ, thường chỉ ghi tên mà không có thông tin chi tiết Những tài liệu này dễ bị hư hại do thời gian, nước, hoặc lửa, và nhiều tên có thể đã lỗi thời hoặc có cách viết hiếm gặp Một lĩnh vực nghiên cứu quan trọng là sự hợp tác giữa máy tính và con người, trong đó máy tính hỗ trợ con người trong việc giải mã các văn bản khó đọc, như các bản viết trên da cừu của Archimede hoặc những cuộn giấy da từ Biển Chết.
Mạng nơ-ron được sử dụng rộng rãi cho các vấn đề nhận dạng phức tạp, vì chúng có khả năng đơn giản hóa cả biến đổi affine và biến đổi phi tuyến.
CÁC CHUẨN TRUYỀN DỮ LIỆU
UART (Universal Asynchronous Receiver/Transmitter) là phương thức truyền thông tin nối tiếp không đồng bộ, thường được sử dụng trong máy tính công nghiệp, truyền thông, vi điều khiển và nhiều thiết bị truyền tin khác.
Tốc độ Baud (baud rate) là một yếu tố quan trọng trong truyền nhận không đồng bộ, giúp hai mô đun có thể hiểu được nhau Để đảm bảo quá trình truyền nhận diễn ra suôn sẻ, cần thiết phải cài đặt tốc độ trước khi bắt đầu truyền Theo định nghĩa, tốc độ baud được tính bằng số bit được truyền trong một giây.
Khung truyền (frame) trong giao thức truyền thông nối tiếp rất quan trọng để giảm thiểu mất mát dữ liệu Ngoài việc đảm bảo tốc độ truyền, khung truyền được thiết lập từ đầu để hạn chế sự mất mát này Nó quy định số bit được truyền trong mỗi lần gửi, bao gồm các bit khởi đầu (start), kết thúc (stop), các bit kiểm tra như parity, và số bit trong m.
Bit Start : Là bit bắt đầu trong khung truyền Bit này nhằm mục đích báo cho
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 7 thiết bị nhận biết quá trình truyền bắt đầu trên AVR bit Start có trạng thái là 0
Data : Dữ liệu cần truyền Data không nhất thiết phải 8 bit, có thể là 5, 6, 7, 8, 9
Trong UART bit LSB được truyền đi trước, Bit MSB được truyền đi sau
Bit parity là một phương pháp kiểm tra tính chính xác của dữ liệu, bao gồm hai loại: parity chẵn (even parity) và parity lẻ (odd parity) Parity chẵn được sử dụng để đảm bảo tổng số bit 1 trong dữ liệu cộng với bit parity là một số chẵn, trong khi parity lẻ đảm bảo tổng số bit 1 là một số lẻ Việc sử dụng bit parity là tùy chọn, không bắt buộc trong các ứng dụng.
Bit stop là tín hiệu báo hiệu kết thúc khung truyền, thường có mức 5V và có thể bao gồm 1 hoặc 2 bit stop Hình 2.10 minh họa cách dữ liệu được truyền đi qua giao thức UART.
Hình 2.1 Giản đồ truyền dữ liệu UART
SPI (Serial Peripheral Interface, SPI bus) là một chuẩn đồng bộ nối tiếp để truyền dữ liệu ở chế độ song công toàn phần
Khác với cổng nối tiếp chuẩn, SPI là giao diện đồng bộ, trong đó quá trình truyền dữ liệu được đồng bộ hóa với tín hiệu xung clock do thiết bị master sinh ra Thiết bị ngoại vi bên nhận đồng bộ hóa quá trình nhận chuỗi bit với tín hiệu này Nhiều vi mạch có thể kết nối vào mỗi giao diện ngoại vi của thiết bị master, và việc truyền dữ liệu được thực hiện khi thiết bị master kích hoạt tín hiệu "chọn chip" trên vi mạch bị động.
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 8
Thiết bị ngoại vi nếu không đƣợc chọn bởi bộ vi xử lý sẽ không tham gia vào quá trình truyền theo giao diện SPI
Trong giao diện SPI có sử dụng bốn tín hiệu số:
MOSI (Master Out Slave In) là cổng ra của thiết bị master và cổng vào của thiết bị slave, được sử dụng để truyền dữ liệu từ thiết bị master đến thiết bị slave.
MISO (Master In Slave Out) là cổng vào của thiết bị master và cổng ra của thiết bị slave, được sử dụng để truyền dữ liệu từ thiết bị slave đến thiết bị master.
SCLK (Serial Clock) hay SCK - tín hiệu xung clock nối tiếp, dành cho việc truyền tín hiệu dành cho thiết bị slave
CS hay SS (Chip Select, Slave Select): chọn vi mạch, chọn thiết bị slave
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 9
TỔNG QUAN VỀ HỆ ĐIỀU HÀNH ANDROID
2.3.1 Khái niệm hệ điều hành android
Android là hệ điều hành dựa trên Linux, được thiết kế cho thiết bị di động như smartphone và tablet Phát triển bởi Android, Inc với sự hỗ trợ từ Google, Android được Google mua lại vào năm 2005 Ra mắt vào năm 2007, Android kèm theo việc thành lập liên minh thiết bị cầm tay mở, nhằm thúc đẩy các tiêu chuẩn mở cho thiết bị di động Chiếc điện thoại đầu tiên chạy Android được bán vào năm 2008.
Hình 2.3 Logo hệ điều hành Android
Giao diện người dùng của Android được thiết kế dựa trên nguyên tắc tác động trực tiếp, cho phép người dùng tương tác qua các động tác cảm ứng như vuốt, chạm, kéo giãn và thu lại Những hành động này giúp xử lý các đối tượng trên màn hình một cách mượt mà, với phản ứng gần như ngay lập tức từ hệ thống, mang đến trải nghiệm sử dụng thân thiện và trực quan.
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 10
Hình 2.4 Giao diện của thiết bị chạy hệ điều hành Android
Màn hình chính của thiết bị Android là điểm khởi đầu hiển thị các thông tin quan trọng, tương tự như desktop trên máy tính để bàn Nó bao gồm nhiều biểu tượng ứng dụng để mở các ứng dụng tương ứng và tiện ích hiển thị nội dung sống động như dự báo thời tiết hay tin tức Người dùng có thể vuốt để xem nhiều trang khác nhau và tùy chỉnh giao diện màn hình chính theo sở thích cá nhân, cho phép sắp đặt hình dáng và hành vi của thiết bị.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 11
Thanh trạng thái trên thiết bị Android nằm ở phía trên cùng màn hình, cung cấp thông tin về thiết bị và tình trạng kết nối Người dùng có thể kéo xuống để xem màn hình thông báo, nơi hiển thị thông tin quan trọng như email và tin nhắn SMS mới nhận mà không làm gián đoạn trải nghiệm Trong các phiên bản đầu, việc nhấn vào thông báo sẽ mở ứng dụng tương ứng, và sau này, tính năng đã được cải tiến, cho phép người dùng gọi lại ngay lập tức khi có cuộc gọi nhỡ mà không cần mở ứng dụng gọi điện Thông báo sẽ vẫn hiển thị cho đến khi người dùng đọc hoặc xóa chúng.
Các ứng dụng Android được phát triển bằng ngôn ngữ Java thông qua Bộ phát triển phần mềm Android (SDK), bao gồm các công cụ như gỡ lỗi, thư viện phần mềm, bộ giả lập điện thoại, mã nguồn mẫu và hướng dẫn chi tiết Môi trường phát triển tích hợp (IDE) chính thức là Eclipse, kết hợp với phần bổ sung Android Development Tools (ADT) Ngoài ra, còn có các công cụ phát triển khác như Bộ phát triển gốc cho ứng dụng viết bằng C hoặc C++, Google App Inventor dành cho lập trình viên mới, và nhiều nền tảng ứng dụng web di động đa nền tảng khác.
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 12
Hình 2.6 Kho ứng dụng Google Play Store
Android ngày càng có nhiều ứng dụng của bên thứ ba, được phân phối qua cửa hàng ứng dụng như Google Play và Amazon Appstore, hoặc tải xuống dưới dạng tập tin APK từ các trang web khác Play Store cho phép người dùng duyệt, tải về và cập nhật ứng dụng từ Google và các nhà phát triển thứ ba, và được cài đặt sẵn trên các thiết bị tương thích Ứng dụng tự động lọc danh sách ứng dụng tương thích với thiết bị, trong khi nhà phát triển có thể giới hạn ứng dụng cho một số nhà mạng hoặc quốc gia nhất định Người dùng có thể yêu cầu hoàn tiền trong vòng 15 phút nếu không hài lòng với ứng dụng đã mua, và một số nhà mạng hỗ trợ mua ứng dụng qua hóa đơn hàng tháng Đến tháng 9 năm 2012, đã có hơn 675.000 ứng dụng dành cho Android, với ước tính 25 tỷ lượt tải từ Play Store.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 13
2.3.4 Ƣu và nhƣợc điểm của hệ điều hành Ƣu điểm:
- Là hệ điều hành có mã nguồn mở nên khả năng tuỳ biến cao, có thể tùy ý chỉnh sửa
- Kho ứng dụng Google Play Store đồ sộ
- Thân thiện và dễ sử dụng
- Khả năng đa nhiệm, chạy cùng lúc nhiều ứng dụng cao
- Màn hình cơ bản hệ điều hành Android cung cấp một giao diện người dùng đẹp và trực quan
Phần mềm mã nguồn mở có nguy cơ cao bị nhiễm phần mềm độc hại và virus, do sự thiếu kiểm soát về chất lượng của nhiều ứng dụng Điều này có thể gây hại nghiêm trọng cho thiết bị của người dùng.
- Khả năng bảo mật không cao qua đó người dùng có thể bị đánh cắp thông tin qua các ứng dụng
- Kho ứng dụng quá nhiều dẫn đến khó kiểm soát chất lƣợng các ứng dụng
- Hiện tượng giật lag trong quá trình sử dụng diễn ra thường xuyên do đặc trưng hệ điều hành sản sinh ra nhiều file rác.
TÍNH TOÁN VÀ THIẾT KẾ
ĐẶT VẤN ĐỀ
Mô hình đồ chơi cho trẻ em được thiết kế với một xe tự động có khả năng dò line trên một đường đi đã được xác định trước Trên mô hình này, người dùng có thể đặt các biển báo chữ như Fast, Low, Stop, Buzz, và tùy ý thay đổi vị trí của các biển báo để tạo ra những trải nghiệm thú vị và sáng tạo.
GIỚI THIỆU VỀ HỆ THỐNG VÀ SƠ ĐỒ KHỐI
Giới thiệu về Hệ Thống
Hình 3.1 Hình ảnh minh họa dự kiến cho hệ thống
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 15
Dựa vào hình ảnh minh họa , hệ thống bao gồm có 3 thành phần:
Xe sử dụng cảm biến dò line để di chuyển theo đường, trong khi camera trên điện thoại sẽ điều khiển các chức năng như tăng tốc, rẽ trái, rẽ phải, dừng lại và phát ra âm thanh còi.
- Biển báo ( biển chỉ dẫn ) : tác động đến việc điều khiển xe nhƣ vận tốc, điều hướng xe và còi hú của xe
- Đường ( line ) xe chạy : các line màu để cảm biến có thể quét được Ở đây nhóm chọn màu đen làm màu sắc cho đường line.
THIẾT KẾ VÀ TÍNH TOÁN CÁC MÔ HÌNH
3.3.1 Thiết kế mô hình xe
Mô hình xe trò chơi cho trẻ em từ ba đến sáu tuổi cần được thiết kế với kích thước phù hợp để đảm bảo đủ không gian cho các linh kiện Việc lựa chọn kích thước xe là rất quan trọng để tạo ra một sản phẩm an toàn và thú vị cho trẻ nhỏ.
CHƯƠNG 3: TÍNH TOÁN VÀ THIẾT KẾ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 16
+ Sơ đồ phân bố linh kiện dự kiến mặt trên:
Hình 3.2 Phân bố linh kiện dự kiến mặt trên của xe
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 17
+ Sơ đồ phân bố linh kiện dự kiến mặt dưới :
Hình 3.3 Phân bố linh kiện dự kiến dưới trên của xe
3.3.2 Thiết kế mô hình đường (line ) xe chạy:
Khi chọn kích thước mô hình, cần đảm bảo tính nhỏ gọn để không chiếm quá nhiều không gian trong phòng, đồng thời dễ dàng sắp xếp cho trẻ em tự bày biện hoặc dọn dẹp mà không cần sự trợ giúp của người lớn Bên cạnh đó, kích thước của mô hình cũng cần cân nhắc đến kích thước xe để đảm bảo sự cân xứng, và độ dài của đường chạy nên được thiết kế hợp lý, không quá ngắn hoặc quá dài, nhằm hạn chế ảnh hưởng đến khả năng bắt hình ảnh của camera.
- Kích thước bao quát mô hình :
CHƯƠNG 3: TÍNH TOÁN VÀ THIẾT KẾ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 18
- Kích thước vòng đường (line ) xe chạy :
Hình 3.4 Mô hình của đường ( line) xe chạy
Khi chọn kích thước độ rộng của đường line, điều này giúp xe chạy ổn định hơn và dễ dàng bắt lại đường khi bị lệch Nó cũng hỗ trợ việc vào cua và di chuyển qua các đoạn đường cong Về màu sắc, nên chọn đường màu tối trên nền sáng để mô hình giống với thực tế hơn, đồng thời phù hợp với cảm biến dùng để xử lý dò đường cho xe.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 19
- Kích thước độ rộng đường : 2.5 (cm)
- Màu sắc đường : màu đen
3.3.3 Thiết kế mô hình biển báo
Để chọn kích thước biển báo phù hợp, cần dựa vào chiều cao của xe và chiều cao của điện thoại Ngoài ra, độ rộng ống kính camera và khả năng lấy nét cũng là yếu tố quan trọng trong việc xác định kích thước biển báo.
+ Chiều cao biển báo : 24.5 (cm)
+ Bán kính biển báo : 6.5 (cm)
Biển báo được thiết kế với khả năng tháo rời và dễ dàng thay đổi vị trí, mang lại sự linh hoạt cho người sử dụng Các bé có thể viết lên mặt biển báo bằng các ký tự được lập trình sẵn trong chương trình Arduino và ứng dụng Android, từ đó tăng cường sự hứng thú và khả năng tương tác với mô hình qua nhiều hình thức khác nhau.
THIẾT KẾ VÀ TÍNH TOÁN CÁC KHỐI
3.4.1 Sơ đồ khối của mạch điều khiển xe
CHƯƠNG 3: TÍNH TOÁN VÀ THIẾT KẾ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 20
Hình 3.5 Sơ đồ khối của xe
Chức năng của từng khối:
Khối xử lý trung tâm đóng vai trò là bộ điều khiển chính của toàn bộ hệ thống, có nhiệm vụ kết nối và truyền dữ liệu điều khiển từ người sử dụng đến các thiết bị Đồng thời, nó cũng nhận dữ liệu từ các cảm biến để xử lý và thực thi các tác vụ cần thiết.
Khối cảm biến dò line được trang bị 5 cảm biến TCRT5000L, có khả năng nhận diện màu sắc để xác định đường đi cho mô hình xe Các cảm biến này giao tiếp với vi điều khiển, giúp thực hiện các chức năng tương ứng một cách hiệu quả.
Khối nhận tín hiệu Bluetooth có nhiệm vụ kết nối với vi điều khiển, nhận dữ liệu từ khối xử lý hình ảnh và chuyển tiếp cho vi điều khiển để thực hiện các chức năng tương ứng.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 21
Khối thu nhận và xử lý hình ảnh có nhiệm vụ tiếp nhận hình ảnh và chuyển đổi chúng thành dữ liệu thông qua ứng dụng Android, sau đó gửi dữ liệu này về vi điều khiển để thực hiện các chức năng tương ứng.
- Khối nguồn: Khối này có chức năng cung cấp nguồn liên tục cho toàn hệ thống
- Khối công suất động cơ : khối này có chức năng điều khiển hai động cơ DC của hai bánh xe
- Khối động cơ : khối này có chức năng giúp xe di chuyển khi có tín hiệu điều khiển đƣợc gửi xuống
- Khối công suất : khối này có chức năng hú còi khi có tín hiệu điều khiển gửi xuống
Khối xử lý trung tâm:
Chức năng chính của đề tài là giao tiếp với module cảm biến dò line qua cổng ngõ vào để điều khiển các động cơ ở cổng ngõ ra, giúp xe di chuyển theo đường line Ngoài ra, hệ thống sử dụng giao tiếp UART với module Bluetooth để nhận dữ liệu từ điện thoại thông qua ứng dụng, cho phép người dùng điều khiển xe với các tùy chọn như tăng tốc, dừng xe, hú còi, quẹo trái và quẹo phải.
Các lựa chọn: VĐK AVR, VĐK PIC, VĐK ARM,…
Arduino là một bo mạch vi xử lý cho phép lập trình và tương tác với các thiết bị phần cứng như cảm biến, động cơ và đèn Điểm nổi bật của Arduino là môi trường phát triển ứng dụng dễ sử dụng và ngôn ngữ lập trình đơn giản, giúp người mới bắt đầu cũng có thể học nhanh chóng Sự phổ biến của Arduino còn đến từ mức giá phải chăng và tính chất nguồn mở của cả phần cứng lẫn phần mềm, mở ra nhiều cơ hội cho người dùng sáng tạo và phát triển các ứng dụng đa dạng.
CHƯƠNG 3: TÍNH TOÁN VÀ THIẾT KẾ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 22 như robot đơn giản, điều khiển nhiệt độ, phát hiện chuyển động, game tương tác
Arduino có nhiều phiên bản khác nhau như Arduino Mega và Arduino LilyPad, nhưng Arduino Uno R3 là một trong những phiên bản phổ biến nhất Với 20 chân và bộ nhớ đủ lớn, Arduino Uno R3 đáp ứng tốt nhu cầu cho hầu hết các ứng dụng thông thường.
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 23
Hình 3.7 Sơ đồ chân Arduino Uno
GND (Ground) là cực âm của nguồn điện cung cấp cho Arduino UNO Khi sử dụng các thiết bị với nguồn điện riêng biệt, các chân GND này cần được kết nối với nhau để đảm bảo hoạt động ổn định.
- 5V: cấp điện áp 5V đầu ra Dòng tối đa cho phép ở chân này là 500mA
- 3.3V: cấp điện áp 3.3V đầu ra Dòng tối đa cho phép ở chân này là 50mA
- Vin (Voltage Input): để cấp nguồn ngoài cho Arduino UNO, bạn nối cực dương của nguồn với chân này và cực âm của nguồn với chân GND
CHƯƠNG 3: TÍNH TOÁN VÀ THIẾT KẾ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 24
IOREF là chân đo điện áp hoạt động của vi điều khiển trên Arduino UNO, luôn duy trì ở mức 5V Tuy nhiên, bạn không nên sử dụng chân này để lấy nguồn 5V vì chức năng chính của nó không phải là cung cấp điện.
- RESET: việc nhấn nút Reset trên board để reset vi điều khiển tương đương với việc chân RESET đƣợc nối với GND qua 1 điện trở 10KΩ
- 32KB bộ nhớ Flash: những đoạn lệnh bạn lập trình sẽ được lưu trữ trong bộ nhớ
Flash của vi điều khiển thường có vài KB được sử dụng cho bootloader, nhưng bạn hiếm khi cần vượt quá 20KB bộ nhớ này.
SRAM (Static Random Access Memory) có dung lượng 2KB, nơi lưu trữ giá trị của các biến mà bạn khai báo trong quá trình lập trình Số lượng biến bạn khai báo càng nhiều thì yêu cầu về bộ nhớ RAM càng lớn Tuy nhiên, bộ nhớ RAM thường không phải là vấn đề đáng lo ngại Lưu ý rằng khi mất điện, dữ liệu trên SRAM sẽ bị mất.
EEPROM (Bộ nhớ chỉ đọc có thể lập trình điện tử và xóa) với dung lượng 1KB hoạt động giống như một ổ cứng mini, cho phép người dùng đọc và ghi dữ liệu mà không lo bị mất khi mất điện, khác với dữ liệu trên SRAM.
Arduino UNO sở hữu 14 chân digital, cho phép đọc và xuất tín hiệu với hai mức điện áp 0V và 5V Mỗi chân có dòng vào/ra tối đa là 40mA và được trang bị các điện trở pull-up được cài đặt trong vi điều khiển ATmega328, mặc dù các điện trở này không được kết nối mặc định.
Một số chân digital có các chức năng đặc biệt nhƣ sau:
- 2 chân Serial: 0 (RX) và 1 (TX): dùng để gửi (transmit – TX) và nhận (receive –
RX) dữ liệu TTL Serial Arduino Uno có thể giao tiếp với thiết bị khác thông qua
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 25
Kết nối Bluetooth thường được gọi là kết nối Serial không dây Nếu không cần giao tiếp Serial, bạn không nên sử dụng hai chân này trừ khi thật sự cần thiết.
Chân PWM (~) 3, 5, 6, 9, 10 và 11 cho phép xuất xung PWM với độ phân giải 8 bit, tương ứng với giá trị từ 0 đến 255, điều này có nghĩa là bạn có thể điều chỉnh điện áp ra từ 0V đến 5V thông qua hàm analogWrite() Điều này mang lại sự linh hoạt hơn so với các chân khác chỉ có mức điện áp cố định là 0V và 5V.
THI CÔNG HỆ THỐNG
GIỚI THIỆU
Chương này trình bày quy trình thi công PCB, lập trình, lắp ráp phần cứng và kiểm tra mạch Ngoài ra, bài viết còn bao gồm hình ảnh chụp từ mô hình thực tế của hệ thống và kết quả hoạt động của nó.
THI CÔNG HỆ THỐNG
Sơ đồ nguyên lý toàn mạch đƣợc vẽ bằng phần mềm Proteus 8.8:
Hình 4.1 sơ đồ nguyên lý toàn mạch
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 35
Hình 4.2 Sơ đồ mạch làm gọn dây cho xe phần nguồn
Hình 4.3 Sơ đồ mạch làm gọn dây cho xe phần bluetooth và buzzer
CHƯƠNG 4: THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 36
Nhóm đã quyết định thiết kế board mạch in một lớp đơn giản bằng phần mềm Proteus, với hình ảnh mô tả board mạch được thiết kế như sau.
Hình 4.4 Mạch in theo sơ đồ mạch hình 4.3
Hình 4.5 Mạch in đã thi công theo sơ đồ mạch hình 4.3
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 37
Hình 4.6 Mạch in theo sơ đồ hình 4.2
Hình 4.7 Mạch in theo sơ đồ mạch hình 4.2
CHƯƠNG 4: THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 38
ĐÓNG GÓI VÀ THI CÔNG MÔ HÌNH
4.3.1 Đóng gói mô hình xe
Hình 4.8 Hình ảnh mặt trên của xe
Hình 4.9 Hình ảnh mặt dưới của xe
Nhóm nghiên cứu BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 39 đã thực hiện việc đóng hộp mô hình xe để tăng tính thẩm mỹ, che chắn phần mạch in và các kết nối dây giữa các module Khối nguồn được thiết kế lộ bên ngoài và kết nối với một công tắc bên hông hộp, cho phép bật tắt nguồn pin cung cấp cho module L298N và Arduino.
Hình 4.10 Hình ảnh xe đã đƣợc đóng hộp
CHƯƠNG 4: THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 40
Hình 4.11 Hình ảnh xe đã đƣợc đóng hộp
Hình 4.12 Hình ảnh xe đã đƣợc đóng hộp
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 41
4.3.2 Hoàn tất mô hình đường chạy
Từ yêu cầu đã đặt ra nhóm tiến hành thi công và hoàn thiện mô hình đường chạy:
Hình 4.13 Mô hình đường chạy
Mô hình đường chạy có kích thước 61.5x183.5 được thiết kế với 4 đế ở các góc để gắn biển báo tại các vị trí đã định sẵn Việc đặt biển báo cách xa đường chạy giúp xe vận hành mượt mà, giảm thiểu nguy cơ va chạm, đồng thời đảm bảo camera trên xe vẫn nhận diện được hình ảnh ký tự trên biển báo.
Bề mặt của các biển báo được thiết kế để sử dụng vật liệu như bút lông dầu, cho phép viết lên các chuỗi ký tự đã được định nghĩa sẵn trong chương trình điều khiển, chẳng hạn như "Normal".
CHƯƠNG 4: THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 42
Các biển báo như “Tốc độ”, “Dừng lại”, “Trái”, “Phải” và các biển báo có thể tháo rời dễ dàng giúp trẻ em tương tác với mô hình một cách thú vị và không gặp khó khăn.
LẬP TRÌNH HỆ THỐNG
Lưu đồ chương trình chính
Hình 4.14 Lưu đồ chương trình con thực hiện chức năng dò line
Khởi tạo các thiết bị ngoại vi, biến toàn cục, timer tĩnh
Cập nhật giá tri của mắt IR
Kiểm tra và cập nhật tin nhắn từ điện thoại gửi xuống board
Ra quyết định chọn hướng đi của xe
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 43
Cập nhật giá trị mắt IR:
Mắt IR đƣợc đọc bằng các chân Analog của Arduino Bao gồm 5 mắt đƣợc bố trí như hình bên dưới:
Hình 4.15 Sơ đồ bố trí các mắt hồng ngoại trên cảm biến
Các mắt sẽ liên tục được đọc để cập nhật biến toàn cục, giúp chương trình đưa ra quyết định về hướng đi phù hợp.
Ta chia các trường hợp có thể xảy ra với các mắt khi gặp đường đi và ra quyết định theo bảng dưới:
Trường hợp Mắt 1 Mắt 2 Mắt 3 Mắt 4 Mắt 5 Quyết định
Còn lại Lặp lại hành động trước đó
Bảng 4.2 Bảng trạng thái chọn hướng đi cho mô hình xe
Mắt 1 Mắt 2 Mắt 3 Mắt 4 Mắt 5
CHƯƠNG 4: THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 44
1 – Khi mắt hồng ngoại bắt gặp màu đen
0 – Khi mắt hồng ngoại bắt gặp màu khác đen (ADC > 100)
Cập nhật và kiếm tra tin nhắn từ điện thoại xuống board:
Khi nhận tin nhắn từ điện thoại, hệ thống sẽ đưa tin nhắn vào bộ đệm và kiểm tra tính hợp lệ của nó (stop, fast, left, right, normal) Nếu tin nhắn hợp lệ, biến lệnh sẽ được cập nhật để chờ thực thi, đồng thời kích hoạt timer tĩnh để đếm thời gian, ngăn chặn việc tin nhắn không được thực hiện làm chặn các tin nhắn khác Khi timer tràn, tin nhắn cần thực thi sẽ bị xóa để tiếp tục nhận tin nhắn mới từ điện thoại.
Hình 4.16 Lưu đồ chương trình con thực hiện chức năng xử lý dữ liệu từ module
Cập nhật vào buffer Đúng
Có tin nhắn từ điện thoại Và biến thực thi lệnh còn rãnh
Hợp lệ Đƣa vào Biến lệnh cần thực thi Bật timer
Xóa buffer Sai Đúng Sai
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 45
Mục đích của việc này là ngăn chặn tình trạng gửi quá nhiều tin nhắn xuống board, nhằm tránh nhầm lẫn và đảm bảo board không bị treo Sau một khoảng thời gian nhất định (MAX_WAIT_TIME_FOR_EXECUTE_MESSAGE = 3000 mili giây trong mã hiện tại), hệ thống sẽ tự động xóa buffer.
Ra quyết định chọn hướng đi:
Theo bảng ở phần 2.1, xe hoạt động bình thường khi không nhận lệnh từ điện thoại Do đó, việc xác định hướng đi chỉ trở nên quan trọng khi có quyết định được gửi từ điện thoại.
Khi có tham số mới từ điện thoại gửi xuống thì việc quyết định sẽ đƣợc thực hiện
Khi gửi lệnh tăng tốc, xe sẽ tăng tốc ngay lập tức Tương tự, lệnh dừng (stop) và lệnh tốc độ bình thường (normal) cũng được xử lý tương ứng Đối với lệnh rẽ trái (left) và rẽ phải (right), xe sẽ quét thêm cảm biến bên trái hoặc bên phải để xác định có ngã rẽ hay không Nếu phát hiện ngã rẽ, xe sẽ ngay lập tức thực hiện rẽ theo hướng đã xác định.
Hình 4.17 Hình ảnh mô tả cách thức chọn hướng đi của mắt hồng ngoại
Mắt 1 Mắt 2 Mắt 3 Mắt 4 Mắt 5
CHƯƠNG 4: THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 46
Lưu đồ chương trình app Android
Hình 4.18 Lưu đồ chương trình của App Android
Cơ bản về ứng dụng:
Tại giao diện màn hình chính gồm có 1 Camera, 1 TextView, 2 Button
- SurfaceView dùng để hiển thị camera, quét hình ảnh và phát hiện text trong hình ảnh đó
- TextView: dùng để hiển thị text đƣợc phát hiện bằng camera từ hình ảnh
- Hai Button: gồm 1 Button connect bluetooth và 1 button disconnect bluetooth
Button connect bluetooth dùng để connect đến bluetooth, sau đó kiểm tra xem text
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 47 đã đƣợc thay đổi hay chƣa và truyền text đến bluetooth Button disconnect bluetooth dùng để đóng kết nối đến bluetooth
Giải thích lưu đồ giải thuật:
- Start: bắt đầu ứng dụng
Khi khởi động ứng dụng, một số hàm callback cơ bản như onCreate, onStart, onStop sẽ được gọi Hàm onCreate() là hàm có sẵn trong Android, được kích hoạt ngay khi Activity bắt đầu Do được gọi sớm, hàm này thường được sử dụng để tải giao diện cho Activity Chúng ta cũng tận dụng cơ hội này để khởi tạo các chức năng cơ bản như khởi động camera, lấy hình ảnh và sau đó phát hiện văn bản trong hình ảnh Ứng dụng này sẽ sử dụng Google Mobile Vision API để nhận dạng văn bản.
- ConnectBluetooth(): nhấn nút CONNECT trên app để connect đến bluetooth
Sau khi kết nối với Bluetooth, hãy kiểm tra xem văn bản đã được phát hiện có thay đổi hay không Nếu văn bản đã thay đổi và khớp với các văn bản đã được định nghĩa trước, tiến hành thực hiện quá trình sendData() Nếu không, tiếp tục kiểm tra.
- sendData(): nếu text đã thay đổi và trùng với text đƣợc định nghĩa sẵn thì thực hiện việc gửi dữ liệu
Sau khi dữ liệu được gửi qua Bluetooth, người dùng có thể ngắt kết nối nếu không còn nhu cầu sử dụng Tuy nhiên, nếu muốn tiếp tục gửi dữ liệu khác, người dùng cần quay lại bước kiểm tra TextChange để thực hiện thao tác này.
- DisconnnectBluetooth(): nếu người dùng muốn disconnect thì nhấn nút DISCONNECT
Để kết thúc ứng dụng, bạn cần kiểm tra xem có muốn dừng lại hay không Nếu bạn muốn tiếp tục, hãy nhấn nút CONNECT để kết nối Bluetooth và gửi dữ liệu Nếu bạn quyết định tắt ứng dụng, chỉ cần thoát ra để hoàn tất quá trình.
CHƯƠNG 4: THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 48
4.4.2 Phần mềm lập trình cho vi điều khiển a Giới thiệu phần mềm lập trình aduino IDE
Môi trường phát triển tích hợp (IDE) của Arduino là một ứng dụng nền tảng được viết bằng Java, hỗ trợ ngôn ngữ lập trình Processing và dự án Wiring Công cụ này được phát triển bởi đội ngũ kỹ sư của Arduino và tương thích với các hệ điều hành Windows, MAC OS X và Linux.
Dành cho những người mới bắt đầu trong lĩnh vực phát triển phần mềm, chương trình này cung cấp một code editor với các tính năng như đánh dấu cú pháp, tự động khớp dấu ngoặc và canh lề Ngoài ra, nó còn hỗ trợ biên dịch và tải chương trình lên board chỉ với một cú click chuột Mỗi chương trình hoặc mã viết cho Arduino được gọi là một sketch.
Các chương trình Arduino được phát triển bằng ngôn ngữ C hoặc C++ Arduino IDE đi kèm với thư viện phần mềm "Wiring", giúp đơn giản hóa các thao tác đầu vào và đầu ra trong các dự án.
Hình 4.19 Giao diện phần mềm lập trình Arduino IDE
Hình 1Hình 4.22 Giao diện phần mềm lập trình Arduino IDE
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 49
1) Vùng lệnh: bao gồm các nút lệnh menu (File, Edit, Sketch, Tools, Help) Phía dưới là các icon cho phép sử dụng nhanh các chức năng thường dùng của IDE được miêu tả nhƣ hình sau:
2) Vùng viết chương trình: Các đoạn code sẽ được viết trong vùng này
Người dùng chỉ cần định nghĩa 2 hàm để tạo ra một chương trình vòng thực thi (cyclic executive) có thể chạy đƣợc:
+ Setup(): hàm này chạy mỗi khi khởi động một chương trình, dùng để thiết lập các cài đặt
+ Loop(): hàm này đƣợc gọi lặp lại cho đến khi tắt nguồn board mạch
3) Vùng thông báo (Debug): Những thông báo từ IDE sẽ đƣợc hiển thị tại đây Để ý rằng góc dưới cùng bên phải hiển thị loại board Arduino và cổng COM được sử dụng Luôn chú ý tới mục này bởi nếu chọn sai loại board hoặc cổng COM thì sẽ không thể upload đƣợc code của mình b Viết chương trình hệ thống
Phần này sẽ đƣợc trình bày ở phần phụ lục
CHƯƠNG 4: THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 50
4.4.3 Phần mềm lập trình cho điện thoại, máy tính
Giới thiệu phần mềm Android Studio
Hình 4.20 Giao diện phần mềm Android Studio
Hiện nay, có nhiều phần mềm để phát triển ứng dụng Android như Visual Studio, Android Studio, MIT AppInventor và Eclipse Trong số đó, Android Studio được Google hỗ trợ mạnh mẽ, nên nhóm đã chọn phần mềm này để phát triển ứng dụng điều khiển và hiển thị các thông số của tủ đồ.
VIẾT TÀI LIỆU HƯỚNG DẪN SỬ DỤNG, THAO TÁC
Hướng dẫn tải App Android vào điện thoại
Bước 1: Vào phần cài đặt của điện thoại tìm đến mục About Device (Thông tin thiết bị) >
Software Information (Thông tin phần mềm) > Build Number (Mã số phiên bản dựng)
Để bật chế độ quyền của nhà phát triển trên điện thoại, bạn cần nhấp vào mục Build Number 7 lần Sau khi nhận được thông báo xác nhận, quay lại phần cài đặt, bạn sẽ thấy mục mới "Tùy chọn nhà phát triển" Tiếp theo, chọn mục này và bật chế độ "Gỡ rối USB".
Bước 3: Tiến hành mở phần mềm Android Studio và mở chương trình App đã viết sẵn, kết nối điện thoại vào laptop thông qua cáp USB tương thích
Bước 4: Chọn mục “Build” trên giao diện “Main Activity”thì lập tức một file APK sẽ đƣợc cài đặt vào điện thoại
Bước 5: Cài đặt App đã thiết kế bằng file APK vừa được cài đặt
Hướng dẫn sử dụng sản phẩm
Bước 1: Cấp nguồn cho xe Xe sử dụng nguồn từ 3 viên pin 18650 mắc nối tiếp nhau
Để kết nối điện thoại với module HC-06, bạn cần vào phần cài đặt và tìm đến Bluetooth Nếu điện thoại yêu cầu mật khẩu, hãy nhập chuỗi số "1234" để hoàn tất kết nối.
Bước 3: Khi truy cập vào ứng dụng, bạn sẽ nhận được yêu cầu cấp quyền truy cập vào camera và Bluetooth Hãy cấp quyền cho cả hai, sau đó nhấn nút "connect" trên giao diện ứng dụng để bắt đầu truyền nhận dữ liệu giữa ứng dụng và module Bluetooth.
Bước 4: Bây giờ chỉ cần đặt điện thoại lên xe Đặt xe vào line để xe hoạt động
Bước 5: Trên đoạn đường, có thể đặt các biển báo tùy chọn như “fast” để xe chạy nhanh hơn, “normal” để duy trì tốc độ bình thường, và “stop” để yêu cầu xe dừng lại và hú còi trong một khoảng thời gian trước khi tiếp tục Ngoài ra, cần thiết phải đặt các biển báo “Left” và “Right” tại các ngã rẽ để hướng dẫn phương tiện di chuyển.
KẾT QUẢ_NHẬN XÉT_ĐÁNH GIÁ
GIỚI THIỆU
Chương này tóm tắt kết quả nghiên cứu kéo dài 16 tuần, bao gồm những nhận xét và đánh giá về quá trình thực hiện Đồng thời, bài viết cũng đề xuất hướng phát triển cho sản phẩm mô hình nhằm hoàn thiện và ứng dụng vào thực tiễn.
KẾT QUẢ ĐẠT ĐƢỢC
Các chuẩn truyền dữ liệu
- Tìm hiểu và nắm đƣợc các kiến thức cần thiết của các chuẩn truyền dữ liệu UART, SPI
- Biết cách sử dụng phần mềm Proteus để thiết kế sơ đồ nguyên lý của hệ thống
- Nâng cao đƣợc kĩ năng thi công mạch (hàn linh kiện, kiểm tra các thành phần trong mạch)
- Biết cách tính toán các giá trị điện áp dòng điện trong hệ thống để chọn nguồn phù hợp
- Biết kết nối các linh kiện với nhau sao cho phù hợp tạo thành một hệ thống hoàn chỉnh
- Tìm hiểu và biết ứng dụng công nghệ OCR vào sản phẩm
- Biết lập trình cho Arduino sử dùng phần mềm adduino IDE
- Biết sử dụng phần mềm Android studio viết đƣợc App mobile chạy trên điện thoại Android.
KẾT QUẢ THỰC NGHIỆM
Sau khi hoàn thành mô hình, nhóm đã đạt đƣợc căn bản những kết quả sau:
Mô hình đường chạy được thiết kế gọn gàng, cho phép tách rời từng phần để dễ dàng cất giữ sau khi sử dụng Các biển báo trong mô hình có thể thay thế vị trí cho nhau và chân đế có thể dịch chuyển để điều chỉnh vị trí đặt biển báo.
Mô hình xe hoạt động mượt mà, nhận diện ký tự và xử lý hiệu lệnh biển báo nhanh chóng, tuy nhiên, vẫn có lúc xe di chuyển chậm ở những khúc cua.
CHƯƠNG 5: KẾT QUẢ - NHẬN XÉT – ĐÁNH GIÁ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 54
Ứng dụng Android hoạt động mượt mà, hầu như không gặp hiện tượng giật lag Tốc độ nhận dạng và xử lý dữ liệu hình ảnh từ camera diễn ra nhanh chóng.
Hình 5.1 Hình ảnh thực tế mô hình đường ( line) xe chạy
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 55
Hình 5.2 Mô hình xe bắt gặp lệnh “STOP” và dừng lại hú còi
CHƯƠNG 5: KẾT QUẢ - NHẬN XÉT – ĐÁNH GIÁ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 56
5.3.2 Phần cứng, giao diện app trên điện thoại
Hình 5.3 Các linh kiện đƣợc phân bố và kết nối với nhau
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 57
Hình 5.4 Giao diện app trên điện thoại
Hình 5.5 Giao diện app trên điện thoại
CHƯƠNG 5: KẾT QUẢ - NHẬN XÉT – ĐÁNH GIÁ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 58
Hình 5.6 Giao diện app trên điện thoại
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 59
NHẬN XÉT, ĐÁNH GIÁ
Sau 16 tuần nghiên cứu và thực hiện, hệ thống đã hoàn thành và đáp ứng yêu cầu thiết kế ban đầu Dưới đây là một số nhận xét về kết quả đạt được.
- Mô hình xe đƣợc che chắn gọn gàng, các linh kiện sắp xếp không gây rối
- Mô hình đường chạy có kích thước vừa phải không chiếm quá nhiều không gian trong nhà, phù hợp với đối tƣợng sử dụng đặt ra
- Đầy đủ tất cả các tùy chọn nhƣ yêu cầu đƣợc đƣa ra
- Mạch điều khiển trung tâm hoạt động ổn định, chính xác
- Tốc độ quét và nhận dnagj kí tự nhanh
- Phân bố các linh kiện hợp lí
- Đôi lúc có độ trễ nhất định khi nhận và truyền dữ liệu thông qua Bluetooth Tuy nhiên không ảnh hưởng nhiều đến người sử dụng
- Giao diện trực quan, đơn giản và dễ sử dụng
- Đôi lúc có độ trễ nhất định khi điều khiển qua app android
- Hiện tại app chỉ chạy đƣợc trên nền tản hệ điều hành android
Quá trình Số lần thực nghiệm Số lần thành công Đánh giá
Xe chạy theo line 20 20 ĐẠT
CHƯƠNG 5: KẾT QUẢ - NHẬN XÉT – ĐÁNH GIÁ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 60
Bảng 5.1 Số liệu thực nghiệm
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP – Y SINH 61