Thanks for the help. I was thinking of starting with a few motors for movement, then move on to adding sensors so this has been quite useful. Cheers
Hi!
I’ve actually already built my own robot!
I know, you already seem to have gotten a lot of informations, but if you are a bit daring you could try building something similar to my Zephyr robot!
It’s completely 3D-Printed (and also otherwise self-made), even the omniwheels I use for motion, and the code includes everything necessary to set it up, including the electronic schematics and libraries for controlling it.
(Though you really don’t have to do something quite as complex at first)
If you have no experience with electronics soldering, then, as many have said already, I’d go with an Arduino. It’s basically the same chip I use for my robot, but it has a lot of nice libraries, so you’re gonna like it!
For programming then also obviously, the including Arduino programming environment is a good option, though if you want more control over the code later on, you can use “eclipse for C++” together with an AVR-Plugin to program the Arduino directly in C or C++
For a small robot you won’t need many chips. A normal Arduino Uno will serve you well, with enough pins for motors, sensors and maybe some output, and the Serial Interface is always really handy!
I hope that helps you out a bit ^^
Thanks for the help. I currently have Esclipse for C++, but I don’t know how to get coding. I’ve tried creating projects and such but nothing seems to work. Do you have any experience or know how to help me out? I know the basics of programming and have a bit of knowledge of functions, loops and if statements, but could learn more. I think I’d rather program this myself than use Arduino, but will look into this before making a decision as many have advised to do this.
Thanks again.
Eclipse for C++ by itself won’t do for programming a robot.
You’ll need to install this plugin for it, and maybe install the nececary compilers for AVR. I recommend doing it on a linux system if possible, but you should be able to set things up on windows too.
Actually, for Windows there is a nice IDE from Atmel that you should be able to use, Atmel Studio, which probably is even better suited!
You’ll also need the hardware.
If you have a normal Arduino then you are ready to go! The eclipse plugin has a preset for the Arduino to program it, and it won’t override the bootloader so you’ll be safe to play around! I am not sure about Atmel Studio, but I am confident that the community has a solution ^^
For programming microcontrollers in C or C++, a lot of things behave the same way. If’s, whiles, for loops and everything.
There is, however, one main difference in how you communicate to the outside world: With so-called registers.
Registers are fixed-position memory slots that do something very specific. For example, the “PORTA” register controls the input or output mode of certain pins.
I’d recommend googling around and reading up a bit on what they do, but they are very simple to understand.
Oh, and I’d also recommend a good understanding of the binary operators ^(xor), &(and), |(or), ~(not) and <<(left-shift), they can get handy.
If you want to get some sourcecode examples, feel free to delve into mine, though I would rather recommend searching up some tutorials. (My code really needs documentation X3)
For extra information:
The chip you are using with the Arduino is an ATMega328-P, an 8-Bit AVR processor, running at 16Mhz
The compiler used for it is AVR-Gcc
Just some extra bits if you want to search up something ^^
Hi It seems a bit odd to me that everyone talks about arduino and no one talks about Parallax.
The Parallax people do a good job at promoting robotics and anything microcontroller related.
I’m not in any way associated with Parallax but I’ve been using their microcontrollers for several years now.
Check out their forum using this link http://forums.parallax.com/
If any Parallax forum guys are listening to this 3D printing Talk forum, Please say something.
Robotics is a fun and educational endevour.
Have fun.
If you want a 3D Printed Robot, I highly recommend the EEZYbotARM:
It’s based on the very popular MeArm and aimed for the first timer, so you can use the plentiful sources for it to build your own robotic arm
I recommend buying legitimate servo motors from a hobbystore and not eBay, because there’s a lot of fake motors that could be too underpowered.
And go for the metallic ones such as a real MG90s because plastic ones like SG90 can break inside.
Regards,
Dennis
It all depends on what kind of robot you want to do. A car? A humanoid? A drone?
How do you want to control it?
What features do you want to have?
If you are new, I advise that you start with the Arduino, it’s easy to program, their community is very helpful, and you learn a lot along the way.
If you want a robot that can do more complicated things, like object detection/vision processing, or machine learning, you need more than a microcontroller. If so, I advise you get a Raspberry Pi. The Pi costs around $35, and the Pi zero costs $5(If you can find one in stock, that is). Raspberry Pi’s are very capable devices. Another alternative is the Beagleboard.
Building a robot is actually very easy and fun. I think that everyone should try doing it. Good luck with your project!
You don’t have to go through PCB production either, you can use a breadboard. Easy to use.
Thanks Gary,
I shall have a look into Parallax. I have no experience with either Parallax or Arduino so I’ll take a look at which I find best and then make a decision based on which I think I’d prefer to work with.
Thanks again.
Thanks. I never realised there were problems with plastic motor or those from eBay, so I’ll remember this.
Thanks. I never really knew that Raspberry Pi could be used for robots. I always thought it was just simple circuits and computer addons.
Cheers
No problem. Can you describe what type of robot you are working on? Maybe we can help!
Just a basic humanoid robot, for basic movement like moving arms and legs. I would then like to add to it like cameras and sensor and such.
Thanks in advance
you should use servos or steppers for the robot. To control steppers, you can buy motor controllers or build your own stepper circuit for cheap. Servos work with PWM(Pulse width modulation), and work by just plugging it into power, ground, and the pwm pins. If you are using more motors than PWM pins on your board, then you can buy a hat(for raspberry pi), a shield(for arduino stuff), or a cape(for beagleboards). You will probably need at least 10-13 motors to build a decent humanoid robot, so you can either buy multiple boards that work together, or a shield/hat/cape. I would recommend starting off with an Arduino Mega, since it has 14 pwm pins(AFAIK), and that would eliminate the need for a shield. If you want to make the robot smarter, you can get a raspberry pi to receive camera input for image processing/object tracking, and make it communicate with the Mega.
Another way to control it would be to get a beagleboard. The beagleboard is a good mix between the Pi and the Arduino, since it provides some pretty decent processing power, and it also has plenty of pins. The PWM cape for the BeagleBoard controls up to 32 servos, which is a bit overkill, but still useful. You also don’t necessarily need a usb mouse, keyboard, ethernet/internet, or monitor, since you can use it by connecting it via usb, but you can use it as a computer if you want to.
Arduino and Raspberry pi also have great communities online to help you out if you have trouble.
I think its mainly because of the community that Arduino has brought together. I had tried to get into electronics since i was 8, but I didn’t know anything much about microcontrollers and programming until last year. I had tried to use a microcontroller(I think it was the ti launchpad) at a science event, and I was completely lost, the community wasn’t very helpful either. Most K-12 kids that are passionate about electronics start with an Arduino, at least the ones I have met so far. I personally found Arduino, and Raspberry Pi’s resources and communities very helpful to improving my skills. Arduino and Raspberry Pi have also gained a lot more publicity in the education and maker community over the past few years.
Take a look at Wiring. It came out way before Arduino and started out with a similar purpose. I haven’t met anyone familiar with that board.
Robots are awesome. I’m working on a highly modified version of the poppy 3d printed robot. It uses dynamixel servos which are high torque and high price. I have made an adaptor case to fit standard servos measuring 40mm x 20mm x 38mm I’m using an arduino uno, lynx motion ssc32 servo controller and an old smart phone. So far it’s just a computer controlled marionette as I’m not great with programming. I may follow more closely to the halley ambassador robot. It uses an arduino mega and a breadboard/custom pcb to connect everything. Code is available on github. Great projects. Then there are many smaller ones available aimed more to beginners. Mobbob is another great simple robot using a smartphone some 3d pri ted components and arduino or bluno. Really cool little biped telepresense Droid.
A humanoid robot might not be the best way to go as a starter robot.
If you just want the optical look then yes, however if you want it to actually move you will have to work with various sensors like gyros and accelerometers to make sure that it doesn’t topple over, or can at least detect when it fell over.
Have a look at this open source 3D printed Humanoid Robot. All build designs, STL files, and walkthrough available for free:
I’m building one now…
Szikka