For anyone who doesn't understand what "control" is, the following is a small example of the work of a "control engineer". In this case, the engineer is one of my students. He's an undergraduate in a class I taught last quarter; this YouTube video is a demonstration of his final project for the class:As shown, his controller manages to keep the helicopter stabilized in a position that gets set by the joystick. The computer "flies" the helicopter with a heading set by a human via joystick. When they push on the helicopter, they're simulating a disturbance like a heavy wind gust. The helicopter's controller quickly brings it back to its old state. What you don't see is that the controller has been designed to do this as smoothly as possible (e.g., to prevent "jerkiness" within the helicopter).
This is a concrete example of classical control design. What I do in particular in my own research is quite a bit different. However, the video is a nice demonstration about what "control engineers" (like me) do.
Personal weblog of Ted Pavlic. Includes lots of MATLAB and LaTeX (computer typesetting) tips along with commentary on all things engineering and some things not. An endless effort to keep it on the simplex.
Showing posts with label engineering. Show all posts
Showing posts with label engineering. Show all posts
Wednesday, June 24, 2009
Thursday, April 23, 2009
Warning: Quanser flexible joint uses different angle convention than motor
Quanser Academic makes a line of products, which you can see demo'd at their YouTube channel, that are sold to university laboratories as teaching aids for control theory. Today I noticed a funny undocumented quirk about one of those products. I have notified Quanser of this, and there is some indication that they will update their documentation to reflect this quirk. However, because their documentation is not on-line, it's hard to see how that update will ever reach people who have already bought these products.
I TA a graduate control lab, and today's lab had the students design and implement an LQR controller that made use of a full-state observer to control Quanser's flexible joint. The motor angle is measured by a shaft encoder (which is the output we use to drive our observer), and the arm angle is measured by another encoder. We don't need the measured arm angle because we're using a full-state observer, but we still capture it for comparison to our estimated arm angle.
The students build a controller that stabilizes the plant to a moving equilibrium that tracks a square wave. At every transition, the observer trajectories had some peaky transients, as is expected, but it appeared like they were always in the wrong direction for the arm angle and its speed. I dismissed this as peaking, but one group wanted to investigate further, and so I had them track a sine wave instead. What did we find? The arm angle and speed estimates were always EXACTLY 180 degrees out of phase with the measurements.
I was shocked, and so I looked into it. Visually, I could tell that the FLEXIBLE JOINT's ANGLE ENCODER is mounted UPSIDE DOWN with respect to the motor's angle encoder. That means that rotating the motor to the "right" produces a positive angle even though rotating the JOINT to the right produces a NEGATIVE angle! The observer had it right; it was the MEASUREMENTS that were incorrect! (I built a minimal example to test my hypothesis, and what I say matched what I observed; the opposing rotations lead to equal signs)
Nowhere is this documented. Because this angle is not directly driven (it's coupled to the assembly via springs) and the arm+spring system is naturally stable and fast, this POSITIVE FEEDBACK doesn't lead to destabilize the system unless you have extremely high gain. So I'm guessing no one ever noticed. Multiplying the measurement by -1 restored intuition. I drilled down into some Quanser demo code, and I found that they do the same thing in their controllers. I have no idea why they would not document this in their rotary joint docs. Do they expect everyone to go through all of their MATLAB and Simulink code?
I could understand this error if the flexible joint was a generic component made by a different company, but the joint is solely for the purpose of connecting to the motor, and so it would make sense that its encoder orientation would match the motor encoder orientation! At the moment, we need different gains for both.
I TA a graduate control lab, and today's lab had the students design and implement an LQR controller that made use of a full-state observer to control Quanser's flexible joint. The motor angle is measured by a shaft encoder (which is the output we use to drive our observer), and the arm angle is measured by another encoder. We don't need the measured arm angle because we're using a full-state observer, but we still capture it for comparison to our estimated arm angle.
The students build a controller that stabilizes the plant to a moving equilibrium that tracks a square wave. At every transition, the observer trajectories had some peaky transients, as is expected, but it appeared like they were always in the wrong direction for the arm angle and its speed. I dismissed this as peaking, but one group wanted to investigate further, and so I had them track a sine wave instead. What did we find? The arm angle and speed estimates were always EXACTLY 180 degrees out of phase with the measurements.
I was shocked, and so I looked into it. Visually, I could tell that the FLEXIBLE JOINT's ANGLE ENCODER is mounted UPSIDE DOWN with respect to the motor's angle encoder. That means that rotating the motor to the "right" produces a positive angle even though rotating the JOINT to the right produces a NEGATIVE angle! The observer had it right; it was the MEASUREMENTS that were incorrect! (I built a minimal example to test my hypothesis, and what I say matched what I observed; the opposing rotations lead to equal signs)
Nowhere is this documented. Because this angle is not directly driven (it's coupled to the assembly via springs) and the arm+spring system is naturally stable and fast, this POSITIVE FEEDBACK doesn't lead to destabilize the system unless you have extremely high gain. So I'm guessing no one ever noticed. Multiplying the measurement by -1 restored intuition. I drilled down into some Quanser demo code, and I found that they do the same thing in their controllers. I have no idea why they would not document this in their rotary joint docs. Do they expect everyone to go through all of their MATLAB and Simulink code?
I could understand this error if the flexible joint was a generic component made by a different company, but the joint is solely for the purpose of connecting to the motor, and so it would make sense that its encoder orientation would match the motor encoder orientation! At the moment, we need different gains for both.
Labels:
annoyances,
control systems,
engineering,
estimation,
laboratory,
observer,
quanser
Thursday, June 07, 2007
Wireless Power Transmission
Farewell, wires? Power beamed through air
‘WiTricity’ can light up lamps and laptops; system touted as safe, efficient
Power cables and even batteries might become a thing of the past using a new technique that can transmit power wirelessly to cell phones, laptops, MP3 players, household robots and other electronics.
Scientists lit a 60-watt light bulb from a power source 7 feet (2 meters) away with their new technique, with no physical connection between the source and the appliance. The researchers have dubbed their concept "WiTricity," as in "wireless electricity."
Soljacic and his colleagues devised WiTricity based off the notion of resonance. One well-known example of resonance can be seen when an opera singer hits the right note to cause a champagne glass to resonate and shatter. Two objects resonating at the same frequency tend to exchange energy efficiently, while interacting weakly with objects not resonating at the same frequency.
Instead of sound, the MIT physicists focused on magnetic fields. Most common materials interact only very weakly with magnetic fields, so little power would get wasted on unintended targets. "The fact that magnetic fields interact so weakly with biological organisms is also important for safety considerations," said Soljacic's colleague, MIT physicist Andre Kurs.
Labels:
electricity,
engineering,
MIT,
news,
power,
technology
Sunday, February 04, 2007
Do (Reuters) reporters know absolutely nothing about everything?
UPDATE: It was pointed out to me by a post on Nanotechnology Today that the Professor who heads up the research group that built the "demon" said (speaking about J. C. Maxwell):"As he predicted, the machine does need energy and in our experiment it is powered by light. While light has previously been used to energise tiny particles directly, this is the first time that a system has been devised to trap molecules as they move in a certain direction under their natural motion. Once the molecules are trapped they cannot escape."Again, what's going on at Reuters?! This quote is EXACTLY the opposite of their summary (quoted below).
It's just silly that the article "1867 nanomachine now reality" has gone the extra mile to be completely worthless. It's also silly that CNN has decided to put this in their "Offbeat news."
The experiment described in the article involves Maxwell's Demon, which is a thought experiment involving a "paradox" of statistical thermodynamics. However, nowhere in the article is this paradox ever mentioned. In fact, they go so far as to say this:
His mechanism traps molecular-sized particles as they move. As Maxwell had predicted long ago, it does not need energy because it is powered by light.
Now, I'm guessing that the scientists involved said that Maxwell's paradox was a paradox because his little demon did not require additional energy. However, this device doesn't cause any paradox because their demon DOES require additional energy IN THE FORM OF LIGHT. As I explain to my fourth graders, light is energy. Nearly all of the things that end in "cycle" in the study of earth and life science are driven by the energy brought from the sun in the form of light.
Anyway, the article completely misses the point and is filled with lots of misunderstandings and statements which could generously be called wrong.
Do they have editors at Reuters? To cut costs did they just fire them all and hire the cast of Who's the Boss? instead?
Labels:
cnn,
engineering,
entropy,
maxwell's demon,
news,
physics,
reuters,
science,
statistics,
thermodynamics
Subscribe to:
Posts (Atom)
