Raspberry Pi を弄る~!(パッケージ導入)



X11VNC JessieWheezy
クライアントPCからサーバーと同画面での操作が出来るようになります。
サーバーとは別画面で操作させるには、tightvncserver をインストールします。
*** 有線LAN接続でのインストールがお勧めです。小生は、無線LANで数度失敗~!? ***
sudo apt-get install x11vnc
** x11vnc のインストールが完了したら、アクセス用のパスワードを設定。
x11vnc -storepasswd
パスワードは、 /home/pi/.vnc/passwd に保存される。

自動起動の設定
sudo mkdir /home/pi/.config/autostart
sudo nano ~/.config/autostart/x11vnc.desktop
[Desktop Entry]
Encoding=UTF-8
Type=Application
Name=X11VNC
Comment=X11VNC
Exec=x11vnc -forever -display :0 -rfbauth /home/pi/.vnc/passwd
StartupNotify=false
Terminal=false
Hidden=false
*** nano 保存: Ctrl+O --->> 終了: Ctrl+X

自動起動しない場合の対処法(Ⅰ)
sudo raspi-config を実行して、
下記の設定を確認してください~? 自動起動がされることもあります・・・。
"3 Enable Boot to Desktop/Scratch"を選択。
"Desktop Log in as user 'pi' at the graphical desktop"を選択。

自動起動しない場合の対処法(Ⅱ)
* 上記では、/root/.vnc/passwd にパスワードファイルをおいています。

** 例えばパスワードファイルをホームディレクトリの .x11vnc ディレクトリに置くならば、
mkdir ~/.x11vnc/
x11vnc -storepasswd ~/.x11vnc/passwd
/etc あたりに置くならば、ファイル作成操作には管理者権限が必要、
且つパスワードファイルにユーザの読み取りアクセス権限が必要です。
sudo x11vnc -storepasswd /etc/x11vnc.passwd
sudo chmod 644 /etc/x11vnc.passwd
次に、ログインセッション開始時に x11vnc が起動するように、/etc/init に以下の内容で x11vnc.conf という名前のファイルを作成して保存。
start on login-session-start

exec x11vnc -bg -loop -forever -auth /var/run/lightdm/root/:0 -rfbport 5900 -rfbauth [パスワードファイルへのパス]
で、システムを再起動。


*** 固定IPアドレスの設定方法が変わりました。(Rutles / Raspberry Pi で遊ぼう[追加情報]より)
固定IPアドレスの設定 (Raspbian 2015-05-05)NOOBS 1.4.1 以降。 JessieWheezy
  /etc/network/interfaces ファイルではなく、
       /etc/dhcpcd.conf ファイルを編集します。
sudo nano /etc/dhcpcd.conf
## ファイルの最後に下記のように追加します。
・・・
interface wlan0
static ip_address=192.168.0.203/24     ←赤印には、任意のIPアドレスを指定
static routers=192.168.0.1         ←デフォルトゲートウェイ
static domain_name_servers=192.168.0.1  ←DNSサーバーのIPアドレス
*** nano 保存: Ctrl+O --->> 終了: Ctrl+X

設定を反映させるには( ifdown/ifup コマンド)、以下のように実行します。
sudo service dhcpcd reload


クライアント表示画面の設定
** 通常は、デフォルト設定でイイのですが、ディスプレーを外した場合には~
ディスプレーサイズが小さくなるようなので希望のサイズを設定する。
下記の framebuffer_width, framebuffer_height 設定の「#」を外す。
sudo nano /boot/config.txt
 ・・・
 #framebuffer_width=1280
 #framebuffer_height=720
 ・・・
*** nano 保存: Ctrl+O --->> 終了: Ctrl+X

*** VNC表示の参考
-geometry: vncの画面サイズを指定。デフォルト(未指定)は1024x768なので、変更したい場合に使います。
-depth: 色数です。8 or 16 or 24を指定します。
デフォルト(未指定)は16なので、特殊な環境でなければ指定しなくてよいと思います。
-pixe
ormat:
「ピクセル表現のための色の書式を設定」。
vncで繋いだ時の色調整をする場合はdepthと組み合わせて設定します?


VNC クライアントの導入
RealVNC URL http://www.realvnc.com/
TightVNC URL http://www.tightvnc.com/


SAMBA .....ファイル共有やプリンタ共有などのサービス .JessieWheezy

Raspberry Piをファイルサーバにして、リモートからファイルアクセスできるようにします。
*** インストール途中にインストールしてもいいか確認がありますが、それをスキップするために「-y」オプションをつけています。
sudo apt-get -y install samba

SAMBAの共有設定
sudo nano /etc/samba/smb.conf
設定ファイルの末尾に、以下を追加
[share]
path=/home/share
read only=no
browsable=yes
guest ok = yes
force user = pi

# *** Sample ***
# 192.168.0.xのセグメントからの接続なら誰でも書き込みOKという設定
[global]
unix charset = UTF-8
dos charset = CP932
hosts allow = 192.168.0.

[share]
path = /home/share
public = yes
writable = yes
guest ok = yes
create mode 0777

共有ディレクトリーを作成
mkdir /home/share

SAMBAの再起動
sudo service samba restart
** 次のエラーの時:  Failed to restart samba.service: Unit samba.service is masked. --->> Reboot かな~?
SAMBA Start
sudo service samba-ad-dc start

自動起動の設定
sudo update-rc.d samba defaults
sudo update-rc.d ssh defaults



WiringPiJessieWheezy

「WiringPi」のインストール
git clone git://git.drogon.net/wiringPi
cd wiringPi
./build
Python の導入
cd
sudo apt-get update
sudo apt-get install python-dev python-setuptools
git clone https://github.com/Gadgetoid/WiringPi2-Python.git
cd WiringPi2-Python
sudo python setup.py install

ブラウザからサーボモーターを制御するためには、
WebIOPiからwiringPiのPythonモジュールWiringPi2-Pythonを呼び出す必要があります。
その際、WebIOPiはPython3で動いていますので、
WiringPi2-PythonをPython3用にインストールする必要があります。
Python3用のWiringPi2-Pythonのインストールを実行
cd WiringPi2-Python
sudo python3 setup.py install

GPIO

バージョン表示
gpio -v
Raspberry-PiのGPIOの状態表示
gpio readall



WebIOPi ......PCやスマホと連携JessieWheezy

2016.04.27. ダウンロード URL: http://webiopi.trouch.com/
WebIOPi をダウンロード・・・【2015.09.05. 現在】 最新バージョンは、WebIOPi-0.7.1. です。
wget http://sourceforge.net/projects/webiopi/files/WebIOPi-0.7.1.tar.gz

ダウンロードしたファイルを解凍
tar xvzf WebIOPi-0.7.1.tar.gz

セットアップスクリプトの実行
cd WebIOPi-0.7.1
sudo ./setup.sh

● Raspberry Pi 起動時に自動起動を有効にするコマンド:
sudo update-rc.d webiopi defaults
● 自動起動を無効のコマンド
sudo update-rc.d webiopi remove

◆ (管理者権限で)設定ファイルの編集 ( /etc/webiopi/config)
WebIOPiが起動されていない状態にしてから、sudo nano /etc/webiopi/config で開き、編集します。

WebIOPi をサービスとして開始
sudo /etc/init.d/webiopi start
WebIOPi のサービスを終了
sudo /etc/init.d/webiopi stop

*  WevIOPI の動作を確認するには、
ps ax | grep webiopi 
3208 ? Sl 0:00 /usr/bin/python3 -m webiopi -l /var/log/webiopi -c /etc/webiopi/config
3216 pts/0 S+ 0:00 grep --color=auto webiopi
上記のごとく、2行にわたって、情報が表示されていれば稼働中です。 2行目のみの場合は、停止しています。
なお、このプロセスIDに対して、sudo kill 3208 入力で WebIOPI は停止します。

** 「ウエブサイトの利用が出来ません」の場合・・・・・エラー対処法(Ⅰ):
sudo apt-get install --reinstall ca-certificates ca-certificates-java 


*** GPIO Header 40pin *** * 参照ページ: http://qiita.com/mt08/items/5e14e42e817ba3c2ac43
sudo nano WebIOPI-0.7.1/python/native/cpuinfo.c
 ・・・(略)
if (strcmp(hardware, "BCM2709") == 0)     /* 40行目  BCM2708-->BCM2709 */
 (略)・・・
保存:Ctrl+o ---> 終了:Ctrl+x

sudo nano WebIOPi-0.7.1/python/native/gpio.c
(略) ・・・
#define BCM2708_PERI_BASE 0x3F000000  /* 32行目 0x20000000--->0x3F000000 */
 (略)・・・

sudo nano WebIOPi-0.7.1/python/webiopi/utils/version.py
 ・・・(略)
_MAPPING[2] = ["V33", "V50", 2, "V50", 3, "GND", 4, 14, "GND", 15, 17, 18, 27, "GND", 22, 23, "V33", 24, 10, "GND", 9, 25, 11, 8, "GND", 7, 0, 1, 5, "GND", 6, 12, 13, "GND", 19, 16, 26, 20, "GND", 21]
sudo nano WebIOPi-0.7.1/htdocs/webiopi.js
 ・・・(略)
this.PINS = Array(41);
 ・・・(略)

for (var pin=1; pin <=40; pin++) { ...
26pin--->40pinにする。76行目と580行目を変更・・・


Apache2 JessieWheezyラズパイをウエブサーバーに~

sudo apt-get update
sudo apt-get upgrade
Apache2をインストールします。
sudo apt-get install apache2

インストールが完了したら、ウエブ上で確認します。
Raspberry Pi(ローカルホスト)・・・
http://localhost Enter
ほかの端末から・・・・
http://[ラズベリーパイのIPアドレス] Enter

右のように表示されれば、OK です。

起 動apache2ctl start
再起動apache2ctl restart
停 止apache2ctl stop
Apache2を用いたwebサーバのデフォルトのルートディレクトリは /var/www/ です。
 因って、上記の "http://localhost"または"http://[ラズパイIPアドレス]"にアクセスすると、
/var/www/index.html のページを表示しています。



ServoBlaster JessieWheezy複数のサーボモーターの操作

 ■最新(2016.05.20.)・・・動いています~!
git clone git://github.com/richardghirst/PiBits.git
cd PiBits/ServoBlaster/user
make
sudo make install

《 以前の遣り方 》
git clone git://github.com/richardghirst/PiBits.gitWheezy
cd PiBits/ServoBlaster/user
make servod
sudo make install

ServoBlaster を起動する
sudo servod

ServoBlaster 終了
sudo killall servod
自動起動のオン・オフ
sudo update-rc.d servoblaster remove
sudo update-rc.d servoblaster defaults

Servo mapping:
0 on P1-7 GPIO-4
1 on P1-11 GPIO-17
2 on P1-12 GPIO-18
3 on P1-13 GPIO-27
4 on P1-15 GPIO-22
5 on P1-16 GPIO-23
6 on P1-18 GPIO-24
7 on P1-22 GPIO-25


☆起動テスト例.....
GPIO 4 →0, GPIO 17→1, GPIO 18→2, GPIO 22→4, GPIO 23→5, GPIO 24→6, GPIO 25→7
echo 2=140 > /dev/servoblaster
echo 2=60 > /dev/servoblaster
echo 2=240 > /dev/servoblaster
echo 4=0% > /dev/servoblaster   /* 一方の端まで移動
echo 4=100% > /dev/servoblaster  /* 他端まで移動
*** サーボ位置の直前に+や-の符号を付けると、現在の位置からの相対量を指定出来る。

-- 参照ページ
-- http://www.webopixel.net/javascript/538.html
-- Rutles / Raspberry Pi で遊ぼう 改訂第3版
-- impress / Raspberry Pi ユーザーガイド 第2版

Copyright 悠流里 since:2002.07.20.  
inserted by FC2 system