Halloween Forum banner

1 - 15 of 15 Posts

·
Registered
Joined
·
14 Posts
Discussion Starter #1
hello all,

I am working on building a BSC2 or PIC based driver for my 3 axis skulls. I am already using the SSC-32 servo controller. My Plan is to capture the serial data from the PC that is running a VSA routine. Once I have the serial data from PC, I should be able to load the data into the extended memory of the BSC2SX. I could then create a couple of individual routines and make my skulls independent props.

I haven't yet pulled the data on the serial port from VSA. Has anybody played around with this data yet? I am curious to its format, does it follow the same format as Lynx-term?

If this hasn't been done in detail on this forum, I would gladly give the details/progress here, if people are interested.


Any help would be appreciated.

Joe
 

·
Registered
Joined
·
310 Posts
Hi Joe,

I would be concerned that unless you are doing very basic routines I doubt you will be able to store all the data required onboard a PIC or Basic Stamp. You would have to store the serial commands but also the timing info as to when to send the commands. If you planning on making the skull 'talk' this would be an enormous amount of data. You would probably have to incorporate some kind of storage like an SD card or USB flashdrive. I have never used a Basic Stamp so they may provide something like this already.

If you do go that route, You can view the user's manual for the SSC-32 here which has a pretty good tutorial on how to send serial command strings to the board.

The people who make VSA also make a "stand alone" controller like you are describing called the RAPU. With this board you develop your routines using VSA and then download your routines to a compact flash card ont the board. I went this route last year and it worked very well but there are 2 downsides with the RAPU - the cost is about $300 and for some bizarre reason, they did not build in a simple way of triggering a routine. I ended up building a "trigger" board using a PIC which sends RS-232 commands to the RAPU to start the routines.

Whatever you decide to do please keep us updated as there are many others on the forum thinking of the same things you are and wanting to know what you come up with.
 

·
Registered
Joined
·
14 Posts
Discussion Starter #4
Hey guys thanks for the links. the link to how sscs work, is great. I have looked into the RAPU, however the cost is a concern, and I heard there were issues things like triggers. I am planning on using the BS2SX and a extended memory module, however I will have to see how much data I will need to store for a routine. I am trying to use the equipment I already have. I will keep everyone posted on my progress.

Joe
 

·
Registered
Joined
·
14 Posts
Discussion Starter #5
azdude

you are absolutely right, I have to capture that timing info somehow. I have the serial string coming from the pc. However the BS2 or pic will just send it all at once...

I could have the BSC2 sample a serial input from the PC and count micro seconds between the txd line going from idle(mark) to start bit. I would then merge that timing info with the date srting.

going to give it a try...



So no trying to get the from VSA also.


any other ideas... would be welcomed

Joe
 

·
Registered
Joined
·
14 Posts
Discussion Starter #6
VSA RAPU export ?

Does anyone know what language the rapu export files are written in for v3.0/4.0?
 

·
Registered
Joined
·
490 Posts
Joe,

Another idea would be to export your VSA routine as a CSV file. Then you wouldn't have to store the routine live, but rather could 'download' it to the board. I imagine (but don't have direct knowledge) that the CSV shows each channel in 1/30 sec increments.

Did you need sound with this too? DMX support? What kind of input triggers do you think you'd add? I often thought about making something like the RAPU (before it existed). I agree, the price isn't trivial, but I'm pretty sure the development wasn't either. It seems to me, though, nowadays it's a better idea to pick up a netbook for the same price (or even lower).

Check out some of microchip and atmel's SPI EEPROMs. Those'll probably be useful.

- Hook
 

·
Registered
Joined
·
14 Posts
Discussion Starter #8
Hook,

I did look at the CSV export. There is no timing reference in that file. I am going to try and time it @ 1/30 sec and see what I get. I am also going to build a vsa routine to test this timing (1/30 sec) theory out.

I was planning on using the BSC2SX to trigger the VMusic2 for the audio and then have the BSC2SX send the serial data to the SSC-32. ther will be some sync issues to deal with.

As far as triggers, I have used motion detectors that will send +5vdc to the BSC2SX and start a routine. I plan on using a random number generator to select which routine it uses, if my eprom will have the room.

I use a laptop for my own display, but someone saw my skulls and I want to try and make them one that is easy to use and in a self contained prop.

Thanks for the eeprom idea's.

Let me get to timing this serial data...
will keep everyone posted.

Joe
 

·
Registered
Joined
·
14 Posts
Discussion Starter #9
vsa exported CSV format

Hook,

You were right the CSV is formatted to send serial data every 1/30 of a sec. I used a click track from audacity with 1 click per second. I then did a wave motion analysis of that wav file on a single channel (0). exported to csv file and here is what I got.

1600, -1, -1, -1, -1, -1, -1, -1, -1,
1050, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
1600, -1, -1, -1, -1, -1, -1, -1, -1,
1050, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1,
1600, -1, -1, -1, -1, -1, -1, -1, -1,

every 1/30 of second it updates the servos position. Then on the 31st string it moves channel 0 and on the 32nd string, 1/30th of second later it returns the servo to start position.

Great thanks for that timing info, I think I can work with that and a CSV export.
Gonna run with it.

Joe
 

·
Registered
Joined
·
14 Posts
Discussion Starter #11
The only thought I have given to that right now is, I will figure out the delay it takes to start the audio with Vmusic2, and then consider that when starting my Serial data to the SSC-32. I figure which ever one takes longer to actually start I will start first, and then delay the other to match the timing. I think as long as I build the VSA routine with the same wav file, I should be close. I may need to delay / speed up some serial data to the ssc_32 if the routines are long enough where I get some timing slips.

Maybe I will have to to build in a heart beat of sorts to time off of.


trying to test a quick routine without audio coming from the BSC2SX to the SSC-32 tonight.
Joe
 

·
Registered
Joined
·
112 Posts
I've never used VSA personally, but from what I understand, it takes the program that you entered on the PC and sends out servo signals to control your servos, right? I built a board that plugs in line (you plug the source of your servo signals in one side and you plug your servos in the other side) and it will intercept and record up to 4 servo channels simultaneously - up to 10 minutes of action. After the action has been recorded, you can dump all 4 servo recordings to a single EEPROM (by pressing a button) and place it on a small playback board which, when triggered, will replay the servo action. I have had feedback that it works perfectly with VSA, RC controllers, etc. The only thing that would be an issue is sound/servo sync. That might be handled using a separate sound-to-servo controller that would operate the jaw movements separately. If you triggered the playback and the STS at the same time, I think you would get good results...
 

·
Registered
Joined
·
14 Posts
Discussion Starter #13 (Edited)
first prototype working

okay here is my first prototype playing a short song by my daughter. I used VSA to make the sequence. I then exported it as a CSV. Did some modifications in excel, and then imported into my 3axis skull computer. I am not using all the memory in the computer now. Here is a quick demo. I can post more detail and what it cost me later.

first you will hear the background music that plays when no sequence is running. I have a PIR motion sensor that triggers random sequences. Then the computer will go back to background sequence after the first song. The second sequence is what I used to confirm the timing between the music/voice file playing and the skull timing. I was using a 1 second click sequence to sync up the movement of the jaw and the mp3 file that plays from Vmusic2.

http://http://www.youtube.com/watch?v=1GGf4HmjuWQ
 

·
Registered
Joined
·
14 Posts
Discussion Starter #14 (Edited)
standalone 3axis prop complete. standalone BS2SX computer

here is a video detailing what i have done to get this standalone prop to work. "Set it and forget it" it is in two parts I am publishing part two right now. thank you all for your help

 
1 - 15 of 15 Posts
Top