ヘルシオAX-L1をArduinoで改造
中古のヘルシオAX-L1をメルカリで500円でゲットしました。 油汚れまくり、板金ボコボコ、プラパーツバキバキでしたが、壊れてなく(?)ラッキーな買い物でした。 しかし、使いづらいのがノブ 回すのですが、狙った番号にならない。通り過ぎちゃう。 なので、Arduinoで改造しました。 普段使うのは自動温めの3番,手動温めの29番なので、それを一瞬でできるようにプッシュスイッチをつけました。 ポチッとすると3番,29番になるような感じです。 ノブはロータリーエンコーダなので、パルス信号が出ています。 ポチった時にArduinoからパルス信号をだしてノブを模擬します。 3番がノブ3回転分なら、Arduinoから3回転分のパルスを出します。 いざヘルシオを開封 ノブの波形を見てみます。 適当に線を伸ばして 波形はしっかり2相ズレて出力されています。 回さないと3.3Vだったのでプルアップされています。 ノブ、スイッチの両方で動作するような回路にします。 といってもダイオードを入れただけです。 ダイオードのアノード側はヘルシオのロータリーエンコーダに並列に接続します。 スイッチを接続したポートはArduinoの内部プルアップとしました。 一応シミュレーションで見てみると大丈夫そうです。 スイッチを押してロータリーエンコーダを回していない時は、ダイオードが導通するためスイッチのプルアップ抵抗とロータリーエンコーダのプルアップ抵抗の両方から電流が流れます。 プルアップ抵抗が同値なら2倍の電流が流れますが、抵抗値はおそらく数kΩで電流は大した事ないので問題ないと思います。 ちなみにシミュレーション上の電圧などの定数は動作を見るためだけだったので適当です。 回路図はkicadで書きました。 githubにあげました。 atooshi-note/AX-L1 Arduinoのプログラムもgithubにあげてあります。 スイッチは以下の4つ実装します。 ノブ左1回転(left)、自動温め(atatame)、手動温め(syudou)、ノブ右1回転(right) 手動温めは29番で29回転は多いので後ろから数えています。 ノブ左1回転(left) 自動温め(atatame) 手動温め(syudou) ノブ右1回転(right) 動作が確認できたので、きれいに付けて ブレッドボードで最終動作確認して 基板に実装して固定。むき出し 便利!! 以上
にゃんCAM再構築
ことの経緯 以前、raspberry piにて猫カメラ(にゃんCAM)を構築しました。 普段はTapoを使っていたので全然出番が無かったのですが、久々に起動しようとしたら起動を繰り返す変な動作をしていました(デスクトップ表示→左上にアンダーバー点滅→再起動の繰り返し) 直そうと適当にやっていたらSDカードを割ってしまいました(物理的に)。 というわけで、再構築しようとしたのですが環境が変わってつまずいたので新たに記事にしました。 教訓 SDカードは色んな意味ですぐ死ぬ。クローンを作っておくこと ハード raspberry pi 3B(3B+ではない) 32GBのSDカード 5.1V出力のACアダプタ これはlow voltage errorの対策です 機能、ファイルの置き場など OpenCVでUSBカメラ(webカメラ等)2台を制御し、30分ごとにLINEで撮影画像を送信します 2台用でプログラムを書いてあるため、2台以外(1台or3台〜)ではプログラムがエラーになり、動作しません。(具体的にはプログラムエラー→再起動のループ)) 1台分にコメントアウトすれば1台でも動作します saikidou.serviceとsaikidou.timerによってラズパイを定期再起動させますが、ラズパイの安定性向上やUSBが死んでカメラが認識しなくなることが偶にあり、それを復帰させるために実施します USBが死ぬ(例えば、カメラが1台しか繋がってないような状態になります)と上記した通りnyancam.pyがエラーになり、nyancam.serviceによってプログラムの再起動を繰り返しますが、少なくとも定期再起動のタイミング(6時間ごと)で復帰するため長期にカメラが機能しなくなることはなくなります 死亡したときはプログラムの再起動が繰り返されるため、USBカメラのLEDが点滅します(LEDは撮影時に点灯) ラズパイのそばで対応できるなら再起動を待たずともUSBの抜き差しで再認識します(USBが復帰し、nyancam.serviceによる再起動でカメラが2台認識します) GPIO26に接続したスイッチを単押しするとテスト撮影、5秒以上長押しするとラズパイをシャットダウンします Filename Path Note nyancam.py /home/USERNAME/Desktop/ プログラム本体 nyancam.service /lib/systemd/system/ nyancam.pyを自動起動する エラー時にnyancam.pyを再起動する saikidou.service /lib/systemd/system/ ラズパイを定期再起動する saikidou.timer lib/systemd/system/ saikidou.serviceとセット githubにあげてあります プログラムの実行結果 nyancam.pyを実行した結果例を載せます カメラ検索でワーニングが出ますが、動作に問題ないためそのままにしています。 camera number 0 Find! [ WARN:0] global /tmp/pip-wheel-a8gfdc_n/opencv-python_13563f08137a4b20bc4dfee05bcbf854/opencv/modules/videoio/src/cap_v4l.cpp (893) open VIDEOIO(V4L2:/dev/video1): can't open camera by index camera number 1 None camera number 2 Find! [ WARN:0] global /tmp/pip-wheel-a8gfdc_n/opencv-python_13563f08137a4b20bc4dfee05bcbf854/opencv/modules/videoio/src/cap_v4l....
別PCでHugoするときの注意点
別pcでもブログの執筆をするために別pcに git cloneしたが、 hugo server -Dでエラー git submodule update --init --recursive を実行 Hugo ビルドエラー対応 found no layout file | infraya.work またhugoのversionは揃える必要あり hugo server -Dで http://localhost:1313/にアクセスしてもPage Not Foundとなった
報告書をMarkdownで書いてPandocでいい感じのPDFにする
報告書をMarkdownで書いてpdfにしたいと思っていたところPandocを使うと良さそうだと知りました Pandocはインストールが難しいらしいので、安易にdockerで構築しようと思い立って苦労しました。。。 LaTexは名前は知っていたのですが、学生時代はMSWordで論文を書いたため、ほぼゼロ知識だったのですが今回の構築を通して少し学べました githubにまとめました できること MarkdownからPandocを用いて1コマンドで良い感じのPDFを生成すること できたもの pandoc-latex/content.pdf at main · atooshi-note/pandoc-latex 特徴 Dockerで構築 pdf-defaults.yaml,header.texに設定を記載 pandoc-crossrefにより図表番号を自動入力(相互参照) 目次のリンク機能 章番号自動付与 defaults.yamlはpandoc2.8以降の機能です 環境 Windows10,11 macOS 12.6.8 Docker Desktop Docker > docker -v Docker version 24.0.2, build cb74dfc Pandoc > docker run -it --entrypoint=/bin/sh --volume "$(pwd):/data" manned2665/pandoclatex311 /data # pandoc -v pandoc 3.1.1 Features: +server +lua Scripting engine: Lua 5.4 User data directory: /root/.local/share/pandoc Copyright (C) 2006-2023 John MacFarlane. Web: https://pandoc.org This is free software; see the source for copying conditions....
netlifyでQRコードリダイレクト
概要 netlifyでQRコードをリダイレクト😃 背景 立ち上げたサイトURLをQRコード化して、紙に印刷を検討。 その場合、修正が入ってサイトのURLが変わってしまったらQRコードも変更しなければならない。 しかし、紙に印刷していれば、印刷し直し。 それは困るので、リダイレクトをしてQRコードを変更せずに済むようにした。 参考 感謝🙏 https://uepon.hatenadiary.com/entry/2020/11/19/014359 検討 リダイレクトするサービスは無料でたくさんある。 しかし、無料のサービスはサーバが不明なのでやめた。 github pagesでリダイレクト 参考サイトではgithub pagesで実装されているが、github pagesはprivateリポジトリでは使えない。 publicだとURLなど、中身が公開されてしまうのでgithub pagesは辞めた。 netlifyでリダイレクト githubのリポジトリはprivateとして、 https://uepon.hatenadiary.com/entry/2020/11/19/014359 を参考に、git clone まで実施 https://bioscryptome.t-ohashi.info/hugo/hugo-netlify-build/ を参考に、netlifyとgithub連携をする basic build settings は全部空欄とした https://uepon.hatenadiary.com/entry/2020/11/19/014359 を参考に、index.htmlを作り git push -u origin main を実行 hugoの時はリダイレクト設定とかをやったが、今回はやらずにいけた。 あとは、netlifyのURLでQRコードを作ればOK netlifyのURLにアクセスすればリダイレクトされる。 その他 立ち上げたサイトはgoogle検索で出てこないようにしている 以下で検索して出てこなければOK site:サイトのURL つまり、クローラによってインデックスされていない google search consoleに申請しなければ検索に出て来ない 以上😀