Propeller & Robots
GeorgeCollins
Posts: 132
A couple weekends back I got to go the Robogames in San Francisco. I entered my prop driven walker in the legged robot race. In my experience props are terrific controllers for robots for reasons that are probably obvious to anyone on this forum. They are easy to use to control multiple things at the same time and the timing is predictable and consistent-- key issues for robots. They are very powerful for the price.
I didn't see as many props on people's robots as I would have hoped. A couple times I got into discussions with people that were obviously very smart and good robot builders about what they thought about the prop. One guy said "its obviously the right direction, too bad it doesn't work." ?!
I tried to think of the reasons why props might not have been adopted:
- Lack of C or C++ at the start. I think compilers may exist now, but I know for me Spin was a turn off because I prefer not to learn a new language.
- 3 volts. There are a lot of sensors and circuits that work at 5volts, and that is another hurdle.
- Lack of good boards. Robot builders want small light boards to plug into. I like the SpinStudio boards, but they are bulky. I have seen a lot of cool boards for the prop, but I don't know how popular any of them are. Ideally you want a board you know a lot of other people are using. The control board here is pretty good, but a bit expensive.
- Inertia. People are used to Stamps, AVRs, Arduinos etc. I can tell a lot of people on this forum like to learn new things, but when you are building a robot you want to have as many known commodities as possible. So much else goes wrong.
I would like to see more Props used for robots, if only so I could benefit from the code and software they would develop.
George
I didn't see as many props on people's robots as I would have hoped. A couple times I got into discussions with people that were obviously very smart and good robot builders about what they thought about the prop. One guy said "its obviously the right direction, too bad it doesn't work." ?!
I tried to think of the reasons why props might not have been adopted:
- Lack of C or C++ at the start. I think compilers may exist now, but I know for me Spin was a turn off because I prefer not to learn a new language.
- 3 volts. There are a lot of sensors and circuits that work at 5volts, and that is another hurdle.
- Lack of good boards. Robot builders want small light boards to plug into. I like the SpinStudio boards, but they are bulky. I have seen a lot of cool boards for the prop, but I don't know how popular any of them are. Ideally you want a board you know a lot of other people are using. The control board here is pretty good, but a bit expensive.
- Inertia. People are used to Stamps, AVRs, Arduinos etc. I can tell a lot of people on this forum like to learn new things, but when you are building a robot you want to have as many known commodities as possible. So much else goes wrong.
I would like to see more Props used for robots, if only so I could benefit from the code and software they would develop.
George
Comments
Comes with schematics and code.
http://www.xtune.se/product_info.php?currency=USD&products_id=101
the prop is different. But the difference makes him so good.
Maybe one way is to show what could be done with the prop but with no other controller-board
can you document your circuits inside the sourcecode ?
did you ever have problems with a interupt-time-window ?
how many hours did you fiddle around with the code to make it fit into the time-window ?
with the prop dedicate a cog to it and don't care any more about interrupt-timings
how about a robot that drives to a "docking station" plugs in his VGA or TV-plug and shows something cool on the screen
or a robot with a monitor-head that twinkles with his eyes and moving his lips on the monitor while TALKING to you
how about playing multi-tone music
how about moving 20 servos at the same time
did you see the new propeller-board from schmartboards ?
wanna be a REAL robot freak ? Go get to now how 5V-sensors are interfaced to a different voltage level and then you know how to interface to ANY voltage-level
people that are fascinated by the IDEA of a robot and think "oh cool connect some wires between an MCU, sensors and motors click on some graphical symbols and the programming is done
and then it will serve me drinks let them stay with arduinos or what ever the like
best regards
Stefan
1. Not C dont want to learn a new language - though that should be better with ICC (though then 2 is harder)
2. Want to build a robot not write software for all the drivers I need, this comes from many micros have hardware for I2C, serial, PWM, etc. Whereas with prop its software. I know many of these have objects available but many of the robot people are happier understanding hardware than software.
3. Many people using AVR/Ardinuo for robots, many of the robot kits use these and people dont know how easy/hard it is to mod the existing kits.
I guess I should post the set of objects I use for my robots. I generally first bring a robot base up with a RC controller (either PC2 controller or VEX receiver) and then go from there. I have a small set of objects I use for this
1. RC controller - PS2 and VEX objects that are inter-changable - which one I use depends on what free at the time, how many pins I need (Ps2 uses 4, Vex uses 1), etc.
2. Motor - I have objects with similar interfaces for PWM (L293D,L298,TB6612, MC33887), Pololu micro serial controller, continous servo, etc.
this means that software bringing up a robot enough to drive around using a RC controller is very quick. I set the pin connections in a table and select which RC controller/motor controller and that is mostly it.
Kits. For example the arduino rover (http://www.robotshop.us/robotshop-rover-arduino-frame-hardware-2.html) has holes spaced that allow the prop protoboard to be mounted. There are other kits can be bought without the micro and have holes that can mount the prop prototype board.
John Abshier
imagine you have an atmega128 that does the main things and you have another
AtTiny reading in some sensor-signals.
Programming the AtTiny to just read in the sensor-signal will be easy as
you don't have to care about interrupts or things like that. There is a simple
loop reading in the value all the time and store the value into a variable.
Whenever you want to read in a sensorvalue with an atmega128- AtTiny-combination you would
need to code a communication-protocol as serial or I2C or SPI between them for data-exchange
Now imagine the read-in is as simple as calling a command: ActMotorTemp := Sensor.GetTemp1 !
You might say "OH THAT would be a dream to do it that easy" and if I could have this too for the serial interface, controlling servos
woooh wow !
- big smile on the face - well - with a prop it's almost that easy
the learning a new language-aspect
EVERY other microcontroller that I know works with C or some kind of basic
if somebody is familiar with C he has gone through the hell of setting up a toolchain editor compiler uploader
What would you say if you can get a c-compiler that works that way: start ONE piece of software
write your code press ONE button and it is uploaded into the MCU-memory and the MCU starts running ?
would be a great thing - oh well - you can do so with the propeller
about basic I only playewd around some days with BASCOM-AVR
but there you still have BASCOM and an uploader (like ponyprog)
a lot of mouse-pointing and clicking to get a new softwareversion running in the MCU
as we live in a free marcet economy why not doing a compairing of all the DETAILS?
compairing
- video signal generation
- the setup-time before a first program runs
- the number of keypresses / mouseclicks until a new softwareversion is running
- the complexity of the sourcecode filestructure
- the available sourcecode for additional hardware
etc.
@ the members that are familiar with the arduino too:
how does it work with the arduino even simpler like the propeller the same or complicated
best regards
Stefan
That robot is really cool. I had never heard of it. When you look at the BOE bot, part of what is good about it is that is has reached a critical mass.
I work in video games, and in that space multiprocessing is a dark and foreboding art. Particularly in the days of the PS2, where you had processors with very different capabilities and data paths.
Threaded programming is the way everything is going to be done. On most modern operating systems starting and stopping a thread is easy, and most desktops are multiprocessors-- everyone is going to be used to that.
There used to be a thread-- what do you want from the next prop? Like most people who use it, I thought more cogs over memory. But I think that to reach the people who aren't using it you might do better with the same number of cogs and more memory. It would let them get into it more in the way they expect.
Also-- I agree that we need to do more to show what is possible. Outputting sound or video is cool, but not that useful in this space. Being able to process an image from a small camera would be great, but it seems a little past the device to do that concurrently with other functions.
(Please don't answer, it's a retorical question)
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Toys are microcontroled.
Robots are microcontroled.
I am microcontroled.
If it's not Parallax then don't even bother. :-)
·
Mini-Din/PS2 connectors are for sale! 5 for $1! PM me if you wish to make an order.
Cheap·shipping unless specified!· ···· Order 100 get 25 FREE!····· About 500 left!!··