Domotica con Arduino + iPhone (ipharduino)


ziet verwerking komen Ide master comunicazione IP-tra iPhone - Router - verwerking, tramite questo piccolo
schets ho sintetizzato:
-Server
-Arduino controller
-Usb controller

Di seguito incollo il codice verwerking.
VI ricordo ch e per poter funzionare occorre scaricare le 3 gedeelde implements
OscP5, NetP5, CC. Arduino,

----------------------------------------------------------

importeren van oscP5.*;        Belasting OSC P5 bibliotheek
importeren van netP5.*;        Belasting netwerkbibliotheek P5
importeren van processing.serial.*;    Belasting seriële bibliotheek
importeren van cc.arduino.*;

Seriële arduinoPort;        Set arduinoPort als seriële verbinding
OscP5 oscP5;            Set oscP5 als OSC verbinding

int redLED = 0;        redLED laat ons weten als de LED in- of uitschakelen is
int [] geleid = nieuwe int [2];    Matrix laat ons toe om meer wisselknoppen in TouchOSC toevoegen

VOID Setup {}
size(100,100);        De grootte van het scherm van de verwerking
noStroke();            We willen niet een overzicht of lijn op onze graphics
oscP5 = nieuwe OscP5(this,8000);  Start oscP5, luistert naar binnenkomende berichten op poort 8000
arduinoPort = nieuwe Serial (dit, Serial.list() [2], 9600);    Instellen van de arduino te 9600 baud
}

VOID oscEvent (OscMessage theOscMessage) {/ / dit wordt uitgevoerd wanneer er een nieuwe OSC-bericht

String addr = theOscMessage.addrPattern();  Een tekenreeks uit het bericht van OSC genereert
if(addr.indexOf("/1/Toggle")! =-1) {/ / filtert wisselknoppen
int i = int((addr.charAt(9))) - 0x30;   geeft als resultaat het nummer van de ASCII-zo omzetten in een reëel getal door af te trekken 0x30
onder leiding van [i] = int(theOscMessage.get(0).floatValue());     Zet knop waarde in geleid [i]
Knop waarden kunnen worden gelezen met behulp van led [0], leidde [1], onder leiding van [2], enz.

}
}

VOID draw() {}
Background(50);        Wordt de achtergrond ingesteld op een donkergrijs, kunnen 0-255

Als (leidde [1] == 0) {/ / als opende knop 1 als...
arduinoPort.write("a");    Het teken "r" stuurt naar Arduino
redLED = 0;        Sets redLED kleur op 0, kunnen 0-255
}
Als (leidde [1] == 1) {/ / als led knop 1 op do is...
arduinoPort.write("A");    Het teken "R" verzenden met Arduino
redLED = 255;        Sets redLED kleur tot en met 255, kunnen 0-255
}
Fill(redLED,0,0);            Vul de rechthoek met redLED bedrag
ellips (50, 50, 50, 50);    Gemaakt van een ellips op 50 pixels vanaf de linkerkant...
50 pixels vanaf de bovenkant en een breedte van 50 en hoogte van 50 pixels
}

----------------------------------------------------------

Guardando il codice noterete che in base all'output captato in rete dal touchosc
0 o 1, Processing scriverà nella seriale di arduino 2 valori:
a, A.
Quindi in arduino bisogna installare uno script che capti deze 2 valori
e li trasformi in funzioni, ad es. LedOn/LedOff... ECC...
di seguito vi incollo il codice da installare dentro arduino:

----------------------------------------------------------

#define LED_PIN1 4
#define LED_PIN2 5
#define LED_PIN3 6
#define LED_PIN4 7

#define LED_PIN5 8
#define LED_PIN6 9
#define LED_PIN7 10
#define LED_PIN8 11

int firstSensor = 0;         eerste analoge sensor
int secondSensor = 0;    tweede analoge sensor
int thirdSensor = 0;        digitale sensor
int inByte = 0;               binnenkomende seriële byte
Booleaanse status_unlock;
Booleaanse status_bluetooth;

lange interval = 1000;           interval waartegen knipperen (milliseconden)
lange previousMillis = 0;        slaat de laatste tijd LED update
int minite, sec;

VOID Setup
{
seriële poort op 9600 bps te starten:
Serial.begin(9600);
pinMode (2, ingang);   digitale sensor is op digitale pin 2
establishContact();    Stuur een byte om contact tot ontvanger reageert

pinMode (LED_PIN1, uitvoer);
pinMode (LED_PIN2, uitvoer);
pinMode (LED_PIN3, uitvoer);
pinMode (LED_PIN4, uitvoer);

pinMode (LED_PIN5, uitvoer);
pinMode (LED_PIN6, uitvoer);
pinMode (LED_PIN7, uitvoer);
pinMode (LED_PIN8, uitvoer);

digitalWrite (LED_PIN1, laag);  Schakel LED
digitalWrite (LED_PIN2, laag);  Schakel LED
digitalWrite (LED_PIN3, laag);  Schakel LED
digitalWrite (LED_PIN4, laag);  Schakel LED

digitalWrite (LED_PIN5, laag);  Schakel LED
digitalWrite (LED_PIN6, laag);  Schakel LED
digitalWrite (LED_PIN7, laag);  Schakel LED
digitalWrite (LED_PIN8, laag);  Schakel LED

status_bluetooth = true;
status_unlock = false;
SEC = 0;
}

void loop
{
Als (Serial.available() > 0) {}

inByte = Serial.read();                      krijg inkomende byte:

Als (inByte == 'A') {}
digitalWrite (LED_PIN1, hoge);        overschakelen op LED
Serial.Print ('A', BYTE);                    Stuur een char
delay(800);
digitalWrite (LED_PIN1, laag);        Schakel LED
status_unlock = false;
inByte = 0;
}

Als (inByte == 'a') {}
digitalWrite (LED_PIN2, hoge);        overschakelen op LED
Serial.Print ('a', BYTE);                    Stuur een char
delay(800);
digitalWrite (LED_PIN2, laag);        Schakel LED

status_unlock = true;
SEC = 0;
inByte = 0;
}

Als (inByte == 'B') {}
digitalWrite (LED_PIN3, hoge);        overschakelen op LED
Serial.Print ('B', BYTE);                    Stuur een char
inByte = 0;
}

Als (inByte == 'b') {}
digitalWrite (LED_PIN3, laag);        Schakel LED
Serial.Print ("b", BYTE);                   Stuur een char
inByte = 0;
}

Als (inByte == 'C') {}
digitalWrite (LED_PIN4, hoge);        overschakelen op LED
Serial.Print ('C', BYTE);                    Stuur een char
inByte = 0;
}

Als (inByte == 'c') {}
digitalWrite (LED_PIN4, laag);        Schakel LED
Serial.Print ('c', BYTE);                    Stuur een char
inByte = 0;
}

Als (inByte == had') {}
digitalWrite (LED_PIN5, hoge);        overschakelen op LED
Serial.Print (had', BYTE);                    Stuur een char
inByte = 0;
}

Als (inByte == had') {}
digitalWrite (LED_PIN5, laag);        Schakel LED
Serial.Print (had', BYTE);                   Stuur een char
inByte = 0;
}

Als (inByte == 'E') {}
digitalWrite (LED_PIN6, hoge);        overschakelen op LED
Serial.Print ('E', BYTE);                    Stuur een char
inByte = 0;
}

Als (inByte == 'e') {}
digitalWrite (LED_PIN6, laag);        Schakel LED
Serial.Print ('e', BYTE);                   Stuur een char
inByte = 0;
}

Als (inByte == 'F') {}
digitalWrite (LED_PIN7, hoge);        overschakelen op LED
Serial.Print ('F', BYTE);                    Stuur een char
inByte = 0;
}

Als (inByte == 'f') {}
digitalWrite (LED_PIN7, laag);        Schakel LED
Serial.Print ('f', BYTE);                    Stuur een char
inByte = 0;
}

Als (inByte == 'G') {}
digitalWrite (LED_PIN8, hoge);        overschakelen op LED
Serial.Print ('G', BYTE);                    Stuur een char
inByte = 0;
}

Als (inByte == 'g') {}
digitalWrite (LED_PIN8, laag);        Schakel LED
Serial.Print ('g', BYTE);                   Stuur een char
inByte = 0;
}

Als (inByte == de ') {}

Serial.Print (de ', BYTE);                  Stuur een char
status_bluetooth = true;
SEC = 0;

}
} / / Als (seriële

/*
unsigned long currentMillis = millis();

Als (currentMillis - previousMillis > interval) {}
previousMillis = currentMillis;         de laatste tijd u de LED knipperde besparen

SEC ++;

if(status_unlock==True) {}

if(SEC== 11) {}

digitalWrite (LED_PIN1, hoge);        overschakelen op LED

delay(800);
digitalWrite (LED_PIN1, laag);        Schakel LED

status_unlock = false;
SEC = 0;
}
}
anders sec = 0;

}

*/

} //Loop

ongeldig establishContact() {}
terwijl (Serial.available() < = 0) {}
Serial.Print ('. ', BYTE);                   Stuur een hoofdletter A
delay(500);
}
}
----------------------------------------------------------

Gerelateerde Artikelen

Alarma/Despertador con Arduino

Alarma/Despertador con Arduino

Este es el primer proyecto que subo y escribo y me gustaría compartirlo pues me parece VN proyecto muy interesante y muy entretenido.La idee para este proyecto fue porque tenia nl casa un pequeño reloj despertador desde navidad que neen había used pu
Sistema GPS con Arduino + M2M Shield

Sistema GPS con Arduino + M2M Shield

Nl el siguiente tutorial realizaremos un sistema GPS con Arduino y un schild especial para ello Lama Arduino M2M Shield desarrollado por MCI elektronica, donde obtendremos el recorrido realizado junto con el valor de VN sensor, estos pueden ser ambie
Cargar firmware al ESP8266 con Arduino

Cargar firmware al ESP8266 con Arduino

Hoy les traigo algo que kroonkruid gente me een pedido demasiado y es poder cargar el firmware al modulo wifi ESP8266 desde VN Arduino, normalmente esto se hace por medio de VN-convertidor USB-serieel pero neen todos tienen acceso een uno de estos di
SIM900 GSM GPRS SHIELD CON ARDUINO UNO

SIM900 GSM GPRS SHIELD CON ARDUINO UNO

Esta es una woonplaatsverklaring GPRS ultra compacta de comunicación inalámbrica. La con woonplaatsverklaring es verenigbaar todos los modelos de Arduino con el formato UNO, además puedes controlarla con otros microcontroladores tambien. La woonplaat
Alcancia de Signo de Mario Bros con Arduino

Alcancia de Signo de Mario Bros con Arduino

1 x Arduino UNO1 x Bocina o zoemer1 x Resistencia de 1 k ohm3 x Resistencia 330 Ohm1 x Resistencia 5.7 k omhs1 x Placa fenólica 4 x LED 's1 x Tabla de acrílico 450 x 300 mm x 3 mm (blanco y amarillo)12 x Pijas kabel1 x LM3391 x QRD11141 x Potenciómet
Arduino IPhone staan

Arduino IPhone staan

Deze instructies zijn voornamelijk ontworpen voor middelbare scholieren om een gemakkelijk begrip en hand-on ervaring over het gebruik van de ontwikkelingsuitrusting van de Arduino te bouwen van een eenvoudige hardware-apparaat. Het zal laten begrijp
Aprendiendo een automatiseren con Arduino

Aprendiendo een automatiseren con Arduino

El concepto automatiseren se refiere al acto de hacer funcionar VN proceso nl específico con el apoyo de una computadora, sensoren y actuadores, el proceso automatiseren será tomar una foto cuando una persona pasa enfrente de la cámara.Este tutorial
WebCam Con Arduino YUN Y PIR MOTION

WebCam Con Arduino YUN Y PIR MOTION

Aunque exist diversas formas de verbinden una cámara al Arduino YUN y realizar VN proyecto parecido, una forma sencilla de hacerlo es con un teléfono celular que ya geen usemos, para bruikbaar como una WebCam.Sin embargo la complejidad estaría nl la
Braccio Robotico con Arduino

Braccio Robotico con Arduino

Questo è il mio primo progetto che pubblico, quindi siate clementi.Piccola premessa: Poiché il progetto è stato realizzato tempo fa, mi manca il materiale per una presentazione dettagliata del processo di realizzazione del braccio, quindi non ci sarà
Modulos RF433 Mhz con Arduino

Modulos RF433 Mhz con Arduino

Nl este breve tutorial vamos een aprender een usar los modules transmisores RF de 433Mhz, zoon ideales para principiantes por su bajo costo y facilidad de uso. Ademas de que pueden llegar een transmitir hasta una distancia máxima de 200mts!!! Para el
Visualiza sensoren con Arduino y GPRS (IoT)

Visualiza sensoren con Arduino y GPRS (IoT)

Si deseas reportar el valor de tus sensoren, esta es un alternativa sencilla, usando una de las tarjetas GPRS que se presentan een continuación y la plataforma web de MCI para levantar los datos es tu opción.Stap 1: PasosRegístraSends un correo een m
Como controlar VN-LED remotamente con Arduino y Ubidots

Como controlar VN-LED remotamente con Arduino y Ubidots

Luego de realizar kent tutorial podrás controlar el encendido o apagado de un actuador remotamente, desde la plataforma de Ubidots. Nl bibliotheekbestand caso usaremos un LED por facilidad, zonde emabrgo podrás extender bibliotheekbestand tutorial, n
Hackear juego Clicker Heroes con Arduino

Hackear juego Clicker Heroes con Arduino

Hace poco descubrimos nl stoom un juego llamado "Clicker Heroes" nl el que por medio de obtienes monedas nl el juego para mejorar habilidades de monstruos klikt.Gabo un amigo del hackerspace realizo un pequeño houwer con el Arduino Micro (o Leon
Arduino iPhone RGB-Led Strip & Cromalight

Arduino iPhone RGB-Led Strip & Cromalight

Over Cromalight AppCromalight is een iPhone App, gecombineerd met goedkope en gebruiksvriendelijke installatie hardware "Arduino schild", Hiermee kunt u overschakelen van maximaal 6 lichten of huistoestellen kan overnemen, maar heeft ook een amb