Identifying our hardware needs
Based on our storyboards, I extracted or derived the following hardware tasks:
- Drive the robot base
- Carry the robot arm
- Lift toys
- Put toys in the toy box (arm length)
- Sensors:
- Arm location
- Hand status (open/close)
- Robot vision (camera) for obstacle avoidance
- Provide power for all systems:
- 5V for Nvidia Nano
- 5V for Arduino
- Arm power – 7.2V
- Motor power – 7.2V
- Onboard computers:
- A computer that can receive commands remotely (Wi-Fi Nano):
- Runs ROS 2
- Runs Python 3
- A computer that can interface with a camera
- A computer that can control motors (Arduino)
- An interface that can drive servo motors for the robot arm (servo controller)
- A computer that can receive commands remotely (Wi-Fi Nano):
Now, let’s take a look at the software requirements.