03/24/2016 at 17:41 •
Crude preliminary tests have begun! Using (5) 350 farad maxwell ultracapacitors (in series) charged to 12.6 volts; the robot was released to "bump around" in my workroom. From 12.6 volts to 7.3 volts, the robot ran continuously for over 26 minutes. It could still run longer--probably to about 6.5 volts before starving the processor.
Charging at 4.5 amps takes about 90 seconds to go from 7.3 volts to 12.6. The video above starts at about 8.8 volts and goes to 12.6 in roughly 75 seconds.
What have I learned here?
The steel caster wheel is too noisy!
Motor speed and "bumped into something current" need to be adjusted on the fly as the capacitor voltage declines.
The robot doesn't need to run around continuously like a frenetic little puppy.
So . . . twenty minutes of robot socializing followed by 90 seconds of robot rest seems very doable.
03/28/2016 at 19:53 •
I'm thinking Mato (short for tomato) will live (charge) in a Taco.
Construction details (at this point in time) can be found here.
04/03/2016 at 00:07 •
Looking to the time frame and materials required, here's my current thinking.
Create ability to find charging station. I will use the Pololu IR Beacon Transceiver Pair and program the bot's Arduino to utilize the information received from the IR beacon. If this fails, my backup system will be to use the Pixy camera (I've done this on another project, but power consumption, lighting and expense put it in the number two position).
Build the charging station and pickup points for the bot. I'm thinking rollers and rails from an O gauge train may work for this.
Add people sensing and "excited to see you" routines. A PIR sensor will be used for human (or animal) detection. This is more tricky than I first thought, since the bot must be still for the "motion detector" to detect motion that is not caused by the bot.
Add stair detection. Some sort of IR detectors will be used for this.
Build a people friendly body, including eyes with servo controlled eyelids.
Build Taco, the people friendly "shell" for the charging station. Taco will have servo controlled eyes that "blink" when Mato passes by.
04/03/2016 at 00:13 •
Examine the addition of wifi enabled features--possibly a camera.
04/14/2016 at 00:24 •
I assembled the beacons and put one on the robot, the other "to be found."
The "to be found" beacon sends out so much signal in all directions (it does that on purpose--for moving targets to find one another) that it was hard to tamp down and directionalize for homing purposes. I put that beacon in a sealed cardboard box with a slit and am now getting some results I can work with.
My software needs some work to make the wheels line up with the sensor detection--that will be a later post.
04/14/2016 at 19:06 •
Mato can now find the "home" box (Arduino file added in the file area).
There are tasks ahead to make this work well--getting rid of the cardboard box, adjusting the slit and improving the software--but I've made my April goal!
04/23/2016 at 16:15 •
"Little Friend" was running around getting exercise (I was clocking run time with specific electrical load) when I exercised bad judgment as a parent.
"Little Friend" was at least 50 feet away from the stairs--around a couple of corners. I turned my back to work on gluing pieces of a project. It took less than a minute.
BANG, THUD, THUD, THUD, CRASH !!!
"Little Friend" took the shortest route to the stairs.
One of the wheels no longer runs true--will have to be replaced. Fortunately, there were no short circuits or broken circuit boards.
NEVER let a little one out of your sight unless dangerous spots are adequately secured.
05/19/2016 at 21:38 •
I'm adding construction details here . . . after the video.
Mato II Construction
(5) 350 farad 2.7 volt capacitorshttp://www.amazon.com/Maxwell-Technologies-Supercapacitors-Ultracapacitors-2-7Volts/dp/B0137ILPOQ/ref=sr_1_2?s=industrial&ie=UTF8&qid=1463673653&sr=1-2&keywords=350+f+capacitor
These are available for less cost per unit (minimum order ten) at: https://www.tecategroup.com/store/index.php?main_page=product_info&products_id=1221
(1) DC step up/step down converter modulehttp://www.amazon.com/Converter-3-5-28V-1-25-26V-Adjustable-LM2596S/dp/B008ATU2X8?ie=UTF8&psc=1&redirect=true&ref_=oh_aui_detailpage_o06_s00
(1) Arduino Uno
(1) Arduino Motor shield
(12) LED’s, white
(2) .47 microfarad capacitors, Jameco.com #25558
(1) PIR sensor
5 amp fuse
m3X 4 with nut
#8x ¾ nuts & bolts
#6 x ½ nuts & bolts
m3 x 12 with nut
(5) 100 ohm resistor
2-56 x ¾ screw and nut
breadboard jumper wires
heat shrink tubing
3d Printed Parts
Eyeball, Lower Eyelid, and base are found here and should be printed at 95% size: http://www.thingiverse.com/thing:319978/#files
These are by “sideburn” with a creative commons, attribution, non commercial license
These files are available on hackaday.io—print the .stl files; the .123dx are available for modification purposes.
arduino holder design.123dx
breadboard mount design.123dx
eye servob design.123dx
eyelid connb design.123dx
mouth backing design.123dx
mouthpiece.stl (print at 109% size)
nose eye bkta design.123dx
nose eye bkta.stl
nose pirb design.123dx
servo hornc special design.123dx
servo hornc special.stl
ultracap holder design.123dx
Now, let’s get started! Take the eyeball base and insert the lower eyelid, then upper eyelid, then eyeball and eyeball rod. Secure the lower eyelid, rod and eyeball base together by melting (with a soldering iron) or using glue.
Attach the connector to the eyball assembly.
Attach the printed servo horn to the servo motor.
Place the motor/servo horn into the base.
Attach a 2-56 by ½ inch screw to the printed servo horn.
Connect the servo horn to the eyelid connector. Be certain that the servo can travel enough to open and close the eyelid.
Attach the eyeballs to the nose eye bracket.
Wire and insert the PIR sensor into the eye bracket.
Secure the nose (PIR sensor) to the eye/nose bracket.
Push the caster ball into the caster bracket.
Add wires and a .47 microfarad capacitor to the motors.
Attach the motors to the motor brackets using m3 x 4 screws (I had m3 x 6 available, so I had to add a nut to make it fit).
Drill holes and attach the caster wheel to the wide body (yes, I should have printed the holes, but it’s hard to preplan everything).
Attach the motors to the wide base (#6 x ½ nuts and bolts).
Attach the eye/nose assembly to the wide base.
Stretch the Eureka vacuum belts over the printed wheels.
Insert (friction fit) the wheels onto the motor shaft.
Paint the center of the eyeballs.
Install the DC buck/boost converter. Drill (2) 1/8 inch holes and use m3 x 12 screws.
Install the breadboard holders using m3 x 12 screws and nuts.
Install Arduino holder using m3 x 6 screws and nuts.
Solder capacitors together in series (using 100 watt or higher soldering iron). Add fuse on negative side and switch on positive end.
Connect motor wires to Arduino motor shield. Connect input power on motor shield to output of voltage converter.
Connect capacitors and voltmeter to input of voltage converter board.
Secure capacitor assembly to wide base using duct tape.
Using wire wrap wire, connect three groups of (4) leds—each group in parallel with a series resistor. The upper slanting 4, the middle “line” 4, and the lower slanting 4 are the groups.
Test the lights before gluing the case together.
Thread the wires over the top of the wide base into the Arduino area.
Glue or melt the “mouth” to the nose.
Install the wires to Arduino pins 0,1,2 and gnd.
Remove the sticky backing and put the breadboard in place.
Install (glue) bump guard onto mouth assembly.
Install transistor switch to control power to servo motors. These motors consume about 60 milliamps just staying in place—and that is too much drain on our limited supply.
Check the wiring according to this schematic.
The Arduino file, “Little friend smile” is posted on hackaday.io
Mato should run with a smile on her face that turns to a frown when she bumps into something. Occasionally, she will blink.If it has been a while since a “bump” occurs, she will half close her eyes for a few seconds of rest. If someone walks past (PIR active), she will smile, wink and move forward.
Mato will run until the capacitor voltage reaches about 3.5 volts, but I usually stop for a recharge at 4 volts. Using a bench power supply, set the voltage for 12.8 volts and the amps for 4.5 (my supply is only good for 5 amps—more amps would charge faster).
05/25/2016 at 00:30 •
I read about Connornishijima and the twisted bit of wire "human detection." I tried it with four inches of twisted wire and a bit of code (see antenna test for this project) and a battery powered Arduino. It seems to work well (though without directional capability), so I may use it on Mato when I sort out the power consumption and speech issues.
05/25/2016 at 14:34 •
I've named this "human detection" method the "Connor Nishijima Effect." My old method--stop the robot, wait a few seconds for the PIR sensor to settle, then check the PIR sensor for activitiy--is not great. Motion detectors detect motion and a moving robot sees everything as motion.
I rigged up an Arduino, twisted wire and a speech module to test the system (Arduino file is available in this project as "Antenna test.")
It worked well in a stationary position, but I wondered what would happen if it were moving. I taped it to a piece of cardboard, then taped the cardboard to the top of Mato.
Next, I let it run and approached Mato. The speech module fired when I approached--and only when I approached--Hooray!
The tests are crude and this is early in the game--but it looks promising!