RaspbianOS セットアップ方法 (2018-06-27バージョン)

RaspbianOSが2018-06-27版にアップデートされました。

2018-06-27版は、起動直後に設定ウィンドウが開くように変更されましたので、その手順をご紹介します。

 

1. 起動直後の画面

起動直後、ウェルカムメッセージとともに設定ウィンドウが自動的に開きます。

Nextボタンを押して、先に進みましょう。

pi-1

2.  国情報の設定

最初は、国情報設定です。

国情報は、デフォルトでUnited Kingdom(英国)が設定されていますので、これを日本に変更しましょう。

Country欄のUnited Kingdomの箇所をクリックします。

pi-2

アルファベット順に国名が並んだリストが開きますので、Japan(日本)が表示されるまで、ひたすら上にスクロールします。

Japanを選択すると反映されます。

pi-3

変更したのは国名だけですが、それに合わせて他の項目も自動的に変更されます。

設定を変えたい項目がある場合には、その項目をクリックします。(今回の例では変更なしとします)

pi-4

設定が終わったら、Nextをクリックすることで反映されます。

pi-5

 

3. パスワードの変更

国情報の設定が完了したら、パスワード変更の画面になります。

RaspbianOSのデフォルトのログインIDおよびパスワードは公開されているので、セキュリティホールになりやすいです。

そのため、必ず変更するようになっているようです。

新しいパスワードを2箇所入力したらNextをクリックします。

pi-6

 

4. wifiの設定

この後のOSアップデートの準備のため、wifiの設定画面になります。

接続先一覧が表示されるまで、少し時間がかかります。

設定が不要の場合には、Skipを押します。

pi-7

 

5. OSアップデートの実施

セキュリティ強化のため、OSアップデートをするか選択する画面になります。

Raspberry Piがネットワークにつながっているのを確認した上で、Nextを押してアップデートしましょう。

pi-8

 

6. リブート

以上でセットアップは完了となり、リブートを促す画面となります。

リブートすることで、設定が反映された状態で立ち上がります。

pi-9

 

7. 設定内容を確認してみよう

リブート完了後は、アプリケーションを実行するなり、ブラウザを起動してインターネットにアクセスするなり、自由に使えます。

以降は必須の作業ではないですが、設定内容が反映されている様子を確認しましょう。

まず、メニューから、設定→Raspberry Piの設定を選択します。

pi-10

 

開いたウィンドウの「ローカライゼーション」タブをクリックします。

pi-11

 

ロケールがどうなっているかを確認してみます。

pi-12

 

次に、タイムゾーンを確認してみましょう。

pi-14

 

キーボードも日本語キーボードに設定されます。

pi-15

 

wifiも、国別に設定が必要です。

pi-17

 

以上のように、RaspbianOS 2018-06-27バージョンからは、必要な初期設定をもらさず実行できるようになりました。

 

 

 

 

 

 

 

 

 

Raspbian Stretchがアップデート:異なるスクリーン解像度をサポート

以下はwww.raspberrypi.org/blog に掲載された記事の要約です。

新しいイメージ

新しいイメージを提供する理由は Raspberry Pi 3 Model B+ への対応、bug修正、新機能追加。
ほとんど全てのハードウェアに対応しているが、Chromiumが Pi1やPiZeroの古いArm6で動かない
ことと、幾つかのソフトウェアがメモリ不足などで動作が非常に遅くなること。

Raspbianとスクリーン解像度

新しいAppearance Settingアプリケーションは大・中・小スクリーンそれぞれのデフォルトを選べるようにした。  これにより、フォントサイズ、アイコンサイズなどが、完璧ではないが、それぞれの解像度に適したものとなるようにした。
(左:以前のもの、 右:新しいもの  新しい中解像度が以前のデフォルトに相当する)

appset  appsetdef

 

Pixel Doubling

RaspberryPiConfigurationのSystemの一番下に 「Pexel Doubling」の項目を入れた。Raspbianをの超高解像度Retina Displayなどで使うときにあまりにもピクセルが小さくなり過ぎるのを解決するため。全てのピクセルを2×2ブロックにしたこと。MacBook Proや大型のHDMIスクリーンで使用する。目の悪い方々にも役に立つのではないか。

rpconf

 

X86バージョンのRaspbian

Raspbian Jessieの時から作られたX86バージョンのRaspbianについても今回のバージョンアップと同時にリリースした。

PCManFMの改善

アプリケーションPcManFMのメニュー変更した。
・あまり使わない機能は隠した。
・ファイル名をクリックして変更できるようにした。(Windowsのように)

アップデートしたRaspbianを使うには

新しいイメージをダウンロードするか、または
$sudo apt-get update
$sudo apt-get dist-upgrade
で更新できる。

<終わり>

RaspberryPi日本語入力 fcitx-mozcを入れる

あらかじめ国別・キーボード設定などを行います。

menu>Preference>Raspberry Pi Configurationと選びます。

  • Localization>
  • Locale: Set Locale:>language>ja(japanese)
  • Country >JP(Japan)
  • Character Set> UTF-8
    -> OK を押す

キーボードの選択をあやまると、キーと打刻される文字が不一致になってしまいます。

英語キーボードを使っている場合は次のようにします。

  • Keyboard: Set Keyboard:
  • Country: United States
  • Variant: English(US)

日本語キーボードを使っている場合は次のようにします。

  • Country: Japan
  • Variant: Japanese

ここでキーボードのためし打ちができるので、Type here to test your keyboardの欄に たとえば *, =, ~, |, _, “, @ など、不一致になりやすい文字を打って確かめます。

keySettei

日本語入力 fcitx-mozc のインストール

ここではオープンソースのMOZCをインストールします。
$ sudo apt-get update
$ sudo apt-get install fcitx-mozc
インストール途中で実行してよいか聞かれますので y (yes)で答えて下さい。

mozcの使い方

mozc がインストールされると、ツールバー右上に小さなキーボードアイコンが現れます。

MozcIcon
また、メニューに
システムツール>Fcitx  および 設定>Fcitx、Mozcの設定、入力メソッド
が現れます。

mozc2

mozcの起動

キーボードアイコンをマウスクリックするか、CTRL+スペースキーを押すと、mozc かな変換が起動します。キーボードアイコンは「あ」に変わります。

mozcIcon2

<終わり>

 

Raspberry PI 3 の無線LANに固定IPアドレスを設定する

RaspberryPiのネットワークアドレスを調べる

lxterminalで次のようにタイプして、Raspiの現在のネットワークの状態を確認します。
$ ifconfig
とタイプします。wlan0の項目を見ると、現在DHCPでこのRaspberryPiには192.168.1.21が割り振られています。
ローカルアドレス192.168.1.2~192.168.1.224のうち、後のほうは使われていないとして
currentNet2
アドレスを   192.168.1.221 に固定することにします。

 

設定するアドレスが使われていないか確認する

アドレスが使われていないかの確認には ping コマンドを使用します。アドレス192.168.1.221 と 192.168.1.220で確認します。使い方は   $ ping アドレス で、データを送りつけて反応を調べるので、適当なところでCTRL-Cで停止します。

ping

ping 192.168.1.221の結果は5パケットのうち、0が受信され100%失われました→アドレスは未使用
ping 192.168.1.220の結果は4パケットのうち、4が受信され、0%が失われました→アドレスは使用中
これで 192.168.1.221は未使用であることが確認できたので、使うことにします。

 

固定アドレスを設定する

固定アドレスを設定するには/etc/dhcpcd.confファイルへ設定内容を追記します。nanoエディタを使って書き換えましょう。lxterminalで次のようにタイプしてnanoを起動し、追記内容を書き加えてください。

$ sudo nano /etc/dhcpcd.conf

# 追記

interface wlan0

static ip_address=192.168.1.221/24

static routers=192.168.1.1

static domain_name_servers=192.168.1.1

dhcpcd

編集後、CTRL-Oで変更内容を書き込み、CTRL-Xで終了します。
※注意:ルーターのアドレスは上記とは限らないので気をつけてください。192.168.10.1など。
その場合はstatic ip_address=129.168.10.221/24になります。

 

設定されたアドレスを確認する

一度、RaspberryPiを再起動して、固定アドレスが割り振られたかどうか確認しましょう。
$ sudo reboot now

再起動したら ifconfigでwlan0を確認します。

henkougo

確かに設定したアドレスが割り振られていることがわかります。(終わり)

RaspberryPiのVNC設定方法

RaspberryPiの設定

RaspberryPiデスクトップ上で メニュー>設定>Raspberry Piの設定 を選ぶ。
VNCを「有効」にします。
raspi_settei

RaspberryPiのアドレスを調べる

RasberrtPiデスクトップ上でlxterminalを立ち上げ、

$ ifconfig

でネットワークの設定を調べ、wlan0のアドレスをメモに控えておきます。
lxterminal
上のwlan0:の inet 192.168.xx.xx  がDHCPで割り振られたローカルアドレスです。

PCにRealVncViewer(クライアント)をインストールする

RealVncViewerダウンロードのページです。Windows x86(32ビット)またはx64を選んでダウンロードします。
https://www.realvnc.com/en/connect/download/viewer/windows/
vncviewr

Viewerは圧縮されていないので、ダウンロード先をWindows32ビット環境ならProgram Files(x86)に、64ビットならProgram Filesフォルダにダウンロードします。起動しやすいようにダウンロードした実行ファイルを右クリックして、スタートメニューに登録しておきましょう。

VNCViewer起動

PC上のVNCViewerを起動してください。するとアドレスを尋ねてきますので、先ほどメモしたアドレスを
入力します。

address

認証を求められますので、ユーザー名、パスワードを入力します。ここでは pi,  raspberry です。

authentication

PCの画面にRaspberrypi のデスクトップが表示されます。

desktop

(終わり)

RaspberryPi On ZumoのWi-Fiコントロールシステム(WebIOPI)構築の手引き

RaspberryPiOnZumoのWi-Fiコントロール(WebIOPi)システム構築の手引き

PiOnZumo

スマホやパソコンのブラウザから構内のWi-Fiステーション経由でRaspberryPiOnZumoを
操縦するシステムを構築します。WebサーバーにはWebIOPiを使用します。

コードを入手する→codes

RaspberryPiOnZumoについてのFAQ

1.Arduino LeonardoにアップロードしたCommandReceiver.inoのプログラムの意味がよくわからないのですが。

・Arduinoのプログラムは最初に1回だけ実行されるsetup()関数と,その後繰り返し実行されるloop()関数からできていて,
プログラムはその中身を書くことになります。

・setup()関数内でUSBシリアル通信の初期化をSerial.speed(9600)命令で通信速度9600baudに設定します。

・次にloop()関数内で,Serial.available()関数により通信データがあるか調べ,あれば一文字(コマンド)を変数cに読み取り,
その文字の種類によって,モーターを制御しています。

・arduinoのシリアル通信命令についてはArduino.ccのserial以下をご覧ください。

https://www.arduino.cc/reference/en/language/functions/communication/serial/

 

2.Arduinoにモーターコントロールプログラムを書き込むとエラーが出てうまく書き込めません。

・ZumoMotorLibraryの場所が違っている可能性があります。    /home/pi/sketchbook/library/Zumo-shield/ZumoMotors
というディレクトリ構造になっているか確認してください。

・ArduinoIDEから ツール>シリアルポート を確認してください。    /dev/ACMA0となっているか、たとえば/dev/ACMA1などに
なっていたら、 RaspberryPiとArduinoがUSBケーブルで接続された状態で、RaspberryPiを再起動してください。
( $ sudo reboot now )その後、/dev/ACMA0になっていることを確認してください。

 

3.WebIOPiを起動するとデモページが立ち上がってしまう。

・/etc/webiopi/configファイルが書き換えられていません。11.の項目をもう一度よくチェックして下さい。
デスクトップ環境から直接configファイルをleafPad(エディタ)で開くと、書き込みができません。
lxterminalを立ち上げ、その中で sudo leafpad /etc/webiopi/configとして編集し、保存する必要があります。
これは /etc/rc.localの編集、書き込みについても同じです。

 

4.ブラウザからRasPiのアドレスにアクセスしてもボタンのついたページが表示されない。

・ index.htmlファイルが文法的に正しくない。10.のリストと比べて字句が正しいかチェックして下さい。

 

5.プッシュボタンを押してもRasPiが終了しない。

・プッシュボタンが26, 27ピンに間違いなく差してあるか確認する。
・shutdown.pyのリストをもう一度確認してください。
・shutdown.pyの場所を確認してください。
・/etc/rc.local の内容を確認してください。

7インチ タッチディスプレイのご使用に関して

7インチ タッチディスプレイで下記対象製品のサポートデバイス、及びOSは以下の通りとなります。

 

対象製品

  • Raspberry Pi用 7inch タッチスクリーンLCD (C) [TSI-PI020-070C]
  • 7″HDMIディスプレイ&ケースセット

使用可能デバイス&OS

Device Driver OS
Raspberry Pi 2 Model B Raspbian Raspbian, Ubuntu
Raspberry Pi 3 Model B Raspbian Raspbian, Ubuntu
BB Black Angstrom
Tinker Board TinkerOS (ver2.0.1 beta以上)
LattePanda Plug&Play Windows10

Raspberry Pi用タッチディスプレイ OSイメージダウンロード & セットアップ方法

WaveShare社製Raspberry Pi用 LCDディスプレイ(3.2インチ/3.5インチ/4インチ)セットアップ手順

2017/9/18更新
TechShare株式会社

注1)こちらはタッチディスプレイの画像表示に関するパートです。
画面の回転、およびタッチ操作部分の回転に関しては、別途こちらのドキュメントをご確認ください。

https://www.waveshare.com/wiki/5inch_HDMI_LCD_(H)

用意するもの

・Windows PC (マイクロSDカードが読み書きできるもの、ディスクに20Gbyte程度の空き容量が必要)
・マイクロSDカード(8Gbyte~64Gbyte、Class10)
・Raspberry Pi、電源、キーボード、マウス

 

使用するOSイメージファイルについて

<専用OSを使用する場合>

3.2インチディスプレイ(HDMIなし)の場合: Raspbian-2017-07-05-TFT32.7z を使用してください
3.5インチディスプレイ(HDMIなし)の場合: Raspbian-2017-07-05-TFT35.7z を使用してください
4インチディスプレイ(A)の場合: Raspbian-2017-07-05-TFT40.7z を使用してください

<通常のOSを使用する場合>
3.5インチ(480×320,IPSタイプ)、4インチ(800×480,IPSタイプ)、5インチ(B)、
5インチ(H)、7インチ(B)、7インチ(C)ディスプレイの場合: 通常のRaspbianOSイメージを使用して手順に従って書き込んでください。その際、書き込み手順の(2-1)も実施ください。

7インチディスプレイの他デバイスでのご使用はこちらを参照ください。

 

書き込み手順

OSイメージファイルは圧縮されています。
圧縮解凍ツールを使って解凍後、得られたイメージファイルを専用ツールでマイクロSDカードに
書き込んでください。
書き込んだ直後は、マイクロSDカードの4Gbyte分のみ使用する設定になっています。
全容量を使用する設定に変更するには、下記の(6)以降の操作を行ってください。

 

(1) 7zipを使い、圧縮されているOSイメージファイルを解凍する。
http://www.7-zip.org/

 

(2) 解凍したOSイメージファイルを Win32DiskImagerを使ってマイクロSDカードに書き込む。
https://sourceforge.net/projects/win32diskimager/files/latest/download

 

(2-1)お使いのモニタが3.5inch(480×320,IPS)、4inch(800×480,IPS)、5inch(B)、5inch(H)、7inch(B)、7inch(C)の場合

OSイメージを書き込んだSDカードを、Windows PCから一旦抜き、挿し直して、リムーバブルディスクとして認識させます。

リムーバブルディスクを開き、その中のconfig.txtをテキストエディターで編集します。

テキストの最後の行に次の5行を追加してください。

(注意) これら5行はこのままの文字を追加して下さい。誤って文字と文字との間にスペースを入れると認識されません。

[3.5inch(480×320,IPS)の場合]

この場合のみ、入力するのは4行です

max_usb_current=1
hdmi_group=2
hdmi_mode=87
hdmi_cvt 800 480 60 6 0 0 0

[4inch(800×480,IPS)の場合]

hdmi_group=2
hdmi_mode=87
hdmi_cvt 480 800 60 6 0 0 0
dtoverlay=ads7846,cs=1,penirq=25,penirq_pull=2,speed=50000,keep_vref_on=0,swapxy=0,pmax=255,xohms=150,xmin=200,xmax=3900,ymin=200,ymax=3900
display_rotate=3

[5inch(B) もしくは5inch(H)もしくは 7inch(B) の場合]

max_usb_current=1
hdmi_group=2
hdmi_mode=87
hdmi_cvt 800 480 60 6 0 0 0
hdmi_drive=1

[7inch (C) の場合]

max_usb_current=1
hdmi_group=2
hdmi_mode=87
hdmi_cvt 1024 600 60 6 0 0 0
hdmi_drive=1

編集がうまくいかない場合など、こちらのconfig.txtをダウンロードし、microSDカード上で置き換えてお使いください。

         config.txt

 

(3) Raspberry Piの準備
購入したLCDを取り付ける
キーボード、マウスを取り付ける
書き込んだSDカードをスロットに入れる

 

(4) Raspberry PiのマイクロUSBコネクタにACアダプタを接続し、電源を供給する。

 

(5) GUIが立ち上がったら、Terminalを起動する。

 

(6) コマンドラインにて、sudo raspi-config を実行する。

 

(7) 起動したメニューで、
7.Advanced Options を選択し、
A1 Expand Filesystem を実行する

 

(8) ESCを何回か押し、raspi-configを抜ける。

 

(9) リブートする。

 

注意事項

ドライバーインストール後にOSアップデートを実行すると、ドライバーが無効になり表示できなくなることがあります。

ドライバーはOSのバージョンに強く依存するため、OSアップデートは実施しないでください。

OSをアップデートしたい場合には、下記のメーカーサイトに、対応するドライバーが公開されているのを確認し取得の上、実施してください。

その際、LCDは表示できなくなりますので、ネットワーク経由でssh接続できるルートを確保の上、実行してください。

最悪の場合に備えて、SDカードを事前にバックアップしておくことをお勧めします。

Win32DiskImagerでSDカードをまるごとイメージファイルとして保存できます。

 

OSインストール済みのため、ドライバーのみインストールしたい場合

ドライバーは、OSのバージョンに強く依存するため、OSのバージョンにあったドライバーをインストールする必要があります。

下記のメーカーサイトにドライバーが公開されていますが、通常、最新のOSもしくは1つ前のOS (最新のOSが出たばかりで追従できていない場合)に対応したものとなります。古いバージョンのものは公開されておりませんのでご了承ください。

3.2インチディスプレイ: http://www.waveshare.com/wiki/3.2inch_RPi_LCD_(B)
3.5インチディスプレイ: http://www.waveshare.com/wiki/3.5inch_RPi_LCD_(A)
4インチディスプレイ: http://www.waveshare.com/wiki/4inch_RPi_LCD_(A)
5インチ(B)ディスプレイ:http://www.waveshare.com/wiki/5inch_HDMI_LCD_(B)
5インチディスプレイ(GPIO接続端子付きのもの):http://www.waveshare.com/wiki/5inch_HDMI_LCD

 

インストール方法は、すべて共通しています。

※インストール前にSDカードのバックアップを取っておくことをお勧めいたします。Win32DiskImagerでSDカードをまるごとイメージファイルとして保存できます。

※ドライバーインストール後、表示がうまくいかなかった場合に備えてネットワーク経由でssh接続できるルートを確保しておいてください。

 

ドライバーのインストール方法

以下の内容はTerminalを起動し、実行してください。

例えば、Download フォルダーにファイルを保存した場合、ファイルマネージャーで、Downloadフォルダーを

右クリックし、【ターミナルで開く】を選択します。

(1)アーカイブを展開する。

tar xvf LCD-show-*.tar.gz

 

(2)作成されたLCD-showというディレクトリ内に移動する。

cd LCD-show

 

(3)対象のディスプレイをインストールするバッチファイルを実行する。実行後自動的にリブートが実行されます。

 

3.2インチディスプレイ:

chmod +x LCD32-show
./LCD32-show

 

3.5インチディスプレイ:

chmod +x LCD35-show
./LCD35-show

 

4インチディスプレイ:

chmod +x LCD4-show
./LCD4-show

 

5インチディスプレイ(5インチ(B)ディスプレイは不要):

chmod +x LCD5-show
./LCD5-show

 

(4)もし動作しなかった場合

リブート後、表示がされない場合には、sshでログインし、LCD-showディレクトリ内に移動して、./LCD-hdmiを実行することでHDMI表示に戻すことが出来ます。

万が一、sshでログインできない場合には、HDMIディスプレイとUSBキーボードを接続し、ctrl-alt-delでリブートを実行すると、起動の途中までHDMIディスプレイに表示されます。その後、crtl-alt-F2を押すとHDMIディスプレイからコマンドラインでログインできるようになります。

 

以上

4.2 Raspberry Pi B+ 温度を測ろう!

 

 4.2 PWMでサーボ-モータを回して見よう

(1) サーボ-モータの回路を作ろう

PWMを使ってサーボモータを回します。サーボモータの回る角度はPWM信号のパルス幅で変わります。

(2) 回路を作ろう

①組立
下の配線図、回路図をみて、回路を組立て下さい。

raspi_4.2_1s raspi_4.2_2s

(2) 部品を作ろう

サーボモータ(SG-90)は、

動作パルス:20ms–>周波数50Hz

0度:1.0m–>デユーティ5%

90度:1.5ms–>デユーティ7.5%

180度:2.0ms–>デユーティ10.0%

で動作します。

①電源を入れます。

RaspberryPiB+にACアダプタを繋ぎ、電源を入れます。

②ログインします。

Raspbianが立ち上がったら、ログインして下さい。

③「nano」エディター立ち上げます。

「nano rpi_bp_pwm_sv1_1.py」コマンドを実行して下さい。
画面が「nano」エディターの画面に変わります。

④プログラムを入れます

サンプルプログラム1

 #! /usr/bin/env python

import RPi.GPIO as GPIO
import time

GPIO.setmode(GPIO.BCM) # use GPIO Number

SV1 =12
GPIO.setup(SV1, GPIO.OUT)

servo = GPIO.PWM(SV1, 50) # set 20 ms / 50 Hz

angle = 0.0 # set angle
new_duty =(1.0 + angle/180.0)/20.0*100.0 # calculate duty
print(new_duty)
servo.start(new_duty)
print(“angle 0 deg”)
time.sleep(0.5)

angle = 90.0 # set angle
new_duty =(1.0 + angle/180.0)/20.0*100.0 # calculate duty
print(new_duty)
servo.ChangeDutyCycle(new_duty)
print(“angle 90 deg”)
time.sleep(0.5)

angle = 180.0 # set angle
new_duty =(1.0 + angle/180.0)/20.0*100.0 # calculate duty
print(new_duty)
servo.ChangeDutyCycle(new_duty)
print(“angle 180 deg”)
time.sleep(0.5)

angle = 0.0 # set angle
new_duty =(1.0 + angle/180.0)/20.0*100.0 # calculate duty
print(new_duty)
servo.start(new_duty)
print(“angle 0 deg”)
time.sleep(0.5)

servo.stop() # stop servo

 

 

⑤入力を終わります。

「ctrl+X」を実行します。
次に、「y/n」は「enter」を入れます。

⑥入力したプログラムを実行します。

「sudo python rpi_bp_pwm_sv1_1.py」を実行します。

*サーボモータが0度、90度、180度、0度とまわります。その後に、「sv1 done」のメッセージが出ます。

raspi_code_4.2_1

(2) 部品にしよう

初期化、回転角の制御を部品にします。

①「nano」エディター立ち上げます。

「nano rpi_bp_pwm_sv1a_1.py」コマンドを実行して下さい。
画面が「nano」エディターの画面に変わります。

②プログラムを入れます

サンプルプログラムを見て、入力します。

サンプルプログラム2

 #! /usr/bin/env python

import RPi.GPIO as GPIO
import time

def sv_init(sv):
GPIO.setup(sv, GPIO.OUT)
servo = GPIO.PWM(sv, 50) # set 20 ms / 50 Hz
return servo

def angle_duty(angle):
duty =(1.0 + angle/180.0)/20.0*100.0 # calculate duty
return duty

if __name__ == (“__main__”) :
# start

GPIO.setmode(GPIO.BCM) # use GPIO Number

SV1 =12
servo = sv_init(SV1)

angle = 0.0 # set angle
new_duty = angle_duty(angle)

print(new_duty)
servo.start(new_duty)
print(“angle 0 deg”)
time.sleep(0.5)

angle = 90.0 # set angle
new_duty = angle_duty(angle) # calculate duty
print(new_duty)
servo.ChangeDutyCycle(new_duty)
print(“angle 90 deg”)
time.sleep(0.5)

angle = 180.0 # set angle
new_duty = angle_duty(angle) # calculate duty
print(new_duty)
servo.ChangeDutyCycle(new_duty)
print(“angle 180 deg”)
time.sleep(0.5)

angle = 0.0 # set angle
new_duty = angle_duty(angle) # calculate duty
print(new_duty)
servo.start(new_duty)
print(“angle 0 deg”)
time.sleep(0.5)

servo.stop() # stop servo

 

 

③入力を終わります。

「ctrl+X」を実行します。
次に、「y/n」は「enter」を入れます。

④入力したプログラムを実行します。
「sudo python rpi_bp_pwm_sv1a_1.py」を実行します。

*サーボモータが0度、90度、180度、0度とまわります。
その後に、「sv1a done」のメッセージが出ます。

raspi_code_4.2_2

(3) モジュールを使おう

(2)で作った部品(関数)の入ったファイルをモジュールとして使います。

①「nano」エディター立ち上げます。

「nano rpi_bp_pwm_bz1b_1.py」コマンドを実行して下さい。
画面が「nano」エディターの画面に変わります。

②プログラムを入れます
サンプルプログラムを見て、入力します。

サンプルプログラム3

 #! /usr/bin/env python

import RPi.GPIO as GPIO
import time

from rpi_bp_pwm_sv1a_1 import *

if __name__ == (“__main__”) :
# start

GPIO.setmode(GPIO.BCM) # use GPIO Number

SV1 =12
servo = sv_init(SV1)

angle = 0.0 # set angle
new_duty = angle_duty(angle)

print(new_duty)
servo.start(new_duty)
print(“angle 0 deg”)
time.sleep(0.5)

angle = 90.0 # set angle
new_duty = angle_duty(angle) # calculate duty
print(new_duty)
servo.ChangeDutyCycle(new_duty)
print(“angle 90 deg”)
time.sleep(0.5)

angle = 180.0 # set angle
new_duty = angle_duty(angle) # calculate duty
print(new_duty)
servo.ChangeDutyCycle(new_duty)
print(“angle 180 deg”)
time.sleep(0.5)

angle = 0.0 # set angle
new_duty = angle_duty(angle) # calculate duty
print(new_duty)
servo.start(new_duty)
print(“angle 0 deg”)
time.sleep(0.5)

servo.stop() # stop servo
GPIO.cleanup()

 

 

 

③入力を終わります。

「ctrl+X」を実行します。
次に、「y/n」は「enter」を入れます。

④入力したプログラムを実行します。

「sudo python rpi_bp_pwm_sv1b_1.py」を実行します。
*サーボモータが0度、90度、180度、0度とまわります。
その後に、「sv1b done」のメッセージが出ます。

raspi_code_4.2_3

⑤電源をきります。

「sudo shutdown -h now」を入力して下さい。

*ステータスLEDの点滅が終わり、消えてからマイクロUSBのDC5Vを抜いて下さい。

raspi_code_4.2_4