amcdonley
Posts: 200
Joined: Mon Jan 26, 2015 5:56 pm
Location: Florida, USA

Rug Warrior Pi

Sun Jul 26, 2015 4:04 pm

Hello robo heads,

I've finally decided to get serious about updating the brain of my Rug Warrior Pro robot. There used to be hundreds of Rug Warrior and Rug Warrior Pro (RWP) robots scurrying about for university research, hobbyists, and education. My RWP robot is 15 years old now, and really needs to catch up to 2015 technology.

This is my bot "Pogo" photo album on Flickr: https://flic.kr/s/aHskgYejWe

(At the moment my Raspberry Pi B+ is playing OSMC attached to the living room television, and I am learning python via ssh.)

I started out thinking I would totally replace the RugWarriorPro brain board with a pi-plates dacplate, motorplate, and protoplate, but that seems too drastic. I'm now thinking to just remove the HC6811 processor and the character display, and just add level shifters and a MCP3008 DAC chip.

This would allow reuse of:
  • 7.2v 5000mah rechargeable C-cells
  • L/R motors (0.67f/s = 0.2m/s at 400mA)
  • 5v regulator (only 500ma so only useful on the rugwarrior board)
  • Motor Driver (two digital out and two pwm)
  • L/R Wheel Encoders (two digital in)
  • L/R Photoresistors (two analog in)
  • Bumper resister array
    (gives 1 analog input for 6 virtual bump directions)
  • L/R IR proximity sensors/oscillator/ir_detector
    (1 analog input for three directons)
  • Piezo Buzzer (digital out - annoying singing, beeps, siren sounds)
  • Mic/LM386 amp (analog in - never found use for it)
and the add-on sensors I have:
  • Sharp 10-80cm distance (1 analog input)
  • Temperature resistor (1 analog)
  • Pyro sensor (1 analog)
  • IR Remote Control (1 digital)
The existing HC6811 processor had some built in ADC analog to digital channels, so I will have to add an ADC chip, and level shifters if I keep the analog sensors at 5v. Haven't thought enough about that section yet.

The RugWarriorPro code library had assembly language PID motor control routines, so I am hoping to find that someone has written a Pi PID routine I can use from Python.

The RugWarriorPro only has about 32kbytes of usable program and data memory, but offers multi-tasking, static (global) variables for interprocess communication, and a good robotics function library. I have to investigate what Python robotics libraries exist, (after I finish UCS Python for Programmers.)

I'm hoping to get 6-8 hours compute time from my 3000mah rechargeable USB battery pack running the PI B+, and about 6 hours driving time. It probably won't be enough to leave the bot running while I go to work.

So that's the current plan for a brain update for my "Pogo". All pointers, comments and questions welcome.

Alan

amcdonley
Posts: 200
Joined: Mon Jan 26, 2015 5:56 pm
Location: Florida, USA

Rug Warrior Pi: Up alone all night

Wed Jun 15, 2016 2:00 pm

There is a natural anthropomorphism that happens when I spend a lot of time programming a robot. At first it is a just a bunch of hardware with no "life", but eventually I start to feel squeamish about issuing the shutdown command, like I am cheating an artificial intelligence (an AI) out of experiences. Ridiculous, but it happens.

Back in '99 and 2000, I programmed my Rug Warrior Pro bot for some of the "Vehicles: Experiments in Synthetic Psychology" , V. Braitenberg and wrote an article "I Sense, Therefore I Feel Moody (Behavior Management in Robots)"

There is a point at which I trust the robot will not harm itself if I leave it "experiencing" and turn my attention to something else for a while. Last night was that time.

I left it running two python programs - one the HC-SR04 ultrasonic distance sensor test. The second program is an analog pins test, running at sudo level. I have the 4-cell unregulated battery tap connected to ADC0 and my current sensor connected to ADC7. The two SG90 tilt/pan servos were holding at centers.

I started the programs after a full charge of the 7.2 v 5000 mAH cell bank last night, with the 4-cell tap reading 4.87v, and the system drawing 310mA.

This morning after 10 hours the system was at 4.5v drawing 335mA.

Based on "surviving" 10 hours without supervision, I decided to "leave the robot up", and left for work.

It will "decide on its own" to shutdown at 3.9 volts today, with the shutdown time on the remote terminal shell.

I'm starting to feel this is my robot's "ITS ALIVE!" moment.

klausf
Posts: 1
Joined: Thu Sep 17, 2020 8:44 am

Re: Rug Warrior Pi

Thu Sep 17, 2020 8:54 am

I am now retired (teacher) and would like to reactivate my old RugWarrior for my grandchildren. I am more of a software-chap but have a basic grasp of electronics due to my physics-diploma.

Currently I have problems to get the rotation encoders to work. How did you do it? Have you got some schematics you could perhaps send to me.

Any help would be greatly appreciated.

Klaus Füller, Kassel, Germany

amcdonley
Posts: 200
Joined: Mon Jan 26, 2015 5:56 pm
Location: Florida, USA

Re: Rug Warrior Pi

Fri Sep 18, 2020 1:15 am

klausf wrote:
Thu Sep 17, 2020 8:54 am
I am now retired (teacher)
Congratulations on retirement. My robot only came to "life" once I retired.
and would like to reactivate my old RugWarrior for my grandchildren.
That's everone's excuse for playing with robots. I reactivated my RugWarriorPro and loaned it to a college student. He never touched it, in preference for more modern tech.

If your grandchildren are young - a micro-bit based robot such as gigglebot https://gigglebot.io/ is great.

Image

If they are older - perhaps a RaspberryPi based GoPiGo robot: https://www.dexterindustries.com/gopigo3/

This is my current robot "Carl" (Cute And Really Lovable) wishing everyone a Happy New Year:

https://youtu.be/RogHyQ7CBkg
I am more of a software-chap but have a basic grasp of electronics due to my physics-diploma.
Face it - hardware is cheap these days, but it takes software to breath "life" into a robot. Spend your retirement learning Python, OpenCV, and Deep Learning.

Currently I have problems to get the rotation encoders to work. How did you do it? Have you got some schematics you could perhaps send to me.
First I found out one was fried, and then found out that they are no longer in production. I managed to find some in China and took a chance on buying them. I managed to get replace them on the very tiny, tiny circuit board and the sort of worked, but the circuit was very noisy electrically and quite unreliable. (Carl's encoders on the other hand are accurate to less than a millimeter and rock solid.

The memory was too small, and the processor too slow. After I replaced the processor with a Raspberry Pi, my bot was plagued by hardware problems preventing me from focusing on what I do best - software and learning new software technologies.

Here is the best I could achieve with the RugWarriorPro/RaspberryPi "upgrade" before giving in to purchasing modern hardware that had a support forum and sophisticated example programs to learn from (forum.DexterIndustries.com ):

https://www.youtube.com/watch?v=X1hrGEDxV8w

Immediately after that his stackable connectors lost one channel from too many assembly/disassembly usage to work on the hardware, so I bought a GoPiGo3 and have been very, very happily writing software for two years without a single hardware issue.

Carl has been running 24/7 for 12528 hours, and has recharged himself 1536 times.

Image

https://alanmcdonley.wixsite.com/curiou ... -challenge


Let me know what you end up doing.

Alan McDonley
Florida, USA

amcdonley
Posts: 200
Joined: Mon Jan 26, 2015 5:56 pm
Location: Florida, USA

Re: Rug Warrior Pi

Fri Sep 18, 2020 1:50 pm

klausf wrote:
Thu Sep 17, 2020 8:54 am
encoders ... schematics
I put the schematic up on my wix site, does this link work to see it?

https://alanmcdonley.wixsite.com/curiou ... m-kf8anvok

The encoder itself is/was Hamamatsu P5587

Datasheet for the encoder: http://www.robotstorehk.com/p5587.pdf

That site claims to have the sensor for US$8.95 - http://www.robotstorehk.com/sensors/sensor.html (search on page for p5587)

Return to “Automation, sensing and robotics”