I was justg wondering if you could use the SEQ program as sort of a GUI for live control over a rover robot. I know it is possible to control motors ect using the SEQ a Jim and James did with the Johnny 5 a while ago, however those were pre-programmed sequences which were issued.
This is my idea: Create SEQ’s of the rover’s movements eg: forward, back, right turn, left turn, and some commands for an arm or pan/tilt. The robot would have a camera for visual navigation wirelessly. (A pinhole camera connected to a PC using a video capture card or just streamed to a portable DVD player or TV near my PC). TO control the robot, one would issue a seq. Ofcourse the bot would use a bluesmirf for wireless serial port access.
My question is: Does this sound like a good way to remote operate a robot from a PC rather than an RC controller? Or would it be a better idea to create my own GUI to issue commands to the SSC-32 through its serial port?
Another question would be if it is possible to hook-up a small pinhole camera receiver to a cheap PC video capture card and have live video transmitted to my PC rather than some other external device (TV etc)?
This isn’t something Im planning to do, its more of a What if and if Im willing to do this as a side project.
Does your rover use an SSC32 to operate R/C servos on your rover? If so, are they two continuous revolution servos?
I don’t think the servo position commands of SEQ were set up with continuous rotation servos in mind, 'tho it should work.
You can use a terminal program like Docklight to assign strings (sequences) to buttons. That’s what I’m driving both of my 'bots with when I want to send them commands from my PC. BlueTooth works fine. (I’ve described this before).
If you just want to send commands to a 'bot computer (do you have one on your 'bot?), then I’d suggest starting with the serial_CP3 program to be found in your PowerPod directory. (I’ve described this before as well).
Of course, you could create your own GUI to run your 'bot. Look for Visual BASIC 6 examples for the miniSSC (although uses old commands).
What strings (sequences) are you sending to your rover to run it now?
If I’m not mistaken, you send a 1500 ms pulse width for “neutral”, and 2200 mS (or whatever) for full forward. (etc, etc, etc) Differential wheel drive. No?
So you COULD just use two sliders to change the speed of your two drive servos with SEQ.
All of my rovers have been controlled by an RC controller. Im looking to make the rendition to programming all my bots. This is why this is a side project as well as another one which will be to build and program an autonmous BRAT jr. This is only for my interest in learning to program. Do you think it is possible for a person with no prior programming experience to build a GUI which controls a rover?
we shall see
Actually I did get a book a few years ago which came with a CD. Its how to program Windows with C# 2005. Im going to start reading and following its totorials. I know its not the best code to start out with, but this book is 1290 pages long. Looks interesting.
Probably the first thing to do is to take out the rc receiver and install the ssc-32. Run a serial wire from the computer serial port to the ssc-32 in the bot. Then you could start working on various programming approaches for controlling the bot. I don’t have the sequencer application, so I can’t speak to what you can do with it. The programming would depend on what you want in the way of a gui.
Sure, take out the rcvr, put in the AAB and the SSC32. Then you can start by using Lynxterm or a terminal emulator to start sending servo commands (strings
Code available for the hexapods has “com” control code available, and the CH3_serial program I mentioned will simulate a PS2 wireless joystick controller. Get that “link” (PC program to Atom 'Bot board) running, and then the Atom board can send command sequences to the SSC32. That should get you going!
A sabertooth motor controller connected to the SSC-32 works much the same as a CR servo. You start by sending the SSC-32 the commands to send 1.5mS pulses for the two channels. Then you send the commands to move the robot in a forward direction. For example 2.0mS for both channels. Now if you send just the position changes the motors will go to full speed immediately. However if you send the 2.0mS commands with a T of say 2 seconds the motors will soft start. That’s to say the motors will obey the proportional pulses as they transition from 1.5mS to 2.0mS. This will work very well and you can set up a forward as well as a stop command. For turning you could create a sequence that sends the commands to rotate in place, but then hold that position for a set amount of time, then send the stop commands. This will create a somewhat repeatable rotation. That is exactly what James did for the Johnny 5 project.
I noticed that in the videos, seemed he was controlling them to stop when he wanted. thanks Jim, again this was just an idea for my interest. Might not follow therough with this and go straight to the BRAT jr.
I would like to do something like that too! It looks really easy with VB to do youre own GUI. I started doing some GUI by purely programing (in C++ with bloodshed… works but it’s mighty complecated ). I think it will be easier with VB. What is bad is that my USB to serial is not working, I can’t do anything!!
If you get any progress done you could create your topic in projects, I would be intersted in seeing it!
If you want to do some simple tinkering with a gui, you might want to try justbasic (below). It is free and will work with the ssc-32. It has a pretty good support forum (bottom). I use it for tinkering with my ssc-32.
A web brouser based GUI like below can be made to be used with a web server like Apache. I use this for a lot of my testing as it is simple single click control. I looked at the SEQ user manual and in section 10 there is command line info. One might be able to use the command line to operate SEQ sequences over the internet. If the sequencer application can be operated from a batch file similar to the bottom, then web control SEQ sequences may be possible. I don’t have the SEQ application, so I can’t speak as to the exact commandline that may be needed (the quotes in the commandline might cause issues).