This repository contains the code for a robotic hand controlled through multiple interfaces including direct motor commands over serial, computer vision, and a GUI. The project explores different methods of interacting with a servo driven robotic hand using Arduino, Python, and OpenCV.
This repository is organized into three main folders, each representing a different way to control the robotic hand.
This folder contains code for directly controlling the servo motor through the Arduino Serial Monitor.
What it does
- Allows manual control of the servo angle using serial commands
How to run
- Open
Hand.inoin the Arduino IDE - Upload the sketch to the Arduino
- Use the Arduino Serial Monitor to send angle commands
This folder implements hand detection using a webcam and sends binary control signals to the Arduino via serial communication.
What it does
- Detects a human hand through the computer’s webcam
- Sends a 5 bit binary command to the Arduino based on whether it senses a figure is bent or not
How to run
- Upload
HandReceiveCV.inoto the Arduino using the Arduino IDE - Close the Arduino IDE to release the serial connection
- Run
HandDetector.pyto start the computer vision pipeline
This folder contains a Python based graphical interface for controlling the robotic hand.
What it does
- Provides a GUI with buttons and labels for controlling the servo
How to run
- Upload
HandReceiveCV.inoto the Arduino using the Arduino IDE - Run
app.py - Control the robotic hand using the GUI interface
py -m venv .venv
.\.venv\Scripts\activate
pip install -r requirements.txt