#注意書き
※この記事はプログラミングを主としていません。
といってもポエムでもありませんので悪しからず。
※2 このプロジェクトには定格を超えた使用をしている箇所が複数あります。
筆者は理解したうえで無理をしていますので、決して真似はしないでください。
はじめに
私はアイアンマンが好きだ。(告白)
別にトニースタークが好きなのでなければ、監督が好きなわけでもない。
どちらかといえばハリーポッターに似た、現代科学では太刀打ちできないような技術描写が筆者の心をマグニチュード8くらいで揺さぶるのです。(ここで理論に基づいたマジレスするのはダメよ)
例えば軽く飛行するノリで成層圏まで飛行、凍り付いて落下する描写とかも感動ものですよね。
ほかにも、敵に手のひらを向けエネルギー放出をするシーン。あれは今の技術からすると墓石サイズのリチウムバッテリーを背負って一発撃てたら十分な程度ですよね。
肩から出てきた数十の小型ミサイルが敵を皆撃ち落とすところも固唾を呑んじゃいますね。
で、探したわけですよ。再現できそうな技を。
・
・
・
・
・
・
ないやんけ。
そもそものエネルギー源であるアークリアクターの出力がおかしすぎてなーんにも真似できません。
そんな中でも唯一真似できる技がありました。
実はこれが作りたかった pic.twitter.com/T4rJMK71jj
— Vonlet (@Vonlet) March 21, 2020
下の動画ですね。
そう、フラッシュです!!これなら携帯するのも無理ではない。
そこで私のフラッシュモジュールの製作が始まったわけです。
#フラッシュの製作
##威力の見積もり
動画を見る限り、成人男性が一瞬の閃光で怯む程度の威力ということがわかります。
いままでの経験から1W LEDじゃああそこまで怯むことはありません。
3W でようやく「うわっ」てなる程度で済みます。
10W 級になると直視できないレベルになります。(溶接関係の職種でなければ)
100W やっぱりここまでくると最強なのは最強ですが、金額と扱いやすさから評価すると良くありません。
そこで10W LEDを今回のフラッシュ用の光源にします。
##電源作成
アイアンマンのアークリアクターは原子力発電所並みのエネルギーを生み出せるようで、そんな現実性のないことはできないので、現環境でできる最も最強である電源を作成します。
なんと丁度家に12V5Fのスーパーキャパシタが4つ転がっているではありませんか!
それを利用してコンデンサバンクを作りました。
###充電器選定
10W LEDを光らせるためには順方向電圧である10V以上でなくてはなりません。電源の電圧が12Vだと充電効率が良くないので12V~24Vの間で考えていきましょう。
と言ってもそんな大電流が流せてそこそこの電圧のACアダプターが家に転がっている訳が無かったので、専用ACアダプターを探す旅に出ました。
早速近所のハードオフのジャンクコーナーで15V5AのPC用ACアダプターを手に入れました。
(本当は19V7Aのものが欲しかったのですが、また今度で。)
###充電時間と使用有効時間
家に帰りACアダプターの先をDC2.1Φのコネクタに付け替え、電圧の測定を行ったところ15.2Vと出たので、フル充填レベルを15Vにしました。
充電方法を決めなければいけないのですが、今回は簡易的に素早く作ることが目的だったので、20W
1Ωのセメント抵抗を4つ直列接続したもので、定電圧充電することにしました。
放電の方法は定電流モジュールを使い、700mAで定電流放電することにします。
そこでDesmosにて時間に対する電圧の変位を可視化してみました。
赤が充電時 橙が放電時 青が有効使用電圧
電圧が0Vから15V迄、約173秒
有効電圧の最低値10Vから15Vまで約90秒
フル充填から10Vまで約70秒
一回の使用に約0.5秒とすると
140回程度は使用できるみたいです。
実際はキャパシタの直流抵抗値のせいで充電時間は伸び、容量抜けで使用時間は減りますが、なかなかロマンに溢れた数値にはなっています。
#制御部分の作成
いくら理論上の計算をしても常にLEDがついていたら充電時間が延びるし、何よりも手が熱々になってしまうし、
カーペットも3秒程度で焦げ付いてしまいます。(やってもた)
ですので、ボタンを押してる間だけ光る様にします。
##Arduino制御
###電圧測定
キャパシタの電圧をいちいちテスターで測るのは、全く実用的ではありません。したがってArduinoで電圧を測って、シリアルでPCに送ってしまいましょう。(完成時にはLCDで表示するようにしたいと思います。)
ここにLTSpiceでつくった回路図(を載せるつもり)
アナログピンは0〜5Vまで計測する事が出来ます。
15Vを計測するためには分圧抵抗を用意してやれば良いのです。
今回は10kΩを3つ並べて0〜5Vを取り出します。
Arduino側では0〜1023で出力が出るので
キャパシタ電圧 = (出力)*15.0/1023
とすれば0〜15V表示の出力が返ってきます。
これでパソコンのシリアルモニタを見れば何時でも電圧を確認できます。
###満充電時間 と 使用可能時間 の表示
ここは少し数学的な話になります。
このフラッシュモジュールは充電時と放電時で電圧の変化量に違いがあります。
####使用可能時間
放電時は定電流放電なので考えることは少ないですね。
あらかじめグラフから有効使用時間を求めておいて、そのグラフを時間の式になるように変形します。そしてその差分を表示します。
####満充電時間
充電までの時間を求めるには充電時のキャパシタ電圧変化のグラフを時間の式にする必要があります。
まず
$$V = E*(1-e^{\frac{-t}{CR}})$$
この式をtを含む項だけにして
$$e^{\frac{-t}{CR}}=1-\frac{V}{E}$$
指数を取り出す
$$\log_e |e^{\frac{-t}{CR}}| = \log_e |1-\frac{V}{E}|$$
$$\frac{-t}{CR} = \log_e (1-\frac{V}{E})$$
よって
$$t = -CR\log_e (1-\frac{V}{E})$$
Vを変数とした時間の式ができました。
満充電までにかかる時間が173.22秒なのでこれから引く
$$173.22+CR\log_e (1-{\frac{V}{E}})$$
これが残り充電時間になります。
誤差はありますが僕みたいなせっかちな関西人には有ると無いとでは天地の差なのです。
###制御スイッチ
制御方法は簡単かつ安全である必要があります。
ボタンにはタクトスイッチを使い、一端Arduinoを経由してMosFETを制御する方法を取ります。
こうすることでボタンの安全性を後々プログラムの変更だけで済ませられるようにしておきます。
5Vピンからタクトスイッチを経てデジタル入力ピンに接続し、10kΩでプルダウンします。
あとは適当なデジタルピンから1kΩを挟みMosFETのゲートへ接続します。
(実はここでソースとドレインが逆になってて、電流垂れ流し状態で数十分悩んでたのはナイショ!
MosFETについてるダイオードのせいで逆接なのに気づかなかった。)
#完成
できました!!
フラッシュ動作テスト https://t.co/J69VhfyjsI @YouTubeさんから
— Vonlet (@Vonlet) March 25, 2020
伊右衛門の老舗感w pic.twitter.com/q0oveo1O1e
— Vonlet (@Vonlet) March 25, 2020
金粉入りの酒はフューチャーを感じる pic.twitter.com/urdCIWKwGg
— Vonlet (@Vonlet) March 25, 2020
やっぱり飲料を光らせるのが乙であるという謎のオチ
次回はリュックサックに実装して移動可能にしたら更新しようと思います。
バイバイ!