WiringPiとWiringPi-PHPのインストール~ SOCKET SERVER 'HAL'

Wiring Pi は、Raspberry Pi で GPIO を簡単に操作するためのライブラリです。また、WiringPi-PHP はそれを PHP から利用するためのラッパーライブラリです。

ソケットサーバー「HAL」ではこれらのライブラリを利用することで、簡単な記述で Raspberry Pi を操作できるようにしています。

WiringPi の導入

Raspberry Pi で GPIO を扱うためのライブラリとして、Wiring Pi があります。C言語で書かれたライブラリで、とても簡単に GPIO を制御できます。本製品では、このライブラリを利用します。

まず、Wiring Pi のソースコードを Git で入手するための下準備をします。もし、既に Git を導入されている方は読み飛ばして下さい。

sudo apt-get install libi2c-dev

sudo apt-get install git-core

次はユーザーのホームディレクトリに移動し、ソースコードを入手します。

cd ~

git clone git://git.drogon.net/wiringPi

これで Wiring Pi のソースコードが wiringPi ディレクトリとしてクローンされますので、ディレクトリ内に移動し、ビルドを行います。

cd wiringPi

./build

これで、Wiring Pi がインストールされたはずです。以下のコマンドで確認して下さい。

gpio -v

wiringPi

このように、バージョン情報が表示されればインストール成功です。

WiringPi-PHP の導入

次は、この Wiring Pi を PHP でも利用できるようにするためのラッパーライブラリ WiringPi-PHP をインストールします。

WiringPi-PHP は長らく更新が途絶えていて、ソースコードを修正しないとビルドできませんでしたが、2016年3月に満を持してアップデートされ、Raspberry Pi 2、Pi 3 でも正常にビルドできるようになりました。

WiringPi-PHP

まず、Wiring Pi と同様にソースコードを Git で入手します。

cd ~

git clone --recursive https://github.com/WiringPi/WiringPi-PHP.git

これで、WiringPi-PHP ディレクトリがクローンされますので、ディレクトリ内に移動し、make を行います。

cd WiringPi-PHP

make

make が終了したらインストールします。

sudo make install

これで、PHP の extension_dir 内に wiringpi.so がインストールされます。

次に、このライブラリを読み込むための設定ファイルを作成します。

sudo vi /etc/php5/mods-available/wiringpi.ini

で、空のファイルをエディタで開き、

extension=wiringpi.so
wiringpi.pinmaptype=[PINS|GPIO|USER]

と記述して保存します。

あとは、この ini ファイルを PHP 実行時に読み込むよう、/etc/php5/cli/conf.d/ 内にシンボリックリンクを作成します。apache を導入している場合は、apache用に /etc/php5/apache2/conf.d/ にもシンボリックリンクを作成します。

sudo ln -s /etc/php5/mods-available/wiringpi.ini /etc/php5/cli/conf.d/30-wiringpi.ini

sudo ln -s /etc/php5/mods-available/wiringpi.ini /etc/php5/apache2/conf.d/30-wiringpi.ini

※sudo ln -s /etc/php5/cli/conf.d/mods-available/wiringpi.ini /etc/php5/cli/conf.d/30-wiringpi.ini

※sudo ln -s /etc/php5/cli/conf.d/mods-available/wiringpi.ini /etc/php5/apache2/conf.d/30-wiringpi.ini

(2016/06/03 記述に誤りがあったので修正しました)

これで、PHP から Wiring Pi を使って GPIO を操作できるようになります。apacheを導入している場合は

sudo service apache2 restart

で、サーバーを再起動して下さい。

なお、WiringPi-PHP にもあるとおり、apache から sudo 無しで gpio を操作できるように、

sudo adduser www-data i2c
sudo adduser www-data spi
sudo adduser www-data gpio

を実行しておくと良いでしょう。


ご購入

ソケットサーバー「HAL」は以下のオンラインショップでご購入いただけます。ご購入に先立っては、ぜひ、体験版で動作の確認をお願いいたします。

体験版

ソケットサーバー「HAL」の体験版をダウンロード
hal_trial version 1.5
試用期限 2016/11/30 まで
※ sudo wget -O hal_trial_1_5.tar.gz 'http://feijoa.jp/getFile/?place=products&filename=hal_trial_1_5.tar.gz' でもダウンロードできます。
HAL の IP アドレス制限を解除してライセンス制に変更しました。お好きな IP アドレスで HAL をお試しいただけます。なお、ライセンスされていない製品では起動から 40 時間後に HAL は自動終了します。

この記事へのコメント

※現在コメントはMarkdown記法が強制です。>>Markdown の書き方


この記事に返信

このコメントに返信