2018/5/12(SAT) 【後方排気】SI:シフトインジケータを空想
ということで
各ギアの速度とエンジン回転数の関係のグラフ
よくよく考えればどのギアでも
速度が 0 km/hなら 0 rpmなので
原点を通る1次関数なんですね
y = ax という感じで
それぞれのギアでの傾き a を算出してみると
小数点は無視して四捨五入すると
各ギアのグラフの関数は以下のようになる

 1速:y = 156x
 2速:y = 113x
 3速:y = 85x
 4速:y = 73x
 5速:y = 64x
 6速:y = 58x
        y:エンジン回転数(rpm) x:速度(km/h)

というところまでわかった
フォト

では、プログラムでどのように何速のギアかをもとめるかというと
速度(km/h)とエンジン回転数(rpm)の関係から
それぞれをまず取得し(取得の方法はのちほど)
で以下の値を求める

(エンジン回転数) ÷ (速度)

これが、上記の傾きを示しているので
比較して、どの値に一致するか?
または近い値かを求めることにより何速かを決定する。
まぁ一発では出せないけど条件判断6個でいけそうである。
まぁそもそも回転数が低かったり、速度が低かったら
正確な値がもとめられないかもしれないけど
そこは目をつぶりましょう。
本来の目的は幻の7速に入れないためなので。

で、ざっくり回路を空想
フォト

7セグへの出力はいつもどおり
ホールICで、前輪に磁石つけて速度を取得。
タコメーターからはエンジン回転のパルスを受け取る
2気筒なのにパラレルで位相180°なので
2倍のパルスとなっているのかな?
フォト

実車にて測定したいけど
アッパーカウル外すのが面倒なんで・・・次の機会で・・・

ちなみに余談ですが
3XVは2つイグニッションコイルがついてます。
フォト

そのうち片方だけからタコメーターに入っています。
つまり回転数と同じパルスがタコメーターに入っています。
一昔前に後方排気に3XVのタコメーターを
移植するのが流行りましたが
その時は、タコメーターの抵抗を変更するとか
そんなので値を合わせていましたが
単に、パルスを半分にしてあげれば、そのまんま使えるんじゃ?
というネタを先日あおい人としたので、ちょっとだけ調べてみた。
単にと書いたけど抵抗を変更した方が楽か?
 #ちなみにその辺の移植ネタは詳しくは知らないのです・・・
 #別に3000rpm以下がなくても不自由しないので・・・(^^;;;

話はそれましたが回路の話に戻ります。
ニュートラルランプに信号ももらいます。
単にニュートラルかどうかの判断に使うだけですが・・・

速度とエンジン回転数から何速か算出して
7セグへと出力します。

という感じです。
で、速度算出の方法ですが
前輪のサイズは
110/70 R17 なので外周を算出すると
(( 110 mm × 70% )×2 + 17 inch × 25.4 mm ) × 3.1415926 ≒ 1840 mm
つまり1秒間にタイヤが1周すると
(1840 mm × 0.000001 ) km / ( 1 / 3600 ) h = 6.625241802 km/h
う〜む。これが最小分解能ですかね?
タイマーで1秒毎に上記の計算をさせればいいですかね?
リアルタイム性がちょっと気になるけど・・・
まぁスイッチ式じゃないから、しかたないよね。
まずはこれで実装してみますかね?