「知ってりゃ瞬殺」系の話題なんで記事化するのに引け目を感じますが。
本記事では遠隔地のPepperと通信して何かする方法として、仮想プライベートネットワーク(VPN)で実現する一例を紹介します。
以下の手順を踏むと、遠隔地のPepperに対してローカル接続時とほぼ同じように接続できるようになります。
1.Pepperと同じLAN内にVPNサーバ役PCを配置(Windowsが無難、MacでもOK) 2. 遠隔地で使うクライアントPCも別に用意 3. VPN Azureのこのページを見てサーバ役PCをセットアップ 4. クライアントPCから接続
一言でいうと「VPN Azure使おう」というだけです。この方法はマウスでポチポチすれば完了するため、簡単さがメリットと言えます。
しかし利用にあたっては注意が3点あります。
第一に、これは当然ですが、ローカル接続より遅いです。私の自宅からアトリエ秋葉原への接続で試した1所では、指示が最大で1秒くらい遅れるケースがあったようでした。遅れの原因のひとつには無償ツールだけでシステムを組んでる事が挙げられます。Softetherが出している有償版のソフトを適用するとパフォーマンス改善するかもしれません。
第二に、Python
の対話環境における観察事項としてタイムアウトが妙に早いです。例えば対話環境で以下を実行して
import qi
s = qi.Session()
s.connect("xxx.xxx.xxx.xxx")
これでPepperに接続できますが、この状態で1分くらい放置すると接続が切れてしまいます。原因は良く分かってません。
第三に、この方法ではBonjourの機能が使えないようです。これによって以下のような制限がかかります。
import qi
s = qi.Session()
#NG
#s.connect("pepper.local")
#OK
s.connect("192.168.1.12")
なんかVPN Azure側の設定直したらうまく動くんですかね…?
本記事は以上です。なんか面白い使い方を思いついたらぜひ面白く使ってみてください。