工場IOT・ラズパイを使った遠隔監視カメラの設定方法について
どうもこんにちは
まぶちでございます。
遠隔カメラ設定方法
工場では遠隔エリアに対して遠隔カメラを設置して各工場棟の様子を見ることができるようにしています。
自動加工機エリアでは全く無人になることがあり、トラブルが置きていても初動が遅れる可能性があります。
こうしたときにどこでも見れる遠隔カメラは非常に便利なツールとなります。
ラズベリーパイ(以下ラズパイ)というモジュールを使って、それにカメラを接続
Pythonでコードを書いて遠隔カメラとしています。
現在工場棟の中で3台が稼働しております。
このカメラは手持ちのスマートフォンから見ることができ、また私のパソコンからでも見ることができるモジュールになっております。
Raspberrypiとは?
ラズベリーパイとは、英国のラズベリーパイ財団というところが作っている
超小型コンピューターです。
CPUにはARM製の
ARM Cortex-A72 |
1.5GHZを装備しており、インターネット等でも使えるレベルです。
ATOMとかを装備したモッサモサPCよりはだいぶ快適です。
メモリ、GPU、無線LANモジュールを備えており、本当にちっちゃいPCのようです。
現在はバージョン4のRaspberrypi4が販売しております。
現在半導体不足により価格が高騰し手に入りませんが、通常時は
ラズパイ4が8,000円
ラズパイ3ModelBが6,000円と非常に安価です。
トマト工業では
ラズパイ4が2台
ラズパイ3ModelBが3台あり、
学習用として1台、実務用として2台
カメラ用として3台が稼働しております。
カメラモジュール
さて、標準ではカメラはついていないので、後付のモジュールを接続します。
私はAMAZONのこのモデルを使っています。
ケースがなければ1,000円以下で購入できます。
Raspberrypi用のカメラモジュールです。
これをRaspberrypiに接続して使います。
接続方法
ラズパイにはカメラポートがありますので、ラズパイのここに差し込みます。
設定方法
ラズパイカメラをセットしても動かないことがあります。
これはラズパイ側にてカメラを認識しないのがデフォルトになっているからです。
そのためカメラ認識を設定する方法があります。
1.ラズパイ側のカメラ認識設定
①ターミナルをひらき
sudo raspi-config
を打ち込みます。
②コンフィグ画面が立ち上がりました。
ここで、
3 Interface Options インターフェースオプションズを選択しエンター
③カメラ設定
I1 Legacy Camera レガシーカメラを選択しエンター
④設定
了解をおす。
⑤リブート再起動を行う。
再起動を行うことで反映されます。
ターミナルから
sudo reboot
でも可です。
2.OPENCVのインストール
カメラ撮影には
openCVモジュールのインストールが必要です。
まず、pipを最新のバージョンにします。下記のコマンドをターミナルに入力してEnterキーを押してください。
sudo python -m pip install --upgrade pip
sudoは管理者権限で実行するときに使います。
OpenCVをバージョン指定でインストールします。
sudo pip3 install opencv-python==4.5.1.48
パッケージリストを最新にします。
sudo apt update
「libatlas3-base」 パッケージをインストールします。
sudo apt install libatlas3-base
以上でOpenCVのインストールは完了です。
3.numpyの最新パッケージのインストール
上記の状態で稼働させようとしてもエラーが出ることがあります。
これはnumpyが古いケースで再発するケースがあります。
pip install numpy –upgrade
4.Pythonカメラで認識させる。
Pythonのカメラで認識させます。
以下のコードをTHONYにて記載ください。
#再生は▷実行ボタンを押す。
#escキーで終了ができる。
import cv2
import time
camera = cv2.VideoCapture(0)
#ビデオキャプチャ(0)は1台カメラをつないでいれば0になる。
while True:
ret,frame = camera.read()
if not ret:
break
frame = cv2.resize(frame, dsize=(640, 480))
#カッコ中の640,480を変更することで自由にフレーム変更可
cv2.imshow("Frame",frame)
key = cv2.waitKey(1)
print(camera.get(cv2.CAP_PROP_FPS))
#30.0 フレームレートを表示させます。
if key == 27:
break
#27はEscキー対応
if key == 32:
break
#32はSpaceキー対応
if key == 35:
break
#35はhomeキー対応
if key == 8:
break
#8はBackSpaceキー対応
camera.release()
cv2.destroyAllWindows()
再生を押すと、プログラムが起動します。
終了はEscキーになるので注意すること。
参考URL
私がいつも見ている神ブログ&You Tubeサイトです。下記参照
ラズパイを用いたIot監視カメラの作例をネットで探していたところ、このブログの記事にたどり着きました。
セットアップ手順が非常に分かりやすくて、とても助かりました。
参考にさせて頂きます。
Hiroさん
実際に情報があまりないので、探そうとしても苦労してしまいますよね。
コメントいただきありがとうございました。
大変励みになります。
ありがとうございました。