Allsensing Docs
올센싱 쇼핑몰올센싱 블로그
한국어
한국어
  • 올센싱 기술 문서
  • Product document
    • Allsensing
      • AGSM 사용 설명서
      • AGSM 아두이노 활용
      • AGSM IoT 활용(ESP32)
      • 올센싱 가스센서 모듈
      • 온습도센서(아날로그)
      • 온습도센서(디지털)
    • Nevadanano
      • 센서 특징
      • 디바이스 연결 방법
      • 통신프로토콜
      • 3.0/4.0/5.0 Version 변경사항
    • GSS
      • 설명
      • CozIR-LP2
      • CozIR-LP3
      • CozIR-Blink
        • 디바이스 연결 방법
        • 통신 프로토콜
          • 모드 설정 및 CO2 값 읽기
          • 인터페이스 유형별(UART,I2C) CO2값 읽기
          • Digital filter
          • UART Command
      • ExplorIR
        • 디바이스 연결 방법
        • 통신 프로토콜
          • 모드 설정 및 CO2 값 읽기
          • Digital filter
          • UART Command
      • SprintIR 6S
        • 디바이스 연결 방법
        • 통신 프로토콜
          • 모드 설정 및 CO2 값 읽기
          • Digital filter
          • UART Command
    • EC-Sens
      • 제품 종류 및 이론
      • EC Sense 센서 구동 회로
      • 가스 센서 모듈
      • TB600B(C),TB200B
      • TB420
      • DGM10
      • EC Sense DS4 Series
    • SST
    • Temp&Humi
      • ETH-01DV
      • ETH-01D
        • 디바이스 연결 방법
        • 통신 프로토콜
          • 온·습도 읽기
          • 온·습도 Resolution 읽기 및 쓰기
          • Sensor ID 읽기
          • Address 읽기 및 쓰기
        • Thingspeak 활용방법
    • Plantower
      • 디바이스 연결 방법
      • 통신 프로토콜
        • UART
        • I2C
    • DD Scientific
      • 배경지식
      • 회로도
        • 2전극 센서
        • 3전극 센서
        • DUAL Toxic
        • O2
        • 바이어스 센서
      • 애플리케이션
      • Q&A
  • 참고문서
    • 전기화학식 가스센서
      • 전기 화학식 가스 센서 Q&A
Powered by GitBook
On this page
  1. Product document
  2. Temp&Humi
  3. ETH-01D

Thingspeak 활용방법

PreviousAddress 읽기 및 쓰기NextPlantower

Last updated 1 year ago

ESP32 ThingSpeak에 ETH-01D 값 게시

Step1. 아두이노 IDE에 Thingspeak 라이브러리 추가

Step2. Wi-Fi ssid, pass 확인 및 변경

  • code Thingspeak ssid, password 부분 자신이 사용할 Wi-Fi ssid, pass로 변경

Step3. Thingpeak channelnumber 및 api key 확인

  • Thingspeak -> channel -> my channel -> channel setting -> channel id 확인 후 code 변경

  • Thingspeak -> channel -> my channel -> Api keys -> Write Api key -> key 확인 후 code 변경

#include <Arduino.h>
#include "ThingSpeak.h"
#include <Wire.h>
#include <WiFi.h>
#define slave_address 0x44
#define Sensor_power_port 6 // Arduino uno, Arduino mkr 1010, esp32
// #define Sensor_power_port 16 // esp8266
#define Power_enable digitalWrite(Sensor_power_port, HIGH)
#define Power_disable digitalWrite(Sensor_power_port, LOW)
const char* ssid = "your network SSID";   // your network SSID (name) 
const char* password = "your network password";   // your network password
WiFiClient  client;
unsigned long myChannelNumber = your channel number;
const char * myWriteAPIKey = "your channel api key";
// Timer variables
unsigned long lastTime = 0;
unsigned long timerDelay = 10000;
float Temp_value[2]={0.00};
float Humi_value[2]={0.00};
void setup()
{
// Wire.begin();// arduino uno, Arduino mkr 1010
Wire.begin(7,8, 50000 ); //esp32
//Wire.begin(4,5,50000); //esp8266
Serial.begin(115200);
pinMode(Sensor_power_port, OUTPUT);
Power_enable;
  WiFi.mode(WIFI_STA);   
  ThingSpeak.begin(client);  // Initialize ThingSpeak
}
void loop()
{
    int HumidH;
    int HumidL;
    int TemperH;
    int TemperL;
    double RealH;
    double RealT;
    Wire.beginTransmission(slave_address);
    Wire.endTransmission();
    delay(34);
    Wire.requestFrom(slave_address, 4);
    if(Wire.available())
    {
        HumidH = Wire.read();
        HumidL = Wire.read();
        TemperH = Wire.read();
        TemperL = Wire.read();
        HumidH = HumidH & 0x3f; // Don't care bit mask
        // *********** Humidity & Temperature calculation code changed ***************************
        RealH = (double)((HumidH * 256 ) + HumidL ) * 100/16383;
        RealT = (double)(((TemperH * 256) + TemperL)/4) * 165/16383 - 40;
        Humi_value[0] = RealH;
        Humi_value[0] = floor(Humi_value[0]*100)/100;
        Temp_value[0] = RealT;
        Temp_value[0] = floor(Temp_value[0]*100)/100;
        Serial.print("T : "); Serial.print(RealT, 2);
        Serial.print(" , ");
        Serial.print("RH : "); Serial.println(RealH, 2);
        delay(1000);
    }
    if ((millis() - lastTime) > timerDelay) 
    {
        // Connect or reconnect to WiFi
        if(WiFi.status() != WL_CONNECTED)
        {
        Serial.print("Attempting to connect");
        while(WiFi.status() != WL_CONNECTED){
            WiFi.begin(ssid, password); 
            delay(2000);     
        } 
        Serial.println("\nConnected.");
        }
        // pieces of information in a channel.  Here, we write to field 1.
        ThingSpeak.setField(1, Humi_value[0]);
        ThingSpeak.setField(2, Temp_value[0]);
        int x = ThingSpeak.writeFields(myChannelNumber, myWriteAPIKey);
        if(x == 200){
        Serial.println("Channel update successful.");
        }
        else{
        Serial.println("Problem updating channel. HTTP error code " + String(x));
        }
        lastTime = millis();
   }
ETH_01D - ThingSpeak IoT
Logo