AdSense

2016年6月23日木曜日

Leap Motionを使ってUnityでMMDのモデルに触れる

Leap Motionが随分値下がりしてたので購入しました。

一時期は1万円を超えていたのに、今は3000円代で購入できます。



VR用に進化したデベロッパーキット Orionが出て、非常に遊び幅が広がっています。

今回は、これらを使ってUnityと組み合わせ、MMDモデルを触ってみることにしました。

参考にさせて頂いたサイト:
http://zabaglione.info/archives/789?utm_campaign=shareaholic&utm_medium=twitter&utm_source=socialnetwork

Leap Motion Orionを用いたヾ(・ω・*)なでなでアプリの作り方

使った環境:
  • Windows 10 64-bit
  • Unity 5.3.5f1
  • Leap Motion SDK Windows 3.1.3
  • Leap Motion Orion 4.1.1
  • ImagineGirls Iris v101 http://imaginegirls.com/
  • MMD4Mecanim Beta 20150821

手順は、上記の参考にさせて頂いたサイトのままです。
一点引っかかったのは、Leap Motion Orionのバージョンアップで、Hand Poolスクリプトの設定が変わってたとこでした。

Demoの設定を参考に下記に合わせました

パススルーモードについては、設定項目が無かったので無視してます。

無事、MMDモデルへの干渉(Irisさんの髪を撫でる)に成功しました。











これが無料でできるのだからUnityすごいです。
次はヘッドマウントディスプレイと組み合わせてARも試してみたいと思います。

2016年4月22日金曜日

チャレンジ スマイルゼミのタブレットのROMを焼き変える

退会したチャレンジ スマイルゼミのタブレットの有効活用を考える。

ググると、結構簡単な方法でAndroidタブレット化できそうとのことで、
調べた手順で試してみる。

http://note.chiebukuro.yahoo.co.jp/detail/n339061

http://hidekyan.cocolog-nifty.com/blog/2015/10/junk-android-bc.html

こちらの手順が、
OTGのUSB変換プラグ経由でキーボードつなぐだけで出来そうなので、やってみた。

がしかし、いくらキーボードのキーを押してもブラウザが起動しない。
他にもダメな人もいるようで、すでに対策済みと思われ断念。

他にも方法が無いか調べると、YoutubeでROMごと書き換えてる人を発見。

https://www.youtube.com/watch?v=3iyGjEzDs7A

この方のやり方を真似てやってみる。

引っかかったポイントは、

1.書き込みツール、ドライバのDL先
  ROMイメージのDL先
2.書き込みモードへの切り替え
3.ドライバの指定
4.中国語のチェックモードからの脱出

でした。

1については、ファイル名でググると、下記にたどり着く

http://kaopu.so/pan/40P-OK

Youtubeの説明を頼りにROMまでたどり着く。

2については、USBを刺した状態で、電源とVolume+を同時押し起動で、
ランプが緑点灯するので、これが書き込み可能状態だとわかる。
画面は黒いままだけど、LEDだけ緑の状態。

ここでデバイスマネージャを開くと、「不明なデバイス」として認識していることがわかる。

で、3ですが、
ここまできたら、「不明なデバイス」のドライバインストールにて、
1でDLしたファイルの
 DriverAssistant - Driver - x64 - win7
を指定することでOKでした。
なお当方の環境はx64のWindows10でしたが、上記の指定でOK。

で、4ですが、
書き込みツールで最初のファイルを書いた後に、
中国語の音声が流れながらチェックモードみたいなのが始まります。
延々と続くので、Volume+を長押しして再起動させます。
ほっとくと、何度もチェックモードになるので、Volume+キーを長押しのまま続けて押しっぱなしにしておきます。すると、書き込みモードで起動します。

で、最後のROMイメージを書けばOK。


順を追っていくと、

まず、設定から工場モードへ初期化


書き込みモードにして最初のファイルを書きこむ。


Volume+長押しして、再度書き込みモードにして、ROMイメージ書き込む。


無事、Androidタブレット化しました。








2016年4月2日土曜日

Raspberry pi3を買ったけど64GのSD Cardでbootにつまづいた話

CPU性能UP、Wifi、Bluetooth(BLE)付きで値段変わらずということで、ついにRaspberry pi 3を購入しました。

技適を通ってるやつを探してたけど、
Amazonの商品画像からelement14版のケースに技適マークがみえたのでそれを購入。

速攻で届いたのでSD Cardにbootイメージを焼く。

https://www.raspberrypi.org/downloads/noobs/
公式からコピペするだけですむNOOBSをダウンロードする。

で、手持ちのSD Card(64G)にコピーする。

が、コピーできない。
Write Protectされてるから書き込めない的なエラーが出る。

どうやら、microSDをSDサイズにするアダプタにはめてた時の
LOCKスイッチがメモリ的にもWrite Protectになってた模様。
もう一回アダプタにはめてLOCKスイッチをOFFにすることで解決。

まさか、メモリ自体にWriteProtectが残ってるとは。

コピーできるようになったので、
先ほどのNOOBSをコピーして起動を試みる。

が、起動しない。

なんかフォーマットがダメ的な警告が出てる。

よくよくSDカードのフォーマットを見直してみると
exFATになってた。

ググると、Raspberry PiはFAT32じゃないとダメらしい。

windows標準のフォーマッタではexFATしか選べなかったので
HP USB Disk Storage Format Toolsを使ってFAT32にフォーマットする。

http://filehippo.com/jp/download_hp_usb_disk_storage_format_tool/
HP USB Disk Storage Format Tools

フォーマット後に再度NOOBSをコピーして無事起動OK。

日本語フォントが入ってないので、

#sudo aptitude -y install jfbterm
#jfbterm
#reboot

で再起動してOK。
後は時刻をAsia Tokyo、キーボードをJapaneseにすればOK。






2016年3月18日金曜日

Android N preview版をエミュレータで動かしてみる

海苔とウワサのAndroid N のpreview版が公開されたので、動かしてみた記録。

以前のバージョンまではARMのイメージがあったけど、
Android Nは、x86のイメージしかないので注意。

動かすためには、「Android SDK Manager」で「Intel x86 Emulator Accelerator (HAXM installer)」をとってきて、 手動でファイルを選んでインストールしておく必要があります。 

なお、以前のバージョンで入れてても、最新を入れ直さないとダメみたいです。 あと、AVDのRAMサイズを1GにしないとAndroidロゴから起動しませんでした。


 





















正式リリースが楽しみです。

2015年11月29日日曜日

ミニ四駆をワイヤレス(Wi-Fi)で動かす④ 電池給電化

前回までの記事で、制御のワイヤレス化は実現できましたが、
バッテリーが電源からの給電だったので、今回電池給電にして完全なワイヤレスにしました。


これ迄の記事

http://mementomorisince2013.blogspot.jp/2015/11/esp-wroom-02.html
ワイヤレスモジュール(Wi-Fi)の使い方

http://mementomorisince2013.blogspot.jp/2015/11/drv8832arduino.html
モーターコントローラーの使い方

http://mementomorisince2013.blogspot.jp/2015/11/wi-fi.html
ミニ四駆に接続してワイヤレス化

やったこと


まずは、電池だけで動くことを確認します。
電池BOXからの給電で動くことが確認できたので、モーターとモーターコントローラー側はシャシーに乗る電池をつかうことにします。

ただし、そのままつけるとモーターが直接電流を拾ってしまうので、エナメル線でモーターコントローラ経由になるように取り回します。

モーター側も絶縁ビニールテープで金具に接触しないようにします。



電池からもエナメル線で外に流します。



このように、元の場所に収まりますが、電気的には接触してません。



エナメル線を外に出します。


ワイヤレスモジュールのESP-WROOM-02は、単三乾電池(1.5V)を3つを直列につないで4.5Vにし、レギュレータで3,3Vにして流し込みました。ばっちり動いています。

これで完全にミニ四駆のワイヤレス化です。


モーターコントローラは後ろのバンパーに載せました。


シリアルのチップも載せてるので、ブレットボードの配線はまだごちゃごちゃしてます。
追々整理して小型化するとして、とりあえず動かしてみます。



無事動きました!
速度は、モーターコントローラで調整できます。

不恰好ではありますが、とりあえずミニ四駆のワイヤレス制御成功です。
ハードの知識があまり無いので試行錯誤でしたが、よい勉強になりました。



2015年11月9日月曜日

Xcode7でDeveloper登録せずにiPhone実機で自作アプリを動かす

swiftが登場して購入したMacBookでしたが、
iPhoneで自作プログラム動かすには、Apple Developer Program(年会費11800円)に登録が必要とのことですっかり手が止まっていたiPhoneアプリ作成。
ひょんなことから、最新のXcode7ならばDeveloper Programに登録せずに、無料で実機動作させることができるとのお話を聞き、 早速ためしてみました。

概ねこちらを参考にさせて頂きました。
http://qiita.com/FumihikoSHIROYAMA/items/a754f77c41b585c90329
Xcode7で1円も払わずに自作iOSアプリを実機確認する


試したプログラムは下記のiPad Roboさんのソース

同ページからのリンクでGitHubにソース公開されてたので、動かしてみました。

やったこと:

1. Xcode(7.0.1)を立ち上げて、GitHubのレポジトリからソース取得する

 起動したら、「Check out an existing project」を選択する。
 「or enter a repository location:」というとこにGithubのURLを貼り付けてNextを押す。

2. 「Identity」で警告が出てるので治す

まず、Identityで「No provisioning profiles found」と警告がでてるので「Fix issue」を押す。

そうすると、Bundle Identifierについて、
「An App ID with Identifier “com.netonjapan.RoboPad” is not available. Please enter a different string.」と怒られるので、

IdentityのBundle Identifierを適当な名前を変える。

再度「Fix issue」押すと、今度は
「creating a provisioning profile requires one or more devices to be registered with your team. ...」と怒られた。
 ※これは、Deployment InfoのDevicesがiPadになってるのに、
  iPhone実機をつなげてたため。
  今回はiPhoneで動かすので、DevicesをiPhoneにする。

すると、左上のとこが、
 「Robo > iPhoneの名前」になる。

で「No provisioning profiles found」という警告もなくなった。

途中でアカウント関連の警告もでたけど、

 http://qiita.com/FumihikoSHIROYAMA/items/a754f77c41b585c90329
 Xcode7で1円も払わずに自作iOSアプリを実機確認する

こちらを参考にさせて頂き、自分のicloudアカウントを入れて解決。


3. ビルドエラーを修正する

左上の▶︎マークで実行する、Build Failedになる。
どうやら、ビルドラーがたくさんでてる模様。

CBPeripheral.isConnectedが無いとか、CBPeripheral.UUIDが無いとかエラーになっている。どうやらiOS7から非推奨担っている模様。

や

を参考に、
    if(activePeripheral && activePeripheral.isConnected){
を
    if(activePeripheral && activePeripheral.state == CBPeripheralStateConnected){
に書き換える

もう一方の、
 Property 'UUID' not found on object of type 'CBPeripheral *’
というエラーについては、下記に変更する。

    [self UUIDToString:p.UUID]
を
    p.identifier.UUIDString
に修正する。

さらに、
 [self UUIDToString:peripheral.UUID]
 を
 peripheral.identifier.UUIDString
に修正する。

さらに、
        if ([self UUIDSAreEqual:p.UUID u2:peripheral.UUID]) {
を
        if ([self UUIDSAreEqual:(__bridge CFUUIDRef)(p.identifier) u2:CFBridgingRetain(peripheral.identifier)]) {
に修正する。(自信無いが、Xcodeの補完機能を信じる)

これで、幾つかの警告は残るがBuild successになる。

4. iPhoneで実行する

ホーム画面にアプリが登録されてるので、タップして実行。



無事、カメラが起動して、顔認証が動きました。

やはり実機で動かすとテンションが上がります。
Xcode7のおかげでようやく、iPhoneアプリ作成も捗りそうです。

2015年11月3日火曜日

ミニ四駆をワイヤレス(Wi-Fi)で動かす③ モーターと無線を結合して確認

前回、前々回と、単体のモジュールは動かせたので、いよいよ組み合わせて
ミニ四駆をWi-Fiでリモートコントロールします。

前々回のWi-fiモジュール(ESP-WROOM-02)を動かした記事
http://mementomorisince2013.blogspot.jp/2015/11/esp-wroom-02.html

前回のDCモーター(DRV8832)を動かした記事
http://mementomorisince2013.blogspot.jp/2015/11/drv8832arduino.html


使ったもの
・ESP-WROOM-02

・DRV8832使用DCモータードライブキット
・ミニ四駆


とりあえず、前回、前々回の組み合わせだけで、
ミニ四駆のモーターを開始、停止、逆回転できました。

ESP-WROOM-02のIO13とIO14を、DRV8832のIN1とIN2に接続しています。
写真、動画では、IN1とIN2それぞれがHIGHになるとLEDを点灯させました。





動画はこちら



ソースコードはこちら


さて、今回はモーター、WifiそれぞれにUSBシリアルとArduinoから5V電源供給していますが、制御がワイヤレスでも、電源が有線では意味無いので、次は電池駆動を考えます。

続く。