sabo laboratory

備忘録的な技術系ブログです。組み込み、ガジェットなどなどについて書いていきます。

【T2エアマウス】空中マウス+TV画面出力で超快適な件。【1600円】

TVへPC画面出力と画面操作

ゲームや動画を見るときには、モニターより大画面のTVに出力して楽しみたい時がある。 大抵の場合、PCとTVは離れて設置されているので、PC操作のためにマウスやキーボードをTVの前(ソファー前やベッドの上)にいちいち移動させなければいけなかった。

ただ、マウスではリラックスした体制での操作はなかなか指南で、ソファーやベッド、膝の上ではなかなかうまく動かない・・・

空中マウス

そこで購入したのが空中マウスだ。

T2エアマウス

Amazaonで1600円で購入。とりあえず空中ポインティングマウスを試すつもりで購入したが、思いの外便利だった。

T2エアマウス 空中で使えるワイヤレスマウス 2.4GHz Fly Air Mouse

T2エアマウス 空中で使えるワイヤレスマウス 2.4GHz Fly Air Mouse

使い心地

大きさはiPhone5より少し大きい。手のひらにはすっぽり収まって、非常に軽い。

このマウスは内部の加速度センサで動作するタイプだ。 なので、Wiiのように画面に向けて、向けた先が正確にポインティングされるものではない。

だが、これがこのマウスの使いやすい理由でもある。

つまり、

画面にマウスを向けなくてもポインタを動かすことができるので、コツさえ掴めばどんな体制でも操作ができる。

しかも、マウスのロール方向の回転(長手方向の軸中心の回転)は操作に無関係で、どの方向に回転させたままでも、上下左右の動きを読み取ってくれる。(表現が難しい・・・)

つまり、だらだらブラウジングに最適!

使い方

f:id:sabo_321:20150412204239p:plain

ショートカット割り当てには対応していないが、マウスとして最低限の操作が可能だ。

右クリックも可能なので、ブラウジンングの際にはマウスジェスチャ操作も可能だ。

注意点

日本の商品ではないので、日本語のマニュアルは無い。しかも、箱にセットアップ等の説明が英語で書かれているだけだ。

だけど、正直なところこれで十分だし、シンプルで僕は結構好印象。

f:id:sabo_321:20150412205109p:plain

そして、開封した時に結構戸惑うのが、ドングルの場所だ。

f:id:sabo_321:20150412205107p:plain

【RaspberryPi】サーボをAdafruit製モータドライバーを使ってI2Cで制御

サーボモータをI2Cでたくさん制御したい!

ラズベリーパイにはハードPWM出力ができるGPIOがある。 しかし、それでは1CHしか制御できないし、しかもラズベリーパイ本体にノイズがのって動作が不安定になることも。 そこで、サーボモータドライバを利用、しかもI2C通信で2本の信号線でたくさんモータが制御できる!

I2Cってなんだ?

私は正直詳しく知らなかった。下記リンクを参照。

利用するモータードライバ

Adafruitから発売されているサーボモータードライバを利用する。本来ならばAruduino向けに作られているものだが、 公式サイトでもラズベリーパイでの動作を確認してくれている。

今回は下記のSwitchScienceから購入。品揃えも抜群だし、発送も早くて、梱包もおしゃれです。 ただ、常に在庫切れの商品が多数あり、欲しいものが買えない状態・・・。

今回は上記のドライバを購入しましたが、ネットに多く情報があるのは下記のドライバ。 私も本当はこちらが欲しかったが、在庫がなかった・・・そして待てなかった・・・ 性能としてはほとんど変わらないと思います。

モータドライバー利用準備

公式サイトに英語ですがマニュアルが丁寧に書かれています。 発送される製品自体には紙のマニュアルも何もないので、下記サイトを参照しながらはんだと配線、環境セットアップをしていきます。

*Shield Connections | Adafruit 16-channel PWM/Servo Shield | Adafruit Learning System
https://learn.adafruit.com/adafruit-16-channel-pwm-slash-servo-shield/shield-connections

日本語だと、下記サイトで解説されています。

注意する点として

  • Adafruit_PWM_Servo_Driver.pyを開きコードを修正すること。ラズベリーパイB+を利用している場合は下記の様に修正。
#self.i2c = Adafruit_I2C(address)
self.i2c = Adafruit_I2C(address,1)  
  • 上記の修正でもうまく動かない場合は、Adafruit_I2C.pyを下記のように修正する
def __init__(self, address, busnum=1, debug=False):
self.address = address
# By default, the correct I2C bus is auto-detected using /proc/cpuinfo
# Alternatively, you can hard-code the bus version below:
# self.bus = smbus.SMBus(0); # Force I2C0 (early 256MB Pi’s)
self.bus = smbus.SMBus(1); # Force I2C1 (512MB Pi’s)  #←この行のコメントアウトを外す
#self.bus = smbus.SMBus(busnum if busnum >= 0 else Adafruit_I2C.getPiI2CBusNumber()) #←この行をコメントアウト
self.debug = debug

またもやここでつまづいた・・・

上記の修正を加えても”Error accsessing 0x40: Check your I2C address”のエラーが発生して動かない・・・。 もしかして配線ミス?ということで、ためしにモータードライバ上に挿しているGNDピンを差し替えた。

  動いた!

どうやら、モータードライバの5Vピンの隣のGNDピンではうまく動かず、その更に隣のGNDピンならば動くようだ。 私のはんだ不良だろうか?原因はよくわからないが、ともかく動いたのでよし。

ただし、このピンにラズベリーパイの電源をつけたまま挿すと、電圧降下が発生してラズベリーパイが再起動してしまうので注意。

RaspberryPi導入編 OSインストールから無線LAN、Bluetooth設定まで

はじめに

名刺サイズでLinux機が手に入る!しかもモータ制御とかいろいろできちゃう!ということで、RaspberryPi Model B+を購入しました。 目指すは多脚ロボットくんです!

Raspberry Pi Model B+ (Plus)

準備するもの

最初に購入したものは以下のとおりです。

家にあったものは

  • MicroUSBケーブル
    電源として必要なので、家のそこら辺に転がっていたやつを。
  • キーボード
    iBUFFALO Bluetooth 3.0対応 コンパクトキーボード タッチパッド搭載モデル ブラック BSKBB23BK
    適当に。最初は有線、Bluetoothが導入でき次第、ワイヤレスのキーボードに以降しました。
  • マウス
    家には無線のものしかなく、ラズベリーパイではすぐ動かせなかったので、マウスレスで動かしています。
    CUIリモートデスクトップで不自由なく利用可能)

導入時に参考にさせて頂いたサイト

初期導入

下記サイトをなぞってインストールを行えば大体問題なし。

私がつまづいたのは

  • 初期ユーザー名とパスワードの設定を忘れた。 解説サイトを見れば書いてあるが、ユーザー名は"pi"、パスワードは"raspberry"。
  • Raspi-config画面が最新版ではメニュー項目の並び等がちょっと変わっている(上記サイトの紹介と比較すると)。ただ、項目がなくなっているわけではないので、問題はない。

無線LANの設定

多分ラズベリーパイの初期設定で一番ハマったかも。 無線LANドングルは挿すだけで認識してくれるものもあるが、今回購入したGW-450Dはいろいろ手続きが必要。 参考にしたサイトはこちら。PLANEXが公式に公開しているもので、ほぼこちらの設定どおりでOK。

つまづいたところは

  • カーネルとモジュールのバージョンが一致しない。
    モジュール側が"3.12.35"を要求するが、カーネルをアップデートすると、カーネル側は"3.12.35+"となる・・・。 この微妙な"+"の違いがOKなのかNGなのかわからなかった。しかし、モジュールを導入すると無事動いた。

  • WiFiのセキュリティの暗号化設定がWPA2PSKになっていなかった
    もともとWEPで暗号化していたが、ラズベリーパイ側が認識してくれなかった。WiFiのルータの設定を見なおして、暗号化方式をWPA2PSKにしてパスワードも変更。 ココらへんは案外見逃しやすいミスかも。

  • 結構時間がかかる ラズベリーパイを使う以上しょうがないですが・・・やはりmakeやap-get installなどやらで20~30分ぐらいは待たされる。なのですべての工程をスクリプトファイルに落としこんで実行させると手間が省けるかも。(今回私はそのせいで余計な手間も増えてしまったが・・・コピペミスとか)

Bluetoothキーボードの設定

これもサクッとは導入はできなかった。 参考にしたサイトは以下のとおり。

つまづいたところは

  • スクリプトファイルの修正が必要 上記サイトでも解説されてあるが、キーボードによってはbluez-simple-agentのスクリプトファイルを編集する必要がある。 下記のコマンドで編集を行う。
$sudo nano /usr/bin/bluez-simple-agent

capability = "KeyboardDisplay" ←削除
capability = "DisplayYesNo" ←追加

他にもやったこと

もし、もっと細かいところで紹介できることがあれば、また後日・・・

RedmineをWindowsに導入【超カンタン】

いきさつ

会社ではUbuntuで動かしているRedmine。自宅でも自分の備忘録・メモ帳的な用途で使いたいと思いWindows7に導入。

Bitnamiが提供しているパッケージを利用すれば、面倒なことはほとんどなく、一発でインストール可能!非常に便利です。

インストール後は個人で必要なプラグインを導入します。今回はKnowledge-baseとWiki-Extentionを導入します。プラグインはzip形式などで直接ダウンロードする方法がありますが、Gitを使ってcloneするほうがお手軽かつカッコイイデス。

私のPCの環境

  • Windows7 64bit
  • まだGit(mysis-git、tortoise-git)は未導入。

ダウンロードするものリスト

Redmine本体(bitnami)

         https://bitnami.com/stack/redmine

Git(プラグイン導入時にあれば便利)

プラグイン(必要に応じて)

ナレッジベースというブログのような記事作成機能を追加するプラグイン。  

Wikiの機能を拡張するプラグイン。主にプロジェクト間でのWikiの相互リンクを利用するために導入

インストール手順

  1.  もしウィルス対策ソフトを導入していれば、一時的に停止させる。redmineインストール時に怒られるので。
  2. Bitnamiからダウンロードしたexeファイルを実行。
  3. 基本的にすべてはいで最後まで進めてOK。
  4. 途中ユーザのID,パスワードを聞かれるので設定。これがRedmineにログインするときに必要になる。
  5. メールアドレスを聞かれるので設定。
  6. apacheのポートなど各種ポートを聞かれるので、適当に設定。設定したい番号がすでに利用されている場合は、適当に変えて設定。サーバーのポートはデフォルトで80となっています。私はとりあえず8080に変更しました。
  7. 基本設定が終わればインストールが開始される。早くて約10分ほど。
  8. その後、ダイアログでRedmineを開くかどうか聞かれるので、YesでブラウザからRedmineにアクセス可能。
  9. 最初はBitnamiのページが表示されるので、”Access Bitnami Rredmine Stack”をクリックしてアクセスする。
  10. エラーなく表示されれば無事インストール完了。お疲れ様です。

プラグイン導入手順

  1. ダウンロードするものリストに表示したようなRedmineプラグインサイトからプラグインをダウンロードする。(Gitを利用する場合は後述)
  2.  まずBitnamiのRedmineをインストールしたフォルダに移動。デフォルトならば”C\:Bitnami\redmine-{version}”。以下、このフォルダを$BITNAMI_HOMEと記述する
  3. $BITNAMI_HOMEからapps\redmine\htdocs\pluginに移動。BitnamiのRedmineではプラグインをインストールする場所が従来のRedmineとは違うので注意。
  4. ダウンロードしたプラグインのフォルダをここにコピーする。Gitを利用する場合はここにcloneする。
  5. $BITNAMI_HOMEに移動し、フォルダ内にある”use_bitnami.bat”を実行してコンソール画面を表示させる
  6. 以下のコマンドを入力してプラグインを導入する。
  7. $ cd aps\redmine\htdocs\

    $ bundle install --no-deployment

    $ bundle update

    $ rake redmine:plugins:migrate RAILS_ENV=production

  8. $BITNAMI_HOMEに移動し、”manager-windows.exe”を起動して、”Restarl All”を選択。
  9. 再びコンソールで以下のコマンドを実行
  10. $ rake tmp:cache:clear

    $ rake tmp:sessions:clear

  11. Redmineにアクセスして、すべてのページが表示されれば無事導入完了。まれに特定のページのみが表示されず”internal error”と表示される場合がある。この時は、上記のプラグイン導入手順を再び行う。それでも復旧市内場合は"$BITNAMI_HOME\apps\redmine\htdocs\log\production.log"を参照して、エラー内容を確かめてググる

参考サイト

 

 

次にやりたいこと

ラズベリーパイでもRedmineが導入できるとの事なので、ぜひ試してみたいところ。家のパソコンは常に電源ONにしておくわけにもいかないですからね。ラズベリーパイなら省電力で場所も取らないですからねー。

 

Raspberry Pi Model B+ (Plus)

Raspberry Pi Model B+ (Plus)

 

 

参考サイト