Difference between revisions of "Exercising slow"
(One intermediate revision by the same user not shown) | |||
Line 1: | Line 1: | ||
+ | [[File:Track_cropped_lr.jpg]] | ||
+ | |||
+ | |||
''All questions about motion or speed are only complete with an appropriate frame of reference.''<br> | ''All questions about motion or speed are only complete with an appropriate frame of reference.''<br> | ||
''Exercising slow at 50.8357°N & 4.3615°E,''<br> | ''Exercising slow at 50.8357°N & 4.3615°E,''<br> | ||
Line 14: | Line 17: | ||
[[File:Setup.jpg|plummet picture|240px]] | [[File:Setup.jpg|plummet picture|240px]] | ||
[[File:Wiring.jpg|plummet exploded view|240px]] | [[File:Wiring.jpg|plummet exploded view|240px]] | ||
− | [[File: | + | [[File:Wiring2.jpg|plummet picture|240px]] |
====''Code''==== | ====''Code''==== |
Revision as of 13:31, 11 January 2013
All questions about motion or speed are only complete with an appropriate frame of reference.
Exercising slow at 50.8357°N & 4.3615°E,
I find myself in between projects, exploring our perception of time in preparation of a new installation.
The last 11 months David De Buyser and I worked together on our projects in a series of residencies.
At NADINE we present our different interests in a collaborate scenography.
Our current state of ideas about sound, light and movement linked in a series of events.
concrete block 19/39/9 cm 8.6 kg
birch platform 25.5 cm
nadine platform 15 meters long
Mirror setup
Code
Here's the code I used to drive a linear actuator hooked up to the Nanotec SMC11 stepper driver board.
/* Code to control the Nanotec SMC11 stepper board from an arduino
*/
int EnPin = 2; // Enable low = active, high = disabled
int DirPin = 3; // Direction low = active, high = disabled
int ClkPin = 9; // CLK
int sensorPin = A0; // select the input pin for the potentiometer
int sensorValue = 0; // variable to store the value coming from the sensor
int CurrPin = 6; // Current enable pin
int incomingByte;
int ctrl = 0;
void setup()
{
pinMode(EnPin, OUTPUT); // sets the pin as output
pinMode(DirPin, OUTPUT); // sets the pin as output
pinMode(ClkPin, OUTPUT); // CLK
digitalWrite(EnPin, LOW);
digitalWrite(DirPin, LOW);
digitalWrite(CurrPin, HIGH);
Serial.begin(9600);
}
void loop()
{
// Serial commands to arduino F = Forward, B = Backwards, S = Stop motor
if (Serial.available() > 0) {
incomingByte = Serial.read();
if ( incomingByte == 'F'){
ctrl = 1;
//Serial.print("F");
}
if ( incomingByte == 'B'){
ctrl = 2;
//Serial.print("B");
}
if ( incomingByte == 'S'){
ctrl = 0;
//Serial.print("S");
}
}
switch (ctrl) {
case 1:
//do something when var equals 1
//Serial.print("1");
forward();
break;
case 2:
//do something when var equals 2
//Serial.print("2");
backwards();
break;
case 0:
stops();
}
}
void run()
{
digitalWrite(ClkPin, LOW); //active
delayMicroseconds(200);
digitalWrite(ClkPin, HIGH);//disabled
delayMicroseconds(400);
}
void forward()
{
digitalWrite(EnPin, LOW);
delayMicroseconds(150);
digitalWrite(DirPin, LOW);
delayMicroseconds(150);
run();
}
void backwards()
{
digitalWrite(EnPin, LOW);
delayMicroseconds(150);
digitalWrite(DirPin, HIGH);
delayMicroseconds(150);
run();
}
void stops(){
digitalWrite(EnPin, HIGH);
delayMicroseconds(150);
}
xbee config
Using moltosenso network manager iron to configure Xbee modules. Using Xbee Pro series 2