Using data glove with RIOS?

I’ve just joined a group that purchased an AL5B arm for use in magnetic resonance imaging (MRI) experiments. Because using normal input devices like a playstation 2 joystick won’t work with the MRI (and I haven’t been able to find an MRI-compatible PS2 controller), we’re using an MRI-compatible data glove (5DT data glove 5 MRI).

We have some software that reads the glove output and converts it to serial output for controlling the arm’s servos. However, since the RIOS software provides a nice inverse kinematics (IK) engine, I would love to be able to use it to control the robot. Unfortunately, after reading through the documentation, I don’t see a simple way to do this using the data glove. I was hoping there might be an API I could hook into that would accept the types of “IK commands” I can generate by clicking on the buttons in the Moves GUI (for example: increase Y, or even: move tip to X,Y,Z and take 2 seconds, etc.) Maybe I’m missing something and this can be accomplished via the socket client/server interface or using some other method?

Absent that, I see two main ways to get the glove to talk to the arm:

  1. Figure out how to emulate a PS2 controller, and convert the glove output to PS2 output (based on threads I’ve read in the Lynxmotion forums, I’m hesitant to take this route) or
  2. Add IK code to the software we already have for using the glove to control the arm. I found what looks like a nice IK example for an arm using Microsoft Robotics Developer Studio, so this might not be too hard.

Basically, I just want to do a sanity check and make sure I’m not missing something obvious before adding the IK code.

Thanks!

I can’t speak to the rios software, but what are the specific issues with the other controllers such that the glove has to be used? Also, what are the outputs of the glove that have to be converted?

My understanding is that essentially the more metal a controller has, the more it will interfere with the magnetic field in the MRI. The glove is special because it does not contain any metal parts. It uses fiber optics to detect the amount of bend in its five sensors, and there is a long (7m) fiber optics cable between the glove and any of its metal parts.

The glove uses a serial connection and outputs the amount of bend in its sensors.

Yesterday we went out and bought several different makes of PS2-compatible controllers. We’re going to take them apart and see if it would be possible to move most of the metal parts away from the controller (and the main part of the magnetic field). For example, we won’t need the motors used to provide the vibrations in the controllers and we might be able to run (magnetically shielded?) wires from the plastic parts to the circuit boards. We might even be able to use MRI-compatible fiber optic joysticks and buttons and connect them to the circuit boards ripped out of the controllers (just my speculation here). I’m working with a physicist to figure out whether we can minimize the resulting magnetic field disturbance to the point where it will not be an issue.

If the glove outputs rs232 type of serial data, then it should be possible to make a program to interpet the data from the glove and send the desired data to the arm controller. Probably need more info on the specs of the glove.

Thanks for your input, zoomkat.

We have some code that reads the glove sensor data and generates commands for the SSC-32. I was just hoping to be able to use the RIOS software for IK instead of writing it myself.

I was thinking that you wanted the arm to duplicate the movements of the hand in the glove, somewhat like the arms below.

youtube.com/watch?v=zZwnyZPkylk
youtube.com/watch?v=58DIp7NblzU

That was my first thought too, but we’re also interested in studying brain activity during learning. So we want to be able to manipulate how difficult it is to control the arm using the glove. We want to make it somewhat challenging, but not so hard that it’s really really hard to master. As a simple example, touching the tip of your index finger to the tip of your thumb might be an intuitive way to get the arm grip to close, but there won’t be as much learning involved. So we might reverse the mapping so that making that motion opens the grip instead.