月別アーカイブ: 2014年6月

BrickPi + LOGO Mindstorms EV3 をゲームコントローラーでコントロールする(前編)

Raspberry Pi + BrickPi + LOGO Mindstorms EV3 をジョイスティックコントローラで遠隔制御します。まあ、単純に Raspberry Pi に Bluethooth を接続して、これを Dualshock3 で使えるようにするだけなのですが。 工作と小物のがらくた部屋: Raspberry Pi で Dualshock3 (Bluetooth接続ゲームコントローラ)http://junkroom2cyberrobotics.blogspot.jp/2013/03/raspberry-pi-dualshock3-bluetooth.htmlRapiroをPS3のDUALSHOCK3で動かしてみる | Makuake(マクアケ)NOTE クラウドファンディングブログhttp://www.makuake.com/blog/crowdfunding/rapir … 続きを読む

カテゴリー: RaspberryPi | コメントする

QEMU で Raspberry Pi をエミュレートする

Raspberry Pi は CPU が ARM なので、クロスコンパイラ環境が必須なのですが結構手間なので、エミュレータ環境を使って、その中で Mono や OpenCV をビルドすると良い。 QEMU – Emulating Raspberry Pi the easy way (Linux or Windows!)http://xecdesign.com/qemu-emulating-raspberry-pi-the-easy-way/ そんな訳で、上記からエミュレータをダウンロードして解凍すると、あっさりと動きます。「QEMU Raspberry Pi」で検索するとぼろぼろと出てくるので、これが定番だったんだ。 ■初期環境を作る Raspberry PiをQEMUでエミュレートする方法 | 意識低い開発者のBloghttp://blog.ymyzk.com/2013/12 … 続きを読む

カテゴリー: RaspberryPi | 2件のコメント

Raspberry Pi 用のクロス環境を考察する

Mono を Raspberry Pi でビルドすると、12時間かかってしまうので非常に手間。考えてみれば、Raspberry Pi の CPU は ARM なのだから、Android のクロスコンパイル環境を持ってくれば動くのでは?と思ったのが発端です。 まだ調査中なので、どの環境がよいかは後でまとめます。 ■方法 最初は、Linux 上にクロスコンパイラ環境を用意して、ビルドした後に Raspberry Pi にもっていけば、と思ったのですが、いくつか方法が選べることに思い至りました。 Linux Debian wheezy のクロスコンパイラ環境で Mono をビルドして、Raspberry Pi にインストール Linux 上の ARM 仮想環境を作って、ビルドしたのち、Raspberry Pi にインストール Android 実機を使ってビルドしたのち、Raspberry Pi … 続きを読む

カテゴリー: RaspberryPi | 6件のコメント

Xamarin の FormsGallery を XAML で書き直してみる

Xamarin.Forms のサンプルに FormsGallery があります。Xamarin.Forms で使っているひと通りのコントロールが載っているので、どんなものがあるのか見るのに便利なのです。ただ、中のコードは、C# でひとつひとつのコントロールを作るスタイルになっているので、XAML で作る場合にはどうするのか、いまひとつ解りづらい…ので、コンバートしてみました。 https://github.com/moonmile/XFormsGallery ところどころ未完成なところがあるのですが、ひとまず1日で出来上がったところまで。 共通プロジェクトは PCL を使っています。XAML を素直に共通化するだけであれば PCL で良いでしょう。WinStore/WinPhone のユニバーサルプロジェクトのようにコードビハイドに手を加える場合には、共有プロジェクトを使うと良 … 続きを読む

カテゴリー: C#, Xamarin | コメントする

F# を使ってRaspberryPi+BrickPi+LOGO Mindstorms EV3 を動かす

F# に限らないのですが、試しにモーター制御の部分だけ .NET 版の BrickPi を作りました。 https://github.com/moonmile/BrickPiNet – BrickPi.h と brickpinet.c で .NET に公開可能なインターフェースを作る – BrickPi.cs と BPi.cs で .NET で包む – sample.cs、sampleF.fs のように C#/F# で制御する というパターンです。BrickPi_Python などを見ると、それぞれの言語でシリアルポートに直接アクセスしているのですが、C# からポートアクセスは面倒だし、BlickPi.h 自体で十分なインターフェースになっているのでこれをそのまま使います。BrickPi.h 自体は C言語で掛かれているので、そのまま shared で公 … 続きを読む

カテゴリー: C#, F#, RaspberryPi | コメントする

BrickPi でモーターの動作確認まで

Raspberry Pi で F# が動かせたので、今度は BrickPi の設定です。 BrickPi Image Setup: Setting up your SD Card For the BrickPi http://www.dexterindustries.com/BrickPi/getting-started/pi-prep/ にある Modify your own image にしたがって、BrickPi パッケージをインストールしていきます。 git clone https://github.com/DexterInd/BrickPi.git から始まって、ちまちまと設定をしないといけないので、Download and use our modified Raspbian image on your own SD Card のほうから、BrickPi インストール済みの OS … 続きを読む

カテゴリー: RaspberryPi | コメントする

Raspberry Pi で F# を動かすまで(まとめ)

手元にあるのが Raspberry Pi のメモリが 256MB タイプのためか F# をビルドするときに失敗します。が、別途の Debian でビルドした DLL を install することで回避しています。 手持ちの SD カードは 8GB です。 ■下準備 画面は使わずにターミナルだけで作業をします。初期状態で ssh が使える状態になっているので、起動したときの IP だけわかれば OK。初回のみ HDMI でディスプレィをつなげて固定 IP にしておけばよいでしょう。DHCP でも自宅の場合はそう変わらないので、そのままでもいいかなと。 Raspbian Debian Wheezy をインストール sudo respi-config して Expand Filesystem を実行。こうすると SD カード一杯まで容量を増やしていくれる。 sudo passwd root でパ … 続きを読む

カテゴリー: F#, RaspberryPi | コメントする

Raspberry Pi で F# を動かす(陽性かくにん版)

F# ビルドの続きです。 ■fsharp のビルドでこける 正確には F# proto(F# 3.1 をビルドするための F# 3.0)のテストでこけます。 ガベージコレクションのテスト(かな?)をしているところで、alloc 出来なくてこけているので おそらく RasPi のメモリ不足ですね。手元の Raspberry Pi って初期型なので、メモリが少なくって USB が 2 つついているけど 256MB しかないんですよね。 おそらく、ここの GC チェックを外してしまえばビルドできると思うのですが、どうも手軽ではない。そもそも Mono 3.2.7 のメモリでこける件もテスト自体でこけているので実害はないかもしれない。 ■Debian でビルドした F# をインストールする で、そもそもが「 FSharp.Core は環境依存していないだろう」という想定のもとに、別の Debian … 続きを読む

カテゴリー: F#, RaspberryPi | 1件のコメント

Mono と F# を CentOS/Debian 上でビルドしている途中

なぜか、現状の Raspberry Pi 上では apt-get install mono ができる apt-get install fsharp ができない make fsharp すると、ビルド時にテストエラーが発生する https://github.com/fsharp/fsharp/issues/260  という状態で、このテストエラーは Xamarin Bug  https://bugzilla.xamarin.com/show_bug.cgi?id=17654 を見ると直っているらしい。この現象自体は Mono 3.2.7 で発生しているので、手元の Mono 3.2.8 は大丈夫なはずなんだけど、同じようにダメ。おそらく RasPi にあるレポジトリが何らかのタイミングで古いのではないか?と思のだが…これを、RasPi 上でビルドするとえらい時 … 続きを読む

カテゴリー: F#, RaspberryPi | コメントする

Raspberry Pi で F# を動かすまで…なんだがまだ終わらず

随分前から Raspberry Pi を持っているのですが、しばらく放置中だったので再開。LEGO Mindstorms EV3 を動くところまで続ける予定です。 最初は mono と F# を入れるところまで ■ Mono をインストールする Mono on RaspberryPi でHelloWorld – 銀の光と碧い空 を参考にして sudo apt-get install mono-complete で一発インストールです。私の場合 SD カードが 2GB という小さいメモリだったので、mono を入れた途端に df が 100% になって詰み。仕方がないので、余っていた 4GB の SD カードに OS を入れ直して再インストールする羽目に。 # 追記 # respi-config で Expand Filesystem すると、SD カード一杯に容量を拡張します。 … 続きを読む

カテゴリー: F#, RaspberryPi | コメントする