Raspberry Pi 電源が切れちゃうアダプタ [Raspberry pi]
表題通り、動作を確認。
シャットダウンボタンを1秒以上押し続けると、シャットダウンが実行され、安全に電源が切断されます。
が、それをコントロールするマイコンは常時通電ということになります。こいつは、ごく小さいので、
待機電力が気になる人はマスター電源スイッチをつければ大丈夫。
動作は、前回のブログでも書いたが、100ミリでのオンオフのあと400ミリでのオンオフがあり、その後800ミリ間隔になるはずだが、動画ではそうなっていない。
800ミリの間隔の時の動作は、Raspberry piからの信号を待っている状態で、連携が確認されると、常時点灯になり、連携終了を通知している。
LEDとかスイッチとかは、3dプリンタ本来のものというか、スイッチの中にLEDが付いてて、押すと光るようにできるやつがつながることを想定していて、動画では試験用のダミー。まあ、言わなくてもわかるが。
本体側の設定は以下のようなものを予定していた。
1.GPIOポートを監視して、シャットダウンを開始するプログラムを開発して、それをsytemctl に登録する(いわゆる自動起動設定)
2.GPIOポートを監視して、シャットダウン信号を送るプログラムを開発して、それをSystemctlに塘路する(これはシャットダウン時処理)
これを作って登録してということをやっていて、実際できたんだけど、いろいろ調べていると、この動作は、実は設定するだけで、実現可能であることが判明した。
なんとこの2行(有効な行数)を設定するだけで、自動的にシャットダウンを開始し、しかも電源を切るための信号を出力してくれる。
config.txt への設定の詳細はここを参照してくださいを参照すること。
動画中最後のほうで、ボタンを何回か押してるのは、debounceの効果を確認するためで、1秒以上押されたら、シャットダウン指示と認識することを確認。
ただ問題があって、この設定をするとどうもReboot が効かなくなる(シャットダウンしちゃう)。
マイコンのプログラムは次回。
シャットダウンボタンを1秒以上押し続けると、シャットダウンが実行され、安全に電源が切断されます。
が、それをコントロールするマイコンは常時通電ということになります。こいつは、ごく小さいので、
待機電力が気になる人はマスター電源スイッチをつければ大丈夫。
動作は、前回のブログでも書いたが、100ミリでのオンオフのあと400ミリでのオンオフがあり、その後800ミリ間隔になるはずだが、動画ではそうなっていない。
800ミリの間隔の時の動作は、Raspberry piからの信号を待っている状態で、連携が確認されると、常時点灯になり、連携終了を通知している。
LEDとかスイッチとかは、3dプリンタ本来のものというか、スイッチの中にLEDが付いてて、押すと光るようにできるやつがつながることを想定していて、動画では試験用のダミー。まあ、言わなくてもわかるが。
本体側の設定は以下のようなものを予定していた。
1.GPIOポートを監視して、シャットダウンを開始するプログラムを開発して、それをsytemctl に登録する(いわゆる自動起動設定)
2.GPIOポートを監視して、シャットダウン信号を送るプログラムを開発して、それをSystemctlに塘路する(これはシャットダウン時処理)
これを作って登録してということをやっていて、実際できたんだけど、いろいろ調べていると、この動作は、実は設定するだけで、実現可能であることが判明した。
#powerdown on dtoverlay=gpio-poweroff,gpiopin=6,active_low=0 #for shutdown start dtoverlay=gpio-shutdown,gpio_pin=4,active_low=1,debounce=1000
なんとこの2行(有効な行数)を設定するだけで、自動的にシャットダウンを開始し、しかも電源を切るための信号を出力してくれる。
config.txt への設定の詳細はここを参照してくださいを参照すること。
動画中最後のほうで、ボタンを何回か押してるのは、debounceの効果を確認するためで、1秒以上押されたら、シャットダウン指示と認識することを確認。
ただ問題があって、この設定をするとどうもReboot が効かなくなる(シャットダウンしちゃう)。
マイコンのプログラムは次回。
Raspberry Pi 電源が切れちゃうかもしれないアダプタ [Raspberry pi]
なんとなく見回すと、うちには、Raspberry Pi が複数台いらっしゃる。
基本的には、3Dプリンタのサーバになってたりするので、24時間運転してる。切るのがめんどくさいから。
閑話休題
前回のブログでもシリーズ化している、VORON 0.1 改造版の3Dプリンターは、いわゆる3dプリンタマザーボードと、それに追加したRaspberry Pi で協調しながら動作するようになっている。
最も、この動作はKlipperというファームウェアを前提としているので、現状のおいらのMotherボードでは、Klipperが動かないので、本とはなくてもいいんだけど。
話を戻して、なぜRaspberry Pi を24時間運転しているかというと、単に切るのも面倒なんだけど、なんでめんどくさいかというと、RaspberryPIはLINUXという、割と高級なOSを利用しており、このOSはシャットダウンの動作が必要になる。
Windowsでもシャットダウンは必要だよ。という声が聞こえてきそうだが、そのあたりのPCは、シャットダウンをしたら自分で電源が切れるハードウェアを持っているため、シャットダウンのための必要な処理を行った後、電源が落ちる。
しか~しだ、RaspberryPIこのような高級な電源かいろはついていない。で、それを可能にできるかどうかを試すアダプタを考えた。
回路図は、以下のようになる。
電源を入れると搭載されたマイクロコンピュータを介した電源制御回路により、RaspberryPI向けの5V電源を制御している。
このマイコンは、AtTiny10という小さなコンピュータで、大きさ的には、米粒程度しかない。
このコンピュータは、以下のような処理をしている。
0 | このコンピュータは、小さく、起動も早いので、 起動してから5秒までの間、5V制御線をオフにする 初期化フェーズであるために200mS周期でLEDをブリンクする |
1 | 5秒経過後、5V制御線をオンにする。(これによりRaspberryPIが起動する) また、ここで、60秒間、400mS周期でLEDをブリンクする |
2 | この後、RaspberryPI側からの起動確認信号を受信し、定常走行モードに移行する, ここで、シャットダウン信号の監視を開始する |
3 | で、RaspberryPiからのシャットダウン信号を受け取ると、5V制御線をオフにする。(これによりシャットダウンする!) |
5Vの電源の制御は、グランドを共通化したいことからハイサイドスイッチとした。ハイサイドスイッチとするためには、PCHMOSFETの方がいいようなので、そのようにした。
Raspberry Pi は、USBコネクタで電源を入れるが、GPIOピンにも5Vが出てるので、それをつかって引火している。最も、このピンに4Aも流せるのか問題もあるので、自己責任でお願いします。
どのようなマイコンのプログラムがどうなっているかは、次回だけど、信号を送ってやることで言々が切れるところまでは確認した。