Java: Real time, real cool

At the end of Tim Boudreau's NetBeans plug-in talk was a demonstration of how NetBeans had been extended to support Real Time Java development. RT Java is about using Java to do control systems that interact with the physical world. In the demo, the Java program was interacting with an x86-based embedded controller that was driving a motorized pendulum.

During Tim Boudreau's NetBeans plug-in talk there was a demonstration of how NetBeans had been extended to support Real Time Java development. RT Java is about using Java to do control systems that interact with the physical world. In the demo, the Java program was interacting with an x86-based embedded controller that was driving a motorized pendulum. The program's purpose was to, from a resting position, make the pendulum balance straight upright, kind of like a Segway vehicle.

You won't see this guy on one of those commercials

One different thing about real time programming is that you don't typically run the code on the same machine you're developing on. So the developers created a wizard where you can specify a host, port number, password, and location on the target. When you run, you get output from the target displaying on the window just like you normally would.

Code is written in a "no heap" context, which is not affected by garbage collection. The thread has its own heap that can be accessed at any time, even when GC is running. As long as that thread doesn't touch anything on the regular heap it's ok. Plus there's a special heap called the "immortal" heap that both contexts can touch.

There seemed to be more interest in the mostly-male audience in how they were making the pendulum stay upright than in the NetBeans integration being demoed, but in the interests of good taste I'll leave the obvious jokes to your imagination :). In any case, there will be a session later this week that goes into RT programming and JSR01 in more detail for those interested. 

Update: The movie of the Java-controlled pendulum in action is now online.

Newsletters

You have been successfully signed up. To sign up for more newsletters or to manage your account, visit the Newsletter Subscription Center.
See All
See All