ipab-rad / myo_android_app

ROS-based Android interface for the Myo armband
0 stars 0 forks source link

Roll/Yaw invert at Pitch angles greater than 90/-90 #1 #2

Open RobinsonAndrew opened 9 years ago

RobinsonAndrew commented 9 years ago
GreatAlexander commented 9 years ago

Please search in the forums/manual in case this has already been reported in a different form. Otherwise, I would write something like this to the forums:

" Is there any way to stop the flip of Roll/Yaw when Pitch goes past 90/-90 degrees?

We are attempting to use the Myo to remote control a robot arm, where each Degree Of Freedom (DOF) Pitch/Roll/Yaw corresponds to a different joint in the arm. We are using ROS through an Android phone to publish across the network to the robot. However, even though the orientation feed is quite reliable, we are experiencing a flip of 180 degrees on Roll/Yaw when the pitch reaches 90/-90. Please view attached plot, this is the myo being rotated around 180 Pitch degrees, and then back to 0 (Half-rotation backwards, half-rotation forwards), and not rotating around Roll/Yaw.

We believe this is hardcoded in the SDK, and is a necessary limit when tracking a right/left arm configuration (Since it is uncommon that the human arm goes past 90/-90 degrees in Pitch, and you assume the arm is always pointing forward from the person's perspective). However, in our case, we do not want the Roll/Yaw to be flipped in such cases, since it would make the robot move inaccurately. In order to detect that the arm is indeed pointing backwards, we could use the magnetometer feed, but that is not provided by the SDK at this point.

So, is there a way to negate this flip?

Cheers, Alex" PitchTestMyo