Server robot -- Background, purpose, and approach

Joe, here is the first design note for the robot I'm working on.
Background: My former boss is a good guy and the most knowledgeable Linux
person I know. He also has MS. He knew that I worked on robots and asked if I would build a robot to help him out. His right side has lost most motor control and he walks holding a cane in his left hand. The makes carrying a cup of coffee from the kitchen to his desk kind of a problem.
Purpose: The purpose of the robot is to carry small, items from room to room in his house.
Approach: We are likely to change our plans as we progress but our plan is currently to build a robot with two large drive wheels in the front and a caster in the back. The robot will be controlled using voice commands possibly through a Bluetooth headset. The robot will do autonomous navigation using webcams to pick up and locate 5 or 6 bit bar codes printed on 8.5-by-11 pages. Three landmark bar codes should be visible from anyplace in the house. Movement will use dead-reckoning for most of the time and the bar codes will be used as a check and for the final few inches. We will probably use Maxbotix sensors for collision avoidance. The robot's computer will just control the robot and the desktop PC will have the voice and image processing tasks. A WiFi link connects the robot to the desktop. A typical dialog might go something like this Frederic: "Robot!" Robot: "Robot ready" Frederic: "Station one!" Robot: "Station one. Confirm?" Frederic: "Confirm." --- the robot trundles off to station one
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Bob Smith wrote:

If you are building something from scratch, have you thought about humanoid type robots? Apparently they only take 4 days to design and one day to make these days. http://www.enemygadgets.com
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

I would be very pessimistic about the odds of building a reliable humanoid robot that would be steady enough to carry a glass. Unless there's a compelling reason for humanoid, stick with wheels.
--
As we enjoy great advantages from the inventions of others, we should
be glad of an opportunity to serve others by any invention of ours;
  Click to see the full signature.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Joe Pfeiffer wrote:

Wheels can't get over steps without spilling. That is a very compelling reason.
Three legged humanoid robots - now there is something worth thinking about especially if you can custom build it in 4 days.
As to where you might put the third leg...
ok ok back up a bit...
..don't even think about where that 3rd leg could be fitted.
Instead seriously think about where it should be fitted.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Could a motorized dynamic suspension be used controlled by motion sensors?
JC
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Only in an environment with lots of steps, which basically lets any ADA-compliant environment out. The robot really only has to be able to get over anything the OP's boss can.

A mobile three-legged stool isn't particularly humanoid. And you've still got to keep from spilling. And you've got to convince the OP (not me -- I almost made that mistake!) it's really do-able in four days, or even just in some reasonable time frame.

Umm.... what?
Something I noticed on the first post, but decided not to ask at that point: since your email address is from the enemygadgets.com domain, and your first post included a link to that site, what exactly is your relationship with that site?
--
As we enjoy great advantages from the inventions of others, we should
be glad of an opportunity to serve others by any invention of ours;
  Click to see the full signature.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Would a second hand motorized wheel chair be a good option?
It could still be used as a wheel chair only with a pc bolted on controlling the toggle control with stepper motors.
And to keep it simple if a line following method was used where the line is on the ceiling?
JC
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
casey wrote:

This is a good idea but maybe for later. Some of the doorways in his house would be difficult to navigate with a wheelchair.

This is a good idea. You can't use a simple photocell but a webcam could probable pick up a ceiling line well enough. Using IR visible paint would make the lines inconspiciuous. Drawing the lines on the ceiling would be a pain but should only need to be done once. I'll suggest this as an alternative if the 6 bit bar code on a sheet of paper does not work out.
thanks Bob Smith
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

I have never head of "IR visible paint". Can you tell more about it.
I know that decades ago, there were some commercial inside mail delivery robots that followed lines on the carpet. The lines were drawn with invisible fluorescent ink, that only showed up under UV light. It was like the invisible stamps they put on your hands at certain events to allow you reentry.
If this interests you, then there are some other considerations. I've played with applying invisible UV ink on various surfaces with varying degrees of success. A dark or even medium-dark surface doesn't work well. And, you would also need a surface that doesn't already fluoresce.
Joe Dunfee
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Isn't this the wavelength that heats things?
They have expensive cameras that show humans and other animals that "glow" in the dark with infrared radiation. They use it to find hot spots on walls to reveal termite activity.
I guess you would need a wire that heated up without glowing red in the visible range.
JC
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

..
My initial guess about the post is that they either really meant UV fluorescent paint that glows under UV light, or perhaps IR fluorescent paint that glows under IR light (this is not as common as UV fluorescence, but it does exist).
However, I don't think either is viable for use on a ceiling. The fluorescent paint I was suggesting was for use on the floor, where the robot can shade it from the visible light, and so allow the sensors to get a good image of the invisible paint line.
For the ceiling one alternative is to use retro-reflective tape. You can purchase vinyl non-adhesive tape intended to be sewn onto clothing. If applied to the ceiling, then it would provide a way for any camera to see a very bright line. E.g. if the camera were surrounded by a set of IR LED's, the camera would get a bright reflection of IR light from the line. It would be easy for the processor to distinguish this line from other minor objects in view.
What is nice about applying something to the ceiling, rather than the floor, is that it will always be in view, and will not be worn out by people walking on it.
As for a method of making this line... I would want to avoid paint, because it would be difficult to cover up later. It tends to be a thick paint that would leave a ridge. I would also be nervois about using an adhesive tape, for fear that it might not stick over the long term, or if agressive enough, might not come off so well. Maybe the vinyl strip can be applied to pieces of wood strip (perhaps 1/2" wide x 1/8" thick x 48" long) that is nailed to the ceiling at perhaps every 24" (or where the rafters are).
Joe Dunfee
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
[...]

[...]
A simple method I used for a couple of toys I made for the grandkids was based on the "the ceiling is easy to find" idea. Basically, to locate yourself in a room find a couple of corners (just look up at a roughly 45 deg angle and the corners will be visible most of the time -- just look for the "Y") and estimate distance using the upper angle. Even a piecewise linear approx turned out to locate the toys within about 1 m even in reasonably large rooms.
The kids were happy for 10 mins, anyway. What can I say -- gen Z. ;)
--
R Kym Horsell < snipped-for-privacy@kymhorsell.com>

If your ideas are any good you'll have to ram them down people's throats.
  Click to see the full signature.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
snipped-for-privacy@kymhorsell.com wrote:

That's a great idea. I'll need to locate the robot in a several room apartment but the corners idea should still work.
Do you any code available for it?
thanks Bob Smith
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
[...]

The corner recog was done using OpenCV, if C++ will run on your platform. If you have an x86 to do at least the crunching (I use "on bot" intel atoms with cheap usb vga webcams rather than long wires or wifi) you can probably get it working pretty fast.
But the code may rely on the kinds of interiors you find around colleges and some of the more college-like factories -- i.e. walls off-white, ceilings brighter white, and cheap fluro lighting that doesn't turn the ceiling into a uniform (reflected) light source.
--
R Kym Horsell < snipped-for-privacy@kymhorsell.com>

If your ideas are any good you'll have to ram them down people's throats.
  Click to see the full signature.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Polytechforum.com is a website by engineers for engineers. It is not affiliated with any of manufacturers or vendors discussed here. All logos and trade names are the property of their respective owners.