Arduino M0 Pro, ESP-WROOM-02, MILKCOCOAの接続後→ブラウザでデータ表示
解決済
回答 2
投稿
- 評価
- クリップ 0
- VIEW 1,294
前提・実現したいこと
前回質問させていただいた、「Arduino M0 Pro, ESP-WROOM-02, MILKCOCOAの接続完了→ データのブラウザ表示」
(https://teratail.com/questions/63890)に関連した質問です。
前回はセンサが一つでしたが、今回はハード側のセンサを4つに増加させました。milkcocoa上には、以下に示すように各センサからの出力が出てきていることを確認しました。
iyla1030KWCL5kW 2017-01-31 15:43:05 {"lightState3":1}
iyla0zyitLxxDgK 2017-01-31 15:43:05 {"lightState2":1}
iyla0zu2tJnebdZ 2017-01-31 15:43:05 {"lightState1":1}
iyla0zpowBAYjlU 2017-01-31 15:43:05 {"lightState":1}
従って、この結果を反映し、ブラウザ上に4つの画像の結果を出力できるようプログラムを書き換えたつもりでしたが、ブラウザに画像が表示されることはありませんでした。きっとhtmlやjavaに何か不具合があるのだと思います。お手数おかけいたしますが、何かアイデア等ございましたら、どうかよろしくお願いいたします。
発生している問題・エラーメッセージ
ブラウザにプログラム通りにフォルダ内の画像が表示されない。
該当のソースコード
// ライブラリの読み込み
#include "ESP8266.h"
#include "Milkcocoa.h"
#include "Client_ESP8266.h"
// 転送スピード
#define SERIAL_SPEED 115200
/************************* WiFi Access Point *********************************/
// Wi-Fi SSID
#define WLAN_SSID "・・・・・・"
// Wi-Fi PASSWORD
#define WLAN_PASS "e979・・・・"
/************************* Your Milkcocoa Setup *********************************/
// MilkcocoaのアプリID
#define MILKCOCOA_APP_ID "rea・・・・・"
// Data Store名
#define MILKCOCOA_DATASTORE "Mach・・・・・"
/************* Milkcocoa Setup (you don't need to change this!) ******************/
#define MILKCOCOA_SERVERPORT 1883
/************ Global State (you don't need to change this!) ******************/
// Create an ESP8266Client class to connect to the MQTT server.
ESP8266Client wifi;
const char MQTT_SERVER[] PROGMEM = MILKCOCOA_APP_ID ".mlkcca.com";
const char MQTT_CLIENTID[] PROGMEM = __TIME__ MILKCOCOA_APP_ID;
Milkcocoa milkcocoa = Milkcocoa(&wifi, MQTT_SERVER, MILKCOCOA_SERVERPORT, MILKCOCOA_APP_ID, MQTT_CLIENTID);
// センサーを接続するピン
const int sensorPin = A0;
const int sensorPin1 = A1;
const int sensorPin2 = A2;
const int sensorPin3 = A3;
// 光センサーの閾値
const int threshold = 500;
const int threshold1 = 300;
const int threshold2 = 300;
const int threshold3 = 300;
// 現在の明るさを保持
boolean nowSensorState = false;
boolean nowSensorState1 = false;
boolean nowSensorState2 = false;
boolean nowSensorState3 = false;
// 切り替え前の明るさを保持する
boolean sensorState = false;
boolean sensorState1 = false;
boolean sensorState2 = false;
boolean sensorState3 = false;
void setup() {
// パソコンとのシリアル通信のポートを開ける
Serial.begin(SERIAL_SPEED);
// Wi-Fiモジュールとのシリアル通信のポートを開ける
Serial1.begin(SERIAL_SPEED);
// Wi-Fi設定
setupWiFi();
// Milkcocoaへ光センサーの値がpushされた
milkcocoa.on(MILKCOCOA_DATASTORE, "push", milkcocoaPushDataHandler);
}
/*
Wi-Fiを設定します
*/
void setupWiFi() {
Serial.print("Connecting to ");
Serial.println(WLAN_SSID);
// シリアルポートの指定
wifi.begin(Serial1);
// Wi-Fiへ接続(成功するまで処理を繰り返す)
while (!wifi.joinAP(WLAN_SSID, WLAN_PASS)) {
delay(500);
Serial.print(".");
}
Serial.println("Wi-Fi connected");
Serial.println("IP address: ");
// Wi-FiのローカルIPアドレスをシリアルモニターへ表示
Serial.println(wifi.getLocalIP().c_str());
}
/**
* ループ処理
*/
void loop() {
// Milkcocoaのループ処理を実行
milkcocoa.loop();
// センサーの値
int sensorValue = analogRead(sensorPin);
int sensorValue1 = analogRead(sensorPin1);
int sensorValue2 = analogRead(sensorPin2);
int sensorValue3 = analogRead(sensorPin3);
Serial.print("Sensor Value : ");
Serial.println(sensorValue);
Serial.print("Sensor Value1 : ");
Serial.println(sensorValue1);
Serial.print("Sensor Value2 : ");
Serial.println(sensorValue2);
Serial.print("Sensor Value3 : ");
Serial.println(sensorValue3);
// センサーの値と閾値を比較
// nowSensorState = sensorValue > threshold;
if (sensorValue > threshold){
nowSensorState = true;
}
else{
nowSensorState = false;
}
if (sensorValue1 > threshold1){
nowSensorState1 = true;
}
else{
nowSensorState1 = false;
}
if (sensorValue2 > threshold2){
nowSensorState2 = true;
}
else{
nowSensorState2 = false;
}
if (sensorValue3 > threshold3){
nowSensorState3 = true;
}
else{
nowSensorState3 = false;
}
// 明るさに変化がなければloop()関数の始めに戻る
// if (sensorState && nowSensorState || !sensorState && !nowSensorState) {
// return;
// }
// Milkcocoaへ送信するデータを作成
DataElement elem = DataElement();
DataElement elem1 = DataElement();
DataElement elem2 = DataElement();
DataElement elem3 = DataElement();
// lightというデータ名で値を追加
elem.setValue("lightState", nowSensorState);
elem1.setValue("lightState1", nowSensorState1);
elem2.setValue("lightState2", nowSensorState2);
elem3.setValue("lightState3", nowSensorState3);
// Milkcocoaへデータを送信
milkcocoa.push(MILKCOCOA_DATASTORE, &elem);
milkcocoa.push(MILKCOCOA_DATASTORE, &elem1);
milkcocoa.push(MILKCOCOA_DATASTORE, &elem2);
milkcocoa.push(MILKCOCOA_DATASTORE, &elem3);
// 1秒処理を止める
delay(1000);
}
/*
* Milkcocoaへ光センサーの値がpushされた
*/
void milkcocoaPushDataHandler(DataElement *pelem) {
// 明るさの状態を更新
sensorState = nowSensorState;
sensorState1 = nowSensorState1;
sensorState2 = nowSensorState2;
sensorState3 = nowSensorState3;
}
//void milkcocoaPushDataHandler(DataElement *pelem1) {
// // 明るさの状態を更新
// sensorState1 = nowSensorState1;
//}
//
//void milkcocoaPushDataHandler(DataElement *pelem2) {
// // 明るさの状態を更新
// sensorState2 = nowSensorState2;
//}
//
//void milkcocoaPushDataHandler(DataElement *pelem3) {
// // 明るさの状態を更新
// sensorState3 = nowSensorState3;
//}
// Milkcocoa App ID
var MILKCOCOA_APP_ID = "readiyl7mu5n";
// Milkcocoa Data Store
var MILKCOCOA_DATASTORE = "MachineCondition";
// Milkcocoa
var milkcocoa = new MilkCocoa(MILKCOCOA_APP_ID + ".mlkcca.com");
// Milkcocoa Data Store
var dataStore = milkcocoa.dataStore(MILKCOCOA_DATASTORE);
// 運転中画面
var working = document.getElementById("working");
// 黄色停止画面
var yellowstop = document.getElementById("yellowstop");
// 赤色停止画面
var redstop = document.getElementById("redstop");
// 過去4?件のデータ取得
dataStore.stream().size(4).next(function (err, data) {
// 取得が成功したら
if (!err) {
var obj = data[0];
var obj1 = data[1];
var obj2 = data[2];
var obj3 = data[3];
// 明るさの状態を取得
var lightState = obj.value.lightState;
var lightState1 = obj1.value.lightState1;
var lightState2 = obj2.value.lightState2;
var lightState3 = obj3.value.lightState3;
// 画面の切り替え
changeView(lightState, lightState1, lightState2, lightState3);
}
});
// ArduinoからMilkcocoaに値がpushされたら
dataStore.on("push", function (data) {
// 明るさの状態を取得
var lightState = data.value.lightState;
var lightState1 = data.value.lightState1;
var lightState2 = data.value.lightState2;
var lightState3 = data.value.lightState3;
// 画面の切り替え
changeView(lightState, lightState1, lightState2, lightState3);
});
/**
* 画面を切り替えます。
*/
function changeView(lightState, lightState1, lightState2, lightState3) {
// 運転中
if (lightState = true || lightState1 = true) {
Working();
}
// 黄色停止中
if (lightState = true || lightState2 = true) {
YellowStop();
}
// 赤色停止中
if (lightState = true || lightState3 = true) {
RedStop();
}
// その他
else {
Others();
}
}
/**
* 運転中画面に切り替えます。
*/
function Working() {
working.style.display = "block";
yellowstop.style.display = "none";
redstop.style.display = "none";
others.style.display = "none";
}
/**
* 黄色停止中画面に切り替えます。
*/
function YellowStop() {
working.style.display = "none";
yellowstop.style.display = "block";
redstop.style.display = "none";
others.style.display = "none";
}
/**
* 赤色停止中画面に切り替えます。
*/
function YellowStop() {
working.style.display = "none";
yellowstop.style.display = "none";
redstop.style.display = "block";
others.style.display = "none";
}
/**
* その他画面に切り替えます。
*/
function YellowStop() {
working.style.display = "none";
yellowstop.style.display = "none";
redstop.style.display = "none";
others.style.display = "block";
}
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta name="robots" content="noindex">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Arduino & ESP-WROOM-02 & Milkcocoa & IoT DEMO</title>
<link rel="stylesheet" href="css/normalize.css" />
<link rel="stylesheet" href="css/index.css" />
<script src="//cdn.mlkcca.com/v2.0.0/milkcocoa.js"></script>
<script defer src="js/index.js"></script>
</head>
<body>
<div id="wrapper">
<!-- 運転中に表示させる画面 -->
<div id="working">
<img src="images/woriking.png" width="320" height="380" alt="" />
</div>
<!-- 黄色停止中に表示させる画面 -->
<div id="yellowstop">
<img src="images/yellowstop.png" width="320" height="380" alt="" />
</div>
<!-- 赤色停止中に表示させる画面 -->
<div id="redstop">
<img src="images/redstop.png" width="320" height="380" alt="" />
</div>
<!-- その他の場合に表示させる画面 -->
<div id="others">
<img src="images/others.png" width="320" height="380" alt="" />
</div>
</div>
</body>
</html>
試したこと
有効な手段が特に浮かばず。
補足情報(言語/FW/ツール等のバージョンなど)
Arduino M0 Pro
ESP-WROOM-02
MILKCOCOA
Arduino IDE 1.8.0
-
気になる質問をクリップする
クリップした質問は、後からいつでもマイページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
クリップを取り消します
-
良い質問の評価を上げる
以下のような質問は評価を上げましょう
- 質問内容が明確
- 自分も答えを知りたい
- 質問者以外のユーザにも役立つ
評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。
質問の評価を上げたことを取り消します
-
評価を下げられる数の上限に達しました
評価を下げることができません
- 1日5回まで評価を下げられます
- 1日に1ユーザに対して2回まで評価を下げられます
質問の評価を下げる
teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。
- プログラミングに関係のない質問
- やってほしいことだけを記載した丸投げの質問
- 問題・課題が含まれていない質問
- 意図的に内容が抹消された質問
- 過去に投稿した質問と同じ内容の質問
- 広告と受け取られるような投稿
評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。
質問の評価を下げたことを取り消します
この機能は開放されていません
評価を下げる条件を満たしてません
質問の評価を下げる機能の利用条件
この機能を利用するためには、以下の事項を行う必要があります。
- 質問回答など一定の行動
-
メールアドレスの認証
メールアドレスの認証
-
質問評価に関するヘルプページの閲覧
質問評価に関するヘルプページの閲覧
checkベストアンサー
+1
うーん、HTMLには"運転中"、"赤"、"黄"、"その他" というのがあるのですが、JavaScriptのコードで、
lightState, lightState1, lightState2, lightState3がこの"運転中"、"赤"、"黄"、"その他"のどれに当たるか、もしくはどのような関係なのかを聞きたかったのですが。
JavaScirptコードでは修正し忘れでしょうが、changeView関数で呼ぶ関数がすべてYellowstopという関数名となっているためわからなかったです。
青がその他なのかどうかはわかりませんが、とりあえず青をその他(others)として、
JavaScriptのchangeView関数を以下のように書き換えてください
function changeView(lightState, lightState1, lightState2, lightState3) {
// 室内照明
roomLight.style.display = lightState ? '' : 'none';
// 青ランプ
blueStop.style.display = lightState1 ? 'none' : '';
// 黄ランプ
yellowStop.style.display = lightState2 ? 'none' : '';
// 赤ランプ
redStop.style.display = lightState3 ? 'none' : '';
}
そして、HTMLを以下のように書き換えたら実行してみてください。
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta name="robots" content="noindex">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Arduino & ESP-WROOM-02 & Milkcocoa & IoT DEMO</title>
<link rel="stylesheet" href="css/normalize.css" />
<link rel="stylesheet" href="css/index.css" />
<script src="//cdn.mlkcca.com/v2.0.0/milkcocoa.js"></script>
<script defer src="js/index.js"></script>
</head>
<body>
<div id="wrapper">
<!-- 室内照明に表示させる画面 -->
<div id="roomLight">
<img src="images/woriking.png" width="320" height="380" alt="" />
</div>
<!-- 青色停止中に表示させる画面 -->
<div id="blueStop">
<img src="images/others.png" width="320" height="380" alt="" />
</div>
<!-- 黄色停止中に表示させる画面 -->
<div id="yellowStop">
<img src="images/yellowstop.png" width="320" height="380" alt="" />
</div>
<!-- 赤色停止中に表示させる画面 -->
<div id="redStop">
<img src="images/redstop.png" width="320" height="380" alt="" />
</div>
</div>
</body>
</html>
投稿
-
回答の評価を上げる
以下のような回答は評価を上げましょう
- 正しい回答
- わかりやすい回答
- ためになる回答
評価が高い回答ほどページの上位に表示されます。
-
回答の評価を下げる
下記のような回答は推奨されていません。
- 間違っている回答
- 質問の回答になっていない投稿
- スパムや攻撃的な表現を用いた投稿
評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。
+1
DataElementは一つでいいのでは?
投稿
-
回答の評価を上げる
以下のような回答は評価を上げましょう
- 正しい回答
- わかりやすい回答
- ためになる回答
評価が高い回答ほどページの上位に表示されます。
-
回答の評価を下げる
下記のような回答は推奨されていません。
- 間違っている回答
- 質問の回答になっていない投稿
- スパムや攻撃的な表現を用いた投稿
評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。
15分調べてもわからないことは、teratailで質問しよう!
- ただいまの回答率 88.21%
- 質問をまとめることで、思考を整理して素早く解決
- テンプレート機能で、簡単に質問をまとめられる
2017/02/01 18:47
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta name="robots" content="noindex">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Arduino & ESP-WROOM-02 & Milkcocoa & IoT DEMO</title>
<link rel="stylesheet" href="css/normalize.css" />
<link rel="stylesheet" href="css/index.css" />
<script src="//cdn.mlkcca.com/v2.0.0/milkcocoa.js"></script>
<script defer src="js/index.js"></script>
</head>
<body>
<div id="wrapper">
<!-- 運転中に表示させる画面 -->
<div id="working">
<img src="images/working.png" width="320" height="380" alt="" />
</div>
<!-- 黄色停止中に表示させる画面 -->
<div id="yellowstop">
<img src="images/yellowstop.png" width="320" height="380" alt="" />
</div>
<!-- 赤色停止中に表示させる画面 -->
<div id="redstop">
<img src="images/redstop.png" width="320" height="380" alt="" />
</div>
<!-- その他の場合に表示させる画面 -->
<div id="others">
<img src="images/others.png" width="320" height="380" alt="" />
</div>
</div>
</body>
</html>
(javaの文章)
// Milkcocoa App ID
var MILKCOCOA_APP_ID = "readiyl7mu5n";
// Milkcocoa Data Store
var MILKCOCOA_DATASTORE = "MachineCondition";
// Milkcocoa
var milkcocoa = new MilkCocoa(MILKCOCOA_APP_ID + ".mlkcca.com");
// Milkcocoa Data Store
var dataStore = milkcocoa.dataStore(MILKCOCOA_DATASTORE);
// 運転中画面
var working = document.getElementById("working");
// 黄色停止画面
var yellowstop = document.getElementById("yellowstop");
// 赤色停止画面
var redstop = document.getElementById("redstop");
// その他画面
var others = document.getElementById("others");
// 過去1件のデータ取得
dataStore.stream().size(1).next(function (err, data) {
// 取得が成功したら
if (!err) {
var obj = data[0];
var obj1 = data[1];
var obj2 = data[2];
var obj3 = data[3];
// 明るさの状態を取得
var lightState = obj.value.lightState;
var lightState1 = obj1.value.lightState1;
var lightState2 = obj2.value.lightState2;
var lightState3 = obj3.value.lightState3;
// 画面の切り替え
changeView(lightState, lightState1, lightState2, lightState3);
}
});
// ArduinoからMilkcocoaに値がpushされたら
dataStore.on("push", function (data) {
// 明るさの状態を取得
var lightState = data.value.lightState;
var lightState1 = data.value.lightState1;
var lightState2 = data.value.lightState2;
var lightState3 = data.value.lightState3;
// 画面の切り替え
changeView(lightState, lightState1, lightState2, lightState3);
});
/**
* 画面を切り替えます。
*/
function changeView(lightState, lightState1, lightState2, lightState3) {
// 運転中
if (lightState == true && lightState1 == true && lightState2 == false && lightState3 == false) {
Working();
}
// 黄色停止中
if (lightState == true && lightState1 == false && lightState2 == true && lightState3 == false) {
Yellowstop();
}
// 赤色停止中
if (lightState == true && lightState1 == false && lightState2 == false && lightState3 == true) {
Redstop();
}
// その他
else {
Others();
}
}
/**
* 運転中画面に切り替えます。
*/
function Working() {
working.style.display = "block";
yellowstop.style.display = "none";
redstop.style.display = "none";
others.style.display = "none";
}
/**
* 黄色停止中画面に切り替えます。
*/
function Yellowstop() {
working.style.display = "none";
yellowstop.style.display = "block";
redstop.style.display = "none";
others.style.display = "none";
}
/**
* 赤色停止中画面に切り替えます。
*/
function Redstop() {
working.style.display = "none";
yellowstop.style.display = "none";
redstop.style.display = "block";
others.style.display = "none";
}
/**
* その他画面に切り替えます。
*/
function Others() {
working.style.display = "none";
yellowstop.style.display = "none";
redstop.style.display = "none";
others.style.display = "block";
}
2017/02/01 18:51
こんにちはお世話になります。
コードの提供をいただきまして誠にありがとうございました。
ご提案いただきました通り、書き換えさせていただき、実行しました。
私の編集の仕方が悪かったのか、ブラウザには何も表示されませんでした。
ご参考までに、上記にこれまでの自分のコードを記載させていただきます。
arduinoのcコードにつきましてはこのコメントの後投稿させていただきます。
2017/02/01 18:51
#include "ESP8266.h"
#include "Milkcocoa.h"
#include "Client_ESP8266.h"
// 転送スピード
#define SERIAL_SPEED 115200
/************************* WiFi Access Point *********************************/
// Wi-Fi SSID
#define WLAN_SSID "Daimon5"
// Wi-Fi PASSWORD
#define WLAN_PASS "e9799b94b2f9"
/************************* Your Milkcocoa Setup *********************************/
// MilkcocoaのアプリID
#define MILKCOCOA_APP_ID "readiyl7mu5n"
// Data Store名
#define MILKCOCOA_DATASTORE "MachineCondition"
/************* Milkcocoa Setup (you don't need to change this!) ******************/
#define MILKCOCOA_SERVERPORT 1883
/************ Global State (you don't need to change this!) ******************/
// Create an ESP8266Client class to connect to the MQTT server.
ESP8266Client wifi;
const char MQTT_SERVER[] PROGMEM = MILKCOCOA_APP_ID ".mlkcca.com";
const char MQTT_CLIENTID[] PROGMEM = __TIME__ MILKCOCOA_APP_ID;
Milkcocoa milkcocoa = Milkcocoa(&wifi, MQTT_SERVER, MILKCOCOA_SERVERPORT, MILKCOCOA_APP_ID, MQTT_CLIENTID);
// センサーを接続するピン
const int sensorPin = A0;
const int sensorPin1 = A1;
const int sensorPin2 = A2;
const int sensorPin3 = A3;
// 光センサーの閾値
const int threshold = 500;
const int threshold1 = 800;
const int threshold2 = 800;
const int threshold3 = 800;
// 現在の明るさを保持
boolean nowSensorState = false;
boolean nowSensorState1 = false;
boolean nowSensorState2 = false;
boolean nowSensorState3 = false;
// 切り替え前の明るさを保持する
boolean sensorState = false;
boolean sensorState1 = false;
boolean sensorState2 = false;
boolean sensorState3 = false;
void setup() {
// パソコンとのシリアル通信のポートを開ける
Serial.begin(SERIAL_SPEED);
// Wi-Fiモジュールとのシリアル通信のポートを開ける
Serial1.begin(SERIAL_SPEED);
// Wi-Fi設定
setupWiFi();
// Milkcocoaへ光センサーの値がpushされた
milkcocoa.on(MILKCOCOA_DATASTORE, "push", milkcocoaPushDataHandler);
}
/*
Wi-Fiを設定します
*/
void setupWiFi() {
Serial.print("Connecting to ");
Serial.println(WLAN_SSID);
// シリアルポートの指定
wifi.begin(Serial1);
// Wi-Fiへ接続(成功するまで処理を繰り返す)
while (!wifi.joinAP(WLAN_SSID, WLAN_PASS)) {
delay(500);
Serial.print(".");
}
Serial.println("Wi-Fi connected");
Serial.println("IP address: ");
// Wi-FiのローカルIPアドレスをシリアルモニターへ表示
Serial.println(wifi.getLocalIP().c_str());
}
/**
* ループ処理
*/
void loop() {
// Milkcocoaのループ処理を実行
milkcocoa.loop();
// センサーの値
int sensorValue = analogRead(sensorPin);
int sensorValue1 = analogRead(sensorPin1);
int sensorValue2 = analogRead(sensorPin2);
int sensorValue3 = analogRead(sensorPin3);
Serial.print("Sensor Value : ");
Serial.println(sensorValue);
Serial.print("Sensor Value1 : ");
Serial.println(sensorValue1);
Serial.print("Sensor Value2 : ");
Serial.println(sensorValue2);
Serial.print("Sensor Value3 : ");
Serial.println(sensorValue3);
// センサーの値と閾値を比較
// nowSensorState = sensorValue > threshold;
if (sensorValue > threshold){
nowSensorState = true;
}
else{
nowSensorState = false;
}
if (sensorValue1 > threshold1){
nowSensorState1 = true;
}
else{
nowSensorState1 = false;
}
if (sensorValue2 > threshold2){
nowSensorState2 = true;
}
else{
nowSensorState2 = false;
}
if (sensorValue3 > threshold3){
nowSensorState3 = true;
}
else{
nowSensorState3 = false;
}
// 明るさに変化がなければloop()関数の始めに戻る
// if (sensorState && nowSensorState || !sensorState && !nowSensorState) {
// return;
// }
// Milkcocoaへ送信するデータを作成
DataElement elem = DataElement();
// lightというデータ名で値を追加
elem.setValue("lightState", nowSensorState);
elem.setValue("lightState1", nowSensorState1);
elem.setValue("lightState2", nowSensorState2);
elem.setValue("lightState3", nowSensorState3);
// Milkcocoaへデータを送信
milkcocoa.push(MILKCOCOA_DATASTORE, &elem);
// 1秒処理を止める
delay(1000);
}
/*
* Milkcocoaへ光センサーの値がpushされた
*/
void milkcocoaPushDataHandler(DataElement *pelem) {
// 明るさの状態を更新
sensorState = nowSensorState;
sensorState1 = nowSensorState1;
sensorState2 = nowSensorState2;
sensorState3 = nowSensorState3;
}
//void milkcocoaPushDataHandler(DataElement *pelem1) {
// // 明るさの状態を更新
// sensorState1 = nowSensorState1;
//}
//
//void milkcocoaPushDataHandler(DataElement *pelem2) {
// // 明るさの状態を更新
// sensorState2 = nowSensorState2;
//}
//
//void milkcocoaPushDataHandler(DataElement *pelem3) {
// // 明るさの状態を更新
// sensorState3 = nowSensorState3;
//}
2017/02/02 01:02