Real Time Updating using I/O


#1

As a simulator engineer, we already use 2D graphics to replicate intruments on panels that update in essentially real time. I would like to create a 3D model of these panels to bring it to the next level. I imagine it shouldn’t be too difficult for me to create an interface with sketchup using Ruby that passes my IO points and gets translated into a dynamic property attribute of a component, but I am worried about processing time and interaction with controls. On our simulator we handle 10s of thousands of IO points (~50,0000) some digitial, and some analog. We can turn handswitches to start a pump for example, and we can read a meter that gives us pump amps. I’m pretty sure that handling that much IO in 3D sapce will be too machine intensive, but I am curious if any one has tried.
Also, we would need to be able to “turn” a handswitch. For example, if a handswitch is clicked it will start or stop the pump.
Am I way out of left field or has anyone tried out these concepts before with SketchUp?


#2

I don’t know if they have been tried, especially at that scale. 50,000 animations in SketchUp may well bring SketchUp to its knees. But yeah, this is all possible and I agree it shouldn’t be too hard.

In order to interact with a Component/Group, you would need to create a SketchUp Tool. Your tool would then track mouse and click events and communicate the events to whatever handlers are required to update the SketchUp UI and your connected devices.

There was a real-time data plugin for SketchUp named “pachube” but it appears to have been sold and re-branded. I have a copy of it, but all the heavy lifting was done in a Javascript file hosted online which is unlikely to still be available.


#3

it’s worth having a look at this site…
I haven’t used it…
I bought the plugin, but it wasn’t mac compatible so they gave me a full, prompt refund…

http://www.simfonia.fr/SAT/index.php?page=FAQ&PHPSESSID=ukdkk08ceba62ucv5qhaorinu6

if nothing else it show SU’s potential for this type of thing…
john


#4

(I also used to be in simulation design. Worked for 4 different aircraft simulator companies and a temp at Sikorsky Aircraft doing cockpit instrument wiring diagrams.)

SketchUp is a GUI design application, that has only rudimentary animation. (Moving the camera and panning and zooming, as well as simple component animations such as swinging doors, etc.)

I would never attempt to use SketchUp as an actual simulation engine.
It is just not designed for that. It cannot run in full screen mode at this time.
And there are too many other things going on (which you will not have control of,) that prevent true “real time” IO processing.

However, I would not rule out using SketchUp to create models, that are used by other simulation engines, such as the Microsoft Simulator product family.

Also, creating scenery for those products in SketchUp should be doable.

So my question to you is “What is the next level” ?


#5

John,
This plugin has some promise, at least according to their documentation. I will get in contact with them for more info. Thanks.


#6

Dan,
(My Bachelors is in Aerospace Engineering - small world).
My simulator is a nuclear plant control room, there isn’t much in the way of scenery, I would only need to move needles on a meter, and move hadswitches whenever they are turned. However, the shear amount of IO will utlimately be the undoing of this idea.
You have a valid question - “What is the Next Level”? Right now its whatever I want it to be! Our current 2D panel drawings are an instructor interface that allows the instructors to see whats going on at the panels. They also have the capability to insert malfunctions, override panel IO, manipulate switches in software space, etc. Each panel is its own drawing and it uses something similar to Visio as its undelrying code.
I would like the instructors to quickly navigate and zoom in to a desired spot on a panel, but have the entire panel in front of them. Plus, 3D gives the WOW factor, which is a plus.
This would not be the simulation engine itself, simply an interface to the hard panels actually on the simulator.


#7

I wouldn’t rule this out so quickly. In the early 90’s, I took mainframe CAD piping & instrumentation drawings and used them as the UI for a process controls system, so that mfg workers had the real drawings in front of them on the screen. I used NeXT computers talking to other systems to update screens, and it conveyed information much better than the SCADA systems of the time.

Now systems like this are much better, but you could improve by conveying information much more life-like with realistic 3D modeling, so you have a better idea where the instrumentation is, what it physically looks like. You could all be managed with scenes to give multiple views of information.

I wouldn’t underestimate the computer speed of doing this: I pulled this off with RS422 and a token ring to ethernet network spewing a Unix shared memory blob around between computers and ridiculously slow Display Postscript. It can be done.