ハロウィンに乗じて蜘蛛ロボットを作ります [この記事内では完成できてません]

一つのモノを作る記事を2本に分けてしまうのは今回で止めます。

イベントってわくわくするじゃないですか。今月はハロウィンがありますしそれに乗じたものを作ろうと思います。

f:id:ten0313:20171015173957j:plain

企画書です。イラスト力ぅ...ですかね

今回は蜘蛛の巣を張る虫のクモのようなものをつくります。

クモロボット

といいましても、実際に糸を張らせようとは思いません。

僕が考えたのは地面の紙の上を走り回りペンでクモの巣を描こうというものです。

かっこいい!!!

まずは簡単に形にしてみます。

タミヤのダブルギヤボックスを使います。

f:id:ten0313:20171015175251j:plain

 http://amzn.asia/bKTuJsZ

クモだからって8本足で動くとも限らないですよね。

www.monotaro.com

前輪はボールキャスターにして後輪のギヤボックスの左右のタイヤの回転を制御して左右回転前後進のコントロールを行おうと思います。

 

...と思っていたのですが

f:id:ten0313:20171015181938j:plain

とりあえずで出来た機体です。

ブレッドボード上にモータードライバ二つと制御用のArduino nanoを実装。

nanoの電源元として9v電池パックを配置し、モーター、そしてモータードライバ駆動のための電源として単三電池の電池ボックスを機体下のスペースに押し込んでかなりコンパクトな完成になっています。

 

9v電池パック横のサーボモータはクモの巣を描くためのペンを上げ下ろしするためのものです。

とりあえずペンをとりつけ直進のテストをしてみましょう。

f:id:ten0313:20171015182933g:plain

おおう...オーケーです(なにがおーけーなのか)

いちおう回転のテストもしてみます。

f:id:ten0313:20171015183112g:plain

おーけー。

直進時のアルディーノのスケッチは両モーターとも同じ出力を書いています。

にもかかわらず左右にぶれている原因として

  • 前輪に一つ付けたボールキャスターが中心についていないせいで不安定に曲がるようになっている
  • モータがなんかおかしくてなんかおかしい
  • よくわからないけどなんかおかしい

下2点は無視します。解決がめんどくさそう。

しかしそのもう一つのボールキャスターうんぬんのほうの解決は簡単です。

ボールキャスターの使用を止めます。

4輪にします。

あと、いろいろパーツのレイアウトも変えます。

f:id:ten0313:20171015184554j:plain

さっきボディの基礎として使っていたユニバーサルプレートを流用します。

使いやすいんですけど、通販で買うか少し遠出するしか入所方法がないのでなかなか貴重に思っています。

 

そして単三電池ボックスの位置を完全に機体の下に変更しました。

さっき動かしてみて、時々地面に電池ボックスの一部が擦れることがあったんです。

直進時に地面と大きくひっかかり左右にぶれてしまうことを懸念した結果の位置変えです。

配線も変えました。

f:id:ten0313:20171015185309j:plain

ジャンパワイヤなどの空中に飛び出す配線を少なくしました。

どこがどこに接続しているかわかりやすくしたかったからです。

モータや電池からの配線もグルーガンでまとめてなるべくブレッドボード上をすっきりさせます。

 

f:id:ten0313:20171015185654j:plain

2号機とでも言うのでしょうか、4輪にしたバージョン出来上がりました。

写真ではわかりにくいですが、ペンの上げ下ろしのためのサーボモータのスペースがとれなくサーボ用のスペースをしっぽのように後付しています。

 

f:id:ten0313:20171015190444g:plain

やわらかい素材で作った手製の9v電池ボックスです。

がちゃこん!って感じでさしこめるのが気に入ってます。放熱もなにもあったもんじゃないボックスですね。

 

テストしてみます。

直進、その場での回転のテストをしてみます。

f:id:ten0313:20171015190733g:plain

直進テスト

よさそうです。まっすぐすすんでいます。

f:id:ten0313:20171015190850g:plain

回転テスト

(ドリフトかな?)

指で反動をつけないと回転を始めません。スケッチでは左右のモータを逆方向に動かしています。ショベルカーや戦車などのキャタピラ駆動する車の信地旋回をイメージしました。

f:id:ten0313:20171015191948g:plain

信地旋回モデル。すげえなこれ

回転が上手くいかない理由は構造がそもそもその場での旋回に向いていないんだと気づきました。前輪が明らかにひっかかっています。

 

曲がれないということではないですが毎回思ったとおりに動いてくれないのは致命的な問題です。

というのも

今回の制御ですが、外部からの信号によるラジコンのようにするのでもなく完全に自立したものにしようと思っています。

そして自立した制御でも、スケッチは「何秒後に何度曲がる、直進、ペンを下ろす」という単純シンプルな「自立」にするつもりなので思った通りの動きをしてくれないと手順が進むごとに狂いが生じ、最終的に思い描く動きと大きく異なった結果になりかねないのです。

 

改めてとして作った4輪バージョンですが、この機体も没となりそうです。orz

 

まとめ

最初の予定ではかなり簡単な工作になるつもりで、「ぱぱっと作ってブログ書いてハロウィンの日に予約投稿とかしちゃおっかなあ!ブロガーっぽいやん!!」とか甘いこと思ってました。かなり苦労しています。

今はまた改良した機体を完成させスケッチを書く前にこの記事を書いているという具合です。

ここまでつまづいている原因として「その場での旋回」という目標にこだわってしまっているから、というのがあると思います。

確かに小さなスペースを動くのに旋回は便利ですが、完成しないことには話になりません。次回の完成に向けまた考える必要がありそうです。

 

話が「まとめ」とはずれてしまうんですが、高校にいたころに(退学しましたが)部活でマイコンカーを作っていました。

マイコンを搭載した車型のものは僕の中でずっと学校で作るものと認識していたので、家でこうして(簡単なものですが)工作しているのはなかなか楽しいです。

 

 

[ この記事はブログ投稿者の憶測や考えによりつくられています。

よって書いてある内容に誤りや言い間違いがあるかもしれません。もし修正したほうがいい場所や「こういった言い方のほうが”ソレっぽい”よ」などがありましたら後に記載してあります、リンク先のツイッターアカウントに教えてくださると嬉しいです:) ]

 

twitter.com

 

光による液体の表現をめざす[後編] [完成]

前回くらいからの記事の続きです。
光による液体の表現を目指す [前編](LEDマトリクスの自作) - 自由研究をします。
光による液体の表現を目指す [進捗] - 自由研究をします。
読んでくださると閲覧数が増えて嬉しいです;)

完成のお披露目をする記事です。

フェイスブック創始者マーク・ザッカーバーグは言ったそうです。

Done is better than perfect. 

 日本語にして「完璧を目指すより完成を目指せ」とでもするのでしょうか。

いい言葉ですね、完璧が間に合わなかった人の言葉です。

 

あれからの進み具合と一緒にお披露目したいと思います。

 

プログラムを書きます。

一度マトリクスLEDについて書いたことを覚えていますか?

ArduinoでドットマトリクスLEDを遊ぶ [前編] - 自由研究をします。

ArduinoでドットマトリクスLEDを遊ぶ [後半] - 自由研究をします。

(これです)

今回自作のマトリクスLEDのプログラムを書く上で、上の記事に書いた問題点(といいますか気にしなければいけないこと)がややこしくなっていました。

LEDの制御の上で、段の表現時こそ簡単なのですが傾けた時の斜めに表示させたときの制御がくっっそめんどくさくなってしまうんです。

高さのちがう箇所ごとに高速で点滅させることで斜めの点灯という課題をクリアしていくわけなのですが、正直この問題が頭からすっぽりと抜けていたので予想していたよりもプログラムを書く工程がやっかいになりました。

 

それでもとりあえず基板上に実装した加速度センサからの情報を元にarduino側で傾きの判定、マトリクスLEDの点滅のチェックを行います。

youtu.be

ごめんなさい、GIF変換しようとしたのですがどうも上手くいかず今回はyoutubeからの動画になります

平行にした時のパターンをいれてみているのですが成功していますね。基板の傾きが無い状態の時に水面に見立てているLEDが正しいパターンを表示しています。

f:id:ten0313:20170928221717j:plain

マトリクスのそこにy軸とx軸の目安をメモしておきわかりやすくしておきました。

この調子でプログラムを書いていきます、今回はマジで自分でもビックリするくらい長いスケッチなのでここに書くのはやめておきます。

正直もっと簡単に短く方法もあるんだろうなあ...。

プログラムのほうは完成です。

なのですが...ここでまさかの問題が...

f:id:ten0313:20170928221715j:plain

実際にはブレッドボードを介さないとはいっても...

入れるケースにするつもりだったビンに入れてみたのですが、LEDはまだしも基板とarduinoが収まりきりません。まじで予期していませんでした。

 

...完璧より...完成を目指す...完成を...。

 

f:id:ten0313:20170928221749j:plain

電源はいつもの通り9v電池です。トグルスイッチにハンダ付けして電源のオンオフの切り替えを簡単にします。

 

完成です。完成を目指しました。

f:id:ten0313:20170928221754j:plain

...これなんの容器かわかりますか?

2Lのコーラのペットボトルなんですよね...ぶっちゃけて言うと非常にダサい!!!

誰かに言われたくないのでここで先に言っておきますがくっっっそだっさい!

「LEDをペットボトルに入れました感」がすごい!

正直とても液体とは程遠いです。とりあえず動いてるのはまだ様になるのでみてください。

 

youtu.be

あっでも動いてる様子は結構よくないですか?

きちんと流体の様子を模した動きになっています。

まとめ

正直今回は悔しい結果になりました。つかえるICが増えた(74HC595)ことでこれからできることが増えたのでそこは大きい収穫だと思いますが、完成品を見るとまだまだ「完璧」には程遠い気がします。

忘れないためにも課題を書いておくと

  • LEDの輝きが強すぎる・・・入れる容器をすりガラスチックにしてみたい
  • 何よりもビンにすべてを収めたい
  • ビンを勢いよく傾けた時の波とかを表現してみたい
  • 「粘性」を表現してみたい

いつか絶対にリベンジしたいです。

 

作っててですが、LEDをつかった光り物は電子工作の中ででも華が際立っていて楽しいですよね。LEDマトリクスネタはもっと楽しいことができそうなのでわくわくします。

マジックミラーを利用した永久に続くトンネルのLED気になっています。

既出ネタでしょうけどアレでの時計作成とかもおもしろそうです!

 

今回は読んでくださりありがとうございました。

 

[ この記事はブログ投稿者の憶測や考えによりつくられています。

よって書いてある内容に誤りや言い間違いがあるかもしれません。もし修正したほうがいい場所や「こういった言い方のほうが”ソレっぽい”よ」などがありましたら後に記載してあります、リンク先のツイッターアカウントに教えてくださると嬉しいです:) ]

 

 

twitter.com

光による液体の表現を目指す [進捗]

前々回くらいで投稿したアレの進捗の報告です。

ten0313.hateblo.jp 

アレのリンクです。

円柱形のLEDマトリクスをつかうやつです。

本当なら前回の続きとして「後編」と題して完成までをつづるつもりなんですがサボりまくっていたり躓いたりで完成が遅れていました。

さすがにブログを更新していない期間が一ヶ月近くあるのはいやなので「進捗報告」という形で記事を書くことにしました。

大きなことではないですが今の進み具合や出てきた問題点、それに対する解決点を書こうと思います

 

 

アルディーノのピンがたりない!

f:id:ten0313:20170924063702p:plain
自作したLEDマトリクスの簡単なイラストです

制御をアルディーノでする上で問題があります。

自作したLEDマトリクスは横に15本のカソード端子、そして14本のアノード端子の計29本の端子で点滅をコントロールするつくりになっています。

 

端子数が29本で使用するアルディーノのピンはデジタルピンが13本、アナログピンが5本の計18本しかありません。

前回パトランプのように点滅させたのは14本のアノードピンをすべて電源に接続、カソードピンの15本のピンを制御するだけで大丈夫でした。

しかし今回やろうとすることは列での制御ではなく個々のLEDを制御する必要があるので29本の端子をすべてフルにつかわなければいけません。(さらに2本のアナログピンは加速度センサからの情報を取得するためにつかうのでLEDに割けるピンは残り16ほんです)

アルディーノのピンが明らかに足りないんです。

シフトレジスタ74HC595を使う

 

f:id:ten0313:20170924073954j:plain

ピンの増設をシフトレジスタでします

ブレッドボード上でピン増設を試してみます。

f:id:ten0313:20170924083122g:plain

シフレジスタICをふたつ使い16個のLEDを滑らかに点滅させています。

一見たくさんのジャンパーワイヤが見え、配線が複雑に行われているように見えますが、実際アルディーノとつながっているのは電源とグランドを別として信号線は3本だけで行われています。ICを増やせば16本のみならず今回必要とされている29本の端子の制御も可能です。

これでピン問題は解決。(簡単に書いてありますがシフトレジスタの使用は僕にとって困難で友人のとても丁寧な解説と説明に本当に助けられました、ありがとうございますって感じです)

 

ユニバーサル基板にICを実装するためのピンソケットをハンダ付け、シフトレジスタ同士の連結の配線を行います。瓶の中に入れることを考え、あまり大きな基板は使えませんしコンパクトにまとめる必要があります。小さい基盤ってかっこいいですしね;)

 

UEW線を使います。

前々から使いたかったんです、UEW線。

 絶縁性のポリウレタン樹脂を銅線にコーティングしたものでとても細かい配線ができる奴らしいのですが、あのびっしりと基板上を銅線が這い回っているのがかっこよくていつかつかいたいと思ってたんです。

秋月で友達にオススメされた0.29の太さのを買ったので今回は使っていきます。

 

ポリウレタン樹脂なので予備半田の要領であらかじめ端子に巻きつかせる線の先の皮膜をはがし銅線部分を露出させ、基板にはめたピンソケットの足に巻きつかせハンダ付けします。

 

f:id:ten0313:20170924082652j:plain

 

 はい!完成!初めての使用で大雑把な僕は空中配線で端子同士をつなぎ出来上がった基板の配線を「えいっ!」と押し付け平たくするというイタリアンシェフもびっくりなスパゲッティ配線を決行しました。

いいんです見た目は...(見た目が好きでUEWをつかったというのに)無事動いたら...

 

ピンソケットに74HC595シフトレジスタICをピンソケットにいれてきちんと配線されているかブレッドボード上で確認してみます。

f:id:ten0313:20170924082724j:plain

抜き差しできるほうが便利かもとおもい、LEDも基板にはんだづけするのではなくピンソケットにしています。

 

結果は上のとおりです、明らかに挙動がおかしく失敗しています。

反省点としては横着せずにきちんと配線をみなおしUEW線を引きなおす必要があるのだと思います。

やり直します。

f:id:ten0313:20170924082739j:plain

設計図ではないですが、紙に書いてどこをどこにつなげるのか整理しておきます。

(IC側からみた配線を書いてしまってあり、裏側の配線するほうからの視点ではない設計図なので実際ハンダ付けする時に混乱する要因となりました。次回からきをつけようとおもいます)

この「一度紙に書く」というのは、配線する先を明らかにするだけではなく、どの端子の配線をどの順番でやればわかりやすいかもわかりやすくなり、とても自分の中で効果的な方法だと思いました。

ちなみにICが5つに増えているのは僕にもわかりません、謎です。4つで事足りるのに...

f:id:ten0313:20170924073934j:plain

つかう予定の瓶に入るぎりぎりの大きさです

基盤の大きさも変えました。さっきの失敗したものは「なるべく最小の基板を」という考えでしたが、今回は「瓶の中にフィットできる最大限の基板を」という考えで進めます。 IC同士の間隔を広げ配線時に余裕を持たせてどこがどこにつながっているのかわかりやすくしようと思ったからです。(これも正解でした、途中でのミスがわかりやすく、そして修正のしやすさが段違いでした)

 

極力わかりやすい配線を心がけハンダ付けしていきます。

 

今度こそ完成しました。

f:id:ten0313:20170924074020j:plain

完成した様子です。さっきのごちゃごちゃした基板より線がどの端子同士をつなげているのかわかりやすくなったと思います。

夜始めて気がついたら朝だったのですが、もうここまでで達成感があります。

慣れていない僕にとってはすごい肩の凝る作業でした。

もうこれが作品の完成でいいんじゃね?

f:id:ten0313:20170924073927j:plain


表面です。出ている三本のジャンパーワイヤはアルディーノとの通信用のものです。

 

f:id:ten0313:20170924073920j:plain

前の基板ではLEDとの接続にピンソケットを使っていましたが、瓶の中で外れることを懸念して基板にマトリクスLEDの端子を直接ハンダ付けすることにしました。

加速度センサの上にある空っぽのソケットが本当に謎ですね...当然、必要とされませんでした。

f:id:ten0313:20170924073831j:plain

動作確認の様子です、きちんと動きました。

とてもうれしいです。

というか最初から設計しておけばよかった...。

 

まとめ

3本のピンでの制御が可能になりました。完成まであと少しとなってきています。

今回の作品は自分自身、完成にちかづくたびにわくわくしてきているのではやくできたものをお披露目したいと思っています。

 

急がば回れ、ではないですがやはりきちんとした設計や計画の重要さが身にしみました。UEW線、難しかった...ですが完成した基板、わりとかっこよくつくれたとおもうのですがどうでしょうか?

 

あとはプログラミングの過程が残されています。今週中には完成させ記事の更新を行うことを目標にしていきたいと思います。

読んでくださりありがとうございました:)!

 

[ この記事はブログ投稿者の憶測や考えによりつくられています。

よって書いてある内容に誤りや言い間違いがあるかもしれません。もし修正したほうがいい場所や「こういった言い方のほうが”ソレっぽい”よ」などがありましたら後に記載してあります、リンク先のツイッターアカウントに教えてくださると嬉しいです:) ]

 

 

twitter.com

 

炎を発光ダイオードの光に変換する [ 炎センサ ]

炎をLEDの光に変換させるとは言っていない

秋月やマルツなどの電子部品屋さんを見ていると本当に多種多様なセンサ類がありますよね。

中には「こんなものまであるの!?」なんていうセンサモジュールまであります、今回はそのたくさんのセンサの一つである炎検知センサについてです。

炎検知センサとは

文字通り炎を検知するセンサです。仕組みとしては金属の光電効果とガス倍増効果を利用した紫外線センサ...らしいです(むずかしいっすね)。

簡単に言うと炎から放射される紫外線を感知する仕組みで、精度の高いものだと数メートル離れたライターの炎までわかるそうです。

!記事内では「紫外線が」と書いていますが正確には「赤外線」の感知が正しかったようです、訂正くださりありがとうございます!

 

 

f:id:ten0313:20170830183324p:plain

 

使ってみます。

秋月で購入した炎検知センサを使います。

f:id:ten0313:20170830183654j:plain

 

左は同封されていたコードです。丁寧にコネクタまでついていて扱いやすそうです。

右が本体です。黒いのは赤外線感知のための部品でしょうか、とてもシンプルな見た目です。

制御は今回もArduinoです、早速スケッチを書いて使ってみます。

 

コードをセンサ本体に接続します。Arduino側は黒のケーブルをGNDピンに、赤のケーブルを5Vピンに、青のケーブルは(赤、黒とわかりやすいピンの配色から青は信号線なのだろうと推測しました)アナログ5ピンに接続しました。

 

動画です。

f:id:ten0313:20170830192002g:plain

スケッチです。

void setup() {
Serial.begin(9600);
// put your setup code here, to run once:

}

void loop() {
Serial.println(analogRead(A5));
// put your main code here, to run repeatedly:

}

青のコードは信号線で正解でした。スケッチ内ではシリアル通信によりセンサから出力される信号をシリアルモニタに表示させています。

GIF画像での表示ですが、詳しい数値こそ見えにくいもののライターの着火とともにモニターの数値の変化は見て取れます。

具体的には火のない状態で0から1の数値を、炎を検知すると500~900くらいの数値が出力されました(火が近くなればなるほど大きい数値が出力されるようです)

 

発光ダイオードのスイッチに利用する

記事の題には「炎を発光ダイオードの光に変換する」と書きましたが、僕がやろうとすることを正確に言うと「炎で発光ダイオードの光を制御する」が正しいかもしれません(もっと正確に言うと制御自体はマイコンであるArduinoがしているので正しくと表記したほうも間違いかもです)。

しかし今回重要なのは記事の大などではありませんよね? 目を瞑ってください;)

 

炎センサの扱い方がわかり数値の検出も行えたところで次はもっとわかりやすく、炎検出センサの働きをシリアルモニタ内から僕の机の上に持ってこさせましょう。

 

配線はシンプルです。さっきの配線+Arduinoのデジタル2番ピンに発光ダイオードを接続します。

 

 

簡単なスケッチなので先にプログラムのほうを見せておきます。

void setup() {
pinMode(2,OUTPUT);
Serial.begin(9600);
// put your setup code here, to run once:

}

void loop() {
int val;
val = analogRead(A5);
Serial.println(val);
if(val > 50){
digitalWrite(2,HIGH);
}else{
digitalWrite(2,LOW);}
}
// put your main code here, to run repeatedly:  

 

動画のほうです(GIF形式ですが)

https://j.gifs.com/O7QD7G.gif

ライターのガスが切れてきて火が着きにくくなっていますが、着火に合わせて画面下のほうの発光ダイオードを光らせています。ライターが着火するときの火花にも反応していることもわかります。

 

スケッチのほうでは変数valに炎検知センサからの数値を格納、50以上の時にデジタル2番ピンをHIGHにして発光ダイオードを点灯させています。すごい短いプログラムですし簡単な内容です。

 

まとめ

今回、炎検知センサを使うに当たって先に簡単に検索してもぜんぜん使い方があげられてないんですよね。もちろん解説するまでもないほどに使い方は簡単だったので困ることもないんですけど、こうやって自分への覚書のような形ででも記事にできたのはよかったです。

炎検知センサすごいおもしろいですよね、センサがおもしろいというより反応する相手が炎というのが「なにに使おうか」っていうワクワク感があるきがします。

百均なんかで売っている蝋燭の火のようにチラチラ光る間接照明の点灯にこのセンサを利用して「ライターで照明を点ける」なんていうハックもたのしそうです。

近いうちにこのセンサを使った楽しいものとか作ってみたいです。

読んでくださりありがとうございました:)

 

 

[ この記事はブログ投稿者の憶測や考えによりつくられています。

よって書いてある内容に誤りや言い間違いがあるかもしれません。もし修正したほうがいい場所や「こういった言い方のほうが”ソレっぽい”よ」などがありましたら後に記載してあります、リンク先のツイッターアカウントに教えてくださると嬉しいです:) ]

 

twitter.com

光による液体の表現を目指す  [前編](LEDマトリクスの自作)

お久しぶりです。前回の投稿から時間が空いてしまっていて焦ってます、よろしくお願いします。

コーヒーを飲みきり、手ごろなガラス瓶が手に入りました。

この前からコーヒー、飲み始めたんですよ。かっこいいかと思って。

結局苦いのが苦手で砂糖は4個、ミルクは入れれるだけっていうだだ甘なカフェオレもどきで飲んでいたんですけどついに瓶いっぱいのコーヒーを飲みきりました。

f:id:ten0313:20170811052018j:plain

ネスカフェのやつです。飲んでから言うことじゃないですが僕にコーヒーは合いませんでした。
コーラが一番!!!!

大きめでしっかりしててこれで何か作りたいなーと思ったんですね。なにを作ろうかと考えました。

f:id:ten0313:20170811062112j:plain

今回作ろうと思うのはこれです。

 

詳しく説明します。瓶の中にLEDを詰め込み瓶の傾きを読み取ってあたかも液体の傾きのように光らせる、というものです。

簡単そうでしょ? あと、できたら絶対に素敵。光る液体(LEDでの表現なので厳密には「液体」ではありませんが;))の詰まったガラス瓶、マジックアイテム感ありませんか?

 

製作にとりかかります

このまえ日本橋で買ったのであろう(いつ買ったっけ)LEDを引っ張り出してきました。

f:id:ten0313:20170811054615j:plain

もちろん青色LEDです、魔法感でますように。

これを瓶の中に実装するためにLED達を組み合わせLEDマトリクスの形にします。少ない端子数で制御しやすいようにするためです。LEDマトリクスについては以前の記事でも取り上げましたよね。

f:id:ten0313:20170811055504j:plain

作業を進めるためにオリジナルの治具をつくります。(治具ってもとは日本語じゃないって知ってました? ここでは割愛しますけど検索すると「へえ~」ってなるかもです)

手ごろな板材に間隔をあけて5mmの大きさの穴を開けていきます。できた手製の治具にLEDをはめ込んでハンダ付けしていくわけです。

f:id:ten0313:20170811060133j:plain

次にLEDの足をこんな風に折り曲げます。アノード側の足は根元から真下に、カソード側の足は中段辺りの途中部分で真横に折り曲げます。

f:id:ten0313:20170811063445j:plain
ちょうど泊まりにきていた友人に手伝ってもらっています、ありがたいです。
それにしても、この後自分が寝る布団の上で端子を切っていくとはなかなかファンキーですね。

用意した300個のLEDの足を曲げて加工していきます。

f:id:ten0313:20170811070517j:plain

LEDを配置してハンダ付けしていきます。

f:id:ten0313:20170811070611j:plain

とりあえず3×7列の21個のマトリクスのパーツがひとつできました。これを量産します。

f:id:ten0313:20170811071127j:plain

これで100個分くらいのですかね...(右上のが2パーツ重なっています)

たくさんつくります...たくさん...たくさん....。

f:id:ten0313:20170811071550j:plain

300個よりすこし少ないくらいのLED分です。

こうしてならべると少し壮観ですね。

f:id:ten0313:20170811071927j:plain

つぎはこれを連結していきます...、疲れてきてます。

f:id:ten0313:20170811072255j:plain

ボトルにいれるために円柱形にします。立体になったことで徐々に形になってきてる感があります。

黒いリード線は横段のアノード線にそれぞれハンダ付けしています。

f:id:ten0313:20170811073246j:plain

二つの円柱形のパーツを合体させました。これでLEDの電装部分は完成です。

制御と考えているモノの完成は次回にするとして、今回の最後に光らせてみます。

 

制御は簡単にArduinoで。列での点灯をば...。

f:id:ten0313:20170811074217g:plain

どうでしょうか。パトランプ然とした光りかたですよねw

やっぱり青色LEDはかっこいいですね。サイバー感あります。

 

でも課題というか直すべき点も見つかりました。上の点灯のGIF画像でも一瞬わかるのですが、光ってないLEDの列があるんですよね。

あと、光の輝きが強すぎます。これでは光っている部分と光っていない部分のコントラストがわかりづらく、肝心の「液体を表現」する時に障害となってしまいます。

 

次回ではここの問題解決と完成を目指します。久々の更新でしたがどうでしたか?

読んでくださりありがとうございました。

 

 

[ この記事はブログ投稿者の憶測や考えによりつくられています。

よって書いてある内容に誤りや言い間違いがあるかもしれません。もし修正したほうがいい場所や「こういった言い方のほうが”ソレっぽい”よ」などがありましたら後に記載してあります、リンク先のツイッターアカウントに教えてくださると嬉しいです:) ]

 

twitter.com

 

SF映画の”あの扉”をつくってみる

"あの扉”とは

名前が出てこないんですよね...あの扉。

僕が言っているのはアレなんです、丸くて中央から穴が広がっていって蓋(?)のところが回転しながら開くやつ...。

f:id:ten0313:20170802063911j:plainこう閉じてて...
f:id:ten0313:20170802063931j:plainこう開いていくやつ...。

画像を検索しようにも名前がわからないのでできないんですよね...なんていうんですかこの方式の扉。

 

今回はこの扉のモデルをつくってみます。

スタートレックとかエイリアンとかスターウォーズとか...宇宙船のシーンにはこの扉がある気がします。SF感溢れててかっこいいですよね、そんな扉のモデルの製作に挑戦です。

「なにに使うため」とか特に理由はありません。あったらかっこいいかもと思ったからです。

f:id:ten0313:20170802064935j:plain

とりあえず紙に適当にイメージを描いてみます。頭のなかの「こんなかんじだっけ」ってのをわかりやすくしようと思うのですがこれがむずかしくて...。

 

切り抜いた型紙のようなものや図線を元に、プロペラのような形に素材を加工します。

f:id:ten0313:20170802065545j:plain
低発砲塩ビ板です、下書きも加工も楽です。

f:id:ten0313:20170802065713j:plain

フレームも作りました、ドア部分の動作はサーボモータを利用します。一つサーボモータの種類が違うのは青いサーボモータを一つなくしてしまっているからです。整理大事

 

f:id:ten0313:20170802065920j:plain

 こんな感じです

 

f:id:ten0313:20170802070002j:plain

 きっちり固定していきます、先が見えてきた感がありますね。

 

そういえば言ってませんでしたが制御はArduinoでします。配線もブレッドボード上で行います、あくまでも「モデル」です。

 

扉のパーツをサーボモータに取り付け動かしてみます

一つアクシデントがありました。使おうと思っていたサーボモータのSG90の一つが動きません。初期不良なのかなんなのかわかりません(長く棚で放置していました)、

次の記事までには動くものを用意しておきます。

 

f:id:ten0313:20170802070928g:plain動作状況です

SF感ないですか?これ。

サーボの一つが動かないことで歯抜けの状態になっているのが不満ですが一応ちゃんと動作しています。(正直思い描いていたドアとはちがいますが...)

 

適当に使用したスケッチを置いておきます

 

#include <Servo.h>
Servo servo;
void setup() {
servo.attach(3);
// put your setup code here, to run once:

}

void loop() {
int val = 0;
servo.write(val);
delay(1000);
val = 78;
servo.write(val);
delay(1000);
// put your main code here, to run repeatedly:

}

 

このスケッチでは1秒ごとに開閉する設定にしていますが、前回の記事で扱った超音波センサで、人がちかづいてきたのを検知して開く~って感じにしてもかっこいいですよね。

 

まとめ

結局このドアってなんて調べたら出てくるんですかね?

とりあえずのモデルですが形にしたことで、これをつかってしたいこととかも出てきましたしSFチックな見た目は僕的にすごいそそります。

次にでもいじることがあればサーボは動くものにして塗装とかしてもかっこいいかもです。皆さんはSFの場面といったらこれ!みたいなのってあります?

よんでくださりありがとうございました。

 

 

[ この記事はブログ投稿者の憶測や考えによりつくられています。

よって書いてある内容に誤りや言い間違いがあるかもしれません。もし修正したほうがいい場所や「こういった言い方のほうが”ソレっぽい”よ」などがありましたら後に記載してあります、リンク先のツイッターアカウントに教えてくださると嬉しいです:) ]

 

twitter.com

Arduinoで超音波距離センサを使う

前回のR2D2のやつがたくさんの人に読んでいただけているみたいですごい嬉しいです、ありがとうございます

今回もアルディーノで遊んでいきます。

今回使うのは「超音波距離センサ」というモジュールです。

f:id:ten0313:20170728165340j:plain

うしろのは食べてる途中のメロンです。趣味の悪い香水ってかんじの香りが苦手であんまり好きじゃない

電子工作とかに興味はなくても、多分ロボット競技を見たことのある方なら見たことはあると思います。 

簡単に能力を説明すると「超音波を発し、モノに当たり反射して帰ってきたそれを受け取る」ことができます。(能力っていうとなんだかかっこいいですね)

 

つまりこのモジュールの前に存在する障害物までの距離を知ることができるんです。

自立式の(外部からの操作を必要としていないという意味で)競技用ロボットには大体

このモジュールが実装されているイメージがあります。

形がちょうど目のように見えてすこし愛らしく思ってしまいます。

f:id:ten0313:20170728170921j:plain

データシートの読み解き

...というよりは「どうやってつかうんかなー?」ってのいうのを説明していきます。

f:id:ten0313:20170728171940j:plain

端子部分のアップです。

左から

  • Vcc
  • Trig
  • Echo
  • Gnd

となっています。電源電圧は5Vで駆動、測定可能な距離は400cmです。

なんと3mmの精度で距離の測定ができるんですよね、これ。すごい。

 

Vccが電源電圧、GndがGNDなのは言うまでもありませんが問題はTrigピンとEchoピンです。

 

モジュールの動き

簡単に説明します(難しいことが説明できないだけですが)。

  1. Trig端子をHIGHにする
  2. パルス、つまり超音波がモジュールから発せられる。
  3. 2のパルス発信と同時にEcho端子がHIGHになる。
  4. 2で発信したパルスが反射して帰ってき、モジュールが受信する。
  5. Echo端子がLOWになる。

といった流れになっています。つまり、Trig端子に入力で測距開始、Echo端子より「HIGH時間の長さ」という形で測定結果が出力されるということですね。

 

f:id:ten0313:20170728180602p:plain

やまびこが返ってくる時間を測定すると考えるとイメージしやすいかもです。

 

距離を測定してみる。

このモジュールがすることは「パルスが帰ってくるまでの時間を測定する」ことです。

ポイントは、あくまでも帰ってくるまでの時間の測定しかできないということなんですよね。つまるところ時間を距離に変換するのはこちら側。今回で言えばArduinoが演算を行う必要があります。

そのことを念頭においてスケッチ、回路作成を行っていきます。

Vccピンを5Vピンに、GndピンをGNDピンに接続しTrigピンをデジタル8ピン、Echoピンをデジタル9ピンしておきます。


int Trig = 8;
int Echo = 9;
int Duration;
float Distance;

void setup() {
Serial.begin(9600);
pinMode(Trig,OUTPUT);
pinMode(Echo,INPUT);
}

void loop() {
digitalWrite(Trig,LOW);
delayMicroseconds(1);
digitalWrite(Trig,HIGH);
delayMicroseconds(11);
digitalWrite(Trig,LOW);
Duration = pulseIn(Echo,HIGH);
if (Duration>0) {
Distance = Duration/2;
Distance = Distance*340*100/1000000; // ultrasonic speed is 340m/s = 34000cm/s = 0.034cm/us
Serial.print(Duration);
Serial.print(" us ");
Serial.print(Distance);
Serial.println(" cm");

}
delay(500);
}

ごめんなさい、長々と解説しておきながらスケッチはSWITCHSIENCEさんのホームページにあったサンプルスケッチを使用しています。

音の速さから、返ってくるまでの時間をつかい距離を測定する、中学校でやりましたっけ。音の速さは340m/sですよね。スケッチ内ではそれをもとに演算、距離を割り出しています。

youtu.be

動いている様子です。かなり精度高いんですよね。わかっていたことですけどやっぱりびっくりしました。

 

まとめ

かなり雑な記事になってしまったかもしれません(最近の更新が少なくなってしまい焦っています)。

とてもおもしろいモジュールの話でした。これで本当にロボットとか作ってみたいですよね、最近動画で見た海外の壊しあいをしているロボットをみてから自走式のロボットを作ってみたい欲が湧いてきました。

実験的に今回は使いましたが、今後これを使った何かをつくりこの場でひろうしてみたいです。 

ありがとうございました。

 

[ この記事はブログ投稿者の憶測や考えによりつくられています。

よって書いてある内容に誤りや言い間違いがあるかもしれません。もし修正したほうがいい場所や「こういった言い方のほうが”ソレっぽい”よ」などがありましたら後に記載してあります、リンク先のツイッターアカウントに教えてくださると嬉しいです:) ]

 

 

twitter.com