The Back Room
Charles

Using Flash, Arduino, Make Controller, and Control Anything Hardware For Museum Exhibits

byCharles on May.18, 2009, under Electrical Engineering, Hardware, Software

In the last few posts I have mentioned many of the projects I have been working on for the Theodore Roosevelt Inaugural site in Buffalo NY.  Last week, we finished the installation of the first floor and I wanted to share a few of the well-known pieces of hardware that we are using in the exhibits.

The Captain of Industry and Kinetoscope

The Captain of Industry and Kinetoscope

Arduino

The Telegraph on a Desk with Motion Sensor Beneath

The Telegraph on a Desk with Motion Sensor Beneath

The Arduino is being used in the motion sensing telegraph exhibit with a custom-made “shield” that allows more amperage to be supplied directly from the wall wart power source.  The shield uses a half-H driver as well as a diode configuration which provides sufficient protection from backward voltage spikes.  The shield also has a dip switch that allows users to change the message that the telegraph is outputting.  This was programmed using the nice cross-platform arduino IDE that is provided.

Making Things Make Controller and Application Board

The Making Things Make Controller and Application Board are being used in both the Kinetoscope and Captain of Industry exhibits.  We also use them routinely around the office for doing early phase prototyping.  I tested the Captain of Industry LED’s with it as well as the Telegraph.

The Captain of Industry

The Captain of Industry

I can’t say enough about how great the Make Controller is to work with.  The OSC command structure in combination with the open-source mcHelper make application development a breeze.  mcHelper uses sockets to connect to the xmlSocket class in ActionScript 3 for communicating with flash.  You can get a package of roughly six classes along with examples from the makingthings website that will have the make controller interfacing with Flash in no time.

The primary reason we are using the make controller in both of the physical interaction exhibits is due to the application boards’ ethernet connectivity.  In most installations, we run everything from a centralized climate controlled machine room; cat5e is a great cable for running long distances through buildings and the application board has a small footprint which fits nicely into any exhibit.

The make controller application board even allows you to add on serial port connectivity at 3.3v.  In the Captain of Industry, we used a bit-shifter from Sparkfun in combination with the application board in order to deliver RS232 level serial commands to a Control Anything relay board.  Using the makingthings provided ActionScript classes, we are able to easily use the OSC command structure to rapidly send serial commands to the Control Anything relay board.

Control Anything RS232 Relay Board

The Control Anything relay boards are being used for many of the lighting effects on the Captain of Industry.  The great thing about this board is the wide range of voltages it can handle.  Although the command structure of using serial characters is a little confusing at first, once you get them down; controlling the relay board is pretty straightforward.  I would imagine that anyone with an elaborate holiday light display in mind would salivate over these relay boards.

They come with an in-depth manual as well as a Windows testing application that can be used to easily switch the relays.  It’s also nice that National Control Devices provides the mechanical schematics for the boards.  I had a few electrical issues with our prototype model, but was able to solve the problem thanks to the provided diagrams.

As a parting tip; if you are trying to send serial characters using Windows hyperterminal, you must hold down the alt key and put a zero on the front of all of your commands.  So if I wanted to send the serial character 254 I would do the following.

Hold down alt,  hit zero, hit two, hit five, hit four, and finally release the alt key.

:, , , ,

2 Comments for this entry

  • Kyle Johnson

    Hey there – I was hoping you could help me with a small issue with my control anything boards…

    I am able to send commands and open and close relays with no problem, but in Linux, only 1-way communications is working! I can not read voltages or the status of relays. If you are using this board with linux, how did you go about getting 2-way communication working?

    Thanks!
    Kyle

  • Charles

    Hi Kyle.

    I tested this board on a Windows Vista machine. It is deployed in the exhibit directly connected via RS232 to a MakingThings Make Controller.

    I used hyperterminal in order to directly send commands to the board when testing in Windows. I actually never read the status of relays. In development I always used a fire and forget paradigm. So I have only ever used one-way communication with the board!

    I know the Windows debugging program allows you to read the status of the relays; but I don’t ever recall trying to read them directly from hyperterminal.

    Are you using Minicom on your Linux machine? Is it possible that the character encoding is set to something different then what you can use to actually see the ASCII numbers? In Hyperterminal I would always get weird characters back because I couldn’t ever configure it correctly to just display the ASCII numerical values.

    If I remember correctly my board echo’s an ASCII numerical value back every single time I enter a valid command in order to acknowledge the receipt of the command. Are you at least seeing these echo’s?

Leave a Reply

Looking for something?

Use the form below to search the site:

Still not finding what you're looking for? Drop a comment on a post or contact us so we can take care of it!

Visit our friends!

A few highly recommended friends...