あっきぃ日誌

鉄道ブログのような技術系ブログのようななにか

玄関の施錠チェッカー

冬に一度、深夜誰かにうちの玄関の扉を開けようとされて、当然鍵がかかってるのでゴンッ!と引っかかる音がなって終わったんですけど、めちゃくちゃこえーッ!!となり、それからしばらくは夜布団に入ってから「あれ、鍵かけたっけ……?」と気になるようになってしまいました。そうじゃなくても、外出してから「あれ、鍵かけたっけ……?」となりがちなので、そう言う感じの不安を解消するための装置を作ってみました。

構想

サムターン自体に何かをつけるのは、普段手で持つ時に邪魔になるので避けたかったので、デッドボルト(鍵かけたらニュッと出てくるやつ。今ググって知りました)にテグスを貼り付け、チューブを通してなんか機構に通すところまでをまず考えてみました。これでテグスが2cm前後動くのは確認できました。

実際の実装。セロテープで雑に貼ったので、劣化すればテグスが取れたりなんだりすると思いますが、賃貸なのでこれ以上のアレは慎みます。チューブは熱収縮チューブを切って、これもセロテープで固定しました。

次にヒモの動きを何で検知するか。秋月でいくつかそれっぽいセンサーを買ってきました。本命はまんなかの振動センサーで、これがテグスによって角度が変わることで中のボールが動いて開閉が管理できることを想定していましたが、思ってたよりも動きが微妙だったので断念。右のマイクロスイッチだとデッドボルトによってテグスが引っ張られた力でもオンオフできそうなことがわかったため、これが採用されました。左のリードスイッチは面白そうだったのでついでに買ってみたもの。これも精度的に微妙そうなので採用しませんでしたが、磁石でオン・オフできる単純っぽい仕掛けが面白かったので、いずれどこかに活用してみたいかも。

システム部分は、Raspberry Pi Pico W+乾電池で動かして、スイッチのオンオフで起動したらZabbixあたりに通知して、次にスイッチが変化するまでスリープすることを考えていました。が、Pico Wはディープスリープ周りの実装がPython系で微妙、Arduinoもなんかたいへんそう、CのSDKで頑張れば……という、Picoエンジョイ勢には厳しい感じだったため断念。

手元に転がしていたSeeed XIAO ESP32C3がArduinoでディープスリープを実装できそうということがわかったので、XIAO ESP32C3+リチウム電池の構成になりました。これだとスリープ時に43μAの低消費電力を実現できるので、かなり良さそうです。乾電池が使えなくなりますが、基板裏面のパッドからリチウム電池に接続すれば、充電も可能な環境が構築できるので、良さげですね。

工作

マイクロスイッチは100円ショップで買ってきたケースに固定して、空きスペースに電池と基板も突っ込む感じにしました。ケースはクリップ付きでしたが、簡単に外せたのと、この部分がくぼんでいたおかげでマイクロスイッチを取り付けるのに重宝しました。取付け用の穴をクリップがあった部分に開け、ケース上部にはテグスを通す穴も開けました。あと、ケース裏面にはドアに貼り付けるためのマグネットも取り付け。しかし、すでに片方取れてしまっており……。

基板づくり。XIAO ESP32C3を乗せるピンソケットと、マイクロスイッチのオンとオフ用のピンヘッダーと、扉の開け締めの変化時に光らせる2色LED、コードを書く途中でスリープを阻止するようにジャンパーピンヘッダーという構成です。2色LEDはもらい物だったんですが、活用できて良かったです(まだ大量にある)。

配線は、マイクロスイッチの入力にD2とD3、スリープ防止ピンにD4、LEDにD5とD7を割り当て。D6を使おうとしたら挙動が怪しく、調べたらUARTに使われているので使用非推奨とのこと。うおおい!ディープスリープからの復帰にはD0〜D5が対応なので、スイッチ部分は問題なさそうです。

lab.seeed.co.jp


コード書き

Arduinoで作成。スリープからの復帰がうまくいかなくて半日くらい唸っていましたが、GPIOピン番号とパッド番号が違うことに気づいて解決できました。罠すぎる。ずっとプルアップ周りとか配線とか自分の頭を疑っていました。自分の頭を疑うのが正解だった模様。(追記)図の矢印を間違えてて修正。ここでも自分の頭が弱い問題が。

参考にさせてもらったのは以下の記事など。

ESP-WROOM-02からZabbixサーバーにZabbix senderプロトコルでデータを送信する #Arduino - Qiita

Seeed Studio XIAO ESP32C3の省電力運用について考える #Arduino - Qiita

完成

という感じで仕掛け全体が完成しました。ボックスに一式が収まっていていい感じな反面、見た目からコナンのトリック臭が漂っており、やや物騒みもあります。なお、テグスの長さを調整するために、磁石フックで折り返しを作っています(箱の右下)。箱の上のやつは使わなかったので関係ないです。

解錠するとテグスが緩んでマイクロスイッチがオフになってXIAO ESP32C3が起動、緑に光り、Zabbixにデータが送られます。

施錠するとテグスが張られてマイクロスイッチがオンになってXIAO ESP32C3が起動、赤に光り、Zabbixにデータが送られます。

動画で。最後のほうで施錠したのに緑になっているのは、その前の解錠時にWi-Fi接続に失敗してタイムアウトし、リセットされたタイミングと被ったためです。その後、きちんと施錠モードになったので、そのあたりもちゃんと動いていそうで良いですね。と思ってたら、アンテナを付け忘れていたので、そのせいや(つけたら安定した)。

www.youtube.com

まとめ

玄関施錠チェッカーを手頃な部材でなんとかする工作でした。整骨院でこの話をしたら、スマートドアじゃだめなんですかと聞かれたのですが(それはそうすぎる)、スマートドアの事故とか障害を聞くとこえーなと思いがちなので、そこまでの機能はいらないけど、冒頭の件もあるのでチェックくらいはしたいよねという気持ちで作ってみました。作りきれる気がしていなかったので、完成できてよかった。

玄関にはもう一つXIAO ESP32C3が、キッチンの照明を切る装置(サーボ)兼部屋の照明スイッチ(REST API操作)用としているので、玄関はESP32のシマになってしまいました。Raspberry Pi Picoがシマを奪える日は来るかしらん……!!?!?

そして次は、Zabbixに送られたデータをどう視覚化するかが課題ですね。すでに動いてるラズピッピでLチカさせるのが手っ取り早そうではありますが、どうすっかな〜っ。

Raspberry Pi情報Bot

わたしはRSSリーダーでだいたい購読しているのでいいと思っていたんですが、やっぱり普段張り付いているタイムラインでBotが投稿したのを見れたほうがいいなという気がしたので、Raspberry Pi情報Botを作ってみました。X?んなわけねえだろMastodonに決まってんだろ。よかったらフォローしてみてね。

h.kokuda.org

なんかあったら投稿してくれるのはいまのところ以下4つ。今後もなんかこれはと思ったものは追加できればと思っています。が、ファームウェアLinuxカーネル)のコミットとか、Pi 4・Pi 5のEEPROM更新を入れだすとカオスかなあというアレもあります。そんなレベルで欲しい人おるかいね。

  • raspberrypi.com ブログ
  • Raspberry Pi OSリリース
  • raspi.jp ブログ
  • 技適登録件数の変化

公式ブログに関しては、Raspberry Pi公式アカウントが昨年11月で更新が途絶えてしまい、Threadsで「Fediverse有効にしてほしいな♡」ってメンションしてもスルーされてしまったので、これがBotを作る直接的なきっかけになっています。

Raspberry Pi OSリリースは、自前でリリースノートをRSSに変換するスクリプトがあったので、それを活用してます。

raspi.jpのブログは、そういやユーザー会のところくらい入れてもバチは当たらんかなと思って追加しました。たまに私とかが書いた記事が通知されます。

技適登録件数の変化は、無線が絡む製品がリリースされたあとに役立つやつです。前に書いたコレのスクリプトがベースですね。

akkiesoft.hatenablog.jp

ところで、うちのサーバーもなんやかんや丼砲には弱いらしく、たまに詰まったりするっぽいので、Apacheのチューニングなあ……となったりしています。次のサーバー建造のときにnginxにできたらしてみたいが、どうかなあ……。

4/21の長津田

先々週のやつですが、なんかたまには書かなきゃなと思ったので。超久々に長津田に行ってみたら、色々変わっててたまげました……。

と言いつつ変わっていなくてたまげたのが歩道橋。まだ工事してたのか。来年までとのこと。長いなあ。

1両抜き取って検測機器を取り付けてる4102Fと7104F。なんやろね?と思っていたのは最後にわかることに。

抜き取られているやつ。

反対側から。そういやここで桜が見れることすら忘れていた。しまったなあ〜。

恩田まで歩こうとして、桜が見られるここを通ろうとしたらまさかの通行止め。調整池のところをまるっと中学校の給食センターにするのだそう。マジか。

恩田と田奈の間にできていた道路も進捗していて、ついに橋をかける準備と、橋から先の用地買収と整地が進行していました。マジか。

恩田駅前の一軒家も消えていてびっくり、1軒が3軒分の土地に化けるのもびっくりだよな……。

8606Fは変わらず佇んでおられる。

いや、こっちも変わってねえのかよ。8637Fの先頭車は一時期ライト抜き取りとか話題になっていたけれど、最終的にどうする気なんだ。

そして帰ろうとしたら、駅員さんが数名スタンバっていて察し。さっき検車区にいた7104Fがやってきました。GWの多客対応向けのための訓練が行われていた様子。停止位置を確認のためか、チョークで停止位置をマークしている様子が見られました。

うし電車と並び。Y000系も行き先LED幕が白色になってから初めてみました。

長津田に戻り、崎陽軒でお弁当を買ったりなんだりして帰宅しようとしたら7104Fが来たのでさらに1枚。またすぐにこどもの国の方に向かっていきました。

36歳になった(きのうのアキバ&久々にPCを自作した)

36歳になりました。干支3周分ですね。がしかし、人生の進捗は特にないです。日本人絶滅キャンペーンに加担していくゾ♡

いつものミクとケーキする写真をどうぞ。


きのうのアキバ

昨日はとしぁとアキバにいって散策してきました。なんかほかのておくれ勢も呼ぼうとしたら温泉旅行に行ってて、なんかハブられててキレたので自作PC一式を買ってしまいました。

本当はWebで見たドスパラのケースが気になったので実物を見に行きたくて、ケースだけ買ってあとはぽつぽつ買おうかとか思っていたのに、気がついたらマザボをみていて、他のパーツも眺めていたら店員に声をかけられて、そのまま行っちゃうか〜!ってなり、相談しながら一式行ってしまった次第。昔ならクリアファイルの女目当てに黒と緑のお店に通っていましたが、それももう昔の話で、なんだかさみしい気もします。

今回の構成はこんな感じになりました。久々に自作PCAMDを選択したし、Ryzenで組むのは初です。

  • CPU: AMD Ryzen 5 7600 BOX (AM5/3.8GHz/38M/C6/T12/65W)
    • ¥34,800
    • 7000番台の下の方を選択。ガッツリにしても、M1 Macより使い込むかどうかもわからなかったので無難に。
  • メモリ: Crucial CP2K16G60C36U5B(DDR5 PC5-48000 16GBx2)
    • ¥17,000
    • これも無難に。強いて言えば光らないことを重視🤣
  • マザーボード: ASRock B650M Pro RS WiFi (B650 AM5 mATX DDR5)
    • ¥19,980
    • GPU以外のPCIeを指す余裕が欲しかったのでこれを選択。25GbEとか挿したい日もあるかもしれないじゃないですか?
    • 光らないことを重視🤣したのに、こいつ裏面がギラギラ光ったぞ!(ボードの設定でオフにできた)
  • SSD: SAMSUNG 990 PRO MZ-V9P1T0B-IT (M.2 Gen4 1TB)
    • ¥15,880
    • SSDはキャンヘーンで1,500円オフが効いたのでProで
  • ケース: DEEPCOOL MACUBE110 PASTEL BLUE
    • ¥6,980
    • 諸悪の根源。自宅サーバーのATXケースよりでかいMicroATXケースだけど、いい色だったので
    • PCIeスロットのカバーがもぎとるタイプで、もぎとっだら戻せない以外は満足
  • ケースファン:
    • DEEPCOOL FK120 PASTEL GREEN(120mm PWM)
    • DEEPCOOL FK120 PASTEL BLUE(120mm PWM)
    • 各 ¥1,500
    • めちゃくちゃ迷って、ケースと同色とミクグリーンを1つずつ。リアにミクグリーンを配置しました
  • CPUファン: DEEPCOOL AK400 WH PASTEL BLUE(1150-1700 AM4)
    • ¥3,980
  • 電源: DEEPCOOL PQ750M(ATX 750W 80+GOLD)
    • ¥10,480
    • そう言えばないと動かないよねシリーズ。
    • GPUを積んだので気持ち盛りました
  • OS: MS Windows 11 Pro
    • ¥21,850
    • そう言えばないと動かないよねシリーズ。
    • RDPしたいのでプロで!と即答
    • MSのサイトでも買えると思って、店員さんの横で調べさせてもらったら、¥28kとか出てきてパッケージ版選んだよね。なにあれ
  • GPU: Palit NE64060019P1-1070F(RTX4060 StormX V1 8G)
    • ¥43,800
    • GPU以外で小計を出してもらって、そこにGPUを入れて20万いかないようならGPUも行っちゃおっかなーって言ったら切ってたので行きました
    • 3050と比較であれこれ言われるけどAV1エンコードで遊んでみたかったので40シリーズのエントリーを選択

というわけで、合計177,750円。たぶん、エントリー〜ミドルくらいの構成ですが、どうせマイクラとAV1エンコードのお試しをしたい以外衝動買いみたいなものだったので、こんなもんかなと思います。なんせSkylake & RTX1050からの移行なので、どうやっても性能は爆上がりです。

としぁも同じく、マイクラサーバーのリプレース用に主要パーツを買い込んでいましたが、CPUとメモリは全くおなじになったので、Ryzen 5 7600のPCでRyzen 5 7600のマイクラサーバーに接続することになりそうです。

わたしが一式を買ってしまい、かつハンドキャリーを選択してしまったので、他にはほとんどアキバを回れなくなってしまい、渋谷のHey社で組み立て会をする流れに。夕飯は隣のクアアイナで。良い気温&運動になったので、ビールをインストール。桜ミクはアキバで見つけて即お迎えした新入りです。としぁ「100ミク超えた?」わし「そろそろ超えた気がする」

コンビニで追加のビールを買って組み立て会の開始。

このヒートスプレッダーの形なんかキモいよね〜って、出たときに思った記憶があったけど、買う日が来ようとは。

CPUクーラー。ヒートシンクが白いのってちょっと新鮮。パステルカラーがいい色。30代にぶっ刺さる。メモリは挿し位置を間違えて、このあと修正しました。グリスは最初からついていましたが、部長のクマグリスを分けてもらいました。ありがとうございました。

ケースに入れる前の動作テスト。オンボードHDMIに接続すると緑背景、GPUに接続すると黒背景のBIOS設定画面になるっぽく、謎の配慮。

ケースに組み付け。配線が後ろに回せて隠せる最近のケース、きれいに見せられるけど横幅がデカくなっちゃうので悩ましいですね。どうせ足元に置いてそんなに見ないので、もう少し小さくてもいいよなって思わないこともないです。それとも空きスペースにミクフィギュアでも入れて光らせちゃう……?あと、緑のファンもいい色で満足。

Windows11を買っておきながら、動作テストはUbuntu Server 24.04で。neofetch普段使わないからピンとこなかったけど、言われて入れてみたら、ああこれかとなりました。わかりやすくて良いですね。

組み立てて、カサは減ったけどやはり重いは重いPCを気合でハンドキャリーして帰宅し、並べてみた様子。前のPCがMini-ITXなので小さいのは当然ですが、左のATXケースなサーバよりでかいのはちょっと意外。あとケースに曲線があるやつが続いたところで角張ったやつが来たので、それも最初だけ違和感出るのかなって感じ。

990 PROのベンチマーク。いやあ圧巻。2層DVDが2〜3秒で読み書きできるって考えると凄まじいですよね(ジジイ)。SSDは500GB分空けといたので、後日Ubuntu Server 24.04を入れて、切り替えて使えるようにしようかなと思っています。

課題としては、今までPCの上に積んでいたMac Miniとネットワークスイッチをどうしようかなと。MacMiniは試しにデスク上に移動してみて運用中です。悪くないけど、PCにDisplayPortを明け渡した代わりにThunderbolt接続にしようとすると、手持ちのケーブル長が0.9mとかで不足なので、もう少し長いのがほしい〜(なんかちゃんと高いらしく)。

ケースの上には今のところスイッチだけ乗せてますが、天板がメッシュの通気口だから塞ぐなととしぁに言われており。でもこれでスイッチの冷却ができるならありなんでは、という考え方も?

social.mikutter.hachune.net

というわけで、

GWのおもちゃが増えました。今年もどこにも行く用事がないので、これを遊び倒したいと思います。じつは52PiのPi5にPCIeスロットを生やすやつも追加していて、これはさっき遊んで満足してところでしたが、遊ぶものが増えまくってもうた^〜〜

自作PC組み立て価格としては自己新記録な気がするので、しばらくは納豆ご飯ですが、でも今日は誕生日なので、回転寿司にいってきま~すσ(՞ةڼ◔)