Hi all,
I'd like to share a video I just took of my full size Lost in Space B9 robot that's controlled by two EZ-B controller boards. Right now they are controlling limited movement and voice response of a few motors, lights and sound files played from a Sparkfun MP3 Trigger board. Although I'm just starting with the animation and have more building on the actual robot the result (mostly thanks to the EZ Robot controller board) is shocking. Please have a look at this (4 minute) You Tube vid and enjoy.
Please excuse some Technical camera lighting and sound issues. This is the first time I'd made and posted a vid online.
EDIT 8/2/13: Just realized I have no good pictures of how my B9 will look when complete. Here's one of the actual TV robots from the 60's TZ show Lost in Space and one recent shot of where I'm at with my build over 1 1/2 year after I started. Enjoy:
Thanks, Dave Schulpius
Other robots from Synthiam community

Haydenbot's Hayden's First Robot Captain America

Mattbrailsford's Omnimc

Thanks Alan. I really appreciate this. Sounds like this will work.
I want to set up Virtual servos. Where do I start looking for them. Unless I totally missed it, I don't see a control. I think I remember seeing them inside another control somewherever. Looked all over and can't seem to find or figure out how to get started. Thanks!
They are in each control that uses servos. Start with a "V" instead of a "D" for the port number.
Similarly, in scripts, just reference them as Vx. i.e. Virtual port 12 would be V12.
Alan
Outstanding! Thanks Alan. I knew it was something EZ like that.
I'm sitting on the jet heading home from vacation so I don't have ARC to work with. However I've been trying to wrap my mind around the multiple script suggestion. I use this a lot in my project. One script waiting on another to send a veritable. However I'm having trouble understanding why I would need to keep track of servo position. Couldn't I just send the Kangaroo position from the AP script? If you're still willing a sample project would be very appreciated when you have time.
I'll definitely put together an example. Didn't get to it this weekend, but maybe in the next couple of days.
The idea is that you can use the auto-position control to move motors instead of servos.
You could do the same thing having a script for every possibe set of movements, but auto-position is just so easy to use for building complex animations, that being able to add non-servo motors that react to the position of virtual servos opens up a lot of capabilities.
Alan
Actually I've been using separate scripts to build animations that use both motors and AP frames. It is tedious. I'm looking forward to exploring this over the next week.
OK. Attached is a sample project, based on my modified ROLI. However, I learned 2 things making this.
One, the speed setting in AutoPosition doesn't set the servo speed, it controls the speed between AutoPosition steps within a frame, so you you can't read a variable in order to set the motor speed (or at least not using GetServoSpeed() on the virtual port).
Two, I didn't realize that you can assign a script to every frame in an autoposition, so this may be redundant. You can just attach a movement script or multiple movement scripts to each frame to drive the motors. I think you still need at least one servo or virtual servo in each frame in order to use AutoPosition at all, but it might make this example redundant.
That being said, the steps and speed function built into the AutoPosition frames may be useful for managing the position and speed of a motor being used like a servo easier than scripting all of hte steps, so this example may have some utility, so:
Open the project. Connect to an EZ-B (to start with, I would do it with one without any servos or other devices connected since the auto-position is trying to drive a number of real servos as well as the virtual one, and you don't want it to actually send your servos commands).
Start the Elbow Position script.
Execute the various actions in the AutoPosition object. The Elbow Position script will display the position of the virtual servo. In a real project, you would instead have commands that set your motor to the equivalent position.
Note: I have a sleep step to slow down the operation a bit, but it makes the position changes larger. You may need to tweak it, and depending on how quickly your motor can respond to commands, you could remove it.
Alan VirtualServoDemo.EZB