2023年12月5日火曜日

ロックの強さを調べる


「破損防止のために一定以上の力がかかったら外れるようになっているナイロン部品のかみ合わせが軽く外れすぎる。大量にある部品を検品するための治具を」

というご依頼をいただいて、作りました。

  • スイッチサイエンスの引っ張り用金具のついたロードセル
  • HX711基板
  • M5 Atom Matrix
という組み合わせ。写真は動作確認用のバラック。まぁ雑だこと。雑だけど、今流行りの「雑に作る」とは違います。

Atom MatrixとHX711基板の接続は4本だけ。
  • 3.3V - Vcc
  • GND - GND
  • 21 - SCK
  • 25 - DOUT
プログラムは
  1. HX711から読み込んだ値をグラムに変換する
  2. ふらつきを吸収するために移動平均取る
  3. LEDを赤で点滅させながらゼロ近くで安定するのを待つ
  4. 安定したら青で点滅
  5. 荷重が500gを超えたらLEDを青常時点灯に
  6. 最高値を更新していく。更新されないまま1秒が過ぎたら停止して、良品、不良品、中間品をLEDの色で表示
  7. 上記3にも戻る。
という感じです。

起動して青点滅になったらカギに商品をひっかけて力を加えていき、かみ合わせが外れてゼロに戻ると1秒後に最高値を元にしてLEDで結果を表示します。

マイコンって便利ですわね ^ ^

2023年12月1日金曜日

ラズパイ上のmotionのホワイトバランス設定

Pi zeroに純正カメラをつないで玄関動体監視カメラとして使っています。動きがあったらslackに通知が飛んでくるので補聴器していないときに来客があっても安心。

なのですが、色が辺。ホワイトバランスがおかしい。

motion.confでパラメーターいじっても変わらない変わらない変わらない……と思っていたのですが……改めてドキュメントを読むとこんな記述が。

そりゃー、いくらmotion.confいじっても変わらないわけですね……。

ということで、プロンプトで以下を実行すると設定が変わります。すぐにストリーム動画に反映されますし、pi zeroを再起動しても設定が残ってます。

v4l2-ctl -d /dev/video0 -c white_balance_auto_preset=0

ただ……どの値が適切なpresetなのか結局わかりません……玄関から外に向けているので晴れ、曇、LEDライト照明……と各種の明かりにそれぞれプリセットを切り替えないとダメっぽいですね。なので、結局defaultの1にして使っています。

色もアレですが、とりあえず画面が真っ暗なので

v4l2-ctl -d /dev/video0 -c brightness=55

にしたら、だいぶ明るくなりました(標準は50)。

2023年10月25日水曜日

M5Stack Basicのdeep sleep中消費電流



M5Stack Core/Core2のボトムを外して液晶その他を消してdeep sleepしたら消費電流どのぐらいまで落ちるか、ぐぐっても出てこない……5V端子に5V給電して

M5.Lcd.setBrightness(0);

esp_deep_sleep_start();

を実行したら約11mA、割りと多いですね。

3V3端子に3.3V給電だと約15mAです。

私という愚か者はMFAを失いAWSにログインできない地獄から如何にして復帰したか

  1.  カード不正利用されたのでカード番号が変わった
  2. AWSの料金が引き落としできないと言われた
  3. AWSコンソールにログインしようとしてMFAが求められた
  4. しかし引越し前の固定電話なのでできない!!
  5. 襲い来る請求(数ヶ月)
  6. サポートさんに問い合わせる→MFAを無効にしろと
    1. そのためのフォームに必要事項(氏名、AWSアカウント番号、メールアドレスなど)を記入して印刷
    2. 地元の公証人役場で外国語認証できるか確認して予約
    3. 公証人役場へ行って手続き、11,500円支払う
    4. 認証してもらったフォームをスキャナーで読み込む
    5. 写真の入った免許証などをスキャナーで読み込む
    6. その住所の記入された公共料金請求書などをスキャナーで読み込む
    7. 読み込んだものをPDFにまとめて、AWS担当者にメールする
    8. 受け取ったよ、少し待てとメールが来る
    9. 無効になったよ、とメールが来る
    10. ログインしてMFA設定

という大騒ぎ。まぁ普通固定電話の番号を登録しないよね……エラい昔のことなので、なんで固定電話番号にしたのか覚えてないです。

たぶんそのときばかだったんじゃないかな私が。

2023年10月18日水曜日

LauchpadとMSP430G2553の接続

やってみたら簡単でした。 

 LauchpadとGND, Vcc, TEST, !RST(47kでプルアップ)をつなぐだけ。



以下の図はTI社"MSP430 Hardware Tools User's Guide (Rev. AH)"からの引用です。


16bit 16MHzでそれほどパワーはないのですが、1Mhzあたり220uAという超低消費電力なので結構MSP430G2553はよく使うのですが、今までDIP20ピンを引っこ抜いてLaunchpadで書き込みしてました。JTAGめんどくせーなと思ってやってなかったんですが、調べてみたら4本繋げばいいとわかり、やったらできた、というオチです。

JTAGはおおげさなので……今後倉橋屋製品でMSP430使うときは上記4本の他にTx, Rxを出したコネクタ一発で書き込み & Serial Monitorできるようにしようと思います ^ ^

2023年4月19日水曜日

MJPG-Streamerのホワイトバランス設定

すみません、以下、NGです。コマンドラインからの実行だと意図した設定に変わるんですが、システムごと再起動して同じスクリプトを呼び出すとWB治ってません。


 調べても、ピシャリ!というリファレンスが見つからなかったので、とりあえず自分のメモとして残します。

まず起動したWebページのControlボタンからパネルが開き、そこのAuto White Balanceで調整するといい感じになります。うちの場合はGreyworldがベストでした。

ただ、再起動するために毎度設定するのもウザいので、自動設定しようとしたら少しハマりました。-wb greyworldなどと指定しても落ちます。あちこち読んでいたら

-awb : Set AWB mode (see raspistill notes)

という記述を見つけてraspistillのhelpを見たところ

AWB mode options :
off,auto,sun,cloud,shade,tungsten,fluorescent,incandescent,flash,horizon,greyworld

というリストが!これをMJPG-Streamerのパラメータにはintと書いてあるので、off = 0から数えて10番目。-wb 10と指定したところ、Greyworldと同じ色になりました。

ちなみに起動スクリプトはこんな感じです。id/passwordは開くときのBASIC認証につかわれます。

#!/bin/sh
PORT="8080" #ポート番号
ID="your id" #ID
PW="password" #パスワード
SIZE="480x640" #画面サイズ
FRAMERATE="5" #フレームレート
export LD_LIBRARY_PATH=/usr/local/lib
mjpg_streamer \
-i "input_uvc.so -f $FRAMERATE -rot 90 -wb 10 -r $SIZE -d /dev/video0 -y -n" \
-o "output_http.so -w /usr/local/share/mjpg-streamer/www -p $PORT -c $ID:$PW"

余談ですが、縦位置にするために-rot 90を指定したら画像が流れてしまいました。

解像度360x640にしていたためで、これを480x640にしたらちゃんと見られます。

よかったよかった。

2023年4月8日土曜日

インターフォンの改造、その2


前回は、市販のワイアレスインターフォンの改造でした。音の代わりに光で通知する。

ですが、来客の方から「わかりにくい」と不評です。そりゃ、玄関にインターフォンが2つ並んでいたら変ですよね……。

ということで、もともとついているインターフォンを改造することにしました。改造と言っても賃貸住宅なので、はんだ付けなどはできません。あくまでも既存の端子から信号を拝借するだけです。

インターフォンの仕様書をみると、玄関のボタン、火災報知器などの通知があると、まとめてONになる出力がありました。「無電圧接点」というやつで、工業用のセンサーなどでごく一般的な方式です。通知状態になるとONになります。

予備テストとして、テスターの抵抗レンジでつないでみると、OFFの時には数MΩ、ONになると数百Ωになります。テスターの抵抗レンジは電圧が低いのでトランジスタだと抵抗が大きめに表示されます。

というわけで、インターフォンの端子(2mmピッチで、JSTのPHが刺さりました)から線を引っ張り出して、M5Stack AtomのGPIOと出力、GNDと共通端子(GND)を接続します。

INPUT_PULLUPでdigitalReadしてみると、ちゃんとHIGH / LOWが返ってきます。玄関ボタンが押されるとしばらく室内で通知ランプがついているのですが、そのあいだずっとLOWになっているようです。

ということでソフトを組みます。今回はSlackへの通知とMQTTへの通知を使います。

M5 ATOMをWiFiと接続して予めMQTTにsubscribeしておき、GPIOがLOWになったところで、SlackにPOST / MQTTにpublishします。

LOWになってから0.3秒ほどでMQTTに通知され、1秒ぐらいでMacのSlackに通知が届き、その2-3秒あとにiPhoneに通知がきます。

これでiPhoneを持っていれば、トイレに入っていても大丈夫です(いやトイレから玄関まで遠いから無理)。

そして、もう1個M5 ATOM Matrixを用意してMQTTにsubscribeしておき、トピックを受信したところでLEDを点滅させるようにしました。iPhoneの通知はいまいち遅いのですが、MQTTはほんと瞬時に通知が来ます。

素晴らしい。

耳が悪いと来客ほんとうに苦手で、コロナで「置き配」が一般化するまでは荷物を受け取り損なうことも多々ありました。宅配ボックスが一般化して、だいたい問題はなくなったのですが、最近、食事の支度が面倒で宅配弁当を取り始めたもので、手渡しで受け取る必要が生じました。それで今回、こんなものを作った次第です。

電子工作が家庭の役に立つことは滅多にないのですが、役に立って嬉しいです ^ ^

2023年4月5日水曜日

インターフォンの改造

 私は聴覚障害者です。

不便なことはいろいろありますが……何が不便ってインターフォンが聞こえないんですよね。居間で補聴器をしていればきこえますが、仕事部屋に引っ込んでいるとまったく聞こえません。

最近のインターフォンはスマフォに通知が飛んだりするのですが、私の住んでいる安団地ではそんな気の利いたインターフォンはついてません。

というわけで、後付しました。光の点滅で知らせてくれれば把握できるからです。

最近Amazonなどで2000円ぐらいで売っている、電池のいらないインターフォンというやつです。ボタンの部分が発電機になっていて、その電力で電波を飛ばす方式ですね。昔、数万円しましたが、ずいぶん安くなったものです。

ワイヤレス チャイム 自動発電 電池不要

ただ、私が買ったやつは、音はでっかいのですが、光はごく弱く、よそ見をしているとわかりません。

ということで、改造しました。

まず分解調査

ケースを空けると、1枚の基板でAC100Vが直接基板にはいる方式です。危ないので、一応用心のために厚手のニトリル手袋をして作業します。

回路をたどっていくと、4.6V電源、3.3V電源、GND、あと着信すると点滅するLEDが見つかりました。点滅するLEDは、LEDそのものを取り外すと、普段4.6Vがかかって点灯しており、着信すると0 - 4.6Vの間で変化します。なので、これを取り出して外付けの大きいLEDを駆動することにします。

LED駆動回路

普段点灯していると困りますので、PNPの駆動回路を使って逆論理にします。トランジスタは手持ちの2SA1015です。

基板上のLEDから4.7Kの抵抗を通してベースにつなぎ、4.6V電源からエミッタにつなぎ、コレクタから27Ωの電流制限抵抗を通してパワーLEDのアノードへ、LEDのカソードはGNDとつなぎます。さらにトランジスタのベースとエミッタの間に10Kの抵抗を入れます。

電源装置を4.6Vにセットして、トランジスタのエミッタに+、LEDのカソードをーにつなぎます。そして、4.7Kの抵抗をGNDにつなぐとLEDが点灯し、4.6Vにつなぐと消灯します。

回路は狙い通り動いているようです。

インターフォンへの組み込み

まず写真で青く光っているLEDを取り外します。あとは、写真のように、4.6V、GND、LEDの駆動側(写真の回路だと右側)をつなぎます。なお、ケースの蓋に穴をあけておき、配線を通すのを忘れないように。

つないだあとは電源をいれて、意図したとおりに動作することを確認します。

引っ張ったりして切れたり思わぬところとつながるといけないので、はんだ付けした箇所などをホットボンドで覆っておきます。まぁ気休めですけどもね……。

あとは、子機と親機を取り付けます。

……取り付けるとお客さん来ないんですよね……。

宣伝

ちょっとした改造で便利になる家電、たくさんあります。「音しかでないアラームを光るようにしたい」「アラームだけでは目が覚めないので、いっそマッサージ機を枕の下にいれて、時間が来たら大振動を起こしてほしい」そんな楽しいご相談お待ち申し上げております。

マイコン応用製品の開発相談・製作受け付けます 事前相談で詳細見積作成+実際の開発製作のツーステップで対応!

2022年9月19日月曜日

コンセントに200V来てました(発覚編)

コンセントから電源を取ったらどうも動作がおかしい。

何処のご家庭にもあるテスターで電圧を測ってみたところ200V出てました。

そういえば買ったばかりの布団乾燥機が壊れたことがありました。Macやシーリングライトは200V対応なので問題なかった様子。

昨年引っ越した時に200Vのエアコンを取り付けたのですが、その業者が犯人ですね。アート引越センターが仲介した業者です。

とりあえず全部のコンセントからプラグを引き抜きました。

電気工事業者の連絡先は残っていないので、まずアート引越センターのクレーム窓口に連絡を入れました。

2022年7月23日土曜日

太陽電池駆動装置をサクッと作る

本格稼働前に防水ボックス作らないと……

今日は簡単な電子工作を一つ。


  「ベランダのカメ水槽に太陽電池駆動フィルターを付ける」

です。

……工作以前ですね。

うちのベランダにはコンセントがないし、サッシの隙間を通すのもイヤなので、

  太陽電池→コンディショナー→インバーター→カメ用フィルター

という構成で、作りました。コンディショナーは鉛蓄電池でバックアップしています。全部秋月電子通商で揃います。届いたものを配線してベランダに設置するだけです。太陽電池は定格12W、バッテリは12V 7.2Ah、カメ用フィルターは5W程度らしいので、8時間晴れていれば17時間ぐらい動いてくれます。夜は止まっていて欲しいので、十分です。

これでカメの水換え頻度を減らせると良いのですが。

太陽電池:M-08233
コンディショナー:M-06167(太陽電池、バッテリー、インバーターを制御)
シガーライター型インバーター:M-02998(12VからAC100Vを作ります)
シガーソケット:C-10622(上のインバーターは安いけど自動車用なので)
バッテリー:B-04961

インバーターが擬似正弦波出力なのでちょっと心配でしたが、幸いフィルターに使われているのはやっすいポンプなので問題なく動作しました(DCブラシレスモーターなどだとうまく動かない場合があります)。

シガーソケットには太い導線をがっつりはんだ付けして、その上から古河電工のエフコテープ1号, 2号でしっかり保護しました。1号は自己融着型でしっかり巻いて固めると粘土のようにカタマリになります。2号をその上に巻いて保護しますが、ビニールテープのようにノリでベタベタになることがないそうです(Twitterで教えてくださった方、ありがとうございました)。

他にファストン端子、電線、太陽電池を支えるあれこれ、はんだ付け……などが必要です。なおバッテリーは大電流を取り出せるので取り扱いに注意が必要です。インバーターも小さいながらもAC100Vを出力するので、それなりに危険です。

こういうものが欲しいけど市販品はフィットしないという方、どうぞお気軽にご相談ください。

なお、カメ用のフィルターには「水作 タートルフィルター L2」を買いました。私が小学生の頃、こういうペット用品は死ぬほど高かったんですが……安くなりましたね。

動かしてみたら結構音がデカイので、ご近所迷惑にならないよう夜は停止するタイマーを設置しようと思います。