Arduinoから生き死をアナログデータで送って、imp で受信する方法
ツイッターに送信するサンプル。
impExplorer Kitを使った場合です。
Arduinoのプログラムは送信アナログで3V程度以内の通信にして下さい。
——————————————————————
Device
——————————————————————
#require "WS2812.class.nut:3.0.0" // スリ―プタイム const sleepTime = 60; //はじから3つ目のポート pot <- hardware.pinK; // アナログのポート宣言 pot.configure(ANALOG_IN); // ledの点滅 led <- null function flashLed() { led.set(0, [0,0,128]).draw(); // Wait 50 ms imp.sleep(0.05); led.set(0, [0,0,0]).draw(); } //サーバ側に送る function poll() { // Read the pin and log its value server.log("poll read"); local pot =pot.read() server.log(pot); agent.send("analog_reading.sent",pot); // 送ったらLED光る flashLed(); //impのサーバ待ち時間を設定 imp.onidle(function() { server.sleepfor(sleepTime); }); } // Start of program // Configure SPI bus and powergate pin for RGB LED local spi = hardware.spiAHSR; spi.configure(MSB_FIRST, 6000); led <- WS2812(spi, 1); poll();——————————————————————
Agent
——————————————————————// ツイッターにクラス #require "Twitter.class.nut:1.2.1" // ツイッターの送信 tweeter <- null; // Define functions function tweetback(data) { // ツイッター送った表示 server.log("Tweet tweeted"); } function motion(data) { server.log(data); if(data&amp;gt;100){ local message = format("まだ生きてるぜ[アナログ: %5u]",data); tweeter.tweet(message, tweetback); server.log(message); } else{ local message = format("死んだぜ[アナログ: %5u]",data); tweeter.tweet(message, tweetback); server.log(message); } } // Twitter の own access credentials // apps.twitter.comでキーをゲットしてね。 tweeter = Twitter("Consumer Key (API Key)***********", "Consumer Secret (API Secret)***********", "Access Token***********", "Access Token Secret***********"); // デバイスから受ける指定 device.on("analog_reading.sent", motion);株式会社アバンドでは、IoTに関するネットワーク開発、ハードウエア開発を行っております。