{"id":465,"date":"2011-03-01T17:28:52","date_gmt":"2011-03-01T16:28:52","guid":{"rendered":"https:\/\/www.giannifavilli.it\/blog\/?p=465"},"modified":"2023-04-19T17:06:31","modified_gmt":"2023-04-19T15:06:31","slug":"arduino-controllo-remoto-http","status":"publish","type":"post","link":"https:\/\/www.giannifavilli.it\/blog\/arduino-controllo-remoto-http\/","title":{"rendered":"Arduino con controllo remoto via HTTP"},"content":{"rendered":"<p>Nei giorni precedenti avevo promesso di postare un codice che permettesse di controllare via web, tramite protocollo http, il nostro Arduino.<\/p>\n<p>Seguendo il suggerimento di un codice facilmente reperibile in rete, ho apportato alcune modifiche ed ho implementato la visualizzazione dei valori di temperatura e luminosit\u00e0 di un ambiente.<\/p>\n<p>Le applicazioni che possono essere create utilizzando questo codice sono una moltitudine, potreste collegare un termostato della caldaia, controllare\u00a0se alcuni interruttori magneti collegati alle porte e finestre di casa vostra sono stati aperti o chiusi, controllare la temperatura del vostro appartamento, aprire il portone di casa, inviare un allarme acustico, ecc. ecc.<\/p>\n<p>Se avete pi\u00f9 idee e fantasia di me non esitate a comunicarmele!!!<\/p>\n<p><!--more--><\/p>\n<div class=\"clear-block\"><div class=\"ad alignnone\">\n\t\t\t\t<script async src=\"\/\/pagead2.googlesyndication.com\/pagead\/js\/adsbygoogle.js\"><\/script>\n\t\t\t\t<!-- GianniFavilli - Responsive -->\n\t\t\t\t<ins class=\"adsbygoogle\"\n\t\t\t\t     style=\"display:block\"\n\t\t\t\t     data-ad-client=\"ca-pub-1205156047762515\"\n\t\t\t\t     data-ad-slot=\"6873384605\"\n\t\t\t\t     data-ad-format=\"auto\"><\/ins>\n\t\t\t\t<script>\n\t\t\t\t(adsbygoogle = window.adsbygoogle || []).push({});\n\t\t\t\t<\/script>\n\t\t\t\t<\/div><\/div>\n<p>Cosa ci serve?<\/p>\n<ul>\n<li>Arduino UNO o qualunque Board Arduino<\/li>\n<li>Ethernet Shield<\/li>\n<li>Stadio pilota con rel\u00e8<\/li>\n<li>Breadboard<\/li>\n<li>Fotoresistenza<\/li>\n<li>Sensore di temperatura (MCP9700A)<\/li>\n<li>Alcune resistenze<\/li>\n<li>LED<\/li>\n<li>Adattatore USB da 220V AC a 5V DC o Alimentatore DC (5V &#8211; 15V) jack maschio 2,1mm<\/li>\n<li>Cavo USB (nel caso si utilizzi un alimentatore il cavo USB \u00e8 superfluo)<\/li>\n<li>Multipresa elettrica (da donare alla causa)<\/li>\n<li>Cavetteria varia<\/li>\n<li>Cavo di Rete RJ-45 (no cross se si utilizza un router o un hub)<\/li>\n<li>Smartphone (GPRS &#8211; UMTS)\u00a0o un dispositivo che permetta la navigazione WEB<\/li>\n<li>Router con Connessione Internet<\/li>\n<\/ul>\n<p>Qui sotto riporto un semplice schema dei collegamenti che ho fatto utilizzando il programma opensource <a href=\"http:\/\/fritzing.org\/\" target=\"_blank\" rel=\"noopener\">Fritzing<\/a> che consiglio vivamente.<\/p>\n<p style=\"text-align: center;\"><a href=\"https:\/\/www.giannifavilli.it\/blog\/wp-content\/uploads\/2011\/03\/Circuito_termo_lux_stadiopilota_bb.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-467\" style=\"border: 1px solid #cccccc;\" title=\"Circuito_termo_lux_stadiopilota_bb\" src=\"https:\/\/www.giannifavilli.it\/blog\/wp-content\/uploads\/2011\/03\/Circuito_termo_lux_stadiopilota_bb.jpg\" alt=\"\" width=\"594\" height=\"379\" srcset=\"https:\/\/www.giannifavilli.it\/blog\/wp-content\/uploads\/2011\/03\/Circuito_termo_lux_stadiopilota_bb.jpg 733w, https:\/\/www.giannifavilli.it\/blog\/wp-content\/uploads\/2011\/03\/Circuito_termo_lux_stadiopilota_bb-300x191.jpg 300w, https:\/\/www.giannifavilli.it\/blog\/wp-content\/uploads\/2011\/03\/Circuito_termo_lux_stadiopilota_bb-150x95.jpg 150w\" sizes=\"auto, (max-width: 594px) 100vw, 594px\" \/><\/a><\/p>\n<p>Lo stadio pilota con rel\u00e8 ci serve in quanto Arduino non pu\u00f2 erogare pi\u00f9 di 40mA pertanto con un\u00a0piccolo transistor, un diodo ed un paio di resistenze \u00e8 \u00a0possibile controllare un rel\u00e8 alimentao a 5V DC. In questa maniera \u00e8 possibile anche applicare a valle dello stadio pilota anche carichi alimentati a 220V in corrente alternata, nel mio caso ho collegato una multipresa elettrica con una lampadina da 220V 23W come carico.<\/p>\n<p>Il codice che ho scritto su Arduino crea un mini Server WEB dove \u00e8 possibile connettersi tramite un client collegato ad internet (nel mio caso un Nokia 5800) e controllare lo stato del sensore di temperatura e della fotoresistenza. In pi\u00f9 passando un determinato parametro \u00e8 possibile attivare via protocollo HTTP una o pi\u00f9 uscite.<\/p>\n<p><a href=\"https:\/\/www.giannifavilli.it\/blog\/wp-content\/uploads\/2011\/03\/Snapshot-ArduinoWEB01.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft size-medium wp-image-475\" style=\"margin: 5px; border: 1px solid #ccc;\" title=\"Snapshot-ArduinoWEB01 PIN 9 DISATTIVATO\" src=\"https:\/\/www.giannifavilli.it\/blog\/wp-content\/uploads\/2011\/03\/Snapshot-ArduinoWEB01-168x300.jpg\" alt=\"\" width=\"168\" height=\"300\" srcset=\"https:\/\/www.giannifavilli.it\/blog\/wp-content\/uploads\/2011\/03\/Snapshot-ArduinoWEB01-168x300.jpg 168w, https:\/\/www.giannifavilli.it\/blog\/wp-content\/uploads\/2011\/03\/Snapshot-ArduinoWEB01-84x150.jpg 84w, https:\/\/www.giannifavilli.it\/blog\/wp-content\/uploads\/2011\/03\/Snapshot-ArduinoWEB01.jpg 360w\" sizes=\"auto, (max-width: 168px) 100vw, 168px\" \/><\/a><a href=\"https:\/\/www.giannifavilli.it\/blog\/wp-content\/uploads\/2011\/03\/Snapshot-ArduinoWEB02.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft size-medium wp-image-476\" style=\"margin: 5px; border: 1px solid #ccc;\" title=\"Snapshot-ArduinoWEB02 PIN 9 ATTIVATO\" src=\"https:\/\/www.giannifavilli.it\/blog\/wp-content\/uploads\/2011\/03\/Snapshot-ArduinoWEB02-168x300.jpg\" alt=\"\" width=\"168\" height=\"300\" srcset=\"https:\/\/www.giannifavilli.it\/blog\/wp-content\/uploads\/2011\/03\/Snapshot-ArduinoWEB02-168x300.jpg 168w, https:\/\/www.giannifavilli.it\/blog\/wp-content\/uploads\/2011\/03\/Snapshot-ArduinoWEB02-84x150.jpg 84w, https:\/\/www.giannifavilli.it\/blog\/wp-content\/uploads\/2011\/03\/Snapshot-ArduinoWEB02.jpg 360w\" sizes=\"auto, (max-width: 168px) 100vw, 168px\" \/><\/a>Qui a fianco sono riportati gli screenshots di quello che veniva visualizzato dal browser del mio Nokia 5800.<\/p>\n<p>In alto i valori del sensore di temperatura e della fotoresistenza, in basso lo stato dell&#8217;uscita, nel mio caso il pin 9, e i link ACCENTI &#8211; SPEGNI che passano i paramenti ad Arduino per attivare o disattivare l&#8217;uscita da controllare via web.<\/p>\n<p>Nella prima immagine il PIN 9 \u00e8 disattivato, mentre nella seconda immagine il <em>pulsante<\/em> ACCENDI \u00e8 stato cliccato, si capisce dal colore viola che ha assunto il link e il PIN 9 si \u00e8 attivato.<\/p>\n<p>Nell&#8217;esempio che ho riportato ho attivato l&#8217;uscita 9 alla quale era collegato lo stadio pilota con rel\u00e8 che tramite un parametro passato via HTTP accendeva o spengeva una lampada.<\/p>\n<p>Sull&#8217;ingresso analogico 0, ho collegato la fotoresistenza che oltre a comunicarmi il suo stato via web accende e spegne un led quando si verifica una determinata condizione.<\/p>\n<p>Stessa cosa per il sensore di temperatura collegato nel mio esempio all&#8217;ingresso analogico 1. Anch&#8217;esso oltre a comunicarmi la temperatura via web fa accendere o spegnere un led al verificarsi di una determinata condizione.<\/p>\n<p>Per esempio se al posto del led avessimo collegato lo stadio pilota con rel\u00e8 al termostato della caldaia questa si sarebbe accesa quando la temperatura misurata fosse stata inferiore alla temperatura di controllo impostata nel codice e solo se l&#8217;uscita fosse stata attivata. Oppure se al posto del led della fotoresistenza avessimo collegato una sirena questa avrebbe iniziato a suonare nel momento in cui la luminosit\u00e0 dell&#8217;ambiente fosse cambiata.<\/p>\n<p>Qui sotto ho caricato il video dimostrativo del funzionamento. Non \u00e8 il massimo della legge 626 ma \u00e8 per dimostrare ai pi\u00f9 scettici, come tramite un telefonino che supporti la navigazione web, sia possibile attivare o disattivare un attuatore, nel mio caso un rel\u00e8 che alimenta una lampada a 220V AC.<\/p>\n<div class=\"alert alert-error fade in\" style=\"text-align: center;\">\n<h4>!!! ATTENZIONE !!!<\/h4>\n<p>Se siete minorenni o non avete conoscenze riguardo l&#8217;elettricit\u00e0 a medio-alto voltaggio e avete intenzione di applicare un carico alimentato a 220V in AC sullo stadio pilota, fatevi seguire da un professionista o da una persona qualificata in materia.<br \/>\nA valle dello stadio pilota, sul rel\u00e8, \u00e8 applicata una differenza di potenziale di 220 Volt in Corrente Alternata, potreste farvi molto male, quindi cercate di prendere le massime precauzioni quando fate i test!!!<br \/>\n<strong>PER LA TUA SALUTE SE NON SAI QUELLO CHE STAI FACENDO E&#8217; MEGLIO CHE LASCI PERDERE!!!<\/strong><\/p>\n<\/div>\n<p>Qui sotto \u00e8 riportato il codice e come ogni buon <strong><em>tinkerer<\/em><\/strong> che si rispetti ho cercato di commentarlo il pi\u00f9 possibile per chiarire la lettura e le definizioni del codice.<br \/>\n\t<!-- \/\/NOTE inibito\n\t<div class=\"paga_box_sandbox\"><h4>In questo momento non fare donazioni, sto testando il sistema. Grazie!<\/h4>\t<p>Dona 1.99 Euro per scaricare il progetto completo<\/p>\n\t<p class=\"mini\">A donazione effettuata una email con le informazioni e il link per scaricare il progetto ti sar\u00e0 inviata all'indirizzo di posta che hai utilizzato su PayPal per fare la donazione<\/p>\n\t<form method=\"post\" name=\"paypal_form_donap_3101\" action=\"https:\/\/www.sandbox.paypal.com\/cgi-bin\/webscr\">\n\t\t<input type=\"hidden\" name=\"business\" value=\"info@giannifavilli.it\" \/>\n\t\t<input type=\"hidden\" name=\"cmd\" value=\"_donations\" \/>\n\t\t<input type=\"hidden\" name=\"return\" value=\"http:\/\/www.giannifavilli.it\/blog\/ppget\/?mailpp=1\" \/>\n\t\t<input type=\"hidden\" name=\"cancel_return\" value=\"http:\/\/www.giannifavilli.it\/blog\/wp-json\/wp\/v2\/posts\/465\" \/>\n\t\t<input type=\"hidden\" name=\"notify_url\" value=\"http:\/\/www.giannifavilli.it\/listen\/donazione_pp_ipn.php\" \/>\n\t\t<input type=\"hidden\" name=\"rm\" value=\"2\" \/>\n\t\t<input type=\"hidden\" name=\"currency_code\" value=\"EUR\" \/>\n\t\t<input type=\"hidden\" name=\"lc\" value=\"IT\" \/>\n\t\t<input type=\"hidden\" name=\"cbt\" value=\"Grazie! Permi qui per torna sul blog e scarica il progetto\" \/>\n\t\t<input type=\"hidden\" name=\"item_name\" value=\"(ArduinoHTTP) Progetto per Donazione al fine di mantenere il blog\" \/>\n\t\t<input type=\"hidden\" name=\"amount\" id=\"amount\" value=\"1.99\">\n\t\t<input type=\"hidden\" name=\"custom\" value=\"ArduinoHTTP\" \/>\n\t\t<input type=\"hidden\" name=\"no_note\" value=\"1\" \/>\n\t\t<input class=\"pulsantepp\" type=\"image\" src=\"https:\/\/www.paypalobjects.com\/it_IT\/IT\/i\/btn\/btn_donateCC_LG.gif\" border=\"0\" name=\"submit\" alt=\"PayPal - Il metodo rapido, sicuro e affidabile per fare donazioni.\" \/>\n\t<\/form>\n\t<\/div>\n\t-->\n\t<\/p>\n<h4><em>Compilare con IDE Arduino 1.0 o successive!<\/em><\/h4>\n<div class=\"clear-block\"><div class=\"ad alignnone\">\n\t\t\t\t<script async src=\"\/\/pagead2.googlesyndication.com\/pagead\/js\/adsbygoogle.js\"><\/script>\n\t\t\t\t<!-- GianniFavilli - Responsive -->\n\t\t\t\t<ins class=\"adsbygoogle\"\n\t\t\t\t     style=\"display:block\"\n\t\t\t\t     data-ad-client=\"ca-pub-1205156047762515\"\n\t\t\t\t     data-ad-slot=\"6873384605\"\n\t\t\t\t     data-ad-format=\"auto\"><\/ins>\n\t\t\t\t<script>\n\t\t\t\t(adsbygoogle = window.adsbygoogle || []).push({});\n\t\t\t\t<\/script>\n\t\t\t\t<\/div><\/div>\n<pre class=\"lang:arduino decode:true \">\/* *** *** ***\nPolicy di Utilizzo\nSolo per uso privato. Ogni uso commerciale dei codici forniti dal sottoscritto sar\u00e0 ritenuto\nfurto di propriet\u00e0 intellettuale, perseguibile a norma di legge. \nProgetto realizzato da Gianni Favilli www.giannifavilli.it\nIl codice sorgente (sketch) di Arduino sono di propriet\u00e0 intellettuale del sottoscritto. \nOgni tipo di riproduzione o divulgazione \u00e8 vietata. \nIl committente si impegna a non divulgare a terzi i dati e le sorgenti realizzati\nper il suddetto progetto in quanto propriet\u00e0 intellettuale di Gianni Favilli\nanche in seguito di fine collaborazione tra le parti.\nGianni Favilli\n*** *** *** *\/\n\n\/* *** NB NELLO SKETCH SONO STATI INSERITI DELIBERATAMENTE UN PAIO DI ERRORI.\nLA IDE IN FASE DI COMPILAZIONE VI AIUTERA' AD INDIVIDUARLI *** *\/\n\n#include &lt;String.h&gt;\n#include &lt;SPI.h&gt;\n#include &lt;Ethernet.h&gt;\n\n\/* ***\nCOMPILARE CON ARDUINO 1.0 o successive\ncontrollare un attuatore via web\ncon sensori di temperatura e luce\nARDUINO UNO\nETHERNET SHIELD\nby GianniFavilli.it - www.giannifavilli.it\n*** *\/\n\nbyte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED }; \/\/ mac address\nbyte ip[] = { 192, 168, ***, *** }; \/\/ ip arduino internet in\nbyte gateway[] = { 192, 168, ***, *** }; \/\/ internet access via router\nbyte subnet[] = { 255, 255, ***, *** }; \/\/subnet mask\nEthernetServer server(80); \/\/server port\n\nint outPin = 9; \/\/ pin attuatore\nString readString; \/\/string\nboolean LEDON = false; \/\/ flag status attuatore\n\n\/*termistore*\/\nfloat temp; \/\/ variabile da calcolare\nfloat volt; \/\/ variabile da calcolare sul sensore di temperatura\nfloat tempPin = 1;   \/\/ pin analogico IN temperature sensor\nint ledPintemp = 13; \/\/ pin led termistore\nfloat tempreg = 25.0; \/\/ temperatura di controllo in celsius\n\/*end termistore*\/\n\n\/*fotoresistore*\/\nint light; \/\/ variabile da calcolare\nint ledPinlux = .12; \/\/ pin led fotoresistenza\nint photoresistor = 0; \/\/ pin analogico IN fotoresistore\n\/*end fotoresistore*\/\n\nvoid setup(){\nEthernet.begin(mac, ip, gateway, subnet);\npinMode(outPin, OUTPUT);\npinMode(ledPinlux, OUTPUT);\nSerial.begin(9600);\n}\n\nvoid loop(){\n\n  \/*inizio calcolo temperatura*\/\n  temp = ((5 * analogRead(tempPin) * 100.0 ) \/ 1024) - 50; \/\/ Codice ottimizzato\n\n  \/*\n  (grazie giulio400 e jumpjack)\n  volt = ( analogRead(tempPin) * 5) \/ 1024; \/\/ calcolo il valore letto e lo trasformo in valore di tensione\n  temp = (volt - 0.5) * 100; \/\/ conversione MCP9700A\n  *\/\n  \/*fine calcolo temperatura*\/\n\n  \/*inizio luce*\/\n  light = analogRead(photoresistor);\n  light = constrain(light, 0, 1023); \/\/ limiti dei valori tra 0 e 100\n  light = map(light, 0, 150, 255, 0);\n  \/*fine luce*\/\n\n\/*inizio client*\/\nEthernetClient client = server.available(.);\nif (client) {\n  boolean currentLineIsBlank = true;\n  while (client.connected()) {\n    if (client.available()) {\n      char c = client.read();\n        readString.concat(c); \/\/memorizzo ogni carattere della stringa\n      \/\/if HTTP request has ended\n      if (c == '\\n' &amp;&amp; currentLineIsBlank) {\n         Serial.print(readString);\n        if(readString.indexOf(\"L=1\") &gt; 0) {\/\/ lettura del valore se il LED si deve accendere\n          \/\/ il led sar\u00e0 acceso\n          digitalWrite(outPin, HIGH); \/\/ accendo il led\n          LEDON = true;\n          Serial.print(\"ON pin \");\n          Serial.println(outPin);\n          }\n          else\n          {\n          \/\/il led sar\u00e0 spento\n          digitalWrite(outPin, LOW); \/\/sengo il led\n          LEDON = false;\n          Serial.print(\"OFF pin \");\n          Serial.println(outPin);\n        }\n\n        \/\/ COSTRUZIONE PAGINA HTML\n        client.println(\"HTTP\/1.1 200 OK.....\");\n        client.println(\"Content-Type: text\/html\");\n        client.println();\n        \/\/ inizializzo pagina (da togliere se uso ajax)\n        client.print(\"&lt;html&gt;&lt;head&gt;&lt;title&gt;ARDUINO Controllo Led via WEB&lt;\/title&gt;&lt;meta http-equiv='Content-Type' content='text\/html; charset=iso-8859-1' &gt;&lt;\/head&gt;&lt;body&gt;\");\n        \/\/inizai il body\n        client.println(\"&lt;div style='width:360px; height:640px;'&gt;\"); \/\/risoluzione per nokia 5800 640x360\n        client.println(\"&lt;h1&gt;STATUS SENSORI&lt;\/h1&gt;&lt;hr \/&gt;\");\n        \/\/Scrive sul browser il valore del termistore\n        client.println(\"&lt;p&gt;TEMPERATURA = \");\n        client.print(temp);\n        client.println(\" C &lt;br \/&gt;&lt;\/p&gt;\");\n      if (temp &lt; tempreg) {\n        \/\/ scrive sul web freddo se il valore del termistore \u00e8 basso\n        client.print(\"&lt;p&gt;&lt;strong&gt;FREDDO&lt;\/strong&gt;&lt;\/p&gt;\");\n        }\n      else {\n        \/\/ scrive sul web caldo se il valore del termistore \u00e8 alto\n        client.print(\" &lt;p&gt;&lt;strong&gt;CALDO&lt;\/strong&gt;&lt;\/p&gt;\");\n    }  \n\n\t\t\/\/Scrive sul browser il valore della fotoresistenza\n            client.println(\"&lt;p&gt;LUCE = \");\n            client.print(analogRead(light));\n            client.println(\"&lt;br \/&gt;&lt;\/p&gt;\");\n      if (light &lt; 150) {\n          \/\/ scrive sul web luce se il valore della fotoresistenza \u00e8 alto\n          client.print(\"&lt;p&gt;&lt;strong&gt;LUCE&lt;\/strong&gt;&lt;\/p&gt;\");\n        }\n      else {\n          \/\/ scrive sul web buio se il valore della fotoresistenza \u00e8 basso\n          client.print(\" &lt;p&gt;&lt;strong&gt;BUIO&lt;\/strong&gt;&lt;\/p&gt;\");\n        }\n        \/\/ link per aggiornare pagina e valori\n        client.print(\"&lt;h2&gt;AGGIORNA SENSORI: &lt;a href=''&gt;CHECK&lt;\/a&gt;&lt;\/h2&gt;&lt;hr \/&gt;\");\n\n        client.println(\"&lt;h1&gt;CONTROLLO ATTUATORI via internet&lt;\/h1&gt;\");\n        client.println(\"&lt;hr \/&gt;\");\n        client.print(\"&lt;h1&gt;PIN control n. \");\n        client.print(outPin);\n        client.println(\"&lt;\/h1&gt;\");\n        client.println(\"&lt;br \/&gt;\");\n        \/\/scrivo il LED status\n        client.print(\"&lt;font size='5'&gt;PIN status: \");\n          if (LEDON) {\n              client.println(\"&lt;span style='color:green; font-weight:bold;'&gt;ON&lt;\/span&gt;&lt;\/font&gt;\");\n            }\n            else.\n            {\n              client.println(\"&lt;span style='color:grey; font-weight:bold;'&gt;OFF&lt;\/span&gt;&lt;\/font&gt;\");\n          }\n        client.print(\"&lt;h2&gt;&lt;a href='\/?L=1'&gt;ACCENDI&lt;\/a&gt; | &lt;a href='\/?L=0'&gt;SPEGNI&lt;\/a&gt;&lt;\/h2&gt;\");\n\n        \/\/ firma\n        client.println(\"&lt;hr \/&gt;\");\n        client.print(\"&lt;h4&gt;Visita &lt;a href='https:\/\/www.giannifavilli.it' target='_blank' \/&gt;www.giannifavilli.it&lt;\/a&gt;&lt;\/h4&gt;\");\n        client.println(\"&lt;hr \/&gt;\");\n\n        \/\/ chiudo il div\n        client.println(\"&lt;\/div&gt;\");\n        \/\/ chiudo pagina da togliere se uso ajax\n        client.println(\"&lt;\/body&gt;&lt;\/html&gt;\");\n\n        \/\/ pulisco la stringa per la successiva lettura\n        readString=\"\";\n        \/\/fermo il client\n        client.stop(.);\n\n        } \/\/if c == \/n\n    } \/\/ if client available\n  } \/\/ while client connesso\n} \/\/ FINE if client\n\n        if (temp &lt; tempreg) { \/\/ accende o spengo un led se la temperatura \u00e8 pi\u00f9 bassa di quella di controllo\n          digitalWrite(ledPintemp., HIGH); \/\/accendo\n          Serial.print(\"ON pin \"); \/\/scrivo in console\n          Serial.println(ledPintemp); \/\/scrivo in console\n        }\n        else {\n          digitalWrite(ledPintemp., LOW); \/\/spengo\n          Serial.print(\"OFF pin \"); \/\/scrivo in console\n          Serial.println(ledPintemp); \/\/scrivo in console\n        } \n\n        if (light &lt; 150) { \/\/ accende o spengo un led se la c'\u00e8 luce\n          digitalWrite(ledPinlux., HIGH); \/\/ accendo\n          Serial.print(\"ON pin \"); \/\/scrivo in console\n          Serial.println(ledPinlux.); \/\/scrivo in console\n        }\n        else {\n          digitalWrite(ledPinlux., LOW); \/\/spengo\n          Serial.print(\"OFF pin \"); \/\/scrivo in console\n          Serial.println(ledPinlux.); \/\/scrivo in console\n        } \n\n} \/\/ fine loop<\/pre>\n<p>\t<!-- \/\/NOTE inibito\n\t<div class=\"paga_box_sandbox\"><h4>In questo momento non fare donazioni, sto testando il sistema. Grazie!<\/h4>\t<p>Dona 1.99 Euro per scaricare il progetto completo<\/p>\n\t<p class=\"mini\">A donazione effettuata una email con le informazioni e il link per scaricare il progetto ti sar\u00e0 inviata all'indirizzo di posta che hai utilizzato su PayPal per fare la donazione<\/p>\n\t<form method=\"post\" name=\"paypal_form_donap_65\" action=\"https:\/\/www.sandbox.paypal.com\/cgi-bin\/webscr\">\n\t\t<input type=\"hidden\" name=\"business\" value=\"info@giannifavilli.it\" \/>\n\t\t<input type=\"hidden\" name=\"cmd\" value=\"_donations\" \/>\n\t\t<input type=\"hidden\" name=\"return\" value=\"http:\/\/www.giannifavilli.it\/blog\/ppget\/?mailpp=1\" \/>\n\t\t<input type=\"hidden\" name=\"cancel_return\" value=\"http:\/\/www.giannifavilli.it\/blog\/wp-json\/wp\/v2\/posts\/465\" \/>\n\t\t<input type=\"hidden\" name=\"notify_url\" value=\"http:\/\/www.giannifavilli.it\/listen\/donazione_pp_ipn.php\" \/>\n\t\t<input type=\"hidden\" name=\"rm\" value=\"2\" \/>\n\t\t<input type=\"hidden\" name=\"currency_code\" value=\"EUR\" \/>\n\t\t<input type=\"hidden\" name=\"lc\" value=\"IT\" \/>\n\t\t<input type=\"hidden\" name=\"cbt\" value=\"Grazie! Permi qui per torna sul blog e scarica il progetto\" \/>\n\t\t<input type=\"hidden\" name=\"item_name\" value=\"(ArduinoHTTP) Progetto per Donazione al fine di mantenere il blog\" \/>\n\t\t<input type=\"hidden\" name=\"amount\" id=\"amount\" value=\"1.99\">\n\t\t<input type=\"hidden\" name=\"custom\" value=\"ArduinoHTTP\" \/>\n\t\t<input type=\"hidden\" name=\"no_note\" value=\"1\" \/>\n\t\t<input class=\"pulsantepp\" type=\"image\" src=\"https:\/\/www.paypalobjects.com\/it_IT\/IT\/i\/btn\/btn_donateCC_LG.gif\" border=\"0\" name=\"submit\" alt=\"PayPal - Il metodo rapido, sicuro e affidabile per fare donazioni.\" \/>\n\t<\/form>\n\t<\/div>\n\t-->\n\t<br \/>\nPer maggiori informazioni sul sensore di temperatura e la fotoresistenza, potete far riferimento a <a href=\"https:\/\/www.giannifavilli.it\/blog\/il-mio-primo-arduino\/\">questo articolo<\/a>.<\/p>\n<p>Se volete un progetto pi\u00f9 elaborato che permette ad Arduino sia un controllo remoto in ingresso che l&#8217;invio di dati in uscita leggete anche questo articolo <em><strong><a href=\"https:\/\/www.giannifavilli.it\/blog\/arduino-webcontrol-gcal-sms\/\">Arduino: Controllo Remoto e Notifica via SMS senza GSM shield<\/a>.<\/strong><\/em><\/p>\n<p><strong>Non esitate a commentare in caso di perplessit\u00e0, informazioni, reclami o consigli!!!<\/strong><\/p>\n<p><strong>Sono tutti ben accetti!!!<\/strong><\/p>\n<div><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Nei giorni precedenti avevo promesso di postare un codice che permettesse di controllare via web, tramite protocollo http, il nostro Arduino. Seguendo il suggerimento di un codice facilmente reperibile in rete, ho apportato alcune modifiche ed ho implementato la visualizzazione dei valori di temperatura e luminosit\u00e0 di un ambiente. Le applicazioni che possono essere create utilizzando questo codice sono una moltitudine, potreste collegare un termostato della caldaia, controllare\u00a0se alcuni interruttori magneti collegati alle porte e finestre di casa vostra sono stati aperti o chiusi, controllare la temperatura del vostro appartamento, aprire il portone di casa, inviare un allarme acustico, ecc. ecc. Se avete pi\u00f9 idee e fantasia di me non esitate a comunicarmele!!!<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[16,20,3,17],"tags":[67,38,69,18,19,68,37],"class_list":["post-465","post","type-post","status-publish","format-standard","hentry","category-arduino","category-domotica","category-informatica","category-programmazione","tag-arduino","tag-controllo-remoto","tag-domotica","tag-hardware","tag-open-source","tag-programmazione","tag-xhtml"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p4SGGs-7v","_links":{"self":[{"href":"https:\/\/www.giannifavilli.it\/blog\/wp-json\/wp\/v2\/posts\/465","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.giannifavilli.it\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.giannifavilli.it\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.giannifavilli.it\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.giannifavilli.it\/blog\/wp-json\/wp\/v2\/comments?post=465"}],"version-history":[{"count":0,"href":"https:\/\/www.giannifavilli.it\/blog\/wp-json\/wp\/v2\/posts\/465\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.giannifavilli.it\/blog\/wp-json\/wp\/v2\/media?parent=465"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.giannifavilli.it\/blog\/wp-json\/wp\/v2\/categories?post=465"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.giannifavilli.it\/blog\/wp-json\/wp\/v2\/tags?post=465"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}