Butler Air (5 / 9 stap)

Stap 5: In de Arduino Yun codage


Maak een Ino bestand in de Arduino, kopieer de onderstaande codes en sla hen. Ik noemde het "Bridge.ino".

Voordat u de codes op Arduino Yun uploadt, ga naar het tabblad "Extra" en selecteer "Arduino Yun" onder "Board", selecteert u de poort met ttyl en usb daarin onder "Poort". Klik op de knop-> voor het uploaden van de volgende codes op onze Arduino Yun.

Hier zijn de codes.

/ * Deze code is een wijziging op basis van Arduino Yún Bridge voorbeeld

In het volgende voorbeeld voor de Arduino Yún laat zien hoe met de Bridge-bibliotheek voor toegang tot de digitale en analoge pinnen op het bord door middel van oproepen van de REST. Het laat zien hoe u uw eigen API kunt maken bij het gebruik van de REST stijl oproepen via de browser.

Mogelijk opdrachten gemaakt in dit shetch:

* "/ arduino/digitale/13" -> digitalRead(13) * "/ arduino/digitale/13/1" -> digitalWrite (13, hoge) * "/ arduino/analoge/2/123" -> analogWrite (2, 123) * "/ arduino/analoge/2" -> analogRead(2) * "/ arduino/mode/13/input" -> pinMode (13, INPUT) * "/ arduino/mode/13/uitgang" -> pinMode (13, OUTPUT)

Deze voorbeeldcode maakt deel uit van het publieke domein

http://Arduino.CC/en/tutorial/Bridge

*/

#include #include #include

Luister naar de standaardpoort 5555, de Yún-webserver / / zal vooruit er alle HTTP verzoeken u verzenden YunServer server;

void setup {/ / Bridge opstarten pinMode (13, OUTPUT); digitalWrite (13, laag); Bridge.begin();

Luisteren naar binnenkomende verbinding alleen vanaf de localhost / / (niemand van het externe netwerk kunnen aansluiten) server.listenOnLocalhost(); server.begin(); Serial.begin(9600);

}

---brug---/ / Get clients komen vanaf server YunClient client = server.accept();

Er is een nieuwe klant? Als (client) {/ / proces aanvraag process(client);

Sluit verbinding en middelen vrij te maken. client.stop(); }

delay(50); Poll iedere 50 MS

}

//-------------------------bridge------------------

VOID proces (YunClient client) {/ / Lees de opdracht String command = client.readStringUntil('/');

is "digitale" commando? Als (opdracht == "digitale") {digitalCommand(client);}

is "analoge" commando? Als (opdracht == "analoge") {analogCommand(client);}

is de "mode"-opdracht? Als (opdracht == "modus") {modeCommand(client);}}

VOID digitalCommand(YunClient client) {int pin, waarde;

Lees pin nummer pin = client.parseInt();

Als het volgende teken een '/' het betekent dat we een URL hebt / / met een waarde zoals: "/ digitale/13/1" als (client.read() == '/') {waarde = client.parseInt(); digitalWrite (pin, waarde);} else {waarde = digitalRead(pin);}

Feedback verzenden naar client client.print (F ("Pin D")); client.Print(PIN); client.Print F ("ingesteld op"); client.println(Value);

Update datastore sleutel met de huidige pin waarde String sleutel = "D"; belangrijkste += pin; Bridge.put (key, String(value)); }

VOID analogCommand(YunClient client) {int pin, waarde;

Lees pin nummer pin = client.parseInt();

Als het volgende teken is een '/' het betekent dat we een URL hebt / / met een waarde zoals: "/ analoge/5/120" als (client.read() == '/') {/ / lezen van waarde en uitvoeren van de opdracht waarde = client.parseInt(); analogWrite (pin, waarde);

Feedback verzenden naar client client.print (F ("Pin D")); client.Print(PIN); client.Print (F ("ingesteld op analoog")); client.println(Value);

Update datastore sleutel met de huidige pin waarde String sleutel = "D"; belangrijkste += pin; Bridge.put (key, String(value)); } else {/ / Lees analoge pin waarde = analogRead(pin);

Feedback verzenden naar client client.print (F ("Pin A")); client.Print(PIN); client.Print (F ("leest analoog")); client.println(Value);

Update datastore sleutel met de huidige pin waarde String sleutel = "A"; belangrijkste += pin; Bridge.put (key, String(value)); } }

VOID modeCommand(YunClient client) {int pin;

Lees pin nummer pin = client.parseInt();

Als het volgende teken niet is een '/' we hebben een ongeldige URL als (client.read()! = '/') {client.println(F("error")); terugkeer;}

Tekenreeks modus = client.readStringUntil('\r');

Als (modus == "input") {pinMode (pin, ingang); / / Send feedback aan client client.print (F ("Pin D")), client.print(pin), client.print (F ("geconfigureerd als INPUT!")); terugkeer;}

Als (modus == "output") {pinMode (pin, uitvoer); / / Send feedback aan client client.print (F ("Pin D")), client.print(pin), client.print (F ("geconfigureerd als OUTPUT!")); terugkeer;}

client.Print (F ("fout: ongeldige modus")); client.Print(mode); }

Gerelateerde Artikelen

Sebastian Michaelis en Grell Sutcliff van zwarte Butler

Sebastian Michaelis en Grell Sutcliff van zwarte Butler

Ongeveer een jaar geleden smeekte mijn dochter me om haar naar Rose City Comicon hier in Portland. Ik had nooit een maar had altijd al wilde. We gingen en ze verkleed als RWBY (andere instructable daarover later). Ze vond een nieuw thuis in de cospla
Air-Lift irrigatie met behulp van Solar Panel

Air-Lift irrigatie met behulp van Solar Panel

Het beginsel van de air-lift-irrigatieHet zonnepaneel levert de macht om de luchtpomp. Vervolgens, injecteert de pomp perslucht op de kruising. De samengeperste lucht vermengt zich met het waardoor het lucht-water-mengsel worden minder dicht dan de r
Lederen & Sugru iPad Air staan

Lederen & Sugru iPad Air staan

in eerste instantie wilde ik proberen ontwerpen een draagbare staan voor mijn iPad, die geen ruimte meer dan de ipad zelf zou nemen, en dat zou het bezit van het apparaat op de juiste hoek voor het gebruik van op mijn desktop op het werk. Ik wil niet
Motion Sensing Air Raid Siren met koppelen een!

Motion Sensing Air Raid Siren met koppelen een!

HalloIedereen wil voorkomen dat er ongewenste gasten / dief's uit de buurt van ons huis.Dus, ik heb deze Home Security Project een AIR Raid Siren audiobestand af te spelen.(Ik weet luchtaanval sirenes werden gebruikt voor nucleaire aanvallen maar een
Cthulhu Air Plant Caddy

Cthulhu Air Plant Caddy

Air planten hebben zo veel persoonlijkheid en zijn ongelooflijk veelzijdig, dus ik wilde maken echt een leuke plant houder die die natuurlijke kwaliteiten omarmen zou. Dit project duurt minder dan een uur te doen, waardoor dit een grote DIY gift voor
Air-Lift irrigatie

Air-Lift irrigatie

Dit is een instructable voor het vervaardigen van een zonne-aangedreven air-lift irrigatie voor de verticale of opknoping van de tuin.Stap 1: Items2.40v zonnepaneelde elektrische kabel 2 meterBatterij aangedreven luchtpompAquarium luchtslangLucht ven
Bureaublad Air Hockey tafel

Bureaublad Air Hockey tafel

Hier is hoe te bouwen van een kleine air hockey tafel, zowel draagbare als goedkoop. Naast dit, kunt u het elke grootte, afhankelijk van het vak dat u gebruikt. Een plastic doos werd gebruikt voor eenvoud; het betekent dat u kunt experimenteren met d
Pepermunt Butler Candy tas

Pepermunt Butler Candy tas

ik vorig jaar een prinses Bubblegum halloween kostuum voor iemand gemaakt.  Ik dacht dat elke Prinses nodig een butler, dus ik een zak snoep maakte te gaan met haar.Ik ben met inbegrip van het patroon met dit instructable.  Onthoud echter dat alleen
Laser gesneden Air Force embleem

Laser gesneden Air Force embleem

als een veteraan van de Air Force, ik herinner me op zoek naar artikelen die van goede kwaliteit om display in mijn huis en kantoor waren en doe ik nog steeds. En nu dat ik heb de mogelijkheid om dergelijke objecten die ik wil delen in deze opdracht
Zelfgemaakte Air Freshener Gel

Zelfgemaakte Air Freshener Gel

ik wilde mijn ervaring delen met het maken van deze eenvoudige en nuttige Air Freshener Gels.  Een relatief goedkope Do-It-Yourself kamer luchtverfrisser, moet u wellicht alle ingrediënten al!Ik houd een in elk voertuig en op mijn bureau op het werk.
Batterij aangedreven Peltier Portable Air Conditioner

Batterij aangedreven Peltier Portable Air Conditioner

Gewoon een inleidingHallo daar, wanneer u lees dit instructable, u zoekt iets zelf om af te koelen recht?Zoals ik nieuw op instructable ben, 'm I gonna post wat ik deze jaren hebben uitgevonden. Hoop dat ze zijn niet uit gedateerd wanneer ik ze hier
Opknoping Air Plant mand uit gerecycleerd wijn kurken

Opknoping Air Plant mand uit gerecycleerd wijn kurken

een van mijn vrienden is geobsedeerd met lucht planten en bewoog naar een nieuwe plek, dus ik wilde een nette gift hem welkom in de nieuwe opgravingen. Hebben net pakte een enorme doos van wijnkurken overgebleven uit een huwelijk, stond ik te popelen
Air.id weer voorspeller

Air.id weer voorspeller

De Air.id is een herhaling van een project gedaan door 3de jaar industriële studenten Phil Adams, Tessa Goldie en Bree Sopatyk voor slimme objecten CORE studie Universiteit Emily Carr. De Air.id verbindt met het internet te vinden het weer netwerken
Houten Air Plant ketting

Houten Air Plant ketting

Hou je van een beetje van de natuur met u hebben al van de tijd? Zo ja, is dit de ketting voor u. Het is een speelse sieraden deel, deel plant holster en alle heerlijke. Het is vrij eenvoudig om met behulp van de hulpprogramma's die de meeste mensen