Come inviare messaggi a Twitter tramite Arduino

Sono sempre più numerose le operazioni che possiamo far svolgere ad Arduino. Vediamo allora come fare per inviare messaggi su Twitter tramite Arduino in modo completamente automatico.

L'automazione è una gran bella cosa e poter eseguire in automatico, magari anche in nostra assenza, operazioni altrimenti monotone e tediose è un grosso vantaggio. Se poi possiamo realizzare il tutto a basso costo e divertendoci allora stiamo parlando di Arduino.

Ci servono:

- Arduino

- la libreria Twitter4J (necessaria per inviare in automatico messaggi su Twitter)

- ed un sensore per rilevare lo stato del fenomeno di nostro interesse, a voi la scelta. Di seguito usare un sensore magnetico, ma il tipo di sensore non cambia di molto la sostanza.

L'idea oggetto di questo articolo la di deve a pdxnat e tutti i dettagli sono disponibili al link indicato.

Ci proponiamo di realizzare un sistema per l'invio di messaggi su Twitter tramite Arduino in base ad input percepiti tramite sensore elettronico. Usiamo un sensore magnetico che funge sostanzialmente da interruttore che opportunamente posizionato su una porta consente di capire se la porta è aperta o chiusa. Si tratta ovviamente di un esempio di possibile applicazione, il vero obbiettivo non è far sapere al mondo quando la porta è aperta o chiusa ovviamente, bensì gestire il tutto tramite Arduino.

Lo schema a blocchi del sistema che vogliamo realizzare è mostrato nella figura sottostante.

Concept

Arduino accede alla rete tramite un computer anche se sarebbe stato possibile collegarsi direttamente a Twitter tramite Arduino usando la libreria Tweet Library Arduino (da cui è tratta l'immagine principale dell'articolo), ma è solo una variante sul tema.

L'idea di base è molto semplice. Colleghiamo il sensore ad un pin della scheda ed Arduino monitorerà lo stato di tale pin per capire in se la porta viene aperta o chiusa.

La parte principale del codice dovuta a pdxnat  è ripostata di seguito:

const int magReed_pin = 10; // pin number
int magReed_val = 0;
int currentDoorState = 1; // begin w/ circuit open
int previousDoorState = 1;

void setup(){

 Serial.begin(9600);
 pinMode(magReed_pin, INPUT);

}

void loop(){
 watchTheDoor();
}

void watchTheDoor(){

 magReed_val = digitalRead(magReed_pin);
 if (magReed_val == LOW){ // open
  currentDoorState = 1;
 }
 

 if (magReed_val == HIGH){ // closed
  currentDoorState = 2;
 }

compareStates(currentDoorState);

}

void compareStates(int i){

 if (previousDoorState != i){
  previousDoorState = i;
  Serial.write(i);
  delay(1000); //
 }

}

 

Anche i meno esperti di programmazione possono vedere come il codice necessario sia di facile comprensione.

Scaricare ed installare la libreria Twitter4J (come già detto prima, si potrebbe fare tutto direttamente con Arduino usando la libreria Tweet Library (da cui è tratta l'immagine principale dell'arti) ma servirebbe anche il modulo di Arduino per il collegamento alla rete, quindi supponiamo di usare il computer). Eseguendo il relativo programma il codice di per Arduino riportato sopra sarà modificato di modo da includere le dovute linbrerie.

A questo punto non resta che registrarsi su Twitter e registrare anche un account per l'applicazione che abbiamo creato.

Lo schema del circuito, molto semplice ed intuito è mostrato sotto.

Circuit Board

Sopra vediamo le due componenti del sensore magnetico tipicamente usate per monitorare l'apertura di una porta.

 

Soluzione molto interessante che si presta ad innumerevoli applicazioni. Per esempio una stazione metereologica su Twitter potrebbe essere fatta in questo modo, con le dovute modifiche al codice è l'aggiunta dei sensori necessari, ma questo è solo uno dei tanti esempi che potrebbero venire in mente.

Arduino è disponibile da Farnell

Scarica subito una copia gratis

13 Commenti

  1. Avatar photo divivoma 27 Settembre 2011
  2. Avatar photo alexm90 27 Settembre 2011
  3. Avatar photo telegiangi61 27 Settembre 2011
  4. Avatar photo stefano88 27 Settembre 2011
  5. Avatar photo telegiangi61 27 Settembre 2011
  6. Avatar photo Emanuele 27 Settembre 2011
  7. Avatar photo telegiangi61 27 Settembre 2011
  8. Avatar photo telegiangi61 27 Settembre 2011
  9. Avatar photo Fabrizio87 27 Settembre 2011
  10. Avatar photo Fabrizio87 27 Settembre 2011
  11. Avatar photo divivoma 27 Settembre 2011
  12. Avatar photo Berni 29 Settembre 2011
  13. Avatar photo Francesco12-92 30 Settembre 2011

Rispondi a telegiangi61 Annulla risposta

Seguici anche sul tuo Social Network preferito!

Send this to a friend