Affordable DIY Robot Arm: A Deep Dive into 3D Printing and Servo Motors

  Переглядів 125,021

element14 presents

element14 presents

День тому

To learn more about robotics, Milos was looking for an affordable 5 Degrees of Freedom (5DOF) robotic arm. Although affordable arms like this do exist, they are usually too small and only offer a few degrees of freedom. Robotic arms that satisfy all of his requirements, including build quality and range of motion, usually cost in the range of a few hundred dollars.
So, for this episode, Milos sets out to create a high-quality 5DOF robotic arm that everyone can afford!
Discuss the episode, find all files for the project, and ask Milos questions on the element14 Community! bit.ly/4769gc6
Engage with the element14 presents team on the element14 Community - suggest builds, find project files, and see behind the scenes video: bit.ly/3tmdewv
Visit the element14 Community for more great activities and free hardware: bit.ly/3q6YMpu
Tech Spotlights: bit.ly/3qPrDhM
RoadTest and Reviews: bit.ly/3pV5Bux
Project14: bit.ly/31wbnJY
#0:00 Welcome to element14 presents
#0:54 Overview
#2:03 Servo Joints
#8:42 Base and Last Joint
#19:19 The Electronics
#22:15 The Code
#26:44 Moving the Arm!
#29:50 Give Your Feedback
#robotics #robotic #roboticsengineering #servomotors #3dprinting #roboticsplatform #servomotor #3dprinter #robotarm #robot

КОМЕНТАРІ: 83
@raycarberry1089
@raycarberry1089 5 місяців тому
This is brilliant, well explained, thanks Mate.
@dayworkhard
@dayworkhard 5 місяців тому
thanks for sharing. this robotic arm looks nice and handy to make
@Wesley-gu2he
@Wesley-gu2he 5 місяців тому
This is mad inspirational
@rpguy172
@rpguy172 5 місяців тому
Awesome work! The whole process is great to teach to mechatronics students.
@123DragonHeart
@123DragonHeart 5 місяців тому
Thanks, glad you liked it!
@oakld
@oakld 5 місяців тому
Don't teach how to do bearings according to this video though - it's all completely wrong :-D.
@cristinatroccoliwilliams1389
@cristinatroccoliwilliams1389 Місяць тому
Upgrade and complete the arm. Really great educational value.
@solarestone001
@solarestone001 Місяць тому
agreed!
@newtlab
@newtlab Місяць тому
Одлично објашњење, супер видео Обилићу, хвала и више таквих. 👏👍
@phylippusvonhohenheim3232
@phylippusvonhohenheim3232 Місяць тому
i can't wait for the next video about this little robot arm
@rahsaankcole
@rahsaankcole 5 місяців тому
Great video. Interested to see this done with an esp32 or esp8266.
@jozefmatus7929
@jozefmatus7929 5 місяців тому
This is god tear educational content, thank you!!
@123DragonHeart
@123DragonHeart 5 місяців тому
Hahahha thanks, really glad you like it!!!
@glabifrons
@glabifrons 5 місяців тому
You should redesign the inner bearing race to be, well, a bearing race. You can't combine a cage and a race or you defeat the purpose of the race. Bearing cages always float freely and must be able to move with the balls, not restrict their movements. The balls will orbit at essentially the average rotation of the inner and outer race, but this design prevents them from moving at all. Also, since this is a comparison with an existing arm, you should compare their performance (eg: lifting ability and accuracy).
@oakld
@oakld 5 місяців тому
Yes, separating the cage is totally necessary. In addition to that, the schematics depicting section of a bearing is nothing more than that (schematics). Real ball has a two point contact in the bearing (both against the inner and outer ring), not a contact along a curve, which would make a lot of friction. Here, Miloš took design to the next (bad) level and he seem to have area contact, which probably make it so bad, that it might not be better than sanded and greased cylindrical contact. I'd rather go for cheap garden copper tape on the inside of the hole and outside of the pin and a appropriate vaseline. But bearings are so cheap these days, so you can buy one for a dollar or two (if you don't get fancy). The marbles probably cost more :-). But I'm sure he had a fun designing the arm, including the "bearing" and he'll learn new stuff.
@philipp9195
@philipp9195 4 місяці тому
I know what you mean, good observation. of course a cage should be separated from the race, but a cage is normally out of metall and i dont think a 3D printed stand alone cage would serve its purpose for long. the combination makes it last much longer. Of course it adds some friction but as he said, it doesnt have to be a full grown bearing, spinning hundreds of times per minute for hours without end, it just has to smoothen the movement of the arm on the base a little. but as i said - good observation and a well appreciated constructive comment. :-)
@oakld
@oakld 4 місяці тому
@@philipp9195 No, I'm quite positive it makes little to no sense, it goes against the logic of the bearing. Then just forget about ball bearing and make simple friction bearing, even plain, or with some inserts. Or most probably, for the low-requirements you describe, just use rollers on a steel pins. But really, for the bargain you can get real bearings for, you'd do a 3D printed bearing only for pure fun. And I do support that, have a fun and learn, that's good :-)
@RobytheFlorentine
@RobytheFlorentine 5 місяців тому
many very good ideas. Bravo
@allluckyseven
@allluckyseven 5 місяців тому
Pretty cool project, and very good looking robot arm as well!
@123DragonHeart
@123DragonHeart 5 місяців тому
Thank you!
@Betruet
@Betruet 5 місяців тому
Nice video, thanks 😊
@123DragonHeart
@123DragonHeart 5 місяців тому
Thanks for watching!
@Xboxplayer216
@Xboxplayer216 2 місяці тому
By hacking inside of the servo you can connects cables to the potentiometer inside and read data that way, its usefull when you need to be space efficient
@MarkSnop
@MarkSnop 3 місяці тому
Wow, this is really cool! Very good job. I am retired from doing software for 40 years and lots of hardware and software combinations. Now Retired, I just recently got into 3-D printing. And wound me up here. I never even thought of making such a thing until now, what would be the best robot arm you think I should build? Obviously, this one is really cool, but are there other ones that probably cost more money that might have a lot more features maybe? I see ones out there that are commercially sold kits that are too expensive, but they have cameras on them and various sensors which look really cool. Anyway, which robot do you think I should try to do?
@joekavanagh5708
@joekavanagh5708 2 місяці тому
Impressive!. Mechanical, modelling, electronics and coding. What 3D modelling app did you use for the the bearing?
@scottjoyce85
@scottjoyce85 3 місяці тому
I'm interested in how you record and play back movements? This would work well for a simple CNC plasma cutter. Just make a quick template with cardboard and then trace the template(record) and then play back while cutting.
@Info-Lab
@Info-Lab Місяць тому
Great job , thank you for sharing it I've question , with one is better use servo motor or stepper motor , i need Precision
@MalcolmCrabbe
@MalcolmCrabbe 5 місяців тому
Interesting project. There have been a lot of discussion over using stepper motors rather then servos, and I myself would have thought steppers would have been the better choice as they tend to have more torque and precision, which is probably why steppers are used in telescope mounts (HEQ5 / EQ6 for a couple of examples), and in most 3d printers and CNC / Plotters.
@SjaakWWortel
@SjaakWWortel Місяць тому
Steppers have less torque if you take their weight into account, there are metal gear servo's that have insane amounts of torque. Advantage of steppers is accurate 360 rotation without closed feedback.
@AndrewHelgeCox
@AndrewHelgeCox 3 місяці тому
The Pocket83 channel has some techniques for sorting glass marbles to find a set that are as similar to each other as possible (e.g., you buy 100 marbles and select the most similar 10 of them).
@HakkiOgrt
@HakkiOgrt 5 місяців тому
thank you sharing, sub.
@samk2407
@samk2407 5 місяців тому
I think even if your were going to make your own bearing, just using cheap steel ball bearings in a 3d printed housing would be better, glass has a way higher coefficient of friction than polished steel
@user-fx6cf1cw6v
@user-fx6cf1cw6v 4 місяці тому
What did you use for the software..? Like the drawing/modeling etc...? And other softwares..?
@hohstapler4161
@hohstapler4161 2 місяці тому
Zdravo. Uh, prilicno skupa zabava iako deluje da nije, ali kada krenes da pravis nesto ozbiljnije, a krenuces sigurno, postaje bas skupo. Prvo kupujes one kineske, plasticne servo motore i onda shvatis da sa njima ne mozes da uradis nista, pa prelazis na skuplje. Mene najvise muci sto cekam po mesec dana da mi stigne nesto iz Kine i onda shvatim da su mi poslali pogresne lezajeve, pa onda opet cekanje od mesec dana. Ja sam pokusavao sa dva servo motora da pokrecem isti deo (okrenim ih kontra jedan od drugog) ali ovo plasticni motori nisu dobro, odnosno nikada ne dobijes iste, ali moze, bude jace kad napravis tako sa dva komada. Ali onda dolazi do problema sa strujom, moras jace drajvere za motore, a oni su dosta skuplji. A, lezajevi su takodje skupi, oni malo veci, ozbiljniji. Ja dosta koristim stepper motore iz onih starih, kvalitetnih stampaca; uglavnom su oni japanski Mitsumi, bas, bas jaki i kvalitetni. - Nema vise takog kvaliteta, rade u stampacima po 20 godina. ;-) Nisam siguran da sa Arduino-m mozes da napravis nesto ozbiljnije, suvise je slab, predlazem ESP32, jaci je a ima i 2 jezgra i mozes zasebno da ih koristis kao Task-ove. A, posto imaju i WiFi mozes vise komada da koristis, recimo jedan za prikupljanje podataka od senzora, drugi za analiziranje, treci za kameru, upisivanje logova na sd karticu, zvuk (mp3 player) i ostalo, a lako ih je povezati sa kompjuterom / telefonom. Mislim da ne mozes napraviti nesto ozbiljnije ispod 500 evra, a jos ako krenes da kupujes one Nema 17 motore ili jace, pa za njih trebaju kontroleri od 50-ak evra po komadu, ih, brzo se nakupi. Dok je hobi, sa ovim kineskim motoricima i senzorima dobro je, ali brzo dobijas zelju za nesto ozbiljnije. A, jos ako nemas 3D stampac, pa moras rucno da seces aluminium (kazem ubrzo se javi zelja za necim ozbiljnijim) to je bas muka i na kraju shvatis da si slozio ispod stola nekoliko hiljada evra koje ti stoje i skupljaju prasinu. ;-)
@lycakito1814
@lycakito1814 3 місяці тому
Hello my friend, I'm super interested in building one of these with the idea of exploring Google's Aloha information. I'm pretty sure the community can get together and build a super low cost version like your demonstrating here. We don't need many of the things that make it expensive. We don't really need to have it moving, it could be fixed. The data for tele learning/training is all open sourced, have you looked into it at all? If we could build a desktop mounted one for 1/10th the cost ($30k). They've done such a great job getting the cost down but I think the community could evolve it more. Thanks for sharing
@vizionthing
@vizionthing 5 місяців тому
Use bicycle headstock bearings - cheap and easy to source.
@123DragonHeart
@123DragonHeart 5 місяців тому
That's something that could work for the last joint, but needed a pretty big one for the base joint, so that's why I went with the marble option, also a fun thing to try out. I'll be working on a new arm soonish, and the headstock bearings are a great idea since they are easy to source, or things like skateboard bearings.
@JoelDeGan
@JoelDeGan 23 дні тому
What 3D modelling app did you use for the the bearing?
@mitkosokolov9382
@mitkosokolov9382 3 місяці тому
have you try control it via voice commands?
@rakeshr2883
@rakeshr2883 21 годину тому
which software did you use for 3D modeling and which 3D printing ?
@bridgetclinch3678
@bridgetclinch3678 5 місяців тому
Is there a benefit to using servos and potentiometers vs steppers and end stops?
@123DragonHeart
@123DragonHeart 5 місяців тому
Hi! The benefits here would be the easier control, gearboxes that come already built into the motor and the low cost. Using stepper motors with a proper gearbox and an encoder to track the position precisely can also be a great choice, but would come in more expensive and probably in a bigger package. That said steppers with just end stops are still a great choice, that's how most 3D printers work, but having a stepper with an encoder is even a better option, because the system can then compensate for any missed steps or bumps during operation. My goal is to also make a robot arm using stepper motors at some point, it will be a bit bigger and expensive than this one, but I think it will also work much better!
@AckzaTV
@AckzaTV 14 днів тому
at 27:30 when you explain how , when holding the arm vertically and seeing how all 3 motors are justs tacked upa nd the bottom one has to be strong enough to constantly belifting two other actual motors, uits liek seeing a 3d printer able to move all of its parts around liek a human arm and you have to rteally apreciate roboticas after realizing how much power and force you need to move a heavy robotarm, but if you want it strong it must be heavy lol
@googleyoutubechannel8554
@googleyoutubechannel8554 5 місяців тому
So many YT videos on 6/7DOF DIY robot arms, but not yet a single one that shows why you'd want one... (other than to have fun building it)
@123DragonHeart
@123DragonHeart 5 місяців тому
Purely for educational purposes (and fun of course), this is a project for learning not so much to be useful to actually perform any function, for that, the arm would need to be much more expensive to get all of the backlash down and the accuracy of the whole system up for it to be useful.
@thomasmaiden3356
@thomasmaiden3356 5 місяців тому
I'd like to have one that can pick up the walnuts in my yard. Zoe the robot has not arms at this time.
@androofroo
@androofroo 5 місяців тому
It's true though... the use case is tricky. Personally I find a two segment arm offers a lot of fun with a less complicated build.
@123DragonHeart
@123DragonHeart 5 місяців тому
@@androofroo A SCARA style robot arm is a great example of that, can be made rather sturdy, and the mathematics for it are easy, thought I really like how this style of arm looks so that's why I went after it hahahaha.
@androofroo
@androofroo 5 місяців тому
@@123DragonHeart lolz ... it is important for the build to be cool.... it does keep you motivated 🤘
@Mfbzai
@Mfbzai 4 місяці тому
what software desgn do you use?
@robbiek9016
@robbiek9016 5 місяців тому
Actually, the marbles can't move freely in the bearing, because of the separators. The friction would be lower, if you just put them losely in, because then the only friction is between the glass marbles, which are smooth.
@123DragonHeart
@123DragonHeart 5 місяців тому
Hi! The glass marbles I've bought are anything but smooth unfortunately, or even that round for that matter, I couldn't find ceramic marbles in time to test them out, they are a cheap toy, so the tolerances don't matter. My first tests with the 3D printed bearing were using a bearing design where the marbles could touch one another, and the whole bearing would lock up once 2 of them come in contact. The separator walls aren't a perfect, but are an easy solution, but at least with these glass bearings that I've managed to find, some kind of separation between them is needed for the bearing to work at all reliably.
@robbiek9016
@robbiek9016 5 місяців тому
@123DragonHeart Oh okay I can imagine that, then I'll take my advice back
@MAYERMAKES
@MAYERMAKES 5 місяців тому
Glass marbels tend to stick very much, glass is grippy.
@petersage5157
@petersage5157 5 місяців тому
Robot is small scale version Stretch by Boston Dynamics?
@123DragonHeart
@123DragonHeart 5 місяців тому
I would love that hahaha, I'll maybe add a moving platform to it in the future to be like Stretch!
@AckzaTV
@AckzaTV 14 днів тому
make this an easy kit ali express can sell, so easy we can just pop it into a 3d printed robot arm and start controlling it with our smartphones, where all wiring is color coded or numbered and super easy instructions, like built into the inside of the 3dprint itself actual instructions lol, and the wires and motors all made super easy to install like building a prusa printer
@user-to6wg4uo2u
@user-to6wg4uo2u 2 місяці тому
Thats a cool robotic arm i know theorical physics so i can already imagine what its like to make my own after all Einstein was also a theorical physicist and he said himself that imagination is more important than knowledge.
@alimoharam4362
@alimoharam4362 3 місяці тому
why add a potentiometer to a servo motor ? it already has position feedback
@kritikusi-666
@kritikusi-666 5 місяців тому
This is louder than my Serbian neighbor. Cool project.
@FyrbyAdditive
@FyrbyAdditive 3 місяці тому
I must be weird as I have access to many many bearings but no marbles. I've lost them...
@user-ty8qy9mb8u
@user-ty8qy9mb8u Місяць тому
Can you implement it with Arduino mega pls help
@jesusmachado9087
@jesusmachado9087 5 місяців тому
I keep looking for a 2d paint spraying robot and can’t find one, if anyone one knows of a kit, video , anything please let me know
@123DragonHeart
@123DragonHeart 5 місяців тому
I've seen a lot of kits for wall painting robots, that works with 2 strings, or table top plotter, but they usually work with pens, though could probably easy be modified for spray painting. What kind of an application have you had in mind?
@warden9994
@warden9994 2 місяці тому
balkanac 100%
@MarinusMakesStuff
@MarinusMakesStuff 5 місяців тому
Sadly none of these affordable robot arms are good enough for any application other than for the sake of the project itself and looking cool. Above all I think it's interesting as a learning tool so in an educational sense it's nice to build an affordable robot arm. But beyond that there is just too much play and the end of the arm usually has way too much play and low repeatability. Especially during fast moves it takes a lot longer for the arm to stop moving when it halts and usually overshoots by a lot when trying to reach a certain point. Affordable robot arms suffer from a lot of backlash.
@123DragonHeart
@123DragonHeart 5 місяців тому
Oh I agree 100% with that, the whole idea here was going as low cost as possible because of that reason, to just keep it educational. But, that said, with another stronger servo so that the arm is fully functional, arms sized like this or the BRACCIO can be a good tool for learning things like direct/inverse kinematics, and of course, they're just fun to play around with and experiment!
@nigelhungerford-symes5059
@nigelhungerford-symes5059 5 місяців тому
Yeah OpenManipulatorX is about the starting point of real arms
@newagetemplar6100
@newagetemplar6100 5 місяців тому
100% agree, ideal for the hobbyist or student who is on a learning curve . Got to admit though there’s far more educational stuff on YT than you would ever get from a school. The ability for anyone to learn in a day on hear that would take a year as a teenager at school is quite remarkable. Know what you mean about tolerances, been in heavy industry and you certainly get to respect loads and G forces when a Y axis weighing half a ton can rapid at a scary federate 👍😵‍💫🫣
@isthattrue1083
@isthattrue1083 5 місяців тому
Have to disagree. They can still sort and box small items quickly and automatically. They are just capable of light duty tasks. I have one I built to do this with machine vision and AI. Also, correctly designed with Carbon Fiber - Polycarbonate plastic can be pretty strong. Supposedly up to 5X stronger than stainless steel.
@aaronmorgan2475
@aaronmorgan2475 5 місяців тому
Have you guys seen the ramp library? It lets you set rates for these servos. Its a huge improvement.
@markpippin9358
@markpippin9358 5 місяців тому
correction: an overly complicated robot arm.
@awo1fman
@awo1fman 5 місяців тому
Don't servos keep track of their own position? They have internal methods of doing that. Otherwise they wouldn't be able to self-center when you turn on the system (like for an RC aircraft control surface). You shouldn't need an external potentiometer. All you need to know is what position you *told* the servo to go to. And if the potentiometer is right there at the same joint and the same axis, it can't be any more accurate. You're wasting time, effort, materials, weight and money by adding the potentiometers. Especially when you take into account the built-in slop and inaccuracy of this kind of build. There are better ways of getting position feedback for more accurate and professional equipment, but that's not applicable for a cheap system like this.
@123DragonHeart
@123DragonHeart 5 місяців тому
Hi! Yup, the servos do keep their position using an internal potentiometer and circuitry for the motor, and I did mention that in the How a Servo works drawing. I could have hacked a servo and soldered a wire to the potentiometer inside, but I don't want anyone breaking a servo while trying to follow along, and the analog feedback servos I found were currently out of stock. But the point of the added potentiometers wasn't to get better motor control of the servos, but to rather be able to actually grab the arm and record all of the movements in real time as I'm moving the arm, as I've shown with the single segment test, I just haven't implemented that for the whole arm yet. As for other more precise options, there are a lot of cheap absolute magnetic encoders now like the AS5600, but would make the project more complicated and a bit of an overkill for these tiny servos, so I opted out and just went with the cheaper option, and they even provide some strength for the middle joints! Hope that clears it out a bit!
@thomasmaiden3356
@thomasmaiden3356 5 місяців тому
The extra potentiometer can also indicate if the servo failed, or if the spline has slipped or failed.
@italoosorio
@italoosorio 5 місяців тому
I agree. Arduino can read the internal potentiometer to make adjustments.There is no need for an extra potentiometer. That seam unnecessary from the beginning.
@123DragonHeart
@123DragonHeart 5 місяців тому
@@italoosorio Unless you have position feedback servos, or hack the normal servo (like the ones I was using in the video) by opening it up and soldering a wire to the internal potentiometer, you don't have any feedback whatsoever, and as I've explained in the video, the whole point of the additional potentiometer was to get position feedback when trying to record moves.
@zerker2000
@zerker2000 5 місяців тому
@@123DragonHeart At that point, any reason not to use a conventional DC motor, and control it closed-loop from the arduino?
Building an Internal Cycloidal Robotic Actuator
19:01
Aaed Musa
Переглядів 377 тис.
Open-source Industrial Robot Controller Part 2: Starting Over...
23:31
Excessive Overkill
Переглядів 205 тис.
Что будет с кроссовком?
00:35
Аришнев
Переглядів 2,5 млн
ОДИН ДОМА #shorts
00:34
Паша Осадчий
Переглядів 2,7 млн
Dive Into the Features of the Duplo DC 618 Machine - SMARTECH
1:13
SMARTECH Business Systems
Переглядів 1
120Nm 3D Printed Cycloidal Drive
19:44
James Bruton
Переглядів 210 тис.
Precision on a Budget: DIY Displacement Sensor for under $10
4:55
BubsBuilds
Переглядів 78 тис.
I Made a Robot Arm... in the Middle of my Room!
14:42
Jelle Vermandere
Переглядів 1,2 млн
How to Build a 3D Printed Robot Arm Tutorial (Arduino Based) - Part One
13:19
Build Some Stuff
Переглядів 105 тис.
How Robots Use Maths to Move
15:54
James Bruton
Переглядів 422 тис.
I built a rover using a Raspberry Pi & Arduino
16:56
Lukas Deem
Переглядів 116 тис.
Three Actuators: cheap, powerful and completely 3D printed
21:42
Skyentific
Переглядів 122 тис.
САМЫЙ дешевый ПК с OZON на RTX 4070
16:16
Мой Компьютер
Переглядів 79 тис.
Распаковал Xiaomi SU7
0:59
Wylsacom
Переглядів 329 тис.
Самый маленький игровой ПК
0:46
ITMania - Сборка ПК
Переглядів 624 тис.