A robot combines computer-like processing, memory, and storage with motors and sensors that let software affect the physical world. Motors provide movement; cameras and other sensors provide information for the robot to act on. Robots may respond automatically to detected events or be operated by people nearby or remotely. section 1.3 section 1.1
Robots pair physical hardware for movement and sensing with software that turns those capabilities into tasks such as transport, detection, and interaction. section 1.1
A practical robot can be built incrementally. Python functions control power to separate left and right DC motors, producing forward and backward motion, turns, and spins. Cameras extend the robot beyond movement: live video can support face detection, QR-code finding, and actions based on what the camera detects. section 3.0 section 9.0 section 10.1
Common robot building blocks include:
- Drive hardware: DC motors turn wheels, with independently controlled left and right motors enabling directional movement. section 3.0
- Vision and sensing: a camera supplies live images for face detection or QR-code matching. section 9.0 section 10.1
- Actuation: a servo motor can move an arm to perform a physical action such as pushing an item. section 11.3
- Interfaces: keyboards, mice, joysticks, mobile phones, HTTP, SSH, and web applications can issue robot commands. section 1.1 section 11.5
QR-guided snack pusher
A camera watches a live feed while the robot travels along a track. When it finds a matching QR code, it stops at the destination. A reusable Python library can then read snack data from CSV, locate the code, and swing a servo arm to push the selected snack; a web application can call those functions. section 10.1 section 11.3 section 11.5
Small projects expose the same practical concerns that apply to larger robots: chassis design, motor and computer power, battery capacity, weight, and portability. Reusable libraries separate core robot behavior from interfaces such as a web control application. section 1.2.4 section 11.3

