0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

色んなコントローラーでラジコン動かしたい_02

Last updated at Posted at 2020-06-10

#ラズパイでUnityから制御可能なプロポ受信器(的な物)を作る

SnapCrab_NoName_2020-6-10_16-16-7_No-00.png

前回から、なるべくシンプルで汎用性のありそうな方法を検討した。
PCからwi-fiで受信しラジコンを制御するプロポ受信機の替わりを作りたい。

##ラズパイにServoHAT付けてwebiopiをセットアップする

参考にしたサイト
WebIOPiを使ってブラウザからRaspberry PiのGPIOを操作してみる
https://dev.classmethod.jp/articles/webiopi-raspberry-pi-gpio-operation/

###webiopiのインストール手順

WebIOPi をダウンロード(最新ver0.7.1)

$ wget https://sourceforge.net/projects/webiopi/files/WebIOPi-0.7.1.tar.gz

ファイルを解凍、ディレクトリ移動

$ tar xvzf WebIOPi-0.7.1.tar.gz
$ cd WebIOPi-0.7.1

ブラウザ表示の修正パッチを適用

$ wget https://raw.githubusercontent.com/doublebind/raspi/master/webiopi-pi2bplus.patch
$ patch -p1 -i webiopi-pi2bplus.patch

セットアップスクリプトを実行
「Do you want to access WebIOPi over Internet ? [y/n]」で止まったら、「n」を入力し、エンターキーを押す。
(「y」押すと余計なものダウンロードされる)

$ sudo ./setup.sh

WebIOPiサービスをsystemctlで操作できるようにするため設定ファイルをダウンロード。

$ cd /etc/systemd/system/
$ sudo wget https://raw.githubusercontent.com/doublebind/raspi/master/webiopi.service

###webiopiサービスの開始方法

$ sudo systemctl start webiopi

###自動起動/etc/rc.local

/etc/rc.localを任意のエディタで開く、

$ sudo vim /etc/rc.local

末尾「exit 0」の前の行に、プログラムを実行するコマンドをフルパスで記述、上書き保存。

略
fi
sudo systemctl start webiopi
exit 0

ここまでがwebiopiのセットアップ
とりあえず再起動

$ sudo reboot

#ブラウザで動作確認
再起動後ブラウザからhttp:<ラズパイのIP>:8000にアクセス。
認証ダイアログが表示されるので、
ユーザー名:webiopi
パスワード:raspberry
でログイン

#ラズパイにServoHAT取り付け
自分はこれをAmazonで買った。
PCA9685が乗った基板ならどれでもいい。

71i5KpKVGqL.AC_SL1200.jpg

接続されてるI2cアドレス表示しラズパイに認識されているか確認

sudo i2cdetect -y 1

アドレス40と70が認識されている。(使用するのは40)

SnapCrab_NoName_2020-6-10_14-38-52_No-00.png

#webiopiのpwmを有効化

参考にしたサイト
Raspberry PiにつないだPCA9685+SG90サーボをブラウザで制御してみた
https://arkouji.cocolog-nifty.com/blog/2014/06/raspberry-pipca.html

PCA9685がつながった状態で、/etc/webiopi/configを開く。

$ sudo vim /etc/webiopi/config

SnapCrab_NoName_2020-6-10_14-45-28_No-00.png
下の方に「#pwm0 = PCA9685」とあるので#を消して有効化。
上書き保存する。

#webiopiのログイン認証を無効化
同様にconfigファイルの上の方「passwd-file = /etc/webiopi/passwd]
行の先頭に「#」を挿入してコメントアウト。
SnapCrab_NoName_2020-6-10_14-50-15_No-00.png

#ブラウザで動作確認
再起動後ブラウザから
http:<ラズパイのIP>:8000/app/devices-monitorにアクセス。
SnapCrab_NoName_2020-6-10_14-58-47_No-00.png
このような画面が表示されれば成功

#追記
###ライブカメラ配信しながら遠隔でラジコン動かしたい場合
→mjpeg-streamerをインストール
参考
5GHz WiFi対応させたPi Zero rev1.3とPi Cameraでミニマムなネットワークカメラを作ってみた(mjpg-streamer版
https://kitto-yakudatsu.com/archives/2338

###シャットダウンに時間が掛かる場合
webiopiインストール後にラズパイシャットダウンすると下記の表示で90秒くらい待たされる。

A stop job is running for ...

/etc/systemd/system.confの設定を書き換えることで短縮可

$ sudo vim /etc/systemd/system.conf

コメントアウトされている#DefaultTimeoutStopSec=90s を書き換えて、任意の秒数に指定できる。
SnapCrab_NoName_2020-6-10_14-57-41_No-00.png

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?