We wanted to be able to provide greater safety to people that work in dangerous environments or with dangerous materials.
What it does
It reads in coordinates and movement of a user's arm in live-time and commands a robotic arm to mimic those motions almost instantaneously.
How we built it
We built it modulararly. We took in constant position inputs from a Leap-Motion sensor and ran it through a C++ code that translated it into traditional xyz coordinates. We then wrote these into an Arduino through serial input to control servo motors that each commanded an individual motion of the robotic arm.
Challenges we ran into
- We had trouble finding a usable version of the Leap-Motion SDK.
- We had issues come up with how to take the Leap-Motion input and generate usable servo position values.
- It took time to figure out how to direct the position values from the translated output through the serial port into the Arduino.
- Coming up with code that would accept standardized input from the serial port into the Arduino proved to be difficult.
- Using the input to generate movement in a more efficient fashion took a lot more time than we initially expected.
- We were stuck for a while due to a lack of understanding of serial port buffers. Our program stopped running after 14 seconds. It took us a while to realize that we did not clear the buffer the being used to write from the Arduino to the computer.
- Our final product took more power than expected so we had to find out how to use an alternate power supply. ## Accomplishments that we're proud of
- We took in and utilize inputs in real-time.
- We are proud of Rus for designing in an intuitive control scheme.
- We are proud of Tate for designing the servo motor control program.
- We are proud of Shravan for establishing a rea-time serial port connection to the Arduino.
- We are proud of us for completing a project that we thought, correctly, to be very difficult. ## What we learned
- We learned how to use a Leap-Motion and serial connection.
- We learned how to supply external power to an Arduino through the linear regulator.
- We learned how to power and control a quarter servo. ## What's next for Motion-tracking robotic arm
- We will create a gripping mechanism for the arm that will mimic the gripping motion of the user's hand.
- We want to design an arm that is more natural to control.
- We would like to increase the precision of the arm to allow it to be used in more detail intensive circumstances.