Open-source Industrial Robot Controller Part 2: Starting Over...

  Рет қаралды 227,630

Excessive Overkill

Excessive Overkill

Күн бұрын

Пікірлер: 310
@sdminer49
@sdminer49 Жыл бұрын
My 4yo son watched this with me and now he can’t stop talking about how much smarter you are than me. Thanks a lot, jerk. In all seriousness - nice work. Can’t wait to see the final product.
@takeguess
@takeguess 10 ай бұрын
😂🤣LMFAO
@sketchaus
@sketchaus 4 ай бұрын
I watched this and now can't stop thinking about how much smarter your 4 year old son is than me. Thanks a lot, jerk! :)
@EVehicleJ
@EVehicleJ Жыл бұрын
"AC power is basically just really long distance regenerative braking."
@amemestoanend1958
@amemestoanend1958 Жыл бұрын
Haha I love the variety of ways people describe AC for you're quote to "wall gas".
@-r-495
@-r-495 Жыл бұрын
Amen, brother.
@xani666
@xani666 Жыл бұрын
That's kinda how big generators in power network keep in sync
@dkraft
@dkraft Жыл бұрын
I've got two Motoman K30's (1995 era) running in production and its a nightmare trying to find Servo Drivers. Looking forward to moving this forward. The world definitely needs opensource 220V / 480V 20VA controllers!
@zyxwvutsrqponmlkh
@zyxwvutsrqponmlkh Жыл бұрын
Loads of older CNC machines still have good steel and use these same servos and are impossible to keep running for similar issues. The biggest problem is decent servo drivers that don't cost 8 grand.
@carsonchan5102
@carsonchan5102 Жыл бұрын
@@zyxwvutsrqponmlkh every problem is an opportunity
@IAintScaredOfNoGhost
@IAintScaredOfNoGhost Жыл бұрын
​@zyxwvutsrqponmlkh the wild part is that most of this technology is gatekept at a national legal level. Japan and the U.S. and Germany even went so far as to stamp "illegal for export" on all Okuma 2spV60 lathes from the 2000s, due to them having these expandable motion controller boards inside of them.
@Mtaalas
@Mtaalas 11 ай бұрын
@@IAintScaredOfNoGhostwhile Russia, China and other nuclear weapon countries are flexing their military muscles... I'm pretty OK with export restrictions on technology. It's not just about protecting ones financial interests.
@JashJacob
@JashJacob 10 ай бұрын
This is why we scrap these old drives and motors. Add new servos and drives.
@hydipieterse9318
@hydipieterse9318 Жыл бұрын
Easiest way around fanuc encoders to find reliable and affordable drives I have found recently is to ditch the factory encoders and replace them with 16bit encoders from DMM Tech in Canada. I have a couple of fanuc redcap motors been laying in storage for years due to the high price tag to try and revive them. I took a chance and ordered some encoders from them together with their DYN 4 ac servo drives (200vac), and within a few hours I had the motors running like new ones. Hardest job was to make custom fitting plates to fit the encoders. They supply you with software to do the encoder alignment, no fiddling with scopes etc. Just wire it up, fill in a few parameters and if the motor phase connections are done correctly, you will have the motors spinning in minutes. I have no affiliation with them, just found it was the cheapest reliable option after digging for many years. Their online support are also top notch.
@QuebecoisSti
@QuebecoisSti Жыл бұрын
You should make videos or blog about it. Alot of people would love to see the process !!
@svuvich
@svuvich Жыл бұрын
Dude this stuff is my childhood dream. I hope you get it done and I'll sure try to help your channel with whatever I can
@joels7605
@joels7605 Жыл бұрын
I have a Fanuc CNC mill from the year 2000. It regenerates when the axis decelerate. Makes the LED lights and GFCI outlets in my house whistle. Also I will totally buy that new driver you're building. Keep being awesome!
@togowack
@togowack Жыл бұрын
I have one for 6 axis in c++ that runs through arduino 100% custom programmed and better than the machine specific junk that comes with these robots
@bobedd1040
@bobedd1040 Жыл бұрын
post the code@@togowack
@TheCrazyPozavnist
@TheCrazyPozavnist Жыл бұрын
@joels7605 what do you mean the outlets whistle?
@joels7605
@joels7605 Жыл бұрын
@@TheCrazyPozavnist They literally make noise. You can audibly hear what the CNC mill is doing to my electricity. My CNC machines are in my shop which is about 40m away from my house, and the GFCI outlets in a completely different building make noise.
@ДаудМухамеджанов
@ДаудМухамеджанов Жыл бұрын
​@@joels7605GFCIs are transformers, so it means that your machine is reducing the electricity quality by addition of high frequency harmonics. So, PFC or cheaper solution is just a bunch of ferrite beads or reactors(inductors) to improve the power quality.
@alexcrouse
@alexcrouse Жыл бұрын
My buddy has a 7 axis robot we are trying to get running, so we will be following this closely! It's all DC servo with resolvers, and software will definitely be our shortfall.
@MrAlexhasker
@MrAlexhasker Жыл бұрын
Your motivation , persistence and desire to learn is awesome. I’d love to to quit my job and just do cool projects like this
@von...
@von... Жыл бұрын
just embezzle a few million, move to Belize, & you can do it! we believe in you :) (for legal reasons, I am clarifying that this is a joke lol)
@LeuxSeveN
@LeuxSeveN Жыл бұрын
Hi german automation software developer for industrial robots here; I madly aprove. we need Open source Robot Controllers.
@AdaptivePhenix
@AdaptivePhenix Жыл бұрын
Annin Robotics is a start. I would eliminate the steppers (even if they are closed-loop) in favor of servos.
@verynearlynatalie
@verynearlynatalie Жыл бұрын
So happy to see an update. I've been working to build a controller for some old robots and am excited to see where this project will lead!
@jamescullins2104
@jamescullins2104 Жыл бұрын
Great job, keep up the good work! I think an open source controller would be an excellent gateway into modern small-scale integration. It could lead to great cobots, research, or even hobby use for other platforms such as metal 3D printers and multi axis EDMs. Super cool!!!
@pimvandervliet
@pimvandervliet Жыл бұрын
Very cool project, as someone that programs CNC motion controllers I’d say you have a lot of work on your hands doing this alone. But I’d love to see you succeed
@LikeFactoryMade
@LikeFactoryMade Жыл бұрын
What kind of motion controllers are you programming? I am a software developer myself, but ever since I started building my own cnc controller app, all I dream is coding for something related.
@pimvandervliet
@pimvandervliet Жыл бұрын
@@LikeFactoryMadeI work for Eding CNC, we develop a range of PC-based CNC controllers for milling machines, laser machines, lathes etc. I’m an embedded software engineer there, so I mostly do firmwares and bootloaders. What are you currently developing?
@Totalis1989
@Totalis1989 Жыл бұрын
Just an FYI, although I haven't demonstrated it with a FANUC protocol, I have managed to make the Raspberry Pi Pico poll encoders using the BiSS or Mitsubishi protocols. I can handle 8 BiSS encoders using the PIO hardware of the board. Probably not the best solution when compared to FPGAs but they are very cheap. Love what you're doing btw, keep it up. Greg
@Totalis1989
@Totalis1989 Жыл бұрын
If you can give me the details of the encoders on the Fanuc Motors, I will see if I can get my hands on one and test it on my Pi Pico setup
@ExcessiveOverkill
@ExcessiveOverkill Жыл бұрын
docs.google.com/spreadsheets/d/1nRmV0D8c2zIuhrnp7eMNqSO8C0mfWp4tSzxPsphXA7A/edit there’s a sheet that has the protocol sort of explained. A860-2014-T301 is the specific encoder part number, but it seems most aA64i encoders are similar.
@TheStinkyToast
@TheStinkyToast Жыл бұрын
The RP2040 PIO‘s were also the first thing that came to my mind instead of the fpga‘s. From my point of view it seems easier to get going and is a lot cheaper as well.
@TheRainHarvester
@TheRainHarvester Жыл бұрын
​@@TheStinkyToastRpi are very bandwidth limited on the GPIO. Do you use external chips to monitor the encoders?
@handdancin
@handdancin 9 күн бұрын
@@TheRainHarvester PIO's are clocked at 125 MHz default, you can definitely write something to handle it. they are 5 bucks! definitely worth a try, and i think they are much easier to use than fpgas
@KravchenkoAudioPerth
@KravchenkoAudioPerth Жыл бұрын
It's rare that I listen to someone that grasps this so well. I will be watching and learning. Thanks for taking the time to make this video and share it! Mark
@Neo7CNC
@Neo7CNC Жыл бұрын
I've always wanted to utilize an industrial robot but the ties to the manufacturers software and controllers has always been a deal breaker. Being able to utilize a robot without the stock controller is huge. I subbed to follow your journey. A finished product that could be used as you envision would be fantastic. Thanks for all your work.
@mrbobsevil
@mrbobsevil Жыл бұрын
Hey man I work in the automation industry and do some of this stuff as a hobby as well. I am so impressed by this project. Can't wait to see more
@ventusprime
@ventusprime Жыл бұрын
A intresting thought , feed the signalns and movment to a neural network , and task to translate the signals of the decoders.
@paulharvey6719
@paulharvey6719 Жыл бұрын
your garage is the Bat Cave!!
@Record3677
@Record3677 Жыл бұрын
This is some of the coolest stuff I’ve ever seen
@h4z4rd42
@h4z4rd42 Жыл бұрын
Man... so much knowledge I'll never be able to get even close to. Even though there's a large Kuka sitting in the corner of my workshop collecting dust. Ex colleague bought it several years ago with such an outdated controller it doesn't even have USB. Anyway, never been able to make it work. Any chance to make it useful would be just incredible. Keep up the good work!
@markmaker2488
@markmaker2488 Жыл бұрын
Great explanation of what your issues are and how you plan on solving them. Can’t wait for the next episode. Well done 👍
@seancollins9745
@seancollins9745 Жыл бұрын
there's a good chance path blending is causing trouble, set g64 to p0.01 in your INI for the rs242 startup routine. The problem with the encoder handling within linuxcnc, is that it is not done by interupt, and I kinda went on a rant about it a few months ago. I have been working on porting EMC2 to OpenRTOS from TexasInstruments for use on their hardware. But dude, I don't have enough time. I think getting EMC off of linux is where I would start. Then with some work there's a way to fix the short coming of the control software. Keep me aprised though, I have some skills as a C programmer for state type logic and deep mechanical engineering skills.
@dinok4774
@dinok4774 Жыл бұрын
You are legendary! It's my dream to have an arm of my own one day! Keep on making amazing content, you are an inspiration!
@johnneyland3334
@johnneyland3334 24 күн бұрын
I believe the way your explaining how the Fanuc controller calls for the encoder value of specific axis's when needed. That sounds like the most efficient way to do it. Since at any given time a command move may only require 1 or 2 of the available 6 or 7 axis to move so why would you want to carry the overhead of data communications from the delta of servo motor/encoders not needed when you already know where those joints /encoder counts will end up anyway right ? I like your proposed FPGA architecture. That is certainly the way to go today and like you said keeps the hardware always expandable. FPGA's are the future of all electronics. Software defined control law and FPGA. Great work ! Thank you. J
@nickbaddorf2673
@nickbaddorf2673 Жыл бұрын
I have used ROS (Robot Operating System) with the MoveIt program to control a custom robot arm. I never ended up finishing the project, but it wasnt to hard to get Moveit to work with my arm, and using ROS would make it potentially easier to setup the encoders and all the other control stuff.
@kensgold
@kensgold Жыл бұрын
If you do need to desolder those mosfets at 13:18 , its not that hard to get them off in one go. Take a paperclip or similar thickness piece of uninsulated copper wire, and solder it to each of the through hole components legs with a big blob of solder. Then heat the wire up with a large soldering iron tip. The wire transfers the irons heat to each of the legs pretty equally, and you can just pull the component out from the other side of the board.
@peejay1981
@peejay1981 Жыл бұрын
Also, a syringe style solder sucker can work well.
@x_ph1l
@x_ph1l Жыл бұрын
That's definitely an involved project. Love the idea of using the driver board for PFC
@b.buster
@b.buster Жыл бұрын
Super cool! The engineering department at my college has one of these and I never knew about all the intricacies involved with having it communicate with a computer.
@benharris4436
@benharris4436 Жыл бұрын
Suggest you aim to include dual STO inputs on the motor controller. And set up the safety+motion controller to eventually support Safe stop 1 (SS1) - which is basically just a configurable delay before triggering STO. Have the motor controllers in charge of the brakes, and link that in to STO chain.
@jimmykreutz6087
@jimmykreutz6087 Жыл бұрын
I'm a purely mechanical guy, but this is some Deep nerd stuff right here, not in an arrogant way tho just waaay deeper than I could comprehend
@mrraimundo130
@mrraimundo130 Жыл бұрын
I will support you so you can dedicate more time to these badass projects.
@whitneydesignlabs8738
@whitneydesignlabs8738 Жыл бұрын
Awesome work! Most is over my head, but I love trying to understand.
@PulsechainProfits
@PulsechainProfits 5 ай бұрын
SO impressed. Hope you release your solutions to the world.
@morkovija
@morkovija Жыл бұрын
Internet - do your thing. This would be so awesome to have a community around this project
@rcircuit96
@rcircuit96 Жыл бұрын
I would love an inexpensive HV motor driver like that! I do quite a bit of motion control/robotics/embedded systems as a hobby, and my day job is industrial control systems, so I actually have a few motors laying around it would be nice to have drivers for. and a project like this really gets me excited! it would be great fun if that could run with a 480VAC supply, as that would be easy and cheap enough to rig up a transformer for in a residential setting, and could run some really high performance motors. but then you got to deal with the nearly 700V peak to peak voltage... I don't see very many quadrature/incremental encoders in my day-day, they have largely been replaced by EnDAT, Hiperface DSL, and SSI. I've even dealt with a few that go direct to EtherCAT. as you mentioned, an FPGA could certainly talk to all of those protocols, however a lot of modern micro-controllers have some kind of programmable hardware fabric that could likely be convinced to speak most of those protocols outside of the actual CPU. Cypress's PSoC architecture, and the Ras-Pi RP2040's PIO state machines both come to mind as possible options that would be ~1/10 the cost. Thanks for the awesome niche content. definitely cant wait to see where this goes!
@robertboateng-duah9555
@robertboateng-duah9555 Жыл бұрын
Lovely work! I really enjoy the progress you're making. Big ups!
@koetschkid8733
@koetschkid8733 Жыл бұрын
Super interesting project and looking forward to see how things progress. If you are looking for ways to simulate your robot and test out/tune your motion control there are a number of open-source versions of common tools used in industry, such as OpenModelica, Scilab, & others. They have somewhat of a learning curve but it's amazing how much control prototyping you can do with just a simulated model of your system and then fine tune with the real system once you have something working.
@tweebs1
@tweebs1 Жыл бұрын
Amazing... I only wish I had spent my early EE days learning FPGAs... I don't think my instructors had a clue either. Great overall explanation of the state of options for controlling industrial robots.
@H3xx1st
@H3xx1st Жыл бұрын
Low voltages caused by high resistance neg/gnd loops or voltage leaks causing positive gnd. Also, back emf can cause dropouts due to the control sigs not having enough disparity between VCC and GND(seen on the oscilloscope with the base voltage jump 4:52) Possibly Separate each GND from the motor/actuator from all other controllers
@takeguess
@takeguess 10 ай бұрын
You are a God sir if you successfully implement all of this into open-source. You are one of the most humble tubers around def rang the bell.
@nickvanderpool7434
@nickvanderpool7434 Жыл бұрын
This has been a very fun watch. I went through almost the exact same thing with a Unimate PUMA 560 robot I wanted to resurrect. Similar hardware encoder issues, similar starting again from scratch mid-way through situation... stay strong.
@CelataForCongress
@CelataForCongress 3 ай бұрын
If you build that controller, you would make a killing. Not only that but you would open the doors for so many people that don't have your expertise (like myself...) to do some really cool stuff! I say do it!
@MitchellTakes
@MitchellTakes 9 ай бұрын
It was a struggle and a pleasure to keep up with what you were talking about! Awesome work! Subscribed, looking forward to what’s next
@arsenynekrasov4878
@arsenynekrasov4878 Жыл бұрын
This is a great thing you're working on. Well designed open source controller would be able to help revive tons of mechanically fine robots with dead electonics. If you'd like some FPGA support, let me know. regards, hypernyan
@ExcessiveOverkill
@ExcessiveOverkill Жыл бұрын
You should join the discord! I'm working on getting a contribution system planned out so we can begin diving into the coding.
@phildegruy9295
@phildegruy9295 10 ай бұрын
Something that might be interesting to some. A particular company I worked for had some of the first Fanuc (cast on the robots was GMFanuc) industrial robots in production as paint robots. If the robot(s) were powered off or lost power through an e-stop or some other reason, or had to have a new encoder installed on an axis, we would need "remaster the robot" which involved installing a special mastering fixture onto the robot, fold the robot up into the fixture by releasing brakes and physically moving the various axis into their zero position on the fixture and pin it to the fixture, then relax the robot after it was pinned. Then go to the robot controller and read the current encoder values from the terminal, compare it to the factory zero master encoder value on the master chart for that robot and axis then add or subtract an offset value so the actual value would equal the master value, then enter the adjusted value into the axis through the terminal save it and go to the next axis. This was then the known zero position of each axis that had any errors adjusted out.
@max_eley
@max_eley Жыл бұрын
Great to see another vid and this is absolutely awesome!, There is currently nothing out there quite like you have described, I will be following this project quite closely and wont have a problem supporting it via patreon or something. I was thinking about buying an old DMG 5 axis milling machine, that has control failures beyond reasonable repair and kind of experimenting with it, I think you project would be a great match and generally good testing for it. Thanks for sharing!
@MrWaalkman
@MrWaalkman Жыл бұрын
Looks like a robot out of the Body shop in a GM plant. :) I hope that you weren't hanging off of that robot while it was live...
@MrObsvenchilde
@MrObsvenchilde Жыл бұрын
I think the community missed the opportunity to hire you full time as this project is easily worth a salary.
@OhaaG
@OhaaG Жыл бұрын
Very nice video and super interesting project! Just one advise from my side, if you push the robot (like in 11:14) please have a deadman switch at hand, even if you are 99% sure that nothing can happen.
@artigeniusStore
@artigeniusStore Жыл бұрын
you work as a genius. but i think open source for industry robot is imposible. just the dream. thanks for your great work. waiting for your next content.
@100000suns
@100000suns Жыл бұрын
First time here and already know where the channel name comes from, looking at the linear guide and block for the revised pen holder. 👍
@HouseGurke
@HouseGurke Жыл бұрын
This sounds like an incredibly interesting project. Can’t wait for more updates.
@lukasrambold451
@lukasrambold451 Жыл бұрын
Have you heard of EtherCAT? It's a network protocol for industrial automation that can do up to 30kHz update rates with low latency and jitter. You would daisy-chain your motor controllers up with using ethernet and hook up the whole thing to a computer that runs the motion control. The chips to do it are surspringly cheap (LAN9252 is ~$10) and can be used with any microcontroller or FPGA. Maybe this could be a fit for this project, as this would make it much more modular and extensible. Adding peripheries or even an additional axis would just be a matter of adding another box to the network. (also it wouldn't require to design everything from scratch, there are already a lot of EtherCAT motor drives out there).
@ExcessiveOverkill
@ExcessiveOverkill Жыл бұрын
I did look into using ethercat but the IP for the fpgas was like $10k. I think I thought the off the shelf chips wouldn't work for some reason, I don't remember exact why rn. I planned on using rs422 which would give me like 30khz updates with no daisy chaining, but I'll look into those chips again.
@dkraft
@dkraft Жыл бұрын
@@ExcessiveOverkill This was my gut reaction as well - RS422 but with separate drivers for each motor channel for best throughput. Ethercat is price overkill
@AdaptivePhenix
@AdaptivePhenix Жыл бұрын
"low latency and jitter" they boast as if it's a _good_ thing ("a little bit pregnant"?). How about _zero_ latency/jitter. It's a world of EMI (PWM), who in their right mind throws around data at such a high rate? Marketing BS.
@GregsStoneYard
@GregsStoneYard Жыл бұрын
On the one hand this is very impressive, on the other the time saved to just buy a slightly newer robot and instead put the effort toward something like open source middleware to do the CAM to Robot language. Right now it seems the choice is either something really expensive like SprutCAM or something only slightly expensive like RoboDK. I'm no robot expert, but it seems whatever system you come up with will always lack what a user would get from a functioning commercial robot controller. I've seen 2016 ABB robots go for $5k at auction recently, these were not beat units. I'm in the process of setting up a 2013 ABB 6640 (180kg payload, 2.55m reach). I did pay a lot more for it than $5k, but it came with 7th axis and a guarantee... Anyway good luck with whatever path you choose.
@MatheusmsMendes
@MatheusmsMendes Жыл бұрын
Out of nowhere: Lets rely on learning VHDL or Verilog and programming an FPGA just for fun and by the challenge to conclude a project ! There will be many nights over my friend, good luck
@ExcessiveOverkill
@ExcessiveOverkill Жыл бұрын
Yes, it’s not fun if it’s not challenging
@fraserbc
@fraserbc Жыл бұрын
@@ExcessiveOverkill Don't fall into the trap many FPGA beginners do and test in real hardware without simulating. It makes debugging very painful, not least because of the incredibly long build times. Have fun with Vivado :)
@jesseevers
@jesseevers Жыл бұрын
God this is outrageously cool...I'm more of a mechanical guy (cars/motorcycles/etc, just got a manual Bridgeport), but I'm also a software engineer and I've always been fascinated by the idea of using computers to run physical machines. Seeing this really gets my gears turning ;) Also, I've rarely seen someone with your level of knowledge talk about something this complex so clearly! Good on ya :)
@SomeTechGuy666
@SomeTechGuy666 Жыл бұрын
I love what you are doing. Subscribed. Keep up the good work. Your explanation of motor controllers and motion controllers was very good. Not many people understand this.
@joshmdmd
@joshmdmd Жыл бұрын
this video makes me want to get back into this stuff. I joined the discord. my background is mechatronics. I ran a machine shop for 5 years. I know machining, best practice for design, and a little bit of general programming and about microcontrollers, but never took the dive into making my own boards. I always saw H Bridges and thought it was criminal how they were priced. It makes any hobby project relatively expensive (especially for people still in school who are interested in this sort of stuff like grade 12 through university).
@adammontgomery7980
@adammontgomery7980 Жыл бұрын
Good luck! I've stayed away from FPGAs because I just consider them above my pay grade. I'm not afraid to jump into unknown waters, but it's already hard enough learning how to write and debug embedded MCU code, not to mention motor control stuff.
@mcstarcoin
@mcstarcoin Жыл бұрын
I absolutely love your work and the Apache controller case Idea has been super helpful with my cnc project so I wanted to say thanks! And just out of curiosity, where did you learn how to do such cool deep-dives into the electronics? Thanks for the new post and keep up the good work! :D
@ExcessiveOverkill
@ExcessiveOverkill Жыл бұрын
Mostly from watching a ridiculous amount of engineering KZbin videos. I kinda just learn as I go.
@serpent213
@serpent213 Жыл бұрын
@@ExcessiveOverkillYes, like with TV: YT makes smart people smarter and dumb people dumber. 😉
@agler_
@agler_ Жыл бұрын
​@@ExcessiveOverkill you must have some sort of formal electronics training? I am awestruck with how much you know yet you seem so young. I can't imagine how long it would take me to reach a level of knowledge to not just understand how all that stuff works, but to improve on it.
@nickdarrow4873
@nickdarrow4873 Жыл бұрын
I’m interested. I ended up passing up on 2 free Fanuc welding arms because I realized it was going to be impossible for me to reverse engineer the motor and motion control. I can follow directions and learn along the way, but blazing the trail you’re on is outside my capabilities.
@Wrenchmonkey1
@Wrenchmonkey1 Жыл бұрын
This is an incredible undertaking! Subbed to see where this goes!
@wi_zeus6798
@wi_zeus6798 Жыл бұрын
You rock! Awesome series, thanks for uploading
@theFrankmeister
@theFrankmeister Жыл бұрын
Have you seen the VESC Project? By far the best Open Source brushless motor Controller. Supports many encoders and protocols
@RJTC
@RJTC Жыл бұрын
Interesting project! Re. the drive system, I'd suggest you break it down a bit, for each axis: A dual-loop speed servo, with the outer loop managing speed error and the inner loop managing motor drive current. Then separately, a position loop that compares instantaneous target position to actual position and gives the speed servo a signal directly proportional to that, limited to ~80% the maximum drive system speed capability (or whatever below that you consider safe). The G Code interpreter and path calculation system only update the target positions & the servo position system half makes the machine track that. That's how large machine tools typically work. Some also have an element of the path speed added in to the loop to reduce following error at higher feedrates, but that is very critical and can easily cause instability, so I'd suggest you use the pure "following error * fixed gain -> speed" setup. In a machine with good mechanics and low backlash, the gain constant is usually set to give 1mm following error at 1m/minute feed, on a linear axis. I'm not quite sure how that translates to rotary! The current loop section of the speed drive has an integrator (or PID), so the current (motor torque) adapts to the load without any significant change in following error. Position holding should be limited only by the motor capability and mechanical strength of the machine, at that. I spent a lot of time with the first system I designed (early 80s) trying different control strategies but it came down to the simple, linear, following error to velocity setup being the most effective and accurate. (The controller ran on an MC6809 at 2MHz, with resolver position feedback and Inland Motor TPAR analog / thyristor axis drives, on 10m and 5m Butler Elgamills, replacing dead bitslice CPU paper tape systems. They used all fixed-point maths except for the operator position display, and no trig at all, even for radius / circle interpolation).
@a_pullin
@a_pullin Жыл бұрын
Did anything ever replace TinyG? Last I looked (years), there was nothing that good out there for DIY CNC controllers, although some mention of people repurposing Klipper. I would be surprised if a 600 MHz M7 MCU would not be able to handle this application with appropriate programming. The CMSIS DSP lib has accelerated PID controllers for f32 and q15/31 formats. FPGA tools are less insane now. Yosys support Lattice, Gowin, etc to varying degrees. MYIR Tech has some Zynq modules that you might want to look at. Digilent has a socketable Spartan-7 module. Sipeed has a cheap Gowin-based 20k gate board. Both of those will have limited I/O, though.
@NateD77
@NateD77 Жыл бұрын
Can't wait to see Rob (RO8) cutting some interesting stuff with its router spindle.
@KayleMaster
@KayleMaster Жыл бұрын
This is the way. Reduce, reuse, recycle. Well done on the effort so far!
@Steph.98114
@Steph.98114 Жыл бұрын
Its this sort of work that give me hope for our future, one where manfactoring isnput back in the hands of the people and not the rich
@EletricistaEmBrasilia
@EletricistaEmBrasilia Жыл бұрын
Truly Inspiring, I will follow all the steps.
@andrewmakesthings887
@andrewmakesthings887 Жыл бұрын
Hi, I've been working on a similar type of motor control project that uses FPGAs to control smaller / lover voltage BLDC motors. I found a pretty sweet FPGA that I've been developing with that might be a good match if you want to swap the zynq out for a smaller FPGA that would live in each motor controller (it is also waaaay cheaper). The chip is a Gowin GW1NSR-LV4C. Sipeed makes a dev board for it that is pretty good for figuring out their toolchain. It has a single ARM cortex M3 along with 4K logic elements which is definitely enough for some custom communications peripherals and a FOC algorithm at some pretty high speeds (I'm trying to do all of my loops at 40Khz +)
@briansites8476
@briansites8476 Жыл бұрын
Really interesting and look forward to seeing more. Thank you.
@ventusprime
@ventusprime Жыл бұрын
one thing i like robot arms well ind a I work with them sometimes, in my personal opinion , for smaller arms you are better off making your own, for bigger ones its worth the intellectual time, if you work with this types of machines.
@wildgophers91
@wildgophers91 Жыл бұрын
Weirdly, I've been noodling doing the exact same thing. Using FPGAs to handle encoders. I can only wish you the best of luck because this seems like a TREMENDOUS undertaking.
@TheRainHarvester
@TheRainHarvester Жыл бұрын
Why not run a dedicated microcontroller per encoder? Won't a 80MHz controller be able to sample the encoder and sent the count upon a request? They have interupt gpio so you never miss a pulse. At 80MHz you would have many instructons to sample at 3kHz.
@splackism
@splackism Жыл бұрын
I just discovered your channel thanks to yt magic. I'm looking forward to seeing where this goes and hope that you'll do so well that you can make this a full time gig!
@StanIvanov
@StanIvanov Жыл бұрын
Look into Cypress PSoC 5. I've been able to synthesize motor drivers in the fabric before, the microcontrollers run at 80MHz, they're super easy to program, and pretty inexpensive
@irkedoff
@irkedoff Жыл бұрын
I hope the drive goes well.
@agent2153
@agent2153 Жыл бұрын
Really cool stuff, looking forward to the next episode!
@tuskiomisham
@tuskiomisham Жыл бұрын
Oh woah! he's back!
@MrBennybrice
@MrBennybrice Жыл бұрын
Awesome. You've given me hope for my Fanuc 100!
@stefanguiton
@stefanguiton Жыл бұрын
Excellent work! looking forward to seeing how it goes
@alexkart9239
@alexkart9239 Жыл бұрын
my first thought is maybe the brakes spontaneously engage for just a fraction of a second when the supply voltage drops due to the servo motors are drawing some current.
@QuebecoisSti
@QuebecoisSti Жыл бұрын
If you manage to make a decent DIY/retrofit controller available for older servo drives/motors/robots it could become quite useful in the CNC world as well. Alot of older good heavy machines are send to scrap metal because their lack of recent motion and electronics. Alot of them use FANUC components.
@play4dayzproductions347
@play4dayzproductions347 Жыл бұрын
My guy, you're an absolute Wizz! God Bless!
@Larock-wu1uu
@Larock-wu1uu Жыл бұрын
You are an absolute madlad! Awesome!
@Techn0man1ac
@Techn0man1ac 9 ай бұрын
Good luck 👍
@zoro-i8u
@zoro-i8u Жыл бұрын
This is like an upgraded crane, almost, but more mobile and smaller. Great work, would love to build one of these for myself and see what they do. Integration of large machines like this could eventually become a large exoskeleton like the AMP suit, or some sort of mech. Love to see what you're doing with this later, you've got a like and sub. Keep it up man. 👍
@sahirudilan
@sahirudilan Жыл бұрын
Man this is awesome. Good luck and keep up. I wish you the best of luck!!
@すどにむ
@すどにむ Жыл бұрын
That flexure pen mount looks cool
@hillibilli5493
@hillibilli5493 Жыл бұрын
I Love your vision! Keep it up, one more fan won right now! Greetings from Germany Julian
@ellisfletcher3491
@ellisfletcher3491 8 ай бұрын
Thats seriosuly impressive i love that.. I want to build one in future
@pommeswerfer571
@pommeswerfer571 Жыл бұрын
You are blowing my mind
@AgainsT1992
@AgainsT1992 Жыл бұрын
man this is pure gold, so underrated! Keet it up 🚀
@geraldzrivi
@geraldzrivi Жыл бұрын
Man, You are crazy! I wish You luck.
@SEALIFERESCUE
@SEALIFERESCUE Жыл бұрын
Brilliant - keep going with this - love to see it move forward
@TravStu22
@TravStu22 Жыл бұрын
What a wealth of information. Great work.
@ioannispallis7258
@ioannispallis7258 9 ай бұрын
I would use Beckkoff Ethercat motor controllers driving them using LinuxCnc. LinuxCnc is the motion controller giving only target values and the motor controller read the encoders and does the control and pid calculations
@quad2474
@quad2474 Жыл бұрын
Have you ever looked at the open source STMBL motor controller, they are capable of driving 2,2kW motors at 380V and even support fanuc encoders.
@ExcessiveOverkill
@ExcessiveOverkill Жыл бұрын
I did, i don't think they support the rs485 fanucs, but they also aren't beefy enough for my larger robot motors (4.3kw)
@winmancaboose
@winmancaboose Жыл бұрын
I wanna see the faces of the people manufacture those robot arms when a single guy releases an open source controller for their million dollar robots.
@moistifarius
@moistifarius Жыл бұрын
This is great, glad to see a part two
Running a 1.5 ton Industrial Robot With a Custom Open-source Controller part 1
12:07
The First PCBs: Open-source Industrial Robot Controller Part 3
11:41
Excessive Overkill
Рет қаралды 61 М.
ТЫ В ДЕТСТВЕ КОГДА ВЫПАЛ ЗУБ😂#shorts
00:59
BATEK_OFFICIAL
Рет қаралды 4,3 МЛН
МЕНЯ УКУСИЛ ПАУК #shorts
00:23
Паша Осадчий
Рет қаралды 4,8 МЛН
Муж внезапно вернулся домой @Oscar_elteacher
00:43
История одного вокалиста
Рет қаралды 5 МЛН
Open Source Motion Capture for Autonomous Drones
10:34
Joshua Bird
Рет қаралды 640 М.
I built myself a new Robot Buddy!
17:11
Made with Layers (Thomas Sanladerer)
Рет қаралды 194 М.
YASKAWA Robotics - Imagefilm 2014 DE
4:59
YASKAWA Europe GmbH
Рет қаралды 52 М.
I'm building a Robot Arm because I can't afford to buy one.
15:47
Cinema Mechanics
Рет қаралды 169 М.
I Made Real-life Airsoft AIM-ASSIST: Aimbot V3
25:19
Excessive Overkill
Рет қаралды 1,4 МЛН
Build Your Own Drone Tracking Radar:  Part 1
20:08
Jon Kraft
Рет қаралды 577 М.
How I Got Industrial Robot Arms For Free
6:36
Coy Beardmore
Рет қаралды 101 М.
Best Brand Best Keypad Low Price Mobile
0:43
Edit Zone 1.8M views
Рет қаралды 1,1 МЛН
1000 Phone Seve Memory Keypad Mobile 2024
0:43
Tech Official
Рет қаралды 1,2 МЛН
Сделай Красивее свой iPhone или Android
0:58
AndroHack
Рет қаралды 1,1 МЛН
Новый iPhone 👍 @JaySharon
1:07
История одного вокалиста
Рет қаралды 3 МЛН
Лучший лайфхак для клавиатуры 🤡
0:57
ПРОСТО ЛЕШКА
Рет қаралды 2,7 МЛН