[3Dプリント] 食洗機Panasonic NP-TZ300の調整脚(ゴム脚)をカスタム

食洗機を清掃したついでに設置位置を微妙に動かしたら、ちょうど段差にかかってガタガタになってしまい、ケースも歪んでドアが閉まらなくなってしまいました。

もともと、Panasonicの食洗機には、下図のような調整脚が2個付属してきます。

NP-TZ300取扱説明書より抜粋

真ん中に十字の突起があり、90°単位で回転させて差し込む形になっていて、取り付ける向きで嵩上げの高さを+3mmか+5mmか選べます。

今回の設置場所はちょうどギリギリ段差に足がかかっていて、これでも不足で少しガタ付きが出る状態でした。調整客の下に更になにか敷いても良かったんですが、どうせならと3Dプリンターで互換パーツを作って、底厚を+5mmにして造形しました。

一見複雑な形状をしてますが、基本的には幾何学的なデザインなのでモデリングは15分くらいでできた気がします。

スマホケースなどに使われる柔らかい素材のTPU 95Aで出力したのがこちら。

左(白)が純正脚、右(グレー)が今回作った+5mm高のものです。TPU製なのである程度柔らかさと摩擦があります。純正より少し固い気もしますが厚みも違うのでなんとも。

一発で綺麗にはまり、結果筐体はガチガチに安定してドアの開閉もスムーズになりました。敷物をするよりもズレが発生しにくいので長期的な安定性も期待できます。たまたまTPUフィラメントの在庫がスペースグレーだったんですが、フロントパネルとのマッチングもいい感じです。

[参考] 純正調整脚は買える?

今回改めて調べてみると、前脚2つに取り付けてあった調整脚のうち1つは変形して高さが出なくなっていました。これってパーツで買えるのかな?と思って検索してみたものの、ANP335-8020という品番はヨドバシや楽天で普通に出てくるものの、これの対応機種は「NP-TCM4-W,NP-TR7,NP-TY11-W,NP-TR9-C,NP-TR9-T,NP-TR9-W,NP-TH1-C,NP-TH1-T,NP-TH1-W,NP-TA4-W」とのこと。

TZ系は記載がありません。イラストを見る限り同じ感じだし、わざわざサイズ違いで作るようなものではない気もしますがマッチングは不明です。TZ300用と明記されているものは見付かりませんでした。メーカーに問い合わせるしかなさそうです。

もし入手が難しくてお困りの方、または高さをカスタムしたものがほしい方がいらっしゃいましたらコメントにてご相談くださいませ。

増車に備えてGPSロガー参号機を作る

我が家のクルマにはRaspberry Pi Zero Wを使った自作GPSロガーを密かに搭載し、自前のWebサーバーにリアルタイムに位置情報を送信しています。防犯/追跡的な意味と、家族と合流する時などに詳細な現在位置を把握するためです。トヨタ車のアプリによる位置は駐車時しか更新されないので、「今こっちに向かってて、到着まであと何分くらいかかりそう」といった予測には全く使えないんですよね。

詳細はこちらの記事など。

さて、クラウンより前に契約していた某長納期車がぼちぼち1,2ヶ月以内に生産日が確定しそうという気配がしてきたので、GPSロガーももう一台作ろうと思います。盗難ランキング首位独走の車種なので、もちろんなんらかのきちんとした盗難防止セキュリティも導入するとは思いますが、それでも盗られた時に、誰も知らない秘密のGPSロガーがバックアップとしてあると無効化されにくいだろうというのと、前述の日常使いにもいいかなと。まぁ同居人が買いながら99.99%運転するのは自分になるので、そこまでリアルタイム位置情報が必要にはならなそうですが、、

先代製作から時が経ちすぎていて…

2019年にカロスポ用に壱号機を製作(後日クラウンに移設)した後、2021年に30プリウスを増車した時はまったく同じ構成のハードを揃えて、microSDの中身もクローンして設定だけ変更して流用しました。

しかしそこから4年経った現在では、

という変化が起きていました。

Raspberry Pi Zero 2 WH - はんだ付け済みヘッダー付き

Raspberry Pi Zero 2 WH – はんだ付け済みヘッダー付き

4,800円(04/15 09:08時点)
Amazonの情報を掲載しています

ZeroからZero2になるとCPUがArmV6からV8になり64bit化され、シングルコアからマルチコアになっています。当時のOSイメージでは最適化されていないどころかまともにブートしない可能性が大です。当時のOSはまだRaspberry OSという名前にすらなっていないRaspbianの頃のものなのでapt updateするにも限界があるでしょう。ということで、OSは完全新規インストールすることに。GUI関係のパッケージを省いてRaspberry Pi OS Lite (64bit)を選択。当時パッケージは何を追加したとかまったく記憶もメモも残っていないので前途多難です。

そしてもうひとつ重要なGPSモジュール+アンテナが販売終了になっていた件。直接の後継製品も同社から販売されておらず、まったく異なるチップのGPSモジュールを再セットアップする形になります。車載用なので感度を得やすいGPSアンテナは別体型から物色して、Pi Zeroと同一基板サイズのHAT型モジュールのこれを選びました。

ちなみに背面の40ピン端子がメスヘッダーなので、ラズパイZero2の方はオスヘッダー付きのWHモデルをチョイス。ブッ刺すだけで結合完了。おそらく今回は半田付けも不要でケース内はかなりスッキリ作れそうな気がしています。

バックアップ電池としてML1220という規格の充電式コイン電池をセットできます。入れておくと衛星の位置情報をキャッシュしておけるので、電源投入からGPSを掴むまでの時間を短縮できるんだと思われます。壱号機、弐号機の秋月のGPSモジュールは普通のコイン電池だったので定期的に交換が必要でしたが、充電池ということで寿命も期待できます。残念ながらAmazonでは信頼できそうなブランドのものは見付からず、Yahoo!フリマでゲットしました。一応Amazonならコレとかでしょうけど送料も高いのでご注意ください。

ちなみにこちらのセルラーモデルもあって、車内Wi-Fiに依存せずに位置情報を発信しつづけられるならいいかもと思ったんですが、技適マークの有無について記載がなかったのと、アリエクだったかで「GPSとセルラー通信は同時に使用不可」みたいな記述があり、ちょっとリスクが高いなということで見送りました。

microSDカードも大きいサイズは不要(Lite版OSのインストールサイズは2GB程度)なので、あえて小さい容量で、むしろ速度面や耐久性を優先したものを選定。最近のmicroSDはA1とかA2とかいうアプリケーションパフォーマンスクラスというランダムアクセス基準の規格があり、PiシリーズもA1まで対応してる(Zero2がどうかはよくわからず)ようなので、A1を要件としてみました(A2は対応してても活かせない)。まぁ別に直接触るものではないので、普通のU1とかU3とかでも全然問題ないんですが、値段もかわらなかったのでこちらに。購入時、Amazonが販売するもので697円でした。

容量は8GBとかで全然足りるんですが、そんな小さいのでA1は見付かりませんでした。

今回はGPS HATを取り付けるので壱/弐号機と同じケースは使えないだろうということで3Dプリンターで自作。Raspberry Pi Zero2の3Dモデルを海外サイトのGrabCADから取得(要登録)。HATも同一基板サイズなのでコピーして間隔をあわせ、それらが収まるケースをデザインしました。

■ハードウェア組立

ケースの材料は耐熱100℃のASA。GPS HATの上に高さのあるジャンパー(黄色)があるので、トータルの高さは壱、弐号機に比べてだいぶ出ちゃいました。幅70 x 奥行き35 x 高さ31mmという感じ。

右側面から生えているのがGPSアンテナです。

SDカード&端子面がこちら。miniHDMIとmicroUSB端子を挿せるようにするのに、基板と壁の隙間を極限まで狭めて、肉厚も1.8mmとしました。結果としてかなりギチギチでネジ止めの必要がなさそうなレベル。むしろ取り出しに苦労します。底に押しだし用の穴を空けておけば良かった。GPSアンテナのコネクターもホットボンドで固めようと思ったんですが、将来的に基板を取り出す時に困りそうなので保留。外側にケーブルガイド的なものをつければ良かったかも。

結果としてケーブルもそのまま挿せるし、microSDも素手で抜ける形にまとまりました。

あとは排熱性が不安ではあります。もう少し穴をたくさんあけて通気性を確保しようとも思ったんですが、車内でホコリやゴミが入るのを嫌ったのと、3Dプリント的に側面に穴があくと造形が難しくなるという理由でまずは穴開けは端子部のみとしました。どうにも動作が不安定になりそうならヒートシンクをつけたり最悪ファンをつけようと思いますが、ChatGPTさん曰く、ロード100%でぶん回すとかしない限りヒートシンクも不要、とのことだったのでまずは様子見。

■ソフトウェア整備

OSは前述の64bit版LiteをPi Imagerでサクっとセットアップ。一旦自宅のWi-Fiに接続し、基本sshでセッテイング作業を進めます。スクリプトはPythonで作られているので、それ回りをインストール。

GPS HATの公式ガイドはこちら。赤字の

If you use bookworm system, only the lgpio library is available, bcm2835 and wiringPi libarary cannot be installed or used. Please note that the python library does not need to install, you can directly run the demo.

という部分に注目。bookwormシステムの場合はlgpioライブラリだけでOKということです。bookwormとはDebian 12系のことで今回使用したRaspberry OSも当てはまります。minicomというツールをいれてサンプル通りにテストしたらあっさりデータが落ちてきました。いうてシリアルポート通信するだけなのでドライバーとかライブラリといっても特殊なことはなかったです。

先代はgpsdというシリアルポートからGPS情報を取り出してネットワーク経由で配信するデーモンを介していたんですが、対外的な通信をするわけではないので、今回はPythonから直接シリアルポートを叩くアプローチに変更。先代よりパワーアップしているのでそこまでリソースをケチる必要もないですが、無駄を残す必要もないかと。というかここでもChatGPTさん大活躍。必要なライブラリを挙げてもらい先代スクリプトを渡して書き直してくれと指示したらほぼ一発で修正してくれました。これがなければ自分で書き直そうとは思わず、そのままgpsd経由を踏襲していたと思います。

pipでgps3というライブラリを入れようとしたらセキュリティポリシーでエラー。今時はシステムワイドにライブラリを入れずにユーザーレベルの仮想環境というのを作ってやる作法らしい。全部ChatGPTさん情報!マジありがたい。

継続的にシリアルから送られてくる行のステータスがA(正常)の時は緯度経度などの値をコンソールに出力。それ以外のステータスではエラーメッセージを吐いてくれるので状況が一目瞭然です。新規導入ハードであるGPS HATがすんなり動いてくれてホッとしました。

また本番スクリプトでは徐々にサーバー送信が遅延していく現象が起き、ChatGPTさんの見立てでは、print文によるコンソール出力のバッファーあふれではないかということで、「, flush=True」を追加しています。これでバッファーに貯めずに即時出力されるらしい。もう少し検証予定。

あと、別記事のリソース最適化をする中でBluetoothを無効化したところ、使用するシリアルポートが/dev/ttyS0から/dev/ttyAMA0になりました。

ASSAドア用Sesame固定プレートのマグネット対応

ASSAアブロイの木製ドアに粘着両面テープを使わずにスマートロックSesameシリーズを取り付けるプレートを3Dプリンターで自作してきました。

同社製ドアをお使いで同じお悩みを持つ方からもちょくちょく頒布依頼を受けたりしてきましたが、今回ふと思いついてマグネット固定Verを製作しました。

Sesameは少し前から鉄製ドアに取り付けるためのマグネット「SESAMEマグネット」を販売しています。見た目普通の直径20mmの円形マグネットですが、Sesame本体側に影響しないよう片側は磁力を遮断するカバーがついています。つまりこのマグネットのカバー側をSesame本体につけて、ドア側の鉄板にくっつけるという構成です。

またSesame製品汎用となっており、5つのうち4つとか2つを使って自分で適当に貼って使う形です。本体底面の粘着テープを利用する想定なのか、マグネットには粘着テープはついてきません。

今回はこれを活用して固定プレートにもマグネット装着を可能にしようという試みです。ちょっとしたメンテナンスやうっかり体当たりしてもぎ取れてしまった時など、マグネットであればすぐにつけることができます。

設計としては単純に従来の固定プレートに直径20mmの凹みをつけただけです。

背面の反り防止スリットに到達して貫通してしまってますが、これはこれでもし鉄板を取り外したくなった場合に後ろからマイナスドライバーなどをつっこめて便利かなと残してあります。

用意した部材はSESAMEマグネットに加えて、以下。

まずSESAMEマグネットをSesame本体に貼るための両面テープ。

本体付属の底面全体の両面テープだとマグネット以外の部分に粘着面が露出しホコリなどが付きそうなので、SESAMEマグネットとピッタリ同サイズのものをチョイス。こちらは10mm径と20mm径がセットになってしまってますが、厚みや耐水、耐熱仕様であることを重視しました。

そして固定プレート側に埋め込む鉄板。両面テープ付き。

もっと安いものも買ってみたんですが「マグネット用」とあるくせに全然磁石がつかずに返品。信頼性が高そうなこちらにしました。

■使用方法

最初にSesame本体にマグネットをはる位置決めテンプレートとして使用します。

マグネットをカバー面を上にしてセット。

その上に両面テープを貼っていきます。

剥離紙をはがしてSesame本体を上から押さえつけます。しっかり貼り付けた後で引き抜くと本体側はできあがり。

再び凹みが空いた固定プレートに今度は鉄板4枚を貼り付けます。

完成!

鉄板が1mm厚と薄いのでしっかり吸着するか心配でしたが、普通に使う分には問題ないくらいガッチリつきます。逆に体当たりしてしまった時に外れてくれる方が安全かなと。まさにMagSafe。

穴の深さが2mm、鉄板が0.4mm厚、粘着テープが1mm厚なので、0.6mmの段差が残るので、SESAMEマグネットがバチっと固定位置にハマってズレることもありません。

壁につけた様子。

逆に一度位置決めしてしまうと動かせないのは粘着テープ固定とかわらないですが、簡単に脱着できる点は自分のようにちょいちょい付け外しして採寸したり自作アクセサリのマッチングとったりする人間には便利です。まぁ、普通の使う分にはそうそう脱着の必要はないと思いますがw。

■頒布情報

とりあえずバッテリー左配置のだけ作りましたが、他のパターンやSesame 5 Pro用も簡単に作れると思うので、希望があったのから作っていこうかなと思います。

SESAMEマグネット以外の部材(両面テープ、鉄板)も余ってるので、必要数同梱して1,500円とかでしょうか(通常版が1,000円、送料、税別)。

ご関心お持ちであればこちらのフォームからお問い合わせください。

eufy SoloCam HomeBase S380追加、カメラS340も買い増し、ポールマウントDIY

数日前に導入したばかりのeufyのセキュリティカメラSoloCam S340がなかなか良かったので、同じセール期間中に追加購入をしました。S340の記事はこちら。

追加したのはHomeBaseのS380とSoloCam S340をもう一台です。

■HomeBase S380

こちらはeufyのカメラシリーズの録画データを保存/処理する家庭用サーバーデバイスです。カメラ単体だと内蔵ストレージに保存しますが、宅内にS380を設置してペアリングしておくとS380側のストレージ(内蔵16GBまたは増設した2.5inch HDD/SSD)に保存されるようになります。万一カメラを持ち去られてもその瞬間の映像までは残る(盗まれにくい)ということになります。

またスタンドアローンのカメラでもエッジAIで「人間」「車両」といった識別はしますが、S380だと更に一歩進んで顔認識で人物を識別できます。

そして3つ目の利点として、AI処理を電源の心配がないHomeBaseが肩代わりすることで、カメラ側のバッテリー消費が抑えられるとのことです。

実際、S340をほぼ満充電にして屋外設置したところ曇天の1日だけで20%台まで残量が減ってしまいました。買ったばかりで嬉しくてちょくちょくストリーミングしたりPTZ操作をしたりしていたというのもあるかも知れませんが、いくらなんでも「ソーラー充電できなくても3ヶ月保つ」気はまったくしません。余計な部分で動体検知しないよう範囲を絞るなどしてはみたんですか。あとはまぁ録画解像度が3Kなのは電池喰いかもは知れません。でもまぁ録画解像度が高ければ後で拡大して人物の顔まで判別できたりするかもなので、ここは極力譲りたくないところです。そんな感じだったので、少しでもカメラの動作時間を延ばせればというのがHomeBase導入の大きな理由です。

カメラとHomeBaseは専用SSID接続のみ?

セッテイングして気付いたというか「ほんとに!?」と思ったのは、カメラとHomeBaseは専用SSIDでの通信になるという点。自宅Wi-Fiの設定は上書きされます。これだと例えばせっかく自宅Wi-Fiを有線バックボーンで張り巡らせていても活用できず、カメラとHomeBaseの物理距離や障害物次第で通信が不安定になってしまうということです。とても残念、というかどうしてこんな仕様にしたんでしょうね?常にHomeBase側でAI処理をするということはストリーミングしっぱなしということになるので、自宅Wi-Fiの帯域を食い潰さないようにとの配慮でしょうか?とはいえどうせ当該周波数帯が混むことには変わりない気もします。今回の設置位置は2台のS340カメラとHomeBaseの位置関係が近いので実害はなさそうですが、これが例えば家の端から端みたいな配置だったらどうなんだろ?と言うところは気になりました。

またHomeBaseとのペアリングに切り替えると、設定がリセットされたりそれまでの録画が閲覧不能になります。削除はされないようですが再び自宅Wi-Fi接続に戻すまでは閲覧ができなくなる旨のメッセージが出てました。同期くらいしてくれと思わなくもないですが、やはりこれも常時ストリーミングをする傍らで並行でできるようなものでもないのかも知れません。

ペアリング操作手順自体はこなれていてそれほどつまった箇所はなかったように思います。「いやいや既存Wi-Fi経由でつなげられないわけはないよね??」と思ってあちこちいじりまくったのはありますが。

せっかくなので2.5inch HDDどこかに転がってるはずのを発掘して入れてみようかな。

S340カメラのおかわりと円柱雨樋用マウンター作成(3Dプリント)

同居人が別のアングルも見えるようにしたいということでもう一台パンチルトのS340を買いました。カメラ自体のレビューは前記事にありますのでそちらをご覧ください。

1台目はベランダの手すり部分にマウントしましたが、今回はもう少し地上に近い位置への取り付けだったので目を付けたのが雨樋(あまどい)の縦樋部分です。薄い樹脂でできてますが、結構劣化して思い切り握ったら壊れそうな気配もありますが、そこくらいしかつけられそうにない。自分でポールを立てるのも大変だし。

こういう円柱ポールに固定する時は大概ステンレスバンドみたいなネジで締め付ける金属ベルトみたいなものが使われると思うのですが、S340には付属していませんでした(オプションにもないと思う)。そこで雨樋の径を測って例によって3DプリンターでDIYです。

ステンレスバンドは汎用品をAmazonで購入しました。雨樋の直径が5cmくらいだったので、こちらの46-70mmの範囲に対応したものをチョイス。2個で良かったんだけどまぁそう高くもないからヨシ。

全体像はこんな感じ。

わかりにくいですが、右側の少しベージュがかった部分が3Dプリント品です。前回同様インサートナットでM4のボルトを受けるようにして固定しています。ブラケットとカメラが外せるので、ボルトはつけっぱなしでカメラの脱着は可能です。

ステンレスバンド周りはこんな感じ。

三日月状の部分が我が家の雨樋にピッタリ合うようになっていて、ステンレスバンドの締め付けを半分は引き受ける感じ。もう一回り大きいリングにして全周で締め付ける方が雨樋を壊しにくいかなとも思ったんですが、まずはこんな形で。材料は白の在庫があったBambuのPETG-Basic。ちょうどPETG-HFがセールで劇安なので白も注文したところでしたが、逆に半端に残ってるのを使い切りたくて。PLAよりは熱耐性があるし白だし反りにくい箇所もないのでこれでいけるんじゃないかと期待。

あとは締め付けが甘いと下にズリ落ちていかないか心配ですが、とりあえずは雨樋側の壁に固定しているアンカーのところに載せる形でいいかな。

その出来、有料級!?

実際に取り付けた様子がこちら。

どうよ。バッチリでしょう(ご満悦)。目論見通り壁に固定するアンカー(?)に載せる形にしたので、ここよりズリ落ちてくることはないです。ステンレスバンドによる締め付けもドライバーで微調整できるので、雨樋を割ることなくいい感じに固定できてると思います。なにか滑り止めのシートでも挟んだ方がいいかとも思ってたんですが、いまんとこ回ってしまう様子もなさそう。

あとはPETG Basicの耐候性次第ではありますが、近いうちにUVカットスプレーを買って吹いておこうかなと。樹脂に吹くなら模型用のこういうのかな?どれくらい保つかわかりませんが。

いやぁこれはニヤニヤしてしまいます。3Dプリントの醍醐味ですね。

ちなみに雨樋の縦樋の規格としては直径で60mmと75mmが一般的なようです。こちらの情報によるとメーカーでコンマ何mmの誤差はあるようですが。しかし何故か我が家のは実測でΦ54.4mmでした。経年で痩せた?んなこたないか。まぁそこは簡単に調整できると思うので、雨樋以外のポールの場合も含め、他の外径のリクエストもあれば対応は可能だと思います。もしご興味ありましたらコメントにてお知らせください。

  • 金属埋め込みナット
  • M4ボルト
  • (少し余ってるのでご希望なら)ステンレスバンド

もセットでご提案できると思います。

[3Dプリント] AirTag/TimeCapsuleをドアポケットに隠す底上げパネル

先日導入したこちらのTimeCapsuleをクルマのどこに忍ばせようと思った時に、ふと思いついたので作って見ました。クラウンの後席ドアポケットを上げ底して底に仕込むパネルです。

画像はひっくり返した底側。

TimeCapsuleまたは裸のAirTagをはめ込んで、裏返して運転席側ドアポケットに仕込みます。あえて下側は足をつけていないのは、取り出す時にこちら側を指で押してシーソーのように反対側を浮かせるためです。

TimeCapsuleを取り付けた状態がこちら。

右は型取りに使った下記のポケット用滑り止めマットです。

いい感じに接着不要でぴっちりはまりました。逆さにして振っても抜けません。またTimeCapsuleにできれば入れないでほしかったロゴの面を上にして入れれば一応隠せます。

TimeCapsuleまたはAirTagの厚みの分だけ深さが浅くなるわけですが、パっと見では気付かれないのではないかと。特にウチはこういう滑り止めシートを上に敷いているので、見た目では他のドアのポケットと違いがわかりません。

TimeCapsuleを使わずに素のAirTagだけを入れた場合は、高さは更に低くなり目立ちにくいと思います。取り出すためにリングに切り欠きを入れてみました。

いずれにせよ窃盗団に「トラッカー検出(Tracker Detect)」アプリ(Appleが悪用されないようAndroid向けにリリースしているAirTag検索アプリ)で車内にあることに気付いて音を鳴らされたら見付かっちゃうかもですが。

「トラッカー検出」アプリの動作の様子はGIGAZINEの記事が詳しいです。

  • 持ち主のAppleデバイスから離れて15分以上経たないとアプリで検索しても検出されない
  • 検出から更に10分経つと音を鳴らす機能が有効になる
  • 持ち主から離れて8~24時間経つとアプリで検索しなくても自発的に音を鳴らす

という仕様っぽいので、やはり完全な盗難時追跡デバイスとしては心許ないですね。そもそもそういう用途で販売されている製品ではないし、ストーキングなどに悪用されるのを防ぐ方が優先なので仕方ないところです。あくまで保険、気休め程度に考えるべきでしょう。

■実際に車両にセットした様子

なにも置いてない状態
AirTagを入れ、マットを敷いた状態

取り出しもこんな感じでOKでした。

TimeCupsuleを入れ、マットを敷いた状態

■まとめ

理想はやはりせっかく10年電子交換不要を謳うTimeCapsuleだったらもっと奥深くに隠した方がいいでしょうかね。AirTagだと毎年電池交換しないとなので、これくらいの隠し方がバランス良いかも知れません。ただコインパーキングなどに放置された時に、ある程度通行人のAppleデバイスまで電波が届いた方が良いので、ドア付近というのは場所としては悪くない気も。なかなか自分のAirTagをテストするのは難しいですが、そのうち「トラッカー検出」くらいは使って試してみようと思います。