Project: Gesture Controlled Car
Overview: This project is a gesture-controlled vehicle that responds to tilts in multiple directions using a tilt sensor and DC motors controlled by an Arduino Nano. Built during middle school, it introduced me to motion-based input systems and real-time control of hardware. This project demonstrates how simple sensor data can be transformed into meaningful mechanical actions.
How It Works:
Tilt Sensor (Input): The sensor measures the orientation of the controller. Depending on the tilt along the X and Y axes, the Arduino interprets commands such as forward, backward, left, or right.
Arduino Logic: X/Y values are read using analogRead() from pins A4 and A5. Thresholds determine the direction: Forward → tilt in +Y direction Backward → tilt in -Y direction Left → tilt in -X direction Right → tilt in +X direction No tilt beyond thresholds → motors stop.
Motors (Output): The Arduino controls two DC motors through digital pins to translate the tilt into movement, allowing the car to respond intuitively to hand gestures.
Hardware Components Arduino Nano Tilt sensor (X-Y axis detection) 2 DC motors + motor driver (or direct pin control) Wheels, chassis, and sensor mount Connecting wires and computer (for power and code upload)
Skills & Concepts Learned: Sensor Integration: Learned how to read analog sensor data and translate it into actionable commands. Motor Control: Coordinated multiple motors to execute complex movements based on sensor input. Programming: Implemented conditional logic for real-time directional control. Debugging & Testing: Adjusted threshold values and motor logic to match physical hardware behavior, experimenting with multiple values to ensure smooth responses. Systems Thinking: Gained experience combining multiple subsystems (sensors, motors, controller) into a cohesive working system.
Code Highlights analogRead() is used to capture tilt sensor values in real time. Conditional statements map X/Y tilt ranges to motor outputs for movement. Threshold values are carefully tuned to distinguish between neutral and directional tilts. Motor pins (8, 10, 11, 12) are activated in combinations to achieve forward, backward, left, and right movement. No-movement condition ensures the car stops safely when the controller is level.
Possible Improvements: Calibrate the tilt sensor dynamically to adapt to different hand orientations. Implement smooth speed control (PWM) instead of on/off motor control for more precise motion. Add wireless control or Bluetooth connectivity for portability. Document wiring and sensor placement with diagrams and photos for reproducibility.