2013年4月29日月曜日

GW のこうさく

データロガーでアクセル開度をロギングしようと思って,OBD-II アダプタを買ったんだけど,サンプリング周波数が 3Hz くらいしかなかったので結果的に使い物にならなかった.

というわけで,シャープの測距センサー GP2Y0A21YK0F を購入.
これをアクセルペダルにつけることで直接アクセルペダルの踏み込み具合をロギングすることにした.

ホントはブレーキペダル用に 2個センサーを買ったけど,ブレーキペダルはストロークが 3cm くらいしかなく有意な値が採れそうになかったのと,このセンサーは赤外線を使った光学式なので,アクセル用・ブレーキ用の赤外線が混線したらやだなぁ,というわけでアクセルだけ計測することにした.

で,H8 マイコンに繋いでセンサーの素性を実験.
意外と精度が高くてワラタwww ただし 10cm を切るあたりからだんだん怪しくなってくるっぽい.

2013年4月8日月曜日

大自然との戦い

 だいぶん前に実験したまま放置していた FFT によるエンジン回転数の推定,窓関数とか折り返しノイズとか新たな知識を仕入れたので,エンジン回転推定精度が上がるかと思って,昔のコードを引っ張りだして試してみた.
で,余計な風切り音とかが入っていない純粋なエンジン音だけ入っている動画を探して見つけたのがこれ.(人の動画)


これだけクリアに音が入っているなら,エンジン回転数も推定しやすいだろうと思っていたら,予想に反してタコメータが暴れまくる(;´д⊂)

んー? と思って,スペクトル解析結果をわかりやすいように画像化してみた.

縦が周波数 (≒エンジン RPM) で横が時間,白いほどその周波数の音量が大きいことを示している.
この図から,なんとなくタコメータのグラフっぽいものが読み取れると思うけど,問題なのは,正解は一番上の線なのに対しそれとほぼ同じ音量で,コピーっぽい線が何本か現れている.これならタコが暴れるのも納得.

人間の耳 (と言うか自分の耳) では,一番大きいエンジン音以外の音はあんま聞こえないんだけどなぁ.機械にとってはそうではないみたい.
音声認識とか画像認識とか,自然データ相手の解析は難しいね.

2013年4月1日月曜日

試合に勝って勝負に負けた

久々に濃い内容のレースだったので,ノーカットで.
前哨戦から非常に熱かった.


ついでなんでギャップチャートも描いてみた.

初参加の NAG は置いといて,全員が同じペースで走ってるのがすごい.あと先頭の 2人がもつれているうちに HAS が 1.5 秒後までに迫ってるなんて知らなかった.

2013年3月3日日曜日

空想と現実の壁


車載動画に Google マップを合成する機能は,できたことはできた.

でもなんだろう,作る前はなんかすげー機能思いついちゃったぜ! 的にウキウキで実装してたのに,出来上がってみるとなんか残念さが漂うwww
まぁ色々勉強になったしいいか.

配布サイトはこちら

2013年2月26日火曜日

VSD for GPS + Google Static Maps プロジェクト開始

世の中には酷道巡りなる自虐的な遊びがあって (たとえばこれとか),結構好きでこういう車載動画を見てるのだが (見てるだけ.自分で実行する気力はないw),こういう動画で現在位置をマップとかで表示できたらいいなぁとふとおもった.

というわけで,VSD for GPS で Google Maps を重ねてみる実験開始.
幸い,Google Static Maps API というのがあって,結構簡単に Google から地図画像をダウンロードできた.後はこれをメーター画像のように表示するだけ.

というわけで,上の図のように単純に地図を表示することだけは出来た.
あとは現在位置に合わせて,地図をスクロールするとか,そこら辺を実装すればいけそう.

技術的にはそんなに大したこと無さそうだけど,何が辛いって,残業して帰りが遅いのに夜遅くまでこんな実装して次の日が辛いwww

2013年2月17日日曜日

久々のカート

久々のカート! ヽ(´ー`)ノ

久々のドライコンディション! ヽ(´ー`)ノ

久々の無事故完走www (゜ーÅ)ほろり

というわけで久々にヘルメットカメラ動画 up.

舞洲はコースレイアウトが一部変更になって,一番テクニカルだった S字がなくなって 1個の高速(?) コーナーになったけど,ノーブレーキでいけるようになったので自分としてはこっちのほうが好み.


あと,新たに導入された 2人乗りカート.
これにオッサン 2人で乗るという悲劇は冷静な判断力により回避された.

2013年2月9日土曜日

私男だけど車のバッテリー固定がマジックテープ式だった 死にたい。。

スターターの回りが怪しくなってきたので,バッテリーを交換した.

物は前回と同じ LONG WP22-12 (\4,500+送料).前のは 3年 9ヶ月持ったわけで,結果的にコストパフォーマンスは最強.という訳で今回も同じバッテリー.

で,古いバッテリーを車体から外そうとした時に問題発生!
←バッテリーは 10*15cm くらいのマジックテープで張り付けていたんだけど,これが予想以上に頑丈に固定されていて外せない…
マジックテープって,一方が柔らかければ一部分ずつ剥がせるので力は要らないんだけど,固いもの同士だと全面を同時に剥がすことになるので,相当な力がいる.
試しにバッテリーを力任せに引っ張ってみたら,車体が動いたwww バリバリパワー恐るべし.
結局ステンレス定規を間に差し込んで,一部ずつ剥がしていくことで全部剥がせた.

容量が小さいのでカットオフスイッチは必須なのと,端子が普通のバッテリーと違うのでちょっとした加工が必要だけど,ドライバッテリーで軽いし,週末しか乗らない車なら結構いい選択肢なのではないかと.

←古いバッテリーはソーラーバッテリーチャージャーつないで,スマフォ充電器としてしばらく使ってみる予定.俺ってエコwww

まぁ,エコって言いたいだけなのは認める.

2013年1月25日金曜日

心が折れた瞬間


去年はジムカ & 鈴鹿体験走行には行ったけど,普通のサーキット走行は一回も行ってなかったことにハタと気づいてしまったw というわけで,会社休んで鈴鹿南に走り初めに Go.
暫く来ないうちに,鈴鹿南は 50分単位の走行じゃなくて 30分単位の走行になってたのね.50分連続走行はさすがにダレてくるのでこっちのほうがいい.

で走行開始.
気温は低いのでエンジンパワー的には前回より有利なはずなので,ベストタイム更新できるか? と思ったけど,今年一番の大寒波が押し寄せているようで,寒いにも限度があります.
路面温度も低すぎなのかタイヤが食わねぇし orz しかも予報では雨が降る様子はなかったのに,雪がちらついて路面がセミウエット状態になって,雨の日のカート状態.ついにオイル旗 (滑りやすいですよの意味) も振られだしたよwww

ストレートでまともに止まれなくなった時点で心が折れた.

2012年12月23日日曜日

年末大掃除

去年の今頃,HDD を買おうと思っていたところにタイの洪水が発生して HDD の値段が高騰してはや一年.なんだかんだ空き容量をやりくりしてたけどそろそろ限界が来たので,WD30EZRX/K (3TB) 購入.

で,HDD が広大になったので,データの大掃除ということで今まで DVD * 36枚に退避してたデータも全部 HDD に戻して DVD メディアを全部処分.4枚ほど読めなかったけどwww やっぱノーブランドメディアはあかんね.

これまでの人生における全情報量は 1.7TB でございました.

2012年12月2日日曜日

Android で telnetd

Android の ConnectBot (telnet クライアント) で作業するのに便利かと思って,Bluetooth キーボードの TK-GMFBP029BK 購入.
早速使ってみたけど,効率的にソフトキーボードと大差ない (ctrl キーが効かない) 事がわかって,普通の日本語入力とかもやりにくいので 5分で窓から投げ捨てた.
# ←ちなみに GalaxyNote のペンで書いてみたw べんりwww

で,今まで Android に telnet で入って作業するには,USB ケーブルでつないで adb shell で入ってたんだけど,いちいち USB 接続しなければならないのと,adb shell は色々とターミナル的に変 (vi が使えないとか Ctrl+C で adb もろとも抜けるとか) なので,Android で telnet サーバを立ててみることにした.

今回はアプリを入れるのではなく,(root とってるなら busybox が入っているので) busybox 内蔵の telnetd を使用することにする.
こんなスクリプト↓を書いて,
#!/bin/sh

home=/sdcard/home

case $1 in

sudo)
    shift
    su -c "sh $0 $*; sleep 1"
    ;;

start_telnetd)
    PATH=/system/xbin:$PATH
    export ENV=$home/.shinit
    /system/xbin/telnetd \
        -l /system/xbin/sh \
        -b `ifconfig wlan0 | awk '/inet addr:/{ print substr( $2, 6 ) }'`
    ;;

stop_telnetd)
    kill -9 `ps | grep 'tel[n]etd' | awk '{print $2}'`
    ;;
esac
ConnectBot の「ログイン後の自動実行」に「exec スクリプト名.sh sudo start_telnetd」と書いておけば,telnetd が開始される./sdcard/home/.shinit が sh の初期化スクリプトなので,いろいろ alias とか書いとくと便利.

ただしユーザ名もパスワードもなくいきなり Android にログインできてしまい,3G 回線とかでつながってると外からログインしまくりなので,telnetd の -b <アドレス> で,バインドする if を WiFi (wlan0) のみに限定することで,とりあえず宅内 LAN からしか繋げないようにしとく.

これで,PC から WiFi 経由で Android につなげるようになった.vi とかも普通に使えて快適ヽ(´ー`)ノ