ThingSpeak Arduino Weather Station
コンポーネントと消耗品
> |
| × | 1 | |||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
アプリとオンラインサービス
> |
| |||
| ||||
|
このプロジェクトについて
THINGSPEAK ARDUINO WEATHER STATION
IoTに足を踏み入れる
IoTに足を踏み入れることは、利用可能な膨大なオプションからどこから始めればよいかわからないため、初心者としては難しい場合があります。神は物事を祝福します。このブログでは、最初のThingspeakIoTプロジェクトについて説明します。
a)安くてアクセスしやすい
b)わかりやすい
c)RADCOOL。
プロジェクト-ArduinoとESP-01Wi-Fiモジュールを使用してThingspeakCloudにデータを送信する温度および湿度センサー。
必要なもの
1. Arduino UNO
2. ESP-01
3.DHT-11センサー
4.ブレッドボード
5.ブレッドボード電源
5.ワイヤーを接続します。
注-これで、arduinoを使用してセンサーとwifiモジュールに電力を供給することができますが、動作中のwifiモジュールのピーク電流要求をボードで満たすことができないため、ブレッドボード電源モジュールなどの外部ソースの方が適しています。私を信頼してみました
さて、すぐに飛び込みましょう。
接続
ESP -01
1. VCC-3.3V
2. GND-GND
3. CH_PD-3.3V
4.リセット-3.3V
5. TX-2(Arduino)
6. RX-3(Arduino)
DHT-11
1. VCC-5V
2. OUT-A0
3. GND-GND
ブレッドボード電源でジャンパーを3.3Vに設定することを忘れないでください。
今度はすべての電源を入れ、何も燃えたり煙が出たりしない場合は、これまでのところ良好です。
THINGSPEAKの設定
thingspeakのホームページに移動します。
サインアップして、TemperatureとHumidityの2つのフィールドを持つ新しいチャネルを作成します。
新しいチャネルを作成すると、APIキーと呼ばれるものが表示されます。
これらは後で使用します。
ARDUINOIDEのセットアップ
このステップは、コードを実行するための鍵となります。ライブラリ。
コードで2つを使用し、コードで1つを使用するために3つ目を使用します。
赤いボックスで強調表示されています。
SoftwareSerial.hは組み込みのライブラリなので、問題はありません。
1。 自分でインストールする必要のあるライブラリは、Adafruit統合センサーライブラリとDHTセンサーライブラリです。リンクをダウンロード
adafruitによるDHTセンサー- https://github.com/adafruit/DHT-sensor-library
Adafruit 統合 センサー ライブラリ- https://github.com/adafruit/Adafruit_Sensor
2.両方をダウンロードし、IDEのAdd.ZIPライブラリ機能を使用して追加します。
ホームストレッチ
コードはここにあります-https://github.com/imalwaysontheinternet/Weather-Stasionまたは、ここからコードをコピーしてスケッチに貼り付けます。
コードをアップロードする前に、コードで行うべきことがいくつかあります。
1.ここにWriteAPIキーを貼り付けます
2.ここにWifiSSIDとパスワードを入力します。
コードをアップロードします。すべてが正しく行われた場合、Thingspeakチャンネルは次のようになります。
グラフの更新には15秒の間隔があることに注意してください。
それでも問題が解決しない場合は、下のコメントに問題を記入してください。いつでも喜んでサポートさせていただきます。このようなクエリやその他のプロジェクトについては、virginrobotics.blogspot.comにアクセスしてください。
コード
- コード
CODE Arduino
String myAPIkey ="ここに書き込みAPIキー"; #include#include ; SoftwareSerial ESP8266(2、3); // Rx、Tx#define DHTTYPE DHT11#define DHTPIN A0DHT dht(DHTPIN、DHTTYPE、11);フロート湿度、temp_f;長いwritingTimer =17; long startTime =0; long waitTime =0; boolean relay1_st =false;ブールrelay2_st =false; unsigned char check_connection =0; unsigned char times_check =0; boolean error; void setup(){Serial.begin(9600); ESP8266.begin(9600); dht.begin(); startTime =millis(); ESP8266.println( "AT + RST"); delay(2000); Serial.println( "Wifiへの接続"); while(check_connection ==0){Serial.print( "。"); ESP8266.print( "AT + CWJAP =\" Wifiネットワークの名前\ "、\"パスワード\ "\ r \ n"); ESP8266.setTimeout(5000); if(ESP8266.find( "WIFI CONNECTED \ r \ n")==1){Serial.println( "WIFI CONNECTED");壊す; } times_check ++; if(times_check> 3){times_check =0; Serial.println( "再接続しようとしています.."); }}} void loop(){waitTime =millis()-startTime; if(waitTime>(writingTimer * 1000)){readSensors(); writeThingSpeak(); startTime =millis(); }} void readSensors(void){temp_f =dht.readTemperature();湿度=dht.readHumidity();} void writeThingSpeak(void){startThingSpeakCmd(); // preparacao da string GET String getStr ="GET / update?api_key ="; getStr + =myAPIkey; getStr + ="&field1 ="; getStr + =String(temp_f); getStr + ="&field2 ="; getStr + =String(humidity); getStr + ="\ r \ n \ r \ n"; GetThingspeakcmd(getStr); } void startThingSpeakCmd(void){ESP8266.flush(); String cmd ="AT + CIPSTART =\" TCP \ "、\" "; cmd + =" 184.106.153.149 "; // api.thingspeak.comIPアドレスcmd + =" \ "、80"; ESP8266.println(cmd); Serial.print( "開始コマンド:"); Serial.println(cmd); if(ESP8266.find( "Error")){Serial.println( "AT + CIPSTARTエラー");戻る; }} String GetThingspeakcmd(String getStr){String cmd ="AT + CIPSEND ="; cmd + =String(getStr.length()); ESP8266.println(cmd); Serial.println(cmd); if(ESP8266.find( ">")){ESP8266.print(getStr); Serial.println(getStr); delay(500);文字列messageBody =""; while(ESP8266.available()){文字列行=ESP8266.readStringUntil( '\ n'); if(line.length()==1){messageBody =ESP8266.readStringUntil( '\ n'); }} Serial.print( "MessageBody receive:"); Serial.println(messageBody); messageBodyを返します。 } else {ESP8266.println( "AT + CIPCLOSE"); Serial.println( "AT + CIPCLOSE"); }}
回路図
コード
https://github.com/imalwaysontheinternet/Weather-Stasion製造プロセス