• 検索結果がありません。

PowerPoint プレゼンテーション

N/A
N/A
Protected

Academic year: 2021

シェア "PowerPoint プレゼンテーション"

Copied!
75
0
0

読み込み中.... (全文を見る)

全文

(1)

Raspberry Piで始める電子工作

作成日:2016年11月03日 作成者:佐藤春菜

(2)

構成

自己紹介 RaspberryPiとは ラズパイで始める電子工作~開発環境の準備~ ラズパイで始める電子工作~LEDの点滅~ ラズパイで始める電子工作~人感センサで取得~ ラズパイで始める電子工作~クリスマス電飾プログラム~ ラズパイで始める電子工作~実際に動かしてみる~ まとめ 引用・参考資料

(3)

自己紹介

名前:佐藤春菜 入社:2014年6月 言語:Java、(大学時代に)C、C# 趣味・好きなこと、最近のこと: ・美術鑑賞(バロック絵画。最近は印象派もすきです) ・音楽鑑賞(ロキノン・クラシックをよく聴きます) ・アニメ鑑賞(今期はSB69が面白いとおもいます) ・日本酒(よくのみます) いちおう部員 ・TG部とか英会話とかもたびたび出没します。帰社率高めです ・好きなポケモンはリザードンとニンフィアとジバコイルとルチャブル ・最近Pythonの勉強始めました!

(4)

RaspberryPiとは

(5)

RaspberryPiとは

◆Wikipediaから拾ってきた情報によると・・・ RaspberryPi(ラズベリー パイ)は、 ARMプロセッサを搭載したシングルボードコンピュータ イギリスのラズベリーパイ財団によって開発されている 初期モデルは2012年2月29日に発売 売り上げ台数は累計800万台以上(2016年2月29日時点) 日本ではラズパイとも呼ばれる(以降はラズパイ表記)

(6)

RaspberryPiとは

◆現在までに発売されているモデル一覧 Raspberry Pi 1 Model A ※現在販売終了 Raspberry Pi 1 Model A+ Raspberry Pi 1 Model B ※現在販売終了 Raspberry Pi 1 Model B+ Raspberry Pi 2 Model B Raspberry Pi 3 Model B Compute Module Raspberry Pi Zero

(7)

RaspberryPiとは

◆現在までに発売されているモデル一覧 Raspberry Pi 1 Model A ※現在販売終了 Raspberry Pi 1 Model A+ Raspberry Pi 1 Model B ※現在販売終了 Raspberry Pi 1 Model B+ Raspberry Pi 2 Model B Raspberry Pi 3 Model B Compute Module Raspberry Pi Zero ★今回使用するモデル 最新版 入手しやすい 比較的高性能

(8)

RaspberryPiとは

図:Raspberry Pi 3 Model B 発売日 2016年3月

価格 35ドル(約3700円) CPU ARM Cortex-A53

4コア 1.2GHz(64bit) メモリ 1GB USBポート 4 ネットワーク あり ストレージ microSDカード 大きさ 85.60 mm × 56.5 mm 重量 45 g 消費電力 1.4A (7W) 最大 2.5A (12.5W) ◆Raspberry Pi 3 Model Bのスペック

(9)

RaspberryPiとは

◆実物

IC・クレジットカードと同じ 大きさ!

(10)

RaspberryPiとは

◆ラズパイで作れるもの

(11)

RaspberryPiとは

◆ラズパイで作れるもの

(12)

RaspberryPiとは

◆ラズパイで作れるもの

ロボット

(13)

RaspberryPiとは

◆ラズパイで作れるもの

ロボット

デジタルカメラ

(14)

RaspberryPiとは

◆ラズパイで作れるもの ロボット デジタルカメラ タブレット スパコン

(15)

RaspberryPiとは

◆ラズパイで作れるもの ロボット デジタルカメラ タブレット スパコン ◆作ろうと思えばなんでも 何でも作れちゃう! それがラズパイの魅力

(16)

RaspberryPiとは

◆ということで、本発表の目的

ラズパイを利用した電子工作を発表することにより

(17)

RaspberryPiとは

◆今回作成するもの 12月っぽくクリスマスの電飾を作る 赤とか青とか緑とか、 色ごとにばらけて点滅する 人間を感知したら点滅が始まる (人感センサー利用) 人気がなくなったら点滅を止める

(18)

ラズパイで始める電子工作

~開発環境の準備~

(19)

ラズパイで始める電子工作~開発環境の準備~

◆ラズパイ初期セットアップに必要なもの ラズパイ本体 Raspberry Pi 3 Model B ラズパイ用ケース(なくてもいいけどあると良し) USB電源アダプタ&マイクロUSBケーブル ディスプレイ(テレビで代用可能) HDMIケーブル 有線キーボード 有線マウス MicroSDカード(8GB以上推奨)

(20)

ラズパイで始める電子工作~開発環境の準備~

◆Amazonで買い揃えた場合の予算 ラズパイ本体 Raspberry Pi 3 Model B ⇒4,585円 ラズパイ用ケース ⇒780円 USB電源アダプタ&マイクロUSBケーブル ⇒0円(家にあるや つ) ディスプレイ(テレビで代用) ⇒0円(家略) HDMIケーブル ⇒0円(家略) 有線キーボード ⇒0円(家略) 有線マウス ⇒0円(家略) MicroSDカード(16GB) ⇒680円 20

(21)

ラズパイで始める電子工作~開発環境の準備~

◆OSのインストール ・MicroSDにOS Raspbian(ラズビアン)をインストールする 公式HPにアクセスする https://www.raspberrypi.org/ downloads/ NOOBS(ヌーブス)を選択する

(22)

ラズパイで始める電子工作~開発環境の準備~

◆OSのインストール ・LITEはOSが含まれていないため、NOOBSを選択 NOOBSの"download ZIP"を 選択 ※約1GBあり。 DLに時間がかかる 完了後、MicroSDにコピー

(23)

ラズパイで始める電子工作~開発環境の準備~

◆ラズパイ初期設定 写真の通りに周辺機器を接続 電源ケーブルを接続すると ラズパイが起動 画面に出てくる指示に従い セットアップする! 電源ケーブルを 差す USBポートには マウスとキーボードを接続 有線環境の場合 LANケーブルを接続 HDMIケーブルを接続

(24)

ラズパイで始める電子工作~開発環境の準備~

◆ラズパイ初期設定 あとは日本語設定に変更したり。。。 パスワード変更したり。。。 必要なソフトウェア入れたり。。。 パッケージのアップデートしたり。。。 ネットで「ラズパイ セットアップ」で検索すれば いろいろでてきます。 使いやすいようにカスタマイズしましょう!

(25)

ラズパイで始める電子工作~開発環境の準備~

◆今回使用する言語「Python」(いまだに発音わかりません) Python(パイソン)は、汎用のプログラミング言語 コードがシンプルで扱いやすい プログラム実行はインタプリタ方式 最新バージョンは3.5(2015年9月13日リリース) Windows、Linux/Unix、Mac OS Xなどの 主要なオペレーティングシステムはもちろん、 Javaや.NETなどの仮想環境でも動作する

(26)

ラズパイで始める電子工作~開発環境の準備~

◆Pythonのインストール Windows ・以下URLから適切なものを選択し、インストールする http://www.python.org/ Rasbian ・標準でPythonが入っているため、インストール不要

(27)

ラズパイで始める電子工作~開発環境の準備~

◆実行形式 Windowsで実行する場合 Linux系OSで実行する場合 # Python2で起動 $ python ファイル名.py # Python3で起動 $ python3 ファイル名.py # Python3で起動 > python ファイル名.py

(28)

ラズパイで始める電子工作

~LEDの点滅~

(29)

ラズパイで始める電子工作~LEDの点滅~

◆初めての電子工作、「Lチカ」をやってみる

Lチカとは名前の通りLEDライトをチカチカ点滅させること IoT界における ”Hello, world!” にあたる

(30)

ラズパイで始める電子工作~LEDの点滅~

◆材料を揃える ・LED ・抵抗 ・ブレッドボード ・ジャンプワイヤ(オスメスケーブル) 大体Amazonほかオンラインショップで買い揃えられる ラズパイ工作向けキット(上記全部入り)も発売されている

(31)

ラズパイで始める電子工作~LEDの点滅~

◆秋月電子通商で買い揃えた場合の費用 ・LED(1個あたり40円) ・抵抗(1個あたり1円) ・ブレッドボード(300円程度) ・ジャンプワイヤ(オスメスケーブル)(1本あたり20円)

(32)

ラズパイで始める電子工作~LEDの点滅~

◆LED

長い方が+、短い方が-

色を指定できるフルカラーLEDや LEDテープなどがある。

(33)

ラズパイで始める電子工作~LEDライトの点滅~

◆抵抗 LEDには流していい電力が 決まっている (抵抗なしで必要以上の電流を 流すとLEDは壊れてしまう) 今回は330Ωのものを使用 GPIOピンの電圧:3.3V 抵抗に加わる電圧:3.3 – 2.6~2.7 = 0.6~0.7V 2mA流した場合:

(34)

ラズパイで始める電子工作~LEDライトの点滅~

◆ブレッドボード

はんだづけせずに電子回路組 みを試すことができる基盤

(35)

ラズパイで始める電子工作~LEDライトの点滅~

◆ジャンプワイヤ

ラズパイとブレッドボードを 接続するのに必要

(36)

ラズパイで始める電子工作~LEDライトの点滅~

◆電子回路を組む ラズパイのピンは それぞれ役割が異なる 1番・17番は3.3Vの電源 2番・4番は5Vの電源 黒丸はGND(接地) GPIOピンから回路に電源を とり、最後はGNDに戻す ピン番号表記 GPIO表記

(37)

ラズパイで始める電子工作~LEDライトの点滅~

◆電子回路を組む。ただ単純に光らせるだけなら・・・ +極 -極 抵抗 LED 【接続】 1番のピンから3.3Vの電源をと る 抵抗、LEDが直列になるように 接続する 最後にGNDに電流を逃がす ように接続 電源から 供給

(38)

ラズパイで始める電子工作~LEDライトの点滅~

◆電子回路を組む。目的はLピカではなくLチカ! +極 -極 抵抗 LED 【接続】 GPIO2から出力を制御 抵抗、LEDが直列になるように 接続する 最後にGNDに電流を逃がす ように接続 GPIO2 「電圧流す」

(39)

ラズパイで始める電子工作~LEDライトの点滅~

◆電子回路を組む 【ブレッドボード】 抵抗:c1-c4 LED:e4(+)-e5(-) 【ブレッドボードとラズパイ】 ジャンパーワイヤ(赤): a1-ピン番号3(GPIO 2) ジャンパーワイヤ(黒): a5-ピン番号6(GND) LED 抵抗 電気の流れる 向き

(40)

ラズパイで始める電子工作~LEDライトの点滅~

(41)

ラズパイで始める電子工作~LEDライトの点滅~

◆Lチカサンプルプログラム(demo1.py)一部抜粋 # GPIO番号指定 GPIO.setmode(GPIO.BCM) #・・・① # GPIO2出力指定 GPIO.setup(2, GPIO.OUT) #・・・② ①GPIO番号指定モードの設定を行う ボードピン番号で指定する場合は以下の通 り記述 GPIO.setmode(GPIO.BOARD) ②GPIOの入出力の設定を行う 引数1にピン番号(GPIO番号)、 引数2に入出力の設定 今回は出力指定

(42)

ラズパイで始める電子工作~LEDライトの点滅~

◆Lチカサンプルプログラム(demo1.py)一部抜粋 try: while True: GPIO.output(2, GPIO.HIGH) #・・・③ sleep(1) GPIO.output(2, GPIO.LOW) #・・・④ sleep(1) except KeyboardInterrupt: #・・・⑤ pass GPIO.cleanup() #・・・⑥ ③④ピンの電圧を指定 ・HIGH(3.3V) ⇒LEDを光らせる ・LOW(0V) ⇒LEDを光らせない ⑤ユーザが割り込みキー(Ctrl+cとか)を押 下したときに発生 ※passは処理を行わない ⑥GPIO設定をリセット

(43)

ラズパイで始める電子工作~LEDライトの点滅~

(44)

ラズパイで始める電子工作

~人感センサで取得~

(45)

ラズパイで始める電子工作~人感センサで取得~

◆人感センサ 焦電型赤外線センサモジュール 今回使用するのは以下スペック ・最大検知距離:3~5m ・検知角度:100度

(46)

ラズパイで始める電子工作~人感センサで取得~

◆電子回路を組む 【ブレッドボードとピン番号の紐づ け】 c8-ピン番号6(GND) c9-ピン番号12番(GPIO18) c10-ピン番号4番(5vの電源) 人感センサ レンズのついていないほうがa側

(47)

ラズパイで始める電子工作~人感センサで取得~

(48)

ラズパイで始める電子工作~人感センサで取得~

◆人感センササンプルプログラム(demo2.py)一部抜粋 try: while True: if GPIO.input(18)==1: #・・・① log() sleep(1) except KeyboardInterrupt: pass ①ピンの電圧状態を読み取る

(49)

ラズパイで始める電子工作

(50)

ラズパイで始める電子工作~クリスマス電飾プログラム~

◆準備したもの ラズパイセット LED(赤×5、青×5、緑×5) 人感センサ 抵抗(330Ω×3) ブレッドボード ジャンプワイヤ(たくさん) はんだづけセット クリスマスツリー

(51)

ラズパイで始める電子工作~クリスマス電飾プログラム~

◆費用内訳 ラズパイセット 6,000円程度 LED(赤×5、青×5、緑×5) 300円程度 人感センサ 500円程度 抵抗(330Ω×3) 3円程度 ブレッドボード 300円程度 ジャンプワイヤ(たくさん) 500円くらい? はんだづけセット 3,000円程度 クリスマスツリー 1,000円程度

(52)

ラズパイで始める電子工作~クリスマス電飾プログラム~

◆電子回路を組む前に LEDをたくさん光らせたいが、GPIOには限りがあるため 赤・緑・青の3パターンで光るタイミングが異なるように実装 順番は赤⇒緑⇒青 上記よりつなぎ方は並列。※直列だと電圧を多く必要とする はんだづけでうまくやる ちなみに、シフトレジスタを用いれば 個別にLEDの点滅を制御できるらしいです(今回は不使用)

(53)

ラズパイで始める電子工作~クリスマス電飾プログラム~

◆電子回路を組む 【ピン番号の紐づけ(電飾赤)】 a15-ピン番号36(GPIO16) a19-適当なGND 【ピン番号の紐づけ(電飾緑)】 a20-ピン番号38(GPIO20) a24-適当なGND 【ピン番号の紐づけ(電飾青)】 a25-ピン番号40(GPIO21) a29-適当なGND

(54)

ラズパイで始める電子工作~クリスマス電飾プログラム~

(55)

ラズパイで始める電子工作

~実際に動かしてみる~

(56)

ラズパイで始める電子工作~実際に動かしてみる~

(57)

ラズパイで始める電子工作~実際に動かしてみる~

◆所感

(58)

ラズパイで始める電子工作~実際に動かしてみる~

◆原因

(59)

ラズパイで始める電子工作~実際に動かしてみる~

◆ということで買ってしまったフルカラーLED(ここからは番外 編) 1つのLEDで3原色を発光する 色を混ぜることでフルカラーを 表現可能 一個50円程度

(60)

ラズパイで始める電子工作~実際に動かしてみる~

◆ということで買ってしまったフルカラーLED(ここからは番外編) 左1:緑の出力 左2:青の出力 右2:-極(カソード) 右1:赤の出力

(61)

ラズパイで始める電子工作~クリスマス電飾プログラム~

(62)

ラズパイで始める電子工作~クリスマス電飾プログラム~

◆電飾用サンプルプログラム(demo4.py)一部抜粋 # パターン1のGPIO番号 red_pin1 = 5 green_pin1 = 6 blue_pin1 = 12 # パターン2のGPIO番号 red_pin2 = 13 green_pin2 = 19 blue_pin2 = 26 # パターン2のGPIO番号 red_pin3 = 16 green_pin3 = 20 blue_pin3 = 21 # 出力指定 GPIO.setmode(GPIO.BCM) GPIO.setup(red_pin1, GPIO.OUT) GPIO.setup(green_pin1, GPIO.OUT) GPIO.setup(blue_pin1, GPIO.OUT) GPIO.setup(red_pin2, GPIO.OUT) GPIO.setup(green_pin2, GPIO.OUT) GPIO.setup(blue_pin2, GPIO.OUT) GPIO.setup(red_pin3, GPIO.OUT) GPIO.setup(green_pin3, GPIO.OUT) GPIO.setup(blue_pin3, GPIO.OUT)

(63)

ラズパイで始める電子工作~クリスマス電飾プログラム~

◆電飾用サンプルプログラム(demo4.py)一部抜粋 # PWMの指定 red1 = GPIO.PWM(red_pin1, 50) #・・・① green1 = GPIO.PWM(green_pin1, 50) blue1 = GPIO.PWM(blue_pin1, 50) red2 = GPIO.PWM(red_pin2, 50) green2 = GPIO.PWM(green_pin2, 50) blue2 = GPIO.PWM(blue_pin2, 50) red3 = GPIO.PWM(red_pin3, 50) green3 = GPIO.PWM(green_pin3, 50) blue3 = GPIO.PWM(blue_pin3, 50) ①パルス幅変調の処理

(Pulse Width Modulated)

引数2でデューティ比を指定する 電気のオンとオフの時間の割合を半分に指定 ※疑似アナログ制御 ラズパイのGPIOはデジタル出力のため 値は0と1(ON/OFF)のどちらか 1周期の中でONにしている時間とOFFにしている 時間の比率(デューティ比)を使うことで 0~100%の値を扱うことができるようになる ⇒色相・明暗の調整が可能

(64)

ラズパイで始める電子工作~クリスマス電飾プログラム~

◆電飾用サンプルプログラム(demo4.py)一部抜粋 # 初期の色調設定 red1.start(100) #・・・② green1.start(0) blue1.start(0) red2.start(0) green2.start(100) blue2.start(0) red3.start(0) green3.start(100) blue3.start(0) sleep(T) ②初期の色設定 パターン1:赤 パターン2:緑 パターン3:青

(65)

ラズパイで始める電子工作~クリスマス電飾プログラム~

◆電飾用サンプルプログラム(demo4.py)一部抜粋 try:

while True:

# 1:緑 2:青 3:紫 #・・・③

change_Led_Color(red1, green1, blue1, 0, 100, 0)

change_Led_Color(red2, green2, blue2, 0, 0, 100) change_Led_Color(red3, green3, blue3, 50, 0, 50) sleep(T) ③初期の色設定から変化させる パターン1:赤→緑 パターン2:緑→青 パターン3:青→紫 ④ChangeDutyCycleで デューティ比を変更 # 色調変化

change_Led_Color(red, green, blue, v1, v2, v3): red.ChangeDutyCycle(v1) #・・・④

green.ChangeDutyCycle(v2) blue.ChangeDutyCycle(v3)

(66)

ラズパイで始める電子工作~クリスマス電飾プログラム~

◆RGBを指定して作れる色(ざっくり)

備考:

RGB指定をするとこのような結果 が得られる(はず)

(67)

ラズパイで始める電子工作~実際に動かしてみる~

(68)

ラズパイで始める電子工作~実際に動かしてみる~

◆所感 想像したよりもしょぼい出来の良いものになった! Pythonの勉強も電子工作も楽しかった!(小並感) いろいろ買い揃えるとお金がかかる&こだわりすぎると終わらな い 人感センサーの認識がやや甘い?(設定はいろいろできるみた い) Kinectみたいに骨格認識やカメラからフェイストラッキング したほうが認識精度高そうで良いかも あんまりPythonが有効活用できていない

(69)
(70)

まとめ・今後の展望

◆まとめ 小型で安価なマイコン、ラズパイはアイディア次第で 様々な電子工作が楽しめる 初心者向けにキットが発売されていたり、ネットの海には サンプルソースがごろごろ転がっているので敷居は低い ボーナスも出るし、冬期休暇にラズパイの電子工作にチャレンジ してみませんか?

(71)

まとめ・今後の展望

◆今後の展望(挑戦してみたいこと) 来年のクリスマスも機会があれば再チャレンジしたい (音声出力とか、フルカラーLEDテープとか。。。) せっかくPythonの勉強を始めたので、今度は機械学習について 理解を深めたい また発表する機会があれば、音声認識・音声出力、表情認識に関 する成果物を発表したい!

(72)
(73)

引用・参考資料

Raspberry Pi 公式サイト https://www.raspberrypi.org/ Python 公式サイト www.python.jp/ Raspberry Pi - Wikipedia https://ja.wikipedia.org/wiki/Raspberry_Pi Python - Wikipedia https://ja.wikipedia.org/wiki/Python IT女子のラズベリーパイ入門奮闘記 http://deviceplus.jp/category/hobby/raspberrypi/

(74)

引用・参考資料

悪魔のロボットも作れる?ロボット制御ができる「ラズベリーパイ」とは【導入編】 https://liginc.co.jp/217398

第20回 LEDに接続する抵抗値を計算する

第26回 Raspberry PiのGPIOを制御する (Python編) https://tool-lab.com/make/raspberrypi-startup-20/ https://tool-lab.com/make/raspberrypi-startup-26/

Raspberry Piに焦電型赤外線(人感)センサーを接続してみた (Python) http://qiita.com/aryoa/items/72c40f241f868e25eb71

Raspberry Pi × Wiring Pi でクリスマスツリーを作ってみた【準備編】 (c言語) https://amg-solution.jp/blog/4557

小型PC「ラズベリー・パイ」で自作した神作品10選の猛者たちが天才過ぎる! http://plus.appgiga.jp/masatolan/2014/05/01/52120/

(75)

参照

関連したドキュメント

This study consisted of two phases: the analysis of load-contact area relationship by FEM (Finite Element Method), and that of contact area-resistance relationship

関東総合通信局 東京電機大学 工学部電気電子工学科 電気通信システム 昭和62年3月以降

(図 6)SWR 計による測定 1:1 バランでは、負荷は 50Ω抵抗です。負荷抵抗の電力容量が無い

漏洩電流とB種接地 1)漏洩電流とはなにか

操作は前章と同じです。但し中継子機の ACSH は、親機では無く中継器が送信する電波を受信します。本機を 前章①の操作で

詳しくは、「5-11.. (1)POWER(電源)LED 緑点灯 :電源ON 消灯 :電源OFF..

フロートの中に電極 と水銀が納められてい る。通常時(上記イメー ジ図の上側のように垂 直に近い状態)では、水

接続対象計画差対応補給電力量は,30分ごとの接続対象電力量がその 30分における接続対象計画電力量を上回る場合に,30分ごとに,次の式