Slide 1

Slide 1 text

Raspberry pi 講習会 Part2 : linuxアンドpython 2017年秋 B2 ⼩野輝也

Slide 2

Slide 2 text

シラバス 1. ラズパイに⼊⾨する u ラズパイってなんだろうか u OSインストール u ネットワーク設定 u 初めてのCUI(コマンド操作) u Lチカ 2.Pythonに⼊⾨する u コマンド講座 u Pythonでhello world! u ラズパイを⽤いたプログラミング 3.ラズパイで電⼦⼯作 u IOピンをプログラムから制御 u Arduinoと連携させよう 4.サーバーで遊ぼう u Webサーバー u ファイルサーバー 5.Bluetoothで通信しよう u BLEとは︖ u パソコンと通信させる u モバイルアプリ作れたら・・・素敵やん︖ 6.カメラを使う u 隣の⼈を盗撮しよう u 動画を撮ってみよう u openCVで画像認識 u Webサーバーで公開しよう

Slide 3

Slide 3 text

コマンドの説明 pi:~$ echo hello,rpi! ユーザー 名 カレントディレクトリ プロンプト コマンド 引数(ひきすう)

Slide 4

Slide 4 text

これだけ覚えておけば⼤丈夫コマンド cd ls cp rm mkdir

Slide 5

Slide 5 text

cd : change directory ディレクトリを移動する。 $ cd ホームディレクトリに移動 $ cd / ルートディレクトリに移動 $ cd /bin/hoge/foo /bin/hoge/fooへ移動(絶対パス指定) $ cd ../math ⼀つ上階層にあるmathディレクトリに移動(相対パス指定) ⼊⼒途中にtabを押すと補完してくれる。 2回押すと候補を表⽰してくれる。

Slide 6

Slide 6 text

ls: 現在のディレクトリにあるディレクトリ、ファイルを表⽰する $ ls カレントディレクトリの内容を表⽰ $ ls /bin/foo /bin/foo内の内容を表⽰ $ ls –a カレントディレクトリの内容を隠しファイルを含め全て表⽰ $ ls –l カレントディレクトリのファイルの内容を詳細に表⽰ -rw-r--r-- 1 mirai staff 8192 10 8 08:11 test.sqlite3 名前が.(ピリオ ド)で始まるファ イル・ディレクト リは隠される パーミッション(permission):ファイルやディレクトリの操作権限を表す。

Slide 7

Slide 7 text

コマンドのオプション $ command –a –r –f $ command –arf コマンドに付加的な情報を加える。「強制的に」「全て」など。 基本的には順不同。 どのオプションがどんな意味を持つかはコマンドによりけり。 オプションが引数を取ることもある $ screen –S myscr オプション-Sの引 数

Slide 8

Slide 8 text

cp ファイル、ディレクトリをコピーする $ cp /bin/hoge /bin/foo /bin/hoge を /bin/fooにコピーする $ cp –r /bin/huga /bin/poo /bin/hugaディレクトリの内容を/bin/pooディレクトリにコピーす る

Slide 9

Slide 9 text

rm ファイル、ディレクトリを削除する $ rm /bin/hoge ファイル/bin/hogeを削除 $ rm –f /bin/hoge /bin/fuga 確認なしで削除 $ rm –r /bin/foo /bin/fooディレクトリを削除 複数ファイル指定で⼀括削除

Slide 10

Slide 10 text

mkdir ディレクトリを作成する $ mkdir hoge カレントディレクトリにhogeというディレクトリを作成する

Slide 11

Slide 11 text

Lチカプログラム 前回やったLチカをプログラムからやってみよう ホームディレクトリに「scripts」ディレクトリを作成して、 カレントディレクトリをscriptsディレクトリに変更しよう。

Slide 12

Slide 12 text

Lチカプログラム $ mkdir scripts $ cd scripts $ nano lchika.sh nanoエディタが開きます #!/bin/bash echo 2 > /sys/class/gpio/export echo out > /sys/class/gpio/gpio2/direction while : do echo 1 > /sys/class/gpio/gpio2/value sleep 1 echo 0 > /sys/class/gpio/gpio2/value sleep 1 done

Slide 13

Slide 13 text

実⾏しよう $ sudo sh ./lchika.sh 実⾏後は $ echo 2 > /sys/class/gpio/unexport でピンを解放しよう

Slide 14

Slide 14 text

.shって何︖ さっき作ってもらったファイルはシェルスクリプトと⾔います。 ⾒ての通り、本来は1つずつ⼊⼒しなくてはならないコマンドをファイルにまとめて実⾏できます。 またプログラミングで必ずお世話になるif, while, forなどの制御⽤の構⽂も使えます。 シェルスクリプトが書ければモテる作業の⾃動化ができてとっても効率的

Slide 15

Slide 15 text

lchikaファイル解析 $ cat lchika.sh #!bin/bash echo 2 > /sys/class/gpio/export echo out > /sys/class/gpio/gpio2/direction while : do echo 1 > /sys/class/gpio/gpio2/value sleep 1 echo 0 > /sys/class/gpio/gpio2/value sleep 1 done catコマンド ファイルの中⾝を標準出⼒に表⽰ while⽂ セミコロンを指定すると無限ループ