1.Graphical User Interface (GUI)
The following GUI panel is to control the Robotic Arm.

2.Arduino Server
Arduino Server is a software installed on the Arduino. It receives the commands from MATLAB GUI and communicates with the Arduino Microcontroller.
3. MATLAB Client
Arduino MATLAB Support Package for Arduino enables you to use MATLAB
to communicate with the Arduino board over a USB cable. This Package is
based on a server program running on the board, which listens to commands arriving via serial port, executes the commands, and, if needed, returns a result.
Connecting Hardware
This Connecting Hardware push button is helpful to connect the arduino to the Matlab GUI
Attaching Servos
This Attaching button is helpful to connect (Activate) the servo motors.

4. Manual Robot control
Go home position
In this the robot goes to home position (predefined angles for each servo)
Pickup Tool
The Arm will start moving from homeposition and pickup the tool
Draw Line
Arm Starts Drawing the Line on the paper
Return Tool
Robotic Arm will return the tool
Go home position
It goes back to the home position
5. Robot Simulation
Simulate Path
Here it will simulate the image processing steps.
Simulate Full Motion
It will simulate every step.


6. Image Processing

6.1 Computing Image
Taking the snapshot of the line/pattern by using the camera
6.2 Applying Hough Transform
Hough Transform is generally used to identify shapes in the image like circles, squares etc. However, in this project we use it for dividing the pattern captured by the camera into discrete points. These points can then be passed to the robot.
6.3 Selecting Region of Interest
Although we captured the image with the camera, we still have undesirable points as noise. We can eliminate this by choosing the region of our interest.
6.4 Collecting Shape Points
By appropriately filtering the image and by using the
Hough Transform we generate and collect the shape points.
6.5 Polynomial Curve Fitting
We used the curve fitting tool to best fit the curve or pattern.

7. Reach Envelope
This is the maximum distance that the Arm can move
