投稿

1月, 2016の投稿を表示しています

[Raspberry Pi] 赤外線を読み取る Detect infrared light

イメージ
青いケーブルで赤外線受信モジュールをRaspberry Piに配線した。 赤外線モジュールを配線する まず、赤外線受信モジュールをRaspberry Piにつなぎます。3本の端子があるはずです。: グラウンド、電源電圧、出力。秋月電子には2種類の赤外線受信モジュールが売っていました。1~2個100円です。電源電圧や、どの端子がどれに対応するかは、データシートを見て確認します。データシートは同封されていたり、webで検索して見つけられます。今回は、PL-IRM1261-C438 (PARA LIGHT)を使います。
LIRCのインストール LIRCをインストールします
sudo apt-get install lirc
ハードウェア設定ファイルの編集 ここではvimを使って編集します。 sudo vim /etc/lirc/hardware
そして, 次のように編集します
# /etc/lirc/hardware.conf # # Arguments which will be used when launching lircd LIRCD_ARGS="--uinput"
#Don't start lircmd even if there seems to be a good config file #START_LIRCMD=false
#Don't start irexec, even if a good config file seems to exist. #START_IREXEC=false
#Try to load appropriate kernel modules LOAD_MODULES=true
# Run "lircd --driver=help" for a list of supported drivers. DRIVER="default" # usually /dev/lirc0 is the correct setting for systems using udev  DEVICE="/dev/lirc0" MODULES="lirc_rpi"
# Default configuration files for y…

[Raspberry Pi] スクリーンショットの撮り方

イメージ
まず、scrotというスクリーンショットを撮るソフトを入れる。他にもソフトはあるが、これが一番手軽で扱いやすいと判断した。
sudo apt-get install scrot
人によっては、既にscrotの最新版がインストールされていることもある。
ターミナルでscrotを打つと、/etc/homeに画面全体のスクリーンショットが保存される。 また、scrot -sとすると、次にクリックしたウィンドウのスクリーンショットが保存される。ターミナルのスクリーンショットを撮るときは、もう一つターミナルを起動すればよい。
参考 Raspberry Pi(ラズベリーパイ)でスクリーンショットを撮影する | okuzawatsのブログ

[Raspberry Pi] LED点滅させる (Pythonによるハード制御)

イメージ
2016年1月15日
Raspberry Pi Type B1kΩ抵抗赤色LEDブレッドボード
を使用します。 前回記事 ([Raspberry Pi] LEDを点灯させる | 素粒子物理研究所にいる渡邊のブログ) の続きです。 まず、次のソースコードを/home/piに作ります。他の人を調べると, python以外にもCで書いている人もいますね。


blink.py


import RPi.GPIO as GPIO import time LEDPIN = 24 GPIO.setwarnings(False) # Surppress warnings GPIO.setmode(GPIO.BCM) GPIO.setup(LEDPIN, GPIO.OUT) while True: GPIO.output(LEDPIN, True) time.sleep(1) GPIO.output LEDPIN, False) time.sleep(1)

そして、

sudo python3 blink.py

として実行します。すると、GPIO 24 (18番ピン) が2秒周期で Low と High を繰り返すのを観測できます。

Pythonでハードを簡単に制御できるなんてすばらしい。

参考
LEDを点滅させる(RPi.GPIO 利用)

[Raspberry Pi] LEDを点灯させる

イメージ
2016年1月14日
電源は3.3Vのピンもしくは5Vのピン、抵抗は500ΩにしてLEDと直列につなぐ。それだけ。
Raspberry Pi Type B 3982円 SDカード(Transcend 8G) 639円 HDMIケーブル 660円 赤色LED 20個 100円 抵抗(炭素皮膜)1KΩ 100個 200円 ジャンパーコード(オス・メス) 10本 220円
合計 5801円


http://www.bytecreation.com/blog/2013/10/13/raspberry-pi-ultrasonic-sensor-hc-sr04

つなぐだけでLEDが点く。何もソースコードを必要はない。各ピンについては上記画像を参考にした。

ブレッドボードにつないだ。LEDやブレッドボードは秋葉原の秋月電子まで自転車を走らせて。最初、どうやってRaspberry Piのピンをつなぐのかもわからなかったけど、調べながらやってみたら、できるものだ。

[Raspberry Pi] Raspberry Pi買った

イメージ
2016年1月7日
楽天でRaspberry Piを買い、届きました。ハードディスク代わりの8GB SDカードも買った。SDカード、キーボードやディスプレイがないと、何もできないので、あわせて揃える必要がある。キーボードやディスプレイは大学にあったものを借りることにした。航空写真や家電操作などやりたいことがあり、楽しみ。




Raspberry Pi Type B 3982円 SDカード(Transcend 8G) 639円 HDMIケーブル 660円 ディスプレイ 0円 キーボード 0円

購入したらすることを下に書きました。

OSインストール
まず、フォーマットされたSDカードにOSをインストールします。Debian系のraspbianです。
https://www.raspberrypi.org/downloads/noobs/
からNOOBSのzipファイルをダウンロードします。1GBほどあります。解凍したら、ファイルやフォルダをまるごとSDカードにうつします。SDカード直下にコピーしてください。そうしないと、あとでインストールが始まりません。SDカードをraspbianにセットし、microUSBを電源につなぐと、自動的にraspbianのインストールが始まります。


日本語を表示
日本語を表示できるようにフォントを入れる。

apt-get install ttf-kochi-gothic xfonts-intl-japanese xfonts-intl-japanese-big xfonts-kaname


キーボードレイアウトを変更
日本語キーボードのレイアウトに対応させる

sudo raspi-config

から上下キーとエンターで

4 Internationalisation Options

を選び

I3 Change Keyboard Layout

Generic 105-Key(Intel)

Japanes

といった調子でキーボードのレイアウトを日本語に設定できる。

書評: 安富歩(2011)『生きる技法』青灯社

筆者は東大教授。ブックオフで見つからず、東大の図書館で見つけた。読みやすい文体で書かれている。180ページしかなく、すぐ読めてしまう。1日1冊生活を続けて11日目の本だ。

「自立とは依存することだ」
これは発見だった。これまで、仕事の能力を上げ、経済的に自由になり、誰にも頼らずに済むことが自立だと思っていた。つまり、「お金=自由」だと思っていた。しかし、どこかに違和感も感じていた。その違和感は正しかった。本書は、人は誰かに依存しなければ生きられず、より多くの人に依存できるようになることが自立だと言う。誰かに頼らないと生きていけないことに罪悪感を覚える必要はない。もし、本当に一人で生きていくなら、森で生活したソローのように生きるのだろう。

他にも、本書に挙げられた命題のいくつかを下記に述べる。文字にすると当たり前だと感じるかもしれないが、これを実感するには難しい。この中には、私が20年近くかけてようやく到達したものもあるし、新たな視野を広げてくれるものもあった。

誰とでも仲良くしてはいけない自由とは選択の自由のことではない自由とは思い通りの方向に成長することだ自分を嫌っている限り、本当の友だちはできない自立は、金では買えない自己権をは、他人(親や教師など)に押し付けられたものである自己嫌悪を抱いている限り、失敗が約束されている「俺は悪くないんだ」と自分に言い聞かせて、自己嫌悪を抑えるのは逆効果である夢を実現することそのものには、何の意味もない幸福とは、手に入れるものではなく、感じるものである成長とは、生きる力の増大である成長は、願うことで実現される 大学に入るころ、全く新しい環境に飛び込むことになった僕は、自分の友だちを増やしていくことにした。まわりには、何を考えているのかわからない秀才がたくさんいたからだ。四年経ってわかったことは、数には何の価値もないということだった。むしろ、数を増やそうとするあまり、大事にすべき友人に費やす時間や労力をどうでもいい人間に割くことは問題だった。これには、人に嫌われることを恐れていたことも一因である。どうでもいい人間に嫌われることは何も怖くないのだ。
本書は、自己嫌悪についての命題から察せられる通り、幼少期の親との関係に問題を抱えていた人にも読んで欲しい。幼少期こそ、世界にどのような態度で挑むかが決定されるからだ。 自分の本当の感覚を失…

今日は論文締切日でした

1月5日
修士論文が書き終わっていないので、審査員に待ってもらうよう連絡しました。他のみんなもそうでした。毎年の恒例のようです。締め切りは形式的なものに過ぎないらしい。

研究のキャリアを上がれば上がるほど、一人前の研究者というのが程遠いものだと知ります。大学に入るときは、学士をとればその学問を修めたことになるのだと思っていました。ところで、修めるとはどの程度のことなのでしょう。学士をとるとき、
  「あれ、学士とっても一人で研究できるわけじゃないんだ。ほとんど助教に言われたことをするばかりだった」
と思ったのが懐かしいです。大学院は勉強ではなく研究をする場所なので、修士をとれば一人前に研究ができるのかと考えました。しかし、今は
  「あれ、修士をとっても一人で研究できるわけじゃないんだ。研究は何とかまわりに質問して助けを求めながら、あまり面倒をみてもらったわけではないが、形になった。」
という感想です。一人で先輩方のように研究できるかは怪しいです。教授にいたっては、「修士論文なんてな、研究内容なんて見てないわ。修士でできることなんて、たかが知れてるんだわ。せめて論文の体裁だけは守っておけな。」という始末です。研究者の道は果てしない。

本記事が学士や修士で何を得ようか考えている後輩の一助となりますよう。

ヤフオクの検索一覧をまとめてウォッチリストに入れるChrome拡張機能

イメージ
検索結果一覧を表示しているとき、そのページの出品をまとめてウォッチリストに入れるGoogle Chrome拡張機能である。ファイルはbackground.jsとmanifest.jsonの2つのみ。

manifest.json


{ "name": "Add Watch List", "description": "Add items to watch list", "version": "2.0", "permissions": ["activeTab"], "background": { "scripts": ["background.js"], "persistent": false }, "browser_action": { "default_title": "Add Watch List" }, "manifest_version": 2 }


background.js

// Called when the user clicks on the browser action. chrome.browserAction.onClicked.addListener(function(tab) { // No tabs or host permissions needed! console.log('Adding items to a watch list in '+ tab.url); // pop up page information//alert(tab.title);var url = tab.url; var xmlHttp =new XMLHttpRequest(); xmlHttp.open("GET", url, false); xmlHttp.onload =function (e) { …

一日一冊生活を続けて一週間経った

当初は三日坊主で終わるかと思ったので、まずは三日間を目標にした。まず三日間はクリアした。そこで、目標を延長して一週間にしてみた。すると、一週間もクリアした。今ではもはや一日一冊が習慣となった。朝起きると、日々のスキマ時間のどこに読書を入れるかを自然と考えている。この調子で、他のノルマも習慣化していき、自分に対する負荷をちょっとずつあげていくつもりだ。

現在はまだ、読みやすい本しか読んでいないが、読解時の理解力やスピードをあげていき、質も量も重い本、たとえばダグラス・ホフスタッター(1979)『ゲーデル、エッシャー、バッハ』のような本も一日で読めるようになりたい。

この取組には、パレートの法則を時間の効率に適用する人がいることを参考にしている。即ち、時間をかけて完璧を目指すのではなく、荒っぽく20%の労力で80%の課題達成ができれば十分だと考えている。