仕事を楽しくするには
仕事がつまらないと感じる要因は何か
- うまくいかない
- 非効率なやり方を繰り返している
- 成長が感じられない。
- 褒められることもない。欠陥を指摘されるのみ
他人を変えることはできない。せめて自分にできることは、新しいやり方を試して、少しずつよくしていくことかな。
- 無駄と思われるものはやらなくていいように調整する
- それでもやらないといけないことはアプリを作るなどで、学びながら職場改善する
Wakayama.rbボードとLitaで温度をつぶやくchatボット(Shinosaka.rb #10にて)
Shinosaka.rb #10に参加しました。初参加です。 http://shinosakarb.doorkeeper.jp/events/17081p
テーマはLitaということで、 Wakayama.rbボードを使って温度センサ(TMP102)と連携するchatボットをやってみました。ソースコードはもちろんAll Ruby。
Litaとは、Rubyで書かれたchatボット、hubotのRuby版といったところでしょうか。 (といってもhubotについてもよくわかってないのですが)
使用した部品は以下のとおり。
- Wakayama.rbボード
- 温度センサ TMP102
Rubyのコードは以下です。
- RaspberryPiで動作させるLitaのコード https://github.com/tanaka-yoshi10/lita-sample
- Wakayama.rbボードで動作させるmrubyのコード https://github.com/tanaka-yoshi10/wrbb/blob/master/lita/wrbb.rb
とりあえず最低限動くようになりました。
- "temp"と発言があると、温度をつぶやく
- "light on"と発言があると、LEDを点灯
- "light off"と発言があると、LEDを消灯
Wakayama.rbボード(mrubyボード)でBLE通信 その2
mrubyを搭載したwakayama.rbボードで温度センサから値を取得して、 iPhoneに表示させる件の続編です。
mrubyボードで温度センサの値を取得してBLE通信->iPhoneに表示
iPhoneに表示される値が正しくなかった点を解決できました。 結論としてはmrubyからBLESerialへ送信する際のボーレートが間違えていたからでした。
mrubyのコードはこちら
iPhone側のプログラムがおかしいのかなーと宿泊先のホテルで夜な夜な格闘してましたが、一旦頭リセットしてから考えなおそうと寝ることにしました。 そして、朝mrubyのソースコードを見直すと、すぐに判明しました。 やっばり行き詰まった時は寝るに限るなぁと実感。
職場用の静電気対策サンダル
クロックスワットベントを職場用に買ってみました。
体にたまった静電気を分散し、計器類などに影響を与えたり、不快を感じにくいレベルに微弱化。
とのことです。
普通のサンダルだと結構静電気が発生してたので、別の静電気対策サンダルを使ってたのですが、そろそろ替えようと思っていたところ、これを見つけたので試してみようと買ってみました。
今日1日履いてみて、静電気も発生せず快適に過ごせました。
MacのJDKをunisntallする
MacのJDKをunisntallする方法です。 ここに書いてありました。
http://docs.oracle.com/javase/7/docs/webnotes/install/mac/mac-jdk.html
私の環境では以下を実行しました。
cd /Library/Java/JavaVirtualMachines sudo rm -rf jdk1.8.0_25.jdk/
iPad2とiPad miniが依然多くのシェアを占めている?
mrubyボードで温度センサの値を取得してBLE通信->iPhoneに表示
mrubyボードで温度センサ(TMP102)の値を取得してBLE通信させてみました。 通信相手はiPhone5Sです。
mrubyボード (Wakayama.rbボード) http://www.slideshare.net/MinaoYamamoto/wakayamarb-board
iPhoneに表示される値はまだ正しくないのですが、 温度センサに息をかけるなど温度を変化させると 値が変わったりします
同時にMacでもUSB経由で受信させています。
mrubyのソースコードはこんな感じです。
@APTemp = 0x49 Serial.begin(0, 115200) Serial.begin(1, 115200) I2c.sdascl(17,16) delay(300) 10.times do l = I2c.request(@APTemp, 2) s1 = I2c.lread() s2 = I2c.lread() temp_h, temp_l = s1, s2 temp = ((temp_h << 4) + (temp_l >> 4)) * 0.0625 t = temp.round(1).to_s Serial.println(0, t) Serial.println(1, t) delay(1000) end Sys.fileload()