今回の意気込み

好奇心で突き進んで見る

何をセンシングするか?

身の回りの見えないものってなんだろう

・漫才中のお客さんの笑い声
→芸人さんによって後半畳み掛ける、序盤の掴みが大事などが目に見えて分かったら面白い

・風
→Twitterでバズってたしなあ・・・

・漫才中のお客さんの体温
→劇場で計らないといけない

・木の葉っぱの揺れ方
→残像が残ったら面白い

・自分の感情の上下
→Kibunlog的な自分が意識的に記録するのはある 感情が現れる無意識的な行動とかあるのかな

・空気の循環
→エアコンの風

・人間関係
→意外なつながり

身の回りの見えないものってなんだろう



・漫才中のお客さんの笑い声
→芸人さんによって後半畳み掛ける、序盤の掴みが大事などが目に見えて分かったら面白い
→テレビのネタ番組とかだと笑い声足されてたりするので難しそう
→R-1で物議をかもした「ひ〜ぃ」というやつなど

・風
→Twitterでバズってたしなあ・・・

・漫才中のお客さんの体温
→劇場で計らないといけない

・木の葉っぱの揺れ方
→残像が残ったら面白い

・自分の感情の上下
→Kibunlog的な自分が意識的に記録するのはある 感情が現れる無意識的な行動とかあるのかな

・空気の循環
→エアコンの風

・人間関係
→意外なつながり

見えないものを見ようとして〜

・光
→温度?、太陽光、照明、スマホの懐中電灯、

う~んやっぱ笑い声を可視化したいな

amazonで売っててワロタ 笑い声が聞こえるほどこれが上がるてきなアニメーション

はじめてのArduino

・grasshopper回で学んだ通りいきなり自分がつくりたいものをつくろうとして色々調べると、「できない!」→「焦る」→「つらい」となるのではじめは何ができるのか色々やってみることにする

・後半戦のarduinoでモーターを使うっぽいので少し予習をしておいたらきっと未来の自分が助かる

Elegoo UNO キット レベルアップ  チュートリアル付 uno mega2560 r3

正規品ではないのでちょっと不安だったけど安かったのでこれにしてしまった

https://www.amazon.co.jp/gp/product/B06XF2HZGT/ref=ppx_yo_dt_b_asin_title_o01_s00?ie=UTF8&psc=1

Arduino UNO R3 透明 アクリル エンクロージャー ケース 薄型 コンパクト

  • 調べていると、ケースがあったほうがいいらしいので、アクリルケースを買う
https://www.amazon.co.jp/gp/product/B015LZWBY6/ref=ppx_yo_dt_b_asin_title_o01_s01?ie=UTF8&psc=1

あとはマイクコンデンサーを買う

とどくのが遅そうなので秋葉原いくか・・・

https://www.amazon.co.jp/gp/product/B0786FKG7N/ref=ppx_yo_dt_b_asin_title_o00_s00?ie=UTF8&psc=1

キットは1日で届いた

うおう・・・英語・・・

(1)Lチカ実践

https://www.elegoo.com/download/

Elegoo公式サイトからチュートリアルをダウンロードしてやってみる

抵抗の大きさはストライプの色を見ればわかる

むずかし・・・・?

つないでみた

・ジャンパー線(Arduinoとブレッドボードを接続する
・ブレッドボード
・LED
・抵抗

でチカチカさせる

ついた!

1回つかなかったが、LEDの挿す位置がずれていたからだった
同じ列にジャンパーワイヤーを刺さなくちゃいけないみたい

抵抗を220、10Kで変えてみたら輝度がはっきり異なった

コード

int は変数 じぶんで変数名を決める
光をだすよ〜でOUTPUT
digitalWriteでなにでかきだすか、HIGHは電流を流す

(2)RGBLED


色を変えてみる1

切り替わる時間を指定する 1secで切り替え
delay 10

👇0~255で色を指定する
rebValue = 10
greenValue = 10
blueValue =10

赤→緑→青

(3)タクトスイッチを利用したデジタル入力


右のスイッチを押すとLEDが点灯
左のスイッチを押すとLEDが消灯

もし、AがLOWだったら、押された時にHIGH(電流を流す)
もし、BがLOWだったら、押された時にLOWが書き込まれる

INPUT_PULLUPがよくわからない

https://dd15038.hatenablog.com/entry/2018/07/04/012113

(4)傾斜センサーを使う

センサーってこんなに小さいのか・・・

中に入っているボールが転がって角度を測るらしい。

傾ける、傾けないでON・OFFの切り替えをできる

倒れちゃいけないもの、ストーブなどで使える

正確な数値で傾きをとるためには加速度センサー

+-極性はない

シリアル通信について

PCを介してLEDやセンサを制御するときの通信。

チルトスイッチの原理

中の球が円筒に触れることによって電流が流れる

jumperwireは種類がある

1枚目、F to M wire 
2枚目、M to M wire

傾けたらLEDを消灯するようにする

https://omoroya.com/arduino-lesson08/

これを参考にする

ついた!

傾けると消灯
直立させると点灯

→逆の方がよさそう、傾けるとアラート的に消える
 


つく、つかない、0・1でなのでビジュアライズしても面白くないかな〜どうだろう 

(5)サーボモータを使う


(5)サーボモーターをうごかす

配線した

回る〜

servo1.write(140); →角度
delay(1000); →1 秒ずつ角度を変える

servo1.write(10); 
delay(1000); 

servo1.write(90);
delay(1000); 

足を動かすおもちゃとかできそう、角度90,180を繰り返すとか

これだと動かない

動く角度を変えないと動かない

(6)超音波センサー

配線

端子の説明

  • Vcc – 電源入力
  • Trig – トリガー 超音波出力用の信号を送信
  • Echo – エコー 超音波入力用の信号を受信
  • GND – グランド

仕組み

片方のスピーカーから超音波を発し、跳ね返ってきた超音波をもう片方で拾うことで距離を図る

ライブラリをダウンロードした方が簡単らしい

https://novicengineering.com/newping%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6%E8%B6%85%E9%9F%B3%E6%B3%A2%E3%82%BB%E3%83%B3%E3%82%B5%E3%81%A7%E8%B7%9D%E9%9B%A2%E6%B8%AC%E5%AE%9A/
これを参考に、

https://edukits.co/explainer/installing-newping-library-arduino-software/

#includeする

ツール→ライブラリ NewPingを読み込む

できない マイコンに書き込めないと出る

エラーが出る・・・!

マイコンボードに書き込もうとしましたが、エラーが発生しました。
このページを参考にしてください。
http://www.arduino.cc/en/Guide/Troubleshooting#upload

これだとダメ

#include <NewPing.h>

#define PIN 2
#define MAX_DISTANCE 200
 
NewPing sonar(PIN,PIN, MAX_DISTANCE);
 
void setup() {
  Serial.begin(9600);
}
 
void loop() {
  delay(70);
  Serial.print(sonar.ping_cm());
  Serial.println("cm");
}

NewPingを使わないコードにする


参考
https://algorithm.joho.info/arduino/ultrasonic-distance-sensor-hc-sr04/

またエラー

なんで・・・

シリアルポートがそもそも読み込まれていない説がある

さっきまでできてたのに〜〜〜!

再起動してもダメだったので設定からインターネット

赤くなっているのを全て削除

参考
https://qiita.com/ryusukefuda/items/5b2edea6b62794069209

でてきたー!

無事回復

シリアルモニターを開く

全然数値取れてない泣

コードではなくシリアルポートが原因だったので元のコードにする


でてきた〜!

すこし誤差はあるけどだいたいでてる

配線


(7)温度センサー

配線した

温度センサーってこんなに小さいのか

なくしそう

こいつは何?

ポテンショメーターor可変抵抗器 というらしい
つまみを回すと電圧を変えられる

参考
https://omoroya.com/arduino-lesson12/

温度表示されない

液晶光るのみ

elegooから引っ張ってきたcodeをコピペしただけなのだけど・・・別のcodeでやってみよう

そして温度センサーを外してまずディスプレイがだけで見れるか試してみよう

と思ったが、可変抵抗器の位置がよくなかったらしい

つまみをひねったらついたー!

countも1secごとにされる👏

参考
https://www.youtube.com/watch?v=C3T_wpgReSA

thermistorをつけてみた

一応数字は変化するが・・・バグった数字がでるぞ

そんなわけない

摂氏でなく華氏で表示されている説があるがそれにしてもバグ

わからないので温度・湿度センサーDHT11に切り替えよう・・・・

(6)温湿度センサー(DHT11)

配線した
温湿度をLCDに表示させたいけど
つかない・・・・!

熱くなっているので通電はしているっぽい

配線し直してもダメなのでLCDは諦める、DHT11から数値が取れるか確認する

配線を全撤去した後に気がついた・・・またシリアルポートが認識されていない!!!これやん!!!

と思ってたけど

USB挿し直したら認識された・・・なんやねん・・・まじで焦った


【つながらないな?と思ったら】
1.USBをさしなおす
2.環境設定→インターネットでwi-fi以外消す
3.再起動

真っ白なんだが😢

温度の数値がだらだら〜〜っと出るはずだった

違うcodeでやってみる

センサーが死んでいないことはわかったが、non%といって数字を吐き出してくれない・・・なぜ・・・

参考
https://qiita.com/13ryuji/items/b4ac5581b828ca11632b

心折れそう

参考
https://omoroya.com/arduino-lesson11/

折れた音がした

codeを変えてまた。シリアルモニタを押すのが怖くなってきた センサーがお亡くなりになっているのか?
参考
http://xn--ccke1di9d4h.com/blog/arduino_stady_2_4/

一旦切り替えて何を作るか決めよう・・・

ここまできてしまったが

(8)懲りずに光センサー

明るいところに置くと、抵抗値が低くなる

光センサーを指で隠すと光が弱くなる

お〜一発でいけた

参考
https://deviceplus.jp/hobby/entry_005/

光量を取得する

int val=0; //入力される値を格納する為の変数
void setup() {
Serial.begin(9800); //モニターに出力するための設定
}
void loop() {
//ANALOG INの0番ピンからデータを受け付ける
val=analogRead(0);
Serial.println(val/4); //入力された値をモニターに出力
delay(100);
}

また真っ白!シリアルモニタ怖い!

再起動して配線し直したらできた・・・

5Vのつなぎがずれていたかも

あれ・・・?指被せてもずっと255

参考
https://www.fabshop.jp/cds%E3%82%BB%E3%83%B3%E3%82%B5%E3%81%A7%E6%B8%AC%E3%81%A3%E3%81%9F%E6%98%8E%E3%82%8B%E3%81%95%E3%82%92%E3%82%B7%E3%83%AA%E3%82%A2%E3%83%AB%E3%83%A2%E3%83%8B%E3%82%BF%E3%81%AB%E8%A1%A8%E7%A4%BA/

だめだ・・・


できた!

またcodeをかえてみたら数値が変わった〜いえ〜い

ただなぜか、上のように光を多くすると数値が下がる。上がって欲しい。



参考
http://arakaze.ready.jp/archives/4230

(9)マイクコンデンサー

やりたかったけどパス・・・!来週は使いたい

(10)温度センサーThermistorを使う

またつながらなくなったがUSBさしなおしたら治った 落ち着け

電圧を確認

しっかり表示してくれるシリアルモニタが久々だったので泣きそう

参考
http://www.shangtian.tokyo/entry/2018/08/07/101847

DHT11のリベンジ

ライブラリをみてみる

.cppは処理
.hは定義
がまとめられている

C++が使えないとどうしようもないよ

でもやっぱり0を吐き出し続ける 諦めよう 
こんど君とはゆっくり話し合おう

まとめ

・Arduino接続悪い、まずはUSBを挿し直そう

アイデア出し


温度で変化するものを片っ端からあげる


・さむそうな女の子、マフラー、コーヒーふーふーする、あっためる ・あっためると鳥が羽化する ・アイスクリーム、ソフトクリームが溶ける ・Macbookの熱さを可視化 休ませてあげましょうみたいな りんごの汗かかせるか 食べさせる →でもすでにデジタル上に数値しっかり記録されてるな意味ないか ・おべんとうの保冷剤 もうすぐで腐ります ・温める動作にもなにか意味をもたせたい

ProcessingとArduinoを連携させる


環境を整える

スケッチ例→Standard Firmataを追加
スケッチ→Firmataライブラリを追加
http://toboli.hatenablog.com/entry/2018/10/19/193823

数値の取得

シリアルポートに付与されている数字っぽいところを4から3に変更したらすごい勢いで流れる数字がでてきた 光センサーの値のはず。

明るさによって変化する円をつくる

元のコードは二つの値をひっぱってきていたので、
変数diameterのみにし、大きさだけを変化させる

参考https://yoppa.org/tau_bmaw13/4772.html

でっででできた・・・・!!

1枚目が暗くした時、2枚目が明るくした時。

やったぜ〜〜!!なんかとっても嬉しい リアルな空間の情報が自分の手によって画面上に表現されたという事実なかなか趣深い

ただ心臓みたいにバクバク動くのでそれが心配。自然光とか人口光とか色々混ざって一定量の光をうけとってないよなあ
delayを調節すればいいのか

でもこうやって目に見える形にしないとそれもわからん・・・・!光って本当に波なんだな!!

紫外線センサーとかあるのかな、それで日焼け注意報とかだせたら面白い

色を変えてみたりする

たのしい。

プレビュー表示まで時間がかかるので緊張感がえぐい。

日本語が文字化けするのをなおす

コメントアウトで日本語使えないのけっこう辛い環境設定からMenloというフォントを選ぶ

sketchfolderにdataファイルをつくる

そこにpngの画像を入れる

画像を表示しようとcodeをかいていたら

import cc.arduino.*;
Arduino arduino;
int input0 = 0;

void setup() {
 size(1280,720);
 arduino = new Arduino(this, Arduino.list()[3], 57600);
}

void draw() {
  background(0);
  //arduinoからセンサーの値をとる
  int analog0 = arduino.analogRead(input0);
  text("input0 = " + analog0, 10, 20);
}

arduinoではしっかり数値出せてる

・ピンをさしなおす→×
・コードコピペし治す→×

悲しいのでサーミスタに変更

無事温度が書き出された

参考
https://blogs.yahoo.co.jp/nobita_rx7/28695194.html

ArduinoとProcessingの関係性がよくわかっていなかった

でたー!thanks りなちゃん

Arduinoで一旦StarndardFirmataを実行してからProcessingにうつったらできた。Arduinoで書いた温度を確かめるためのコード自体がProcessingでも必要なのかと思ってた 連携のされ方がよくわかってない

イラレでイラストをかく

すけっちを書いて適度な溶け具合を演出する

スケッチをかく

イラレに取り込む

ブラシでなぞっていい感じにする

後半が猫っぽいのでねこにする

8まいつくった

ネッシーバージョンも作成


はじめてのProcessing

はじめまして仲良くしてください

デザインとプログラミングのサイトを見ながら練習する

https://yoppa.org/sfc_design17

if()を使って数値によって表示されるイラストを変える

if(analog0 < 540){
    
    image(i1,100,100);
   
  }else if(540 <= analog0 && analog0 < 550){
    
    image(i2,100,100);

〜〜略

のようにひたすら繰り替えす 情基礎以来のif文、寒気がする

うっ動いた・・・・・!

https://youtu.be/TQafGzPYZ-8

急に溶けちゃう

中間の猫になる前のこのイラストが飛ばされる

不等号が逆でした

自分で見てると気づかないもの・・・

ネッシー

https://youtu.be/2042uooJ-j8

アイス

https://youtu.be/tiw6RYm7UW8

今回の学び


まず何かを持っていかねばという強迫観念

・プログラミング言語、理解にひどく時間がかかる。ゆとりを持った計画を。
・徐々に完成に持っていく急に最終形態を目指さない

時間の使い方

・だんだんと早く失敗したいというはじめての欲求が生まれてくるようになった、失敗しないと完成しないというのを身を以て実感して、早く失敗しないと完成に近づかないという認識が育ってきたからかもしれない

・コードを理解している時間をとるかとりあえずいろんなセンサーを使う時間を取るかで迷った もうすこし早く手をつければいい話だけれど

・問題を追求する能力が低すぎてワロタ すぐ違う解決策に逃げる いいのか悪いのか

・センサーやprosessingをいじるほどに、何も知らなかったあのときのわたしが考えたアイデアが今の自分では夢物語と知り、創作モチベがいつの間にかいなくなっている 道具を先に知る方がよいかも

プログラミング

・C++、javaなどの前提知識がないので手間取った processingちゃんとやりたい
・書いたまま動くと思ったらけっこう可愛いやつなのではないだろうかと思い始めた(potterbotの悪夢)
・何を作りたいか考えたから取りかかる方がスムーズにいくのかもしれないが、この道具でなにができるのかお道具箱を広げて全部見てからなにをするか決めた方が自分にはあっているような気がした 時間かかるけど

刺さった

・とりあえずなにかをやってみてどれくらいかかるか知ってからやった方が良い
・水曜日にはなにかしらつくる、くらいの勢いがよい 未知なことに対してどれくらい難しいのかはやらなきゃきけない

あたらしいことやるのはたのしい