6 ms·
I started working on a similarly sized arm. I've got a use-case, long time friends with a glass blower. I was thinking of using it to make faceted glass pendant
by mtreis86 3y ago
I started working on a similarly sized arm. I've got a use-case, long time friends with a glass blower. I was thinking of using it to make faceted glass pendants. They've got a faceting machine but it is manually operated.
The hard part is repeatability. You need tight tolerances and each joint in the arm adds inaccuracy the further you get from the base. If the base has 1mm of wiggle, the 20cm arm has 4mm wiggle at the end, and the arm beyond it has even more.
You also, for faceting purposes, need much finer resolution than an ungeared servo will have. Gearing it is tricky because you want backlash to keep the join tight, but not so much that it has high friction when moving. You don't really want to use a worm gear because they're both slow and overly rigid. So a cycloidal gear is the best bet for the gears in the arm. You also need real servos with some amount of feedback because grabbing at glass is sketchy at best.
I was estimating 1-2k build cost, bulk of that is in the gearboxes.
- eutectic 3y agoIs it not possible to compensate for inaccuracy, if you have a sufficiently precise measurement at the hand?
- flutas 3y agoUneducated in hardware, mostly a software guy for perspective, so I could be way off. Would using something like a stepper motor geared way down with a cycloidal gear box work for a situation like this? (in my mind) It would give you a very controllable and repeatable way to position, with the backlash handled by the gearbox mainly. Would love to know if I'm wrong though, like I said mostly a software guy trying to venture into hardware!
- mglz 3y agoServo + Cycloidal or Harmonic gears are usually the way to go, but to get them backlash-free is hard (or expensive, if you're buying). Once you got that down challenges include: * How rigid are the links between my joints? Plastic will wobble, metal is better * How heavy is my arm and how does that limit its movement? If you go for stiff metal castings, you add weight you need to move. The lever arm relative to the base can get really long * Motors are heavy! Ideally you can mount them towards the base, but then you need drive shafts or belts, which again add flex. (See KUKA arms which have motors 4, 5 and 6 on the elbow often) * How much payload do you need to move? 5kg is already challenging in ~1m arms and if you need to move it fast the problem gets even bigger. * Where do you run your cables? Internal is tricky to build, external can get you tangled. And so on. When approaching this you get a totally new appreciation for biological arms which arae insane in most aspects except for repeatability. And on the software side you can enjoy inverse kinematics :)
- adolph 3y agoDo you think there is a way to take out backlash with sensors and software? Something like how additive manufacturing systems can use accelerometers to smooth artifacts from motor movement. [0] Let's say two cheaper cycloidal geared motors running in opposition with a load cell between them to maintain the materially compatible force. https://www.klipper3d.org/Measuring_Resonances.html https://www.klipper3d.org/Measuring_Resonances.html
- Gracana 3y agoThe problem with backlash comes into play when the direction of force on an axis changes. If you are applying force in one direction and all the backlash has been taken up, everything is fine -- any force you apply or movement you make will be transmitted to the tool like you'd expect. However, if you have to decelerate, or you've gone over-center, or the tool/load pulls harder than you're pushing, now you have to apply force in the other direction, which you can't do until you take up the backlash. If your axis has high enough friction, then nothing will move when your actuator is in the decoupled backlash region, so you can compensate by adding the backlash amount to your target position whenever you switch directions. But that means you need more friction than tool force, with bigger motors and drivetrain to compensate. It's often easier just to build a system with zero backlash, then you can focus on tuning for system rigidity/resonance (as shown in your link).
- mathiasgredal 3y agoThat was why OP suggested to have 2 motors on each joint, going in opposite direction. The problem with this is that you now have twice the amount of motors.
- Gracana 3y agoOof, I appreciate you pointing that out because somehow I got the first part and skipped that one. Yeah, I could see that working, but it sounds inefficient.
- 3y ago
- mglz 3y agoOne thing that is amazing about industrial robots is how rigid they are when at standstill. Breaking systems start to be a challenge too at high speeds and loads. And once you manage to get the hardware working, getting a kinematic solver to really work is a massive challenge. Tons of edge cases, real-time feedback to handle and the need to balance usability with reliability. That's where robot companies charge a lot, and rightfully so. Whenever you can avoid building a robot arm and replace it with simpler kinematics, you should. Hats off to you if you build that thing!
- mapt 3y agoWhy aren't all these applications that have only recently been examined for automation absolutely flush with cheaper lower axis count robotics, like SCARA or parallel manipulators?
- boesboes 3y agoHave you considered using belts and sprockets? They seem effective in 3d printers and pretty cheap
- iiJDSii 3y agoI've done similar projects in the past (robot arms pushing performance limits in the few thousand $ range), and I found pretty good results with stepper motors, and gearboxes with sufficiently low backlash. For reference, these designs got to approx 1mm repeatability with 2.5kg payload at ~80cm reach, meant to model a human arm somewhat. Here's some specifics if you're interested. Depending on the end effector payload requirements, a mix of NEMA34,24,17 can do this (bigger ones for earlier joints). You can go cycloidal/harmonic gears if you have the budget, otherwise each actuator (motor + driver + gearbox + shaft coupling) would run you something like $100-$200 depending heavily on supplier and exact requirements (+$50 or so for closed-loop systems). So not terrible on the price front. Then for the base joint you'd want some wider cylindrical gearbox that distributes the load across better. If you're able to work with a machine shop I think you can put together something really high quality. Here's some example design inspirations, some of them even better than what I described I was able to put together as a hobbyist: https://www.youtube.com/watch?v=7z6rZdYHYfc https://www.youtube.com/watch?v=7z6rZdYHYfc (this one is fantastic; a smaller and lighter version operated more slowly would have even less wiggle from the base) https://www.youtube.com/shorts/II8gdIXPgaE https://www.youtube.com/shorts/II8gdIXPgaE (this is more comparable to the OP) https://www.youtube.com/shorts/_x7P9eZCkVM https://www.youtube.com/shorts/_x7P9eZCkVM https://www.youtube.com/watch?v=g9AfhqOd-_I https://www.youtube.com/watch?v=g9AfhqOd-_I (most professional one I've seen, and almost certainly this BOM would be under $3k, probably under $1k in China. In fact I'll go ahead and email these guys since this is so cool and I wonder if they sell smaller models) https://www.youtube.com/watch?v=iB2NAgfVjIs https://www.youtube.com/watch?v=iB2NAgfVjIs (definitely check out Chris Annin, American roboticist who imo makes some of the best open source low cost stepper motor robots)
- Climato 3y agoI think about this regularly just don't have the time to pursue it: Couldn't you build your arm in Nvidia Omniverse by also adding feedback like a cheap hig resolution distance or angle detector and train an ml model to compensate it?
- GabeIsko 3y agoMaking and animating a 3D graphics robot arm is trivial compared to building it in real life. So not so much Omniverse, you would want to use a proper simulator like gazebo. But beyond that, the kinematics as well as the force dynamics for controlling a serial manipulator are very well understood. So there aren't too many gains to be made by AI. It is difficult to implement in software due to some tricky situations about the nature of motion planning. Discontinuities around orientation approaches in 6-DOF systems for instance. But widespread use of serial manipulators is proof that, although challenging, they are relatively solved. It is always interesting to watch an AI model or genetic algorithm do some path planning, but this is a pretty well trod area of research at this point. Now, when you want a robot to walk and pick things up at the same time... that is when AI becomes something to consider in order to figure out how the dynamics should work.
- Climato 3y agoI meant to control single segments to compensate for build quality. 1 AI model per motor
- GabeIsko 3y agoBut motor and motion control isn't exactly so mysterious that we need AI for it. Inductance in electric motors can have some odd effects in the acceleration domain, but it generally boils down to a second to third order differential formula. Even when linking multiple together in a serial manipulator, the math is really well understood for modeling the motion output. Maybe there are some outputs to be gained implementing different drive trains in arbitrary circumstances, and monitoring how they fail and stuff like that. At that point you are really getting into the weeds of operations and maintenance more than actual motion control. The situation that arises into a very complex n-dimensional problem that you would want AI to search through is the coordinated motion of multiple actuators to achieve a very complex output. Like, picking something up of unknown weight, running while carrying it up a steep hill, waving it around while doing all this. We take it for granted as humans with brains that can perform all this stuff trivially, but it is extremely complex motion.
- leptons 3y agoI recently saw this video, using modified servo motors to reduce the wiggle... https://youtu.be/Ctb4s6fqnqo?si=XP0MS0cpjlK_LMQC&t=8 https://youtu.be/Ctb4s6fqnqo?si=XP0MS0cpjlK_LMQC&t=8
- jannw 3y agotight tolerances and repeatability is mostly a combined rigidity and resolution issue, which is functionally equivalent to a cost issue. Add more money. Unfortunately there is a point where programming and hardware costs is higher than a skilled artisan ... hence the profession!
- xg15 3y ago> The hard part is repeatability. You need tight tolerances and each joint in the arm adds inaccuracy the further you get from the base. If the base has 1mm of wiggle, the 20cm arm has 4mm wiggle at the end, and the arm beyond it has even more. Could this be solved by software instead of expensive hardware? Some idea I had a while ago was to build an arm out of cheap, "wobbly" components for the large-scale movements, but then add some stages at the end that have a small movement range, but can be controlled very precisely. Finally, add a way to track the deviation of the tool's actual position from the desired position very precisely, maybe with a tool-mounted camera. Then you could have a feedback loop in software which tracks the tool's deviation from the desired position and uses the "corrective" stages at the end to counteract it. I'm not sure if this would work, however. (There is also the question how long the "counteracting" would take. It's one thing to "eventually" arrive at the desired position at the end of the path - e.g. for pick-and-place - and another to stay below some maximum deviation for the entire path, e.g. for etching or welding.)
- zetalemur 3y agoIsn't what you describe a PID-controller: https://en.wikipedia.org/wiki/Proportional%E2%80%93integral%E2%80%93derivative_controller https://en.wikipedia.org/wiki/Proportional%E2%80%93integral%... AFAIK that is the common approach to solve this problem, but it still needs some degree of sensor accuracy?
- tomp 3y ago> Could this be solved by software instead of expensive hardware? Yes. Imagine a human putting a screw in a hole. You don't follow the "optimal" trajectory, you adapt it on the fly, even do several quick trials to do it. Humans do it with a combination of vision, touch and planning. Each of these is currently still a huge problem for AI, nowhere near human level.
- ActorNightly 3y agoId consider it more a fundamental problem - lack of a way to introduce new data to a model without repeating training runs and waiting for the error to converge. Humans seem to have an understanding of things from a one-shot learning run (this is perhaps due to our vast experience with the world and ability to run simulations in our head, but a subset of that should be possible for ML quite easily) If you solve this problem, teaching a robot arm to be accurate should be pretty easy. You would just have stereoscopic cameras that map to a 3d world, and "program" in a trajectory of the object, and the model should use that trajectory to figure out where to move and how to compensate based on visual feedback.
- ska 3y agoHow many degrees of freedom do you actually need, and what reach? Those parameters (plus speed) drive a lot of choices. 1-2k build cost is tiny in this space. I've paid that in individual motors (specialized ones, to be fair).
- jononor 3y agoWhat kind of manipulation is needed? If a 3 axis or 4d axis system can do the job, that is always much cheaper than a robot arm, for a given precision and load capacity.