Raspberry Pi(ラズベリーパイ)と組み合わせてカメラモジュールや、音声取り込みに使用するマイク、Raspberry Piに時間を保持しておくことができるようになるRTCモジュールを実際に接続して使用するための手順をご紹介します。 rtsp://raspberrypi.local:8554/unicast $ sudo rpi-updateでファームウェア等のアップデートを行い、$ sudo rebootで再起動したら治りました。. Why not register and get more from Qiita? パソコン:Ryzen 2700x
【小ネタ】Raspberry Pi と USB接続のWebカメラ でRTSPサーバを作って動画を配信する, Raspberry Piに【Supervisor】をインストールして、motionをデーモン化してみた, Raspberry Piを用いた、RTSPネットワークカメラの構築ができるようになる。, 以下のURLから、OSイメージファイル(RASPBIAN Buster WITH DESKTOP)をダウンロードする。OSイメージファイルは、NOOBSでもよいらしいが、少しセットアップがややこしくなるらしいので、ここでは、Raspbianを推奨します。, microSDカード直下フォルダにファイル名「ssh」(空ファイル拡張子なし)で新規作成する。保存の際は、不要なファイル拡張子(.txt等)が付かないよう注意すること。, 設定に自信がない方は、このあとの手順で、Raspberry Pi の GUIからでも設定できます。, microSDカード直下フォルダにファイル名「wpa_supplicant.conf」(改行コード:LF)で新規作成し、ファイルの内容を以下のとおり設定する。(ssidとパスワードpskは、各自の環境に合わせて設定してください。), 「Windowsアイコン」→「設定」→「ネットワークとインターネット」→「アダプタのオプションを変更する」を選択する。, イーサネットのプロパティ画面で、「インターネットプロトコルバージョン4(TCP/IPv4)を選択し、「プロパティ」ボタンをクリックする。, 全般タブ内の「次のIPアドレスを使う」をチェックし、「IPアドレス」および「サブネットマスク」を設定し、「OK」ボタン、「適用」ボタンをクリックする。, これで、PCの固定IPアドレス(192.168.1.1)と、Raspberry Piの固定IPアドレス(192.168.1.2)の設定が完了し、有線LANケーブルを用いて接続できる準備がととのいました。今回の方法を用いることで、通常、Raspberry Piのセットアップで必要となる、USBキーボード、USBマウス、HDMIケーブル、モニタ等を用意せずともRaspberry Piのセットアップを進めることができます。Alexa Voice Service(AVS)のセットアップに限らず、今回の方法を活用してみてください。, Raspberry Piの電源をONにし、Raspberry Piにたましいを吹き込む。, PCで、ターミナル端末を起動(Windowsの場合は、Win旗印をクリックし、「cmd」を入力後、コマンドプロンプトをクリックすると真っ黒画面が起動する。), PCで、SSHクライアント(TeraTerm 等)を起動し、ホストにRaspberry Piの固定IPアドレス「192.168.1.2」またはホスト名「raspberrypi.local」を入力し、OKボタンをクリックする。, SSHクライアントから、以下の操作をおこない、環境設定「タイムゾーン」と「VNC接続の許可」を設定する。, VNCクライアントを起動し、Raspberry Piの固定IPアドレスまたはホスト名「raspberrypi.local」を入力し、接続する。, VNCクライアントから、ネットワークアイコンをクリックし、各自の無線LANアクセスポイント(Wi-Fi)に接続する。, フレーム数に7~8以上指定すると、比較的カクツキの少ない映像配信ができるかと思います。, /etc/rc.localに追記したサービス自動起動の場合、v4l2rtspserverがダウンした時のリスタートやログ出力が管理できていないので、supervisorを用いたデーモン化をしてみました。, 事前準備として、/etc/rc.localファイルに追記した1行を削除またはコメントアウトし、rasberry pi を一度再起動しておいてください。(v4l2rtspserverのプロセスが停止しており、ポート番号8554が空いている状態にするため), ステータス状態が「RUNNING」であれば、すでにv4l2rtspserverがデーモン化して起動中となります。ステータス状態が「FATAL」の場合は起動失敗しているので、ログ出力ファイル「/var/log/v4l2rtspserver.log」を確認しましょう。, you can read useful information later efficiently. Help us understand the problem. detectedが0の場合、カメラモジュールがきちんと接続しているか確認します。, カメラが無効になっている場合は、$ sudo raspi-configで、5番のInterfacing optionから, 今回の場合、カメラの設定は有効になっていて、接続もちゃんとしており、ソフトウェアに問題があるようです。 SSHクライアントからRaspberry Piへ接続する。 5-2. detectedはそのまま、カメラを検知しているかどうかです。 Help us understand the problem. Raspberry Pi(ラズベリーパイ)と組み合わせてカメラモジュールや、音声取り込みに使用するマイク、Raspberry Piに時間を保持しておくことができるようになるRTCモジュールを実際に接続して使用するための手順をご紹介します。, 軽量小型で取り扱いやすいコンピューターボード「Raspberry Pi(ラズベリーパイ)」は、外部機器と連携して様々な機能に用いられることが特徴の一つです。
以下のようなエラー文が出ました。, $ vcgencmd get_cameraでカメラの状況を確認したところ、 supported=1 detected=1と返ってきました。, supportedは、Raspberry Pi 本体のインターフェース設定でカメラが有効化されているかどうかを表します。0→無効 1→有効です。 5. 川崎市近郊バイクツーリングマップ:http://bit.ly/2GGMc9J. カメラ:PENTAX K-r 派
で入力し、「再生」ボタンをクリックする。, 参考文献:Raspberry Piに【Supervisor】をインストールして、motionをデーモン化してみた, ( ɵ̷̥̥᷄ .̠ ɵ̷̥̥᷅ )
今回は、自分自身への備忘録を兼ねて、Raspberry PiでRTSPネットワークカメラの構築方法を、お伝えしたいと思います。, 参考文献:【小ネタ】Raspberry Pi と USB接続のWebカメラ でRTSPサーバを作って動画を配信する, ここでは、Raspberry Pi の microSDカードを作成します。今回は、PC と Raspberry Pi を直接、有線LAN接続し、セットアップをすすめますので、そのための事前準備もおこないます。, 参考:この記事作成時のファイルバージョン:2019-09-26-raspbian-buster-full.zip, ここでは、PC側(Windwos / Mac)の有線LAN IPアドレスを、固定IPアドレスに設定します。 By following users and tags, you can catch up information on technical fields that you are interested in as a whole, By "stocking" the articles you like, you can search right away. rtsp://192.168.1.2:8554/unicast you can read useful information later efficiently. $ vcgencmd get_cameraでカメラの状況を確認したところ、 supported=1 detected=1と返ってきました。 supportedは、Raspberry Pi 本体のインターフェース設定でカメラが有効化されているかどうかを表します。0→無効 1→有効です。 Why not register and get more from Qiita? USBカメラをRaspberry Piに接続する。 5-3. Raspberry PiへRTSPをセットアップ(SSHクライアントでの操作) やっとこさ、準備が整いましたね。手順としては、残すところあとわずかです。 5-1. バイク:Vストローム250
USBカメラの認識を確認する。 今回はRaspberry Piと組み合わせて使用されることの多いカメラモジュールや、音声取り込みに使用するマイク、Raspberry Piに時間を保持しておくことができるようになるRTCモジュールを実際に接続して使用するための手順をご紹介します。, 外部機器との接続にあたり、ドライバをダウンロードする必要があるため、まずRaspberry Pi をインターネットに接続します。, 今回使用する「Raspberry Pi 3 Model B+」には標準で無線LAN接続機能が搭載されています。画面右上のネットワークアイコンが初期状態では下図のようになっています。, 上図のアイコンをクリックすると、近くにあるアクセスポイントの一覧が表示されますので、接続するアクセスポイント名をクリックしてパスワードを入力します。, アクセスポイントへの接続が完了すると、ネットワークアイコンの表示が下図のように変わります。, カメラモジュール本体は下図のようにカメラレンズが付いた基盤状の部分から平たい接続ケーブルが伸びた形になっています。このケーブルの端を上図の接続箇所に差し込みます。, 接続部分の端を持って引き上げると隙間ができるので、その隙間にカメラモジュールのケーブルを差し込みます。, カメラモジュールのケーブルを挿し込んだら先ほど引き上げた接続部分の白い部品を元に戻します。この時カメラモジュールが抜けてしまうことがあるのでしっかりカメラモジュールが差し込まれていることを確認してください。, カメラモジュールの接続ができたら、Raspberry Piの設定からカメラモジュールを読み込ませるための設定を確認しておきましょう。, Raspberry Piのメニューボタンから設定→Raspberry Pi の設定, 左上のRaspberry Piのメニューボタンから「設定」>「Raspberry Piの設定」をクリックし、システム設定を開きます。, 下図「インターフェイス」タブをクリックし、「カメラ」が「有効」になっていることを確認します。もし「無効」になっていた場合は「有効」を選択し、「OK」ボタンをクリックしてください。, Raspberry Piの設定からインターフェイスタブで「カメラ」を「有効」にする, 「LXTerminal」が起動すると黒い画面が開きます。「LXTerminal」はWindowsのコマンドプロンプトのように、テキストでコマンドライン(命令文)を入力してパソコンに様々な動作をさせるためのアプリケーションです。, LXTerminal上で「vcgencmd get_camera」コマンドをキーボードで入力します。, このコマンドは先ほど接続したカメラモジュールが正常に接続されているかの確認するためのコマンドとなっています。, コマンドが入力できたら、実行してみましょう。コマンドを実行するには「Enter」キーを押して実行します。, コマンドの次の行に「supported=1 detected=1」と表示されたら、カメラが認識されていることになります。, 「supported=1 detected=1」と表示されたらカメラが認識されている, 先ほどのコマンドを実行して「supported=1 detected=0」など違う表示が出た場合は、正しくカメラモジュールが認識されていないということになります。, 正しくカメラモジュールが認識されていないと思われる場合は、Raspberry Pi上のドライバ(カメラモジュールを動作させるためのプログラム)の一覧を最新のものにするため、「sudo apt-get update」コマンドを実行します。, 「sudo apt-get update」コマンドを実行するとパッケージ(ソフトウェアをインストールするためのプログラムのまとまり)の一覧が下図のように表示されます。, 一覧の表示が終わると、再度コマンドを入力可能な状態になりますので、今度は「sudo apt-get upgrade」コマンドを実行します。, 上記を実行してもカメラが正しく認識されない場合は、カメラモジュールの向きやケーブルがしっかりと挿し込まれているかなど、正しく接続されているかをもう一度確認してみてください。, 接続をし直したら、再度「vcgencmd get_camera」コマンドを実行します。, カメラモジュールが正常に認識できていることを確認できたら、実際に写真を撮影してみましょう。, LXTerminalで「sudo raspistill -o image.jpg」と入力して実行します。, 上図表示の後、画面左上の左から3つ目のアイコンをクリックするとウィンドウが開きます。「/home/pi」の中に、先ほどコマンドで入力していたものと同じ「image.jpg」という名前の画像ファイルがあります。こちらが先ほど撮影した画像で、初期設定では撮影した画像はここに保存されます。, 「sudo raspistill -t 3000 -o image.jpg」コマンドを入力, 続いてターミナルで「sudo raspistill -t 3000 -o image.jpg」コマンドを入力して実行してみてください。, 先ほどとコマンドが違うのが分かると思いますが、このコマンドは「3秒後に静止画を撮影」するコマンドになります。, 今回は「-t」というパラメーター(設定値)を書き換えてみましたが、撮影および撮影画像の用途により、さまざまなパラメーターを指定することが可能です。, 撮影時の「raspistill」コマンドのパラメーターについては別の機会にもご紹介したいと思います。, 上部メニューから「LXTerminal」をクリックして起動し、「arecord -l」コマンドを実行します。, ターミナル上で「arecord -l」を実行して「ハードウェアデバイス CAPTUREのリスト」として、「USB Audio」が表示されるとマイクが認識できているということになります。, 次はマイクを実際に使って音を聞いてみましょう。マイクで話したことを、そのままスピーカーで再生させてみます。, 続いてLXTerminalで「arecord -D plughw:1,0 -f cd | aplay」コマンドを実行します。, そうすると、マイクで話した音がそのままスピーカーの方で出力されているのがわかります。, 「arecord -D plughw:1,0 -f cd | aplay」コマンドを実行, 先ほどはマイクで話した音をそのままスピーカーから出力していましたが、次はマイクで話した音を録音し、音声データとして保存してみます。, LXTerminalで「arecord -D plughw:1,0 -f cd audio.wav」コマンドを実行します。, コマンドを実行すると下図のように「録音中」と表示されるので、マイクに向かって何か話してみましょう。, 上記「arecord -D plughw:1,0 -f cd audio.wav」コマンドの「-f cd」はサンプリングレート44100 Hz(CD音質)で録音を行い、「-f dat」にするとサンプリングレート48000 Hzで録音することができます。, 録音を止める場合は先ほどと同様にキーボードの「Ctrl」+ 「C」を同時に押して録音を止めます。, スピーカーを接続していない場合はスピーカーをRaspberry Piに接続し、LXTerminalで「aplay audio.wav」と入力して実行してみてください。先ほど録音した音声が聞こえるはずです。, LXTerminal上で「alsamixer」と入力してコマンドを実行してみてください。, Raspberry Piは電源を切ると、機器内の時刻が電源を切った時点の時刻のまま止まってしまいます。, インターネットに接続されている場合は、NTP(Network Time Protocol)サーバと呼ばれる現在時刻を配信しているサーバと同期を取って時刻を補正するため時刻がずれることはありませんが、単体で使用するような使い方をする場合には、そのままでは時刻がずれてしまいます。, これを解決するために、RTC(Real-Time Clock)モジュールと呼ばれる機器を接続します。RTCは、バッテリーバックアップ等により機器の電源が切られた状態でも内部に時刻を保持する機能を持っており、パソコンを始め多くの機器の内臓時計として用いられています。このRTCをRaspberry Pi上で使用できる形にしたものがRTCモジュールです。, 今回使用するRTCモジュールはRaspberry Pi上のGPIOピン(下図赤枠部分)に接続して使用します。, 接続ができたらRaspberry Piを起動し、画面左上のRaspberry Piのメニューボタンから「設定」>「Raspberry Piの設定」をクリックし、システム設定を開きます。, 「インターフェイス」タブを開き、「I2C」が「有効」になっていることを確認し、有効になっていない場合は有効に切り替えて「OK」をクリックします。, 続いて必要なパッケージのインストールをします。LXTerminalで「sudo apt-get install i2c-tools」を実行します。, 設定ファイルを開いてファイルを編集するために、今回はRaspberry Pi上で使用できるテキストエディタである「vim」を使います。, まず、「sudo apt-get install vim」とコマンドを実行してvimをインストールします。, コマンドを実行してしばらくすると、「続行しますか?[Y / n]」という表示が出ますので、「y」を入力して「Enter」を押してください。, インストールが完了したら、設定ファイルを編集するために「sudo vim /etc/modules」をコマンド入力して、モジュール設定ファイルをvimで開きます。, モジュール設定ファイルが開いたら内容を編集していきますが、vimエディタで文字を入力するためには「i」キーを押して「編集モード」に切り替える必要があります。, また文字入力後は,「Esc」キーで「コマンドモード」に以降して、キーボードの「Shift」キーを押しながら、「z」キーを2回押すことで、ファイルの保存と、vimエディタを終了することができます。このようにvimエディタは「コマンドモード」と「編集モード」を切り替えながら操作を行う形になっています。, vimではキーボード操作により「コマンドモード」と「編集モード」を切り替えて使用する, まず「i」キーを押して「編集モード」に移行した後、i2c-devの下に「rtc-ds1307」と入力します。, 次にファイルの保存です。「編集モード」から「Esc」キーを押して「コマンドモード」に切り替えます。, そのまま「Shift」キーを押しながら「z」キーボードを2回押すとvimエディタが閉じられます。, 続いてLXTerminalで「sudo i2cdetect -y 1」を実行して「68」と表示されていれば、RTCモジュールが認識されているということになります。, 「sudo su」と入力して実行、その後に「modprobe rtc-ds1307」と入力してまた実行、最後に「echo ds1307 0x68 > /sys/class/i2c-adapter/i2c-1/new_device」を入力して実行してください。, LXTerminalで、再度「sudo i2cdetect -y 1」を実行して先ほどの「68」が「UU」に表示に変更されていれば、システムで利用できるようになったことを示しています。, 上図のような表示が確認できたら「sudo hwclock -w」コマンドを実行して、RTCに現在時刻(OSの時刻)を記録します。, 続いてLXTerminalで「sudo hwclock -r」を実行してRTCに書き込まれている時刻を確認してみます。, 最後にLXTerminalから「sudo vim /etc/rc.local」を実行します。, vimで「rc.local」ファイルが開くので「i」キーを押して「編集モード」に切り替えた後、「exit 0」の前に、下記の内容を書き込んで保存します。, このコマンドはRaspberry Pi起動時にRTCの時刻をOSに適用させるコマンドです。, 上図のようにファイルを編集できたら「esc」キーでコマンドモードに切り替えた後、「Shift」キーを押しながら「z」キーボードを2回押し、vimエディタを閉じます。, これで、電源を切ってもRaspberry Pi内部に時刻が保持されるようになりました。, ここまでRaspberry Piといくつかの機器を接続して使用するための設定を見てきましたが、, 小型の機器を使いたいけれど他のマイコンボードでは力不足になりそうな場面、具体的には画像や音声の認識などで、Raspberry Piが活用されるケースが増えています。, 今回使用したようなカメラモジュールやマイクを用いた画像認識や音声認識についても、別の機会にご紹介したいと思います。, パソコンでできるこんなことやあんなこと、便利な使い方など、様々なパソコン活用方法が「わかる!」「みつかる!」記事を書いています。, Raspberry Pi×JuliusとPythonでスマートスピーカー風にカメラを操作, Windows 10搭載パソコンでマイクが使えない、認識されない場合の設定・対処方法.