Innholdsfortegnelse:

Twitter og Arduino Yún: 3 trinn
Twitter og Arduino Yún: 3 trinn

Video: Twitter og Arduino Yún: 3 trinn

Video: Twitter og Arduino Yún: 3 trinn
Video: Easy & Powerful Arduino Alternative? #3 Teensy Beginner's Guide 2024, November
Anonim
Twitter og Arduino Yún
Twitter og Arduino Yún

Etter å ha brukt nesten $ 100 på en Arduino Yún for å se hva oppstyret handlet om, virket det som en god idé å finne og demonstrere noen bruksområder for det. Så i denne artikkelen skal vi undersøke hvordan Yún kan sende en tweet ved hjelp av noen enkle eksempelskisser-og den første av flere Arduino Yún-spesifikke opplæringsprogrammer. Komme i gang Hvis du ikke allerede har gjort det, må du forsikre deg om at Arduino Yún kan koble til nettverket ditt via WiFi eller kabel - og få en Temboo -konto (vi går gjennom denne her). Og du trenger (i skrivende stund) IDE versjon 1.5.4 som kan lastes ned fra Arduino -nettstedet. Til slutt, hvis du ikke har en twitter -konto - kjøp en.

Trinn 1: Sende en tweet fra din Yún

Sender en tweet fra din Yún
Sender en tweet fra din Yún
Sender en tweet fra din Yún
Sender en tweet fra din Yún

Sender en tweet fra din YúnTakk til Arduino og Temboo, 99% av arbeidet er allerede gjort for deg. For å sende en tweet krever Arduino -skissen, en topptekstfil med Temboo -kontodetaljene dine, og også behovet for å registrere et program i twitter -utviklingskonsollen. Ikke få panikk, bare følg instruksjonene "Get Set Up" fra neste side. Når du gjør det - sørg for at du er logget inn på Temboo -nettstedet, da det vil fylle overskriftsfilen med Temboo -detaljene dine for deg. I løpet av twitter -applikasjonsstadiet, ikke glem å lagre OAuth -innstillingene dine som vil vises i kategorien "OAuth Tool" på twitter -utviklersiden, for eksempel på bildet ovenfor. Disse innstillingene blir deretter kopiert til hver skisse fra linjen: constStringTWITTER_ACCESS_TOKEN = Når du lagrer skissen, må du plassere toppteksten med navnet TembooAccount.h i samme mappe som skissen din. Du vet at dette har vært vellykket når du åpner skissen, ettersom du vil se toppteksten i en andre fane, for eksempel i det andre bildet i dette trinnet. Til slutt, hvis du deler kode med andre, fjerner du OAuth og TembooAccount. h detaljer ellers kan de sende tweets på dine vegne.

Trinn 2: Fungerte det?

Virket det?
Virket det?

OK - nok advarsler. Hvis du har opprettet Temboo -kontoen din, fikk Twitter -OAuth -detaljene dine, matet dem alle inn i skisse- og toppteksten, deretter lagret (!) Og lastet opp skissen din til Arduino Yún - en kort tweet vil vises på tidslinjen din, for eksempel på det første bildet ovenfor. Hvis ingenting vises på twitter -feedet, åpner du den serielle skjermen i IDE og ser hvilke meldinger som vises. Det vil gi deg feilmeldingen fra twitter, som vanligvis indikerer problemet.

Trinn 3: Sende dine egne data som en tweet

Sender dine egne data som en tweet
Sender dine egne data som en tweet

Fortsett, la oss undersøke hvordan du sender tweets med din egen informasjon. I den følgende eksempelskissen sender vi verdien som følger av analogRead (0) og tekst kombinert sammen på en linje. Ikke glem twittermeldinger (tweets) som har en maksimal lengde på 140 tegn. Vi har flyttet all tweetsending til en funksjonstweet (), som du deretter kan ringe fra skissen din når det er nødvendig-ved en hendelse og så videre. Teksten og dataene som skal sendes, kombineres til en streng på linje 26.----------------------------------- -------------------------------------------------- -------------------------------------------------- ---------- #include #include #include "TembooAccount.h" // inneholder Temboo-kontoinformasjon // som beskrevet i bunntekstkommentaren nedenforconst String TWITTER_ACCESS_TOKEN = "aaaa"; const String TWITTER_ACCESS_TOKEN_SECRET = "bbbb"; const String TWITTER_CONSUMER_KEY = "ccccc"; const String TWITTER_CONSUMER_SECRET = "dddd"; int analogZero; void setup () {Serial.begin (9600); forsinkelse (4000); mens (! Seriell); Bridge.begin ();} ugyldig tweet () {Serial.println ("Fungerer tweet () -funksjon"); // definere teksten til tweeten vi vil sende String tweetText ("Verdien på A0 er" + String (analogZero) + ". Hurra for twitter"); TembooChoreo StatusesUpdateChoreo; // påkall Temboo -klienten // MERK at klienten må påkalles på nytt og repopuleres med // passende argumenter, hver gang kjøringsmetoden () kalles. StatusesUpdateChoreo.begin (); // angi legitimasjon for Temboo -konto StatusesUpdateChoreo.setAccountName (TEMBOO_ACCOUNT); StatusesUpdateChoreo.setAppKeyName (TEMBOO_APP_KEY_NAME); StatusesUpdateChoreo.setAppKey (TEMBOO_APP_KEY); // identifiser Temboo Library -choreoen som skal kjøres (Twitter> Tweets> StatusesUpdate) StatusesUpdateChoreo.setChoreo ("/Library/Twitter/Tweets/StatusesUpdate"); // legg til Twitter -kontoinformasjonen StatusesUpdateChoreo.addInput ("AccessToken", TWITTER_ACCESS_TOKEN); StatusesUpdateChoreo.addInput ("AccessTokenSecret", TWITTER_ACCESS_TOKEN_SECRET); StatusesUpdateChoreo.addInput ("ConsumerKey", TWITTER_CONSUMER_KEY); StatusesUpdateChoreo.addInput ("ConsumerSecret", TWITTER_CONSUMER_SECRET); // og tweeten vi ønsker å sende StatusesUpdateChoreo.addInput ("StatusUpdate", tweetText); // fortell prosessen om å kjøre og vent på resultatene. // returkoden (returnCode) vil fortelle oss om Temboo -klienten // var i stand til å sende forespørselen vår til Temboo -serverne usignerte int returnCode = StatusesUpdateChoreo.run (); // en returkode på null (0) betyr at alt fungerte hvis (returnCode == 0) {Serial.println ("Suksess! Tweet sendt!"); } annet {// en ikke-null returkode betyr at det var en feil // lese og skrive ut feilmeldingen mens (StatusesUpdateChoreo.available ()) {char c = StatusesUpdateChoreo.read (); Serial.print (c); }} StatusesUpdateChoreo.close (); // ikke gjør noe de neste 90 sekundene Serial.println ("Venter …"); delay (90000);} void loop () {// få noen data fra A0. analogZero = analogRead (0); kvitring(); gjør {} mens (1); // gjør ingenting}--------------------------------------------- -------------------------------------------------- ---------------------------------------- Som resulterer med følgende eksempel-tweet vist i bildet over. Med den forrige eksempelskissen kan du bygge din egen funksjonalitet rundt tweet () -funksjonen for å sende data når det er nødvendig. Husk at dataene som skal sendes som en tweet er kombinert til en streng på linje 26. Vær oppmerksom på at du ikke kan sprenge ut tweets som en maskin, av to grunner - en, twitter liker ikke rask automatisert tweeting - og to, du får bare 1000 gratis samtaler på Temboo -kontoen din per måned. Hvis du trenger mer, må kontoen oppgraderes til en pris. Konklusjon Vel, Yún gir oss en annen måte å sende data ut via twitter. Det var ikke den billigste måten å gjøre det på, men det var ganske enkelt. Og dermed bytte med Arduino-plattformen-enkelhet kontra pris. Følg med for flere opplæringsprogrammer. Og hvis du er interessert i å lære mer om Arduino, eller ønsker å introdusere noen andre for den interessante verdenen til Arduino - sjekk boken min (nå i en tredje utgave!) "Arduino Workshop" fra No Starch Press.

Anbefalt: