2015年6月23日火曜日

Windows タブレット使えないすぎワラタ

dynabook Tab S38/M が送料込み¥14,800 で売ってたので,中華タブを除けばこのスペックでは底値だろうと思い反射的にポチッとな.した後で,「どう考えても使い道がないのに,なんでこんなもの買ったんだろう?」と自問自答しつつ,今日届いたので早速使ってみた.

使いにくうwwwww
デスクトップアプリをソフトキーボード・タッチパネルだけで使うのはもはや苦行以外の何物でもないw 試しにこの記事を dynabook Tab で書き始めてみたけど,1行でめげたヽ(´ー`)ノ

メトロアプリだけを使うなら操作性は普通のタブレットなんだけど,Android に比べてアプリが圧倒的に少ないし,肝心の google サービスのネイティブアプリもなく常用にも向かないので,Android があれば存在価値なし.

Windows タブレットは,キーボード (カバー) 付きの 10inch くらいのタブレットを買って,ノーパソスタイルでデスクトップアプリを使うしか存在意義がないね.したがって,特に物理キーボードレスの 10インチ未満の Win タブレットはゴミ以外の何物でもないと理解した.

というわけで久々の逆大ヒットwww
しかしこれどう活用したもんか.VirtualBox いれて Android でも動かそうかな.

-----
後日追記:
Android-x86 4.4r2 を Live モードで起動してみたけど,WiFi を認識せず何もできずに玉砕.

2015年6月14日日曜日

データロガー 2号機プロジェクト (3)

今週末は車がなく(;´д⊂)ハードのデバッグができないので,しかたがないのでソフトのデバッグ・機能充実を図る.

前回の鈴鹿南では,データロガーと Android の Bluetooth 接続がプチプチ切れて困ったのだけど,どの段階でコケているのか現場では全くわからなかった.
実はデータロガーと Android は単に車両情報を通信しているだけではなく,マイコン側で実行するプログラムを Android から送信したりしているので,接続確立・ファームウェア送信が完了するまではログを表示するようにしてみた.

また,接続が切れると今まではエラー画面を表示して停止していたので,復旧のためにはいちいちピットインしなければならなかったけど,今回はデータロガー・Android 両方にウォッチドッグ的な処理を入れて,通信がおかしくなったら自動的に再接続を行うようにしてみた.

で,データロガー⇔Android 通信中におもむろにデータロガーをリセットしてみたのが上の画面.何回か TCP/IP 接続をリトライして,無事ファームウェア送信まで行って復帰できた.
いい感じヽ(´ー`)ノ

2015年6月9日火曜日

ARM ベース基板作成

CortexM3 基板用のベースボード作成中.
旧データロガー作成当時は PSP・Android と連携はしてなかったので,LED 表示を頑張ってて (配線も多い!),また長年に渡る増改築で RS-232C D-SUB コネクタが 2個とか意味のわからん状態になってるけど,新ロガーでは LED はバッサリと切り捨てて車両信号と UART のピンヘッダ,あとは電源関係のみ,と非常に簡素.
てか,今回の目的にこの CortexM3 基板は明らかにオーバースペックwww

で,ひとまず車速パルスだけ取り込めるようにして,とりあえず車につないでみた.
旧データロガーは FTO 時代の時に作って (もう 10年前の話...),FTO の時は車速パルスに酷いノイズが乗ってまとも計測できなかってので,ノイズフィルタ的な回路を組んでいた.
今回はめんどくさいので,そのまま信号をマイコンに突っ込んで行けるかどうか試してみる.

←その結果,ダメダメでした(;´д⊂)
あーやっぱノイズフィルタ回路組まなきゃダメか.スピードだけなら,ソフトのフィルタ処理でなんとかなる気がしないでもないけど,走行距離の計測は車速パルスの数を正確にカウントしなければならないので,うまいソフト処理が思いつかない.

何故か,まだ接続せずに浮いているタコメータ用のポートの方にクロストークでスピードパルスの信号が載って,しかもそっちの方が綺麗に車速がとれているというw 多分いい感じにノイズが減衰されてるんだろうな.

2015年6月3日水曜日

データロガー 2号機プロジェクト 復活

だいぶ前に買ったデザインウェーブマガジン付属の CortexM3 基板,おそらく AC 的な問題で SD カードにうまく書き込めなかったので,一気にやる気を無くして押入れに突っ込んだ.

そして 7年の時が流れたw

が,現データロガーの G センサーが壊れて,ARM 基板には G センサーが載っているので,データロガー 2号機プロジェクト復活.とりあえず SD カードにログ記録するのは諦めて,現データロガーと同じく,ARM⇔UART⇔WiFi⇔Android という経路で通信を行うことにした.

なのでまずは UART 通信できるところまで行かないと,printf デバッグも何もできない状態なのだが,ここでハマる.
STMicro のチップには Standard Peripheral Library なる C 言語のライブラリが用意されていて,それ自体は便利なんだろうけどドキュメントがなさすぎ.例えば UART 動かそうと思ったら GPIO の設定が必要で,GPIO 設定するためにはクロック供給の設定が必要とか,何重のトラップなんだよ.
もうちょっとサンプルとか充実してほしいなぁ.LED 1灯だけでデバッグする身にもなってくれw

とりあえず 1日がかりで,やっとこさ UART 通信ができるようになった.

2015年5月24日日曜日

Zenfone5 の Bluetooth がおかしい

去年の 11月くらいに Desire と GalaxyNote を売却してからはずっとサーキットには行ってなくて,今年の 4月にやっと行けたので気づかなかったんだけど,Zenfone5 と自作データロガーの Bluetooth 接続がプチプチ切れて,データロガーが使い物にならなかった.(;´д⊂)
Bluetooth モジュール自体が怪しいのでどっちが原因とは言いがたいけど,実は GPS ロガーのログを Bluetooth 経由でスマフォにダウンロードするアプリ (MtkUtility) でもプチプチ切れる (--# ので Zenfone5 の BT がおかしい,で確定かなぁ.

仕方がないので車載 Wi-Fi ルータ復活w データロガー本体 (ルネサス H8 16MHz) よりも Serial⇔Wi-Fi 機器 (MIPS 183MHz) のほうが豪華というわけのわからなさwww

と思ったら DealExtreme で神モジュール発見.Serial⇔Wi-Fi 変換モジュールがたったの ¥683!!! これは Bluetooth モジュールよりも遊べそう.

2015年5月23日土曜日

アジアンタイヤ ヤヴァイ

ミッション付近からのオイル漏れと,雁ヶ原行って以来のミッション付近からの異音修理のために,フヂエンさんに車預けてきた (のは GW 終わりの話).

オイル漏れの方はさくっとその場で直してもらった (さすが).エリでは使われていない,スピードメータケーブル取り出し口の O リングが劣化して,ミッションオイルが漏れていた模様.

異音の方は,自分では駆動系の異音かと思ったら,エンジンマウント周りが怪しいらしい.ということでエンジンマウントを交換したけど,まだ治りきっていないみたい.んー残念.

で,それよりもショッキングな連絡が.
「タイヤのリア内側のサイドウォールが裂けてます」
工エェェ(;゚Д゚)ェェエ工!?

どこかに当てたとか車体に接触したなんてことはなく,半年前に買って街乗りと雁が原に 2回行っただけ.たぶん今回の雁ヶ原でこうなったんだろうけど,知らずに高速で ぬあわkm/h とかで走ってたよ((((;゚д゚))))ガクガクブルブル
トレッド面剥離ならまだわからんでもないけど,何故にサイドウォールがこんな状態に? (一応空気圧管理はきっちりやっているつもりで,雁ヶ原に行く前も空気圧は問題なかった)

アジアンタイヤの安全性とか気にもしてなかったけど,これ見ちゃうとちょっと怖いなぁ.

2015年5月6日水曜日

プチ酷道ごっこ

GW シメは,ライトウェイトミッドシップ 2シータなマシンでプチ酷道ごっこw
針 TRS 近くの布目ダムを目指して,わざと山を突っ切るルートで行ってみた.エリだと,後ろがよく見えない中待避所まで鬼バックとか実行する根性は無いけど,この車なら離合も簡単.

というわけで,代車で借りている今がチャンスとばかりに酷道ごっこを楽しんでみようと.



と思ったけど,予想に反して走りやすい道が多かった.特にダム周辺の道は道幅も十分で車も信号も皆無なので,良いワインディンクロードなのては.

ダムはダムで意外とでかく,景色も綺麗だった.

この SMART,いわゆるロボタイズド MT で,このタイプの T/M の車には初めて乗った.マニュアルモードの反応は (トルコン AT 車に比べれば) 速く,トルコン AT の滑ってる感も無いので,トルコン AT 車ほどの拒否反応は感じなかった.

自分はトルコン AT は滅びたほうがいいと思ってる人だけど,これならまぁ足車としてなら有りかも.

2015年5月5日火曜日

二連続福井

5/1 に,おもむろに若狭湾に行ってみたくなったので,なにかいい道がないかと探してみたらありました「エンゼルライン」.

もともと有料道路だったのが無料開放されたみたいで,頂上からの見晴らしも良さそうということで Go.計画では福井入りしてからコンビニでなにか買って頂上でお昼を食う,というプランだったのだが,びっくりするくらいコンビニがないwww 福井の山をナメてはいけない.

道自体は砂埃が多かったが広くて走りやすかった.が頂上に行っても売店等も何もなく,GW なのに人も少ない (自分含めて車・バイク 3台).まぁそれだけ空いていて走りやすいということで.

結局頂上でお昼食いそびれてひもじい思いをしたので,この後琵琶湖パークウェイに行ってそこで食べた.
5/3 は毎年恒例になりつつある,いつものメンバーで雁ヶ原に Go!
今日のコースは超上級者向きで爽快感がない非常に練習しがいがあるコースw
鈴鹿南ではあまり実感できなかった LSD も,ジムカではアクセルターンっぽいことが大分やりやすくなった.

帰りにトランスミッション付近から異音がしてきたけど,さて今度はどこが壊れたのか…
(;´д⊂)

2015年5月4日月曜日

va_list を自前で構築する

C 言語で,可変引数の関数から (与えられた可変引数をそのまま渡して) vprintf を呼ぶのは簡単だけど,そうじゃない場合,例えば何か配列の値を使って vprintf を呼びたいような場合,無の状態から va_list を生成するのが標準の C の範疇では出来ないみたい.

しかたがないので,プラットフォーム依存になるだろうけど,Microsoft VisualC++ (x86) では以下のようにして出来た.
#include <stdio.h>
#include <stdarg.h>

int main( void ){
    va_list vargs;
    
    int args[] = {
        10,
        0, 0,  // double 用領域
    };
    
    *( double *)( &args[ 1 ]) = 1.5;
    
    va_start( vargs, args[ -1 ] );
    vprintf( "hoge %d %f\n", vargs );
    va_end( vargs );
    
    return 0;
}

---- 実行結果 ----
hoge 10 1.5

要は,va_list は普通は CPU のスタック領域に積まれた引数のアドレスを指しているけど,int args[] に無理やりスタックイメージと同じものを作って,va_list でそこを指すようにすれば良い.通常 va_start の第 2引数に渡すのは format 文字列,すなわち %d とかで使う数値が入っているアドレスの 4バイト前なので,ここでも 4バイト前を指すように args[ -1 ] を指定する.
double 型は 8バイトアライメントに配置しなくても良いみたい.
va_end が何をしてるかわからんけど,#define を見る限りなくてもいいみたい.

2015年4月25日土曜日

で,肝心の LSD はどうだったのかというと.

前回の続き.

その前に買ったモノについて言うと,現状手に入るローバー Eg 用で一番安かった Quaife の ヘリカル式 LSD を購入.多板クラッチ式は定期的にオーバーホールが必要? とか聞くので,そんなことできないので,ヘリカル式であるこれを選んだのもそれが理由の一つ.

で,LSD は車の性格が激変するとか聞いていたが,果たしてウン十万投資した効果が鈴鹿南で発揮されたのかどうかというと.

自分では↓以外,正直違いが感じられなかったwww
もともと LSD を入れようと思ったのは,鈴鹿南の最終コーナーで,イン側のタイヤが空転して前に進まないのを直したかったからなのだが,そこはさすがに直っていた.
じゃあそれがタイムに反映されたのか? というと,タイムはベストの 1秒落ち.
てか,初めて鈴鹿南走った時のタイムが未だに破れないってどういうことなのwww

あとは LSD のせいなのかどうなのかわからないけど,やたらアクセル ON でケツが振られるようになった (単にタイヤが終わっただけかも).

鈍感な自分には過ぎた買い物でした orz
あとは雁ヶ原で何か違いを体験できるか…