Types of modules

In the story of The Machine, I describe it as a large machine full of modules that interconnect.

What would some reasonable modules be? How should the functions split up? Would the module that makes sandwiches be the same one that makes knives? Would there even be a module that makes sandwiches or just one that makes bread and one that dispenses protein and veggies but you assemble the sandwich yourself?

What kinds of very early modules can we imagine being able to make today? How would they be designed? What prior work has their been? Can you imagine the basic system architecture of a module we could make today? Can you provide schematics and sketches?

What is a list of things you can make with a module today?

For example, can you imagine a module that takes in water, rolled oats, brown sugar, nuts, and several other ingredients and outputs cooked oatmeal bars?

Please share your thoughts here.

I imagine it’d be extremely complex if everything was to be split into modules that could each make one particular thing. It seems it’d make more sense to have an array of different modules that are as flexible as possible and simply increase the amount of each one in order to both be able to produce at a high quantity in a short amount of time but also to increase the amount of different inputs and outputs that can be handled by the machine

1 Like

What kind of modules would exist depends wholly on what kind of products would need producing, at what speed and quality, and with what necessary (and available) resources and energy.

The Machine doesn’t have to be large. If someone were to build an android with the full sensing and processing capacity and dexterity of a human, with the sum of human knowledge, and unlimited energy and time, then presumably that android would be capable of building anything a human has built.

But would that achieve the desired end state?

Would some human interaction be desirable? (A semi-autonomous greenhouse where humans supervise and repair) or do we aim to a fully autonomous solution? (Fruit and vegetables are delivered daily in crates by The Machine.)

I am of the idea that some basic bootstrapping tools and manuals for building and maintaining this tools would be more desirable, but maybe what we want to aim to is complete automation (of course without opacity.)

I think the division of modules will change a lot over time.

At first, it makes a lot of sense for modules to be basically completely self contained. But as @MagnusNM pointed out, that doesn’t scale well.

At some point, you make more and more general components, potentially until you have entire androids servicing the internals of the machine as @Kilt mentions. Certainly an android and a measuring cup might be all you need to measure ingredients for bread, but it may suffice to have a screw feed hopper that can meter out your materials.

Right now my focus is on something - anything that works. So @rdleon I think humans will be in the loop at first. But as the machine gets larger, it becomes a full time job to keep it going. And hell, if you can’t let it be for a week without it having some problem, it becomes a big project you have to babysit. I’d hate it if I bought/built this machine but then couldn’t go on vacation without ruining a harvest (if we’re talking a food machine).

@taylor Maybe it would make sense to put together a plan regarding what to focus on first - it seems entirely overwhelming to try to develop such a huge machine in the first place, but if the goal for version 1 instead was basically an advanced bread machine or some kind of automated assembly system that could make certain things would be a good starting point. That first version can then be expanded upon almost indefinitely and branched out into different modules and such.

Is this similar to what you would have had in mind if one was to try to work towards this kind of goal?

Yes, absolutely. Trying to design the whole machine now would be like trying to design Facebook and smartphones in 1970.

For now I want to think about a few very basic machines that could be designed that would prove out some basic concepts, be interesting, and help us learn where to go next.

I’ll have to start a thread for this, but one idea I keep going back to is artisan style soaps. It’s really simple to make soap and would only require a few simple mechanisms. And then the end machine could be useful for people looking to earn some extra income on the side, by selling their locally made soaps to boutiques.

Maybe that sounds weird. I do think there’s merit to the idea but I also started this website so others can check the economics with me and really see if it makes sense. Like, is there a market for boutique soap made in a machine? My visits to whole foods seems to say yes, but I want to understand how much effort people are willing to invest in the idea. If there isn’t a sound business case for selling the soaps, I’d question whether we could ever mobilize enough people to do it.

Off the top of your head, how crazy does a reprap style soap making machine sound?

I completely agree that a soap making machine sounds somewhat viable to make compared to many other things, my main doubt would be what kind of market there is for that kind of thing. I don’t really know though!

I think there are a lot of interesting possible starting points of various complexity. I’ve been doing some research into the feasibility of creating a flexible automated assembly cell - there has been attempts at making it before, some of them seeming quite succesful in actually working, but nothing seems to have ever really taken off. I think this kind of machine could prove very useful in general in our project - more info in these links:

Wiki page:

Article about development from the eighties:

Oooh I really like the diagram in that paper.

I think this project is going to need a good robot arm architecture to work with. A standard arm that fits well with the needs of the project. Probably a lot of people would enjoy working in that.

Have you seen this?

There’s others. And I have one of my own design half baked in my head. I just hate stepper motors. So instead of designing the arm I’ve been focused first on designing a brushless motor controller that can servo a low cost brushless motor from hobbyking.

Over Christmas break I assembled V2 of the controller and the circuit works great, but my position sensor needs more work.

But you can see V1 spinning a motor here:

I did talk to a guy who has made some nice code for controllers like this, and it’s open source and he’s all about open source. But I’m particular about my electronics so we haven’t merged our projects.

Still, I’d like to make my servo driver functional (or use his!) and use brushless servo drives as one of the core components in all these machines.

And I do have a mechanical design for a 3D printed arm that I’d like to try.


It’s funny how that works out - I’ve been spending a lot of time in these past few months trying to find a good open source robotic arm, but have yet to find something that I really thought was sufficient. Like you, I’ve been looking into using brushless DC’s - me and a friend are trying to get our hands on one of Oskar Weigl’s Odrive boards, which I suspect might be what you’re talking about. I’ve made a few prototype 3d printed robot arms but haven’t really reached anything I thought was sufficiently rigid yet.

It’s certainly something I think would create a lot of opportunities if there was an affordable and configurable open source robot arm available. Using BLDC Servos would create a very solid foundation actuatorwise - at that point, it seems the main issue is creating a mechanical assembly suitable.

Maybe such a project would be a good starting point for creating a flexible machine?

Also, I have seen the Thor arm but I feel most of those arms are barely functional enough for anything practical. I think a good first iteration would be a Cartesian or scara configuration instead of going straight for articulated arms.

I have a bit of documentation on the second prototype I made here


Cool arm design!

My immediate reaction is questions of lateral rigidity. Have you tried to build one?

I have a different design in my head. It should be more rigid but I’m concerned it’s too large for 3D printing. I started prototyping it and it was a bit absurd how big it is in reality. I have an onshape model I can share. Let me go find it…

I went for mondo rigidity, so the main shoulder bearings are 6004-2RS 20x42x12 Sealed Ball Bearings. I really like that part.

Unfortunately the main assembly parts are really large. I think this design might be better suited for a single gear reduction instead of a dual reduction, and laser cut parts instead of 3D printed parts. That’s where I’d like to go from here.

The OnShape model is free to view, fork, and edit here. OnShape doesn’t seem to have provisions for a license but just a BSD, MIT style license is acceptable to me.

And then obviously this is just the shoulder, so an elbow, wrist, and turntable would be needed too. This however is roughly what I was thinking - big gears, big bearings, 3D printed or laser cut components. Another key aspect of my design is the idea of using a motor that would normally be considered too large - and taking advantage of the extra torque to simplify/reduce your gearing complexity.

My design methodology is basically “make everything really big to compensate for issues with 3D printing”. But then you run in to another issue with 3D printing which is that big parts are difficult and time consuming to print!

I modified my 3D printer with a 0.8mm nozzle, and microswiss finally added 1.0mm and 1.2mm nozzle sizes so I think I’ll upgrade to a 1.2mm one soon. Then printing large stuff isn’t horrible.

I have built one yes, and you’re spot on! The rigidity kinda sucks, which is honestly also what I expected. If I changed the design very slightly and used aluminium parts, I think it would be a usable design, but it’s not good enough for a 3d printed arm.

It looks like a cool design - I’m mainly wondering how it would perform in terms of accuracy and speed. 3d printed or laser cut gears could probably work to some extent, but with such a long reach of such a big arm, even small amounts of slop would probably amount to quite a bit at the end effector. Also, the speed is of course not completely crucial if the rigidity and accuracy is there, but if we want to actually make stuff it seems the motor would need to be huge to drive it at a reasonable speed.

It looks very cool though - I think the best way to test it would be to finish some kind of brute design and try it out.

And yes, the big printing stuff sounds pretty awesome. It is, as you say, however, obviously important to keep in mind both production time, weight and if the rigidity actually ends up being better.

I think the conclusion I came to after trying my design was that metal just seems too good to try to compete with. I was planning on trying a third iteration using off the shelf aluminium extrusions and brackets and such in order to keep the design simple, affordable and much more rigid (I’d think).

I think this kind of thing would be a productive thing to work on no matter what!

Definitely the long reach isn’t necessarily part of the design. I just threw that tube on there but in reality I’d expect to make it shorter.

My servo drive is almost complete. The driver itself works, I just need to fix the position sensor I devised, which doesn’t quite do what I want. Probably over the next month I’ll have some time to iterate on that. My side projects just move slowly because I have so many. If you look at the complexity of The Machine, it’s a reflection of my incessant need to make really complicated things.

But once I have a functional positional sensor, then a robot arm is mechanical design and software for me, which is a good place to be.

Haha, it sounds like you’re the right guy to get the project going then :slight_smile:

It sounds exciting with the servo driver. BLDC Servos would offer quite an improvement over steppers both in speed and I guess some clever design could take out most of the eventual slop.

I’m excited to see what you come up with!

Thinking of modules, here are three sites you all might appreciate:

Lists how-to instructions for plastic recycling, extruding/molding. Such machines could be the start of a boutique business for a small family. I would love to see this concept applied to other micro-manufacturing arenas.

Open Structures is a design philosophy that helps hardware “work together” with other open sourc hardware.

I’m sure you’ve already checked out these folks, but I suspect there is overlap between some of their machines and what kind of modules you may have in mind.