Let's Make Robots!

PropRover (Propeller Sensor Platform) GPS (UGV readiness)

Unmanned Ground Vehicle UGV Multiple Sensor Platform

I have always wanted a robot with multiple sensors to absorb and shout out about the environment in which it lives.

So what you will be seeing with "PropRover" is a journey exploring not only common but also some weird and strange sensors.

It uses Parallax's 80Mhz 8cog Propeller processor - i am confident that it will be able to handle the things i will be throwing at it.

As much as possible i will post full code with links to all the "obj" files from the extensive object library  Propeller Object Exchange

Above is the basic "Soap-Box" chassis ....... you may notice my "PlankoTilt" system mounted on the front , ready for camera and various probes....

...(woooot did i not mention my latest pan tilt camera system.. (CtC transformed my wooden-cutout prototype with his Laser cutting Plexi-glass service (cheers Chris it works a dream)... this will all unfold with time).

I am using my "Elfish computer" , as it has already keyboard,mouse,audio and Bluetooth connectors built in.

The drive system to the GM motors are basic LD293s (working) - with "QRD1114 encoders" to pick up rotational info.

Update 2012.9.30 :- Omni Wheels attached , 3 videos attached showing possible Drive Combinations

Update 2012.9.16 :- GPS module (egg) hatches - yes its going to have a  UGV mode (Unmanned Ground Vehicle)

It seems the GPS unit is designed to fit into its new protective enclosure.

The GPS data is the simplest data to extract.. using a serial terminal OBJ..

Tricky part is the software extracting the coordinates from the data stream....which i have already written from another project.

Testing out of the window.........provided you have 180 degrees open sky (3 or four satellites will appear most of the time)

Example live data out......note i have blurred out part of my Coords.. in case a UAV decides to flyby.

Update 2012.9.15 :- Spaghetti Soup (LAN cable innards) , prototyping is a nightmare, No cross talking Yeah.

Sensors are Paralleling ....mix and match time.

Now variables are also ported out as Speech, this is infectious to listen too, and also a good debug tool.

.....and birds are appearing to be nesting.......

BTW :- My file_ing system is also visible ie "Flash Cards" - all my circuits are documented and stacked neatly this way.

Update 2012.09.10 :- 8 Channel 12 Bit ADC

Analog inputs are always useful and the simple addition of a MCP3208 provides 8 Channels of 12Bit Analog to Digital conversion..

• 100k samples/second
• 1, 2, 4 or 8 channels
• Low Power: 500 nA typical standby, 400 μA typical active.

The Spin OBJ i am using not only reads basic Analog input but can also Average the value and also it has a frequency counter built in (this may come in useful for Audio sampling).

The ADC chip has a couple of modes , one for direct analog input and another for differential input.

For testing have i wired up a Thermister, 3 Potentiometers and an LDR....(room for extra sensors)

Update 2012.09.05

Lots of data flowing in needs some house keeping.... so i have installed a 2G MicroSD card ....(no extra components required)

One neat thing with the Propellers Spin IDE is the Character map where you can draw circuits into your code....


Update 2012.08.31  7-Segment Debug Egg and Binary input switch Plus Vocal Tract OBJ and Singing Seven Demo OBJ

           With all these sensors its getting more and more of a challenge to debug and switch-in various processes "on-the-fly"

So i have made the a 7-segment and switch arrangement to help and give extra feedback.......

Also coming into the forefront is the Audio system - AKA Stereo amplified speakers.

The propeller need "NO" extra component to provide Speech synthesis and Stereo spacial widening and positioning ..Yes what you hear comes direct out of the propeller.

....now its just a case of routing the sensor data to the speech OBJ and if the demand is high enough i will post the sound clips from the "singing monks" (yes 4 polyphonic monks)

Update 2012.08.28    Sensor Tower installed and First compass video added .....Lasy Susan edition....

Update 2012.08.23     First 4 Sensor capsules complete and connector system finalised

Looks like my "Plug&Play" idea might be plausible now.

Sensirion SHT-11 Temperature/Humidity/Dew-point Sensor       SHT-11 OBJ

BMP085 Pressure/Altitude/Temperature Sensor.      BMP085 OBJ

Here is first data .... needs to be averaged ... and not sure why first 2 values are invalid !!

NB. this is not corrected to local barometric pressure referenced to sea level (more about that soon)

I live @ 765M so you can see the uncorrected error...

3 Axis Gyro (hacked out of a Wii-Motion+ add-on)    Wii-Motion OBJ

  1. U6 Gyro  IDG600 InvenSense Dual axis gyro 'X and Y Axis
  2. U3 E x3500w EPSONTOYOCOM Crystal Gyro-Sensor single axis 'Z Axis

Sample gyro data , here you can see a backward/forward tilt response on the x-axis

(in this case samples were taken every 1/10 second.....it goes muchmuch faster than this)

Normal static probe data hovers around 0,0,0  ..... averaging required to reduce noise.

HM55B Compass module     HM55B OBJ

All sensor data so far has been displayed via the serial port - meaning sensor data is easily manipulated.

The propeller Serial Terminal "obj" allows control over the cursor position....

Below is a simple graphic showing live data with sensor showing the East direction.

Connector system are 0.1" inline header sockets

I figured 6 pins as standard

  1. 3.3V
  2. gnd
  3. Spare 01  (led ..thought cool idea to light them up ,or switch,etc)
  4. Spare  02   ditto
  5. SCL    I2C clock
  6. SDA    I2C data

For those astute LMRs another sensor idea is lurking in the photos above  :-)

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Yes ... that's the stuff....mood rings....however cutting the card into strips and wrapping around my finger pains me :-i

The "mood card" is relatively fast to respond, and picks up easily temperature gradients ... will have to find a pipe to test, contrasting temperatures work well, however the temperature range is limited (but insulating materials could help).

BTW :- when you place it on a dead body it stays black........

I may have to place it on a cd tray(Y axis) and place a sensor (simple arc servo would do) scanning the X axis, but i have still to check out a colour RGB & phototransistor arrangement.

Chameleon effect would be possible but i think a bit difficult to control and keep stable, ducted hot air maybe.....

Thanks for the input....gives me more avenues.


Question: What dead body did you use to proof your statement :-)

A heating thingy could be mounted on an moving thingy to draw picture from behind the card...

Maybe under-rating a resister with over-rated current would do the trick... it would be in the 25C range i guess.

Lovely job (as always! ).  One thing I noticed is that the rear wheels didn't seem to be touching the table ?

Have you thought on wether there would be problems with interactions of your sensors depending on where mounted - if they were all up the tower would a compass module affect a GPS and so on?

Keep up your great work.

Yes indeed its doing a "Wheelie"..... half a ping-pong ball mounted as a slider ;-), object of this foray was to prove compass concept and to dial in and tune the feedback control based on heading set-point - 4 wheel drive comes later ..... or sooner if i decide to change front to omni wheels.

The Tower concept ....... for one, i know that the compass needs to be mounted as far away as possible from the magnets/metal and EMF generated by the motors , as you can see it seems to work. As for the interaction between neighbour sensors.....your guess is as good as mine at the moment , i am also very much  "In tension" as i am presently  marrying the probes of sorts together. There are a lot of cogs to distribute and  work out, though a lot of the maths cogs can be shared.

Re:-GPSs. I have found they are pretty bomb proof provided the antenna can see free sky, so this sensor (yes its on the list as mine fits perfectly into a yellow egg) hopefully will not cause too much heartache


First feedback system (compass) has been installed and "Fun" maiden test caught on video :-)  .....

Spiral Tower will house most of the ancillary sensors....

Is it possible that sensor takes longer to start up than you allowed before checking the readings?

I like the idea of plug and play sensors Gareth. Are you planning on having the prop know what sensors are plugged in?

You could use a combination of your spare pins which could indicate up to 4 different sensors. Or an analog voltage output on one of the pins for a limitless number of sensors. Then your code can cope with any sensor you put in.

Think you could squeeze a gas sensor and tiny fan inside one of those eggs? Get it to find the smelliest person in the room!

As not alll of my sensors are i2c  that will be a neat way to id the modules.....i have an 8channel adc anyways ...

"Smelly socks"......with solenoid actuated deodorant spray attachment ...

with i2c doesn't one have to query a specific address for each product/item. If that is the case, Gareth only needs a list of possible sensors and the Prop can then query each one in order to find out "who" is on the i2c lines. Once that is done, it is a simple matter of having a flag variable for each sensor with a boolean 1 or 0. I would suppose one could even have the sensor sense routine off by itself and run said routine once a minute or whenever.