ブログだいちゃん

ブログだいちゃん

趣味のブログ

ブログだいちゃん

motionEye と RspberryPI ZERO Wで3Dプリンターの監視カメラを作成する

居間が1階で3Dプリンターが2階にあるので、仕上がり状態を見るのに2階まで上っていくのが大変でした。
そこで、印刷物の出来上がり状況をどこに居ても見られるよう、3Dプリンター用に監視カメラを作成しようと思います。

使用パーツ

RaspberryPI ZERO W


イカメラ:スタンド付、フラットケーブル複数付でおすすめです


その他:5V電源、10mmアルミパイプなど

motionEyeのインストール

最初 OpenCV をインストールしましたが、コンパイルに1日以上掛りまたラズパイゼロでは負荷が大きく、まともに動かなかったので motionEye を使用することにしました。

Gihub より motioneyeos をダウンロードします、最新版(20190619)ではなぜか動かなかったので一つ前の(20190427)をインストールしました。

motioneyeos-raspberrypi-20190427.img.xz

解凍して出来たイメージファイルを Win32DiskImager などで microSDカードに書込みます。
次に、WiFiの設定を書込みRaspberryPI Zero W に装着して立ち上げます。

詳しいやり方は ここに記事があります、また英語版はここにありますので説明は省きます。

無事起動できたら スマフォのアプリ(Fing) 等でIPアドレスを調べてアクセスします。

アクセスできたら、ID:admin Pass:無し そのままリターンを押して入り左上の設定ボタンを押して設定します、詳しい設定方法は Github_Wiki にあります、英語版ですが Google翻訳で分かります。

設定で「Fast Network Camera」 を ON にしないとタイムラグが激しく見にくいですね、PI_ZERO の負荷が大きくなり発熱しますが。

ケース及びスタンドの作成

motionEye の設定が出来ましたので次はパイゼロとカメラの一体型ケースと3Dプリンター監視用カメラスタンドを作成します。

当初カメラは3Dプリンターのケース内部に入れようと思いましたが取付場所がないのでカメラスタンドにしてプリンターの正面に置くことにしました。

パイゼロとカメラの一体型ケースの作成

イカメラとパイゼロが収まる最小の大きさで作成しました。

f:id:blogdaichan:20190706102003j:plainf:id:blogdaichan:20190706102019j:plainf:id:blogdaichan:20190706102016j:plain

カメラスタンドの作成

カメラスタンドは、スタンドベースとカメラフォルダーの間を10mmのアルミパイプで繋げました。
安定するよう、ベースに海釣りに使うおもりを入れています。

f:id:blogdaichan:20190706102007j:plainf:id:blogdaichan:20190706102010j:plain


印刷中の画像です、1階居間のPCでキャプチャーした物です。
また、スマフォのアプリでも確認出来ます、印刷終了、印刷トラブルなど何処にいても確認出来る用になりました。

f:id:blogdaichan:20190706102014j:plainf:id:blogdaichan:20190706104202j:plain

3Dマウスのケースを作成

最近所用で忙しく、ブログの更新が出来ていない状況が続いています。

そんな中 はてなブログから、1ヶ月記事が投稿されていないので何か書けのようなメールが届きました、大きなお世話って言いたいところですが文句を言っても仕方ないので記事を書きます。

CADを使う上で便利な3Dマウスを使っています2年ぐらい前に記事にしていますが、この3Dマウスは頻繁に使う物ではないのでいつも机の片隅で埃まみれになっています。

この3Dマウス用のケースを作成して埃まみれから解放しようという間に合わせな記事です。(^_^;)

使用している3Dマウスです、高価なので程度の良い中古品を購入しました。

3Dconnexion 3Dマウス SpaceNavigator SE (Standard Edition) SNSE

3Dconnexion 3Dマウス SpaceNavigator SE (Standard Edition) SNSE


このマウスが入るようにCADで適当にケースを設計、3Dプリンターで印刷しました。

f:id:blogdaichan:20190616085525j:plainf:id:blogdaichan:20190616085527j:plain


出来上がったケースです。

f:id:blogdaichan:20190616085531j:plainf:id:blogdaichan:20190616085533j:plain


3Dマウスは普通のマウスと違い本体を動かすことはしませんが、USB接続用ケーブルが長く邪魔になります、コードレスタイプがあるのでしょうか?

黒ラブだいちゃん6歳、人間に換算すると何歳?

愛犬、黒ラブのダイスケは7月で6歳になります、顎もいつの間にか白い物が混じるようになり、黒ラブなので目立ちます。

元気なのですが、激しい運動も歳とともに減ってきたように感じられます。

ラブラドールレトリーバーは大型犬に属しますが、大型犬の6歳は人間の歳に換算するとどの位の年齢になるのでしょうか?

ネットで検索すると犬の年齢に関わる記事が沢山あります、また年齢換算方法も様々です。
大型犬の場合2歳で19歳その後1年ごとに7歳年をとるとしている所、
2歳で24歳その後1年ごとに5歳年をとるとしている所もあります、いづれにしても小型犬よりは短命ですね。

例えば「犬の年齢の数え方と平均寿命、人間の歳への換算法」に換算一覧表など詳しく書かれていて参考になります。

様々な年齢の換算法があり、どれが当てはまるのか迷いますが、私としては一番年をとらない換算法が良いのではないかと。。。(^_^)v

いずれにしてもダイスケは人間にしてみれば40代半ばを超えています、顎が白くなってきても不思議ではありません。

また、大型犬の年齢間算式ありましたので計算してみました。

犬の年齢を人間の年齢に換算=12+(犬の年齢-1)×7
ダイスケ: 12+(6-1)×7=47(歳)

我が家の家族となってまだ6年なのにもう50歳間近です、短い人生大いに楽しんでもらいたいものです。

とは言っても、年はとろうが頭の中は3歳の子供ですいつもこのような無防備な寝姿。(^_^)
写真を撮ったら目を覚ましました、顎が白くなってます。

f:id:blogdaichan:20190516091242j:plain


鼻パクの練習でおやつを乗せてマテで待たせています。
よだれタラタラ状態で、写真をよく見ると口の両側からよだれが糸を引いています。(^_^;)

f:id:blogdaichan:20190516091239j:plain

MP3機能付目覚まし時計の作成

スマフォや腕時計などにアラーム機能が付いているので、目覚まし時計を使用している人は少なくなっているとは思いますが、目覚まし時計を作成してみます。

目覚まし時計の仕様

・ コントローラーは Arduino MEGA2560を使用する。
・ 時計表示には 3.2インチのタッチスクリーンLCDディスプレイを使用する。
・ MP3プレイヤー機能を搭載する(モノラル出力)。
・ いつものようにケースは3Dプリンターで作成する。

使用パーツ

Arduino MEGA2560


Arduino用3.2インチタッチスクリーンディスプレイ


TFT 3.2'' Mega touch LCDシールド


・ 2インチ3Wスピーカー


BY8001-16P MP3モジュール


DS3231 Real Time Clock


その他 コンデンサー類、ユニバーサル基板、電源コネクター、5V電源、スイッチ、プラスティックネジなど。
以上全て余剰パーツでまかなえました。

作成にあたって参考にさせて頂いたサイト。

作成に当たっては「Arduino Touch Screen Music Player and Alarm Clock Project」を参考にさせて頂きました。
プログラムの詳しい説明と、回路図、スケッチなどがアップされています。

参考サイトに書かれている内容そのままでは動きませんので、注意点を備忘録としてに書いておきます。

作成前の準備について

・ 参考サイトにも書いてありますが BY8001-16P MP3 Module の基板に「A B C」と書いてある部分のチップを取り外しておきます、マイクロコントローラーを使用してMP3モジュールを制御する場合に取外しが必要です。
f:id:blogdaichan:20190417181340j:plain
・ 必要なArduino library を「RinkyDinkElectronics」からダウンロードします。
・・DS3231
・・UTFT
・・URTouch

・ BY8001 library は「https://github.com/r0ndL/BY8001」からダウンロードします。

ダウンロードしたライブラリーを ArduinoIDE にインストールしておきます。

DS3231に時間の設定をする。

DS3231にバックアップ用リチウムイオンボタン電池(LIR2032)を入れておきます。
LR2032・CR2032 を使用する場合はモジュール基板上の200Ωのチップ抵抗を取り外します。

f:id:blogdaichan:20190417181648j:plain

DS3231 library \ examples \ Arduino \ DS3231_Serial_Easy \ DS3231_Serial_Easy.ino を立ち上げ 日付・時刻を設定します、これで電池を取り外さない限り時間を記憶しています。

参考サイト

タッチスクリーンのキャリブレーション

次にタッチスクリーンのキャリブレーションを行います、これをしないとボタンなどの表示部とタッチした場所のずれが生じて、タッチしているのに動作しないなどの症状が起きます。

URTouch library フォルダ内の examples¥Arduino ¥ URTouch_ButtonTest ¥ URTouch_ButtonTest.ino を立ち上げ 指示に従って(+) ボタン箇所を順にタッチしていきます。
これでタッチスクリーンのキャリブレーションの終了です。

パーツの取付と配線

小さなユニバーサル基板にモジュールを配置して配線し、MEGA2560のネジ穴に合わせてプラスティックネジで固定しました、MEGA2560への配線はピンヘッダを使わず直接半田付しています。

f:id:blogdaichan:20190417183718j:plainf:id:blogdaichan:20190417183716j:plain


スケッチの書込み及び動作試験

スケッチの19行目 「myGLCD(・・・ の値を使用するLCDに変更します 。
ディフォルトでは myGLCD( SSD1289 になっていますがこれでは動作しませんでした。

 myGLCD(ITDB32S_V2に変更して動作するようになりました。

スケッチの書込みが無事終了出来たので、仮組みし問題なく動作するのを確認しました。

f:id:blogdaichan:20190417185519j:plain


ケースを作成して組み込み

ケースの作成は音質重視ではないので充填率15%肉厚3mm(前面は5mm)で作成、大きさは高さ80×横175×奥行60mmにしました。

f:id:blogdaichan:20190417190022j:plainf:id:blogdaichan:20190417190026j:plainf:id:blogdaichan:20190417190135j:plain


完成した外観

目覚まし時計なので、電源表示用のLEDなどは取付けておりません、当初アンプが必要かと思ってましたがこのMP3モジュールのみで問題ない音量が出ましたので、アンプの追加は見送りました。

時計表示の画面 → アラーム設定画面 → MP3play画面です。

f:id:blogdaichan:20190417190422j:plainf:id:blogdaichan:20190417190426j:plainf:id:blogdaichan:20190417190431j:plain

Bluetooth イヤホーンのリストア

大分前(10年前くらい)に購入したBluetooth イヤホーン、片付けをしていたら出てきました。
しかし、充電しようとしても充電できません内蔵の電池がダメになったようです、そこで電池を交換しようとバラしていて、ケースを壊してしまった。。。(^_^;)

壊した物はこれ、オーディオテクニカの ATH-BT02 で生産終了になっている物です。

f:id:blogdaichan:20190408090419j:plain


音質は結構良くて気に入っていたので、捨てないでリストアしてみようと思います。


壊したBluetoothイヤホーンの中身

壊したケースの残骸画像はありませんが、中身のモジュールはこのようになっています、幅15mm × 長さ62mm あります。
内蔵されていた小型の1Sリポ電池は、電圧0Vで使い物になりませんでした。

f:id:blogdaichan:20190408124806j:plainf:id:blogdaichan:20190408090949j:plain

手持ちの1Sリポを繋げて充電してみたところ、充電中のLEDが点灯したので充電は出来そうです。
また、ペアリングも出来て問題なく使えそうです。

リストアと言ってもケースを作り入れるだけ


ケースは 25×25×75mm で 3Dプリンターで作成しました材質はPLAです。
マイクが付いていて電話の応答も出来ますがこの機能は省きます。
電池はトイラジ用の1S-500mAを使用しました。
ステレオジャックを使用し、イヤホーンだけでなく、スピーカーにも接続できるようにします。

以上を考慮して作成しました。

f:id:blogdaichan:20190408122519j:plainf:id:blogdaichan:20190408122510j:plainf:id:blogdaichan:20190408122515j:plain


ケースにLEDインディケーター用の穴を開けようかと思いましたが、ケースが白くて透けて見えますのでこのままにしておきます。
今は通勤などで音楽を聴く機会もなくなりましたが、犬の散歩の時にでも使用してみます。

f:id:blogdaichan:20190408134120j:plainf:id:blogdaichan:20190408134115j:plain

ノートパソコン用の小型スピーカー作成

使用している中古ノート、パナソニックのCF-NX2ですが業務仕様なのでオーディオ関連が貧弱ですね。
YouTube動画など見ていても音量は少ないし、高音がキンキンして聞きづらいです。

この前作成したブルーツーススピーカーを使用すれば良いのですが小さなノートPCには大きすぎて似合いません、そこで小型でモノラルの物を作ろうと思います。

作成するスピーカーの仕様


エンクロージャーは3Dプリンターで作成、大きさは80×70×60(mm) くらいにします。

手持ちにあるボリューム付の3Wアンプを使用。

ブルーツースは使用しない(持ってないし買わない)、ノートとはケーブルで繋げます。

電源はリチウムイオン電池18650(この前買った残りの1本)

USBから充電モジュールを通して充電を行います、充電モジュールは手持ちの物。

スピーカーは2インチを使用します(手元にあった物)。

以上、手持ちの物で完結します。


使用パーツ


3Wアンプ:ステレオですがモノラルで使います。

スピーカー:2インチタイプ (50mm)4Ω 3W

リチウムイオン電池:18650 1本

リチウムイオン電池充電モジュール


他、電源表示用などの LED(5mm)、イヤホーンジャックなど

3Dプリンターで作成したエンクロージャー、スピーカーは少し上向きになるようにしました、今回は音質重視ではないので3mm厚の充填率20%で印刷しました。


f:id:blogdaichan:20190323115558j:plainf:id:blogdaichan:20190323115555j:plain


配線及び組み込み

スピーカーと電源表示用青色LED以外の殆どのパーツはバックパネルに取付けました、リチウムイオンバッテリー用の充電モジュールはマイクロUSBコネクタを外部に出すため縦に取付ボンドで固定しました。

f:id:blogdaichan:20190323181043j:plainf:id:blogdaichan:20190323181046j:plain


電池は両面テープで固定しました。

f:id:blogdaichan:20190323181023j:plain


バックパネルに取付けた赤色LEDは充電モジュールのLED箇所から引き出しています、充電時点灯し満充電で消灯します。

f:id:blogdaichan:20190323181031j:plainf:id:blogdaichan:20190323181036j:plain


完成した外観です


スピーカーの面は少し上向きになるようしたので安定感が出ました、この位の大きさなら12インチのノートPCの脇に置いても違和感は感じません。

f:id:blogdaichan:20190323181027j:plainf:id:blogdaichan:20190323181039j:plain


音もノートPCより断然良くなり音量も出ますので、ノートPC専用で使うことにします

f:id:blogdaichan:20190323193108j:plain

Portable Bluetooth Speaker の改良

この前作成したポータブルタイプのブルーツーススピーカーの改良をします。
パッシブラジエータータイプのスピーカーエンクロージャーは、密閉性が良くないと上手く働かないですよね、使用したアンプモジュールに操作ボタンが3個ありプッシュボタンを操作するため裏蓋に穴を開けましたので、そこから僅かながら空気が漏れてパッシブラジエーターは働いてはいますが、完璧に動作していないのではないかと思ったわけです。

スイッチやコネクター箇所はホットボンドでコーキングしているし、スピーカーと裏蓋はパッキンを入れてますのでこの辺は問題ないでしょう。

赤丸箇所の押しボタンスイッチの隙間から空気の漏れがあると思われます。

f:id:blogdaichan:20190317194701j:plain


改良点は2箇所


1. 使用していた操作ボタン付のアンプを取り外し、別のアンプに変更します。
2. 裏面にパッシブラジエーターをもう一つ取付け低音域の増強を図る。

以上の2箇所を変更して以前とどう変わるか試します、変化がなければ骨折り損のくたびれ儲けになりますが。

今回使用するパーツ


ブルーツースオーディオレシーバー:2インチスピーカーが定格5W MAX15W入力なので3Wから6W出力のアンプにパワーアップします、操作ボタンは付いていません。

パッシブレジエーター:前のと同じ物2個ストックしてあったのでそれを使用します。


裏蓋を3Dプリンターで印刷


作業といっても大袈裟なことではなく、裏蓋の設計変更をして3Dプリンターで印刷し、アンプとパッシブレジエーターを取付けるだけです。

今度は忘れずスイッチの穴も開けました。。。(^_^)v

f:id:blogdaichan:20190317203105j:plain

パッシブラジエーターを貼り付けパーツをセットして完成


パッシブラジエーターはゴム糊で貼り付けホットボンドでコーキングし、コネクター、スイッチなども同様にコーキングしました。
表と裏に取付けたパッシブラジエーターの効果はどんなもんでしょうか?

取替えた6WのBTオーディオレシーバーとのペアリングの時 大きな確認音が鳴りびっくりします、もう少し音量を下げてほしいですねボリュームが付いていないので最大音量なのでしょうか。


f:id:blogdaichan:20190318155407j:plainf:id:blogdaichan:20190318155411j:plainf:id:blogdaichan:20190318155403j:plain


動作確認

パッシブラジエーターの動作量は改良前と殆ど変わりませんでした、密閉性も問題なかったのかもしれません、しかし前後に2箇所取付たため低音域は増幅されたように感じます、音量を上げるとより効果がでます。

音質は張りのあるちょっと BOSE ぽい感じの音です、この2インチスピーカーはなかなか良いですね、アンプの出力が2倍になったのでボリューム最大では迫力ある音が出ます。

今回は吸音材は入れてありません、入れたときの音質の変化が気になりますので後で試してみます。

動画を撮ってみましたがデジカメで録画した物は音がチャチで物になりませんでした、しっかりとした録音・録画装置がないので動画アップは諦めます。