工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Manufacturing Technology >> 製造プロセス

MKR1000からThingSpeak.comへ

コンポーネントと消耗品

>
DHT11温度および湿度センサー(4ピン)
× 1
Arduino MKR1000
× 1

このプロジェクトについて

私はすでにESP826612-Eのコードを開発しており、DHT11によって取得され、ThingSpeak Webサイトにワイヤレスでアップロードされ、グラフ化された環境センサーデータを取得しました。新しいArduinoMKR1000で動作するように、小さな変更を加える必要がありました。

<図>

ステップ1。

DHTデータラインをMKR1000ピン1(ボードの背面に1のラベルが付いています)に接続します。

<図>

ステップ2.WiFi101ライブラリとDHTライブラリを以下からダウンロードします:

https://github.com/arduino-libraries/WiFi101

https://learn.adafruit.com/dht

ステップ3。

ArduinoIDEのボードマネージャーに移動します

ツール->ボード->ボードマネージャー

Arduino SAMDボード(32ビットARM Cortex M0 +)を検索する

バージョン1.6.3をダウンロードします(MKR100ボードがインストールされなかったため、1.6.4で問題が発生しました)

<図>

ステップ4。

無料のThingSpeak.comアカウントを作成し、フィールドにグラフ(湿度と温度)のラベルを付け、ThingSpeakの「書き込み」APIキーをWiFiSSIDとWiFIパスワードとともに提供されたスケッチに貼り付けます。

ステップ5。

適切なComポートを選択し、MKR1000を探して、コードをコンパイルして実行します。

シリアルウィンドウにThingSpeakに送信されている更新が表示されます。

楽しんでください!

<図>

コード

  • MKR1000からDHT、ThingSpeakワイヤレスクラウドベースの環境センサーグラフ化
MKR1000からDHT、ThingSpeakワイヤレスクラウドベースの環境センサーグラフ Arduino
AdaFruit、WiFi101 WebClient、およびThingSpeakArduinoテンプレートのスケッチの組み合わせ。
 / *このスケッチは、ADAFruits DHTスケッチ、WiFi101 Webclient、およびMKR1000用にStephenBorsayによって修正されたThingSpeakModifiedのarduinoの例を組み合わせたものです* / #include  //シールドされたチップを使用していないため、これは必要ありません#include  #include "DHT.h" #define DHTPIN 1 //ピンは何ですか接続されている、pin1は端から5番目のピンです//使用しているDHTセンサータイプのコメントを外します!#defineDHTTYPE DHT11 // DHT 11 //#define DHTTYPE DHT21 // DHT 21 //#define DHTTYPE DHT22 // DHT 22DHT dht (DHTPIN、DHTTYPE); String apiKey ="YourApiKeyHere"; // ThingSpeakcharからのAPIssid [] ="YourSSIDHERE"; //ネットワークSSID(name)char pass [] ="YourPasswordHere"; //ネットワークpasswordintkeyIndex =0; //ネットワークキーのインデックス番号(WEPにのみ必要)//#defineWEBSITE "api.thingspeak.com" int status =WL_IDLE_STATUS; // DNSを使用したくない場合(およびスケッチサイズを縮小したい場合)// server:// IPAddress server(74,125,232,128);の名前の代わりに数値IPを使用します。 // Googleの数値IP(DNSなし)char server [] ="api.thingspeak.com"; // Googleの名前アドレス(DNSを使用)//イーサネットクライアントライブラリを初期化する//接続するサーバーのIPアドレスとポートを使用する//接続するサーバー(ポート80はHTTPのデフォルト):WiFiClientclient; void setup (){//シリアルを初期化し、ポートが開くのを待ちます:Serial.begin(9600); while(!Serial){; //シリアルポートが接続するのを待ちます。ネイティブUSBポートにのみ必要} //シールドの存在を確認します:if(WiFi.status()==WL_NO_SHIELD){Serial.println( "WiFiシールドが存在しません"); //続行しない:while(true); } // Wifiネットワークへの接続を試みます:while(status!=WL_CONNECTED){Serial.print( "SSIDへの接続を試みています:"); Serial.println(ssid); // WPA / WPA2ネットワークに接続します。open/ WEPネットワークを使用している場合はこの行を変更しますstatus =WiFi.begin(ssid、pass); //接続を10秒待ちます:delay(10000); } Serial.println( "Wi-Fiに接続"); printWifiStatus(); } void loop(){//測定の合間に数秒待ちます。 delay(2000); // floatを使用することをお勧めしますが、パッケージサイズまたはfloat変換は機能しません//文字列関数またはfloat変換関数で将来改訂されますint h =dht.readHumidity(); //温度を摂氏(デフォルト)として読み取りますint t =dht.readTemperature(); //温度を華氏(isFahrenheit =true)として読み取りますint f =dht.readTemperature(true); //読み取りが失敗したかどうかを確認し、早期に終了します(再試行します)。 if(isnan(h)|| isnan(t)|| isnan(f)){Serial.println( "DHTセンサーからの読み取りに失敗しました!");戻る; } //華氏で熱指数を計算します(デフォルト)int hif =dht.computeHeatIndex(f、h); //摂氏で熱指数を計算します(isFahreheit =false)int hic =dht.computeHeatIndex(t、h、false); Serial.print( "湿度:"); Serial.print(h); Serial.print( "%\ t"); Serial.print( "温度:"); Serial.print(t); Serial.print( "* C"); Serial.print(f); Serial.print( "* F \ t"); Serial.print( "熱指数:"); Serial.print(hic); Serial.print( "* C"); Serial.print(hif); Serial.println( "* F \ n"); Serial.println( "\ nサーバーへの接続を開始しています..."); //接続を取得した場合は、シリアル経由でレポートを返します。if(client.connect(server、80)){Serial.println( "サーバーに接続"); client.print(F( "POST")); client.print( "/ update?key =apiKey&field1 =" +(String)h + "&field2 =" +(String)t + "&field3 =" +(String)f + "&field4 =" +(String)hic + " &field5 ="+(String)hif); String tsData ="field1 =" // ThingSpeakに与える長さが必要+(String)h + "&field2 =" +(String)t + "&field3 =" +(String)f + "&field4 =" +(String) hic + "&field5 =" +(String)hif; client.print( "POST / update HTTP / 1.1 \ n"); client.print( "ホスト:api.thingspeak.com \ n"); client.print( "接続:閉じる\ n"); client.print( "X-THINGSPEAKAPIKEY:" + apiKey + "\ n"); client.print( "Content-Type:application / x-www-form-urlencoded \ n"); client.print( "Content-Length:"); client.print(tsData.length()); //データ文字列の長さをtsclient.print( "\ n \ n");に送信します。 client.print(tsData); client.stop(); delay(1000); }} void printWifiStatus(){//接続しているネットワークのSSIDを出力します:Serial.print( "SSID:"); Serial.println(WiFi.SSID()); // WiFiシールドのIPアドレスを出力します:IPAddress ip =WiFi.localIP(); Serial.print( "IPアドレス:"); Serial.println(ip); //受信信号強度を出力します:long rssi =WiFi.RSSI(); Serial.print( "信号強度(RSSI):"); Serial.print(rssi); Serial.println( "dBm");} 
GitHubのコード
同じコードですが、GitHub for MKR1000https://github.com/sborsay/Arduino_Wireless/blob/master/MRK100_DHt_TS

回路図

DHTデータラインをMKR100ピン1(5番目のピンアップ)に配線します
5vとアースをDHTセンサーに接続します。どちらもMKR1000によって提供されます。

製造プロセス

  1. 専門家へのインタビュー:3Dfilemarket.comの創設者であるPhilip Cotton
  2. マンハッタンスカイライン:NXP i.MX8MMを備えたコンパクトなARMCOM
  3. Kontron:新しい組み込みコンピューティング標準COM HPC
  4. DHT Tiny Breakout for the Raspberry Pi
  5. ThingSpeak Temperature Monitor with Raspberry Pi
  6. Raspberry Pi、DHT11センサー、Thingspeakを使用して最初のIOTを構築します。
  7. Mkr1000 のピン配置:IoT プロジェクトに最適な選択肢
  8. Parts.Cat.Com のメリットと登録方法
  9. Shop.Cat.Com のガイド
  10. My.Cat.com を開始する
  11. ASTM A551 クラス DHT 熱処理済み