AdSense

2014年8月24日日曜日

Arudino Procesing Funnel環境構築

コマンドポート:サーバの起動中…
コマンドポート:サーバが起動しました:9000
I/Oモジュールと接続中です…
java.lang.UnsatisfiedLinkError: C:\Users\xxx\Documents\Processing\libraries\funnel\library\rxtxSerial.dll: Can't load IA 32-bit .dll on a AMD 64-bit platform thrown while loading gnu.io.RXTXCommDriver
Exception in thread "Animation Thread" java.lang.UnsatisfiedLinkError: C:\Users\xxx\Documents\Processing\libraries\funnel\library\rxtxSerial.dll: Can't load IA 32-bit .dll on a AMD 64-bit platform
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1807)
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1732)
at java.lang.Runtime.loadLibrary0(Runtime.java:823)
at java.lang.System.loadLibrary(System.java:1028)
at gnu.io.CommPortIdentifier.(CommPortIdentifier.java:83)
at funnel.FirmataIO.begin(FirmataIO.java:513)
at funnel.ArduinoIO.(ArduinoIO.java:36)
at funnel.FunnelServer.connect(FunnelServer.java:354)
at funnel.FunnelServer.connect(FunnelServer.java:325)
at funnel.FunnelServer.(FunnelServer.java:226)
at processing.funnel.IOSystem.waitingServer(IOSystem.java:159)
at processing.funnel.Arduino.startingServer(Arduino.java:107)
at processing.funnel.IOSystem.(IOSystem.java:80)
at processing.funnel.Firmata.(Firmata.java:22)
at processing.funnel.Arduino.(Arduino.java:46)
at processing.funnel.Arduino.(Arduino.java:69)
at Blink.setup(Blink.java:36)
at processing.core.PApplet.handleDraw(PApplet.java:2117)
at processing.core.PGraphicsJava2D.requestDraw(PGraphicsJava2D.java:193)
at processing.core.PApplet.run(PApplet.java:2020)
at java.lang.Thread.run(Thread.java:662)

こんなエラーになってProceesingメイクできない。
で、64bit環境のドライバになってないぽいので、64bit環境のをとってきて入れてみる

http://www.cloudhopper.com/opensource/rxtx/
ここから64bitのやつダウンロード

ch-rxtx-2.2-20081207-win-x64.zip


で、「rxtxSerial.dll」をエラーが出てた「C:\Users\xxx\Documents\Processing\libraries\funnel\library」
にいれる。元あったやつは名前変えておく。

で実行すると、無事成功!

========


コマンドポート:サーバの起動中…
コマンドポート:サーバが起動しました:9000
I/Oモジュールと接続中です…
Stable Library
=========================================
Native lib Version = RXTX-2.2-20081207 Cloudhopper Build rxtx.cloudhopper.net
Java lib Version = RXTX-2.1-7
WARNING: RXTX Version mismatch
Jar version = RXTX-2.1-7
native lib Version = RXTX-2.2-20081207 Cloudhopper Build rxtx.cloudhopper.net
Firmata Protocol Version: 2.3
I/Oモジュールと接続が完了しました://./COM28, 57600
Pin 0:
Pin 1:
Pin 2: Input, Output, Servo
Pin 3: Input, Output, PWM, Servo
Pin 4: Input, Output, Servo
Pin 5: Input, Output, PWM, Servo
Pin 6: Input, Output, PWM, Servo
Pin 7: Input, Output, Servo
Pin 8: Input, Output, Servo
Pin 9: Input, Output, PWM, Servo
Pin 10: Input, Output, PWM, Servo
Pin 11: Input, Output, PWM, Servo
Pin 12: Input, Output, Servo
Pin 13: Input, Output, Servo
Pin 14: Input, Output, Analog
Pin 15: Input, Output, Analog
Pin 16: Input, Output, Analog
Pin 17: Input, Output, Analog
Pin 18: Input, Output, Analog, I2C
Pin 19: Input, Output, Analog, I2C
Total configurable pins: 20
opened host address 127.0.0.1
コマンドポート:127.0.0.1がサーバに接続しました
I/Oモジュールを再起動中です…
I/Oモジュールは正常に再起動しました
Firmata Protocol Version: 2.3
reboot OK
configureation OK
addModule() Arduino -> 0
funnelServiceThread start
notify thread start
OscServiceThread start

pandaboard ESでUbuntuサーバ立ててツイートさせてみる

Linuxでサーバの勉強をしてみたい。
手元にLinuxPCが無いので、AndroidやFirefoxOS以来ほったらかしてたPanadaboardいUbuntu入れて動かしてみよう。

0.環境準備
 SDカード買ってくる。CLASS10のKingston 690円
 キーボードとマウス。合わせて1000円くらい。

1.Pandaboard用のUbuntuを入手
http://cdimage.ubuntu.com/releases/12.04/release/
ubuntu-12.04-preinstalled-desktop-armhf+omap4.img.gz

2.WindwsでSDに書き込むツールを入手。書き込み。
http://www.si-linux.co.jp/techinfo/index.php?DDforWindows
DDWin_Ver0998.zip
 ※管理者で実行すること

3.電源入れて起動
 起動には5分くらい時間がかかる

4.パフォーマンスの向上・安定?(lightdmとgdmの切り替え) →破棄
http://ankyo.blog.so-net.ne.jp/2011-06-17
 →再起動でUbuntuロゴから進まなくなる。
  下記と思われる。
  https://forums.ubuntulinux.jp/viewtopic.php?id=11345
  IPがわからないので、2からやりなおし。

5.SSHを有効にする
 http://d.hatena.ne.jp/Fiore/20080228/1204174833

6.好みのエディタ(SublimeText2)を入れる
 http://qiita.com/kanpou_/items/bc739c1215fc222f17c8
 →何故かインストール中に失敗。断念

7.LAMP環境構築(Apache、PHP、MySQLをインストール)
 http://tackysroom.com/myserver/Desktop/myserver_d01.htm


さらにWeb経由でArduino動かしたいのでArduinoの環境もつくる

8.Arduinoつなげる準備
 JDKインストール
 http://enthusiastickcoding.blogspot.jp/2013/05/arduinoubuntuide.html
 http://makers-with-myson.blog.so-net.ne.jp/2013-10-27
 
 これらを参考にオフィシャルからArduinoをとってきて動かすが
 librxtxSerial.soが(Possible cause; can't load IA 32-bit .so on a ARM-bit platform)とか言われて動かない。

 sudo apt-get install arduinoでいれてみる。→動いた!
 sudo arduinoまたは、$sudo chmod a+rw /dev/ttyACM0 にするのを忘れずに。

9.Twitterにつぶやけるように環境つくる
 Rubyのtwitterがいいぽいので、まずはRuby入れる
 http://hitoriblog.com/?p=9835
 sudo apt-get install rubygems

  twitterがinstallできない
 http://www.amulet.co.jp/shop-blog/?p=5157
  # apt-get install ruby-dev
  まだできない。
 Permission denied とか言われるからsudoで実行
 # sudo gem install twitter
 最初に時間がかかったけど出来たぽい

10.Twitterのアカウントを得る
  http://el.jibun.atmarkit.co.jp/haya/2010/09/twitter-bot-0e0.html
    Twitterアカウント作成
  Twitter DeveloperAPI登録。 key, API secret , Access token, Access token secret

11.自動Tweetするスクリプトを書く
  http://lance104.hatenablog.jp/entry/2014/03/10/234257
  RubyGems 5.0.0以上ではconfigureの使い方変わってるから注意

  「Your credentials do not allow access to this resource」というエラーがでる。
  key設定が上手く言ってない。yamlの使い方が合ってないみたい。Keyを直接いれたら成功。


参考にさせていただいたサイト
http://suen-study.blogspot.jp/2013/02/pandaboard-esubuntu-12042.html
http://jazz-love.ddo.jp/main/node/873
http://mylog.cswiki.jp/index.php?PandaBoard%2FUbuntu%E3%82%92%E5%8B%95%E3%81%8B%E3%81%99
http://magazine.wizapply.com/2012/06/28/pandaboardes-makegame/


Arduino
http://yamada468.blogspot.jp/2012/06/arduino-ide.html
http://enthusiastickcoding.blogspot.jp/2013/05/arduinoubuntuide.html
http://makers-with-myson.blog.so-net.ne.jp/2013-10-27

Arduinoと赤外線センサー&LEDでSharpのテレビを制御できた

赤外線コード
http://akizukidenshi.com/download/k4174_manual.pdf

赤外線リモコン受信モジュール
SparkFun SEN-08554
http://www.switch-science.com/catalog/129/

赤外線LED
長い方が+です

AQUOSのTVはパナソニックの赤外線プロトコルと同じでした。

Decoded PANASONIC - Address: 555A Value: F148688B (48 bits)
Raw (100): 14092 3500 -1500 600 -250 550 -1100 600 -250 550 -1100 600 -250 550 -1100 600 -250 550 -1100 550 -300 550 -1100 550 -300 550 -1100 550 -1100 600 -250 550 -1100 550 -300 550 -1100 550 -1100 550 -1100 600 -1050 600 -250 600 -250 550 -300 550 -1100 550 -300 550 -1100 550 -250 600 -250 600 -1050 600 -250 600 -250 550 -300 550 -300 550 -1100 550 -1100 600 -250 550 -1100 550 -300 550 -250 600 -250 600 -1050 600 -250 600 -250 550 -300 550 -1100 550 -300