Account Options

  1. Sign in
The old Google Groups will be going away soon, but your browser is incompatible with the new version.
Google Groups Home
« Groups Home
CH Robotics IMU Calibration
There are currently too many topics in this group that display first. To make this topic appear first, remove this option from another topic.
There was an error processing your request. Please try again.
flag
  6 messages - Collapse all  -  Translate all to Translated (View all originals)
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
 
From:
To:
Cc:
Followup To:
Add Cc | Add Followup-to | Edit Subject
Subject:
Validation:
For verification purposes please type the characters you see in the picture below or the numbers you hear by clicking the accessibility icon. Listen and type the numbers you hear
 
Tyson Messori  
View profile  
 More options May 21 2012, 1:54 pm
From: Tyson Messori <watchi...@gmail.com>
Date: Mon, 21 May 2012 10:54:37 -0700
Local: Mon, May 21 2012 1:54 pm
Subject: CH Robotics IMU Calibration

Hello

I've been working on calibrating my CH Robotics UM6-LT IMU for the last
couple days and am continuing to have problems getting rid of continuous
drift in the Euler angles.  I heard through the grape vine that others are
successfully using this IMU to balance robots and I'm curious if there are
any tricks or tips to be had.

I've gone through the Magnometer calibration process while the sensor is in
my robot (and being rotated around in a spherical manner) and seem to be
getting about the same calibration constants each time (indicating good
values).  I'm also only calibrating the gyro bias each time I power the
robot (as appose to doing a full gyro re-calibration that others on the
forums seem to have trouble with).  I've also tried reducing the diagonal
terms of the process noise matrix in order to reduce the influence of
the accelerometers on the angle estimation (from 0.1 down to 0.05).

I'm trying to use this sensor in my balancing robot, the goal of which is
to handle mild off road terrain (my thesis project at CalPoly).  The next
step I plan to take is to measure a temperature compensation coefficient to
reduce gyro drift.  I'm also working on implementing velocity control in
order to periodically reset my up vector whenever the robot is trying to
remain stationary.  Finally I'm going to re-attach the sensor as close as
possible to the center of rotation of the robot, to try and
reduce accelerometer over saturation.

Thank You for any help you can give,
Tyson Messori
Mechanical Engineering Master Student
California Polytechnic University, SLO


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Fabio Garcia  
View profile  
 More options Nov 26 2012, 2:45 pm
From: Fabio Garcia <fa...@blastpress.com>
Date: Mon, 26 Nov 2012 11:45:28 -0800 (PST)
Local: Mon, Nov 26 2012 2:45 pm
Subject: Re: CH Robotics IMU Calibration

Hi tyson, I'm building a similar robot, although it's not meant for off-road terrain. I've successfully used the ch-um6 to balance it, but I'm also noticing what seems like gyro drift influencing the Euler angles in some cases. When I get back to my workbench I'll be implementing sub-routines for UM6_ZERO_GYROS, and UM6_RESET_EKF.

At any rate, I think what is happening in my case has to do with something I read in the UM6 datasheet about the EKF failing when the IMU is at 90 degrees. I'm going to adjust the orientation of the UM6 on my chasis, and I'll respond again once I've ran some tests. Here is what I read in the data sheet:
" In Euler Angle estimation mode, there is a singularity in pitch angle at +/- 90 degrees.  This means that, at 90 degrees, the orientation of the sensor can be represented in more than one way, and the estimation algorithm fails.  This is a fundamental limitation of an Euler Angle attitude representation, and can be corrected only by adopting a different representation.  "

Thanks,
Fabio Garcia

PS: If you were able to correct this issue, please let me know what you did. Thanks!


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Tyson Messori  
View profile  
 More options Nov 26 2012, 6:17 pm
From: Tyson Messori <watchi...@gmail.com>
Date: Mon, 26 Nov 2012 15:16:45 -0800
Local: Mon, Nov 26 2012 6:16 pm
Subject: Re: [HBRobotics] Re: CH Robotics IMU Calibration

Hello Fabio

We were able to achieve some level of accuracy with the IMU sitting
parallel with the ground in it's balanced state by going through a process
of resetting the EKF upon startup, then waiting for thirty seconds while
the robot sits vertically for the EKF to stabilize   It still drifts after
a few minutes, so we still need to work on it.  I don't think we're running
into the issue you're talking about regarding Eular angles, as the robot
primarily sits around the 0 degree mark (I believe we're using the X
rotation angle).  I hope to hear more about your experiments to achieve
more stable and accurate results.

Sincerely,
Tyson Messori
Senior Mechanical Engineer
Santa Barbara Infrared (SBIR)


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Chuck Taylor  
View profile  
 More options Nov 27 2012, 12:52 am
From: Chuck Taylor <chucktaylor...@gmail.com>
Date: Mon, 26 Nov 2012 21:52:11 -0800
Local: Tues, Nov 27 2012 12:52 am
Subject: Re: [HBRobotics] Re: CH Robotics IMU Calibration

Fabio,
First, most of my experience was with the older ch6 IMU from chrobotics.
With this device I was able to balance and track heading without drift. I
recently started a new project with the um6 and I found the yaw drift was
unusable. Working with  CHrobotics they Identified the magnatometer axis
was reversed for the new chip they were using. They send me a new firmware
load and my yaw seams to hold well. If you have a relatively new unit you
may wast to contact CHrobotics to see if there is a firmward update
avaialble.

One the ch6 I did implement a reset ekf and zero gyros after a bad fall. It
would often trip the singularity. So I have also implemented them on the
UM6. But the um6 should be less sensitive the to singularity sense it is
recreating the Euler angles from the quarterions and they are
not supposed to be sensitive to the singularity.

I also had to implement some additional magnetic compensation tables. After
running magnetometer calibrations with the unit mounted in the robot I was
still not able to get evenly spaced yaw angles. So I added a table with
corrections every 45 degrees and a linear interpolation in between. I also
added a similar compensation table for vertical position. for each yaw
direction the reported vertical position was slightly off. So again a table
with corrections every 45 degrees and linear interpolation.  This error
is pretty small and was only added to make spinning smoother.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Fabio Garcia  
View profile  
 More options Nov 27 2012, 10:25 pm
From: Fabio Garcia <fa...@blastpress.com>
Date: Tue, 27 Nov 2012 19:25:30 -0800 (PST)
Local: Tues, Nov 27 2012 10:25 pm
Subject: Re: [HBRobotics] Re: CH Robotics IMU Calibration

Chuck, Tyson,
Thank you for your insight. I was able to achieve some measure of stability
earlier today by repositioning the sensor within my robot so that it sat at
a 45 degree angle along the x axis. I'm pretty sure the problem I am seeing
now has to do with tweaking the PID control loop. Adjusting the gains I saw
improvement, but soon after I started messing with it I caused some sort of
bad feedback loop which in turn caused the motors to stall and fried the
motor driver. In hindsight, the entire setup was is way too bulky for the
2A continuous driver I was using. I was able though to take some video
before they fried, which I've uploaded (http://fabiogarcia.com/BALIHOO.MOV
http://fabiogarcia.com/BALIHOO2.MOV). I'm going to order a new controller
next week that comes with a driver that can run up to 30A continuous
(pololu VNH2SP30), so I should be in good shape then.

Thanks again,
Fabio


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Fabio Garcia  
View profile  
 More options Nov 27 2012, 10:36 pm
From: Fabio Garcia <fa...@blastpress.com>
Date: Tue, 27 Nov 2012 19:36:57 -0800 (PST)
Local: Tues, Nov 27 2012 10:36 pm
Subject: Re: [HBRobotics] Re: CH Robotics IMU Calibration

Also, here is my code. I'm a software developer my trade, and I'm fairly
new to all of this low-level stuff, so I'd really much appreciate any tips
or pointers on my code.

http://fabiogarcia.com/balihoo.c

Thanks,
Fabio Garcia


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
End of messages
« Back to Discussions « Newer topic     Older topic »