S.K.I.P.P.I.E. - Project BigBot

Current working name (although I still refer to it as BigBot) is S.K.I.P.P.I.E.

Some
Kinda
Integrated
Programmable
Personal
Intelligent
Entity

Drive Medical Cirrus Plus Power Chair

13" solid wheels
speed 5 mph
range 15 miles
controller PG504 (60A) - 4-key VSI controller
motor 24vdc, 320w, 4600rpm
capacity 300lbs
battery 2 12v, 36A UB12350

Robot
1 - 12v battery 18ah
1 - Arduino Atmega 2560 MCU
1 - Pololu dual VNH5019 motor driver
2 - HC-SR501 IR proximity sensor at base
1 - HC-SR04 ultrasonic distance sensor
4 - IR motion sensors
1 - Kinect (?) tracking array & camera
6-channel remote control overide
voltage monitor
programmed speech
lights & sounds

6-Channel Remote
Power Up
Shut Down
Forward
Reverse
Left
Right

Modes:
1 - Remote Control
2 - Wait for Motion (interaction)
3 - Follow Beacon   (return to base)
4 - Wander Around   (default)

Drive Medical Cirrus Plus Power Chair stripped down to the base.

Old dual battery tray. I wanted to narrow the base and will only use one battery.

Cleaned up, narrowed with mounting plate and proximity switch bumpswitches.

Top bar was needed to brace it from collapsing inward since the pvc isn´t secured to the metal tubes yet.

I don´t like the metal plate and long bolts in the rear swivel wheel so will replace possibly with 2 corner wheels for stability. Front plate will mount electronics and battery tray will sit recessed between motors and swivel wheel. Base will be covered and body built up with head about 4'or 5´. Arms will be added in the final stage.

I´m not very good at this but here´s a rough idea of how the robot will look. The blue base is the modified power chair. The body is PVC and designed so that a future upgrade will be adding functional legs instead of the motorized wheels. Ambitious but do-able. I´ll tackle the arms after I get it functional with body and head. Looks like a robot on a Segway. :-)

I finally got a bit of time to get back to this robot so here's where I'm at with it right now.

The HC-SR04 ultrasonic and servo are stuck on there just for code testing and will not remain there for long. The 2 IR prox switches are bumper switches for anything it can't roll over or not seen by the HC-SR04. This is basically a larger version of my test platform T.W.E.R.P. except for the additional IR prox sensor.

I had to add the top PVC bar to make it stable since the front and rear bars are not yet permanently attached. I plan on taking an inch off the back to move it in more so I can run the plate bolts through the PVC (the metal plate sags with the battery which is why it's sitting vertical and moved forward).

As you can see from the earlier pictures I redesigned the rear swivel wheel which looks much better but the weight of the drive battery makes the u-bolts slide around the PVC. Need to find a fix for that problem.

Right now I've restructured the code which introduced some new problems so I'm throwing patches at it but will probably have to redo the program flow again before I add any more functionality. I might open up a forum thread for sharing code and ideas for a basic wheeled, obstacle avoiding robot. Hardware wise I need to to add power management to use one battery and make charging easier.

Perform pre-programmed manuevers, interact with people

  • Actuators / output devices: Pololu dual VNH5019 motor driver, 4600rpm, dual motor 24vdc 320w
  • Control method: RC mode & autonomous mode
  • CPU: Arduino Mega 2560
  • Power source: 12v SLA 18ah
  • Sensors / input devices: IR motion sensing, ultrasonic obstacle detection, IR proximity bumpswitchs
  • Target environment: Either for show or demonstrations OR security guard duties

This is a companion discussion topic for the original entry at https://community.robotshop.com/robots/show/s-k-i-p-p-i-e-project-bigbot

Hope this helps!

Oh yeah!!! This is similar to a project I have in mind. Here is some useful info from researches I did:

Stereo vision is a simpler alternative to 3-D depth-mapping. GroGG has an excellent tutorial on that. 

A WiiDar (credit: GroGG --> he rocks) is a cheap LiDar for SLAM. Mount it on a servo, and you have fairly great mapping! I just happen to have bought a broken Wii remote from a friend (I guess a lot of people are willing to give away their broken remotes, they’re goldmines to us roboticists)

I’m considering a Raspberry Pi as a central control unit connected to an Arduino (which is connected to an I/O expander). The Arduino interfaces with the hardware, while the Raspberry Pi controls the Arduino through a hardware abstraction layer, thus allowing for Python programming (which is insanely cool). It also allows for WiFi, OpenCV/other computer vision libraries, speech to text, text to speech and whatever usefull library you can find. 

Concerning Kinect: I have just been at a friend’s house and I’ve looked at his Kinect. What struck me is the size of that thing. From the pictures on the web I have never thought it was this big. Just a useful info…

Also, LCD screens come for fairly cheap (I’ve seen a small screen, something like 2’’ by 2’’, for 16$, color by the way). They’re cool for UI, you can use a thumb-stick controller thingy to navigate the screen options, or just use the screen to display the robot’s face (as in the movie called Moon). Lots of potential there, anyways. 

As well, accelerometers, gyroscopes, compasses, GPSes, and wheel encoders (cheap compared to the previously enumerated solutions) are cool additions to any robot. 

Looked at Raspberry Pi

I´m planning on using Arduino for locomotion and obstacle detection/avoidance and power level monitoring, subconscious type functions. I have a busted up Acer Aspire One with PCLinuxOS on an 8GB Compact Flash drive for higher level, conscious, functions and decision making. I need to learn Python.

I was originally thinking of using Kinect but don´t like the ´bots I´ve seen with one sitting on top of the head. Of course functioning was more important than looks for them, I´m wanting a clean look.

Back to work on S.K.I.P.P.I.E.

Finally had some time to get back to this project so I updated some photos and will get a video clip up soon. I restructured the code and had to patch new problems so once it’s stable and operating successfully I’ll take a video. I need to have the basics running before I can move on to a torso, head and arms. Definitely need to add a wheel encoder and probably a rear sensor since it’s been backing into things.

I signed up for classes at the local community college to get some formal programming training. Since I’m self-taught I can write working code but I’m sure there are better ways to structure and streamline the code. I’ve written custom programs for Alabama Municipal Electric Authority for load management, local businesses for proposals, inventory management and also wrote a program for use by government agencies to make purchases with recycled material when available. Robotics and micrcontrollers are a little different and I’m going crazy not being able to step through the code and watch the results. It’s like going back to the old days of punch cards - write the code, run it to see if it works, re-write the code and try over and over. I like immediate feedback.

 

BigBot trial run

Ok I uploaded a short clip of BigBot in action on a trial run in the kitchen after the latest code changes. I can’t believe Gypsy, my son’s hunting dog, didn’t run from the robot but calmly walked by and the 'bot behaved perfectly. Actually it looks like I’m still getting spurious signals from the ultrasonics.

Following

Looking forward to watching this develop. I do like “big” bots. (See Big Chaser. It’s not yet gone away…)

Great!

Great progress!    looking forward for a meet up soon to swap ideas!