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 #EjectKaigi2014
皆さん興味ありげなので説明します
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ド
ライブの(☝ ՞ਊ ՞)☝ウイーンという視覚的な情報に
よって気づくようになります。
Eject探検隊@北陸1(Kernel/VM探検隊@北陸1)
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()
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としての工作は
完成します。
先の応用編はまさにそのモデルとも言えるでしょう
わけがわからないよ
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://pypi.python.org/pypi/RPi.GPIO より引用
GPIO: General Purpose Input/Output(汎用入出力)
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
};
←←コレが謎
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が
与えられている
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
};
ピン番号の割当
/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
/sys/class/gpio/gpio番号/value に0or1が格納されている
http://pi.gadgetoid.com/pinout

More Related Content

PDF
Eject探検隊@北陸1
PDF
oh-my-zshを使うのは止めよう
PDF
宇宙zsh #2
PDF
本格的に始めるzsh
PDF
PDF
原典にあたったら英語も勉強できた話 〜 Git編 〜
PPTX
第23回東京ブロガーミートアップ「動画について」
PDF
pecoを使おう
Eject探検隊@北陸1
oh-my-zshを使うのは止めよう
宇宙zsh #2
本格的に始めるzsh
原典にあたったら英語も勉強できた話 〜 Git編 〜
第23回東京ブロガーミートアップ「動画について」
pecoを使おう

More from ahiru3 (8)

PDF
OSC京都 東海道らぐLT iOSのIn-Houseアプリの配布まで(概要)
PDF
What is ahiruyaki?
PDF
2015年OSC名古屋東海道らぐLT
PDF
OSC Tokyo/Fall LT
PDF
OSC京都 東海道らぐLT資料
PDF
ejectLT @ NT金沢
PPTX
OSC Nagoya 2014 東海道らぐ 夏の陣
PPTX
OSC nagoya 2014 LT
OSC京都 東海道らぐLT iOSのIn-Houseアプリの配布まで(概要)
What is ahiruyaki?
2015年OSC名古屋東海道らぐLT
OSC Tokyo/Fall LT
OSC京都 東海道らぐLT資料
ejectLT @ NT金沢
OSC Nagoya 2014 東海道らぐ 夏の陣
OSC nagoya 2014 LT
Ad

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