17. Machine design

Group assignment

- Actuate and automate your machine
- Document the group project and your individual contribution

TEAM

Test workflow

Idea

Digital Artist Project in a snap / CNC PLOTTER MACHINE

The idea is to build a digital artist with a simple interphase which is used to plot shapes.

How does it work?

The shape is created by importing our shape library into Processing Interphase which will be converted into commands and sent over serial to our custom motor drivers for calibration and then to the XY motion system.

Team B

Motor Drivers Design / Milled / Soldered

We redesigned Neil’s hello.stepper.bipolar board for their outputs week, and we connected them togeher for networking week, so those boards were used for controlling our machine motors.

The setepper design was modified to add a jumper between the regulator output and the microcontroller vcc line, because for some reason our voltage regulators get very hot when programming the board.

Team C

Steppers control and communication

We first tested using Arduino Ide If we can get the serial communication to work using the motor drivers in networking week so after doing a few more tests using the arduino uno and attiny 45 via serial and i2c we installed processing interphase to graphically add the shapes which we would like to plot. Processing interphase then converts those shapes and send commands to our motor drivers over software serial which then controlled our stepper motors to draw those shapes we tested with a square and a triangle.

The boards control X and Y movements. They use a modification of Neil’s code for stepper control and serial communication (hello.stepper.bipolar.44.full.c and hello.ftdi.44.echo.c). They are networking, using serial bus, and currently, taking commands from the computer, with a Processing interface through ftdi cable.

Code

The main part of the code first tests for the axis (x or y), then for the direction (+ or -), then shifts the content of the buffer and converts it to an integer, which is the argument for the n steps routine.

          if ( buffer[0] == 'y' || buffer[0] == 'Y' )
          {
            if ( buffer[1] == '-' )
            {
                int i = 0;
                while ( i < 15)
                {
                  buffer[i] = buffer[i+2];
                  i++;
                }
                int number2 = atoi( buffer );
                step_ncw(number2);
            }
            else
              {
                int i = 0;
                while ( i < 15)
                {
                  buffer[i] = buffer[i+2];
                  i++;
                }
                int number2 = atoi( buffer );
                step_nccw(number2);
              }
            }

The processing interface boradcasts to serial, so each board cand take its commands and execute them.

Future goal

Our Future Goal with our simple to use digital artist machine is to create our custom shapes library which users can use to easily plot shapes images and designs.

Digital Artist

Link to machine.mp4

Files

Stepper driver KiCAD project

Stepper driver code

Processing interface and control