GALERIE

Musik & Medien

Gehklavier

AlgOrgel

XylAlgo

GraphicInterface

3D-Drucker

zum erstellen von Maschinenbauelementen zum Instrumentenbau

Prototyenbau

Diverse elektronische Prototypen zur Sensorik und Aktuatorik

Schon einige Jahre bevor Arduino maßgeschneiderte Shields auf den Markt kamen

Teils hochwertige Bauelemente oft aus Schrott. (Hier ein Drehantrieb aus einer alte Festplatte)

Prototyp eines computergesteuerten Trommelschlägels.

Fußgesteuerter Beamer von Josef Baier.

JoyWipp von Josef Baier

Vom Blatt Spielen von Thomas Ecker

Fabelhaft von Irma Kapeller

Computerklang und Steuerung:

Michael Enzenhofer

Josef Enzenhofer

Marc

Musikalische Kaffeemühle von Thomas Ecker

KlangRohr von Josef Baier

Kyma&Posaune

MetaSynth als AusstellungsObjekt

MultimediaSessel von Adriana Torres

SpiralDance von Josef Baier

SharkAttack von Mike Kreutzer

KlangMemory von Thomas Ecker

DMX-Controller

Der DMX-Controller eignet sich hervorragend für Lichtsteuerung von MAX aus.

Er bewährte sich schon bei einigen Sound&Vision-Konzerte an der Anton Bruckner Privatuniversität bei Prof. Andreas Weixler

Folgende Teensy-Programmierung mit Arduino-IDE hat sich bewährt:


/*

 

 ......................................................

 DMX_PAR_LED Vers.13

 ......................................................

 

  DMX steuern mit MAX

  michael.enzenhofer@eduhi.at

 

 */


//#include <usb_serial.h> // für Teensy2

#include <DmxSimple.h>  //DmxSimple muss in den Plugin-Ordner von Arduino installiert werden!!


int channel; // Welcher Kanal

int value; // Wert des Kanals



void setup() {


  Serial.begin(57600); // Baudrate mit MAX übereinstimmen!!

  Serial.print("Hallo hier ist ein Teensy angeschlossen"); // seriell Meldung nach Max

 // pinMode(PIN_B3, OUTPUT);  


  DmxSimple.usePin(23); // 

  // hier aufpassen, dass es stimmt!!!

  //muss mit dem Dig-Eingang beim Teensy übereinstimmen!

  DmxSimple.maxChannel(512); // der PAR-LED-Scheinwerfer arbeitet mit 3-4 Kanälen 

  // Am 18. 12 . 2014 von 16 auf 512 Kanäle geändert

  

  establishContact();  // send a byte to establish contact until receiver responds 


  // Channel 1 value

  // 0 - 63     RGB control, CH2 = red, CH3 = green, Ch4 = blue

  // 64 - 127   7 color fade, CH5 = speed control

  // 128 - 191  3 color change, CH5 = speed control 


  // Channel 2 value

  // 0 - 255    Red color 0 - 100 %


  // Channel 3 value

  // 0 - 255    Green color 0 - 100 %


  // Channel 4 value

  // 0 - 255    Blue color 0 - 100 %


  // Channel 5 value

  // 0 -10     bo function - no speed

  // 11 - 100    value 11 to 100, fast speed to low speed

  // 101 - 150     no function - no speed

  // 151 - 255    speed control by unit, by music or VAR



}


void loop() {


  if (Serial.available() > 1) {  // Sobald 2 Byte anliegen 

    // 1.Byte = Welcher Kanal (1-5)

    // 2. Byte = Welcher Wert des jeweiligen Kanals

    // weitere Bytes zur komplizierteren Programmierung möglich, dabei muss (Serial.available() > 2.... eingestellt werden


    channel = Serial.read(); // ... ist deas erste Byte für den Channel

    value = Serial.read();   //.... und das zweite Byte für den Wert



    DmxSimple.write(channel, value); // Kanal 2 für ROT, 3 für GRUEN, 4 für BLAU



    /* Small delay to slow down the ramping */

    // delay(20); // andere Werte probieren

    // oder herausnehmen?

  }


}



void establishContact() {

  while (Serial.available() <= 0) {

    Serial.print('A', BYTE);   // send a capital A

    delay(300);

  }

}