Đề cương khóa học
Week 01
Day 01
Introduction
- What is a smart robot?
Physical vs Virtual Robots
- Smart Machines, Sentient Machines, etc.
The Role of AI in Robotics
- Beyond "if-then-else" and the learning machine
- The algorithms behind AI
- Machine learning, computer vision, natural language processing (NLP), etc.
- Cognitive robotics
Day 02
The Role of Data in Robotics
- Decision-making based on data and patterns
The Cloud and Robotics
- Linking robotics with IT
- Building more functional robots that access more information and collaborate
Case Study: Industrial Robots
- Mechanical Robots
- Baxter
- Robots in Nuclear Facilities
- Radiation detection and protection
- Robots in Nuclear Reactors
- Radiation detection and protection
Day 03
Hardware Components of a Robot
- Motors, sensors, microcontrollers, cameras, etc.
Common Sensors of Robots
- Machine vision, voice recognition, speech synthesis, proximity sensing, pressure sensing, etc.
Day 04
Development Frameworks for Building a Robot
- Open source and commercial frameworks
- Robot Operating System (ROS)
- Architecture: workspace, topics, messages, services, nodes, actionlibs, tools, etc.
Tools for Building a Robot
- Tools for low level controlling
- Tools for orchestration
- Building ROS nodes in Python and C++
- Other languages
Day 05
Tools for Simulating a Physical Robot
- Commercial and open source 3D simulation and visualization software
Tools for Designing the Physical Characteristics of a Robot
- Commercial and open source CAD software
Case Study: Mechanical Robots
- Robots in the nuclear technology field
- Robots in environmental systems
Week 02
Day 06
Crash Course in Python
- Software installation and setup
- Useful packages and utilities
- Working with Python data structures, operators, loops, conditionals, functions, methods, etc.
- Writing a sample program
- Team project
Day 07
Preparing for Robot Development
- Setting up the development environment (e.g., IDE)
- Exploring the Python language (C/Python) syntax
- Coding, compiling, and uploading to the microcontroller
- Assembling the hardware components of a Python robot
Day 08
Working with Python Components
- Analog sensors
- Digital sensors
Working with Python Modules
- Bluetooth Modules
- Wi-Fi Modules
- RFID Modules
- I2C and SPI
- Mobile internet
Day 09
Constructing a Robot
- Planning the features and characteristics of a robot
- Implementing robot movement
Team project
- Discussion and review
Day 10
Controlling the Robot
- Implementing the controller
- Connecting to the robot (wired and wirelessly)
Team Project
- Discussion and review
Week 03
Day 11
Building the Robot
- Simulating a robot with Gazebo / ROS
- Understanding ROS node
- Building a node in Python and C++
- Messages and topics in ROS
- Publication / subscription paradigm
Team Project
- Bump & Follow with real robot
- Discussion and review
Day 12
Building the Robot (continued...)
- Frames in ROS and reference changes
- 2D information processing of cameras with OpenCV
- Information processing of a laser
Team Project
- Safe tracking of objects by color
- Discussion and review
Day 13
Testing the Robot
- Tools for testing your code
- Unit testing
- Creating a test suite
- Automating your tests
- Troubleshooting
Team Project
- Safe tracking of objects by color
- Discussion and review
Day 14
Building the Robot (Continued...)
- Services in ROS
- 3D information processing of RGB-D sensors with PCL
- Maps and Navigation with ROS
Day 15
Building the Robot (Continued...)
- Completing tasks with ActionLib
Team Project
- Search for objects in the environment
Week 04
Day 16
Building the Robot (Continued...)
- Completing tasks with ActionLib
Day 17
Building the Robot (Continued...)
- Speech and Speech Generation
- Troubleshooting
Team Project
- Controlling a robot using voice
Day 18
Building the Robot (Continued...)
- Controlling robotic arms with MoveIt!
- Controlling robotic neck for active vision
- Troubleshooting
Team Project
- Search and collection of objects
Day 19
Deploying the Robot
- Deploying the robot in the physical world
- Monitoring and servicing robots in the field
- Using a mobile app to control a robot
Securing the Robot
- Preventing unauthorized tampering
- Preventing hackers from viewing and stealing sensitive data
Day 20
Data Analytics
- Collecting and organizing data generated by the robot
- Making sense of the data through visualization tools and processes
Building a Robot Collaboratively
- Building a robot in the cloud
- Building a mobile app to interact with your robot
- Joining the robotics community
Future Trends for Robots in the Science and Energy Field
Summary and Conclusion
Requirements
- Programming kinh nghiệm về C hoặc C++
- Programming kinh nghiệm về Python (hữu ích nhưng không bắt buộc; có thể được giảng dạy trong khóa học)
- Kinh nghiệm với dòng lệnh Linux
Đối tượng
- Nhà phát triể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