2

圧力センサーが正しく機能していることを確認するためのテストプログラムを作成しました。

int redpin = 10;
int greenpin = 9;
int bluepin = 8;
int presurepin = 0;

//Program variables
int time = 100;
int presure = 0;
int thresholddown = 19;
int thresholdup = 52;
int color = 0;
int red   = 0;
int green = 0;
int blue  = 0;
int relesepresure = 1;

void setup() {
  pinMode(redpin, OUTPUT);
  pinMode(greenpin, OUTPUT);
  pinMode(bluepin, OUTPUT);
  Serial.begin(9600);
}

void loop() {
  // Read presure
  presure = analogRead(presurepin);

  // For bug finding purpose
  delay(time);
  Serial.print(presure);
  Serial.print("   ");
  Serial.println(color);

  // High presure = 0 low = 300-500
  // If high presure change color and wait until presure is low to send out the color
  if (presure < thresholddown && relesepresure == 1){
    if (color == 0){
          red   = 0;
          green = 0;
          blue  = 0;
          color = color + 1;
    }
    else if (color == 1) {
          red   = 1;
          green = 0;
          blue  = 0;
          color = color + 1;
    }
    else if (color == 2) {
          red   = 0;
          green = 1;
          blue  = 0;
          color = color + 1;
    }
    else if (color == 3) {
          red   = 0;
          green = 0;
          blue  = 1;
          color = color + 1;
    }
    else if (color == 4) {
          // Yellow
          red   = 1;
          green = 1;
          blue  = 0;
          color = 1;

    }
    // Turn of light while tile is presured
    digitalWrite(redpin,   0);   // Write current values to LED pins
    digitalWrite(greenpin, 0);
    digitalWrite(bluepin,  0);
    relesepresure = 0;
  }
  else if (presure > thresholdup && relesepresure == 0){
      //Send color to tile
      digitalWrite(redpin,   red);
      digitalWrite(greenpin, green);
      digitalWrite(bluepin,  blue);
      relesepresure = 1;
  }
}

したがって、上記のこのコードでは、関数が赤、緑、青、黄色などを書き込むすべての時間を保存し、それをリアルタイムの棒グラフでコンピューター画面に表示します。Flot Examplesのようなものですが、バーがあります。

だから当然私はこのような何かをする必要があります:

else if (color == 3) {

      //Color3++;
      //Update the bar graph with the new values (Color1,0),(Color2,1), (Color3,2), (Color4,3) where the numbers inside the paragraph are the x,y values of the graph.

      red   = 0;
      green = 0;
      blue  = 1;
      color = color + 1;
}

Arduinoは非常に限られた言語なので、これをどのように達成できますか?これらの変数値を単純な.jsonファイルに書き込み、そこからjQueryを使用して読み取ることを考えていましたが、その方法もわかりません。よりスマートなソリューションはありますか?

ArduinoMegaを使用しています。

4

1 に答える 1

0

まず、JQueryとArduinoMegaの間で何かが起こっています。オプションのいくつかは次のとおりです。

  • USBケーブルを介してarudinoにアクセスし、phpなどのサーバーベースのテクノロジーを使用してアクセスします。これを行う方法の例がここにあります:

http://wanderr.com/jay/controlling-arduino-via-serial-usb-php/2010/12/28/

  • イーサネットまたはwifiシールドを使用して、選択した形式でデータを提供します。これはあなたのコストに約30-60ドルを追加しますが、このプロジェクトのarduino部分を自己完結型にし、それを実行するためにコンピューターを必要としません。

  • ワイヤレスにしたい場合は、BluetoothおよびZigbee受信機を調べることができます。このオプションを使用すると、サーバーとphpのようなものが必要になります。

  • フラッシュの場合、通常、シリアルソケットサーバーと呼ばれるものを使用します。Aruduino Playgroundには、これに関する詳細情報があります。jqueryを介して同じタイプのサーバーに直接アクセスすることもできます。これは最初のオプションと同様であり、コンピューターへの直接USB接続が必要になります。

別のことを試してみたい場合は、arduinoからデータを取得し、そのデータに基づいて何らかのビジュアルを作成する方法の例がたくさんあるので、処理と会社を調べることをお勧めます

于 2012-10-11T23:34:58.597 に答える