Nói đến nhúng, đơn giản, trong ô-tô, ti-vi, tủ lạnh, xe bus,… đều có các hệ thống nhúng đã được xây dựng và vận hành bên trong, các hệ thống này giúp cho các thiết bị hoạt động hiệu quả
Giới thiệu về đề tài
Đặt vấn đề
Các thiết bị điều khiển và hệ thống nhúng ngày càng trở nên phổ biến trong cuộc sống hiện đại, ảnh hưởng đến mọi khía cạnh của hoạt động hàng ngày Chúng có mặt trong nhiều lĩnh vực như máy móc, công cụ, hệ thống giao thông, năng lượng, và robot Ngoài ra, công nghệ điều khiển còn được ứng dụng trong các lĩnh vực cao cấp như vũ khí công nghệ cao và hàng không vũ trụ, cũng như trong các sản phẩm tiêu dùng như phương tiện di chuyển và đồ gia dụng.
Trong cuộc sống hàng ngày, con người ngày càng có xu hướng tìm kiếm sự tiện lợi và hiệu quả, dẫn đến nhu cầu điều khiển thiết bị từ xa Với cuộc sống bận rộn, việc sử dụng công nghệ không dây giúp giảm thiểu sự cồng kềnh và tạo thuận lợi trong mọi thao tác Điện thoại thông minh cũng trở nên phổ biến nhờ tính gọn nhẹ, cho phép người dùng truy cập hầu hết các dịch vụ và chức năng của máy tính mà không cần mang theo thiết bị nặng nề.
Trong quá trình học tập về hệ nhúng, nhóm nhận thấy bối cảnh và nhu cầu hiện tại, từ đó đặt ra mục tiêu xây dựng sản phẩm đáp ứng các tiêu chí cụ thể.
- Ứng dụng được kiến thức về xây dựng các hệ thống nhúng đơn giản
- Tận dụng được sự tiện lợi của công nghệ không dây với kết nối từ xa trong điều khiển
- Phải là một sản phẩm được xem là “thông minh” Mặc dù khái niệm này có vẻ còn mơ hồ
- Ứng dụng được sự tiện lợi của SmartPhone (các ứng dụng Moblie) để đưa vào đề tài
Vin Group đã gây ấn tượng mạnh mẽ trong lĩnh vực công nghệ với việc ra mắt dòng xe điện VinFast, khẳng định vị thế của Việt Nam trên thị trường toàn cầu Điểm nổi bật của VinFast không chỉ là việc sử dụng năng lượng điện thay thế cho động cơ đốt trong, mà còn là những cải tiến vượt trội trong thiết kế và công nghệ, tạo nên tiếng vang lớn trên thế giới.
Hệ thống trợ lý hỗ trợ tài xế sử dụng công nghệ "thông minh nhân tạo" để lắng nghe và đáp ứng yêu cầu của người lái thông qua giọng nói, giúp thực hiện các lệnh một cách hiệu quả.
Nhóm nghiên cứu đã chọn đề tài "xe điều khiển cải tiến" nhằm hỗ trợ người lái trong việc điều khiển xe và đáp ứng nhu cầu tìm kiếm thông tin cũng như giải trí trong quá trình lái Xe "robot" này được minh họa với khả năng điều khiển thông qua kết nối không dây Bluetooth với điện thoại Android Các thao tác điều khiển được thực hiện dễ dàng qua giao diện ứng dụng và bằng giọng nói thông qua một số câu lệnh đơn giản, giúp người dùng dễ dàng điều khiển xe theo ý muốn.
Mô tả tổng quan đề tài
Đề tài này giới thiệu một xe điều khiển từ xa với động cơ giúp di chuyển bánh xe trong thế giới thực Nhóm sẽ sử dụng Arduino Uno để xử lý việc điều khiển động cơ, và chi tiết sẽ được trình bày sau Để điều khiển xe, nhóm phát triển một ứng dụng Android cho điện thoại, kết nối với xe qua Bluetooth Người dùng có thể điều khiển xe thông qua các nút bấm trên màn hình hoặc bằng giọng nói, cho phép thực hiện các lệnh như tiến, lùi, rẽ trái, rẽ phải và dừng Tổng kết, hệ thống bao gồm ba thành phần chính.
- Xe điều khiển (phần thân xe và các động cơ)
- Ứng dụng điều khiển trên điện thoại
Và xe đi kèm các hoạt động vận hành: tiến, lùi, rẽ trái, rẽ phải và dừng lại Chi tiết về đề tài sẽ tiếp tục được làm rõ.
Phân tích hệ thống
Sơ đồ khối
Với những yêu cầu đã đặt ra khi lên ý tưởng về đề tài, chúng ta có thể hình dung toàn cảnh hệ thống
Hệ thống bao gồm 6 khối chính: nguồn điện, khối xử lý, driver động cơ, khối động cơ với 2 động cơ đánh số 1 và 2, module Bluetooth và ứng dụng trên điện thoại di động SmartPhone.
Thiết kế hệ thống
Các linh kiện được sử dụng
- Bo mạch vi điều khiển Arduino Uno R3:
Arduino là một nền tảng mã nguồn mở phổ biến trong lĩnh vực lập trình và điện tử, đặc biệt đối với những người học lập trình hệ thống nhúng Linh kiện
Thông số kỹ thuật của Arduino Uno mà nhóm sử dụng như sau (Tham khảo tại: arduinokit.vn):
Chip điều khiển: ATmega328P Điện áp hoạt động: 5V
11 Điện áp đầu vào(khuyên dùng): 7-12V Điện áp đầu vào (giới hạn): 6-20V
Số chân Digital: 14 (of which 6 provide
Dòng điện DC trên mỗi chân I/O: 20 mA
Dòng điện DC trên chân 3.3V: 50 mA
Flash Memory: 32 KB (ATmega328P) of which 0.5 KB used by bootloader
Tốc độ thạch anh: 16 MHz
Board mở rộng Arduino Motor Shield L293D là một module chuyên dụng cho điều khiển động cơ, dễ sử dụng và có nhiều chức năng Nó hỗ trợ lập trình với Arduino thông qua thư viện, sử dụng IC L293D để điều khiển động cơ DC Các chân của module tương thích với Arduino, cho phép cắm trực tiếp vào board mạch Arduino Uno để lập trình một cách thuận tiện.
Thông số kỹ thuật đáng chú ý:
Nguồn hoạt động: 5VDC từ Arduino
Nguồn cấp cho động cơ: 4.8~35VDC
• 2 động cơ bước công suất nhỏ (< 600mA, 4.5~36VDC)
• 2 động cơ RC Servo Tích hợp ngõ ra cho các chân Analog của Arduino: Có
Tích hợp nút nhấn Reset: Có
Động cơ giảm tốc DC là một loại động cơ quay phổ biến, thường được sử dụng để tạo ra chuyển động cho bánh xe Trong dự án này, nhóm đã quyết định sử dụng động cơ 5V DC để phục vụ cho mục đích của mình.
Module Bluetooth HC-05 là linh kiện hỗ trợ truyền thông không dây, cho phép trao đổi dữ liệu ở khoảng cách ngắn thông qua công nghệ Bluetooth Được thiết kế dựa trên chip BC417, HC-05 có kích thước nhỏ gọn, dễ dàng cài đặt và sử dụng, với mọi tính năng cần thiết đã được tích hợp Mạch bên trong tương thích với nguồn cấp 3.3VDC và 5VDC, phù hợp cho nhiều ứng dụng khác nhau Module này hoạt động ở hai chế độ MASTER và SLAVE, mang lại sự linh hoạt cho người dùng.
- MASTER: module sẽ tự động dò tìm thiết bị bluetooth khác và tiến hành pair chủ động mà không cần thiết lập gì từ máy tính hoặc Smartphone
- SLAVE: người dùng cần thiết lập kết nối từ Smartphone, laptop, USB
Sử dụng Bluetooth để dò tìm module và kết nối với mã PIN 1234, sau khi kết nối thành công, bạn sẽ có một cổng Serial từ xa hoạt động với BaudRate 9600 Các chân của module cũng cần được chú ý để đảm bảo hoạt động hiệu quả.
- EN: chân chọn chế độ hoạt động AT Mode hoặc Data Mode
- +5V (VCC): chân cấp nguồn, nguồn điện dương với điện áp 5V
- GND: Nối với chân nguồn GND (Mass) hay nối đất
- TXD và RXD: đây là hai chân UART để giao tiếp logic
- STATE: chân này dùng để báo trạng thái kết nối của bluetooth (ít được quan tâm)
Thông số kỹ thuật (tham khảo tại: dientutuonglai.com): Điện áp hoạt động: 3.3 ~ 5VDC
Mức điện áp chân giao tiếp của thiết bị là TTL tương thích với 3.3VDC và 5VDC Dòng điện tiêu thụ khi thực hiện Pairing là 30 mA, trong khi sau khi Pairing, dòng điện hoạt động trong chế độ truyền nhận bình thường chỉ còn 8 mA Tốc độ truyền khi giao tiếp qua UART có thể được điều chỉnh theo nhu cầu sử dụng.
57600, 115200 baud Giao thức giao tiếp: Chủ và tớ (Master and Slave)
Truyền điện: ≈ 4 dBm, class 2 Độ nhạy: ≈ -84 dBm tại 0.1% BER
• Không đồng bộ: 2.1 Mbps (max)/160 kbps
Bảo mật: Xác thực và mã hóa
Thiết lập UART mặc định: tốc độ truyền 38400 hoặc
9600 (baud), N, 8, 1 Mật khẩu module HC-05 mặc định: 1234 hoặc 0000
Sơ đồ thiết kế mạch điện
Với sơ đồ khối đã phân tích và danh sách linh kiện đã chuẩn bị, phần thiết bị nhúng sẽ được kết nối theo sơ đồ mạch điện đã định sẵn.
Để mô tả rõ hơn về các kết nối, hình ảnh kèm theo bảng chú thích dưới đây cung cấp thông tin chi tiết và rõ ràng về từng kết nối, giúp người đọc hiểu rõ hơn về chủ đề này.
Bảng thiết kế chi tiết:
- L293D đã ghép nối chân tương ứng với các chân của Arduino để tạo thành một khối như hình ảnh minh họa
- Bảng nối mạch giữa động cơ với Driver Shield L293D: Động cơ L293D
(Cắm 2 dây động cơ vào tương ứng 2 chân ở cổng của L293D)
- Bảng nối mạch nguồn điện với Driver Shield L293D:
- Bảng nối mạch cho Module bluetooth HC-05
Tiến hành xây dựng dự án
Xây dựng ứng dụng điều khiển trên điện thoại (Android)
Trong dự án, thành phần trực quan chính mà người dùng sẽ tương tác là ứng dụng điều khiển trên giao diện mobile Nhóm đã quyết định chọn nền tảng Android để dễ dàng xây dựng ứng dụng phù hợp với khả năng của các thành viên Do kiến thức còn hạn chế, nhóm đã chọn MIT App Inventor để phát triển ứng dụng Android Ứng dụng này sẽ cung cấp giao diện nhận các thao tác điều khiển hoặc giọng nói từ người dùng, từ đó gửi dữ liệu điều khiển qua Bluetooth đến thiết bị nhúng theo quy ước dữ liệu đã thiết kế.
Truy cập vào http://ai2.appinventor.mit.edu và đăng nhập vào tài khoản Google để quản lý các dự án Để tạo một dự án mới, sử dụng tính năng thiết kế (nút Design) để thiết kế giao diện hiển thị trên màn hình ứng dụng bằng cách kéo thả các thành phần cần thiết.
- Nút kết nối và ngưng kết nối: sử dụng hình ảnh biểu tượng bluetooth (hình ảnh màu xanh cho nút kết nối và mà đỏ cho hủy kết nối)
- Một label (nhãn văn bản) để hiển thị trạng thái kết nối
- Có 4 nút nhấn giữ di chuyển trái, phải, tiến, lùi tương ứng là các nút mũi tên điều hướng
- Một nút bấm với biểu tương micro cho chức năng nghe tiếng nói và chuyển thành văn bản (SpeechToText hay SpeechOrganizer)
Một label ghi nhận văn bản được tạo ra từ việc lắng nghe tiếng nói của người dùng Để ứng dụng hoạt động hiệu quả, cần có các giao diện hiển thị hỗ trợ trao đổi và xử lý logic Dự án này bao gồm các khối lập trình (Blocks) để thực hiện các chức năng cần thiết.
Khi nhấn nút kết nối, danh sách các thiết bị Bluetooth sẽ hiện ra Sau khi chọn Bluetooth của xe điều khiển, kết nối sẽ được thiết lập với địa chỉ đã chọn, và trạng thái sẽ chuyển sang “Đã kết nối” (màu xanh) Đồng thời, nút kết nối sẽ bị ẩn và nút ngắt kết nối sẽ được hiển thị.
Khi người dùng nhấn giữ các nút điều khiển tương ứng với mũi tên trái, phải, tiến và lùi, ứng dụng sẽ kiểm tra xem kết nối Bluetooth có hoạt động hay không Nếu có kết nối, tín hiệu văn bản sẽ được gửi qua đường ống kết nối Khi người dùng thả tay khỏi nút điều khiển, ứng dụng sẽ lại kiểm tra kết nối và nếu vẫn còn kết nối, tín hiệu văn bản “s” sẽ được gửi để yêu cầu xe dừng lại.
- Dùng biến voice để lấy giá trị khi người dùng nói Rồi tiến hành kiểm tra, nếu giá trị voice mà bằng với “Tiến”, “lùi”, “trái”, “phải” hoặc
Để dừng lại, người dùng cần gửi ký tự "f", "b", "L", "R" hoặc "s" theo quy định Nếu âm thanh ghi nhận không khớp với các ký tự này, ứng dụng sẽ thông báo "Không đúng", nghĩa là người dùng đã nói từ không hợp lệ cho việc điều khiển.
Tổng kết
Nhóm sinh viên xin chân thành cảm ơn thầy Đỗ Công Thuần, Tiến sĩ - Giảng viên bộ môn Kỹ thuật máy tính, người đã trực tiếp giảng dạy và hướng dẫn chúng em trong suốt quá trình học tập Chúng em cũng xin gửi lời cảm ơn đến các thầy cô trong bộ môn và nhà trường đã tạo điều kiện thuận lợi cho chúng em trong việc tiếp cận và trải nghiệm những kiến thức quý giá, đặc biệt trong bối cảnh dịch bệnh Một lần nữa, chúng em xin chân thành cảm ơn!
Nguyễn Duy Khai - Nguyễn Thị Trang
I Giới thiệu về đề tài
Trong cuộc sống hàng ngày, con người ngày càng có xu hướng tìm kiếm sự tiện lợi, đặc biệt là khi họ trở nên bận rộn hơn Việc điều khiển từ xa các thiết bị thay vì phải tương tác trực tiếp giúp tiết kiệm thời gian và công sức Kết nối không dây (Wireless) là lựa chọn tối ưu để giảm thiểu sự cồng kềnh trong không gian sử dụng Ngoài ra, điện thoại thông minh (SmartPhone) trở thành lựa chọn phổ biến nhờ tính gọn nhẹ, cho phép người dùng truy cập hầu hết các dịch vụ và chức năng của máy tính mà không cần mang theo thiết bị cồng kềnh.
- Ứng dụng được kiến thức về xây dựng các hệ thống nhúng đơn giản
- Tận dụng được sự tiện lợi của công nghệ không dây với kết nối từ xa trong điều khiển
- Phải là một sản phẩm được xem là “thông minh” Mặc dù khái niệm này có vẻ còn mơ hồ
- Ứng dụng được sự tiện lợi của SmartPhone (các ứng dụng Moblie) để đưa vào đề tài
VinGroup đã gây ấn tượng mạnh mẽ trong lĩnh vực công nghệ khi cho ra mắt dòng xe điện VinFast, đại diện cho Việt Nam trên thị trường toàn cầu Sự nổi bật của VinFast không chỉ nằm ở việc sử dụng năng lượng điện thay cho động cơ đốt trong, mà còn ở những tính năng tiên tiến và thiết kế hiện đại, tạo nên tiếng vang lớn trong ngành công nghiệp ô tô.
Hệ thống trợ lý hỗ trợ tài xế sử dụng trí tuệ nhân tạo để lắng nghe và hiểu yêu cầu từ người lái thông qua giọng nói Nó có khả năng thực hiện các lệnh mà người lái đưa ra một cách nhanh chóng và hiệu quả.
Nhóm nghiên cứu đã chọn đề tài "xe điều khiển cải tiến", một loại xe "robot" sử dụng kết nối không dây Bluetooth với điện thoại Android Xe được điều khiển thông qua giao diện ứng dụng và các lệnh bằng giọng nói đơn giản, giúp người lái dễ dàng thực hiện các thao tác điều khiển trong quá trình lái xe, đồng thời hỗ trợ nhu cầu tìm kiếm và truy cập thông tin, giải trí.
Đề tài này tập trung vào việc phát triển một xe điều khiển từ xa, sử dụng động cơ để tạo ra chuyển động cho các bánh xe, cho phép di chuyển trong môi trường thực Nhóm sẽ sử dụng Arduino Uno để xử lý việc điều khiển động cơ và sẽ trình bày chi tiết về phần này trong nội dung sau Để điều khiển xe, nhóm sẽ phát triển một ứng dụng Android trên điện thoại, kết nối với xe qua Bluetooth Người dùng có thể điều khiển xe thông qua các nút bấm trên màn hình hoặc bằng giọng nói, với các lệnh như tiến, lùi, rẽ trái, rẽ phải và dừng Hệ thống sẽ bao gồm ba thành phần chính.
- Xe điều khiển (phần thân xe và các động cơ)
- Ứng dụng điều khiển trên điện thoại
Và xe đi kèm các hoạt động vận hành: tiến, lùi, rẽ trái, rẽ phải và dừng lại Chi tiết về đề tài sẽ tiếp tục được làm rõ
3 Giới thiệu về công nghệ không dây bluetooth
Kết nối giữa xe và ứng dụng điều khiển trên điện thoại được thực hiện qua công nghệ không dây Bluetooth, cho phép trao đổi dữ liệu ở cự ly gần giữa các thiết bị điện tử Công nghệ này giúp truyền tải dữ liệu mà không cần sử dụng hệ thống dây vật lý Trong điều kiện lý tưởng, Bluetooth 5.0 có thể hoạt động hiệu quả trong khoảng cách từ 40 đến 60 mét.
Bluetooth hoạt động trên tần số sóng radio 2.4GHz, giống với công nghệ Wi-Fi, nhưng không xảy ra xung đột do bước sóng và phạm vi sử dụng ngắn hơn Để tích hợp Bluetooth, cần tuân theo các chuẩn nhất định, giúp các thiết bị nhận diện và tương tác khi kết nối Công nghệ Bluetooth mang lại nhiều ưu điểm và nhược điểm đáng chú ý.
Công nghệ không dây mang lại nhiều ưu điểm nổi bật, bao gồm việc không cần sử dụng dây cáp, không ảnh hưởng đến sức khỏe con người, và đảm bảo bảo mật cao Giá thành của thiết bị ngày càng giảm, cùng với việc tiêu thụ năng lượng cũng ngày càng thấp Hơn nữa, công nghệ này không gây nhiễu và có khả năng tương thích cao giữa các thiết bị khác nhau.
Mặc dù công nghệ mạng không dây mang lại nhiều tiện ích, nhưng vẫn tồn tại một số nhược điểm đáng chú ý Đầu tiên, tốc độ truyền tải dữ liệu thường thấp hơn so với các công nghệ khác Thứ hai, tốc độ có thể bị giảm khi có nhiều vật cản trong môi trường kết nối Thứ ba, khoảng cách kết nối còn hạn chế so với những công nghệ mạng không dây tiên tiến khác Cuối cùng, thời gian thiết lập kết nối thường kéo dài, gây bất tiện cho người sử dụng.
Kết nối Bluetooth là giải pháp phù hợp để xây dựng hệ thống, đặc biệt khi yêu cầu không quá phức tạp như đề tài mà nhóm đã đưa ra.
II Phân tích hệ thống
Với những yêu cầu đã đặt ra khi lên ý tưởng về đề tài, chúng ta có thể hình dung toàn cảnh hệ thống
Hệ thống bao gồm 6 khối chính: nguồn điện, khối xử lý, Driver động cơ, hai động cơ (đánh số 1 và 2), module bluetooth và ứng dụng trên điện thoại di động SmartPhone.
Nguồn điện là khối quan trọng trong hệ thống nhúng, mặc dù không tham gia trực tiếp vào các hoạt động logic và trao đổi dữ liệu Nó được coi là "trái tim" của hệ thống, chịu trách nhiệm cung cấp năng lượng cho tất cả các khối khác (trừ thành phần điện thoại di động) để đảm bảo chúng hoạt động hiệu quả.