Main Site
Tuesday, December 30, 2008
Implementing RF Modules Tutorial
Link : http://narobo.com/articles/rfmodules.html
Thursday, December 11, 2008
Its $40 for a kit and $55 for an assembled version
More info and sales information here:
http://curiousinventor.com/kits/roboduino
Features / Specs:
* 100% Compatible with Arduino software.
* Power buses along side pwm and analog pins easily accept standard servo and sensor connectors.
* Powered can be supplied from USB, barrel plug or 3-pin male header. You'll need a suitable power supply when driving multiple servos.
* dedicated UART 3-pin male header
* 6 PWM outputs with neighboring unregulated power pins
* 6 analog pins
* 14 digital pins
* Reverse polarity protection for board circuitry (not for unregulated power pins)
* Optional I2C pull-up resistor locations
Wednesday, November 26, 2008
Looking for Beta Testers for the Roboduino
Roboduino Specs: http://erobots.blogspot.com/2008/11/new-robot-product-roboduino.html
Beta testers get a special discount on the Roboduino - $30 for the Roboduino kit ( thats 25% off of the retail price) and $50 for assembled board
(no discounts on an assembled Roboduino)
Beta testers are expected to use the Roboduino on robots or some electronics. Testers are expected to take pictures of what they used it on and also must report all malfunctions, any errors, etc.
If you are interested please contact me through email : airman00 at gmail.com . Include how you plan to use the Roboduino, any robotics/electronics experience you have , and if you want the kit version or the assembled version. Space is limited and I will be picking the beta testers I think are best for the job.
Thanks
,Eric
EDIT: No more spots left for beta testers. It all got filled up in a couple of hours.
Expect the Roboduino to be on sale in late December
Monday, November 24, 2008
First Roboduino Assembled!
Thursday, November 20, 2008
Sunday, November 2, 2008
New Robot Product - the Roboduino
I've teamed up with Scott from CuriousInventor.com(soon to be the sole supplier of the Roboduino ). Prototype boards should be ready in about 2 weeks and I'll make some demo videos of the first Roboduinos. Expect the first Roboduinos to be on the market in less than 6 months.
Heres an overview of it:
Features:
- Both power jack and 3 pin connector for Power input
- Male header pins that have GND and regulated power ( unless otherwise specified)
- UART dedicated pins
- I2C pin headers
- Reset button
- USB bootloader interface
- ISP pins
- 6 PWM pins with unregulated power
- 6 analog pins
- 14 digital pins
- 1 LED dedicated digital pin
- Power bus of male headers for 5V,Gnd,and 9V
- Polarity Protection
Sunday, October 19, 2008
Line Following Robot With Vision
I will be building a line following robot for a competition and I'll use a CMUcam to do vision processing.
Heres some basic pseudo code for line following with vision:
Locate Middle Mass of Line
Turn scan servo till CMUcam is aligned with middle mass
Have chassis align with CMUcam "head"
Go Forward if Middle mass is aligned with CMUcam
The line following robot with vision uses a CMUcam , four 150:1 Micro Metal Gearmotor HP motors , Axon microcontroller, 6V NiMH battery pack, and one panning servo for the camera. Chassis is HDPE (spray painted blue) and is two decker - deck supported by four hex spacers.
I haven't decided yet if I am going to make a step-by-step tutorial or just documentation. Also I'll be making a tutorial on interfacing the CMUcam to the Axon.
More updates to follow.
Update for Giant Bipedal Robot
Updates after a while
Saturday, August 30, 2008
More Pictures of My Butler Robot
http://s273.photobucket.com/albums/jj202/erobot/Chives%20Reloaded/Completed/
,Eric
Friday, August 29, 2008
Bluetooth Controlled Lights
Here is the code used:
Defines:
// *************** Bluetooth Lights ****************
#define blue_on PORT_ON(PORTC,0)
#define yellow_on PORT_ON(PORTC,1)
#define red_on PORT_ON(PORTC,2)
#define white_on PORT_ON(PORTC,3)
void all_off(void)
{
PORT_OFF(PORTC,0);
PORT_OFF(PORTC,1);
PORT_OFF(PORTC,2);
PORT_OFF(PORTC,3);
} // end routine
// *************END BLUETOOTH Setup******************
Code (example show is for blue only , just change the letter and color for the others):
char cByte = uart0GetByte(); // get byte from UART0 on the axon
if (cByte == 'b') // if character received is b then
{
all_off(); // turn all LEDs off
blue_on; // turn only blue LED on
}
Tuesday, August 26, 2008
Update for Servo Position Calculator
For manual control just enter the value in the proper text box and press Calculate to get the other values.
Here is the download link for the newest version:
http://rapidshare.com/files/140300072/Servo_Calculator_Setup.zip.html
Monday, August 25, 2008
BRAT Bipedal Robot Update
More updates to come within the next week when I perfect the gait and add on an accelerometer.
Heres a video of it walking:
Servo Position Calculator
Note: this version is for 16mhz only
Download it from here:
http://rapidshare.com/files/140067901/Servo_Position_Calculator.zip.html
Saturday, August 23, 2008
Updates in Robotics Projects
1. I'll be writing a tutorial for interfacing the CMUcam with John Palmisano's Axon microcontroller board (available at SocietyofRobots.com)
2. Brandt Daniels and I are gonna team up and write a tutorial on interfacing the BlueSMIRF gold to an AVR based microcontroller board
3. I'll be documenting my small scale BRAT biped robot. I was shocked to see that not one person posted up any documentation on using that biped robot with any microcontroller board besides the included Atom Bot Board which uses BASIC. I'll be documenting how to use the BRAT biped with the Axon microcontroller which uses C.
Heres a pic of my biped robot with the Axon microcontroller board mounted on.
Sunday, August 17, 2008
New Parts
Can't wait until I get to play with all these parts.
Also, if any readers have any cool projects they've built lately , send me an email and I'll post a link to your project from my site.
,Eric
Thursday, August 14, 2008
New Project: Giant Biped Robot
It will be loosely based off the BRAT robot biped . By loosely based I mean it will have the same joints and will use motors not pneumatics. More updates to come
Contest Prizes
Anyway my robot butler robot tutorial was a finalist in the Instructables Contest and was also a finalist in the Trossen Robotics Contest. Basically I won T-shirts and a Gift Certificate.
I'll keep on entering Chives into more robot contests that turn up in the future.
Friday, July 11, 2008
Mailing list
To join this mailing list sign up with the forum on the upper right side of this blog.
,Eric
Video of Chives , My Butler Robot Version 2
VOTE FOR MY BUTLER ROBOT IN THE INSTRUCTABLES CONTEST!
http://www.instructables.com/id/Build-Your-Own-Butler-Robot/
My Butler Robot: The Software
The minimum laptop requirements for the butler robot are as follows:
1. Runs any version of Windows Vista
2. At least 512 MB RAM
3. Two USB ports
4. Wifi Adapter ( Built-in or USB)
5. Speakers (Built-in or USB)
You will need to install/ setup the following programs and drivers:
1. Microsoft Visual Basic 6 ( if you want to edit and run the butler robot's program)
or if you want to only run the butler robot's install this runtime filesoftwareinstall this runtime file
2. Setup Microsoft Vista Speech Recognition
3. CCRP Timer Object
4. Phidgets 21 Installer Package
5. Free Voip Calling from Robot
6. RoboRealm
Output(0) = Relay for Left Motor to turn forward
Output(1)= Relay for left motor to turn in reverse
Output(2) = Relay for right motor to turn forward
Output(3) = Relay for right motor to turn in reverse
Output(6) = Left arm motor
Output(7) = Right arm motor
Output(9)= Bottle Cap Opener motor
Output(10)= Bottle tilter
Output(15) = Gripper Motor
This is version 1 of the code. Look on my blog ( eRobots.BlogSpot.com) for the most updated version.
This code has the following features:
Voice Control Over the Following:
1. Drive in all four directions - distance in "units"
2. Speak the Current Time
3. Speak the Temperature in Your Area
4. Speak the Weather Conditions
5. Pour a Drink
6. Raise Right Arm
7. Raise Left Arm
8. Close gripper
9. Various Sound Effects ( gun shot , load gun , laugh , etc.)
Text to Speech Warning of the Following:
1. No internet connection
2. Low Battery
3. Being Remote Server Operated now
This code is a stable release . My program with Voip and Roborealm interface has some bugs , so I'll only release that when I get all those bugs worked out.
In the next few tutorials I will be explaining parts of the code so that you will be able to edit it to your liking.
Here is a list of the major subroutines and functions
1. Speak
The Speak subroutine will play the sound file which is specified . All sound files must be in the "Voice" folder in order to play.
The syntax for the Speak subroutine is : Speak (filename as String)
ex: Speak "File1" - this will play the sound file "File1.wav" which is in the folder "Voice"
Note: For variables such as weather conditions make sure that the proper sound file exists for the condition.
2. Pause
The Pause subroutine will as it's name implies pause the code for a certain amount of milliseconds.The Pause function uses the Sleep function( a Win32 function) , but before sleeping it makes sure that all prior commands were fully completed.
Syntax for the Pause subroutine is : Pause (milliseconds as Integer)
ex: Pause 2000 - this will sleep for 2000 milliseconds a.k.a 2 seconds
3. Drive
The Drive subroutine is responsible for controlling the drive motors. The subroutine requires two variables to be filled in order to work. The two variables that it relies on are strDriveDirection and strUnits. strDriveDirection is a public variable because that way the direction can be set separately and in a different procedure than strUnits.
strDriveDirection tells the subroutine which drive relays to activate and strUnits tells the subroutine how long to activate the relays.
Syntax for the Drive subroutine is:
strDirection = (direction as String)
Drive (milliseconds as Integer)
ex: strDirection = "Forward" ' set the Direction to forward
Drive 3000 'Drives for 3000 milliseconds or 3 seconds
4. Get_Time
The Get_Time public subroutine returns the current time in a variety of variables. It has the ability to separate the time into the singles and tens place, set the time to 12 hour time, divide the day into AM and PM, and even divide the day into day phases(e.g. afternoon).
The syntax for it is either Get_Time or Call Get_Time
It returns the following public variables:
strDayDivider - this is either AM or PM
strHours - the amount of hours in 12 hour time ( maximum is 12)
strRawHours- the amount of hours in 24 hour time ( maximum is 24)
strRawMinutes- the amount of minutes ( double digit)
strSinglesMinutes- the amount of minutes in the singles place only ( single digit)
strTensMinutes- the amount of minutes in the tens place only ( e.g. 30 , 40 , 50 )
strDayPhase - either "Morning" , "Afternoon", or "Night"
5. Get_Weather_Info
Gets the weather information( temperature and conditions) and returns public variables.
The syntax is either Get_Weather_Info or Call Get_Weather_Info
It returns the following public varables:
strTemperature - temperature in degrees farenheit ( double digit)
strDegrees_Singles - temperature in the singles place only ( single digit)
strDegrees_Tens - temperature in the tens place onle ( e.g. 10 , 20 , 30 , 40)
strFeels_Like - feels like temperature in degrees farenheit ( double digit)
strFeels_Like_Singles - feels like temperature in the singles place only (single digit)
strFeels_Like_Tens - feels like temperature in the tens place only (e.g. 10, 20 ,30)
strWeather_Conditions - the weather conditions outside ( can be anything from herehere )
There are many other minor subroutines and functions , but the average user will not need to use them .
6. HighOutput
This subroutine sets the assigned port number a logical high or on.
syntax HighOutput(portnumber as integer)
ex: HighOutput (9) - Turns on Output 9 of the Phidgets
7. LowOutput
This subroutine sets the assigned port number a logical low or off
syntax LowOutput(3) - Turns off Output 3 of the Phidgets
Monday, July 7, 2008
VOTE FOR MY BUTLER ROBOT!!!
I made an extremely detailed tutorial on him so that anyone can build their own butler robot.
To vote for Chives you need an instructables account
If you have an account already then go to the link below
http://www.instructables.com/contest/robotcontest/?show=ENTRIES&sort=USERVOTES
Then look for the post titled Build Your Own Butler Robot. Then click the Vote button underneath it. After this just click the picture of the butler robot to see the entire tutorial
Please vote for mine only , because if you vote for someone elses also then your vote by me is negligible.
Thanks!
,Eric
Wednesday, July 2, 2008
My Butler Robot: Building the Robot Arms
The robot arms will consist of a gripper and an arm which makes 90 degree revolutions.
The gripper that I used came from one of those robot grabber toys.
You will also need the following PVC parts , I believe one is called a threaded PVC connector and the other is a 2" length pipe with a piece of plastic sticking out in the back.
Put the threaded connector over the pipe piece and connect the end of that pipe to the gripper. Hot glue the end of the pipe to the gripper.
Now take any piece of PVC pipe that is threaded on the end and cut the pipe around three inches from where the threaded part begins.
Hotglue that piece that was just cut to the end of a different 17" PVC pipe.
Now take both pieces outside and spray paint them black.After its dry you can attach the gripper to the pipe by just twisting the threaded connector on top of the threaded portion of the long PVC pipe.
Now take one of the two Power Wheels motors and mount the long PVC pipe of the robot arm to it , using some small L brackets.Use hot glue if you want to secure it more. The small L bracket that I put was 7" from one end and 10" from the end with the gripper.
Now attach the motor to the body using two screws.
Your robot should now look like this
Take another piece of the same 17" PVC pipe and attach a threaded connector.
Spray paint that black and mount it to a motor with two small L brackets(one on top and one on bottom) as we did before to the other arm. Use hotglue if needed to secure the arm.
Make sure both arms are secured in place .Here is what you should have so far by the robot's body:
And the back view for those who need it:
There should be two wires coming from each motors. Connect the red wires from each of the motors and connect those red wires to the positive terminal of the 6V battery pack.
Connect the Negative terminal of that 6V battery to the negative of the 12V battery ( which is common ground) then connect the black wire of the left arm motor to Output #6 , and the black wire of the right arm motor to Output #7.
Solder on wires to the existing wires connected to the gripper and connect the red wire to the positive terminal of the 6V battery and the black wire to output #15.
Open up the servo and solder on longer wires to the motor terminals. ( the red and black wires pictured)
Attach the connector featured to the servo
Attach the servo connector to the pipe connector and tighten them together.Then mount the servo the PVC pipe arm of the right arm using screws or hotglue.
Hotglue the motorized wheel to the bottle holder on an angle so that the wheel brushes against the cap of the bottle.
Solder on longer wires to the motorized wheel . Connect the red wires of both the servo motor and the motorized wheel to the positive terminal of the 6V batttery. Connect the black wire of the servo to Output #8 of the Phidgets. The black wire of the motorized wheel should be connected to Output #9.A cup can be attached on a L bracket if you want to add one.
Everything should be wired up now and now you should clean up the wires - that means tape them up, wire tie them , etc. Just make it less messy to work with. Heres what you should have :
Saturday, June 28, 2008
My Butler Robot: Building the Robot's Head
The robot head for your butler robot can be whatever you want . I decided to make a dome shaped head with one eye. Here are the instructions for the robot head that I made:
Get a 12" diameter cake cover and if its not silver yet , then spray paint it silver.
Now find a soldering iron that you don't mind destroying. ( you can actually just clean it up afterwards it doesn;t really destroy it)Plug in the soldering iron and wait for it to heat up.
Now find one threaded PVC connector ( 1.5" diameter is what I used).
Hot glue that piece to the silver dome in the place where you want the eye. Now the soldering iron is nice and hot you need to slowly melt a hole inside the PVC piece you just glued. Make sure you don't melt the actual plastic piece.
After you made your hole , wet the soldering iron with a sponge and unplug it , letting it cool. Take some PVC pipe ( I used a 7" , 1.5" diameter PVC pipe) and hot glue it to the bottom of the cake cover as shown. Make sure the PVC is attached securely.
Find that webcam that you will dedicate for this butler robot ( I used Quickcam Pro 4000 ) and glue it so that the lens of the camera is looking through that hole we melted.
Now the glue the other end of the PVC pipe to the center of the top piece of the wood platform we made.Cool head isn't it?
My Butler Robot: Building the Upper Body
After the bottom is completely assembled and the robot is actually starting to like like a robot, we have to build the upper body , which is the part that will really define the butler robot.This stage will also require the most amount of materials.
I used:
- one 5.5" x 9" plywood and 3/4" thick
- one 5" x 9" plywood piece and 3/4" thick
- two 10" x 21" plywood piece and 3/4" thick
- one 9" x 11.5" plywood piece and 3/4" thick
- one 9" x 21" plywood piece and 3/4" thick
Cut those materials and lay them outside on the floor. Take out a canister of black spray paint and prepare to paint!
Now take your canister of black spray paint and spray all the boards with a nice layer of black paint. Be sure to wear latex gloves so that you don't get your hands dirty.
Let the painted wood dry and now get ahold of the mini -fridge. If it isn't black already then spray paint that as well.
Attach the 5.5" x 9" piece to one of the 10" x 21" pieces as shown in the picture below.
Grab the other 10" x 21" piece and attach it to the other end of the 5.5" x 9" piece.
Now attach the 5" x 9" piece to the other end of the wood.
Stand up the wood that was all connected together so that the 5.5" x 9" piece is on the bottom end.
Take the 9" x 11.5" wood and screw it in to the top as show in the picture.
Take two L brackets and connect it so that the top of the bracket is 5" above the floor.
Take that mini-fridge and lay it down on top of the L brackets we just put up.
To secure the mini-fridge in place use a hot glue gun to glue the sides of the minifridge to the wood.
It should be secured and shouldn't wobble in there. Make sure that you have enough clearance to opne the fridge door.
The mini-fridge should have two black wires coming out from the back. Connect the end of one wire to the positive terminal of the 12V battery and the end of the other wire to the negative terminal. Now whenever the robot turns up the minifridge will be on.
The laptop that I dedicated to Chives was an old one I had and had a 17" screen. Lay the laptop that you have vertically on the space that is in back of the chassis and secure it with L brackets.
Unscrew the plexiglas cover that we put on the motor enclosure place it on the floor . Now put the wooden box we just built on top of it ( aligning it so that its in the center). Secure the wooden box to the plexiglas using two L brackets.