Roy Brewer's Posts (5)

Sort by

I thought some of you might be interested in this:

Control of Mobile Robots

Magnus Egerstedt (Georgia Tech)

About the Course
This course investigates how to make mobile robots move in effective, safe, and predictable ways. The basic tool for achieving this is "control theory", which deals with the question of how dynamical systems, i.e., systems whose behaviors change over time, can be effectively influenced. In the course, these two domains - controls and robotics - will be interleaved and we will go from the basics of control theory, via robotic examples of increasing complexity - all the way to the research frontier. The course will focus on mobile robots as the target application and problems that will be covered include (1) how to make (teams of) wheeled ground robots avoid collisions while reaching target locations, (2) how to make aerial, quadrotor robots follow paths in the presence of severe disturbances, and (3) how to locomotive bipedal, humanoid robots.

Unfortunately, it looks like we'll have to wait until next year for the course to start.

- Roy

Read more…

Complementary filter demo

This is a demonstration of complementary filters on pitch and roll attitude using 3gyroscopes and 3 accelerometers running on a custom Quadrotor controller board. Filters are coded in Python on the laptop with VPython rendering of spinning 3D cubes. Sensor processing code is running on the ATMega644p-based controller and is written in C. For Python code, see: For details on the custom Quadrotor sensor board, look here:

I know its not as impressive as DCM, but you have to start somewhere :-)

(Inspired by Brian Wolfe's demo-

- Roy
Read more…

Accelerometer question for IMU Experts

I'm sure there's plenty of experienced IMU builders on this board who can resolve this question (see here: (starting at the 5th comment) and here: (starting at post #443) for more discussions). In fact the question may even have been answered here earlier (in which case I apologize for re-asking it, but I couldn't find it). The question has both a practical aspect in terms of IMU component & s/w design and a theoretical one in terms of trying to understand the relevant physics. Read carefully, because I don't think this is a noobie question.Assume a 3-axis accelerometer is mounted close to the center of gravity of a quadrotor with the Z axis of the sensor aligned reasonably well with the thrust axis of the rotors and the X and Y axes aligned with 2 of the arms of the quad. If the flying quad is at a non-zero bank angle (i.e. is rotated about the x-axis from a level hover), what will the Y axis accelerometers read? In this case, the vehicle will be accelerating laterally in the earth axes (and possibly vertically depending on the magnitude of the thrust vector compared to the gravitational one). One school of thought claims that the Y accelerometer in this case should read effectively zero (assuming that aerodynamic drag, vibration due to rotors, noise, errors due to sensor misalignment, coriolis and centripetal forces, etc. are either negligible or accounted for). The reasoning is that all the forces should be coming from the rotor thrust, which is always in the Z body axis for a quad. By a similar argument, the X axis accelerometer should also read zero for any pitch angle. (I think the argument holds to some extent for helicopters as well, but the force vector will not always be in the Z body axis direction due to rotor flapping.)The opposing argument is that there are plenty of quadrotors out there that use accelerometers to self-level, perhaps as part of a Kalman or complementary filter algorithm. It would seem unlikely for them to work as well as we know they do if the X and Y sensors were reading zero regardless of the vehicle tilt. How do we resolve this conundrum? Is the model of how accelerometers work flawed? I believe it is valid to model the resultant output of any accelerometer by determining the net force and subtracting the gravitational force vector. This works if the sensor is stationary (it will read as if it were accelerating away from the ground at 1 g), or if it is in free-fall (reads zero). Is this model correct in general for arbitrary motion? Are these other forces on the quad that I'm ignoring important somehow?I'd prefer if your answer includes one or more of the following: time history graphs of a FLYING vehicle (we know we can measure tilt of a stationary sensor), or a free body diagram, or a set of equations, or a reference to a textbook or paper. As I said, I'm trying to understand the physics of the situation.Here's a picture, if it helps: This shows the forces in the earth vertical axis as being balanced, but I don't think that condition is necessary for the X body axis accelerometer to read zero.Thanks in advance.- Roy
Read more…