【ボイスロボプロジェクト第4話】AmazonEchoで音声操作できるロボット開発プロジェクト!~ラズベリーパイの設定②~

2018.10.15

smartio編集部のナガシマです。普段はバックエンドを担当しています。

毎回言いますが、超絶苦手な記事執筆を行います。もう1度言いますが、超絶苦手ですので、読みにくくてもご容赦ください。

第1話から読んでいる方はわかると思いますが、「ボイスロボプロジェクト」は下記の目的を掲げて、まじめに取り組んでいます!

ボイスロボプロジェクトの目的

・音声で操作できるロボットを作りたい
・ロボットで音声操作のバトルをしたい
・メーカーのロボットを音声操作できる装置を作りたい

ロボットプロジェクトの図解

下記画像はロボットの音声操作ができるようになるまでのステップを簡潔にまとめた図解となります。

図解

今日は第3話「ラズベリーパイの設定①」の続編です。第3話では、ロボットを音声操作できるようにするための準備編として上記図解「3:ラズベリーパイ」の初期設定を行ったのですが、【SSH】と【VNC】の設定をしていないのでやっていきます。

【SSH】と【VNC】の設定をしておくことで、ラズベリーパイを他のPCから操作できるようになり、かつ安全にPCからラズベリーパイへの接続が可能になるのです。

前回の記事やこれまでのプロジェクトの記事は、下記リンクから見れますのでどうぞご覧ください。

1.「SSH」と「VNC」って何?

参考サイトでは、ラズベリーパイの初期設定の中に「SSH」と「VNC」の設定までが1セットだったので、ここまでやっておきます。

「SSH」と「VNC」について、ざっくりとした理解していなかったのでちょっと調べてみました。

SSHとVNCについて簡単に説明しておきます。(この分野は自分の知識の範囲外なので間違えていましたら、ご指摘お願いします。)

SSHとVNC

SSH:パソコンとサーバーを接続するときのセキュリティ関連の処理をしてくれるもの
VNC:離れたPCをリモートコントロールできるようにするためのもの

まずは、「SSH」の設定から進めていきます。

2.「SSH」の設定

「SSH」の有効化

SSHの設定方法は、画面左上にあるメニュー(ラズベリーパイのアイコン)を押します。「メニュー」→「設定」→「Raspberry Piの設定」を選択。インターフェイスを選び、「SSH」の有効にチェックして「OK」です。

ssh-yukoka ssh-yukoka ssh-yukoka

完了後、再起動を行います。

再起動後、パスワードの変更画面が出るそうですが、僕が再起動をした時は出なかったため、コマンド入力からパスワードの変更を行いました。

「SSH」のパスワード変更

画面左上のコマンドボタンをクリックし、入力画面を開きます。

NOOBS

コマンド入力画面に「sudo raspi-config」と入力し「ENTER」です。「Raspberry Pi Software Configuration Tool (raspi-config)」の画面になりますので、「1 Change User Password」を選び「ENTER」を押します。

pass-change pass-change

「新しい UNIX パスワードを入力してください:」と出ますので、パスワードを入力し「ENTER」を押します。さらに「新しい UNIX パスワードを再入力してください:」と出てくるので先ほど入力したパスワードを入力して「ENTER」です。「パスワードは正しく更新されました」と表示されれば成功です。

pass-change

以上で、パスワードの変更完了です。

ラズベリーパイのIPアドレスチェック

ラズベリーパイのIPアドレスが必要なので確認します。確認方法は、コマンド入力で調べることが出来ます。コマンドの入力画面を開き、下記のコマンドを入力して「ENTER」です。

ip addr show
ip-check

コマンド画面には、各方法でのネットワーク状況について記述されています。
1: lo: 2: eth0: 3: wlan0: 各接続方法の詳細について記述されています。

今回は、Wifiを利用してのIPアドレスの確認でしたので、「3: wlan0:」の部分を見ます。 次にラズベリーパイのデバイスかどうかチェックする為に「link:ether」の項目を確認です。項目内容が「b8:27:・・・」からはじまる記述であれば問題ありません。

最後は、IPアドレスの場所が記載されている「inet」の項目を確認します。項目には「192.168.10.xxx(灰色)/24」とありますが、後ろの「/24」より前にある文字がIPアドレスになります。 ip-check

以上でラズベリーパイを使っての作業は一旦終了です。今度は、パソコンを使っての作業に移ります。

パソコンを使ってSSH接続の確認

ここからはパソコン(Windows)を使ってSSH接続の確認作業です。確認方法には、windows標準搭載のコマンドプロンプトを使って行います。コマンドプロンプトを起動し、下記のコマンドを入力です。

ssh pi@192.168.10.xxx

※「xxx(灰色)」は、ラズベリーパイのIPアドレスを入力です。

pc-ssh-check

初めて接続したときは、接続するか聞いてきますので「yes」で進めます。次にパスワードを求められますので先程のパスワードを入力します。 pc-ssh-check

問題なく、正しくログイン出来たら以下の画像のようになります。これで、SSH接続は完了です。

pc-ssh-check

コマンド内の下記内容は、「piユーザーの方は、パスワードが初期設定のままだから変更した方がリスクは低いですよ。」ということだったので、変更しておきます。

「SSH is enabled and the default password for the ‘pi’ user has not been changed.
This is a security risk – please login as the ‘pi’ user and type ‘passwd’ to set a new password.」

変更方法は、下記の手順通りにすれば大丈夫です。

パソコンを使っての作業はこれで一旦終了です。ラズベリーパイへ戻ります。

ラズベリーパイのpiユーザーのパスワード変更方法

piユーザーのパスワード変更は、コマンドの入力画面を開き、下記のコマンドを入力して「ENTER」です。

passwd
pipasschange

コマンド入力画面には、「pi用のパスワードを変更中 現在の UNIX パスワード」と出ますので、初期のパスワードを入力します。

初期のパスワードは「raspberry」なので、注意しましょう。僕も、初めはわかりませんでしたwパスワードを入力後、「ENTER」です。

pipasschange

次に「現在の UNIX パスワードを入力してください」と出ますので、パスワードを入力して「ENTER」です。パスワードは忘れないようにメモしておきましょう。

pipasschange

次に「現在の UNIX パスワードを再入力してください」と出ますので、先ほどのパスワードを入力して「ENTER」です。

pipasschange

問題なく処理が済みましたら、「パスワードは正しく更新されました」と表示されます。

pipasschange

以上で、ラズベリーパイのpiユーザーのパスワード変更は完了です。「SSH」の設定も終わりです。次に、VNCの設定を行います。

2.「VNC」の設定

「VNC」を使うための前準備

VNCの有効化をする前に、やっておくべきことが2つあります。

まず1つ目は、ラズベリーパイの環境が最新の状態なのかチェックすることです。状態の確認方法は、下記のコマンドを入力して「ENTER」を押します。

sudo apt-get update
ras-upd

コマンドを実行後、画面に「パッケージをリストを読み込んでいます ... 完了」と出れば終了です。

ras-upd

これで、状態確認は完了です。次に、2つ目ですがVNCのソフト「RealVNC」をインストールすることです。このソフトを使って、ラズベリーパイをリモートコントロールできます。ソフトのインストール方法は下記のコマンドを入力して「ENTER」です。

sudo apt-get install realvnc-vnc-server realvnc-vnc-viewer
vncinstall

ディスク容量が消費されるので続行するかどうか聞かれるので、「Y」を入力して続行です。インストールが完了しても、特に完了画面は出ません。コマンド入力が出来るようになったらインストールは完了です。

vncinstall vncinstall

次はVNCを使えるように有効化を行います。

「VNC」の有効化

VNCの有効化は、SSHの有効化と同じ手順で行えます。Raspberry Pi側で「メニュー」→「設定」→「Raspberry Piの設定」を開き、インターフェイスタブからVNCを有効にします。

vnc-yukoka

VNCの有効後、再起動をします。再起動後の画面右上に「VNC」のアイコンが出てくれば完了です。

vnc-yukoka

VNCの動作確認

VNCの動作確認の方法は、ラズベリーパイの他に「パソコン」と「モニター」、「キーボード」、「マウス」が必要なので、準備します。

パソコンからラズベリーパイをリモートコントロールできていればVNCの動作確認は完了です。

今回は、RealVNCの「VNC Viewer]というソフトを使ってラズベリーパイをリモートコントロールできるか確認します。

「Download VNC Viewer」をダウンロードして、インストールです。今回は「standalone EXE x64」を選びました。お使いのパソコンに合わせてソフトを選んでください。インストール完了後に、起動すると下記画面のようになります。

「Enter a VNC Serever address or search」の部分にラズベリーパイのIPアドレス「192.168.10.xxx」を入力し「ENTER」です。

vncview

次画面では、「VNC Server not recognized」と表示が出ますが、「Continue」を押して次へ進みます。

vncview

ユーザー名とパスワードの入力画面に切り替わります。「Username」には「pi」、「Password」には先ほど変更したパスワードを入力し、「OK」をクリックです。

vncview

下記画面のようにパソコン内でラズベリーパイの画面が表示されればOKです。次に、マウスやキーボードでの操作もできるかチェックして問題なければ成功です。

vncview

これでラズベリーパイの初期設定はすべて完了です。今日はここまでにします。

3.あとがき

これでようやくラズベリーパイの初期設定は完了です!おそらくw

多少わからないことはありましたが、ラズベリーパイの先駆者さんたちがたくさんいますのでいろいろなサイトを見て調べながら解決しました。

ラズベリーパイの初期設定が終わったので、今度はラズベリーパイを使ってLED電気をチカチカ動作できるようにしていきます。LEDをチカチカさせる処理はロボットの音声操作に必要な処理なので、まずはLEDを制御できるようにします。

僕はラズベリーパイの扱いに関しては初心者なので、間違いがありましたら、ご指摘お願いします。