Openremote Arduino sensoren servo RGB led en switch (1 / 4 stap)

Stap 1: Bouwen de arduino Circuit


monteren van het circuit van de arduino per de afbeelding. Belasting de geleverde Sketch Vergeet niet om uw IP-adres ingesteld op een beschikbaar op uw netwerk. Zodra dit is gedaan kun je de setup zonder de openremote software met behulp van een web browser, Chrome of firefox beter werken als ze niet proberen om het bestand te downloaden. zomaar in http://192.168.2.157 of wat je ip is die u gebruikt en zou je iets als dit

{"A1": 373, "A0": 371, "S0": 91, "RED": 0, "GROEN": 255, "BLUE": 54, "D7": 0, "TEMP": 77.90,}

het is een JSON-bestand blijkt de waarde van 2 analoge ingangen, de servo positie, de woede van de kleur voor de 3 LED's van 0 - 255, de status van schakelaar 1 op pin 7 en de temp. Als u wilt wijzigen een van de waarden in de webbrowser Voer http://192.168.2.157/pinP3=200 zal dit de site om te veranderen

{"A1": 364, "A0": 363, "S0": 91, "RED": 200, "GROEN": 255, "BLUE": 54, "D7": 0, "TEMP": 77.90,}

en de rode led gaat naar bijna volledige helderheid. Schakelaar 1 op (digitale pin7) gebruiken

http://192.168.2.157/pinD7=1 voor op- of http://192.168.2.157/pinD7=0 voor korting

{"A1": 369, "A0": 368, "S0": 91, "RED": 200, "GROEN": 255, "BLUE": 54, "D7": 1, "TEMP": 77.90,}

merk de "D7" gewijzigd in een 1 en de LED op moet komen. Als u de naam wilt wijzigen van alle 3 kleuren op zodra u gebruik van dit http://192.168.2.157/pinC1, 255,255,255 maken kunt zal dit alle 3 kleuren R, G, B in die volgorde op 255 volledige helderheid ingesteld.

{"A1": 365, "A0": 364, "S0": 91, "RED": 255, "GROEN": 255, "BLUE": 255, "D7": 1, "TEMP": 77.90,}

Hier is een kopie van de arduino IDE sketch

/*

* Reageren op aanvragen in de URL voor het wijzigen van de poorten van de digitale en analoge uitgang
* Toon het aantal poorten gewijzigd en de waarde van de analoge input pinnen.
* bijvoorbeeld:
-de verzenden van http://192.168.1.157/?pinD2=1 digital pin 2 ingeschakeld
digitale pin 2-de verzenden van http://192.168.1.157/?pinD2=0 uitgeschakeld
-de verzenden van http://192.168.1.157/?pinP3=150 draait rode kleur tot 150
-de verzenden van http://192.168.1.157/?pinP5=100 draait groene kleur tot 100
* verzenden http://192.168.1.157/?pinC1, 255,255,255 draait alle kleuren tot wit op één regel
-de verzenden van http://192.168.1.157/?pinP6=200 draait blauwe kleur tot 200 max val van 0 tot 255
servo verhuist-de verzenden van http://192.168.1.157/?pinS1=90 naar 90 deg mark
-de verzenden van http://192.168.2.157 {"A1": 369, "A0": 368, "S0": 11, "RED": 0, "groen": 255, "BLUE": 54, "D7": 1, "TEMP": 78.35,}

*/
#include
#include
#include
#include //only voor ds18b20 temp
#include //only voor ds18b20 temp
#define ONE_WIRE_BUS 2
Privacy oneWire(ONE_WIRE_BUS);
DallasTemperature sensoren (& Privacy);
DeviceAddress Sensor1 = {0x28, 0xAC, 0xD2, 0x6E, 0x04, 0x00, 0x00, 0xF9}; verschillend voor elk apparaat! schets gebruiken om te zoeken
byte mac [] {} =
0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xF0};
IP-adres ip (192,168,2, 157);
IP-adres myDns(192,168,2,254);
IP-adres gateway (192, 168, 2, 254);
EthernetServer server(80);
int brightnessR = 0; moeten alleen voor rgb
int brightnessG = 0; moeten alleen voor rgb
int brightnessB = 0; moeten alleen voor rgb
int pos = 0; slechts voor servo nodig
int timer = 0;
Servo myservo; slechts voor servo nodig
VOID Setup
{
sensors.setResolution (Sensor1, 10); voor temp
sensors.setWaitForConversion(false); voor temp
sensors.requestTemperatures(); voor temp
myservo.attach(9); alleen behoefte aan servo welke pin servo is aangesloten
Serial.begin(9600);
Ethernet.begin (mac, ip);
server.begin();
Serial.println("Ready");
pinMode(3,OUTPUT);
pinMode(6,OUTPUT);
pinMode(5,OUTPUT);
pinMode(7,OUTPUT);
}
void loop
{
Deze timer zorgt ervoor dat de temp sensor te veel lopen en vertragen schets
timer (timer + 1) =;
Als (timer == 1000) {}
sensors.requestTemperatures(); voor temp
timer = 0;
}

EthernetClient client = server.available();
Als (client) {}
terwijl (client.connected()) {}
Als (client.available()) {}
items weergeven van het aantal pin wijzigen aanvragen
int digitalRequests = 0;
int analogRequests = 0;
Als (client.find ("GET /")) {/ / zoek naar 'GET'
penningen die beginnen met "pin" vinden en stoppen op de eerste lege regel
zoeken naar het einde van de lijn voor 'pin'
terwijl (client.findUntil ("pin", "\n\r")) {}
char type = client.read(); D of A

de volgende ascii integer-waarde in de gegevensstroom is de pin
int pin = client.parseInt();
int val = client.parseInt(); het gehele getal nadat dat is de waarde
int valg = client.parseInt();
int herddog77 = client.parseInt();

Als (type == had') {}
Serial.Print ("Digital pin");
pinMode (pin, uitvoer);
digitalWrite (pin, val);

}
Als (type == de ') {}
Serial.Print ("Servo input");
myservo.write(val);
POS = val;
delay(15);

}

Als (type == 'C') {}
Serial.Print("Color");

analogWrite (3, val);
analogWrite (5, valg);
analogWrite (6, herddog77);

brightnessR = val;

brightnessG = valg;

brightnessB = herddog77;

}
Als (type == 'P') {}
Serial.Print("pwn");

pinMode (pin, uitvoer);
analogWrite (pin, val);
Als (pin 3 ==) {}
brightnessR = val;
}
Als (pin == 5) {}
brightnessG = val;
}

Als (pin 6 ==) {}
brightnessB = val;
}

}
anders als (type 'A' ==) {}
Serial.Print ("analoge pin");
analogWrite (pin, val);
analogRequests ++;
}

Serial.Print(PIN);
Serial.Print("=");
Serial.Print(val);
Serial.Print(",");
Serial.Print(valg);
Serial.Print(",");
Serial.println(valb);
}
}
Serial.println();
///*
verzenden van een standaard http-antwoordheader
client.println ("HTTP/1.1 200 OK");
client.println ("Content-Type: application/json");
client.println();

output van de waarde van elke analoge invoer pin als een json-p-object

client.Print("{");

client.Print("\"a1");

client.Print ("\": ");
client.Print(analogRead(1));

client.Print(",");
//***********************************
client.Print("\"a0");

client.Print ("\": ");
client.Print(analogRead(0));

client.Print(",");
//***********************************
client.Print("\"S0");

client.Print ("\": ");
client.Print(POS);

client.Print(",");
//************************************
client.Print("\"Red");

client.Print ("\": ");
client.Print(brightnessR);

client.Print(",");
//***********************************
client.Print("\"Green");

client.Print ("\": ");
client.Print(brightnessG);

client.Print(",");

//***********************************
client.Print("\"Blue");

client.Print ("\": ");
client.Print(brightnessB);

client.Print(",");

client.Print("\"D7");

client.Print ("\": ");
int sw1 = digitalRead(7);
Als (sw1 == HIGH) {}
client.Print("1");
}
Als (sw1 == LOW) {}
client.Print("0");
}
client.Print(",");

//***********************************
client.Print("\"temp");

client.Print ("\": ");
zweven tempC1 = sensors.getTempC(Sensor1);
client.Print(DallasTemperature::toFahrenheit(tempC1));

client.Print(",");

client.println("}");

breken;
}
}
de web browser tijd geven om te ontvangen van de gegevens
delay(1);
client.stop();
}
}

Gerelateerde Artikelen

Arduino gecontroleerd positionele RGB LED kerstboom

Arduino gecontroleerd positionele RGB LED kerstboom

In dit Instructable we zijn een programmeerbare RGB LED kerstboom maken en bouwen van de (X, Y) posities van de lichten in de Arduino zodanig dat we kunnen creëren verschillende patronen zowel statische als animatie. Ik zou dit aanbevelen aan iederee
ARDUINO gecontroleerd 12v RGB LED-STRIP

ARDUINO gecontroleerd 12v RGB LED-STRIP

Ongeveer een jaar geleden ontdekte ik dat RGB LED strips op Amazon. Als net voor de start van het festivalseizoen muziek, ging ik natuurlijk meteen naar werk maken van gekke helder knipperende festival speelgoed. De niet-adresseerbare strips wordt me
Arduino/Android - BLUETOOTH RGB LED CONTROL ANDROID APP

Arduino/Android - BLUETOOTH RGB LED CONTROL ANDROID APP

Hello wereld! Vandaag maakte ik een app wilt besturen een RGB Led-module met een Android apparaat. Contacteer mij voor de Open source-code van de APP.Opmerking: Als u kocht een gemeenschappelijk Anode LED aansluiten naar 5vIk gebruikte een gemeenscha
Hoe u kunt besturen een RGB LED Strip - Arduino tutorial Arduino Tutorial

Hoe u kunt besturen een RGB LED Strip - Arduino tutorial Arduino Tutorial

In deze tutorial zullen we een strip gebruiken met 8 RGB-LEDs met de Arduino uno board. Wij zullen van de Adafruit NeoPixel library gebruiken om de kleur van elk geleid.Laten we beginnen!Stap 1: Wat moet jeVoor dit project zal u het volgende nodig:Ar
Rijden van RGB LED strips uit een Arduino

Rijden van RGB LED strips uit een Arduino

Kerstmis komt eraan en je kunt je afvragen hoe het kleurrijke en helder met een Arduino en een RGB LED strip te maken. Tenminste, was dat precies wat ik deed een jaar geleden en was niet kundig voor vondst geen duidelijke en eenvoudige instructies ov
RGB LED met Arduino

RGB LED met Arduino

Hallo kerels dit is mijn eerste instructable en ik zal u tonen hoe om te controleren van RGB (rood-groen en blauw) LED's. zijn niet zo moeilijk om te doen maar de materialen die u zult zijn;-Een Arduino Board-RGB LED-jumper draden-breadboard(optional
IPhone Controlled RGB LED (Arduino)

IPhone Controlled RGB LED (Arduino)

Dit project toont je hoe om te zetten van de Arduino met een RGB LED en controle met je iPhone via uw Wifi-netwerk. Bent u in staat te stellen van 15 verschillende kleuren + 2 programma's met de iPhone app.URL voor korte demo video:https://drive.Goog
Arduino RGB LED Lamp + 4 bit LCD Display

Arduino RGB LED Lamp + 4 bit LCD Display

dit is mijn eerste instructable!!! yay...Voordat ik verder ga. Ik niet ingaan op details van hoe het hout hakken, of alles samen stuk. Ik freestyled het gehele bouwproces, wat me opkwam is wat ik gereproduceerd. Het punt van dit instructable is te ku
Met behulp van een enkele RGB LED (of een LED-strip) om informatie te tonen: klok, thermometer en een rare communicator

Met behulp van een enkele RGB LED (of een LED-strip) om informatie te tonen: klok, thermometer en een rare communicator

Een van de eerste projecten die ik deed met een Arduino was een Christmas lights garland. In feite, was gemaakt van een eenvoudige RGB LED-strip snijd doormidden, zoals Arduino slechts 6 hardware PWM outputs heeft. Ik wilde niet het aan vertoning tri
RGB - Led Strip 12 V gecontroleerd door een ATtiny85 met een 125Khz RFID-Module

RGB - Led Strip 12 V gecontroleerd door een ATtiny85 met een 125Khz RFID-Module

Het basisidee gaf me deze kant van de RGB-RFID-Lamp. Maar daar heb ik veel ATtiny85 ik zal gebruik maken van deze micro-controller. Om het gemakkelijker voor mij, testte ik alle deel eerst op een Arduino Uno.Materiaal:1 x RGB – 12 V Led-strip1 x ATti
Hoge Power RGB LED Moodlamp die syncs met Philips Hue

Hoge Power RGB LED Moodlamp die syncs met Philips Hue

In dit instructable de belangrijkste focus ligt op de software die ik heb gemaakt - niet zozeer aan de kant van de hardware. U hoeft niet een hoge-power led hiervoor gebruiken, kunt u elke LED RGB - gewenste.De "High Power RGB LED Moodlamp" is e
ArduDroid: Een eenvoudige 2 Way Bluetooth-gebaseerde Android Controller voor Arduino RGB led strip

ArduDroid: Een eenvoudige 2 Way Bluetooth-gebaseerde Android Controller voor Arduino RGB led strip

INTRODUCTIEGET IT ON google PLAY "ardudroid" appARDUDROID (voorheen Andruino) is een eenvoudige Android app om u te helpen bepalen de pinnen van uw Arduino Uno (of klonen) van uw Android telefoon draadloos. Het is zowel een Android app en een Ar
Arduino thermostaat met 2 x DS18b20 i2c 4 x 16 Display, 2 RGB LED's en 3 Relais

Arduino thermostaat met 2 x DS18b20 i2c 4 x 16 Display, 2 RGB LED's en 3 Relais

het doel van het Project is een thermostaat voor mijn 2 Fish Tank met LCD Display RGB LED een Relay te controleren van de kachel in de Tankeen een Cooling Fan [PEVF voor de grote FishtankDelen:Arduino Nano of gelijke2 x RGB LED's of RGB SMD LED of Eé
Arduino-controlled RGB LED Infinity spiegel

Arduino-controlled RGB LED Infinity spiegel

Update 11/22/2013: dank aan iedereen die gestemd voor dit project in de Microcontroller-wedstrijd! Het was een van de drie winnaars van de eerste-prijs.9/17/2013 update: dank aan iedereen die gestemd voor dit project in de wedstrijd van de Arduino (i