Instructables
Picture of Arduino 4wd robot with ping sensor
Experience Level: Intermediate (requires soldering)
Time Required: 3-5 hours depending on experience

J-BOT Kit Jameco

Someone mentioned that Jameco needed a robotic mascot. I have always been a tinkerer, especially with radio-controlled electronics and so I volunteered for the chance to design and create the J-Bot. While this was my first autonomous robot build, I'm confident it won't be my last. We thought this would be a fun project to build.

Required tools and parts:

Jameco J-BOT Kit
Arduino UNO
11 AA batteries (5 for the motors and 6 for the Arduino, servo and sensor)
Philips screwdriver
Long nose Pliers
Soldering iron
Solder wire
Helping hands


 
Remove these adsRemove these ads by Signing Up

Step 1: Building the 4 wheel drive platform

Before building the brains, we'll need the basic platform. I found some good videos to help step me through the process of putting together the same 4 wheel drive platform that is included in the J-Bot kit.

http://www.youtube.com/embed/H_OThKDM44Q

http://www.youtube.com/embed/VkH04Suz87E

http://www.youtube.com/embed/ZXk752IvctI

http://www.youtube.com/embed/IU9lQ-wKoXo

After soldering the wires to the motors, I suggest adding a drop of hot glue to the copper clips so the clips do not rip off because they are very fragile.

http://www.youtube.com/embed/2KnmKhGdK-U

At this point it would be a good idea to label all the cables so you can identify them later. I decided to label them by using regular scotch tape. I labeled the two front motors "FL" and "FR" for front-left and front-right, as well as the back as "BR" and "BL" for back-right and back-left.
jgilbert96328 months ago
Could you email me a code that would work with a four pin ping sensor and also would an arduino motor sheild work just the same as Ada fruit one?
JamecoElectronics (author)  jgilbert96328 months ago
Not sure about the motor shield. The Adafruit motor shield requires a library, so the code may be entirely different from what would be needed for the Arduino motor shield. The same goes for the ping sensor. I used the library and sample code that came with a 4-pin ping I was evaluating on a breadboard, but it would not work using the instructions. Instructions said only the 'echo' pin was needed, but the serial monitor would only show zeros. I connected a wire from the 'trig' pin to the 'echo' pin so they were both on the same I/O to the Arduino, and it worked.

Not saying that will be the fix for you because I'm using sample code for a 3-pin ping and that same trick I tried is not working with my 4-pin sample.
Souris1 year ago
Very nice job! It's very neat and tidy. Congratulations!
rberger1 year ago
Is there an update to this that addresses the new version of this kit that uses the DFRobot's Romeo board?
sean wal2 years ago
Do  you connect the battery pack to both the arduino and motorshield, or just the motorshield and use the standard 9v pack for arduino.
                                                                              Thank you
vek11 sean wal2 years ago
im pretty sure you use the 9v for the Arduino, and the pack for the motor shield
sean wal2 years ago
i just uploaded your code and tried several times more i had no problems with uploading but when i upload it i turn the batteries on and the robot just sits there and does nothing
JamecoElectronics (author)  sean wal2 years ago
Hello Sean, there are two battery packs in the kit. One to power the Arduino and the other is to power the motors. Make sure that both of them have power.

-Omar
Hi just wonder how you worked out your " look around " times

Thanks
singh12342 years ago
HI guys, I was wondering if you can help me out. I need to know how to preprogram (a code) a path into an arduino so it can move the way I want it to and use two motors(each attached to one track) to help it to go the preprogrammed route. Help would be much appreciated.
JamecoElectronics (author)  singh12342 years ago
Hello singh1234, There are several ways you can approach this. You can add encoders to the motors and program it that way. You can also program it by making it go forward for a couple seconds and then turn for a couple of seconds. Depending on the size of you robot, I believe using servos would be the best and easiest option, for example, using this servo.

Good luck!!
Thank you. You guys are the best. One question though, to use three of these servos, do I need a motor shield? (Jameco Part no. 2152403) If I do, do you guys ship to Australia? thank you again.
Gelfling62 years ago
I just finished putting my 'Arty' ping-bot together, using your code, but stripped-out the Adafruit motor controller part, Using the Adafruit Proto-shield, and went with 2 modified Futaba S3004 servos converted to constant rotation. (an old trick I learned long before seeing the projects here.).. It took reverse engineering your code a bit, though.. swapping the motor values for Fwd/Rev, stripping out the Centimeters return, since the distance is only dealing in inches, and cutting the delay times in 1/2 for the turn and back-up times, since the servos seem to react faster. It's not as elegant as the J-Bot's frame, but everything packed into a 7" X 5" X 3" 4-locking side food container., and powering it off a 7.2V RC car battery. (using a 7805 to drive the 3 servos, and the PING)) ) All I need do, is plug the power adapter (standard RC-Car to coaxial) from the battery into the board, close the lid, then let it roam around.
And, 'Arty' in action! http://youtu.be/E7iytmVTBqs
Gelfling63 years ago
copied and saved your code, it might iron-out problems I've been having with a similar design, using the arduino, creating a 'BOE-Bot' style, using only 3 servos (two for mobility, and one for the PING)) )
JamecoElectronics (author) 3 years ago
Thanks!
hussam.tech3 years ago
good work
sammyBoy3 years ago
This is just what mine should look like if I'd ever got round to finishing it.

Hopefully this great 'ible will spur me on to finish it.

Nice job. Hopefully mine will be half as tidy as yours.
Very nice! Neat and tidy, just the way it should be. Congrats on the design.