忍者ブログ

設備のマニアどっとこむ

IoT開発、設備・DIYのブログ!

raspberry piで動く監視カメラの製作



今回はraspberry piで動く監視カメラを作ってみます。

LogicoolのUSBカメラにサーボモーターをくっつけて左右に振れる様にしてみたいと思います。

raspberry piでウェブカメラを使う方法はいろいろありますが今回はgucviewとfswebcamをつかってみました。

まずはUSBに接続されていることをlsusbコマンドで確認します。
Logicoolなどメーカーが確認できればOKです。
 

そして次にguvcviewをインストールします。

sudo apt install guvcview

インストールできればgucviewコマンドで起動します。


カメラは問題なく動きました。続いてサーボモーターでカメラを左右に動かしたいと思います。
raspberry piとはサーボモーター配線を赤をVCC、茶をGND、オレンジをGPIOへそれぞれつなぎます。今回はGPIO17を使用しました。

そしてpythonでサーボモーターを動かすプログラムを書きます。
import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BCM)
from tkinter import *
tk = Tk()
gp_out = 17
GPIO.setup(gp_out, GPIO.OUT)
servo = GPIO.PWM(gp_out, 50) 
servo.start(0.0)
    
def hello():
    
    servo.start(0.0)
    servo.ChangeDutyCycle(1.5)
    time.sleep(0.5)
    servo.start(0.0)
    
def hello2():
    
    servo.start(0.0)
    servo.ChangeDutyCycle(12.5)
    time.sleep(0.5)
    servo.start(0.0)
def hello3():
    
    servo.start(0.0)
    servo.ChangeDutyCycle(6.5)
    time.sleep(0.5)
    servo.start(0.0)
btn =Button(tk, text="right", command=hello)
btn.pack()
btn =Button(tk, text="left", command=hello2)
btn.pack()
btn =Button(tk, text="center", command=hello3)
btn.pack()
これを実行すると


こんなボタンがでてきます。


rightを押すと

冒頭の写真の状態になります。
leftを押すと


逆を向きます。centerで


rightとleftの真ん中ぐらいに来ます。

これでカメラをサーボモータで動かすことができたのですが、監視カメラということでリモートデスクトップでの動作に挑戦してみます。

ラズパイのIPアドレスを調べて遠隔でログインしてみます。


残念ながらguVcviewでのストリーミングはできませんでしたが、サーボモーターは問題なく遠隔操作できました。


とりあえずfswebcamを使って静止画の撮影を試みてみました。

sudo apt install fswebcam
でダウンロードし
fswebcam test.jpg
コマンドで静止画を保存します。


うまくいきました。リモートデスクトップでも動作が安定しています。

今回はraspberry piでUSBカメラをサーボモーターを使い動かしてみました。
pythonも勉強中ですが、ブラウザからいろいろできそうなので今後も頑張ってみたいと思います。

→自走式カメラはこちら






拍手[0回]

PR

コメント

翻訳(Translate)

プロフィール

HN:
佐々木 雅史
性別:
男性
自己紹介:
2021年 ラズパイ、M5stackを用いたIoT開発を専門で受注するアルティメンテを設立。代表を務める。
・2020年ラズパイコンテスト優良賞受賞
・設備系資格多数(電験3種、消防設備士甲4、2級ボイラー技士、危険物乙4、電工2種、技術士補(電気・電子)、エネ電、フォークリフトなど)

AD

カレンダー

03 2024/04 05
S M T W T F S
1 2 3 4 5
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30