May 20th, 2021—
Robots are often filled with a myriad of different sensors but being able to detect touch is still fairly tough. This is primarily due to needing a large sensing area, flexible surfaces, and usually having complex circuitry. Imagine a robotic gripper that uses several “fingers” to lift and manipulate produce, or a humanoid that can respond to feedback on its hands. Other technologies such as capacitive and vision sensors have been tried in the past, but both use complicated and expensive components. A team at the Department of Mechanical Engineering at UC Berkeley was able to engineer a solution to this problem by utilizing a novel combination a two-layer structure. The first layer is a conductive fabric that is responsible for sensing the contact force, whereas the second layer of four rubber elements senses where the touch took place.
On its own, the resulting signal is quite noisy, so the researchers used an Arduino to read in the raw analog data, filter it, and then send it to a computer for extra processing. Once this was done, a machine learning regression model was created to fine-tune the detection capabilities.
To test their device, the team placed weights of varying sizes on each corner to simulate a touch. As seen in the graphs below, the system is already quite accurate, and with more training it can become even better over time.
You can read more about how this sensor was made by reading the research paper here.
Images: Yang et al.