福野泰介の一日一創 - create every day

ALL ABOUT ベーマガIISP in 大阪 & メイカーズバザール大阪Vol.5 戦利品とIchigoJam Webフォント

2018/07/08
#maker #osaka #IchigoJam 

かつて多くのパソコン少年を魅了した、ベーマガこと、マイコンベーシックマガジン。
大規模オフ会的なイベント「ベーマガ | 日本 | ALL ABOUT マイコンBASICマガジンⅡSP in 大阪
3回目は大阪開催!

歴代ベーマガのアイコン、電子工作マガジン内で復刊したベーマガアイコンは何代目でしょう!?


ベーマガのレジェンドな方々!


会場、満員!出演者入場シーンは写真撮影OK!


電波新聞社の新社長、平山さんと、伝説のベーマガ編集長、大橋さん!
東京、五反田にも誕生、PCN五反田PCN大阪の森さん、共立電子の長者原さん


ラズパイでSimleBASICPi STARTER発売!小林ハカセにサインもらいましたっ


イベントといえば、Tシャツ&タオル!PCNタオル、IchigoJamタオルとか良いかも


ガチャ、完売!


なんと、ベーマガ販売も! by BEEPさん


コモドールのディスプレイに映るIchigoJamがうれしい、共立さんブース


同時開催のメイカーズバザール大阪!


全ピンの波形が見えて、結線をPCからコントロールできる次世代ブレッドボード「Programabble Breadboard
これは欲しい!


動きに合わせて球を回転させることで、無限観測できるダンゴムシ。光に合わせてどう動く!?
リアルとバーチャルの境目が曖昧になっていく感じがおもしろい。


レンダや、波動拳コマンドで100Vのスイッチを入れるマシン!電子工作力があれば、家電もおもちゃ!


琵琶湖で開催されている自律ボートロボコン「びわ湖クルーレス・ソーラーボート大会公式サイト


DJI主催、深センで開催されている、なかなか激しそうなロボコン「ROBOMASTER」のごついろぼ!


PCN上田&PCN三重&共立さん!


PCN上田、IchigoJaManブース


IchigoJam用各種基板を購入!


星型LED基板、LED Starを早速組み立て
好きな色のLEDを、好きな大きさの抵抗で光る明るさを調整して、組み立て可能


くるくるまわって、ランダムな場所で止まる、星型ルーレットのプログラムはこちら!

10 FOR W=20 TO 2 STEP -1 20 GOSUB 100 30 NEXT 40 FOR I=0 TO 30+RND(40) 50 GOSUB 100 60 NEXT 70 FOR W=2 TO 20 STEP 2 80 GOSUB 100 90 NEXT 92 IF N=0 PLAY"T400O5CEGCEG" 95 IF BTN()=0 CONT ELSE RUN 100 N=(N+1)%5:OUT 1<<N:BEEP 4,4:WAIT W:RETURN

IchigoJam フォント TrueType を、WOFFコンバーター(武蔵システム)を使って、ブログ中のIchigoJamプログラム表示をWebFont化してより見やすくバージョンアップ!

IchigoJam WebFont: IchigoJam-1.2.woff / IchigoJam-GRAPH.woff
CC BY IchigoJam http://ichigojam.net/ / BALLOON a.k.a. Fu-sen. http://15jamrecipe.jimdo.com/
WebFonts - W3C - Webフォント、ブラウザ上で使えるフォントデータ)

熱中症対策を自動化しよう! ウェアラブル扇風機 BodyFan をIchigoJamで制御する

2018/06/24
#IchigoJam #maker 

暑い日の外、注意したい熱中症。
LinkDataの豊田さん開発、襟に掛けて中から冷やす、ウェアラブル扇風機「BodyFan
温度湿度に合わせて自動的にスイッチが入ると便利かも?ということで、IchigoJamによる制御実験。

開けて見ると、上部にちょっとしたスキマ。高精度な温度計とLPC1114FDH28を小さくまとめればぎりぎり入るかも?

取り急ぎシンプルに電源スイッチを横取りして、IchigoJamのOUT1で制御するには、この位置に接続。
(モーターを制御するPWM信号線を探して、なつかしの 1/f ゆらぎ出力などにも挑戦したい)

ボタンの片側は電源電圧3.7Vでプルアップされていて、押すとGNDになる標準的なタイプ。
IchigoJamから下記命令でスイッチを押したことなる。

OUT1,0:WAIT3:OUT1,0

ただ、このままでは電源投入時に毎回押したことになってしまうのと、出力時の電圧差が気になるので、IN1へ接続し、INと0出力の切り替えが良さそう。

OUT8,0:WAIT3:OUT8,-1

えりかけ扇風機、はんだづけ時の煙回避にも便利かも。
レッツ、ウェアラブル家電ハック!

links
- えりかけ扇風機BodyFan|ヘルメットファン|熱中症対策研究所
- Amazon | えりかけ扇風機 BodyFan(服の中へ送風可能)首かけ/手持ち/日傘/ベビーカー兼用 USB充電池式 携帯扇風機 (3インチファン, 白) | Cools.jp | 携帯扇風機 通販

指先ひとつで操るコンピューター! ジェスチャーセンサー APDS-9960 on IchigoJam

2018/05/29
#IchigoJam #maker #KidsIT 

魔法のように指先一つで自在にあやつるシクミに役立つジェスチャーセンサー。

秋月電子で売っている「APDS-9960使用光学式ジェスチャーセンサモジュールキット(600円)」が意外と簡単に使えて楽しいです。


指の動きが画面に反映されているのが分かります。

プログラムはこちら

10 POKE#700,65:IF I2CW(#39,#80,#700,1) STOP 20 POKE#700,1:IF I2CW(#39,#AB,#700,1) STOP 30 U=I2CR(#39,#FC,#700,4):Y=PEEK(#701)-PEEK(#700):X=PEEK(#702)-PEEK(#703):CLS:LCX+16,Y+12:?"O";:CONT

10行、20行でジェスチャーセンサーを有効にして、30行で上下左右のセンサーの値を取得し、差分をとってXY座標として表示させています。

生のデータを見たい場合はこちら

30 U=I2CR(#39,#FC,#700,4):?PEEK(#700),PEEK(#701),PEEK(#702),PEEK(#703):CONT


いろいろ使えそうで、わくわくしますねっ

APDS-9960使用光学式ジェスチャーセンサモジュールキット」は、LEDとVCCをIchigoJamの3.3Vへ、GNDはGND、SCLはSCLまたはEX1、SDAはIN3へそれぞれつなぎます。 (単独で使用する場合、裏面JP1/JP2をはんだづけしてプルアップ抵抗を有効にしておきましょう)

IchigoJam対応ユニバーサル基板を使って、オリジナルのシールドにしたり、CN5に接続したりすると便利です。

また、このセンサー、RGBの値を返してくれる色センサーもついています。
白色LEDと合わせて使えば、色を読み取る1bitカラースキャナーが実現できます。

10 POKE#700,3:IF I2CW(#39,#80,#700,1) STOP 20 ?I2CR(#39,#94,#800,8),[0],[1],[2],[3]:CONT

RGB、各色0から1025の値が返ってきます。
センサー感度は、4倍、16倍、64倍にも設定可能

POKE#700,`01:?I2CW(#39,#8F,#700,1):' x4 POKE#700,`10:?I2CW(#39,#8F,#700,1):' x16 POKE#700,`11:?I2CW(#39,#8F,#700,1):' x64

もっと詳しく知りたくなったら、データシートやセンサーの型番で検索したいろいろな作品例と照らし合わせながらあれこれ遊んでみましょう。 センサーが自在に使えると、今まで知っているスキルとの掛け合わせでどんどんできることが増えて夢広がりますよっ。

links
- APDS-9960使用光学式ジェスチャーセンサモジュールキット: 組立キット 秋月電子通商 電子部品 ネット通販

難解アナログ回路へ挑戦、音量測定サウンドモニターボードづくり for IchigoJam

2018/05/21
#IchigoJam #maker 

電源回路の奥深さに触れたネコゴハンマシン。苦手克服のために、共立電子のIchigoJam電子工作パーツセットサウンドレベルメータ」を解析、ユニバーサル基板での実装にチャレンジ。 aitendo大型マトリックス(8x8/I2C)と組み合わせて、なんとなく音量測定サウンドモニターはできました。

音の大きさをマトリックスLEDに表示します。


サウンドレベルメーターの音量検出部分、抵抗値やコンデンサの値を変えながらオシロスコープで観察。


使う部品を決めたので、次は、組み立て。IchigoJamのピン配置がかかれたaitendoのユニバーサル基板、便利!
抵抗 10kΩ、1MΩ、4.4kΩ
コンデンサ 0.1uF x 2
トランジスタ 2SD468
コンデンサマイク WM-61A相当
長ピンソケット 1x14 x2
ユニバーサル基板 P-JAM-EXT-U by aitendo新型基板サイズも


回路図から、ユニバーサル基板での配置を考える時に便利なツール、紙と鉛筆!
使うピンは、アナログ対応のIN2、VCC、GNDの3つだけ。


部品を順番にはんだづけしていきます


できあがったサウンドモニターボードの裏面。リード線をうまいこと使うと楽できます。


IchigoJamに耳が付いたので、「LEDつけて」と大きな声でお願いすると、LEDがつけられます。

10 IF ANA(2)<400 CONT 20 LED1


動画のサウンドモニターのプログラムはこんな感じ。

1 ?I2CW(#70,#21)+I2CW(#70,#81) 2 S=" SOUND MONITOR":FORJ=0TOLEN(S)-1:C=ASC(S+J):FORI=0TO7:[I]=PEEK(C*8+I):NEXT:?I2CW(#70,0,#800,16):WAIT15:NEXT 5 S=0:N=100:FORI=1TON:S=S+ANA(2):NEXT:V=S/N:?V 10 N=10:S=0:FORI=1TON:A=ABS(ANA(2)-V):S=S+(A-S)*(A-S>0):NEXT 20 B=(1<<(S/30))-1 25 FORI=0TO6:[7-I]=[6-I]:NEXT 30 [0]=B 40 ?I2CW(#70,0,#800,16) 50 GOTO10

1行、8x8マトリクスの初期化
2行、タイトル表示 SOUND MONITOR
5行で平均をとって0位置を計測
10行、10サンプルとって最大値を求める
20行、8x8マトリクスに合うように変換
25-30行、スクロール処理
40行、表示
50行、サンプル取得へ繰り返し


秋月電子の高感度マイクアンプキットは3ピン接続だけでお手軽ですが、電源のノイズを大きく拾ってしまうので、波形のきれいな単3電池を使うなど、一工夫いります。

電源、奥深い!


シリコンバレー在住、福井好きのホワイトハッカー、あみるを囲んで福井の未来の語り合い。福井の、日本の、世界のIT力、どんどん上げていきましょー!

IoTネコライフ、ネコゴハンマシン改修とIchigoJam組み込みテクニック

2018/05/20
#IchigoJam #maker 

我が家のネコエサイノベーション、初代はシンプルなカウンター、二代目はぴったり時刻に開くマシン
プリンの箱のまま、1年近く問題なく稼働してましたが、ついにケースに収まりました。

隙間に、DIP化されたLPC1114のマイコンモジュール(350円)を使って収めます。

ソレノイドを動かすための巨大な大きなコンデンサ(6800uF 10V)は、元のマシンから拝借。作動時に電圧が大きく下がってしまうため、制御部分との電源共有化は断念、電源ケーブルは2本出しとなりました。

ソレノイドを動かすためのリレー。リレーを駆動するMOSFET、MOSFETを制御するIchigoJamからのマイコン信号。小さな電気信号を少しずつ大きな力に変えています。

リアルタイムクロック(RCT)モジュールをI2Cで接続できるように配線も合わせてユニバーサル基板に実装が意外と配線が多い!このくらいの規模でも、Upverterで作って基板頼んだ方が効率は良さそう。でも、その場でガシガシはんだづけして作る楽しさは格別。


マイコンモジュールを使った注意点としては、左右の電源とGNDをジャンパ線でつないでおくこと。電圧差が発生し、うまく自動起動しない状態になりました。

SLEEPコマンドを使う場合、BTNピンを1MΩでプルアップするのを忘れずに!自動起動前提で使う場合は、BTNをGND接続でOKです。シリアル接続でESCキーコード送信でメンテナンス可!

あとはシリアルで接続して、IchigoJamを書き込み、プログラムを流し込んでできあがり。

10 LET[10],700,1200,1700,2000,2300:C=5 20 GSB@GETHM:A=0 30 IF N>[10+A] ?N,[10+A]:A=A+1:IF A=C A=0:GSB@WAITM:ELSE CONT 50 @LOOP 60 GSB@GETHM:CLS:?" NOW:";N:?"NEXT:";[10+A] 70 IF N>=[10+A] ?"GOHAN!":GSB@MOVE:WAIT60:A=(A+1)%C:IF !A GSB@WAITM 80 WAIT 60*10:GOTO@LOOP 90 @WAITM:GSB@GETHM:CLS:?" NOW:";N:?"WAIT TOMORROW":IF !N RTN ELSE WAIT60*30:CONT 100 @MOVE:WAIT1:OUT1:WAIT1:OUT0:RTN 200 @GETTIME 210 IF I2CR(#68,0,#700,7) ERR 220 FOR I=0 TO 6:[I]=PEEK(#706-I):[I]=[I]>>4*10+[I]&15:NEXT:RTN 240 @GETHM:GSB@GETTIME:N=[4]*100+[5]:RTN

ACアダプター動作させるので、省電力化しないメンテナンス性と応答性重視のコード。
10行で、7時、12時、17時、20時、23時の1日5回動作するよう設定してます。


時刻設定をいつでも変えられるように、シリアル通信ポートも外に引き出すことにしました。これで、箱を開ける手間なく、設定変更できます。


こちらが元の、IchigoJam完成版をそのまま使ったネコゴハンマシン。1台、回収できました。

他、ネコ関係、外出先からの確認に便利なネコIoTとして、ネコトイレIoTと、IO-DATAの「Qwatch」が活躍中!

ICTで良いネコライフを!

削るほどに滑らかに、木工開発環境づくり(物理)と道具の沼

2018/05/13
#maker 

あいにくの雨。つつじマラソンは諦め、木工再開。
たまたまちょうどいい高さだった収納が机からはみ出るので、その分をなめらかな曲線の木でつなく計画実行。

オシロスコープ他、ほしいツールがすぐ使える環境づくりに、大きく一歩前進。


ハイライトは、この曲線づくり。よく見るとまだちょっと、削った際の筋がある。


削るほどに滑らかになっていくのがうれしい。良くなればなるほど、より高みを目指したくなり、実際できちゃうのが木工の魅力。 ・・・ただ、時間はかかる。


ほしい曲線を線で書き、電気マルチツールAMT-280でカットしたが、この線をたどるようにな切り方がそもそも失敗。 削ることはできても、削ったら最後の木工。中学生来忘れていた、削ることを想定して切るという基本。

また、こういう、曲線に切るケースなら、きっと糸鋸が圧倒的に便利。定番の道具たち、代替できても圧倒的にかかる時間が違う理由を、身をもって体験。

物理的な開発環境作り、意外と楽しく、勉強になるが、どんどん新しい道具が欲しくなって危ない。 小学生の頃、大人はきっともっといい道具を使っているに違いないと、無限に好きな道具を材料なしに作ることができるコンピューターにものづくり環境を移したのは正解だった。

道具は時間を創るもの。
でも、ある道具でなんとかする時間を楽しむのもまた一興。

links
- 木工で快適な創造プラットフォームづくり、こどもの日

IchigoJamを赤外線リモコンで簡単遠隔操作!スマートホーム実現に向けて、信号の解読にも挑戦しよう!

2018/05/06
#IchigoJam #maker #asm 

家電を自在にコントロール!赤外線リモコンで操作する家電は、IchigoJamでも制御可能。
まずは予備実験として、見えない光、赤外線を使った、IchigoJam遠隔コントロール実験から。

1コ20円の赤外線受光モジュールとブレッドボード、ワイヤー3本で、回路を作りましょう。
IchigoJam CN5の5VとGND、CN4のIN1からワイヤーで赤外線受光モジュールの3本足側へ接続します。

順番は、3本足を上にして左から5V、IN1、GNDの順。
※受光モジュールの電源は、4.7-5.3Vなので、VCC(3.3V)では動きません

つないだら、早速受光しているか実験するプログラム

1 LED !IN(1):CONT RUN

赤外線受光モジュールは普段は1、38kHzで振動する赤外線を捉えたら、0が出力されます。
IN(1)でその信号をとらえ、そのまま!演算子で反転させて、LEDに連動させています。

家のテレビや電気など適当なリモコンを向けてボタンを押すと、チカチカ点滅します。

赤外線リモコンからの信号を待って、LEDをつけるプログラムはこちら。ロボットの発進制御にも使えますね!

10 IF IN(1) CONT 20 LED1

※何もしなくてもチカチカする場合、電源のノイズを拾ってしまっているので、別の電源を使うか、新品の乾電池x3(1.6*3=4.8V)を使いましょう。ノイズ対策方法も何かあるかもしれません。

ボタンをいろいろ押し分けたり、違う家電のリモコンの信号を向けてみたりすると、長さやパターンが違うことがわかります。 この信号を解読にも挑戦してみましょう。

赤外線リモコンの38kHzで点滅する赤外線LEDを光らせるパターンの違いで信号を伝えます。その信号を見るプログラムを書いてみると

1 ?IN(1);:CONT RUN

ただ、信号が一瞬すぎてうまく区別できそうにありません。BASICでは速度が足りない時は、マシン語の出番。 マシン語で光っている時間、消えている時間を計測してみます。

10 POKE#800,112,181,114,182,7,34,18,2,138,24,0,40,51,208,80,35,27,3,1,51,27,3,1,36,164,4,254,38,0,33,0,240,37,248,1,49,33,66,28,209,29,104,0,45,247,209,228,8,0,32,0,33,0,240,26,248,1,49,33,66,17,209 20 POKE#83E,29,104,0,45,247,208,17,84,1,48,0,33,0,240,15,248,73,28,33,66,6,209,29,104,0,45,247,209,17,84,1,48,176,66,231,209,0,33,17,84,1,48,98,182,112,189,156,37,173,0,1,61,253,209,112,71,80,35 30 POKE#878,27,2,1,51,27,4,4,51,1,36,0,38,17,92,73,0,0,41,234,208,28,96,0,240,22,248,30,96,0,240,19,248,1,57,247,209,1,48,17,92,73,0,0,41,221,208,0,0,0,0,0,240,8,248,0,0,0,0,0,240,4,248,1,57,245,209 40 POKE#8BA,1,48,226,231,154,37,1,61,253,209,112,71 120 N=USR(#800,1) 130 ?"LEN:";N 140 FOR I=0 TO N-1:?PEEK(#700+I);" ";:NEXT

RUNしてリモコン信号を当ててみましょう。

71 30 10 7 11 6 11 22 10 24 10 7 10 23 10 7 10 7 10 7 9 24 9 8 9 8 9 24 9 8 9 24 10 7 9 25 9 7 10 7 9 25 9 8 9 8 8 8 9 8 9 8 9 24 9 8 9 8 9 8 8 8 9 8 9 8 9 8 8 8 9 8 9 25 8 8 9 8 9 8 9 8 9 7 9 25 9 8 9 7 9 8 9 8 9 8 9 25 8 85 68 34 9 7 10 7 9 25 9 24 9 8 9 25 8 8 9 8 9 8 9 24 9 8 9 8 8 26 8 8 9 25 8 9 8 25 8 9 8 9 8 25 8 9 8 9 8 8 8 9 8 9 8 25 8 9 8 9 8 9 8 8 8 9 8 9 8 9 8 8 8 9 8 26 7 9 8 9 8 9 8 9 8 8 8 26 8 9 8 8 8 9 8 9 8 9 8 25 8 0

いくつか見ているとパターンが見えてきます。

最初の長い部分のあと、短い点灯とそのあとの消灯時間の違いで0と1を表しているようです。 数えてみるとちょうど48コ、6byte分の信号を2回送っています。 解析できた構造はこんな感じ

ヘッダ(ON:70 OFF:30) [0(ON:8 OFF:8), 1(ON:8 OFF:24)] x 48bit(6byte) フッタ(ON:8)

※数の単位は2cycle(38kHz) - 上記を2度送信している

信号の違いを確認してみましょう。

A 001101000100101010010000010000000001000001000001 B 001101000100101010010000010000000101000001000101

家の電気のリモコンAとBで切り替えで、2bit異なることががわかります。
ボタンに合わせた動作をプログラムすれば、リモコンで遠隔操作するロボットや便利道具もできそうですね。

上記、マシン語プログラム、実はリモコン送信用プログラムも含んでいます。赤外線LEDがあればリモコン発信も実験できます。

100 INPUT"1:SEND 2:RECV ?",N 110 IF N=1 N=USR(#800,0):GOTO 100 120 N=USR(#800,1) 130 ?"LEN:";N 140 FOR I=0 TO N-1:?PEEK(#700+I);" ";:NEXT 150 GOTO 100

赤外線リモコン信号読み取り&送信用マシン語プログラム(for asm15

' IN1 - 赤外線受光モジュール / OUT1 - 赤外線LED PUSH {LR,R4,R5,R6} CPSID '割り込み禁止 R2=7 'PCGの先頭 #700 R2=R2<<8 R2=R1+R2 R0-0 IF 0 GOTO @SEND R3=#50 ' IN1 の address PIO0_10 R3=R3<<(24-(10+2)) R3+=1 R3=R3<<(10+2) ' PIO0_10 R4=1 R4=R4<<18 '初回信号オーバーフロー判定 R6=254 'オーバーフロー判定 R1=0 @BACK0 GOSUB @WAIT2526 R1+=1 R1&R4 IF !0 GOTO @END R5=[R3]L R5-0 IF !0 GOTO @BACK0 R4=R4>>(18-15) 'オーバーフロー判定変更 R0=0 '配列書き込み位置 @LOOP R1=0 @BACK1 GOSUB @WAIT2526 R1+=1 R1&R4 IF !0 GOTO @END R5=[R3]L R5-0 IF 0 GOTO @BACK1 [R2+R0]=R1 R0+=1 ' 1byteずつ R1=0 @BACK2 GOSUB @WAIT2526 R1=R1+1 R1&R4 IF !0 GOTO @END R5=[R3+0]L R5-0 IF !0 GOTO @BACK2 [R2+R0]=R1 R0+=1 ' 1byteずつ R0-R6 IF !0 GOTO @LOOP @END R1=0 [R2+R0]=R1 R0+=1 CPSIE ' 割り込み許可 POP {PC,R4,R5,R6} @WAIT2526 R5=156 ' 1cycle '(48000/38*2=2526 - overhead 14cycle - 6) / 4 = 626 (=156*4) R5=R5<<2 R5-=1 ' 1 cycle IF !0 GOTO -1 ' 分岐するとき3cycle しないとき1 - 4*loop-2 RET ' 3cycle @SEND R3=#50 ' OUT1 の address PIO1_0 R3=R3<<8 R3+=1 R3=R3<<16 R3+=`00000100 'PIO1_0 R4=1 'PIOオン用 R6=0 'PIOオフ用 'R2 データが格納されたアドレス 'R0 == 0 @ON R1=[R2+R0] R1=R1<<1 ' 2倍する R1-0 IF 0 GOTO @END @ON_LOOP [R3]L=R4 GOSUB @WAIT631 [R3]L=R6 GOSUB @WAIT631 R1-=1 IF !0 GOTO @ON_LOOP R0+=1 @OFF R1=[R2+R0] R1=R1<<1 ' 2倍する R1-0 IF 0 GOTO @END @OFF_LOOP NOP NOP GOSUB @WAIT631 NOP NOP GOSUB @WAIT631 R1-=1 IF !0 GOTO @OFF_LOOP R0+=1 GOTO @ON @WAIT631 'use R5 R5=154 ' 1cycle '(48000/38/2=631 - overhead 5cycle (+10/2) - 5) / 4 = 154 R5-=1 ' 1 cycle IF !0 GOTO -1 ' 分岐するとき3cycle しないとき1 - 4*loop-2 = 618 RET ' 3cycle

links
- はじめてのマシン語 - IchigoJamではじめるARMマシン語その1
- レゴテクニックシリーズをIchigoJamと赤外線LEDで制御する(マシン語) / Control Lego Technic by IchigoJam and IR LED
- 赤外線リモコン受信モジュール SPS-440-1(38kHz): センサ一般 秋月電子通商 電子部品 ネット通販 (70コまとめ買いで@10円!)

木工で快適な創造プラットフォームづくり、こどもの日

2018/05/05
#maker #IchigoJam 

こどもの日、西山公園ではつつじまつり、Hana道場ではこどもパソコンづくり、自宅ではリアル木工で作業机づくり。


まずは第一弾、作業机の完成!もっと多くの子供たちへ、届く何かを創るプラットフォーム。


近所のホームセンターコメリにて、木材と共に購入したツール、電気マルチツールAMT-280、6千円!


家で木材を簡単にカットできるようになった(木くずはすごい)


力はベクトル、どの方向からのどのくらいの力に耐えるように補強するか?
レゴ、テクニックシリーズでの経験が活きる!
電動ドリル&ドライバーに、補強器具、ぴったりのねじなど、道具とパーツが揃えばレゴ感覚。


やりなおし(Undo)の効かない木工、多少のミスは気にしない。うまくできるかどうかは差は経験あるのみ。
無制限にUndoできて、ツールもパーツも無限に手に入り、ごみも出ないプログラミングというものづくりの経験は木工にも活きる!


Hana道場では、電子工作&プログラミング体験。
小1の子も、自分ではんだづけして完成させたこどもパソコンIchigoJam!
子供同士の教え合いが微笑ましい。
小学1年生もパソコンをつくったよ!*こどもの日企画* - Hana道場


遠路、大阪からご来鯖、鯖江コラボお菓子をつくっているフルタ製菓さん!
(大阪以来、KidsVenture&教員職員向けIchigoJamワークショップ at 大阪/さくらインターネット本社、IchigoJamのつなぎかた


西山公園前の信号から8号線にかけて大渋滞。西山公園自体には駐車場が少なく、サンドーム福井からのシャトルバスに乗るか、福井鉄道から西山公園駅か、西鯖江駅下車が正解。 どう伝えると伝わるか?

車、電車、徒歩、シャトルバスでの西山公園までの予測所要時間をリアルタイムにオープンデータ化できるといいのかも。 シャトルバスにもリアルタイムオープンデータ化用の機器搭載と、福井鉄道に時刻表オープンデータがほしいところ。普段不要な分、いかにランニングを安くあげるかが鍵!
鯖江つつじバスモニター / 公共交通IoTリアルタイムオープンデータ

壊れた液晶ディスプレイで透過型温湿度計づくり SHT31x4.3インチモニターxIchigoJam

2018/05/04
#IchigoJam #maker 

昔、憧れだった透けるディスプレイ。

高精度温湿度計、透けるディスプレイバージョン!


画面上部の表示が壊れてしまった4.3インチモニター。捨てる前に、分解!


自らは発光しない液晶には必須なバックライト


これがその正体。
プラスチック風な透明な板と、裏面の白い紙で、明るい白色LEDで画面全体を裏から照らす仕組み。


つまり、液晶単体でも、裏に光があれば使える。


テスターを使い、5Vを作っている箇所を発見。ここに5Vを供給するだけで動く。
バックライトの回路を切ると、消費電流がぐっと下がって省エネ駆動(5Vで340mA→50mA)


使うのは3点のみ、ビデオ入力(黄)、5V(赤)、GND(黒)
4.3インチ液晶モニターの基板は少なくとも2種類ある。5Vが無い場合は普通に12Vを使うか解析しよう。


温湿度センサー、SHT31用のプログラムを作って、できあがり!

10 U=96:LET[U],#4401,#8808,#884A,#4350,#0C00,#4770:U=#800+U*2 15 CLS:VIDEO5 20 POKE#700,#2C,#06:R=I2CR(#45,#700,2,#700,6) 30 [0]=17500:[1]=PEEK(#700)<<8|PEEK(#701):T=USR(U,#800)-4500 40 [0]=10000:[1]=PEEK(#703)<<8|PEEK(#704):H=USR(U,#800) 50 LC1,3:?T/100;".";DEC$(T%100+100,2);CHR$(#DF);"C" 60 LC1,4:?H/100;".";DEC$(H%100+100,2);"%" 80 WAIT10:GOTO20

℃を表すために使ったカタカナの半濁点(#DF)とCの不揃いが気になるので、PCGでキャラクターづくり。

1 POKE255*8+0,`11000000 2 POKE255*8+1,`11011000 3 POKE255*8+2,`00100100 4 POKE255*8+3,`00100000 5 POKE255*8+4,`00100000 6 POKE255*8+5,`00100100 7 POKE255*8+6,`00011000 8 POKE255*8+7,`00000000

プログラムが短くしたい時は、2進数を10進数にしておくとコンパクト

?"1 POKE#7F8";:FORI=0TO7:?",";PEEK(255*8+I);:NEXT:? 1 POKE#7F8,192,216,36,32,32,36,24,0

50行の#DFとCを#FFに変更して、できあがり

50 LC1,3:?T/100;".";DEC$(T%100+100,2);CHR$(#FF)

このままでは温度がマイナスの時におかしくなるので、対策しておく

45 LC0,3:IF T<0 ?"-":T=-T

プログラム全文

1 POKE#7F8,192,216,36,32,32,36,24,0 10 U=96:LET[U],#4401,#8808,#884A,#4350,#0C00,#4770:U=#800+U*2 15 CLS:VIDEO5 20 POKE#700,#2C,#06:R=I2CR(#45,#700,2,#700,6) 30 [0]=17500:[1]=PEEK(#700)<<8|PEEK(#701):T=USR(U,#800)-4500 40 [0]=10000:[1]=PEEK(#703)<<8|PEEK(#704):H=USR(U,#800) 45 LC0,3:IF T<0 ?"-":T=-T 50 LC1,3:?T/100;".";DEC$(T%100+100,2);CHR$(#FF) 60 LC1,4:?H/100;".";DEC$(H%100+100,2);"%" 80 WAIT10:GOTO20


全体図、電池駆動やACアダプター化してもっとコンパクトに仕上げるのも良さそう。


ケースなど、他の部品も何かに使えそう。ケーブルは4芯あるのでI2Cセンサーを外に引き出すのに便利、ボタンはアナログ入力にいれて3ボタン操作可能。 それぞれ部品として買うと高かったり、そもそも入手が困難なものは重宝する。

創造は分解から。

links
- 分解してグルーガンで再構築するジャンクアートは大人もOK - バラバラにして作って遊ぼう!ジャンクREメイクショップ - Hana道場 x ハードオフ
- 自分で創ったモノを売ってみよう!はじめてのしょうばい - 高性能温湿度計のつくりかた(SHT31編)

モバイルバッテリーでも切れないIchigoJamのつくりかた

2018/05/01
#IchigoJam #maker 

モバイルバッテリーを使ってIchigoJamを動かしていたら、しばらくすると切れてしまう。
これは、IchigoJamの消費電力が少なすぎて、モバイルバッテリーの自動停止機能が働いてしまうことが原因です。

センサーや、サーボなど周辺機器をつなぐと切れなくなったりしますが、動いていない時に切れてしまうなどでは困ります。

そこで登場、1本の100Ωの抵抗(100本で100円@秋月電子通商
3.3V(VCC)とGNDにさし込んでみました。

無事、一定時間で切れてしまうことを繰り返していたDAISOモバイルバッテリーでも動き続けるようになりました!


VCC-GND間であれば、どこにさしても大丈夫。5V-GND間でもOKですが、消費電力がちょっと上がります。

この抵抗は無駄なのでしょうか?
実は、発熱するという機能があります。
3.3V / 100Ω = 0.033A、3.3V * 0.033A = 0.1W
0.1W = 0.1J/s で、空気の比熱がだいたい 1J/g℃ なので、周りの空気1gを10秒かかって1℃上げるくらいの発熱。
とっても地味な暖房という感じです。
(参考、■ 各種物質の性質: 気体の性質

その1万倍の1000Wの暖房を計算してみましょう。
4畳半の容積は、18m3(4.5/2*3.3*2.4)。
空気の重さは意外と重くて 1.3kg/m3 程度。(参考、空気に重さはあるの? | ダイキン工業株式会社
つまり、4畳半には23kg(18m3*1.3kg/m3)の空気。
この暖房は、部屋全体を23秒で1℃あげる能力ということです(実際は熱が逃げちゃうのでもっと時間がかかりそう)

今回100Ωを使いましたが、1kΩだと、1/10の0.01Wとなって、小さすぎるせいで自動停止しちゃいます。
逆に小さい抵抗を使うとどうなるか?
10Ωだと、10倍の1W、この抵抗の定格(仕様上の限界)1/2W(=0.5W)を越えてしまうので危険です、きっと。

回路を間違うと異常に熱くなったりする理由がわかりますね。

Tweet
クリエイティブ・コモンズ・ライセンス
この作品は「Creative Commons — CC BY 4.0」の下に提供されています。
CC BY 福野泰介 - Taisuke Fukuno / @taisukef / high-res profile image