Sandbot

February 15th, 2010 joel.letkemann@iaac.net Posted in Fabio Andres Lopez Mora, Joel Letkemann, T5: Viraj_Joel_Fabio, Viraj Kataria | No Comments »

Please Find .pdf Here

100205_presentation01100205_presentation02100205_presentation03100205_presentation04100205_presentation05100205_presentation06100205_presentation07100205_presentation08100205_presentation09100205_presentation010100205_presentation011100205_presentation012100205_presentation013100205_presentation015100205_presentation016100205_presentation017100205_presentation018

AddThis Social Bookmark Button

Dream Weaver

February 7th, 2010 melat.asfaw@iaac.net Posted in T1: Melat_Joao_Brian | No Comments »

blog-1

blog-2

1.1.KUMIHIMO BRAIDING

SYSTEM -Yarn Shifting Based (variable amount of feeders – even number)
OUTCOME – single yarn(or geometrical variation if some object is inserted)

blog-3

1.2. BRAIDING MACHINES

SYSTEM –> Rotative (variable amount of feeders –> even number)
OUTCOME –> closed revolved surface

blog-4

1.3  KNITTERS

SYSTEM –> CIRCULAR OR LINEAR (singular feeder)
OUTCOME –> open & closed surfaces

blog-5

KNITTERS OUTCOME & EXISTING SOFTWARE

(based on bidimensional patterns)

blog-6

blog-7

blog-9

blog-10

blog-11

blog-12

blog-13

blog-14

blog-15

blog-16

blog-17

You can find the link to the code on Dream Weaver DC motor controls

dreamweaver

dreamweaver2

You can find the video of the machine in action on dreamweaver_Brian,Joao,Melat

blog-18

19

20

You can find the link for the servo controls on Dream Weaver Servo controls

blog-21

blog-22

blog-23

blog-24

blog-26

blog-27

blog-28

The pdf of this presentation can be found at DREAMWEAVER_Melat.Brian.Joao

AddThis Social Bookmark Button

The Fluid Inject Printer

February 5th, 2010 jessica.lai@iaac.net Posted in T7: Jessica_Miquel | No Comments »

presentation.ai

SPHERIFICATION

In our conceptual machine we borrowed the technique of  ‘Inverse Spherification’ that was invented Ferran Adrià in the molecular gastronomy  – when a liquid droplet whichever contains calcium is submerged into an alginate bath, the droplet of liquid will then be spherified by forming a ‘gel’ like surface around the sphere. Droplets become ‘caviers’ in water depending on the sizes of injecting device.

THE MATERIAL EXPERIMENTS

We are carrying out series of experiments of spherifying a variety of liquid (e.g. water liquid, oil, plaster cement, yoghurt, milk etc.) as well as  investigating the physical and chemical properties of the spherified liquid.

Spherification of various water-based liquid

Spherification of various water-based liquid

Forms of yoghurt droplets in alginate bath injected by syringe

Forms of yoghurt droplets in alginate bath injected by syringe

 

Forms of milk droplets in alginate bath

Forms of milk droplets in alginate bath

 

Positions of yoghurt droplets in more concerntrated alginate bath

Positions of yoghurt droplets in higher concerntrated alginate bath

 

Position of yoghurt droplets in higher concerntration of alginate bath

Position of yoghurt droplets in higher concerntration of alginate bath

 

The simultaneous emulsification and spherification of milk in alginate bath

The simultaneous emulsification and spherification of milk in alginate bath

 

THE PRINTING MACHINE

The first generation of the Fluid Inject Printer is a 1-axix machine with only 2 controllable parameters. It consists a stepper motor that controls the syringe’s trajectory and  a DC motor that controls the amount of injection into the alginate bath.

(1) Both devices are feeded by commands of the Arduino;

(2) Trajectory of syringe determines the location of print;

(3) While liquid is being ejected out from the syringe it becomes instantaneously ’spherified’ in the alginate bath. Hence the first form is printed.

presentation.ai
presentation.ai
#include <Stepper.h>

// change the steps variable to the number of steps on your motor
int steps = 100;
int switchPin = 2;    // switch input
int motor1Pin1 = 8;    // pin 2 on L293D
int motor1Pin2 = 9;    // pin 7 on L293D

// create and attaches a stepper motor
// with 100 steps to pins 0, 1, 2 and 3

// calibration
int stepLength = 50;
int liquidAmount = 25;

Stepper stepper(steps, 3, 4, 5, 6);

void setup()
{
  // set the speed of the motor to 20 rpms
  stepper.setSpeed(200);
  pinMode(switchPin, INPUT);
  pinMode(motor1Pin1, OUTPUT);
  pinMode(motor1Pin2, OUTPUT);
  Serial.begin(9600);
  Serial.println(”hello world”);
}

void loop() {
  if (Serial.available() > 0) {
    int dataIn = Serial.read();
    switch(dataIn) {
    case ‘]’:
      stepper.step(stepLength);
      break;
    case ‘[’:
      stepper.step(-stepLength);
      break;
    case ‘,’: //up
      digitalWrite(motor1Pin1, LOW);   // set pin 2 on L293D low
      digitalWrite(motor1Pin2, HIGH);  // set pin 7 on L293D
      delay(liquidAmount);
      digitalWrite(motor1Pin2, LOW);  // set pin 7 on L293D
      break;
    case ‘.’: //down
      digitalWrite(motor1Pin1, HIGH);   // set pin 2 on L293D low
      digitalWrite(motor1Pin2, LOW);  // set pin 7 on L293D
      delay(liquidAmount);
      digitalWrite(motor1Pin1, LOW);   // set pin 2 on L293D low
      break;
    }
  }
}

 

 
AddThis Social Bookmark Button

Interactive systems

January 22nd, 2010 georgia.kotsari@iaac.net Posted in T6: Georgia_Mia_Tomasz | No Comments »

Hacking toys/Introducing the idea

Interacive systems

1.  Stepper motor receives rotate command from laptop. This movement triggers piezo sensor1 which activates machine2.
2.  The motion produced by machine2 activates piezo sensor2 which activates machine3.
3.  Machine3 randomly roves and draws.

SCRIPT CODE

#include <Stepper.h>

// change the steps variable to the number of steps on your motor
int steps = 100;
int switchPin  =  9;
int chipPin1 =  10;
int chipPin2 =  11;
int dollPin1 =  8;
int dollPin2 =  12;
int piezoPin1 =  5;
int piezoPin2 =  4;

// create and attaches a stepper motor
// with 100 steps to pins 0, 1, 2 and 3

Stepper stepper(steps, 14,15,16,17);

void setup()
{
pinMode(switchPin,INPUT);
digitalWrite(switchPin,HIGH);
// set the speed of the motor to 20 rpms
stepper.setSpeed(50);
stepper.step(50);
pinMode(dollPin1, OUTPUT);
pinMode(dollPin2, OUTPUT);
pinMode(chipPin1, OUTPUT);
pinMode(chipPin2, OUTPUT);
Serial.begin(9600);
Serial.println(”hello world”);

}

void loop()
{
Serial.println(analogRead(piezoPin1));
if (analogRead(piezoPin1) > 1) {
for (int i=0;i<50;i++) {
digitalWrite(dollPin1, HIGH);
digitalWrite(dollPin2, LOW);
delay(50);
digitalWrite(dollPin1, LOW);
digitalWrite(dollPin2, HIGH);
delay(200);
digitalWrite(dollPin1, LOW);
digitalWrite(dollPin2, LOW);
}
Serial.println(analogRead(piezoPin2));
}
if (analogRead(piezoPin2) > 2) {
for (int i=0;i<5;i++) {
digitalWrite(chipPin1, HIGH);
digitalWrite(chipPin2, LOW);
delay(500);
digitalWrite(chipPin1, LOW);
digitalWrite(chipPin2, HIGH);
delay(500);
digitalWrite(chipPin1, LOW);
digitalWrite(chipPin2, LOW);
}
}
if (Serial.available() > 0) {
int dataIn = Serial.read();
switch(dataIn) {
case(49):  // number 1
stepper.step(50);
break;
case(50):
stepper.step(-50);
break;
case(51):
stepper.step(50);
break;
case(52):
stepper.step(-50);
break;
case(53):
stepper.step(-10);
break;
case(54):
for (int i=0;i<10;i++) {
digitalWrite(dollPin1, HIGH);
digitalWrite(dollPin2, LOW);
delay(random(50));
digitalWrite(dollPin1, LOW);
digitalWrite(dollPin2, HIGH);
delay(random(50));
digitalWrite(dollPin1, LOW);
digitalWrite(dollPin2, LOW);
}
break;
case(55):
for (int i=0;i<10;i++) {
digitalWrite(chipPin1, HIGH);
digitalWrite(chipPin2, LOW);
delay(random(100));
digitalWrite(chipPin1, LOW);
digitalWrite(chipPin2, HIGH);
delay(random(100));
digitalWrite(chipPin1, LOW);
digitalWrite(chipPin2, LOW);
}
break;
}
}

delay(100);
/*
if (digitalRead(switchPin) == HIGH) {
// move 20 steps forward
stepper.step(50);
}
else {
stepper.step(-50);
}
{
digitalWrite(dollPin1, HIGH);
digitalWrite(dollPin2, LOW);
delay(2000);
digitalWrite(dollPin1, LOW);
digitalWrite(dollPin2, HIGH);
delay(2000);
digitalWrite(dollPin1, HIGH);
digitalWrite(dollPin2, LOW);
delay(2000);
}
digitalWrite(chipPin1, HIGH);
delay(5000);
digitalWrite(chipPin2, LOW);
delay(10000);
*/
}

AddThis Social Bookmark Button

“Robot “Arm”"

January 17th, 2010 joel.letkemann@iaac.net Posted in T5: Viraj_Joel_Fabio | No Comments »

P1020771

This script operates 2 stepper motors using 2 potentiometers.  playing with the values allows you to calibrate the sensitivity of the motors.

#include <Stepper.h>

#define STEPS 100 // no. of steps on motor

Stepper stepper(STEPS, 8, 9, 10, 11); // stepper, number of steps, pins

Stepper stepper1(STEPS, 4, 5, 6, 7);

int potval0 = 0; //incoming potentiometer values

int potval1 = 1;

int previous = 0;

int previous1 = 0;

int potmin = 1023;// pot minimum and maximum for re-mapping the values

int potmax = 0;

void setup()

{

// set the speed of the motor (RPMs)

stepper.setSpeed(50);

stepper1.setSpeed(50);

}

void loop()

{

// get the sensor value

potval0 = analogRead(0);

potval0 = map(potval0, potmin, potmax, 0, 100);//re-map sensor value to no. of steps

potval1 = analogRead(1);

potval1 = map(potval1, potmin, potmax, 0, 100);

int val = potval0;

int val1 = potval1;

stepper.step(val – previous); //number of steps sent to sensor

stepper1.step(val1 – previous1); // remember the previous value of the sensor

previous = val;

previous1 = val1;

}

AddThis Social Bookmark Button

Hello world!

December 9th, 2009 admin Posted in Uncategorized | 1 Comment »

Welcome to WordPress. This is your first post. Edit or delete it, then start blogging!

AddThis Social Bookmark Button