Bye Bye Moore

猫マンション建築の野望を胸に零細事業主として資本主義の荒波に漕ぎ出したアラサー男の技術メモ

つよつよIoTボードobnizがヤバい その2:IOをつかってLチカ

マイコンボードなら、Lチカが王道ですね。
obnizはその辺りもHTMLベースでやれます。
本当にすごいやつです。

実際のところ

一個だけ、ポート0とポート1にLEDをつけるサンプルは以下の通り。

<!-- HTML Example -->
<html>
<head>
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <script src="https://obniz.io/js/jquery-3.2.1.min.js"></script>
  <script src="https://unpkg.com/obniz@2.1.0/obniz.js"></script>
</head>
<body>

<div id="obniz-debug"></div>
<h1>LED</h1>

<script>
  var obniz = new Obniz("OBNIZ_ID_HERE");
  obniz.onconnect = async function () {
    var led = obniz.wired("LED", {anode:0, cathode:1});

    led.on();
  }
</script>
</body>
</html>

試しにLEDを増やしてみましょう。
つぎは2と3をつかいます。

<!-- HTML Example -->
<html>
<head>
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <script src="https://obniz.io/js/jquery-3.2.1.min.js"></script>
  <script src="https://unpkg.com/obniz@2.1.0/obniz.js"></script>
</head>
<body>

<div id="obniz-debug"></div>
<h1>LED</h1>

<script>
  var obniz = new Obniz("OBNIZ_ID_HERE");
  obniz.onconnect = async function () {
    var led = obniz.wired("LED", {anode:0, cathode:1});
    var led2 = obniz.wired("LED", {anode:2, cathode:3});

    led.on();
    led2.on();

  }
</script>
</body>
</html>

この"obniz.wired"というのが、あらかじめ設定された部品設定を楽を使うことができるようです。
少し凝った実装をするのであれば、obniz.ioXみたいな感じで一個一個設定する様子。
たとえば、LEDで0と1に繋いでいるなら

var obniz = new Obniz("OBNIZ_ID_HERE");
obniz.onconnect = async function(){
  obniz.io0.output(true);
  obniz.io1.output(false);
}

UIのボタンと連動したい場合、

<script>
$("#on").on("click",function(){
  led.on();
})
</script>

//...

<button id="on">ON</button>

【読書メモ】集中力のひみつ

集中力のひみつ

集中力のひみつ


shuzo-kino.hateblo.jp
の続編。

前作は緊張をとる演技メソッドでしたが、今回は集中力について。
舞台脚本風の書き方、癖のある登場人物……と、風味も引き続き。

集中力というと、周りの音が聞こえなくなるような過集中のことをイメージしがちですが
実際に上手くいき、かつ継続性のあるものは作業興奮ベースの方法論だ楽な方法に逃げるなボケという論調。

切り出すとキリがないほどには、気付きや学びの連続でした。
とはいえ、今の精神状態だから響いたのだろうなというのも、また事実。
プロジェクトが事実上炎上に終わって、再発防止策を探している今だから内容が沁みてきたのだろうなと。

【読書メモ】感情とはそもそも何なのか:現代科学で読み解く感情のしくみと障害

感情というものについて、脳科学の視点からみていく学術書です。

かるい気持ちで開いてみたのですが、制御工学でお馴染みのフィードバック図が出て来て仰天。
さらに、ページをめくると数式がゾロゾロでてきて二度仰天。

曰く、感情というのは「認識」と「実際」とのブレから生じる補正信号みたいなもので
心は平衡を保とうとこのブレが小さくなるよう動く仕組みがあると。
さらに、このブレの大きさを物理のエネルギー保存則にみたてて解釈する学問として
「自由エネルギー原理」というものがあるそうです。

www.slideshare.net

このズレが大きすぎるのが不安障害、小さすぎるのが鬱*1となる……と。

書いててオカルティックな感じがしますが、
VR業界でも割と活用されているような割と新しく、
注目されている理論のようです。

*1:というか無力感?

【イベントログ】東京おもちゃショー2019にいってきました

www.toys.or.jp

今回は場所が西になっていたためか、どうも小規模になった印象が。
土日に子供も入場する事を念頭においているため、道が広いのも余計にイメージを加速させたのかも……。
加えて、実に展示会なフードコーナーが一フロアに一個ありましたね……素のカレーが800円……!!!

あと、大手中小問わずプログラミング学習系の玩具が増えた印象があります。
やっぱり、そういう流れ来てるのかも……。


組み立てミニチュアハウス
store.robotime.com
同シリーズの動く版マーブルコースター
store.robotime.com
www.youtube.com

去年も出てたTOIOが強化されました
toio.io

あと……ジオニック社さんがザクをSTEM教育キットをだしてました。
……ほしい。
www.youtube.com

tputの文字装飾設定を消す、あるいは一行だけ適用する方法

実際のところ

そのまんま繋ぐだけなら、コマンドを指定すればいいです。
が、設定リセットしないとそのまま続きます。
というわけで、用が済んだら"tput sgr0"で綺麗にします。

$ tput sgr0

一行だけ適用する場合、";"で繋いで

$ tput bold; echo "This text has the bold attribute."; tput sgr0
This text has the bold attribute.

shellスクリプトででCtrl+Cで終了した時文字装飾を消したい場合

    trap 'tput sgr0 || clear; exit 0' SIGINT

参考もと

www.linuxcommand.org

tput コマンドで端末表示情報を取得したり文字装飾したりするのは

tputコマンドは列や行などの端末表示情報を取得するコマンドです。
また、暗黒エスケープ文字無しに文字装飾をやったりもできます。

実際のところ

列の文字数は

$ tput lines

行の文字数は

$ tput cols

背景を緑(色番号2)に

$ tput setab 2

f:id:shuzo_kino:20190612222042p:plain

参考もと