Deepak Sharma

    [m]MTM- Cardboard machine

    image
    image

    Nearly endless kinematic options from simple parts.

    image

    Cardboard is a great material for machine prototyping because you can cut, glue, tape, laminate, slice, and fold with ease! Since the material is cheap, iteration is a breeze! We use science fair style trifold presentation boards because they are colorful and so we can claim they are made from 100% science.

    image

    Laser cut cardboard parts layout

    image

    Etched lines should be cut through the top later and corrugation but not through bottom layer.

    image
    image

    Necessary parts for one cardboard linear stage.

    image

    Each layer must be laminated together to achieve maximum stiffness.

    image

    Motor installation happens mid assembly.

    image

    Fully assembled linear stages ready for electronics to be added.

    Fasteners:

    Have a look at the Construction Kit for clever ways of connecting the stages together.

    Software:

    Now that the stage is complete we will need to download the required software to program and communicate with the Gestalt Nodes. You can clone the latest Gestalt library from GitHub here.

    Once you have the Gestalt Framework downloaded and installed, it is time to program the nodes. Use the below wiring diagram and Makefile.

    image

    Programming your Gestalt Node with and AVR. Note The Fabnet to node connector is not typical!

    CFLAGS = -g -Wall -Os -mmcu=$(MCU) -DF_CPU=$(FREQ) -I$(GESTALT_DIR) $(GESTALT_DEFS)
    avr-g++ $(CFLAGS) -c -Wall $(SOURCES)
    avr-g++ $(CFLAGS) $(LDFLAGS) gestalt.o -o $@ $^
    avr-objcopy -j .text -j .data -O ihex $< $@
    image

    Wiring diagram with control boards "daisy chained" together. One node, two node, red node, blue node....

        else: self.fabnet = interfaces.gestaltInterface('FABNET', interfaces.serialInterface(baudRate = 115200, interfaceType = 'ftdi', portName = '/dev/ttyUSB0'))
        self.xAxisNode = nodes.networkedGestaltNode('X Axis', self.fabnet, filename = '086-005a.py', persistence = self.persistence)
        self.yAxisNode = nodes.networkedGestaltNode('Y Axis', self.fabnet, filename = '086-005a.py', persistence = self.persistence)
        self.xyNode = nodes.compoundNode(self.xAxisNode, self.yAxisNode)
        self.xAxis = elements.elementChain.forward([elements.microstep.forward(4), elements.stepper.forward(1.8), elements.leadscrew.forward(8), elements.invert.forward(True)])
        self.yAxis = elements.elementChain.forward([elements.microstep.forward(4), elements.stepper.forward(1.8), elements.leadscrew.forward(8), elements.invert.forward(False)])
        self.stageKinematics = kinematics.direct(2) #direct drive on all axes
        self.move = functions.move(virtualMachine = self, virtualNode = self.xyNode, axes = [self.xAxis, self.yAxis], kinematics = self.stageKinematics, machinePosition = self.position,planner = 'null')
        self.jog = functions.jog(self.move) #an incremental wrapper for the move function
    image

    Everything needed to start moving! Pen not included!

    NEVER HOT PLUG! ( boards should never be powered while connecting). We power the boards at the very end, forgetting this and connecting while powered will most likely destroy the Gestalt Node...

    The set up of nodes is saved into a machine persistence file called test.vmp. You can make a new one by deleting the old one and rerunning the virtual machine file. The code will prompt you to identify the nodes by pressing their buttons. Try e.g. running http://github.com/imoyer/gestalt/examples/htmaa/xy_plotter.py

    nadya@revolt:~/Version/gestalt/examples/htmaa$ python xy_plotter.py 
    xy_plotter.py: Warning: setting persistence without providing a name to the virtual machine can result in a conflict in multi-machine persistence files.
    X Axis: http://www.fabunit.com/vn/086-005a.py
    Y Axis: http://www.fabunit.com/vn/086-005a_boot.py
    Y Axis: http://www.fabunit.com/vn/086-005a.py
    image

    Drawing in process with springloaded pen capture and nylon quick connect straps.

    image

    Image of single line drawing completed with Cardboard CNC

    The Modular Machines that Make project is a collaborative project born out of the 'Machines that Make Project' inside the Center for Bits and Atoms at The Massachusetts Institute of Technology.

    Current research also sponsored by the MIT - SUTD Collaboration and International Design Center.

    Current Contributors: