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.
One 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!
Why 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?
I'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:
> 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.)
I'm a software engineer myself so I don't know a lot about this, but there are a few patterns that are not far off of what you're describing. For instance:
I 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?
Making 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.
Uneducated 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!
Servo + 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 :)
What 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.
tight 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!
I'm surprised (or perhaps very unaware) that there doesn't seem to exist a company yet that mass produces cheap, high quality, reasonably standardized robot arms. So many things like 3D printers or CNC machines have entered the consumer/amateur level price realm, but this seems to be something still largely unexplored. Seems to have Arduino/Raspberry Pi scale potential, but I haven't heard of a name/ecosystem that popular yet
I worked for a startup developing robot arms for a while. What we found was that giving someone a robot arm - even one with reasonable APIs and no cost to them - didn't really help because the hard part is making useful automations. Mostly people spent a few hours playing with the arm and then put it on a shelf.
Every use case is completely different and is a lot of work. Even when you get something working, accidentally shake the desk or crash the arm into something and all your coordinates are broken and you have to start again.
Not to mention the actual mechanics are really complicated - to have a meaningful payload at 50cm reach you end up with really high torque at the base joints (which also need to have super-high accuracy), which requires expensive gears and motors. None of that is cheap.
Then you get to safety - an arm that has a useful payload is also quite heavy, and having that amount of mass flailing around requires safety systems - which don't come cheap.
It's a bit like hardware no-code - you can't make an easy to use robotic arm because programming it is inherently hard. I think the only thing that will change that is really good AI.
Do you know if anyone has tried building an arm that uses spatial positioning techniques from augmented reality, like structured light or pose tracking[1], to understand the position of the arm in space without resorting to "dead reckoning"?
It seems like that kind of approach would increase the physical tolerance and reduce the programming complexity, since you know both a) where the arm is supposed to be, and b) where it actually is.
Yep. Interestingly, there has been a lot of recent work on models like RT-2 that might be capable of automating this for simple tasks. We might be at the point soon where that startup would have been viable!
There is a reason there is no standard hobbyist-grade robotic arm.
People think they can build their own robotic arms for leas than a "real" robotic arm costs, but the do not account for wobble or repeatability.
With all due respect to the person who posted a design for a robotic arm made with RC servos on HN, I would like measurements of the repeatability. Have it draw the same pattern on a piece of paper every day for a week. Show me how closely the 7 lines overlap. I doubt that it can draw such a thing; it will tear the paper or get jammed without the strength to tear the paper.
Source: I've been building hobbyist robots since the 1980's, researched robots in the 1990's including a masters thesis, and teaching robotics for most of the last decade.
The hobbyist market is pretty forgiving of repeatability issues. The Ender 3 introduced many people (myself included) to the 3D printing world and is known for its problems.
Horses for courses. Nobody's going be trying to weld car chassis with one of these, true, but also a hobbyist wouldn't want some ABB or FANUC or whatever industrial arm in their house where it could kill someone. These small light duty less-rigid robot arms are fine for what IMO is the really exciting stuff like modern machine learning control research, which is exactly what this guy's doing with them.
^Modifying cheap servos so that a robot arm can repeatedly insert a pencil lead. It's a lot of work though.
Most interesting application though fall out of the scope of old-fashioned robotic arms, i.e. when you need to sense the real world in a non controlled context. For instance to develop a robot that can trim wilted flowers, you'll need to measure the real world, and as soon as you do that, you can just sense your robot arm too, no need for fancy, ultra-precise actuators.
Do you really need the $6,129.95 & $3,549.95 robot arms for the kind of application described ? I doubt it. I'm not a robotician, and would love some feeback on this idea.
Is this not something that can be addressed with cameras and (maybe) learnt approaches now? You don't need blind repeatability if you've got good visual monitoring to close the control loop, you just (just!) need good accuracy and low latency from video to motor control.
Why are you so negative towards this? It's just an Open source project... who cares how good it is. It's a great way to learn, and play, and experiment.
Skimming through this threads and the various answers to the multiple "has anyone found a use for a robotic arm?" questions will explain why there's no such company. There simply is no consumer-grade market.
They do, but cheap is ~10.000€ currently for a general-purpose bot with 1.2m reach. You get a high quality machine and software for that. Note that a robot without really good kinematics software is borderline unusable. Also, besides the arm you need the control box which reliably delivers power and commands in real-time. That adds quite a bit of cost too.
Ask yourself - what problem are you trying to solve?
After you've defined it, you'll quickly learn that there's much simpler and cheaper solution than 6DOF robot arm in almost every case.
And if you actually do need it, in those cases you'll find that 10-20k is actually pretty cheap all things considered.
With my understanding 6DOF robot arms are used when you need to be flexible. Today you do this tomorrow (or in a couple of months) you will need to do something else. The more diverse set of things to do the better. But if you need to do the almost exact same thing many times over for a long time it is better to design a production line that doesn't use 6DOF robot arms at all.
Also I have understood that robot arms are in real life rather complicated to program to operate correctly. So any process would take substantial effort. Magnitude harder than controlling some relays or reading some sensor data.
Sensors too. E.g. force sensors are important for dexterous manipulation and safety. But they are all expensive, bulky, imprecise, or require constant recalibration, or all of the former.
Our robotics Prof used to quote his industry peers: "The best sensor is no sensor."
Have to disagree with this. The major limiting factor is the software and lack of applications. If there was a killer application it would be much easier to sell. Then the numbers would drive the prices down.
I don't think we've figured out how to make good cheap mechanical actuators. I think that engineers make do with inaccurate actuators by changing the mechanism around it.
Robot arms need a level of reliability that isn't cheap yet.
- Arm wrestling a toddler?
- Handwriting notes for small jewelry brand?
- Drink mixer?
- Handing towel when in the bathroom, then getting a new one?
- Setting up my morning espresso? (grinding the beans and turning on the coffee machine)
Like arm wrestling a brick wall; if you can push it over then you win, if you can't push it over then you lose - either way there's not much fun in it. And if it can beat the toddler it risks injuring them because neither of them really understand what's happening and what the risks are. The arm can't stop if the toddler says 'ow'.
> "Handwriting notes for small jewelry brand?"
Can be done already with a commercial 2D plotter: https://www.axidraw.com/ . It costs twice as much as this arm, but you don't have to build it and it already has "software for realistic handwriting" and there's a company to get support from.
> "Handing towel when in the bathroom, then getting a new one?"
Is the arm big enough to be useful for that? It appears to be shorter than a typical human arm so it would be cheaper, simpler and quicker to put the pile of clean towels a foot closer to the shower where the robt arm is sitting, and not have the robot arm at all. Plus you wouldn't have to deal with electricity in the bathroom or dripping water on the robotics as you reached for the towel it was handing you. (Are you thinking of a robot arm with cameras for feedback of where it's positioned? Cameras in a bathroom won't be popular with everyone no matter how much you promise they are innocent).
> "Setting up my morning espresso? (grinding the beans and turning on the coffee machine)"
Simpler and cheaper done with a timer mains plug which you can get for under $10. Put the beans in and load up the coffee machine the night before (work you'd have to do anyway) and have the timer start them in the morning. If you expect the robot arm to unseal a bag of coffee beans, measure some out, deposit them in the grinder, close the grinder, and close and seal the bag after, you'll wake up to spilled beans and unsealed bag a lot of days before you get that working reliably. Instead of $250 plus weeks of effort to speed up this 2 minute task(!) you can get a Keurig / Nespresso pod coffee maker for less than $100.
> "Drink mixer?"
How much spilled wasted alcohol, plus time of disassembling and cleaning your robot arm and the surface it sits on, and the floor, or finding the bottles, unscrewing the tops, handing them to the arm, waiting for the arm to slowly pour them which you could have done quicker, then putting the tops back on and putting the bottles away yourself, then putting the drink stirrer into the arm, then waiting for it to mix the drinks which you could have done yourself quicker, before you decide this was not a good use of time or money? (How often do you drink mixed drinks anyway?)
The robot isn't going to learn to do the task better next time like a human could so if you have to get involved in the task at all, you may as well do it yourself. And if it's a 15 second task like "reaching for a towel" what are you doing with your life trying to automate that? Roomba saves a lot of time, a lot of annoyance, it could be worth it even if it does an inferior job - because you can leave it running over and over and over. Same with a robot lawnmower, if you just glance around to make sure there's no pets or children in the way then let it go, it can save you a good chunk of time and if it goes wrong you just get a patchy lawn or dusty floor and it can retry tomorrow. But handing you a towel or mixing you a drink saves you almost no time, but if it goes wrong you get a broken bottle of sticky drink all over or a pile of towels on the floor, which has undone months of 'time saved' in one go.
Why not start with something less ambitious, like low cost robot platform able to follow people and carry stuff around and avoid obstacles. No arms, I am okay using mine to put stuff on and off it.
When I had leg injury and used crutches, carrying stuff around suddenly became a problem. There are many people with impaired movement. And even without that, I often misplace things and it could help there.
There are plenty of toy robot undercarriages on aliexpress but too small (under 20cm largest dimnsion) to be practical.
Bellabot[0] comes to mind, there's also a startup doing Roomba-like bot that magnetically dock to specially designed shelves. Though, they don't sell for $250, so actual Roombas and ROS mods for "hoverboard" Segway clones[3] might be more cost effective.
i was going to ask if turtlebot was too small for you, but thought i should check the price first so uh, yeah, i'm guessing you're thinking the 250 price point instead of the turtlebot's 1000+
I’d use it to pick through and sort the massive pile of Lego my children leave behind after an Easter long weekend. Seems trivial to do identification based on the high quality corpus of block databases. Wouldn’t have to be super quick - you could just leave it running overnight.
I’m sure someone’s written an interesting paper on the ideal sorting algorithm too (i.e. large things > small things vs. ‘just pick up and place the nearest thing’.) I would personally just get it to sort them into basic sets before placing the trays back in their goddamn drawers.
My impression is that the fastest/easiest way to do it would be putting all the pieces inside hopper with the selector at the bottom. Perhaps using compressed air to push the falling pieces into different containers as they fall. I believe there’s already something like that in produce factories, separating vegetables by state/size.
For a start you're going to need a camera. Maybe more than one. You want depth sensing? Even an cheap choice like a RealSense is going to add another $250 to your costs. And you'll need a sturdy mount for it, the robot's going to vibrate the table and you don't want to suffer motion blur.
Got the camera in a fixed location, over the area you're picking from? Then the robot's going to block the camera's view when it reaches in. No real-time hand eye coordination for you. Putting the camera on the robot's wrist? Now you've got motion blur problems - and reliability problems, because normal USB cables aren't designed for continuous flexing. You've also got a gripper in view all the time - and now the camera moves, things are always out of focus.
The reach of the arm isn't long enough to give you many bins to drop items off into, considering the number of lego parts there are. The longer you make the arm, the greater the torque at the shoulder joint. Making the motors bigger? Now the elbow motor is heavier. Gearing them down? Now you've got gear backlash.
Your Dynamixels will break, for some reason. Maybe eventually you'll figure out why. In the meantime, $50 each please.
Parts like the small satellite dish https://www.bricklink.com/v2/catalog/catalogitem.page?P=4740... will prove very hard to grasp. And there's like 50 different colours, you're going to need to know your way around lighting and camera settings if you want to reliably tell transparent light blue, transparent medium blue and transparent dark blue apart.
And that's before you get into questions like how to tell a 2x4 stud brick apart from two 1x4 stud bricks next to each other - or how to grasp a brick when an adjacent brick is blocking you from getting in with the gripper.
Every single one of these issues is solvable - but by the time you've solved them all? You could have hand-sorted that lego 20 times over :)
The devil is in the details. In theory everything is trivial with enough SW dev hubris ;)
Even just the path planning towards the block to ensure good grip and pick up is not a simple task. Consider all the block shapes, possible orientations, collisions..
An impractical use would be to have a few of them replace monitor arms in a multi monitor setup. You could then rapidly switch between a few configurations.
Not much. I have a UArm on my desk, which is a lot like this one but with cheaper servos. It was too inaccurate to use for much of anything. I built a force-feedback sensor for it out of a 3D mouse. Reasonable idea, but not stiff enougn for the application.
From over a decade ago: https://us.pycon.org/2012/schedule/presentation/267/ (with just a pair of motors to point squirt gun at specific angles.) One of the (many) cases where a robot arm would be more general without being in any way better :-)
This actually sounds to me as bit complicated. As you need to adjust angle for each pour from a bottle. And then there might be different viscosities involved with some bottles...
Most of these robots will use servo motors - that gives you dexterity but means that holding any position requires constant holding torque - which means limited payload and a lot of wasted power.
For a heavy fan (don't forget the reaction force from moving air too), you'd be better off mounting it on a some sort of bearing and just using a motor to turn it. That way the motor isn't trying to fight gravity all the time. The robot arm linked here using Dynamixel servos - you could just use one of them to spin a fan on a lazy susan. Much cheaper and less complicated!
this is why servo-powered robotic arms are not interesting to me at all. I want one with brushless motors and harmonic or planetary drive gearbox. unfortunately you cant build those under $750 as far as I have seen so far. that's putting aside the added complexity. but I will definitely build one some day. there are quite few opensource projects with that setup.
I believe it offers higher torque, better precision and ability to just stick to a position with relatively low/or no power due to gearing-side resistance.
Why not: keep most weight off the arm by using a fan/compressor installed in the base and routing a conduit to the arm? Then it will only have to move the conduit, not the heavy motor.
They're "smart" which means you can form a serial bus of them, query individual motors' encoder positions and motor temperatures and whatnot, adjust the PID parameters yourself, and so on. You can also daisy-chain them together, which might reduce your cable routing problems.
Downside is when they break, you're out $50 or more - and you're going to break at least one. And the manufacturer wants you to operate them at 11.1v which isn't very convenient. And when it comes down to it, it's still got plastic gears, a plastic case, and enough backlash to be noticeable.
Dramatically. They cost (give or take) ten times more and weigh twice as much, for which you get (give or take) four times the stall torque, serial positional control, and a 360 degree range of motion.
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.
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!
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 (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 (this is more comparable to the OP) https://www.youtube.com/shorts/_x7P9eZCkVMhttps://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 (definitely check out Chris Annin, American roboticist who imo makes some of the best open source low cost stepper motor robots)
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.)
https://en.wikipedia.org/wiki/Input_shapinghttps://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?
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.
[1]: https://www.nature.com/articles/nature14422
[2]: https://hal.science/hal-01158243
Dead Comment
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?
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.
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!
* 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 :)
https://youtu.be/Ctb4s6fqnqo?si=XP0MS0cpjlK_LMQC&t=8
1-2k build cost is tiny in this space. I've paid that in individual motors (specialized ones, to be fair).
Every use case is completely different and is a lot of work. Even when you get something working, accidentally shake the desk or crash the arm into something and all your coordinates are broken and you have to start again.
Not to mention the actual mechanics are really complicated - to have a meaningful payload at 50cm reach you end up with really high torque at the base joints (which also need to have super-high accuracy), which requires expensive gears and motors. None of that is cheap.
Then you get to safety - an arm that has a useful payload is also quite heavy, and having that amount of mass flailing around requires safety systems - which don't come cheap.
It's a bit like hardware no-code - you can't make an easy to use robotic arm because programming it is inherently hard. I think the only thing that will change that is really good AI.
Do you know if anyone has tried building an arm that uses spatial positioning techniques from augmented reality, like structured light or pose tracking[1], to understand the position of the arm in space without resorting to "dead reckoning"?
It seems like that kind of approach would increase the physical tolerance and reduce the programming complexity, since you know both a) where the arm is supposed to be, and b) where it actually is.
[1] https://en.wikipedia.org/wiki/Pose_tracking#Outside-in_track...
People think they can build their own robotic arms for leas than a "real" robotic arm costs, but the do not account for wobble or repeatability.
With all due respect to the person who posted a design for a robotic arm made with RC servos on HN, I would like measurements of the repeatability. Have it draw the same pattern on a piece of paper every day for a week. Show me how closely the 7 lines overlap. I doubt that it can draw such a thing; it will tear the paper or get jammed without the strength to tear the paper.
Source: I've been building hobbyist robots since the 1980's, researched robots in the 1990's including a masters thesis, and teaching robotics for most of the last decade.
^Modifying cheap servos so that a robot arm can repeatedly insert a pencil lead. It's a lot of work though.
Most interesting application though fall out of the scope of old-fashioned robotic arms, i.e. when you need to sense the real world in a non controlled context. For instance to develop a robot that can trim wilted flowers, you'll need to measure the real world, and as soon as you do that, you can just sense your robot arm too, no need for fancy, ultra-precise actuators.
Look at this BOM: https://docs.google.com/document/d/1_3yhWjodSNNYlpxkRCPIlvIA...
Do you really need the $6,129.95 & $3,549.95 robot arms for the kind of application described ? I doubt it. I'm not a robotician, and would love some feeback on this idea.
I think the limiter on smaller arms is quality servos with real location encoders - this one costs a couple hundred bucks for motors.
Not claiming the software is easy! But I think sourcing parts is (or has been) really hard.
Which is partly why SCARA is popular with amateur robot arms, the maths is simpler.
I wish there was more visibility here without requiring a PhD.
These do exist, it's just that "reasonably cheap" is typically low - mid 5 figures for any sort of reach an payload.
Which of those can/cannot be done and why?
The most common designs of six-axis robot arm don't have the 'rotate forearm sideways' joint needed to arm wrestle.
> - Handwriting notes for small jewelry brand?
Possible: https://en.wikipedia.org/wiki/Autopen
> - Drink mixer?
Possible: https://www.makrshakr.com/ (arguably more of a showy entertainment item than anything else)
> - Handing towel when in the bathroom, then getting a new one?
Manipulating flexible materials is difficult. As is navigating through a house with locked bathroom doors and suchlike.
> - Setting up my morning espresso?
Depends if you're willing to broaden your definition of 'robot' to include bean-to-cup machines.
Like arm wrestling a brick wall; if you can push it over then you win, if you can't push it over then you lose - either way there's not much fun in it. And if it can beat the toddler it risks injuring them because neither of them really understand what's happening and what the risks are. The arm can't stop if the toddler says 'ow'.
> "Handwriting notes for small jewelry brand?"
Can be done already with a commercial 2D plotter: https://www.axidraw.com/ . It costs twice as much as this arm, but you don't have to build it and it already has "software for realistic handwriting" and there's a company to get support from.
> "Handing towel when in the bathroom, then getting a new one?"
Is the arm big enough to be useful for that? It appears to be shorter than a typical human arm so it would be cheaper, simpler and quicker to put the pile of clean towels a foot closer to the shower where the robt arm is sitting, and not have the robot arm at all. Plus you wouldn't have to deal with electricity in the bathroom or dripping water on the robotics as you reached for the towel it was handing you. (Are you thinking of a robot arm with cameras for feedback of where it's positioned? Cameras in a bathroom won't be popular with everyone no matter how much you promise they are innocent).
> "Setting up my morning espresso? (grinding the beans and turning on the coffee machine)"
Simpler and cheaper done with a timer mains plug which you can get for under $10. Put the beans in and load up the coffee machine the night before (work you'd have to do anyway) and have the timer start them in the morning. If you expect the robot arm to unseal a bag of coffee beans, measure some out, deposit them in the grinder, close the grinder, and close and seal the bag after, you'll wake up to spilled beans and unsealed bag a lot of days before you get that working reliably. Instead of $250 plus weeks of effort to speed up this 2 minute task(!) you can get a Keurig / Nespresso pod coffee maker for less than $100.
> "Drink mixer?"
How much spilled wasted alcohol, plus time of disassembling and cleaning your robot arm and the surface it sits on, and the floor, or finding the bottles, unscrewing the tops, handing them to the arm, waiting for the arm to slowly pour them which you could have done quicker, then putting the tops back on and putting the bottles away yourself, then putting the drink stirrer into the arm, then waiting for it to mix the drinks which you could have done yourself quicker, before you decide this was not a good use of time or money? (How often do you drink mixed drinks anyway?)
The robot isn't going to learn to do the task better next time like a human could so if you have to get involved in the task at all, you may as well do it yourself. And if it's a 15 second task like "reaching for a towel" what are you doing with your life trying to automate that? Roomba saves a lot of time, a lot of annoyance, it could be worth it even if it does an inferior job - because you can leave it running over and over and over. Same with a robot lawnmower, if you just glance around to make sure there's no pets or children in the way then let it go, it can save you a good chunk of time and if it goes wrong you just get a patchy lawn or dusty floor and it can retry tomorrow. But handing you a towel or mixing you a drink saves you almost no time, but if it goes wrong you get a broken bottle of sticky drink all over or a pile of towels on the floor, which has undone months of 'time saved' in one go.
Most mechanical things require you to optimize for cost or quality
When I had leg injury and used crutches, carrying stuff around suddenly became a problem. There are many people with impaired movement. And even without that, I often misplace things and it could help there.
There are plenty of toy robot undercarriages on aliexpress but too small (under 20cm largest dimnsion) to be practical.
0: https://www.youtube.com/watch?v=l1hQ5YTMJEw
1: https://www.youtube.com/watch?v=SdVglHOJgiA
2: https://github.com/hoverboard-robotics/hoverboard-driver/tre...
https://www.aristavault.com/products/follow-me-smart-luggage
So, basically autonomous self-driving mini vehicle. Сompanies spend billions on self-driving cars with quite limited luck.
That's in part because it needs to be very reliable to not kill people.
If the worst that can happen is killing a garden gnome or running over someone's toes you can tolerate more error.
I’m sure someone’s written an interesting paper on the ideal sorting algorithm too (i.e. large things > small things vs. ‘just pick up and place the nearest thing’.) I would personally just get it to sort them into basic sets before placing the trays back in their goddamn drawers.
Said like someone who's never tried it :)
For a start you're going to need a camera. Maybe more than one. You want depth sensing? Even an cheap choice like a RealSense is going to add another $250 to your costs. And you'll need a sturdy mount for it, the robot's going to vibrate the table and you don't want to suffer motion blur.
Got the camera in a fixed location, over the area you're picking from? Then the robot's going to block the camera's view when it reaches in. No real-time hand eye coordination for you. Putting the camera on the robot's wrist? Now you've got motion blur problems - and reliability problems, because normal USB cables aren't designed for continuous flexing. You've also got a gripper in view all the time - and now the camera moves, things are always out of focus.
The reach of the arm isn't long enough to give you many bins to drop items off into, considering the number of lego parts there are. The longer you make the arm, the greater the torque at the shoulder joint. Making the motors bigger? Now the elbow motor is heavier. Gearing them down? Now you've got gear backlash.
Your Dynamixels will break, for some reason. Maybe eventually you'll figure out why. In the meantime, $50 each please.
Parts like the small satellite dish https://www.bricklink.com/v2/catalog/catalogitem.page?P=4740... will prove very hard to grasp. And there's like 50 different colours, you're going to need to know your way around lighting and camera settings if you want to reliably tell transparent light blue, transparent medium blue and transparent dark blue apart.
And that's before you get into questions like how to tell a 2x4 stud brick apart from two 1x4 stud bricks next to each other - or how to grasp a brick when an adjacent brick is blocking you from getting in with the gripper.
Every single one of these issues is solvable - but by the time you've solved them all? You could have hand-sorted that lego 20 times over :)
Then look at the sorting as a separate problem :)
Even just the path planning towards the block to ensure good grip and pick up is not a simple task. Consider all the block shapes, possible orientations, collisions..
Also, have one to stir pasta in the kitchen.
https://www.amazon.com/StirMATE-Automatic-Variable-Self-Adju...
A reader of this thread that had a temporary disability posted some ideas about practical uses:
https://news.ycombinator.com/item?id=39903953
http://roboexotica.at/
No need for brute strength. Tolerances of one or two millimeters are mostly fine.
I have one and the build quality is really impressive for the price point.
A real shame there isn't a 6-dof one, since that's what you'd really need to grasp anything properly in the radius around the arm.
I’m wanting to manipulate a fan in my home gym with some eye tracking to get it to blow air on my face when I work out, but the fan is a few pounds.
Alternatively: any hardware motor suggestions for such a project?
For a heavy fan (don't forget the reaction force from moving air too), you'd be better off mounting it on a some sort of bearing and just using a motor to turn it. That way the motor isn't trying to fight gravity all the time. The robot arm linked here using Dynamixel servos - you could just use one of them to spin a fan on a lazy susan. Much cheaper and less complicated!
I believe it offers higher torque, better precision and ability to just stick to a position with relatively low/or no power due to gearing-side resistance.
Side bar: these servos are a game changer.
Downside is when they break, you're out $50 or more - and you're going to break at least one. And the manufacturer wants you to operate them at 11.1v which isn't very convenient. And when it comes down to it, it's still got plastic gears, a plastic case, and enough backlash to be noticeable.
Still got plastic gears though.