Taula de continguts:

Tweeting Station meteorològica: 8 passos (amb imatges)
Tweeting Station meteorològica: 8 passos (amb imatges)

Vídeo: Tweeting Station meteorològica: 8 passos (amb imatges)

Vídeo: Tweeting Station meteorològica: 8 passos (amb imatges)
Vídeo: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, Desembre
Anonim
Estació meteorològica de piulades
Estació meteorològica de piulades

Alguna vegada heu volgut controlar les condicions meteorològiques actuals, la petjada de carboni, els nivells de soroll i contaminació de la vostra ciutat? Voleu ser un Crusader del canvi climàtic o configurar la vostra pròpia estació meteorològica de Tweeting i compartir les vostres condicions meteorològiques locals amb el món?

Conegueu Tweeting Weather IoT Station, també conegut com TWIST: una plataforma de control de medi ambient de font oberta i adquisició de dades meteorològiques. L’objectiu de TWIST és que les persones i les comunitats puguin recopilar dades del que realment passa al seu entorn i compartir-les a les xarxes socials com Twitter.

  • TWIST és una plataforma basada en Internet de les coses (IoT).
  • El cervell de TWIST és un Intel Edison Board.
  • TWIST és compatible amb diversos sensors.
  • Tots els fitxers de codi, de disseny (esquemes i disseny de PCB) són de codi obert. Això significa que qualsevol persona pot contribuir a la plataforma TWIST compartint codi i esquemes per a diferents sensors.

TWIST consta de tres capes tecnològiques:

La primera capa és una placa de maquinari que conté tots els sensors meteorològics i ambientals coneguts com a "placa de sensors". Com el seu nom indica, porta sensors que mesuren la composició, la temperatura, la humitat i la pluja. També es poden afegir sensors addicionals com activitat sísmica, índex UV, pressió baromètrica, altitud, lux (lluminositat), nivells sonors, velocitat i direcció del vent, etc. Un cop configurada, la placa del sensor pot transmetre les dades mesurades pels sensors a la segona capa. La segona capa és la placa Intel Edison que rep les dades de la placa sensor, les processa i les envia a la següent capa. La tercera capa connecta la vostra placa Edison a Internet mitjançant Wi-Fi mitjançant el mòdul sense fils de la placa Edison i les condicions meteorològiques i ambientals actuals de Tweet.

L’alimentació del dispositiu la pot proporcionar un panell solar o un adaptador de corrent altern.

Dipòsits controlats per versions

Les tres capes tecnològiques de TWIST són de codi obert i, per tant, tots els fitxers que utilitzem per al codi, el desenvolupament de PCB, el disseny mecànic, etc. estan fàcilment disponibles al nostre dipòsit Github.

Participacions al concurs

Invitació Intel IoT

M'agradaria donar les gràcies a Intel + Instructables per proporcionar-me el tauler Intel Edison. Tinc previst fer molts més instructables relacionats amb l'IoT mitjançant el tauler Edison.

#iotweatherstn

Si feu TWIST, no us oblideu de tuitejar el temps amb #iotweatherstn. #iotweatherstn pot ser un hashtag utilitzat per totes les estacions meteorològiques de Tweeting amb tecnologia IoT.

Pas 1: peces i materials

Peces i materials
Peces i materials
Peces i materials
Peces i materials
Peces i materials
Peces i materials

QuantityPartDetails 1

Intel Edison

amb Arduino Breakout Board

1

Sensor de gas combustible MQ2

1

YL-83

Sensor de pluja

1

SL-HS-220

Sensor de temperatura i humitat

1

Resistència

32K

4,7 K

3 Metal Standoff 1 polzada

1

Resistència

32K

4,7 K

2

Full de fusta mida A4

Es pot tallar més tard

3

Distanci de metall

1 polzada

Pas 2: Disseny elèctric

Potència

Tot el sistema s’alimenta d’una font d’alimentació de 5V 1A. Els sensors (temperatura, humitat, pluja, gas) dibuixen aproximadament 200 mA, l’Edison al voltant de 500 mA, atès que el corrent total requerit és inferior a 1 amp, un subministrament d’1 amperi hauria de funcionar bé. El LED verd integrat al pin digital 13 de la placa Edison s’utilitza per mostrar l’estat de potència.

Un Intel Edison executa el programa per a TWIST. L’Edison està muntat en una placa de sortida Arduino, que facilita la lectura dels senyals digitals i analògics dels sensors. L’Edison es connecta al carril de 5V mitjançant un cable micro USB. L'Edison té una ràdio Wi-Fi integrada que li permet connectar-se a Twitter sense necessitat de cap maquinari addicional.

Rellotge en temps real (RTC)

Atès que la marca de temps realitzada automàticament per Twitter per a cada tweet té una resolució limitada al nombre total de dies des de l’hora del tuit, s’utilitza un rellotge en temps real per marcar amb exactitud la data i l’hora a l’hora i minut. Segon format. El rellotge en temps real utilitzat a la plataforma TWIST és el mòdul RTC DS-1307.

Sensors La configuració més bàsica d’aquest sistema té quatre sensors (temperatura, humitat, pluja, gas) que es connecten a l’Edison. Es poden afegir sensors addicionals, com ara soroll, vent, etc. Cada sensor s'alimenta directament des del carril de 5V i té el pin de senyal connectat respectivament als pins analògics A0 a A2 i al pin digital 2 de la placa de ruptura d'Edison. Els sensors també tenen un potenciòmetre d’ajust de la sensibilitat muntat a cada placa de sensors; El MQ-2 és un sensor de gas combustible (gas de petroli liquat, propà, hidrogen i metà) que genera una tensió analògica proporcional a la concentració de gasos en parts per milió. El SL-HS-220 té un termistor que dóna el valor de la temperatura. Com que la sortida del termistor no és lineal, es dóna la taula de temperatures corresponent al dipòsit del sensor. El termistor requereix un circuit divisor de tensió quan es connecta a la placa Edison tal com es mostra al diagrama del circuit. El SL-HS-220 també té un higròmetre integrat que mesura la humitat i genera una tensió analògica que correspon a un valor d’humitat fix. La taula d'humitat-tensió també es proporciona al dipòsit de sensors. Un substitut comú del SL-HS-220 és el sensor DHT11. El sensor de pluja / sensor d'aigua té un potenciòmetre que s'ajusta per donar una sortida digital per a una certa quantitat de pluja la sensibilitat de la qual pot ser ajustada per l'usuari.

Estació Meteorològica.fzz

Pas 3: Disseny mecànic

El cos del TWIST està format per dues plaques de fulls de fusta. Tot i que he utilitzat contraxapat de 1/4 ", el disseny es pot muntar a partir de qualsevol material de xapa, ja que l'espai (mantingut per separadors d'alumini d'1") és l'únic element crític. He adjuntat els fitxers vectorials per descarregar més amunt.

Tall per làser

Per a tots aquells que vulguin tallar amb làser les dues plaques, he adjuntat els fitxers de tall làser que podeu descarregar a continuació. També inclou un sensor de qualitat de l’aire addicional en el seu disseny. Per tant, podeu utilitzar un mòdul de sensor MQ2 o un mòdul de sensor de qualitat de l’aire en funció de la vostra elecció.

Pas 4: Muntatge del marc: cara i base

Placa frontal

Els sensors s’ajusten als seus forats i retallables coincidents i es poden fixar mitjançant cargols o cola.

Placa base

Els separadors de la placa Edison estan cargolats a la placa base. El convertidor analògic-digital (ADC) connectat al sensor de pluja també es pot cargolar a la placa base.

A la placa base també es poden cargolar components addicionals com els brunzidors o el circuit regulador de tensió per a l'entrada solar.

La placa base i la placa frontal estan separades per separadors d'1.

Pas 5: Muntatge d'electrònica i de sensor

Potència

L’alimentació del sistema la proporciona un adaptador de paret amb una presa de barril estàndard que es connecta directament al connector Barrel d’Edison. El sistema també es pot alimentar a través del port USB de la placa Edison. També podeu alimentar la placa des d’un panell solar extern.

Sensors

Els sensors s’uneixen a taules de sortida amb capçaleres masculines i, per tant, poden connectar-se directament a l’Edison mitjançant cables de pont entre homes i dones.

Pas 6: Configuració de Twitter

Per fer un tuit, fem servir una aplicació de tercers desenvolupada per NeoCat que obté el testimoni de Twitter que necessiteu per tuitejar amb el vostre tauler Edison. Les fitxes també es poden obtenir a la pàgina web de desenvolupadors de Twitter.

Per tant, per començar, visiteu el lloc web de NeoCat, seguiu el seu tutorial per obtenir la biblioteca de twitter i el vostre testimoni de twitter. Com va esmentar NeoCat al seu lloc, si us plau, no abusis del servei. Mantingueu els vostres tweets escassos. Si necessiteu alguna cosa que tweets cada 6 segons, heu de configurar el vostre propi servidor i aplicació de twitter i, per tant, el codi que he escrit garanteix que el servidor de NeoCat no sobrecarregui (TWIST tweets cada 6 hores).

La biblioteca utilitza el lloc web d’aquest NeoCat com a servidor intermediari per a coses d’OAuth. És possible que el vostre tuit no s’apliqui durant el manteniment del lloc web d’aquest NeoCat. Sembla que Twitter rebutja els tuits repetits amb el mateix contingut (retorna l'error 403).

Token de Twitter

Biblioteca Arduino Tweet

Pas 7: programari i configuració

Seguiu la guia d’instal·lació d’Intel per a Intel Edsion abans de començar a codificar.

El programa és un esbós d’Arduino que s’executa a l’Edison. A continuació he explicat cadascun dels blocs principals de codi.

El codi inclou algunes constants predefinides, declaracions de pins i un parell d’instruccions d’impressió en sèrie que ajuden a la resolució de problemes.

Retard del tuit

Com que Twitter filtra els tweets que tenen el mateix contingut i que es publiquen en breus períodes de temps entre cadascun d'ells, s'ha establert un retard estàndard de 3 hores (10800000 milli segons) entre cada tweet.

tweetMessage ();

retard (10800000);

Escriviu Casting

Moltes de les lectures que obtenim dels sensors es troben en el tipus de dades "int" o "float". Però, ja que estem piulant aquests valors, els hem de convertir en un tipus de dades "Cadena". Per a això fem servir una tècnica especial de fosa de tipus.

char * dtostrf (doble val, amplada de caràcters signada, prec sense signatura, char * sout) {

char fmt [100]; sprintf (fmt, "%%% d.% df", ample, prec); sprintf (sout, fmt, val); tornar sud; }

Token de Twitter

El testimoni de twitter es crea al lloc web de NeoCat i s’ha d’enganxar a l’espai del testimoni aquí.

void tweetMessage () {

Twitter twitter ("ENTREU TWITTER TOKEN AQUÍ");

Tweeting Valors del sensor

Per tuitejar el valor del sensor, primer incloem el tipus de sensor; Exemple: "Humitat". Tot seguit d'una declaració de caràcters i una línia de codi necessària per a la tipografia. A continuació, afegim un enunciat per a la unitat de mesura; Exemple: "% RH". També podem continuar afegint valors d'altres sensors de manera similar.

humitat (); surar humit;

// Missatge de Twitter String stringMsg = "Humitat:"; char tmp [10]; dtostrf (humit, 1, 2, tmp); stringMsg + = tmp; stringMsg + = "% RH";

Ubicació i etiquetatge de l'estació meteorològica

A continuació, etiquetem la ubicació (ciutat, localitat, etc.) i altres etiquetes com #iotweatherstn.

stringMsg + = "#Mumbai #Bandra #iotweatherstn";

Rellotge en temps real (RTC)

Com s'ha explicat anteriorment, TWIST també pot enviar un tuit a les dades del rellotge en temps real. A continuació es mostra un exemple del bloc de paràmetres "dia" del codi del RTC. La funció de rellotge en temps real és opcional a la plataforma TWIST, ja que el mòdul ve per separat. Per tant, hi ha una branca independent creada al dipòsit TWIST per al codi i els esquemes de la branca Rellotge en temps real.

TwistDateTime (); Data i hora ara = rtc.now (); int twistday, twistmonth, twistyear, twisthour, twistmin, twistsec; String stringMsg = ""; char ds1307day [10]; dtostrf (twistday, 1, 0ds1307day); stringMsg + = ds1307day; stringMsg + = "/";

Límit de 140 caràcters

Aquest bloc de codi cobreix la matriu de cadenes a una matriu de 140 caràcters preparada per twittear.

char msg [140];

stringMsg.toCharArray (msg, 140);

Resolució de problemes de missatges i connexió

Aquest bloc de codi imprimeix un parell de línies de text al monitor sèrie per ajudar l'usuari a comprovar l'estat del missatge i del tuit.

// Fes un tuit a aquest xuclador!

if (twitter.post (msg)) {int status = twitter.wait (); if (estat == 200) {Serial.println ("D'acord"); Serial.println ("Missatge enviat"); } else {// Prova de connexió Serial.print ("ha fallat: codi"); Serial.println ("El missatge no s'ha enviat"); Serial.println (estat); }} else {Serial.println ("connexió fallida"); Serial.println ("El missatge no s'ha enviat"); }

Tots els altres blocs de codi simplement converteixen la lectura analògica o digital dels sensors en dades utilitzables.

El codi es pot descarregar des d’aquí o des del dipòsit principal:

Estació Meteorològica

Pas 8: contribuir al dipòsit de sensors

Ets un programador, enginyer o dissenyador que té una gran idea per a una nova funció a TWIST? Potser teniu una bona idea per solucionar-los? No dubteu a agafar els nostres fitxers de codi, esquemes i CAD de Github i jugar-hi.

TWIST GitHub

Invitació Intel® IoT
Invitació Intel® IoT
Invitació Intel® IoT
Invitació Intel® IoT

Segon premi a la invitació Intel® IoT

Recomanat: