Đề cương khóa học
Tuần 01
Ngày 01
Giới thiệu
- Cái gì làm cho một robot thông minh?
Robots vật lý so với Robots ảo
- Robots thông minh, máy móc thông minh, máy móc cảm giác và Tự động hóa quy trình Robotic (RPA), v.v.
Vai trò của Trí tuệ nhân tạo (AI) trong Robotic
- Vượt quá "if-then-else" và máy học
- Các thuật toán đằng sau AI
- Học máy, xử lý hình ảnh, xử lý ngôn ngữ tự nhiên (NLP), v.v.
- Robotic nhận thức
Ngày 02
Vai trò của Big Data trong Robotic
- Lựa chọn dựa trên dữ liệu và mẫu
Cloud và Robotic
- Kết nối Robotic với IT
- Xây dựng robots có chức năng hơn có thể truy cập nhiều thông tin hơn và hợp tác
Bài nghiên cứu trường hợp: Robots công nghiệp
- Robots cơ khí
- Baxter
- Robots trong các cơ sở hạt nhân
- Phát hiện và bảo vệ trước bức xạ
- Robots trong các lò phản ứng hạt nhân
- Phát hiện và bảo vệ trước bức xạ
Ngày 03
Các thành phần phần cứng của một robot
- Động cơ, cảm biến, microcontroller, camera, v.v.
Các thành phần chung của robots
- Xử lý hình ảnh máy tính, nhận dạng giọng nói, tổng hợp giọng nói, cảm biến khoảng cách, cảm biến áp suất, v.v.
Ngày 04
Các khung phát triển để lập trình robot
- Các khung mở và thương mại
- Robot Operating System (ROS)
- Kiến trúc: workspace, topics, messages, services, nodes, actionlibs, tools, v.v.
Ngôn ngữ lập trình robot
- C++ để điều khiển cấp thấp
- Python để điều phối
- Lập trình nodes ROS bằng Python và C++
- Các ngôn ngữ khác
Ngày 05
Các công cụ mô phỏng robot vật lý
- Phần mềm mô phỏng và hiển thị 3D thương mại và mở
Các công cụ thiết kế các đặc điểm vật lý của robot
- Phần mềm CAD thương mại và mở
Bài nghiên cứu trường hợp: Robots cơ khí
- Robots trong lĩnh vực công nghệ hạt nhân
- Robots trong các hệ thống môi trường
Tuần 02
Ngày 06
Khoá học nhanh về Python
- Cài đặt và thiết lập phần mềm
- Các gói và tiện ích hữu ích
- Làm việc với các cấu trúc dữ liệu Python, toán tử, vòng lặp, điều kiện, hàm, phương thức, v.v.
- Viết một chương trình mẫu
- Dự án nhóm
Ngày 07
Chuẩn bị cho phát triển robot
- Thiết lập môi trường phát triển (ví dụ: Arduino IDE)
- Khám phá cú pháp ngôn ngữ Arduino (C/C++)
- Code, biên dịch và tải lên microcontroller
- Lắp ráp các thành phần phần cứng của robot Arduino
Ngày 08
Làm việc với các thành phần Arduino
- Cảm biến analog
- Cảm biến số
Làm việc với các mô-đun giao tiếp Arduino
- Mô-đun Bluetooth
- Mô-đun Wi-Fi
- Mô-đun RFID
- I2C và SPI
- Internet di động
Ngày 09
Xây dựng một robot
- Kế hoạch các tính năng và đặc điểm của một robot
- Thực hiện chuyển động của robot
Dự án nhóm
- Thảo luận và đánh giá
Ngày 10
Điều khiển robot
- Thực hiện bộ điều khiển
- Kết nối với robot (cùng dây và không dây)
Dự án nhóm
- Thảo luận và đánh giá
Tuần 03
Ngày 11
Lập trình robot
- Mô phỏng robot với Gazebo / ROS
- Hiểu node ROS
- Lập trình node bằng Python và C++
- Tin nhắn và chủ đề trong ROS
- Chương trình công bố / đăng ký
Dự án nhóm
- Bump & Go với robot thực
- Thảo luận và đánh giá
Ngày 12
Lập trình robot (tiếp tục)
- Khung trong ROS và thay đổi tham chiếu
- Xử lý thông tin 2D của camera với OpenCV
- Xử lý thông tin laser
Dự án nhóm
- Theo dõi vật thể an toàn theo màu sắc
- Thảo luận và đánh giá
Ngày 13
Kiểm tra robot
- Các công cụ kiểm tra mã của bạn
- Kiểm tra đơn vị
- Tạo bộ kiểm tra
- Tự động hóa các kiểm tra của bạn
- Giải quyết sự cố
Dự án nhóm
- Theo dõi vật thể an toàn theo màu sắc
- Thảo luận và đánh giá
Ngày 14
Lập trình robot (tiếp tục)
- Dịch vụ trong ROS
- Xử lý thông tin 3D của cảm biến RGB-D với PCL
- Bản đồ và điều hướng với ROS
Ngày 15
Lập trình robot (tiếp tục)
- Hoàn thành nhiệm vụ với ActionLib
Dự án nhóm
- Tìm kiếm vật thể trong môi trường
Tuần 04
Ngày 16
Lập trình robot (tiếp tục)
- Hoàn thành nhiệm vụ với ActionLib
Ngày 17
Lập trình robot (tiếp tục)
- Nhận dạng giọng nói và tạo giọng nói
- Giải quyết sự cố
Dự án nhóm
- Điều khiển robot bằng giọng nói
Ngày 18
Lập trình robot (tiếp tục)
- Điều khiển cánh tay robot với MoveIt!
- Điều khiển cổ robot cho tầm nhìn chủ động
- Giải quyết sự cố
Dự án nhóm
- Tìm kiếm và thu thập vật thể
Ngày 19
Triển khai robot
- Triển khai robot trong thế giới vật lý
- Theo dõi và bảo trì robot trong trường
- Sử dụng ứng dụng di động để điều khiển robot
Bảo mật robot
- Ngăn chặn sự can thiệp không được phép
- Ngăn chặn hacker xem và lấy dữ liệu nhạy cảm
Ngày 20
Phân tích dữ liệu
- Thu thập và tổ chức dữ liệu do robot tạo ra
- Hiểu dữ liệu thông qua các công cụ và quá trình trực quan hóa
Xây dựng robot cùng nhau
- Xây dựng robot trên cloud
- Xây dựng ứng dụng di động để tương tác với robot của bạn
- Tham gia cộng đồng robot
Tương lai cho các robot trong lĩnh vực khoa học và năng lượng
Tóm lược và kết luận
Requirements
- Kinh nghiệm lập trình trong C hoặc C++
- Kinh nghiệm lập trình trong Python (hữu ích nhưng không bắt buộc; có thể dạy trong khóa học)
- Kinh nghiệm sử dụng dòng lệnh Linux
Đối tượng học viên
- Lập trình viên
- Kỹ sư
- Nhà khoa học
- Kỹ thuật viên
Testimonials (1)
Tôi cảm thấy mình đã nắm được những kỹ năng核对后发现之前的翻译在最后部分偏离了目标语言 Vietnamese,进行了纠正并完成了句子: 我感觉到我已经掌握了需要理解ROS如何组合在一起以及如何在其结构项目所需的技能。 正确的越南语翻译应为: Tôi cảm thấy mình đã nắm được các kỹ năng cốt lõi cần thiết để hiểu cách ROS hoạt động cùng nhau và cách cấu trúc dự án trong nó.
Dan Goldsmith - Coventry University
Course - ROS: Programming for Robotics
Machine Translated