How to cheat at Inverse Kinematics
Ғылым және технология
Using IKPY to work out the Inverse Kinematics for a 6DOF robot arm.
The URDF file and iPython script are on my github: github.com/roTechnic/Cheats6D...
The CAD and code for the arm are on my github: github.com/roTechnic/Robot-Arm
These are the supplies I used:
Game controller: amzn.to/3XrWK2gNEMA 17 stepper: amzn.to/3gtK3Qd
Arduino Mega: amzn.to/3nx3Oui
PTFE tube: amzn.to/3TrqDh1
Fishing line: amzn.to/3PDTo8o
Gear cables: amzn.to/3wLN46t
Stepper motors: amzn.to/3G8mjx0
Thin wall bearings: amzn.to/3H7JPZY
1.75mm PLA+ filament: amzn.to/3HvzVT5
Пікірлер: 101
I work as a robotics engineer, and these videos are awesome and I am sure you are inspiring so many people. Keep it up
@Hoenhighn1
6 ай бұрын
you guys hiring?
It amazes me how you take this complex stuff (which might as well be rocket science to me) and make it approachable. Not many go in-depth into the coding like you do -- thank you for that!
I don't know how long you've been making videos, but as someone who is progressing into the world of robotics, this channel is fascinating. Keep up the great work!
@roTechnic
Жыл бұрын
Wow, thanks!
My education is in automation and robotics. I just want to say that this channel is really, really good and relevant. I hope the algorithm picks it up so that more people will get to check it out. Keep up the good work! :)
@roTechnic
Жыл бұрын
Wow, thank you!
I am currently a master’s student studying robotics and in my Industrial Robotics class last fall semester, we did extensive work on forward & inverse kinematics, dynamic modeling, and control of the 6-axis manipulator arm. But seeing the theory in action here is really fulfilling. This looks awesome. I would love to build one myself. Thank you for inspiring us!
@roTechnic
Жыл бұрын
Wow, thank you very much!
Totaly educating. I hope you keep to share more videos especially about dynamics and kinematics.
It's so impressive that you are able to explain such a complex topic in under 10 minutes:D Great! Subscribed!
I've always been curious how they did the math for the robots at work. Definitely waiting eagerly for the next videos to build one of these at home!
Love your channel. So happy that you have started posting more often
@roTechnic
Жыл бұрын
thank you very much!
Brillant! Love watching the Progress of your arm
@roTechnic
Жыл бұрын
thank you
SO easy to understand and follow for a beginner like me. Thank you so much for your work.
Dude plz let us hear your awesome voice without skipping it. For us, non English languages this warm voice lets us feel heaven. 😍 I like all of your videos, the theme of videos, your character, the feeling of your room, the colours, and above of all, your science and the way you teach it to us, dude it's incredibe. Plz go on I'm waiting for your new works❤️❤️
Amazing work! The story telling style you're using makes the content easier to comprehend and digest
@roTechnic
Жыл бұрын
thank you
A very good quality content!! Definitely subscribed . Thanks
aww yeah! new RoTechnic video! I'm absorbing every bit of your series because I'll want to add a robot arm to my DIY exploration rover project
@roTechnic
Жыл бұрын
BEST COMMENT EVER!!!
You have the coolest voice/accent combo I have ever heard! Oh, and I loved the video as well:)
Very cool video!! Thanks for sharing.
Okay, you got me as your new subscriber,, thanks for provide the source we needed,,
First you show it. Then because you are awesome you wrote a book about it. And because you are also generous... You give it away to other tinkerers. You are a fresh breath of air and a gentleman. Well done!
@klausnielsen1537
4 ай бұрын
I still wish you would come back to this though. So awesome!
MAN! At first i thought it was me, i've already got an A in industrial robotics and while preparing the exam i listened all day joy division...so cool
Impressive! Nice work!
very cool and inspirational, thank you for this video series :)
@roTechnic
Жыл бұрын
Glad you enjoyed it!
Interesting and easy way to do IK :) I probably try your solution !!
Using ROS, particularly MoveIt, you can extend your control. It helps solve all problems you mentioned in the end. And trajectory control can be added
@roTechnic
Жыл бұрын
I'm definitely planning to use ROS and MoveIt, but it's a long road to get there!
Your videos and projects are impressive! You also have a very soothing voice. Almost too-soothing, I probably have no idea what I'm talking about, but is there a fair amount of audio compression here? It almost feels like your rather-soothing voice blends into white noise and I have a rather difficult time concentrating on what you're saying. 😅I don't remember that being an issue in previous videos though, so I'm probably just crazy. Awesome stuff!
@roTechnic
Жыл бұрын
Thanks. I'm afraid the audio is straight from the mic - no compression or anything. Maybe I just need to speak more clearly!
Dame well explained, i really like the efficiency of your video and editing skills. Speed learning. Never truly understood the inverted kinematics part untill now. And possible for any rotation placement translate software can handle it. Also make it into pure 3d axis gcode..
You really produce great content! Small question for the future, would it be possible in the software to use the controller to plan out a path and then store and repeat it?
@roTechnic
Жыл бұрын
thank you. and yes, but that’s the next video!
@brianimpellizzeri325
Жыл бұрын
@@roTechnic I subscribed to your channel and the github. I got Ros and Jupyter installed on Debian Buster trying to work out the details. Excited for the next video.
Amazing ! Great ingenuity and entertainment !
@roTechnic
Жыл бұрын
thank you Philip!
really impressive! one better soolution to the control problem is using omniverse Isaac Gym reinforcement learning - you can then trian a neural network to match any end-effector pose and if there is more than one solution you can reward the position you like best. You can then work on more advanced feature like adding things like camera tracking or gripping..
So nice!! Thanks a lot!!
Great video!! I am building robot as well, I wonder do you have some tutorial or guide how to link the IKPY with arduino?
Incredible motions! I'm pretty new to this robot and ROS thing and I have a question. The python script you use in this video, is it the same as the comercially available software like coppelia sim (I think it was called V-Rep back then)? I find the steps very similar and I'm more experienced with coppelia
@roTechnic
Жыл бұрын
not really, it does only one thing, converting the position to joint angles, whereas the software you mention has a lot more functions. I’ll be diving into simulation software in a future video
@rizalardiansyah4486
Жыл бұрын
@@roTechnic oh great! can't wait for that! Thanks for the reply!
I used the UR3 robot in school. We were able to physically move the robot to a location we wanted and save that position. Made things super simple for tasks, wonder if you could do the same thing here
That's really impressive. Could I ask for the software you use to show and control the urdf file in simulation? Thank you very much. Your videos inspire me so much.
@roTechnic
Жыл бұрын
it’s github.com/ihuicatl/jupyterlab-urdf
@duongTran-he6mk
Жыл бұрын
@@roTechnic thanks a lot. Pls keep your health and upload more video in the future.
I would really like to do a traduction to spanish of this video; it has good concentred information to those who are interested in Robots Arms. Imagine how much people are losing information just because our spanish community has not too much videos like this. Maybe kids that are interested and don't understand well english.
@roTechnic
Жыл бұрын
That sounds like a great idea
very helpful!
great stuff! one question if you could guide me please... how does controller know the current angles between joints? do you have some measuring tools plugged into joint or you just maintain those angles throughout the runtime of the controller script (after each move, as a "state")? Thanks in advance!
@roTechnic
Жыл бұрын
in the previous video I show how I linked magnetic angle sensors to each joint
Awesome!
Easy to understand content!!!!!!!!!!!!!!!!!1
you would think there would be software that allows you to define the arm more easily then typing out an urdf file. You are doing very interesting work.
@roTechnic
Жыл бұрын
Hi Chis, there is software available to convert Fusion 360 models straight into URDF, but I felt that getting to grips with a simple URDF file would probably be more educational - it's nice to understand how things work before using automated tools.
@chrisBruner
Жыл бұрын
@@roTechnic I use FreeCad which can create a step file, which I believe is a common format. I agree that it's nice to understand how things work. The value labels are not easily guessed at though, and I wonder if some specifications are missed just because you didn't know about them. Also in the rotate z access the value was 0,0,-1. Why -1 and not 1?
@roTechnic
Жыл бұрын
@@chrisBruner Yeah, some of the specifications were missed out to keep this a small and simple as possible - this in the minimum that was needed to make this work - I know you can do a lot more with URDF than I did here. the Z axis was -1 because it rotates anticlockwise, not clockwise. Have you seen any IK chains that take STEP files as input, as fusion also has the ability to output this format?
I don't remember exactly what is is, and can provide more info if interested, but I was doing a robot arm project (Simple MG995 servos), modeled it in fusion and found a really cool fusion to URDF converter asdon someone had made. It required me to flatten the hierarchy tree and joints first, but came out really well with ROS.
@roTechnic
Жыл бұрын
Oh, that sounds super useful! If you remember what it was, I'd love to know!
@BeefIngot
Жыл бұрын
@@roTechnic I dont believe I can link without getting caught in the spam filter on youtube so can only give the search term of "fusion2urdf" which should bring it right up. Its a script hosted on github which has decent enough documentation, and while it hasnt been worked on in a small while I have no reason to believe it doesnt still work.
@roTechnic
Жыл бұрын
thank you. I’ll give it a go.
Amazing.
Hi, amazing video! I just cant get Ikpy inported in jupiterlab how would I do that ?
What is the Jupiter stuff you're doing I've never seen this before outside of ml stuff
Great video, learning IK was super daunting, but worthwhile. IK looks more complicated then it actually is, but seeing the maths is a bit of a yikes! Essentially all you need to do is, loop through each joint treating the later joints of the chain as stiff, so all you need to do is solve a simple one joint problem. Then you move the joint a little fraction towards the target location, constrain by the hard limits and move on to the next joint. As you repeat the procedure multiple times through the chain, the end point gets closer and closer to the target position until you call it solved.
@roTechnic
Жыл бұрын
Thanks, you've inspired me to give it a go!
@omega_one1318
Жыл бұрын
For those who are wondering, this method is called "gradient descent". It's an alternative to hard-solving the joint angles for the target end effector position, which saves you the time and effort of making a fully fleshed out IK model.
Big fan of your content. Hello from Ukraine btw
@roTechnic
Жыл бұрын
thank you. hello from the UK!
Gotta appreciate that Joy Division T-shirt
@roTechnic
Жыл бұрын
Robots, robots will tear us apart again.
I just wanna say your voice is fuckin majestic.
Heyy please next will how do you intergrate with hardware part ? Please make separate video on it moveit package also........
@roTechnic
Жыл бұрын
I'm planning a video on ROS and MoveIt, but I think that'll be a series in itself, as it's quite a big topic
I would put a lcd screen on joystick to show x y z current position
Is it arduino atmega2560 + ramps baord based?
Hello dude Can you help me calculate the inverse kinematic equations of my 9dof robot?
can we use Claude to write these?
Subbed ✅
Muito bom !
Dude... What about the orientation of the end effector this is not finished yet
@roTechnic
Жыл бұрын
Dude, I've got to have something for the next video!
how about saving points and moving in loop ? :)
@roTechnic
Жыл бұрын
That would be really easy to add :)
@povilasvaiciulis7931
Жыл бұрын
@@roTechnic is your ros on windows or ubuntu ?
@roTechnic
Жыл бұрын
@@povilasvaiciulis7931 not running ros for any of this yet, but I'm working on it for future videos - on windows
love how he talks
You were so close to beating the average youtube "i'm going to make a robot arm" series, but no, if you stop here at, the "I got an IK library to work with a controller" you'll be stuck slightly behind the average High School robotics class. Don't give up, you can do it, get yolo based tracking or something to push your series into the "advanced High School robotics" level.
This is going to sound weird as hell...but I've watched several of your videos now, and every time I do...there's this little voice in the back of my head going "HE'S NOT REALLY BRITISH!!!" Now, naturally, I don't actually believe this little voice. "Why would anybody create a KZread channel where they release tons of content, all where they do an impeccable but fake british accent?", I ask myself. And that's about as far as I get. I then watch some awesome robotics or robotics-adjacent content...occasionally having to tell the little voice to shut up, and that you're not actually an American doing the most perfect British accent ever. You're not, are you? :P
2:11 lies. in no way can you derive .072 from any combination or operations of the numbers on the screen.
Can't you just link it to an AI and let it figure it out?
@roTechnic
Жыл бұрын
that’s a great idea for a video!
Thanks man! I had a problem had to add this import sys !{sys.executable} -m pip install ikpy !{sys.executable} -m pip install numpy !{sys.executable} -m pip install matplotlib !{sys.executable} -m pip install ipywidgets !{sys.executable} -m pip install ipympl in order to get it to work.
The way you take your time to explain the details is what I love the most about your videos 😍😍❤️ . Do not waste another day > Promo-SM !