2020年9月10日木曜日
aruduino processingで色を読み取る
マウスの位置の色を読み取ります。
------------------------------------
import processing.serial.*;
import cc.arduino.*;
Arduino arduino;
PImage myImage;
void setup(){
size(640,480);
println(Arduino.list());
arduino = new Arduino(this,Arduino.list()[1],57600);
myImage = loadImage("image.JPG");
}
void draw(){
image(myImage,0,0,width,height);
color pixelColor = get(mouseX,mouseY);
float r = red(pixelColor);
float g = green(pixelColor);
float b = blue(pixelColor);
float rd = dist(255,0,0,r,g,b);
float gd = dist(0,255,0,r,g,b);
float bd = dist(0,0,255,r,g,b);
float yd = dist(255,255,0,r,g,b);
float [] list = {rd,gd,bd,yd};
float smallest = min(list);
arduino.digitalWrite(2,Arduino.LOW);
arduino.digitalWrite(3,Arduino.LOW);
arduino.digitalWrite(4,Arduino.LOW);
arduino.digitalWrite(5,Arduino.LOW);
if(smallest == rd )arduino.digitalWrite(2,Arduino.HIGH);
if(smallest == yd )arduino.digitalWrite(3,Arduino.HIGH);
if(smallest == gd )arduino.digitalWrite(4,Arduino.HIGH);
if(smallest == bd )arduino.digitalWrite(5,Arduino.HIGH);
}
--------------------------------------
------------------------------------
import processing.serial.*;
import cc.arduino.*;
Arduino arduino;
PImage myImage;
void setup(){
size(640,480);
println(Arduino.list());
arduino = new Arduino(this,Arduino.list()[1],57600);
myImage = loadImage("image.JPG");
}
void draw(){
image(myImage,0,0,width,height);
color pixelColor = get(mouseX,mouseY);
float r = red(pixelColor);
float g = green(pixelColor);
float b = blue(pixelColor);
float rd = dist(255,0,0,r,g,b);
float gd = dist(0,255,0,r,g,b);
float bd = dist(0,0,255,r,g,b);
float yd = dist(255,255,0,r,g,b);
float [] list = {rd,gd,bd,yd};
float smallest = min(list);
arduino.digitalWrite(2,Arduino.LOW);
arduino.digitalWrite(3,Arduino.LOW);
arduino.digitalWrite(4,Arduino.LOW);
arduino.digitalWrite(5,Arduino.LOW);
if(smallest == rd )arduino.digitalWrite(2,Arduino.HIGH);
if(smallest == yd )arduino.digitalWrite(3,Arduino.HIGH);
if(smallest == gd )arduino.digitalWrite(4,Arduino.HIGH);
if(smallest == bd )arduino.digitalWrite(5,Arduino.HIGH);
}
--------------------------------------
arduinoの画像の名前が「image.JPG」です。
LEDが点灯する色と、実際の色が違っていました。
何が間違っているのでしょうか。
aruduino processingとの連携
processingからarduinoを動かします。
まず、arduinoがコンピュータとつながっていないとダメです。
そして、arduinoの設定として、
「ファイル」→「スケッチ例」→「Firmata」→「Standard Firmate」を選択します。
これをしないとarduinoに配線されたLEDなどは反応しません。
次、processingの設定。
「スケッチ」→「ライブラリをインポート」→「ライブラリを追加」で、
「Arduino(Firmata)」をインストールします。
これらを設定しなければ、processingとarduinoは連携できませんでした。
なるほど。
まず、arduinoがコンピュータとつながっていないとダメです。
そして、arduinoの設定として、
「ファイル」→「スケッチ例」→「Firmata」→「Standard Firmate」を選択します。
これをしないとarduinoに配線されたLEDなどは反応しません。
次、processingの設定。
「スケッチ」→「ライブラリをインポート」→「ライブラリを追加」で、
「Arduino(Firmata)」をインストールします。
これらを設定しなければ、processingとarduinoは連携できませんでした。
なるほど。
2020年9月9日水曜日
VISUAL STUDIO 第9章 Visual C# 2019 デスクトップアプリ入門 終了
一気に終わりました。
完成です。
とはいうものの、1回目、第9章のタグを作成するところまではできたのですが、不用意な行削除をしてしまい、動かなくなりました。一度プログラムを書き込むと不用意に消すと取り返しがつかなくなります。
どこから削除すればいいのか、さらに調べなければなりません。
とりあえず、サンプルにたすけられながらやっとのことでできあがりました。
完成です。
とはいうものの、1回目、第9章のタグを作成するところまではできたのですが、不用意な行削除をしてしまい、動かなくなりました。一度プログラムを書き込むと不用意に消すと取り返しがつかなくなります。
どこから削除すればいいのか、さらに調べなければなりません。
とりあえず、サンプルにたすけられながらやっとのことでできあがりました。
ここで
「Visual C# 2019 デスクトップアプリ入門」 秀和システム
荻原 裕之、宮崎 昭世 作は最後まで来ました。
VISUAL STUDIO 間違いの訂正
ここまでやってきて、試しに項目を入れて表示されるか見たところ、
ダメ。登録できません。
念のため、サンプルを試してみたところ、こちらはきちんと表示されます。
しかたがないので、サンプルプログラムと自分が作ったプログラムを印刷して比較しました。でも、間違いはありません。
いったいどういうことなのでしょうか。
プログラムに間違いが無いとなると、第7章で設定下部分が違っていたのかもしれないと考え、第7章をそれとなく見ていると、
「Tips」という項目が418ページにあり、ここに「登録」ボタンと「キャンセル」ボタンの設定について説明がありました。
ここでした。
「登録」ボタンのDialogResultが「None」になっていて、指示は、「OK」にすることだったのです。これだけで思うように動いていなかった。
すごいですね。
下の図の右下のプロパティ画面です。
ダメ。登録できません。
念のため、サンプルを試してみたところ、こちらはきちんと表示されます。
しかたがないので、サンプルプログラムと自分が作ったプログラムを印刷して比較しました。でも、間違いはありません。
いったいどういうことなのでしょうか。
プログラムに間違いが無いとなると、第7章で設定下部分が違っていたのかもしれないと考え、第7章をそれとなく見ていると、
「Tips」という項目が418ページにあり、ここに「登録」ボタンと「キャンセル」ボタンの設定について説明がありました。
ここでした。
「登録」ボタンのDialogResultが「None」になっていて、指示は、「OK」にすることだったのです。これだけで思うように動いていなかった。
すごいですね。
下の図の右下のプロパティ画面です。
登録:
コメント (Atom)



