PROJECT DEVELOPMENT

The development of this project is based on the adaptation of the mechanism of a knitting machine into an AXYZ 4008 CNC Router Machine. The project is basically aimed at poor indigenous women who live in the State of Chiapas. Initially, I wanted to make a knitting machine, but due to the short period of time at the Fab Academy, I was forced to make some changes during the entire project process.
The first thing I wanted to study is the mechanism of a traditional hand weaver by itself, but this idea did not convince me at all, because the hand weavers are complicated to handle. Therefore, I was forced to study how the mechanisms of a conventional knitting machine could imitate some of the mechanisms of a hand weaver.

ERROR

The main purpose of this project is to provide to at least one community of indigenous women with a CNC mechanism that recreates the knitted pieces in a faster and more efficient way, and to achieve this goal the first thing that was done is the initial approach of how to attack this problem.

ERROR

 

The hand weavers are complicated to handle and what I wanted with this project is to provide a way CNC mechanism to at least one community of indigenous women.
To achieve this goal the first thing that was done was the initial idea of how you would have to attack this problem.

ADJUSTMENT OF A  ROUTER CNC AXYZ 4008 MECHANISM FOR WEAVING

The problem boot is raised.

ERRROR

Graph of functioning

ERROR

We propose the schematic of the problem

ERROR

Approach interaction of bits and atoms

ERROR

FIRST STUDY PROPOSAL

As the first proposal, I raised the removal of the Router and replace it with an adaptation of it, which could be in the XYZ axes, and it might be very interesting.

ERROR

I made the first proposal of the Router without knowing exactly where I was going, and I was not sure how I might have the solution of the alteration for the knitting machine. Therefore,  I gave myself the task of putting together each of the components, that may intervene in the alteration of the router, and  I began to understand the problem.

 THE FIRST MODEL
This was the first model to carry the remains of the laser cutting,.where it clearly should had been knitted from one end to another. Even though I did not know how to build it, it was useful because I understood how the menara knitting should not tangle the threads provided from the bottom up, without  return.
This first model did not work.

ERROR

THE SECOND MODEL

Since my professional development I have always resorted to the realization of three-dimensional models in any type of material. Creating three-dimensional models has helped me a great deal; while I am tracing these models manually, I am analyzing and quantifying each stroke. I have not replaced this design method  even with an entry of a laser cut and CNC laser; on the contrary, each time I trace with pencil, I know beforehand that is the stroke I will repeat in the machine.

At first glance, it may seem that I am working twice; however, is the opposite, because when I solve the problem with the models, I know immediately how I will do the same with the laser machine and the CNC.

The second model did not work.

ERROR

THE THIRD MODEL AND END

I started to make this machine in a model to understand which could be the manufacturing process and also to understand which mechanisms may function with my adaptation of the CNC.

ERRROR

This is the adaptation of the AXYZ 4008 directly on the machine. This model is useful for now. If  I were able to understand what mechanisms might work in my adaptation, I will be able to weave.

ERROR

The parts that worried me the most how to solve,and needed more study,  were the zipper mechanisms and the sensors, as well as the actuator and the handles of the needle. I had to take advice from a mechanic  engineer and  a mechatronic engineer who advised me, helped me answer any questions, and sizing each one of the parts of the alteration of the CNC

ERROR

This is the first study image of how the router had to be with the placement of the needle. As it can be seen, I still did not have any idea what I could achieve later on.

ERRRO

After several designing attempts I had a better idea of what to do, and I finally knew where the project was headed


A Three-dimensional knitting machine with motion sensors and a rotation mechanism to tighten the thread.

FINAL MODEL
ESTABLISHING THE STRATEGY OF WORK

The final piece is done with the right dimensions of the CNC modification, for this purpose some of the dimensions of the engines which will be involved are consulted.

CUTTING THE BASIC PATS OF THE ALTERATION OF THE CNC MACHINE

The cut of the main piece was made in MDF 12 mm natural color and it was cut in the AXYZ 4008 with a 3/16 "drill bit.
Drawings for cutting

Download file adaptation.cdr (corel draw)

Download file adaptation.dxf

PLACEMENT AND DESIGN OF THE PARTS OF ADAPTATION

Once placed short separate pieces of each of the elements

1. - Zipper
2. - Gear
3. - Pinion
4. - Needle
5. - Pulleys

All parts involved in the alteration of the CNC router were cut with a 3mm MDF.

The perforations were left for the placement of bolts sujeccion parts. It had many problems with the dimensions of the pieces. I had never imagined how complex might be to design a mechanism that  all the parts work.
At the time of drilling we I still did not have the engines that will be used, so I do not know the diameter of the holes, and this was a problem.
Here are some sketches of what the needle may be. The challenge was that a bearing could be placed to revolve, for that this study model was conducted.

The parts were made from pre-cut 3mm MDF.

Download file gear train, zipper, pinion, needle and pulleys.cdr (corel draw)

Download file gear train, zipper, pinion, needle and pulleys.dxf

These images clearly depict how the pieces that intervene might be placed in the adaptation of the CNC.

DESIGN AND PRINTING OF THE NEEDLE IN 3D

One of the most important parts of the project and which I devoted more study time was the knitting needle part.
In a first attempt I wanted to make the needle with the asignment of composites, for it made a mold in ROLAND MDX40A

Download file Aguja.stl

The attempt failed, because I could not make a mold properly, and the mixture was broken.

The other solution was to conduct a Rhino 3D needle that was properly proportioned. The needle was printed on a machine OBJET EDEN 250 and to avoid any shape error it was corrected in a netfabb four studio.

NEEDLE PRINTING IN 3D ON PRINTER OBJET EDEN 250

Download file aguja.3dm

It was printed in high strength resin

Download file aguja_doble.stl

The end result of a clean 3D printing and ready to start testing with the CNC turning radius.
The needle was built with a diameter of 2.7 mm in the perforation to where Tejeria and was the same Diemnsion of the party would subject.
The needle is 82mm high

Download file aguja.3dm 

Download file aguja_doble.3dm

Download file aguja_doble3.3dm

Download file aguja_final.3dm

DESIGN OF THE SUPPORT FOR ADAPTATION OF THE NEEDLE


There were several tests made of the needle; first,  I made this model in board chassis (see the study of the needle).

    On the first volume work study, several tests were performed to design the needle clamp without a result. The rotation of the needle was central to the overall function of the tissue. In order to guarantee the rotation of the needle, a bearing is placed which is held by means of two circles made of acrylic.



Once I got to the final design and  I placed the measurements, and then I proceeded to perform the drawing in AutoCAD 13.

Download file adaptation for needle.dxf

download file modification adaptation for needle.dxf

The drawings were sent to cut on a 60w Laser Pro cutting power machine.

Comprises parts of the mechanism of the needle base are laser cut in MDF.

The final parts of the placement of the needle bearing and clamping.

This is the final result

It did not work, because the part of the bearing did not rotate according to the injection of the wire. The needle bended too much, so it was necessary to place another bearing and draw the needle piercing diagonally. The  solution to this problem was to redesign a double needle bearing, so with this stability the neddle will win and will fix the rotation.

MECHANISM DESIGN OF THE ROD, CRANK AND SLIDING

The engaging of  the thread pulled and movement emulation of the needle of a sewing machine through the rod-crank mechanism, which allows an up and down sliding movement of the needle.

These images clearly depict how the pieces will be placed in the intervention of the CNC alteration.

Download file rod, crank and sliding.cdr (corel draw)
Download file rod, crank and sliding.dxf


DESIGN OF THE TRAIN GEAR, THE PINION AND THE RACK

I made a rack with a pulley to tighten thread avoiding  any problems that might arise from this function. To reduce the motor speed I developed a gear train connected to the rack pinion.
We calculated the number of gear teeth according to the number of revolutions needed.

Load of the gears

Download file gear train, pinion and rack.cdr (corel draw)

Download file gear train, pinion and rack.dxf

 

 ASSEMBLY OF THE PARTS TO THE ADAPTATION OF THE CNC
The machine is finally armed with the attachments.

ELECTRONIC DESIGN

The electronic components used are the following:

1. - Metal gear motor with 100:1 gear ratio

Brand POLOLU

2.- Servomotor Model GS-5515MG

Brand GOTECK
Metal gear

3. - Microswitch7 with lamina 5A
Model SS0501A


4.- Integrated Circuit SN754410NE which is an H-bridge Driver with diodes.



5.- Terminal 2 way 3.5 mm


6.- 40-pin single strip


7.- 50 f-f wires 30 cm color

The design of the 2 sensor boards were first made inEagle to determine the upper and the lower limits of the rack zipper, which are the following:
2 Way Terminal 3.5 mm
Microswitch
10 k Ω Resistor
2-pin header for the connetion

Stroke schematic

Download file sensor_limit for eagle

 

The Eagle also took place in the design of a power board and spinner control for the gearbox.

 

The schematic Stroke

Download file driver with l293 for eagle

WELDING OF THE MOTOR DRIVER  BOARDS



I Perform FabArduino, although I had problems with the Roland MDX Models 40A and the plate was short, but with the help of a razor detachment residual material that was not removed by the models and proceeded to solder the components to schedule FabArduino with help of tutorials regarding Anna Kaziunas FabArduino. According to these tutorials programming is very similar to the Arduino UNO with working in a home and all you have to do is assign the corresponding pins of the Arduino UNO FabArduino.

First I had to schedule my FabArduino with the boot sequence to connect it with the developer FabArduino FabISP; later make programming from the Arduino software 1.0.5.

After connecting the programmer FabISP with board FabArduino try loading the boot sequence, but I was wrong to do this because the chip is not right, I have a ATMEGA328 and must contain the FabArduino is a ATMEGA328P, so to change the chip manufacture and programming FabArduino.

After loading the boot sequence to make the changes FabArduino considering the image of Anna Kaziunas tutorial.


To check my work correctly FabArduino I tested moving a servo mount for later adaptation of CNC Router.
// Sweep
// by BARRAGAN <http://barraganstudio.com>
// This example code is in the public domain.


#include <Servo.h>
 
Servo myservo;  // create servo object to control a servo
                // a maximum of eight servo objects can be created
 
int pos = 0;    // variable to store the servo position
 
void setup()
{
  myservo.attach(9);  // attaches the servo on pin 9 to the servo object
}
 void loop()
{
  for(pos = 0; pos < 180; pos += 1)  // goes from 0 degrees to 180 degrees
  {                                  // in steps of 1 degree
    myservo.write(pos);              // tell servo to go to position in variable 'pos'
    delay(5);                       // waits 15ms for the servo to reach the position
  }
  for(pos = 180; pos>=1; pos-=1)     // goes from 180 degrees to 0 degrees
  {                               
    myservo.write(pos);              // tell servo to go to position in variable 'pos'
    delay(5);                       // waits 15ms for the servo to reach the position
  }
}

Use the code Sweep the Arduino software brings as an example, because in relation to the mapping table with the Arduino pin FabArduino necessary to use Digital Pin 9 is equivalent to the ATmega328P PB1, so I did not make modification and connect in that pin according to the electrical diagram.


The result is:



The code used for the adaptation FabArduino is:
/*
Programa proyecto Final
Fecha: 17 de mayo del 2013
Autor: FABLAB México (FABMEX)
*/
//------------ Librerías --------------//
#include <Servo.h>
//------------ Constantes -------------//

const int velmotor = 5;
const int encmot = 6;
const int apagmot = 8;
Servo servo1;
//------------ Variables --------------//
int posicion;
int var = 0;
//------------ Configuración-----------//
//-----------entradas y salidas--------//
void setup()
{
  pinMode(velmotor, OUTPUT);
  pinMode(encmot, OUTPUT);
  pinMode(apagmot, OUTPUT);
  attachInterrupt(0, encendermot, FALLING);
  attachInterrupt(1, apagarmot, FALLING);
  servo1.attach(9);
}
//------------- Programa --------------//
//------------- Principal -------------//
void loop()
{
 
  for (int aux = 0; aux<=99; aux++)
     {
       posicion=30;
       servo1.write(posicion);
       delay(1000);
       posicion=150;
       servo1.write(posicion);
       delay(4000);        
     }
      posicion=150;
      servo1.write(posicion);
      delay(60000);
      /*posicion=30;
      servo1.write(posicion);
      delay(1000);
      posicion=80;
      servo1.write(posicion);*/
     
}
//---------- Funciones -----------//
//------ llamadas por las --------//
//-------- interrupciones --------//
void encendermot()
{
  analogWrite(velmotor, 0);
  //digitalWrite(encmot, LOW);
  //digitalWrite(apagmot, HIGH); 
}

void apagarmot()
{
  analogWrite(velmotor, 180);
  digitalWrite(encmot, LOW);
  digitalWrite(apagmot, HIGH);
 
}

And my FabArduino equivalent pins are:



PROGRAMMING IN ARDUINO 1.0

To perform the control program of the adaptation of the router the ARDUINO 1.0.4 compiler was used.

Download file digital_weaver.ino

When Final Draft will be held the following corrections:
    Fab Modules problem and molds 40A Roland MDX was resolved as follows :

        The file is created in Eagle and PNG file is generated
        In Linux (Ubuntu 12.04 ) using the Fab Modules for create file is *.rml
        In Windows (Windows XP) VPanel is used to locate the origin and using the same load file *.rml . (Previously generated in fab modules) to make the cut board .

    The board FAB ARDUINO was machined in the Roland Modela MDX 40A although there were parts that no short or using a knife eliminating unions or short plate following the wiring diagram .
   It ended with the plate was FAB ARDUINO soldering the components as indicated in the wiring diagram .
  Using the developer FabISP, the FTDI cable and the Arduino software 1.0.5 the boot sequence FAB ARDUINO was scheduled.

Two tests were made with the FAB ARDUINO

    The first with the BLINK  example code that brings and Arduino 1.0.5
    The second test with the SWEEP code that also brings the Arduino 1.0.5 Sample program for controlling a servomotor ( The servomotor rotates from 0 to 180° in one direction with a speed and returns with a different or the same speed according to the program) . In the second test with the servo motor speed changes were made to confirm the operation of the FAB ARDUINO

Changed the ARDUINO UNO by FAB ARDUINO.
Modifications to this code to work with the FAB ARDUINO (definition of inputs and outputs ) were performed.

/*
Programa proyecto Final
Fecha: 17 de mayo del 2013
Autor: FABLAB MÉXICO*/
//------------ Libraries --------------//
#include <Servo.h>
//------------ Const -------------//

const int velmotor = 2;                                         Change to digital in 5
const int encmot = 3;                                           Change to digital in 6
const int apagmot = 5;                                          Change to digital in 8
Servo servo1;
//------------ Variable --------------//
int posicion;
int var = 0;
//------------ Configuration in and out-----------//
void setup()
{
pinMode(velmotor, OUTPUT);
pinMode(encmot, OUTPUT);
pinMode(apagmot, OUTPUT);
attachInterrupt(0, encendermot, FALLING);
attachInterrupt(1, apagarmot, FALLING);
servo1.attach(9);                                                  State equal because the FAB ARDUINO
}                                                                                      have equal out for controlled the servo.
//------------- Program Principal --------------//
void loop()
{

for (int aux = 0; aux<=99; aux++)
{
posicion=30;
servo1.write(posicion);
delay(1000);
posicion=150;
servo1.write(posicion);
delay(4000);        
}
posicion=150;
servo1.write(posicion);
delay(60000);
/*posicion=30;
servo1.write(posicion);
delay(1000);
posicion=80;
servo1.write(posicion);*/

}
//-------- Funtions Interrup --------//
void encendermot()
{
analogWrite(velmotor, 0);
//digitalWrite(encmot, LOW);
//digitalWrite(apagmot, HIGH); 
}

void apagarmot()
{
analogWrite(velmotor, 180);
digitalWrite(encmot, LOW);
digitalWrite(apagmot, HIGH);

}
FAB ARDUINO was programmed with the modified code and test tissue was performed , obtaining the proper functioning of the final project.

PROGRAMMING IN GCODE

The program I suggested my GURU and Nerea Tazcon was used GCode for CNC movements.

The first attempt I use was to watch the functioning of the machine was once drawing in Rhino and Rhino CAM later, where it was found that  it may be  possible to make the journey into the CNC machine. However , my guru Beno, told me that I could not do it, he would rather perform it in gcode.
The programming was performed in gcode with the coordinates needed to weave into habiliatda trabajao table in the CNC with the studs-secured.


Download file GCode.nc (open with note pad)

or Download file GCode.txt


 

 

 

 

 

 

 

 

 

 

He dismounted the AXYZ 4008 CNC router for Fitting your mount for weaver.
4 screws are mainly used as clamping drill router fine

ASSEMBLY OF THE ADAPTATION AXYZ 4008 CNC ROUTER


He placed the adaptation of the weaver to AXYZ 4008 CNC

COMPONENTS OF ADAPTATION AXYZ 4008 CNC ROUTER


These are the parts of the adaptation AXYZ 4008 CNC Router

Another important part of the project is the elaboration of the needle's hooks, which will hold the fabric, and must be 3mm MDF and cut into the laser cutter. The design was done first, and then cut in full. Because I did not  know the exact dimensions, I decided to cut them a little bit bigger.

DESIGN SUJECCION POSTS THE NEEDLE

Download file posts.cdr (corel draw)

Download file posts.dxf

We have to performed one more alteration of the post to support the base of the tissue, because the movement would not support the router, so we made a base and directly hit the post.

Another thing to be watched is the realization of the base of the weaver, which it will be 1.20 x 2.40 m and  initially worked in the CNC with  1/16" drill bit on the router in order to mark the geometry of the route, plus we made a perforation with a drill bit of 1/2 " for the placement of the poles.

TABLE MAKING WORK WEAVER.

There were 99 holes for tissue poles and 2 but for supporting the ends of the fabric

PLACEMENT OF POSTS ON THE WORKBENCH FOR FABRIC

Once placed on the base poles are transported