Live data from Hacker News

Low Cost Robot Arm

github.com

241–250 of 258 posts

Re: Low Cost Robot Arm

#241
post #239

Earlier quoted context omitted.

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 a…

Omniverse is a simulation platform specifically designed to do things like train/test robotics. It's not a creative engine like UE or Unity.

I'm not super familiar, but they say in the webpage that it is specifically for Universal Scene Description, which is formally for graphics. Although, after a quick google, it looks like they do have a simulation package which then runs on top of Omniverse (Isaac Sim?), so I guess that is Nvidia's robotics offering.

My general experience with other commercial offerings for simulation... is not great. In my experience, people usually end up migrating to gazebo, but I have been away from the field for a while now so it could be different. It is probably a situation where Nvidia will have a few coporate clients that they prioritize, and you are on your own to get it set up if you aren't on that lists. Pretty normal.

Re: Low Cost Robot Arm

#242

Earlier quoted context omitted.

I like how this comment is clear, comprehensive, full of common sense, AND very likely to be completely outdated within a few generations (5 years?) of robotics + AI progress. I would also not discount how easy it is to sell people on additional cameras in their homes (including the bathroom) for the sake of convenience.

State of the Art public robot arms include Boston Dynamics' Stretch[1]. It's not for sale to the public, the price isn't public, it's got 18 suckers on a flat tray and runs on a wheeled base and looks like the size of an armchair. Boston Dynamics' Spot the walking dog robot was launched in 2020 for $75k and was explicitly not safe for use in the home or around children. Do you genuinely think they will improve to the…

After watching the Mobile ALOHA video linked in another comment, I'm increasing the probability of me eating crow on this one.

Re: Low Cost Robot Arm

#243

Earlier quoted context omitted.

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 a…

I meant to control single segments to compensate for build quality. 1 AI model per motor

But 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.

Re: Low Cost Robot Arm

#244
post #235

Earlier quoted context omitted.

Id 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…

No, I'm telling you, you're assuming way too much. The problems are lower-level > stereoscopic cameras that map to a 3d world The current state of the art for this is completely atrocious. Take a look at this very recent research: https://makezur.github.io/SuperPrimitive/ The idea that robots can "understand" the 3D world from vision is, right now, completely illusory.

I basically agree, I dont think you understood my comment.

If you look at transformers in llm, you have a input matrix, some math in the middle (all linear), and an output matrix. If you take a single value of the output matrix, and write the algebraic expression for it, you will get something that looks like a linear layer transformation on the input.

So a transformer is simply a more efficient simplification of n connected layers, and thus is faster to train. But its not applicable to all things.

For the following examples, lets say you hypothetically had cheap power with good infrastructure to deliver it, and A100s that cost a dollar each, and same budget as OpenAI.

First, you could train GPT models as just a shitload of fully connected, massively wide deep layers.

Secondly, you could also do 3d mapping quite easily with fully connected deep layers.

First you would train a Observer model to take an image from 2 cameras and reconstruct a virtual 3d scene with an autoencoder/decoder. Probably through generating photorealistic images with raytracing.

Then you would train a Predictor model to predict the physics in that 3d scene given a set of historical frames. Since compute is so cheap, you just have rng initialization of initial conditions with velocities and accelerations, and just run training until the huge model converges.

Then you would train a Controller model to move a robotic arm, with input being the start and final orientation, and output being the motion.

Then hook them all together. For every cycle in the robot controller, Controller sends commands to move along a path, robot moves, Observer computes the 3d scene, history of scenes is fed to Predictor that generates future position, which gets some error, and controller adjusts accordingly.

My point is, until we reach that point with power and hardware, there have to be these simplification discoveries like the transformer made along the way. One of which is how to one shot or few shot adjust parameters for a set of new data. If we can do that, we can basically fine tune shitty models on specific data quite fast to make it behave well in a very limited data set.

Re: Low Cost Robot Arm

#245
post #166

Earlier quoted context omitted.

Do 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

The 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 ap…

That 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.

Re: Low Cost Robot Arm

#246
Does anyone have any suggestions on something that can be used to for threading a small needle with a very fine thread? Would need high accuracy and repeatability. Higher price would not be a problem.

Re: Low Cost Robot Arm

#247

Earlier quoted context omitted.

The 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 ap…

That 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.

Oof, 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.

Re: Low Cost Robot Arm

#248
post #228

Earlier quoted context omitted.

I’m very happy with the mechanical design for my four axis brushless motor powered robot arm with integrated 3D printed planetary gearboxes. I have some hope of picking the project back up and better documenting it, though the CAD files explain a lot. For the last few years I’ve been working on my own brushless motor controller design and I think this year I will have that stable enough to go back to working on this…

This is awesome! I don't have enough background knowledge to know how to make one myself, do you ever plan to sell these, or make a tutorial on how to build one?

Thank you! I do not plan to sell these arms. I am not sure if I will be able to make time to document it (I am maintainer on an open source farming robot project which takes up most of my time - see profile), but I am working on a new actuator concept based on the principles explored in this design, and my goal with the new actuator concept is to document that and make it more general purpose, so it is easier for people to make themselves and explore this mechanical gearbox design. This should hopefully popularize this design if others like it. I think is fair to say the design is probably novel.

A fun fact about the new actuator is that it can be printed in plastic at home but is designed to be 3D printed in 316 stainless steel. I was inspired recently by the relatively low cost of 3D printing from China (I used craftcloud), and my novel actuator design relies on the fact that 3D printing allows gearbox components and robot frame members or components to be mechanically unified. This opens up new design spaces.

In this design, it is a two stage planetary with one "first stage" in between two parallel second stages. The first stage is driven by a shaft from a side mounted motor, with the shaft going through the gears in one of the second stages to reach the first stage sun gear. This parallel output better balances mechanical loads across the joint both on the input and output sides. This makes it ideal for elbow and knee style joints, and might serve to be genuinely very useful in robotics worldwide.

As with all my work it will be open source. I don't love twitter but that is currently the best spot to get updates on side projects like this. I am @tlalexander there. Alternatively, star the 3D printed robot arm repo and I will update it when my new steel servo design is done!

Re: Low Cost Robot Arm

#249
post #227
post #207

Earlier quoted context omitted.

> 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…

> 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.

But do you need AI? How about this for a screw-in-hole machine:

Assuming the hole is in the Z plane: Camera in the X plane, observes the screw against a high contrast background. Camera in the Y plane, observes the screw against a high contrast background. The motors need not know their exact position, just be of controllable speed. As the screw gets close to alignment the speed on the motor is stepped down, it stops when it's aligned. When both cameras report that it's in position a motor in the Z plane pushes the screw towards the hole, stopping when a plunger next to the screw reports the correct depth.

If you have to be concerned with the Z axis alignment you make the X and Y backgrounds striped, the alignment of the screw is measured compared to those stripes and it's rotated accordingly.

This is how a human would handle it--we do not have anything like the motor precision to get the screw in the hole directly, but we can use our eyes to refine it without *needing* the motor precision. Reliably identifying the screw from the background is hard but this approach doesn't require *identifying* anything. You're just mapping the bounding box of the object of a very different color.

If you have a large movement field and a high precision requirement you might need two cameras, the second with a much narrower field of view.

Re: Low Cost Robot Arm

#250

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…

Is it not possible to compensate for inaccuracy, if you have a sufficiently precise measurement at the hand?
Post reply on HN