Main Content

Questa pagina è stata tradotta con la traduzione automatica. Fai clic qui per vedere l’originale in inglese.

Analizza i tuoi dati

Questo esempio mostra come leggere i dati di temperatura e umidità da ThingSpeak channel 12397, che raccoglie dati relativi al meteo da un dispositivo Arduino® . Scrivi i dati di temperatura e umidità nel canale di misurazione del punto di rugiada, insieme ai dati del punto di rugiada calcolati. Quindi utilizza ThingSpeak™ per visualizzare i risultati sul tuo canale.

Passaggi preliminari

Questo esempio richiede che tu abbia già eseguito questi passaggi:

Leggi i dati da un canale

Leggi l'umidità e la temperatura dai campi 3 e 4 del canale WeatherStation pubblico e scrivi i dati rispettivamente nei campi 2 e 1 del canale di misurazione del punto di rugiada. Il punto di rugiada viene calcolato e scritto nel campo 3.

Utilizza MATLAB® Analisi per leggere, calcolare e scrivere i tuoi dati.

  1. Vai alla scheda Apps e fai clic su MATLAB Analysis.

  2. Fai clic su New. Seleziona il modello Custom e fare clic su Create.

  3. Nel campo Name , inserisci Dew Point Calculation.

  4. Nel campo MATLAB Codice, inserisci le seguenti righe di codice.

    1. Salva l'ID del canale pubblico della stazione meteorologica e l'ID del canale di misurazione del punto di rugiada nelle variabili.

      readChId = 12397;
      writeChId = 671;  % replace with your channel number
    2. Salva la chiave API di scrittura su una variabile.

      writeKey = 'F6CSCVKX42WFZN9Y'; % Replace with your channel write key

      Per trovare l'ID canale e la chiave API di scrittura, fare riferimento a Informazioni canale nella scheda My Channels .

    3. Leggi gli ultimi 20 punti di dati di temperatura con timestamp e dati di umidità dal canale pubblico della stazione meteorologica in variabili.

      [temp,time] = thingSpeakRead(readChId,'Fields',4,'NumPoints',20);
      humidity = thingSpeakRead(readChId,'Fields',3,'NumPoints',20);

Calcola il punto di rugiada

Aggiungi il seguente codice MATLAB per calcolare il punto di rugiada utilizzando le letture di temperatura e umidità:

  1. Converti la temperatura da Fahrenheit a Celsius.

    tempC = (5/9)*(temp-32); 

  2. Specifica le costanti per il vapore acqueo (b) e la pressione barometrica (c).

    b = 17.62;
    c = 243.5;

  3. Calcola il punto di rugiada in gradi Celsius.

    gamma = log(humidity/100) + b*tempC./(c+tempC);
    dewPoint = c*gamma./(b-gamma)

  4. Converti nuovamente il risultato in Fahrenheit.

    dewPointF = (dewPoint*1.8) + 32;

  5. Scrivi i dati sul canale di misurazione del punto di rugiada. Questo codice pubblica tutti i dati disponibili in un'unica operazione e include i timestamp corretti.

    thingSpeakWrite(writeChId,[temp,humidity,dewPointF],'Fields',[1,2,3],...
    'TimeStamps',time,'Writekey',writeKey);

    L'intero blocco di codice ora appare come:

     Vedi il codice completo

  6. Fai clic su Save and Run per convalidare ed elaborare il codice.

    Eventuali errori nel codice vengono indicati nel campo Output .

  7. Per verificare se il codice è stato eseguito correttamente, fai clic sul link del canale Dew Point Measurement nel pannello Channel Info .

Il canale Misurazione del punto di rugiada ora mostra i grafici con i dati del canale per ciascun campo.

Codice di pianificazione

Utilizza l'app TimeControl per programmare il calcolo del punto di rugiada nel codice di analisi MATLAB . Programmalo per leggere i dati dalla stazione meteorologica ogni 30 minuti e calcolare il punto di rugiada.

  1. Scorri fino alla fine della pagina Calcolo del punto di rugiada dell'analisi MATLAB . Fai clic su TimeControl per aprire l'app con MATLAB Analysis preselezionata nel campo Actions e il calcolo del punto di rugiada come Code to execute.

  2. Assegna un nome al tuo nuovo TimeControl Dew Point TC

  3. Scegli Recurring nel campo Frequency .

  4. Scegli Minute nel campo Recurrence .

  5. Seleziona 30 nel campo Every — minutes .

  6. Mantieni Start Time al valore predefinito.

  7. Verifica che Action sia MATLAB Analysis e Code to execute sia il Dew Point Calculation.

  8. Fai clic su Save TimeControl

Nota

La configurazione di un TimeControl per scrivere dati sul tuo canale utilizza i messaggi disponibili sul tuo account ThingSpeak . Questa azione può eventualmente esaurire i messaggi disponibili, il che comporta il rifiuto degli aggiornamenti del feed del canale. Assicurati che i dati che scrivi su un canale non si sovrappongano nel dominio del tempo poiché ciò causerebbe un uso non necessario dei messaggi.

Visualizza la misurazione del punto di rugiada

Utilizza l'app MATLAB Visualizations per visualizzare i dati misurati del punto di rugiada, la temperatura e l'umidità dal canale di misurazione del punto di rugiada. Questo esempio utilizza la funzione plot (MATLAB) per mostrare tutti e tre i punti dati in un'unica visualizzazione.

Vai a Apps > MATLAB Visualizations e fai clic su New per creare una visualizzazione.

In alternativa, è possibile fare clic su MATLAB Visualization nella visualizzazione del canale di misurazione del punto di rugiada.

  1. Seleziona il modello Custom e fai clic su Create.

  2. Assegna alla visualizzazione il nome "Punto di rugiada".

  3. Crea variabili per l'ID del canale di misurazione del punto di rugiada e la chiave API di lettura. Sostituisci i valori nel codice con l'ID del tuo canale e la chiave API di lettura.

    readChId = ZZZZ
    readKey = 'XXXXXXXXXXXXXXXX';

  4. Leggi i dati dai campi del tuo canale e ottieni gli ultimi 100 punti di dati per:

    • Temperatura: dal Campo 1

    • Umidità: dal Campo 2

    • Punto di rugiada: dal Campo 3

      [dewPointData,timeStamps] = thingSpeakRead(readChId,'fields',[1,2,3],...
          'NumPoints',100,'ReadKey',readKey);
  5. Traccia i dati con etichette x e y, un titolo e una legenda.

    plot(timeStamps,dewPointData);
    xlabel('TimeStamps');
    ylabel('Measured Values');
    title('Dew Point Measurement');
    legend({'Temperature','Humidity','Dew Point'});
    grid on;

    Il tuo codice sarà simile a questo codice:

     Vedi il codice completo

  6. Fai clic su Save and Run. Se il tuo codice MATLAB non presenta errori, l'output del grafico è simile al grafico mostrato qui:

Prossimi passi

Nell'esempio Agisci sui tuoi dati, puoi monitorare il punto di rugiada calcolato per attivare un tweet automatico quando viene superato un livello specificato.

Vedi anche

| | (MATLAB) | (MATLAB) | (MATLAB) | (MATLAB) | (MATLAB) | (MATLAB)

Argomenti complementari