Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
kernel/VM探検隊@北陸 1
2014/07/12
今日は( ゜Д゜)ポカーンとなりに来ました
( ゜Д゜)ポカーンとなったところで
(☝ ՞ਊ ՞)☝ウイーンの時間だ!!!!!
こ時ウ
ら間イ
ぁだ|
!!ン
の
空へ羽ばたけるくらい高レイヤーなお話をします!!
|\ ___ / ̄/
| \ _ / ´՞ ՞`\ / /
| | し | /
\__( ਊ }_/
\_____/
|| //
m m
空に羽ばたけ俺のLT
☝
՞
_人人人人人人_
> ( ) < ☞
 ̄Y^Y^YY^Y^Y ̄
՞
ਊ
自己紹介
名前: あひる
職業: 名古屋工業大学学部3年
出没: Twitter(@ahiru3net)
HP: www.ahiru3.net
所属: C0de-mattari
Ejectコマンドユーザー会
(☝ ՞ਊ ՞)☝ウイーン
7/4~7/5に開催されたOSC名古屋にて暴れてきました
この勢いでKernel/VM探検隊を
ejectコマンド探検隊にしてしまおう!!
ということでやって参りました人生初の北陸
人生初北陸以外は
半分くらい嘘かもしれないのでご安心ください
Eject探検隊@北陸 1
2014/07/12
Twitter #EjectKaigi2014
ejectIRを作りました
作った経緯等はブログにあるので
興味のある方はどうぞ
Twitter #EjectKaigi2014
って書いて別のネタやろうと思ったんですが、
自分の理解力、知識力の問題で
予定してたネタがことごとく潰えた…
Twitter #EjectKaigi2014
気を取り直して
ejectIR
( ՞ਊ ՞)
=͟͟͟͟͞͞͞͞(☞ ՞ਊ ՞=͟͟͟͟͞͞͞͞☞☜=͟͟͟͟͞͞͞͞( ՞ਊ ՞☜=͟͟͟͟͞͞͞͞)
ヽ( ՞ਊ ՞)ノ三ヽ( ՞ਊ ՞)ノ
( ˘ਊ˘)
(☝ ՞ਊ ՞)☝
Twitter...
皆さん興味ありげなので説明します
Twitter #EjectKaigi2014
ejectIRとは
赤外線通過回路の送信部と受信部が
このように信号を送受信しています
=͟͟͟͟͞͞͞͞(☞ ՞ਊ ՞=͟͟͟͟͞͞͞͞☞☜=͟͟͟͟͞͞͞͞( ՞ਊ ՞☜=͟͟͟͟͞͞͞͞)めっちゃ信号
送信してるうぅぅぅ
めっちゃ受信
し...
ejectIRとは
その間に何かが置かれたり通過すると…
=͟͟͟͟͞͞͞͞(☞ ՞ਊ ՞=͟͟͟͟͞͞͞͞☞ (☝ ՞ਊ ՞)☝めっちゃ信号
送信してるうぅぅぅ
あり?
信号…
きてなくね?指痛い…
ejectIRとは
受光できない受信側でリレースイッチが入り、
Raspberry Piに信号を送る
ਊ ՞=͟͟͟͟͞͞͞͞☞ ( ՞ਊ ՞)☞ 受光できないよ!
らずぴっぴさん!! → RaspberryPi
raspi( ՞ਊ ՞).。o...
ejectIRとは
CD-ROMドライブが(☝ ՞ਊ ՞)☝ウイーンする
(☝ ՞ਊ ՞)☝ウイーン (☝ ՞ਊ ՞)☝ウイーン
raspi( ՞ਊ ՞).。o((☝ ՞ਊ ՞)☝ウイーン)
(☝ ՞ਊ ՞)☝ウイーン
仕組み
なぜ作ろうと思ったか
母親が入室
↘
イヤホンしてて気づかない
↙
母親が後ろに忍び寄る
↘
気づかない
↙
_人人人人人人人_
> 気づかない <
 ̄^Y^Y^Y^Y^Y^ ̄
ejectIRがあれば…
母親が入室
↘
イヤホンしてて気づかない
↙
赤外線回路が反応
↘
CD-ROMドライブが(☝ ՞ਊ ՞)☝ウイーン
↙
_人人人人人_
> 気づく <
 ̄^Y^Y^Y^ ̄
完璧だ…
いままで音で気づかなかったものを、CD-ROMド
ライブの(☝ ՞ਊ ՞)☝ウイーンという視覚的な情報に
よって気づくようになります。
ejectIRのソースはこんな感じ
import RPi.GPIO as GPIO
import os
import time
GPIO.setmode(GPIO.BCM)
GPIO.setup(4, GPIO.IN)
while 1:
if ...
http://elinux.org/RPi_Low-level_peripherals より引用
GPIOの配置
プルダウン抵抗
USB
PCへ
シリアル通信
赤外線
遮断回路
SY-852
活用例
先の例のように人が入る→(☝ ՞ਊ ՞)☝ウイーン→気づく
先の例のように人が入る→(☝ ՞ਊ ՞)☝ウイーン→入室者驚く
ポストの内側に設置→投函される→(☝ ՞ਊ ՞)☝ウイーン
応用編
実はOSC名古屋以前にこんなものを作ってました
ejectコマンドで物理ipmitool
IPMIってなんぞ?
Intelligent Platform Management Interface
IPMIに対応したサーバは、OSやアプリケーションソフトなどを
http://e-words.jp/w/IPMI.html より抜粋
メインマシンを外出中につけたい
常時付けてると電気代がもったいない
あれれ〜?
サーバー →
← メインマシン
どこの家でも
転がってるで
あろう中古の
(eject用の)CD-
ROMドライブ
→
やることはただ一つ
(☝ ՞ਊ ՞)☝ウイーン
ここを押すのじゃ
応用編
玄関にejectIRを設置
↓
自室のCD-ROMドライブが(☝ ՞ਊ ՞)☝ウイーン
↓
PCの電源がつく
↓
部屋に到着する頃にはPCがステンバ〜イ
↓
うれしい!!!✌(‘ω’✌ )三✌('ω')✌三( ✌'ω')✌
ここまでの流れでわかるように、今回作ったejectIRは
CR-ROMドライブがejectするためのトリガーとしての
eject工作ということ
ほかの方が制作しているトレイのejectという動作を使っ
た工作とは違います
これらと結びつけること...
わけがわからないよ
ejectIRのソースはGithubに
ejectIRの作り方は後日ブログにて掲載する予定です
ぜひejectIRと何かを組み合わせてドヤッていただきたいです
Github: ejectIR
ブログ: www.ahiru3.net
ejectコマンドユーザー会
サイト翻訳募集中
完
実は未完
(準備時間的に)ておくれたてしまい、
今回発表できなかったておくれたネタたち
まとまってないのでておくれている
RPi.GPIOについて調べてみた
A module to control Raspberry Pi GPIO channels
This package provides a class to control the GPIO on a Raspberry Pi.
https:...
const int pin_to_gpio_rev2[27] =
{
-1,
-1, -1,
2, -1,
3, -1,
4, 14,
-1, 15,
17, 18,
27, -1,
22, 23,
-1, 24,
10, -1,
9, 25,...
const int pin_to_gpio_rev2[27] =
{
-1,
-1, -1,
2, -1,
3, -1,
4, 14,
-1, 15,
17, 18,
27, -1,
22, 23,
-1, 24,
10, -1,
9, 25,...
const int pin_to_gpio_rev2[27] =
{
-1,
-1, -1,
2, -1,
3, -1,
4, 14,
-1, 15,
17, 18,
27, -1,
22, 23,
-1, 24,
10, -1,
9, 25,...
/sys/class/gpio/export に対して使用するピンを宣言する
echo "番号" > /sys/class/gpio/export
4番pinを使う場合:
echo "4" > /sys/class/gpio/export
する...
/sys/class/gpio/gpio番号/value に0or1が格納されている
http://pi.gadgetoid.com/pinout
Eject探検隊@北陸1(Kernel/VM探検隊@北陸1)
Upcoming SlideShare
Loading in …5
×

Eject探検隊@北陸1(Kernel/VM探検隊@北陸1)

507 views

Published on

Eject探検隊@北陸1もといKernel/VM探検隊@北陸1のスライドです。
動画などがうまく再生できない場合はwww.ahiru3.netに多分載ってます。

Published in: Devices & Hardware
  • Login to see the comments

Eject探検隊@北陸1(Kernel/VM探検隊@北陸1)

  1. 1. kernel/VM探検隊@北陸 1 2014/07/12
  2. 2. 今日は( ゜Д゜)ポカーンとなりに来ました
  3. 3. ( ゜Д゜)ポカーンとなったところで
  4. 4. (☝ ՞ਊ ՞)☝ウイーンの時間だ!!!!! こ時ウ ら間イ ぁだ| !!ン の
  5. 5. 空へ羽ばたけるくらい高レイヤーなお話をします!!
  6. 6. |\ ___ / ̄/ | \ _ / ´՞ ՞`\ / / | | し | / \__( ਊ }_/ \_____/ || // m m 空に羽ばたけ俺のLT
  7. 7. ☝ ՞ _人人人人人人_ > ( ) < ☞  ̄Y^Y^YY^Y^Y ̄ ՞ ਊ
  8. 8. 自己紹介 名前: あひる 職業: 名古屋工業大学学部3年 出没: Twitter(@ahiru3net) HP: www.ahiru3.net 所属: C0de-mattari Ejectコマンドユーザー会
  9. 9. (☝ ՞ਊ ՞)☝ウイーン
  10. 10. 7/4~7/5に開催されたOSC名古屋にて暴れてきました
  11. 11. この勢いでKernel/VM探検隊を
  12. 12. ejectコマンド探検隊にしてしまおう!! ということでやって参りました人生初の北陸
  13. 13. 人生初北陸以外は 半分くらい嘘かもしれないのでご安心ください
  14. 14. Eject探検隊@北陸 1 2014/07/12 Twitter #EjectKaigi2014
  15. 15. ejectIRを作りました 作った経緯等はブログにあるので 興味のある方はどうぞ Twitter #EjectKaigi2014
  16. 16. って書いて別のネタやろうと思ったんですが、 自分の理解力、知識力の問題で 予定してたネタがことごとく潰えた… Twitter #EjectKaigi2014
  17. 17. 気を取り直して ejectIR ( ՞ਊ ՞) =͟͟͟͟͞͞͞͞(☞ ՞ਊ ՞=͟͟͟͟͞͞͞͞☞☜=͟͟͟͟͞͞͞͞( ՞ਊ ՞☜=͟͟͟͟͞͞͞͞) ヽ( ՞ਊ ՞)ノ三ヽ( ՞ਊ ՞)ノ ( ˘ਊ˘) (☝ ՞ਊ ՞)☝ Twitter #EjectKaigi2014
  18. 18. 皆さん興味ありげなので説明します Twitter #EjectKaigi2014
  19. 19. ejectIRとは 赤外線通過回路の送信部と受信部が このように信号を送受信しています =͟͟͟͟͞͞͞͞(☞ ՞ਊ ՞=͟͟͟͟͞͞͞͞☞☜=͟͟͟͟͞͞͞͞( ՞ਊ ՞☜=͟͟͟͟͞͞͞͞)めっちゃ信号 送信してるうぅぅぅ めっちゃ受信 してるうぅぅぅ
  20. 20. ejectIRとは その間に何かが置かれたり通過すると… =͟͟͟͟͞͞͞͞(☞ ՞ਊ ՞=͟͟͟͟͞͞͞͞☞ (☝ ՞ਊ ՞)☝めっちゃ信号 送信してるうぅぅぅ あり? 信号… きてなくね?指痛い…
  21. 21. ejectIRとは 受光できない受信側でリレースイッチが入り、 Raspberry Piに信号を送る ਊ ՞=͟͟͟͟͞͞͞͞☞ ( ՞ਊ ՞)☞ 受光できないよ! らずぴっぴさん!! → RaspberryPi raspi( ՞ਊ ՞).。o ( ) おおお
  22. 22. ejectIRとは CD-ROMドライブが(☝ ՞ਊ ՞)☝ウイーンする (☝ ՞ਊ ՞)☝ウイーン (☝ ՞ਊ ՞)☝ウイーン raspi( ՞ਊ ՞).。o((☝ ՞ਊ ՞)☝ウイーン)
  23. 23. (☝ ՞ਊ ՞)☝ウイーン 仕組み
  24. 24. なぜ作ろうと思ったか
  25. 25. 母親が入室 ↘ イヤホンしてて気づかない ↙ 母親が後ろに忍び寄る ↘ 気づかない ↙ _人人人人人人人_ > 気づかない <  ̄^Y^Y^Y^Y^Y^ ̄
  26. 26. ejectIRがあれば…
  27. 27. 母親が入室 ↘ イヤホンしてて気づかない ↙ 赤外線回路が反応 ↘ CD-ROMドライブが(☝ ՞ਊ ՞)☝ウイーン ↙ _人人人人人_ > 気づく <  ̄^Y^Y^Y^ ̄
  28. 28. 完璧だ…
  29. 29. いままで音で気づかなかったものを、CD-ROMド ライブの(☝ ՞ਊ ՞)☝ウイーンという視覚的な情報に よって気づくようになります。
  30. 30. ejectIRのソースはこんな感じ import RPi.GPIO as GPIO import os import time GPIO.setmode(GPIO.BCM) GPIO.setup(4, GPIO.IN) while 1: if GPIO.input(4): os.system("eject") print "Welcome to my room!!" time.sleep(1) os.system("eject -t") continue else: print "no input" GPIO.cleanup()
  31. 31. http://elinux.org/RPi_Low-level_peripherals より引用 GPIOの配置 プルダウン抵抗 USB PCへ シリアル通信 赤外線 遮断回路 SY-852
  32. 32. 活用例 先の例のように人が入る→(☝ ՞ਊ ՞)☝ウイーン→気づく 先の例のように人が入る→(☝ ՞ਊ ՞)☝ウイーン→入室者驚く ポストの内側に設置→投函される→(☝ ՞ਊ ՞)☝ウイーン
  33. 33. 応用編 実はOSC名古屋以前にこんなものを作ってました
  34. 34. ejectコマンドで物理ipmitool
  35. 35. IPMIってなんぞ?
  36. 36. Intelligent Platform Management Interface IPMIに対応したサーバは、OSやアプリケーションソフトなどを http://e-words.jp/w/IPMI.html より抜粋
  37. 37. メインマシンを外出中につけたい 常時付けてると電気代がもったいない
  38. 38. あれれ〜?
  39. 39. サーバー → ← メインマシン どこの家でも 転がってるで あろう中古の (eject用の)CD- ROMドライブ →
  40. 40. やることはただ一つ (☝ ՞ਊ ՞)☝ウイーン
  41. 41. ここを押すのじゃ
  42. 42. 応用編 玄関にejectIRを設置 ↓ 自室のCD-ROMドライブが(☝ ՞ਊ ՞)☝ウイーン ↓ PCの電源がつく ↓ 部屋に到着する頃にはPCがステンバ〜イ ↓ うれしい!!!✌(‘ω’✌ )三✌('ω')✌三( ✌'ω')✌
  43. 43. ここまでの流れでわかるように、今回作ったejectIRは CR-ROMドライブがejectするためのトリガーとしての eject工作ということ ほかの方が制作しているトレイのejectという動作を使っ た工作とは違います これらと結びつけることで初めてejectIRとしての工作は 完成します。 先の応用編はまさにそのモデルとも言えるでしょう
  44. 44. わけがわからないよ
  45. 45. ejectIRのソースはGithubに ejectIRの作り方は後日ブログにて掲載する予定です ぜひejectIRと何かを組み合わせてドヤッていただきたいです Github: ejectIR ブログ: www.ahiru3.net
  46. 46. ejectコマンドユーザー会 サイト翻訳募集中
  47. 47.
  48. 48. 実は未完 (準備時間的に)ておくれたてしまい、 今回発表できなかったておくれたネタたち まとまってないのでておくれている
  49. 49. RPi.GPIOについて調べてみた
  50. 50. A module to control Raspberry Pi GPIO channels This package provides a class to control the GPIO on a Raspberry Pi. https://pypi.python.org/pypi/RPi.GPIO より引用 GPIO: General Purpose Input/Output(汎用入出力)
  51. 51. const int pin_to_gpio_rev2[27] = { -1, -1, -1, 2, -1, 3, -1, 4, 14, -1, 15, 17, 18, 27, -1, 22, 23, -1, 24, 10, -1, 9, 25, 11, 8, -1, 7 }; ←←コレが謎
  52. 52. const int pin_to_gpio_rev2[27] = { -1, -1, -1, 2, -1, 3, -1, 4, 14, -1, 15, 17, 18, 27, -1, 22, 23, -1, 24, 10, -1, 9, 25, 11, 8, -1, 7 }; 電源系統は-1が 与えられている
  53. 53. const int pin_to_gpio_rev2[27] = { -1, -1, -1, 2, -1, 3, -1, 4, 14, -1, 15, 17, 18, 27, -1, 22, 23, -1, 24, 10, -1, 9, 25, 11, 8, -1, 7 }; ピン番号の割当
  54. 54. /sys/class/gpio/export に対して使用するピンを宣言する echo "番号" > /sys/class/gpio/export 4番pinを使う場合: echo "4" > /sys/class/gpio/export すると番号に対応したディレクトリが生成されます /sys/class/gpio/gpio番号 例: /sys/class/gpio/gpio4 /sys/class/gpio/gpio番号/direction にinputかoutputか宣言 例: echo "out" > /sys/class/gpio/gpio4/direction
  55. 55. /sys/class/gpio/gpio番号/value に0or1が格納されている
  56. 56. http://pi.gadgetoid.com/pinout

×