プログラム」タグアーカイブ

魚キャッチセンサー(有線タイプ):Raspberry Pi2の設定,プログラムの公開

【Raspberry Pi2の設定】

Maker Faire Tokyo 2016で公開していたRaspberry Pi2は,Raspbian Wheezyを使用していたのですが,最新(2016年8月14日現在)では,Raspbian Jessieとなっているので,Jessie版の設定を調べ直したものを公開します。


01.Raspbian Jessieのダウンロード

以下のURLへ移動する。

https://www.raspberrypi.org/downloads/raspbian/

これをダウンロードと記載の「Download ZIP」を選択し,PCへイメージをダウンロードする。

000-0


02.Win32 Disk Imagerのダウンロード

以下のURLへ移動する。

http://sourceforge.jp/projects/sfnet_win32diskimager/

これをダウンロードと記載の「Win32DiskImager-0.9.5-binary.zip」を選択し,PCへバイナリデータをダウンロードする。

000-1


03.microSDへRapbian Jessieを書き込む

ダウンロードしたZIPファイル(2016-05-27-raspbian-jessie.zip,Win32DiskImager-0.9.5-binary.zip)を解凍する。

PC(Windows PC)とmicroSDを接続する。PCとmicroSDの接続には,SDカードリーダー/ライター等をご使用ください。今回は,Digio2 CRW-6M46BKを使用しております。また,SDカードは,TOSHIBAのmicroSDHC UHS-Iカード(SD変換アダプタ付属)MSDAR40N08Gを使用しました。

000-2

解凍したWin32DiskImager-0.9.5-binaryディレクトリのWin32DiskImager.exeを起動する。

000-3

起動後,以下のGUIが表示される。Image Fileの欄にあるフォルダの画像をクリックする。

001

解凍した2016-05-27-raspbian-jessieディレクトリに「2016-05-27-raspbian-jessie.img」ファイルを選択し,「開く」ボタンを押す。

002

書込み先のmicroSDがGドライブとなっているので,Deviceを「G:¥」を選択し,「Write」ボタンを押す。書込み処理が走り,完了するまで待つ。完了すると「Write Successful」と表示される

003


04.Raspberry Pi2の起動

下図のようにRaspberry Pi2と各デバイスを接続する。

接続するもの

・USBキーボード
・USBマウス
・LAN(家のルータ等,ネットと接続するためのもの)
・スピーカー
・ディスプレイ(今回は,HDMI⇔DVIで接続してます)
・USB電源
・角速度センサー(展示していた資料の接続)004

Raspberry Pi2にmicroSDカードを挿しこみ,電源を入れる。

下図のような画面が表示されるまで待つ。

005


05.各種設定

タスクバーにあるLXTerminal(ディスプレイアイコンみたいなもの)を起動する。

006

LXTerminal上にて,以下のコマンドを実行する。途中Yes or Noのような表記が出るので,その時はyを入力しEnterして続行する。最後に再起動コマンド(reboot)にて再起動する。

sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
sudo rpi-update
sudo reboot

再起動後,Windows PCからRaspberry Pi2上のファイルを編集できるようにするため,以下のコマンドにて,sambaをインストールする。

sudo apt-get install samba samba-common-bin

インストール後,以下のコマンドにて下記の内容を最後尾に追記する。

sudo leafpad /etc/samba/smb.conf

以下,追記内容。

[share]
path = /home/pi
writable = yes
guest ok = yes
guest only = yes
create mode = 0777
directory mode = 0777
share modes = yes
force user = pi

以下のコマンドにて,ユーザー:piのパスワードを設定する。今回は,デフォルトと同じパスワードとし,ユーザー:pi,パスワード:raspberryとしています。

sudo smbpasswd -a pi

以下のコマンドにてsambaを起動する。

sudo systemctl restart smbd
sudo systemctl restart nmbd

以下のコマンドにてxrdpをインストールし,Windowsからリモートデスクトップにて接続できるようにする。

sudo apt-get install xrdp
sudo wget http://w.vmeta.jp/temp/km-0411.ini
sudo ln -s km-0411.ini km-e0200411.ini
sudo ln -s km-0411.ini km-e0010411.ini
sudo ln -s km-0411.ini km-e0210411.ini
sudo service xrdp restart

また,日本語対応にするための設定として以下のコマンドを実行する。

sudo apt-get install task-japanese task-japanese-desktop

以下のコマンドにて,シリアル通信ができるようにする。

sudo leafpad /boot/cmdline.txt

【変更前】

dwc_otg.lpm_enable=0 console=serial0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait

【変更後】

dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait

以下のメニューよりRaspberry Piのconfig設定をする。

007

表示されたGUIにて,FileSystemのExpand Filesystemを選択する。これにて使用できるmicroSDの領域を拡げる。BootにてDesktopを起動したくないので,To CLIに設定する。

008

Interfaceのタブに移り,I2C,SerialがEnableになるように設定する。他,使用したいGPIO等ある場合は,Enableを選択する。

009

Localisationのタブに移り,Set Localeにて,Languageをja(Japanese),CountryをJP(Japan),Character SetをUTF-8に設定する。

010

Set Timezoneにて,AreaをAsia,LocationをTokyoに設定する。

011

最後に,以下のコマンドにてdhcpcd.confを編集する。

sudo leafpad /etc/dhcpcd.conf

以下の2行を最後に追記し,IPアドレスを固定する。

interface eth0
static ip_address=192.168.11.13/24

以上の設定にて,再起動する。


【プログラムについて】

01.公開プログラムについて

プログラムは,下記URLからダウンロードできます。

http://nogue-lab.com/Program/AutoFishDemo.zip

内容物は以下の内容となります。

【ソースコード】
main.c メイン処理を行うCソースコード。I2CのI/Fを用い,角速度センサーのデータを取得します。また,取得したデータをUARTにて送信します。PC側からUARTにてeコマンドを送ると処理が止まります。sコマンドを送ると処理が再スタートします。
drv_i2c.c I2Cに関するI/FをまとめたCソースコード。
drv_public.h I2CのI/Fを提供するヘッダファイル。

【オブジェクトファイル】
main.o,drvi2c.oはmakeコマンドにて生成させる。

【実行ファイル】
FishAppは,makeコマンドにて生成される実行ファイル。

【ログファイル】
log.txtは,FishAppの実行時に出力されるログが保存されます。

【音】
alerm.wav,
start.wav,
stop.wavは,
PANICPUMPKIN 様のホームページで提供されているものを使用させていただいております。

URL:http://pansound.com/panicpumpkin/

【その他】
Makefileは,makeコマンドに必要なファイルとなる。

【実行方法】
sudo make runにて実行していただくと動作する。

ダウンロード後,AutoFishDemo.zipを解凍し,以下の位置に配置する。

/home/pi/Program/AutoFishDemo/


02.プログラムの自動実行について

以下のコマンドにてrc.localファイルを編集する。

sudo leafpad /etc/rc.local

以下の1行をexit 0の記述より前に記載する。

 

/home/pi/Program/AutoFishDemo/FishApp &

これによりRaspberry Pi起動時にFishAppが起動するようになる。

注意:最後に記載の&は忘れないようにしてください。他の処理ができなくなる恐れがあります。

 


【その他】

01.Raspberry Pi2の設定について

Rasbian WheezyからJessieに変更となり,少し設定が変わりました。今回の公開内容でうまくいかない可能性があるとすると,キーボード関係がうまくいかない可能性があります。キーボード関係の設定はGoogle等で大体出てくると思うので,うまくいかない際はそちらにて調べていただけたらと思います。

02.不具合等について

今回公開した内容にて一応動作することを確認しましたが,大きな不具合等ありましたら確認でき次第,なるべく早めに更新するように致します。

03.免責事項

本サイトに記載のモノ作りに関する情報,プログラム等,それらを利用したことにより生じた損害について,一切責任を負いません。ご利用者の責任にてご利用ください。