Motion Mirroring Robotic Arm
C, Mechatronics, Embedded Systems, I2C
Overview
As part of Northwestern’s microprocessor design course, my group and I created an Electromyography (EMG) controlled robotic manipulator. This allows a user to connect an EMG sensor to their arm to open and close a robotic gripper by simply opening and closing their hand. We also combined project with another group in the class who were controlling a 2 DOF robotic arm’s motion based off of IMU data. By combining these projects, we were able to create a system that would move a robot arm and control the gripper based off of the user’s motion.
EMG Gripper
This project was developed around the Microbit V2. Code is typically written to the Microbit in Python, however, we were writing directly to the Microbit’s microcontroller (nRF52833) in C. The end-effector itself is a mechanical gripper that opens and closes based off of the position of a connected servo. We controlled this servo with a PCA9685 servo driver over I2C. Additionally, we used two sensors in this project: an EMG sensor and a force sensitive resistor (FSR). The EMG sensor measures electrical signals in muscles that are generated from movement. This is attached to the users arm with electrodes and used to detect if the hand is closed or not. The FSR measures the amount of force that is applied to it. This is placed on the inside of the gripper and used to detect if the gripper is actively gripping something.
The basic operation of this system is that the output of the two sensors are constantly being read by the Microbit. If the EMG sensor gives a high signal, then the user is trying to grasp. When this is detected, PWM signals are sent to the servo driver over I2C in a loop, closing the gripper incrementally with each iteration. When an item is grasped, a forced is applied to the FSR, producing a high signal that is used to break the grasping loop and hold the gripper at a constant position. Once, the user releases their grasp, the gripper will then start to incrementally open, unless interrupted by another grasp command.
EMG Gripper + IMU Arm
When the EMG gripper is combined with the IMU controlled arm, the resulting system allows a user to manipulate the robot to perform various actions just by moving their own arm and hand.
The Team
EMG Gripper
- David Dorf
- Katie Hughes
- James Oubre
IMU Arm
- Nicolas Morales
- Hang Yin
- Felipe Jannarone