CHƯƠNG 1: GIỚI THIỆU: Giới thiệu tổng quan về đề tài như lý do chọn đề tài, mục tiêu nghiên cứu, đối tượng và phạm vi nghiên cứu, phương pháp nghiên cứu. CHƯƠNG 2: CƠ SỞ LÝ THUYẾT: Các lý thuyết được ứng dụng trong Robot như bộ điều khiển PID, các chuẩn giao tiếp UART, I2C, điều khiển Robot sử dụng ROS,. CHƯƠNG 3: THIẾT KẾ, THI CÔNG PHẦN CỨNG HỆ THỐNG: Tính toán, lựa chọn linh kiện cho cơ cấu, dựng kết cấu Robot bằng phần mềm Solidworks, thi công lắp ráp Robot. CHƯƠNG 4: THIẾT KẾ CHƯƠNG TRÌNH ĐIỀU KHIỂN: Phát triển chương trình điều khiển Robot và tối ưu hóa khả năng lập bản đồ và di chuyển tự động an toàn trong môi trường thực tế.
CHƯƠNG 5: KẾT QUẢ THỰC NGHIỆM: Trình bày những kết quả về phần mềm và phần cứng của Robot. CHƯƠNG 6: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN: Kết luận và phương hướng phát triển Robot. 2 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2. Tổng quan Mobile Robot Mobile Robot là một loại máy tự động có khả năng di chuyển xung quanh môi trường của nó[1].
Chúng có thể hoạt động tự chủ (Autonomous) hoặc được điều khiển từ xa (Teleoperated) bởi con người. Mobile Robot được sử dụng trong nhiều lĩnh vực khác nhau, chẳng hạn như sản xuất, nông nghiệp, thăm dò, cứu hộ, và giải trí.1 Mobile Robot hỗ trợ các thí nghiệm công nghệ nông nghiệp trên đồng ruộng (Nguồn: PHYSORG) Các thành phần chính của Mobile Robot Một Mobile Robot hoàn chỉnh cần có nhiều thành phần quan trọng. Một số thành phần không thể thiếu có thể kể đến như: Thân Robot, hệ thống điều khiển, các cảm biến và cơ cấu chấp hành. • Thân Robot: Thân Robot là khung cấu trúc cơ bản của Robot, được thiết kế để: - Chứa và bảo vệ các thành phần khác của Robot như hệ thống điều khiển, cảm biến, bộ truyền động, nguồn năng lượng.
- Cung cấp khung đỡ cho các bộ phận khác hoạt động. 3 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT Chất liệu chế tạo thân Robot thường là kim loại (nhôm, thép), nhựa hoặc composite. Thiết kế thân Robot phụ thuộc vào nhiều yếu tố như: - Loại Robot (Robot bánh xe, Robot chân, Robot bay, v.) - Môi trường hoạt động (mặt đất, nước, không khí) - Khả năng di chuyển (nhanh, chậm, leo dốc, v.) - Tải trọng (mang vác vật liệu, người) • Hệ thống điều khiển: Hệ thống điều khiển là "bộ não" của Robot, chịu trách nhiệm: - Thu thập thông tin từ các cảm biến về môi trường xung quanh. - Xử lý thông tin và đưa ra quyết định điều khiển phù hợp.
- Gửi tín hiệu điều khiển đến các bộ truyền động để Robot vận hành. Hệ thống điều khiển thường bao gồm: - Vi xử lý (Microcontroller hoặc Computer): Chịu trách nhiệm thực hiện các phép tính và đưa ra quyết định. - Phần mềm điều khiển: Cung cấp các thuật toán để xử lý thông tin và điều khiển Robot. - Giao diện người dùng: Cho phép người dùng điều khiển Robot, cung cấp hoặc giám sát thông tin Robot.
• Cảm biến: Cảm biến là các thiết bị thu thập thông tin về môi trường xung quanh Robot, giúp Robot nhận thức được vị trí, hướng di chuyển, các vật cản và các yếu tố khác trong môi trường. Có nhiều loại cảm biến khác nhau được sử dụng trong Mobile Robot, bao gồm: - Camera: Chụp ảnh và video để Robot nhận biết hình ảnh và vật thể. - Cảm biến LiDAR (Light Detection and Ranging): Sử dụng tia laser để đo khoảng cách đến các vật thể. - Cảm biến siêu âm: Sử dụng sóng âm thanh để đo khoảng cách đến các vật thể.
4 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT - Cảm biến IMU (Inertial Measurement Unit): Đo lường gia tốc, tốc độ và hướng di chuyển của Robot. - Cảm biến lực (Loadcell): Đo lường lực tác động lên Robot. - Cảm biến nhiệt độ: Đo lường nhiệt độ môi trường. • Bộ truyền động, cơ cấu chấp hành: Bộ truyền động là các thiết bị giúp Robot di chuyển và thực hiện các hành động khác.
Có nhiều loại bộ truyền động khác nhau được sử dụng trong Mobile Robot, bao gồm: - Động cơ điện: Cung cấp lực để di chuyển Robot. - Servo: Điều khiển chuyển động của các khớp Robot với độ chính xác cao. - Van thủy lực hay khí nén: Điều khiển chuyển động của các khớp Robot sử dụng lực thủy lực hoặc lực khí nén. - Cánh quạt: Tạo lực đẩy để Robot bay hoặc bơi.
• Nguồn năng lượng: Nguồn cung cấp năng lượng cho tất cả các thành phần của Robot hoạt động. Có nhiều loại nguồn năng lượng khác nhau được sử dụng trong Mobile Robot, bao gồm: Pin, Ắc quy, Điện lưới, Pin năng lượng mặt trời,. Tổng quan về giao tiếp truyền thông Trong lĩnh vực điện tử, giao tiếp truyền thông là quá trình trao đổi dữ liệu giữa các thiết bị hoặc hệ thống điện tử. Quá trình này bao gồm việc gửi, nhận và xử lý tín hiệu điện hoặc kỹ thuật số để truyền tải thông tin một cách chính xác và hiệu quả.
Giao tiếp truyền thông trong điện tử có thể được thực hiện thông qua các phương pháp có dây và không dây. • Giao tiếp có dây: Phương pháp này sử dụng các loại cáp như Ethernet, USB hoặc các đường truyền serial như UART, SPI, và I2C. Các giao thức này quy định cách dữ liệu được mã hóa, truyền tải và nhận giữa các thiết bị, đảm bảo sự đồng bộ và chính xác. 5 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT • Giao tiếp không dây: Phương pháp này sử dụng sóng điện từ như Wi-Fi, Bluetooth, và NFC để truyền dữ liệu mà không cần dây dẫn.
Công nghệ không dây cho phép kết nối các thiết bị ở khoảng cách xa và tăng tính di động. Hiệu quả của giao tiếp truyền thông trong điện tử phụ thuộc vào tốc độ truyền tải, độ tin cậy và khả năng chống nhiễu của hệ thống. Các hệ thống phức tạp như mạng lưới IoT (Internet of Things), hệ thống điều khiển công nghiệp và các thiết bị thông minh hiện đại đều dựa vào giao tiếp truyền thông để hoạt động. Giao tiếp UART a.
Tổng quan UART (Universal Asynchronous Receiver/Transmitter) là một giao thức truyền nhận điểm đến điểm được sử dụng rộng rãi. UART cho phép truyền nhận các gói dữ liệu một cách liên tục giữa các thiết bị chỉ với hai dây dẫn. Về cơ bản, trong giao thức UART, cả thiết bị nhận và thiết bị gửi dữ liệu đều sử dụng một tốc độ truyền và không cần dùng đến xung clock [3]. Những thành phần của giao thức UART Giao thức UART cần có Transmitter, Receiver và dây dẫn để hoạt động.
Transmitter hay bộ phát tín hiệu, sẽ tiếp nhận dữ liệu ở dạng parallel từ hệ thống, chuyển đổi sang tín hiệu liên tục ở dạng serial và gửi đi từng bit một. Receiver hay bộ nhận tín hiệu, sẽ tiếp nhận dữ liệu từ dây nối từng bit một, dò tìm để nhận ra ranh giới giữa các khung dữ liệu và chuyển đổi dữ liệu thành dạng parallel để hệ thống có thể sử dụng.2 Sơ đồ nối dây trong giao thức UART 6 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT c. Định dạng khung dữ liệu trong UART Hình 2.3 Khung dữ liệu trong giao thức UART Một gói dữ liệu được gửi đi trong giao tiếp UART thường có kích thước một byte kèm theo một số bit bổ sung hỗ trợ cho việc đồng bộ dữ liệu và xử lý lỗi. Trước khi đến gói dữ liệu, dây dẫn ở trạng mặc định mức cao.
• Start bit: Có 1 bit. Chuyển đổi từ mức cao sang mức thấp. Bit này có vai trò báo hiệu sự bắt đầu của gói dữ liệu được truyền. • Data bits: Thường có 7,8 hoặc 9 bit.
Đây là thông tin có ý nghĩa được gửi đi trong giao tiếp UART. Dữ liệu được truyền liên tiếp nhau và bit có trọng số thấp được truyền đi trước. • Parity bit: Đây là bit không bắt buộc phải có. Có 1 bit, Có nhiệm vụ phát hiện lỗi trong quá trình giao tiếp.
Tùy vào loại của bộ kiểm tra chẵn lẻ mà bit này có cách đặt khác nhau. • Stop bits: Có thể có 1 hoặc nhiều bit. Các bit này được chuyển từ mức thấp lên mức cao hoặc giữ trạng thái cao, trùng với trạng thái mặc định của dây dẫn. Stop bit đóng vai trò như một khoảng chờ để Bộ nhận tín hiệu sẵn sàng cho gói dữ liệu tiếp theo.
Tốc độ truyền trong UART Giao thức UART không sử dụng xung clock, thay vào đó là tốc độ truyền ở cả bộ phận nhận và bộ phận phát tín hiệu được đặt giống như nhau. Tốc độ truyền có đơn vị là bit trên giây. Một số tốc độ truyền thường được dùng trong giao thức UART là 4800, 9600, 19200, 57600, 115200. Tốc độ cao nhất có thể truyền với UART có thể lên tới 1500000 bit/s.
Ưu và nhược điểm của giao thức UART Ưu điểm: • Giá thành không đắt. Dễ thay đổi, sửa chữa. 7 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT • Sử dụng đơn giản. • Chỉ yêu cầu 2 dây kết nối.
Nhược điểm: • Khoảng cách truyền tải không được xa do chống nhiễu kém. • Dễ dẫn đến lỗi về đồng bộ hóa do không sử dụng xung tín hiệu. • Tốc độ truyền tải khá chậm khi so với các kiểu giao tiếp khác. Tổng quan về giao thức I2C Giao thức I2C là một chuẩn giao tiếp có sử dụng xung đồng bộ.
Giao thức I2C cho phép kết nối nhiều thiết bị điều khiển tớ nhưng chỉ cần kết nối hai dây dẫn do đó được sử dụng phổ biến trong giao tiếp giữa vi điều khiển và ngoại vi. I2C sử dụng xung clock để đồng bộ dữ liệu được truyền giữa các thiết bị. I2C dùng hai dây nối là SDA và SCL. Trong đó dây SDA mang dữ liệu và dây SCL mang tín hiệu xung để đồng bộ[4].4 Nối dây trong giao tiếp I2C Trong mạng I2C có thể có nhiều thiết bị điều khiển (master) và nhiều thiết bị tớ (slave).
Tất cả được kết nối với nhau bằng hai dây dẫn. thiết bị điều khiển đóng vai trò xuất xung đồng bộ trên dây SCL. Cả thiết bị điều khiển và tớ đều có thể gửi dữ liệu trên dây SDA. Hai dây SDA và SCL đều được nối với nguồn chung qua điện trở.
8 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT b. Khung dữ liệu trong giao thức I2C Hình 2.5 Khung địa chỉ và dữ liệu trong giao tiếp I2C Khởi tạo Giao tiếp: Quy trình giao tiếp I2C được bắt đầu bởi thiết bị điều khiển bằng cách chủ động kéo đường dữ liệu (SDA) xuống thấp trước, sau đó kéo đường đồng hồ (SCL) xuống thấp. Hành động này giúp thiết bị điều khiển chiếm quyền sử dụng bus I2C mà không bị xung đột với các thiết bị điều khiển khác trên bus. Truyền Địa chỉ Thiết bị: Mỗi thiết bị I2C được gán một địa chỉ I2C riêng biệt.