Top > digital-speed-meter
HTML convert time to 0.282 sec.


プログラムソース公開のデジタルスピードメータ、タコメータ、燃費計、車速パルス変換機(パルス分周機、パルス逓倍機)の自作

Last-modified: 2016-11-07 (月) 05:49:10
...
...

(2011-12-3)ブレッドボード上に作る格安PICライタのページをご利用下さい。


初出 2010-12-12
最終更新 2015-11-22
digital-speed-meter_20_s.jpg
クリックすると大きな画像で表示されます
写真の左が直視式の作例、右が反射式の作例です。
ちなみに左は [tip]燃費計、右は [tip]スピードメータ(ファームウェア入れ替えで時により [tip]タコメータ)です。
どちらも ビット・トレード・ワン デジタルスピードメータをベースにしています。
左は分割基板タイプ、右は標準の一体基板タイプです。実を言うと、左の方は標準の一体基板をPカッターを用いて自分で分割基板風に切断したもの、右の方は分割基板を16本のジャンパ線で繋いだものです。
 

一台の車に永井電子のスピードモニター・プラス No.4015を使っているのですが、もう一台の車にも同様なものを付けたくなりました。しかし市販品は改造が出来ないし値も張るので、自作することにしました。

 

自作といっても一から自作するとファームウェアのソースやプリント基板を作るのが大変です。最近、ちょうどいいキットが発売されましたのでそれを購入することにしました。ファームウェアがオープンソース(MITライセンスに似た独自ライセンス※)なので自分の好きなように改造できます。自動車関係のマイコン工作というとアマチュア工作でも何故かソース非公開のものが多い中、この会社はこのようなサイトを運営していてオープンソースに非常に理解を持っておられるようです。

 

 ※:ライセンス条項はここに掲示されています。ポイントは以下の2点となります。

  • どの様に使ってもOK。(商用利用も可)
  • この設計資料を用いて行った行為に対しては無保証。
 

あと、ページ後半では車速パルスの変換をいろいろ実践してみています。簡単に製作できて使用機会も多いのが車速パルス分周機です。意図したものではないんですが、今のところこのページで扱っているマイコンは全てPICになっています。

 

ソース公開のビット・トレード・ワン デジタルスピードメータ

ビット・トレード・ワン デジタルスピードメータ
冒頭の写真に写ってるものがそれです。
価格は3800円(一体基板キット),4200円(分割基板キット)と、多少張りますが、市販の完成品の数分の一ですし、7セグの配線を自作するのは大変なので、冷静になって考えるとやはり圧倒的に安いと言えると思います。
digital-speed-meter_21_s.jpgdigital-speed-meter_22_s.jpg
クリックすると大きな画像で表示されます
左が冒頭の反射式の作例の表示を実車で撮影したもの、右は直視式の表示を実車で撮影したものです。共に夜間用の光量を絞ったモードです。直視式の方はキット標準の制限抵抗では全体的に明るすぎるのでカスタマイズして暗くしています。

 

基本的には私は中のファームウェアの改造に興味がある方で、車への実装の出来とかは全然拘っていません。しかし私なりに実用本位の作例を製作しました。見栄えのいい実装ならオートメカニックでのこの製品の実装例(2011年1月号2011年2月号)などがより参考になると思います。またリファレンス(?)として、一体タイプのこのような製作例が紹介されています。

 

digital-speed-meter_23_s.jpg
クリックすると大きな画像で表示されます
反射式の作例です。反射板は売り切れの月食グラスの代用として買ってあった、ポリカ製の溶接面プレートです。角度が調節できるように薄いアルミ板を介してケースに取り付けてあります。しかし上の張り出し部分の角度は本当はもっと上向きに(水平近辺に)したいところです。実はわりと透過率があるので反対側に黒のカッティングシートを貼ってあります。

 

digital-speed-meter_24_s.jpg
クリックすると大きな画像で表示されます
反射式の作例です。ケース上面には光を吸収・散乱させるスポンジ(エチレンプロピレンジエンゴムのすべりどめシート)を貼ってあります。ウインドスクリーンのすぐそば(ダッシュボード上面の前方)等の意図せぬ有害な反射が非常に発生し易い位置に設置しても全く問題がない仕様を実現しています。中には市販車のセンターコンソールの"純正の"インジケータ類でさえ、夜間にフロントウインドウ内側に有害な反射を生じるものがあったりしますが、それらよりもはるかに厳しい基準で製作しています。ケースはテイシンのTB-56です。

 

digital-speed-meter_25_s.jpg
クリックすると大きな画像で表示されます
直視式の作例です。反射式の作例と同じく、フロントウインドウの直下等の意図せぬ反射の生じやすい厳しい位置に設置しても全く問題を生じない仕様です。ケースはテイシンのTB-56です。フードは100円ショップのPP製ファイルの表紙で製作しています。この手法は他にも様々使えると思います(カメラのフード製作とか)。(2012-1-14追記)早速製作例を見つけました。ちなみに私は強度を重視して、カッターの峰で筋をつけた方を内側にして折り曲げています。外側に白い折り曲げ痕が出るので見栄えは良くないです。実は他にも工作経験を持っていまして、そちらでは何度も曲げ伸ばしするところなんかはカッターで筋をつけるのでなく、オリジナルのA4ファイルの折り曲げ箇所をそのまま生かすことで実現させています。あと細かな注意点としては、販売されているA4ファイルの一部に少し固めのPPを用いたものがあります。こういうのは割れやすいのでこの用途には使えません。具体的な数値で示すことはできませんが気をつけていればわかると思います。

 

digital-speed-meter_26_s.jpg
クリックすると大きな画像で表示されます
もちろんケース蓋と一体になったフードは簡単に取り外せます。仮に反射式の作例と同様に、ケース上面に反射を防ぐスポンジ等を貼れば、こんな大仰なフードでなく、ごく短いフードでも事足りると思います。

キットの紹介

分割されているタイプの基板をジャンパで繋いだ後の状態です。クリックすると大きな画像で表示されます
digital-speed-meter_2_s.jpg
キットの基板は7セグLEDの表示部とその他の部分とを切り離せる設計になっています。基板が切り離されていない標準のキット(3800円)と、最初から切り離されているキット(4200円)があります。Pカッターで(リューターを持ってなくても)自分で切断することもできます。私は最初に切り離されているタイプを購入し、メッキ線で繋げたりまた切り離したりした挙句、再度繋げて現在使用しています。2回目に購入したのは標準の繋いだままのキットで、それを自分でPカッターで切断して(燃費計)として使用しています。

 

基板だけを購入(一体タイプの基板で2000円)することもできます。このキットは一般的な部品だけを使用しているので、電子工作を趣味とされている方であれば大半の部品を既に持っていることも珍しくないと思います。基板だけを購入する場合の注意点を私なりに2つ挙げておきます。(1)(当然ですが)PIC18F2420に書き込める何らかのPICライタが必ず必要です。(2)必要な抵抗は全て1/6Wタイプです。1/4Wの標準タイプは大きすぎて使えません(まあ写真を見れば言われなくても気付くと思いますが)。

 

おまけ機能として、基板上のO+端子には入力パルスを1/2に分周したパルスがデフォルトで出力されています。つまりこのデジタルスピードメータは標準の状態でパルス分周機としても使用することができます。このO+端子はジャンパ切替で5V,12V.オープンコレクタの出力に対応できます。また分周比は、もちろんファームウェア書き換えで変更することができます。

 

パルス入力ポートは広い範囲の電圧に対応していて、乗用車もバイクも利用することができます。私がこのデジタルスピードメータを薦めるのは、やはり商品なだけに、こうした細かい箇所に対応がおこなわれているからという面が大きいです。一から自作してここまで対応するのは大変です。

 

正式公開版ファームウェアのソースはこちらからダウンロード出来ます。
書き込みには宜しければブレッドボード上に作る格安PICライタのページをご利用下さい。

クルージング補助(お助け)機能を追加

(2011-12-3)
緑のLEDを追加しました。クルージング補助機能を追加する為です。オートクルーズ機能がない車に「人力によるオートクルーズ機能」を追加するわけです。視線は前方のまま、LEDの点滅で速度不足・速度超過を知るわけです。

 

写真のようにトグルスイッチを上側に倒すと、クルージング・エイド・モードに入り、速度が90km/h未満になると緑LEDが点滅するようになります。速度が100km/hを超えた場合には(元々設置されている)赤LEDの方が点滅します。
digital-speed-meter_11_s.jpg
クリックすると大きな画像で表示されます

 

表示部に緑のLEDを追加するにあたり、メイン基板の方は無改造です。ただケーブルを接続しただけです。
digital-speed-meter_12_s.jpg
クリックすると大きな画像で表示されます
基板に元々設けられているO+ポートとO-ポートを利用しました。この製品のO+,O-ポートからはデフォルト状態で入力パルスを1/2分周したパルスが出力される仕様となっています。このポートを緑LED用に用途変更しただけです。
以前から私はここにピンヘッダを取り付けてありました。ここから表示部の方へケーブルを伸ばしました。JP5は2-3側に設定し、O+から5Vを出力する状態にしてあります。O+ポートには元々270Ωの抵抗も接続されていますので緑LEDはO+ポートとO-ポートから追加部品なしにストレートに接続しています。

 

このファームウェア改造は超お手軽です。
書き込みには宜しければブレッドボード上に作る格安PICライタのページをご利用下さい。

(自由にプログラムが書き換えられるので)距離計機能を追加

ハードは完全に素組みのまま、ファームウェアだけの修正で走行距離計機能を追加しました。実は走行距離計が欲しいわけではなく、高速道路のキロポストを利用して速度計機能を実際に合わせて補正し、さらには純正速度計がどれほど実際と誤差があるのかを調べることが真の目的です。標準ファームウェアでは最高速度表示モードが設けられているところに、代わりに距離計機能を組み込みました。トグルスイッチを一番上にすると最小単位が100mの距離計モードに入ります。

 
  • デジタルスピードメータの走行距離計追加版プログラム(ファームウェア):改変したmain.cのみ(※元にしたバージョンはVer012)
    ダウンロード filedigital_speed_meter_ver012kai_plus_odometer.zip  2013-2-10更新
 

デジタルスピードメータのVer012版はこちらからダウンロードできます。
http://a-desk.jp/project/car/spd_mtr/spd_mtr_v12_src.zip

 

(2013-2-21追記)最近、燃費計を開発しているのですが、燃費計で実装した電源断時の自動ステータス保存機能をこの走行距離計にバックポートしたいところです。やる気のある方は燃費計のソースを参考に実装してみて下さい。

測った距離を元に誤差を算定し、速度計機能を補正

作業としてはこのあたりのリンクから「デジタルスピードメータ・パラメータ算出シート.xls」をダウンロードし、ソース中の定数定義部の補正値を求め、その値をソースに書き込み、コンパイルし直すだけです。本機自体に補正値入力インターフェース(ボタン等を追加して)を設けることも可能でしょう。誰かがやってくれることを期待しています。

 

この基板には予備の入出力ポートが用意されています。ICSPのポートも含めるとかなりの数に上ります。なのでやろうと思えば入力インターフェースを追加したり、他の機器の制御がおこなえます。またO+端子をデフォルトの分周以外の用途に利用することも可能です。

デジタルスピードメータをタコメータ(エンジン回転数計)化するプログラム

7セグは3桁しかないのですが、最低表示単位が10rpmなので9990rpmまで表示できますし、1万rpmを超えても下3桁は表示されるので、一応1万5千rpmでも役に立ちます。
ジャンパ切替で(クランクシャフト1回転あたり)1倍速パルスから6倍速パルスまで対応できます。

 

書き込みには宜しければブレッドボード上に作る格安PICライタのページをご利用下さい。

 

※デジタルスピードメータのVer012はこちらからダウンロードできます。
http://a-desk.jp/project/car/spd_mtr/spd_mtr_v12_src.zip

 

パルス数の設定が間違っていると、CCP計測とINT計測の切替回転数がアイドリング回転数と一致してしまい、アイドリング表示が不安定になる場合があります。そのあたりは標準版のデジタルスピードメータ・パラメータ算出シート.xls(ビット・トレード・ワンのサイトから)を使って確かめて下さい。このファイルは細かいカスタマイズもおこなう場合にも必要です。

デジタルスピードメータを分周専用機化するプログラム

デジタルスピードメータには標準で分周機能が付いていますが、あくまでおまけ機能なのでデフォルトの1/2以外の分周比が必要な場合はプログラムをリコンパイルする必要があります。このプログラムで分周専用機化すると、ジャンパ設定だけで分周比を切り替えることができます。その代わり7セグLEDの表示機能はありません。また、7セグ, R1, R2, R3, R4, R5, R6, R7, R18, R19, R20, R21, T1, T2, T3, DIS0, トグルスイッチ、の各部品は取り付ける必要がありません。

 

デジタルスピードメータのハードを生かして、車速パルス分周専用機化するプログラム(アセンブラ版ソース)
ダウンロード file2420pulse_devider.asm  2010-11-11更新
デジタルスピードメータのハードを生かして、車速パルス分周専用機化するプログラム(アセンブラ版hex)
ダウンロード file2420pulse_devider.hex  2010-11-11更新
デジタルスピードメータのハードを生かして、車速パルス分周専用機化するプログラム(c言語版ソース)
ダウンロード file2420_c_pulse_devider.c  2012-5-24更新 C18コンパイラ3.37以降用に差し替えました
デジタルスピードメータのハードを生かして、車速パルス分周専用機化するプログラム(c言語版hex)
ダウンロード file2420_c_pulse_devider.hex  2012-5-24更新

 

アセンブラ版とc言語版の動作仕様は全く同じです。
JP1とJP2の組み合わせにより分周比を5種類より選択できます。

分周のタイプJP1JP2
1/2の分周1-2NC
1/4の分周NC2-3
1/8の分周2-32-3
1/16の分周1-22-3
1/20の分周NC1-2

その他のジャンパ設定時はデフォルトの1/2分周となります。

 

書き込みには宜しければブレッドボード上に作る格安PICライタのページをご利用下さい。

水晶発振子・追加

ビット・トレード・ワン デジタルスピードメータキットを購入された方の中に「あれっ、水晶発振子使ってないの?」と思われた方もいるかもしれません。しかし最近のマイコンは内蔵RC発振の精度もなかなかに高く、水晶発振子を使わなくても誤差は1%以内に収まります。従って通常の用途では水晶発振子レスで全然問題ない筈です。もちろん、大きく数値を水増し表示するのが通例の純正スピードメータとは比べものにならないほど正確です。その上、速度計用途なら他の誤差の要因(タイヤ径等)から受ける影響が大きいので、いくら正確な水晶発振子を使おうとも、補正作業なしでは決して正確な数値は得られません。従って水晶発振子を使う意味はほんとにかなり小さいと言えるでしょう。

 

しかし、実は8MHz駆動の純正ビット・トレード・ワン デジタルスピードメータは、日本車だと殆ど関係ないのですが、20(倍)パルスとか25(倍)パルス等の特殊パルスの車で用いた場合、超高速域の精度が多少不足します。この欠点を解消する為に水晶発振子を使う意味が生じます。

 

もう一つ、タコメータ用途で使用する場合にも水晶発振子を使う意味はかなり大きくなります。このデジタルスピードメータは、簡単な改造で水晶発振子を取り付けることができます。

 

取り付ける水晶発振子の周波数は16〜20MHzくらいが適当なのではないでしょうか。私の作例では16.6MHzのものを使用しています。標準版のデジタルスピードメータ・パラメータ算出シート.xls(ビット・トレード・ワンのサイトから)を用いれば好きな周波数用のパラメータを求めることが出来ます。

 

digital-speed-meter_17_s.jpg
クリックすると大きな画像で表示されます
JP3とJP4とシルク印刷されている位置に水晶発振子を取り付けています。しかし私の場合、純正ハードに対する改造ファームウェアを提供している関係で、(8MHz動作の)純正ファームウェアも動かせるように、(オリジナルな位置の)ジャンパ3用とジャンパ4用のピンヘッダは残したままです。そのピンヘッダを流用することで水晶発振子は着脱式です。ジャンパ3とジャンパ4は写真下側の少さな追加基板(ジャンパ移設用基板)上に移しています。ジャンパ3,4はLED表示の上下と回転を決定するだけなので、どうせファームウェアの書き換えが必要な水晶発振子追加の改造をおこなう人の殆どがジャンパ3,4の移設をおこなわず、ジャンパ3,4を廃止すると思いますが、ここでは作例なので生真面目にジャンパ3,4を移設しています。

 

水晶発振子追加の改造(ハード面)

  • R30,R31の部分をジャンパ線に変更する
  • 下の示したようなジャンパ移設用基板を作り、基板上のRE3,RB6,RB7,G1とシルク印刷されている4連孔のところに取り付ける(上に書いたように、ジャンパ3,4が必要ない人は省略)
  • 元のジャンパ3用とジャンパ4用のそれぞれの中央ピンの孔に水晶発振子の足をそれぞれ半田付けする
  • 元のジャンパ3用とジャンパ4用のそれぞれの基板の中央側の孔と水晶発振子の足との間に15〜23ピコFのコンデンサを半田付けする。(基板の縁側の2つの孔は未使用となります)
 

ジャンパ移設用基板
こんなものを作って基板上のRE3,RB6,RB7,G1とシルク印刷されている4連孔のところに取り付けるとジャンパになります。ここではジャンパ3とジャンパ4の代わりとしています。元のジャンパ3、ジャンパ4と使い方・向きは全く同じです。位置が並行移動しただけです。電流制限抵抗を省略していますが、もちろん全く問題ありません。ただ新しい位置のジャンパ3、ジャンパ4はICSP用のピンと重なっているので、ICSP時にはジャンパを外す必要があります。
digital-speed-meter_14_s.jpg
クリックすると大きな画像で表示されます

 

digital-speed-meter_18_s.jpg
クリックすると大きな画像で表示されます
掲載の意味は殆どないですが一応ケースの加工も載せておきます。

 

digital-speed-meter_19_s.jpg
クリックすると大きな画像で表示されます
私の場合、水晶発振子はこのようにして着脱できるようにしています。普通に改造する場合はこんな風にする必要はありません。ピンヘッダを取り付けずに、水晶発振子やコンデンサを基板に直付けすればいいと思います。

 

水晶発振子追加の改造(ソフト面)
上に書いたようにジャンパ3,4の移設を省略する人は、ソースコード:main.cの該当部分に、下のようにポート名の代わりに固定値を書き込んで下さい。1だと各ジャンパの1-2を接続した場合と等価で、0だと各ジャンパの2-3を接続した場合と等価です。

#define PORT_DISP_HUD		1	//HUD表示の設定ピン(JP4)
#define PORT_DISP_REVERSE	1	//180度反転表示の設定ピン(JP3)


単なる水晶発振子追加版用
ダウンロード filedigital_speed_meter_ver012kai_plus_xtal.zip  2013-2-10更新

 

距離計機能追加版用
ダウンロード filedigital_speed_meter_ver012kai_plus_xtal_odo.zip  2013-2-10更新

 

タコメータ化版用
ダウンロード filedigital_speed_meter_ver012kai_plus_xtal_tacho.zip  2013-2-10更新

 

三種共通
ダウンロード file16.6MHz版.デジタルスピードメータ・パラメータ算出シート.xls  2012-5-23新規公開 デフォルト状態ではなく、16.6MHz駆動に対応させた後の状態です。
ダウンロード 標準版のデジタルスピードメータ・パラメータ算出シート.xls(ビット・トレード・ワンのサイトから)

このシートは、以下に挙げたことをおこなう為には必須です。

  • 測った走行距離から速度計を補正
  • 測った走行距離から距離計を補正
  • 標準で未対応な特殊なパルス倍数に対応する
  • 水晶発振子を追加して高速駆動する
  • FILT_FACTORの値を変更して、表示の滑らかさと追従性のバランスを変更する
    ※FILT_FACTORはソース内部の定数です。
    因みに上で公開しているソースではタコメータ版でもFILT_FACTORの値はデフォルトの64のままですが、エンジンのレスポンスが鋭い2輪の場合にはFILT_FACTORは32とか16に変更した方がいいかも?と思っています。

燃費計化

(2013-2-10初出)
燃費計バージョンを作成しました。
仕様はほぼ計画時のこちらと同じです。
異なる点が1箇所あります。「開弁率(%)」ではなく「開弁時間(ms)」となっています。あと、当初から予想していたとおりですが、ステータス保存の為に電源カット時の電源降下を遅くする為に1000μFのコンデンサと10Ω・2Wの金属抵抗を追加しています。

 

リセットするとその時点での燃費率、燃料消費量、走行距離が保存され、後から参照できるようになっています。

 

タクトSWが1個なので、普通はSWを押す度にループ的にモードが切り替わる仕様にするところですが、自作モノなので長押し時間の長さによってモードが切り替わる変態仕様になっています。もっとモード毎の時間差を小さくした方が面白いと考えているくらいです。

 

ダウンロード filefuel-consumption-gauge.main.c  2013-2-10初出、2013-2-18更新
デジタルスピードメータのソースツリーの中のmain.cをこのファイルに差し替えてコンパイルして下さい。
999.9kmまで計測できる仕様です。

 

瞬間燃費率をどう定義付けるか?まだ試行錯誤中です。現在の仕様では直前2.5秒間の燃費率を0.4秒毎に更新しています。この仕様については好みがわかれるところだと思います。しかし、私としてはこの仕様をかなり気に入っています。表示値が2km/リットルから40km/リットルあたりの範囲を外れないし、定速走行時にどれくらい燃費が伸びるのかもばっちり把握できます。

 

燃費率、瞬間燃費率以外の燃費率の把握手法が必要かどうか?意見をお寄せ下さい。たとえば直近5分間燃費とか。

(燃費計化)ハードの改造内容

裏面
digital-speed-meter_27_s.jpg
クリックすると作業時参照用の巨大な画像が表示されます

 

表面
digital-speed-meter_28_s.jpg
クリックすると作業時参照用の巨大な画像が表示されます

 
  • ☆純然たる燃費計化の為の改造内容
    • ☆インジェクターパルスを純正本来仕様での車速パルス入力部に接続
      • ☆(外部からの)インジェクターパルスをI+(純正本来の仕様だと車速パルスを接続する端子)に接続
  • ☆トコロテン式の役割入れ替え
    RC0(Pin11):車速パルス入力(未使用) → DIS0LED出力
    RC1(Pin12):DISP0LED出力 → インジェクターパルス入力(CCP2入力)
    • ☆R15,R18を取り付けない
    • ☆シルクR15部の右側とシルクR18部の右側を1kΩの抵抗でジャンプ接続
    • ☆シルクR15部の左側とシルクR18部の左側を1kΩ(270Ωからカスタマイズ)の抵抗でジャンプ接続
  • ☆車速パルスをINT0(Pin21)(のみ)に直接入力(トヨタ車等の5V車速パルス車ならでは)
    • ☆R12を取り付けない
    • ☆(外部からの)車速パルスをP3(純正本来の仕様だと通常は未使用の端子)に接続
    • ☆P3とシルクR12部の上側をジャンプ接続
  • ☆電源電圧降下時に内部数値をEEPROMに保存(JP1は廃止)
    • ☆R23,R29(JP1用)を取り付けない
    • ☆シルクJP1部の中央の孔に電源電圧を1/4程度に分圧したものをジャンプ接続(10kΩと30kΩで分圧)
  • ☆分周出力(O+,O-)部をタクトSW入力に
    • ☆シルクR9部: 1kΩ → メッキ線のみ
    • ☆シルクJP5部: 5V側に固定=シルク2の孔とシルク3の孔をメッキ線で接続
    • ☆シルクT5部: 左側の孔と中央の孔をメッキ線で接続
  • [tip]☆エンジンを切った際の自動ステータス保存を可能にするために、電源断時の電圧降下を緩やかにすることが目的の大容量電解コンデンサを電源ラインに追加
    • [tip]☆電源ラインとGNDの間に1000uFの電解コンデンサを接続
    • [tip]☆大容量コンデンサ追加による副作用(突入電流)緩和の為に電解コンデンサと基板入力部の間に10Ωの金属抵抗を追加
  • ☆ある程度燃費計化に関係のある改造内容
    • ☆駆動周波数向上の為、セラミック振動子の追加(=JP3,JP4の廃止)
      • ☆シルクR30部: 1kΩ → メッキ線のみ
      • ☆シルクR31部: 1kΩ → メッキ線のみ
      • ☆シルクJP3,JP4部の基板中央側の孔=シルク3の孔とシルク3の孔をメッキ線で接続( [tip]両方GND)
      • ☆シルクJP3,JP4部に写真のようにセラミック振動子を取り付け( [tip]中央のピンはシルク3側に接続)
  • ☆燃費計化にあまり関係のない改造(カスタマイズ)内容
    • ☆フード付きの直視式で使用する為、LEDの光量を絞る
      • ☆シルクR1〜R8部: 100Ω → 1kΩ
      • ☆シルクR15部の左側とシルクR18部の左側を繋ぐ抵抗値として270Ωではなく1kΩを使う(上記参照)
  • ☆トグルSWを倒して取り付ける
    • ☆0.8mmメッキ線を使用
  • ☆3端子レギュレータの高さを抑える
    • ☆写真のように足を折り曲げ
  • ☆電解コンデンサの高さを抑える
    • ☆C3,C4を50V・10μFから35V・10μFに交換
  • ☆POWLEDを取り付けない
    • ☆POWLED,R10を取り付けない

[tip]は計画時に記述していなかった内容

(私の)反射式作例の現在の改造内容

  • 16.6MHz水晶追加(ケース上面を平らにしたくなったので、上記の取り外し式でなく、基板にハンダ付け)、
    ジャンパ3,ジャンパ4廃止(同じくケース上面を平らにしたくなったので、移設基板は取り外した)
    • シルクR30部: 1kΩ → メッキ線のみ
    • シルクR31部: 1kΩ → メッキ線のみ
    • シルクJP3,JP4部の基板中央側の孔=シルク3の孔とシルク3の孔をメッキ線で接続
    • シルクJP3,JP4部に写真のようにセラミック振動子を取り付け
  • DISP0LED以外にもうひとつ汎用LEDが欲しかったので
    • O+,O-にLEDを接続(デフォルトのO+,O-の機能:分周パルス出力は廃止)
  • その他
    • POWERLEDは取り付けない(ダッシュボード上面では僅かな光の漏れも邪魔)
    • 電解コンデンサを小型の物に交換
      • C3,C4を50V・10μFから35V・10μFに交換
    • 3端子レギュレータを小型の物に交換

車速パルスに関する一般的な情報

各社の車速パルスの仕様

実は特には調べていません。

  • パルスの逓倍数(いわゆる何パルスと表現される仕様)については、
    • 日本車はほぼ2パルスか4パルスに限られるようです。
    • しかし一部の日産車には8パルスや16パルスのものがあるそうです。該当する車に一般的な2パルスや4パルスにしか対応していないスピードメータやカーナビを取り付ける際は車速パルス分周機が必要となります。この製品も車速パルス分周機として使えます(というか、下で触れているように広い入出力電圧に対応できるのでこんな自作よりお薦めです)。
    • 欧州車だと「40/気筒数」や「20/気筒数」パルスがあるようです(数値はJIS D5601車速パルスを基準としてです。JIS D5601は全くの日本独自規格というわけではありません)。20/3(=40/6)パルス、5(=20/4)パルスの存在は実際に聞いたことがあります。
 
  • パルスの電圧
    • 5Vの場合と12Vの場合があります。なのでこの製品では入力・出力共に5V・12Vに両対応しています。

車速or回転数パルス、入出力ともに5V・12Vに両対応する回路

今まで問い合わせが多かったので専用コーナーを設けておきます。
digital-speed-meter_13_s.png
クリックすると大きな画像で表示されます
この回路はこの製品で使われている回路です。
乗用車では車速・回転数パルスともに5Vが一般的ですが、一部の軽自動車やバイク関係では12Vが使われていることがあるようです。

 

オープンコレクタタイプのセンサが使われている一部の車種の場合は上の入力回路に修正が必要です。

  • 47kΩの抵抗を1kΩに交換します。
  • 回路図の47kΩの文字のあたりを新たな47kΩの抵抗を介して5V電源に接続します。

車速パルス周波数の計算式

digital-speed-meter_15_s.png
たとえば時速60km/h・4パルスの場合の周波数は約42.5Hz、一つのパルスの時間は約23.5msとなります。

車速パルス変換機

車速パルス分周機

クリックすると大きな画像で表示されます
digital-speed-meter_3_s.jpg

たとえば4パルスのクルマに2パルスにしか対応していない機器(メーター等)を取り付ける場合等に必要になります。16パルスを4パルスに変換する場合にも利用できます。もちろんこのような場合にも利用できます。この作例ではパルスを受ける機器の為に12Vをスルーして出力しています。もちろんこれは殆どの環境では必要ないでしょう。

 

クリックすると大きな画像で表示されます
digital-speed-meter_4_s.jpg
スカスカの状態ですが、これで完成品です。サルベージした部品とか部品箱の長期在庫品を主に使っています。実際に使用する際は絶縁のPPシートで巻いています。

 

クリックすると大きな画像で表示されます
digital-speed-meter_5_s.jpg
あまりに簡単な回路なので回路図を書かずに作成しました。一切余分なものが付いてない回路ですが、自動車の場合はこれで問題ないと思います。しかし例外も様々あるので出来ればパルス入出力回路はこのようにすることをお薦めします。例外的に一部のパルス発生装置から直にパルスを受ける場合にはこの画像(GoogleDocsにあるPNG画像ファイルです)のような回路を追加する必要があるかもしれません。まあ普通は心配する必要はありません。補足情報がすぐ下の説明の中にあります。あと、製品の場合にはさらにノイズキラーがついていたりします。写真ではソケットの中に10kΩのプルアップ抵抗が付いていますが、付ける必要のない環境の方が多いようです。付ける必要がない場合に付けると逆に純正スピードメータが動かなくなる等の障害が生じます(外せば正常に戻ります)。あくまで推定ですが最近の車だとまず付けなくてもいい(付けてはいけない)んじゃないかと思います。

 

パルスを1/2,1/4,1/6,1/8,1/10 に分周するプログラム(PIC12F683用)
ダウンロード filepulse-devider_by_external_interrupt.asm ←こっちが正式版
余談ですが、マイコンにキャリーなしローテート命令があるならそれに適したケースです。

 

書き込みには宜しければブレッドボード上に作る格安PICライタのページをご利用下さい。

 

正確な矩形パルスを1/3,1/5,1/7,1/9 に分周するプログラム(PIC12F683用。実際には上と同様な1/偶数の分周も可能です)
ダウンロード filepulse-devider_by_interrupt_on_change.asm ←参考掲載
こちらは入力パルスの立ち上がり、立ち下がりの双方に反応するタイプなのでパルスの波形が理想的な矩形を描いていない限り使えません。しかし少なくとも現在の自動車であればまず使えます。というのは、現在の自動車の内部で用いられている車速パルスは、パルス発生器で発生させたパルスそのままではなく、途中で何らかの機器のよって綺麗な矩形に作り直された車速パルスだからです。実際にこちらのプログラムを分周機に組み込んで走行してみましたが全く正常に動作しました(4パルスの車に1/2設定の分周機を取り付け、2パルス設定の[デジタルスピードメータ]を接続)。まあでも高速道路では走行していないし、オシロスコープで波形は確認していないので、もしかすると高速で走行すると数値が揺れてしまう問題が現れるかもしれません。なのでこちらのプログラムはあくまで参考として掲載したものです。

パルス分周機・回路図

digital-speed-meter_16_s.png

車速パルス逓倍機

分周機の逆の場合に使用できます。具体的には、たとえば2パルスの日産車に4パルスのトヨタ車用のメータを取り付ける場合などに必要になります。ただし車速パルス逓倍機は車速パルス分周機とは比較にならない程技術的な難易度が高いです

 

車速パルスというのは周波数が常に変化します。ここに車速パルスの逓倍における困難が生じます。パルスの周波数が変わらないとか、あるいくつかの値だけをとるとかであれば逓倍は簡単なんですが、入力周波数が無段階に変わる場合にはプロセッサを使う他ないのではと思います。
(2015-11-22追記)(実際に必要な車速パルスの数十倍の周波数で運用することが前提ですが)PWM周期を変える際に切替点が一定の位相であることが保証される場合はPWMを使った逓倍も採用可能だと思います(ただしPWMを使ってしまうとパルス数を元のパルス数に倍数に正確に合わせることは不可能です)。

 

我々アマチュアが使う8ビットマイコンのような貧弱なマイコンを使って車速パルスを逓倍するのはタイミング的な余裕がなくて(足りないと言った方が正確で)、計算能力も不足気味でなかなか厳しいです。8ビットマイコンで車速パルス逓倍用途に使用できるものは曲りなりに要件を満たすだけでもほんの一部に限られます。

 

そもそも8ビットマイコンではどんなに頑張っても(法的な面は抜きにしても)ECUへの入力に使えるような能力の高い逓倍機を作ることは無理です。逓倍したのかどうか判別がつかないくらいの滑らかな逓倍パルスを生成する為には最低限、32ビットタイマーを持った16ビットマイコンが必要です。

 

話を8ビットマイコンに戻しますが、2パルスを4パルスに変換(逓倍)する用途を考えた場合、16ビットタイマーを3個以上内蔵していることが、8ビットマイコンで(曲がりなりにも)車速パルス逓倍用途に使用できる為の最低条件となります。PICの場合はPIC18シリーズ以上でないと車速パルス逓倍用途には使用できないことになります。PIC18シリーズを使っても高速での精度を確保するには逓倍したパルスを発する最低速度をたとえば5km/h以上にする等、ある一定の制限を設けることが強いられます。

 

上で、8ビットマイコンを用いた逓倍機ではECUへの入力には使えないと書きました。では何の用途なら使えるかと言うと、やはり追加のメーター(速度計、距離計)あたりでしょう。距離計ならほぼ問題なく使えます。速度計の場合には、その速度計にフィルター(プログラム)が付いていないと使用は難しいと思います。ただしフィルターは大抵付いているものだと思います。

 

図で説明:マイコンによる車速パルス2倍化の概要(仕組み)
クリックすると大きな画像で表示されます
digital-speed-meter_6_s.png
※:速度計入力用途で使用する場合はその速度計にフィルタ(なめらかにする)機能が必須です。

◆ 1) マイコンを用いた車速パルスの逓倍の方法は出力パルスを生成する方法でまず2方式に分けられます。
(ア) マイコンの持つPWM機能を活用する方法
(イ) 入力パルスをトリガーにして出力パルスを生成する方法

(ア)はいわば自前クロックでパルスを出力する方法です。

◆ 2) 1アの方法は簡単に実装できますが、次の2つの大きな欠点を持ちます。
(ア) 出力パルスの数が入力パルスの正確な逓倍にならない。
(イ) 加減速時に出力パルスの周波数が滑らかに変化しない。

(ア)も(イ)ももPWMを用いる場合は避けられない欠点です。
(イ)は、そもそもPWMは周波数を滑らかに変化させることを想定して設計されていない為です。
PWMはデューティー比を変化させるように設計されています。

◆ 3) 加減速時に滑らかな出力パルスを得る為に1イの方法を採用することにします。
さらに2方式に分けられます。
(ア) 入力パルスの一定時間遅れで入力パルスを正確に逓倍する方法
(イ) 入力パルスの変化をそのまま出力パルスの変化の一部として用いる方法

(ア)は既に入力が確定したパルスを逓倍しながら正確に再現しようとする方法です。
周波数が数十倍にも変化する車速パルスの場合はタイマーが大量に必要になり、PIC18やAVRでは実装できません(※)。
※:一見、入力パルスを計測した時間を順に足していく方式を用いればタイマーは大量に必要ないように思えるかも
しれませんが、その方法では誤差が蓄積されるのでFIFOに用いるメモリが足りなくなったり、逆に出力するべきデ
ータが足りなくなって波形が大きく乱れたりします。従って(ア)では大量のタイマーがやはり必要です。

必然的に(イ)の方法を選ぶ他はありません。
(イ)の方法は出力パルスの変化の一部に、入力パルスの変化をそのまま生かす方法です。タイマーやメモリ等の
マイコンのリソースが貧弱でも実装できます。それでいて誤差が蓄積されることもありません。

◆ 4) しかし3イの方法は、次の大きな難問をかかえます。
(ア) 正確な出力パルスを生成する為には次の入力パルスの時間を予測する必要がある。

どんなに実装を工夫したとしても、自由に走行している自動車の未来の速度を正確に予想出来る筈はなく、
入力パルスの予測精度には限りがあります。従って加減速時に滑らかなパルスを得る為に1イの方法を選んだ
とはいっても、3イの方法ではそれほど高品質な出力パルスを得られるわけではありません。しかし3イの方法は
レスポンスの面では良好です。レイテンシを極限まで小さくできます。

 

取りあえず、簡易なロジックを採用したサンプルプルグラム的なものを作りました。簡易なロジックとはいってもPWM機能を利用した「なんちゃって逓倍」とは違ってある程度本格志向なものです。一定速度で走行する場合でも高速時は精度が下がります。ただしこれは簡易ロジック採用に起因するものではなく、16ビットタイマーの精度の限界による影響です。
車速パルスを2倍に逓倍するプログラム(簡易ロジック採用版・PIC18F2420用)
ダウンロード filespeed_pulse_doubler(simplified_version).asm  2010-8-22更新
書き込みには宜しければブレッドボード上に作る格安PICライタのページをご利用下さい。
※簡易ロジックを使用していますが距離計入力用途ならほぼ問題なく使えます(ただし2.5km/h以下の速度で走行した際の距離は無視されるという重大な制限があります。これを改善したいなら動作周波数を下げる必要があります)。どんな低速でも全く無視しないようにするには(逓倍の)原理的に困難です。標準として想定しているのは2(倍速)パルスの入力です。1(倍速)パルスの入力だと最小表示速度が6km/hに上がります。車速パルスでなく、タコメータ入力用途ならほぼ何も制限を気にすることなく利用できるでしょう。ただし周波数レンジに合わせて一部のパラメータは修正する必要が生じる場合があります。
↑2010-8-22に更新しました。当初、本格ロジック版に盛り込む予定だったロジックを一部組み込んだことにより欠点の加減速時の精度がそれなりに向上しています。一応一般道で実走テスト済みです。
(2012-1-8追記)現行のプログラムは入力パルス長をソフトウェアで計測しています。しかし皆さんに参考として頂くプログラムとしては、できることなら入力パルス長の計測はCCPモジュールの機能を用いてハードウェアで計測した方が望ましいと思います。そのような改造は現行のプログラムを殆ど活かせるのでそれほど難しい作業ではないのですが、しばらく放置したままになっています。
(2014-10-16追記)逓倍機を作ってから4年も経ったんですね。当時と違って16ビットマイコンや32ビットのmbedやARM系マイコンチップも持ってるのでもっと高精度だったり守備範囲の広いものに作り変えることは可能でしょう。でも今のところその気は全然ないです。現在は逓倍機にはアナログエンコーダを使うべきとの考えを持っています。
(2015-7-20追記)アナログエンコーダだと物理的な回転軸にアクセスするか、直ぐに止まらないステッピングモータ(そんなの存在しない)が必要になります。
周波数変化の激しいデジタルパルス逓倍用の専用ICがあればいいんですが、それは何故か見つからないです。
アナログ正弦波(A相+B相+Z相入力)を逓倍するICならあります。たとえばセイコーNPC SM3470BBです。こういうのは本来光エンコーダとペアで使うものなので光エンコーダへの入力をエミュレートするものを作ればいいんですが、それは絶対無理(それを作るくらいなら本物を使う方が圧倒的に楽)です。となると、デジタルパルスをアナログ正弦波(A相+B相+Z相)に変換する回路があればいいということになります。A相だけでいいならAD9834なんかを使えばいいんですが、B相、Z相も出力する為には(専用ICがないとすると、)正弦波を出力できるNCO複数ポート(もしくはチップ)をCCP入力を持つマイコンで制御する必要があります。且つそのNCOは位相0のタイミングでのみ周期を変える機能が要ります(それは普通あるかな?  話は急に変わるが、位相0でのみ周期を変える機能がPWM出力にあるのなら、そもそも逓倍そのものをCCP入力+割り算+PWM出力でおこなえばいいということになる(デューティー比じゃなくて周期を1パルス毎に変えるなんて異常なPWMの使い方だと思うし、その周期を変えるタイミングは位相ゼロのタイミングに揃わなければならないが)。5年前から気にはなっていたが全く確認していない。5年前当時、逓倍するプログラムを書くことの方に興味があったこともある)。ということで2倍ならマイコン単体で逓倍した方が遙かにシンプルです。16倍とか32倍ならマイコン単体では手に負えないのでここに書いたような複雑な方法をとる必要があります(デジタルパルス→アナログ正弦波(A相+B相+Z相)専用ICがないのなら)。

 

車速パルスを2倍に逓倍するプログラム(簡易ロジック+簡易近似補正採用版・PIC18F2420用)
ダウンロード filespeed_pulse_doubler(another_version).asm  2010-8-22新規掲載
実は簡易ロジック採用版と大きな違いはありません。こちらも一般道で実走テスト済みです。
書き込みには宜しければブレッドボード上に作る格安PICライタのページをご利用下さい。

※簡易ロジック版もこの版も「後変化」方式を採用しています。いきなり言われても何のことかわからないでしょうが、ソースを読めば必ずわかります。また上の図を見てもわかるかと思います。もちろん「先変化」の方が本来は好ましいです。「後変化」を採用していることには特に意味はなく、最初の頃に作った版を引きずっているだけです。「後変化」方式のままでも停止寸前のような超低速時以外では影響をほぼ無視できるでしょう。

 

車速パルスを2倍に逓倍するプログラム(まともなロジック採用版・PIC18F2420用)
まだ作っていません

 

(2011-12-3追記)
Yahoo知恵袋の車速パルス逓倍に関する質問と回答
このページをじっくり読まれた方なら、この質問のベストアンサーには誤った内容が含まれていることにお気づきになると思います。「エンジンの回転数変化に対して、1タイミング遅れる表示となります」という実装は事実上不可能ですし「電子回路の動作速度に対して……回転数変化は非常に緩慢です。事実上は、問題になりません。」は問題点の抽出を誤っていて、タコメータパルス(車速の場合は車速パルス)の周波数があまり高くない為に相対的に回転数(車速の場合は速度)変化の影響を大きく受けると気づいていないように思われます。

6パルス→4パルス変換機

(2015-3-1追記)

  • 6パルス→4パルス変換機は(単純な)分周機ではありません。
  • ラリーコンピュータ等の距離だけ合わせれば済む用途ならこのように間引く処理だけで済みます。そうじゃなくて、ほんとに正しい4パルスを生成するなら少しだけ高度な処理が必要となります。
  • 基本的なその処理は、3パルス毎に1グループとみなし、その中の最初の2パルスを夫々1.5倍の周期に伸ばし、最後の1パルスを捨てるという処理です。
  • 車速パルスやエンジン回転数パルスは実際には常に変化しているので、厳密にはグループ2個目のパルスは位相を微調整するべきです。しかしその処理は省略してもほぼ全く問題ありません。それを前提にすれば、それほど難しい処理が必要なわけではありません。8ビットマイコンで十分実用的なものが実現できます。

あるラリコン用パルス変換ボックス(?)

(2012-1-27更新)
ご要望に合わせてGPIO-0とGPIO-5の出力波形を前進時・後進時共にお互いの反対の関係になるように変更しました。実際にはテーブルのデータ次第です。

 

事実上“パルス間引き”装置のプログラムです。

 

オシロスコープの画面とその説明から推測で仕様を仮に決めて作ってみました。
廣井さん、動作検証をお願いします。

 

多分F&O SYSTEMS JX-555用のパルス変換ボックス互換です。
私はラリコンもパルス変換ボックスも現物は持っていません。

 

fileあるラリコン用パルス変換ボックス・プログラム仕様.xls

 

MPASM形式
filepulse-convert-box.asm (PIC12F683用)
HEX
filepulse-convert-box.hex (PIC12F683用)

 

書き込みには宜しければブレッドボード上に作る格安PICライタのページをご利用下さい。

車速パルス発生機

(なめらかに可変する)簡易・車速パルス発生機

(2015-11-22)
車速パルス関連でなにか自作する場合、車速パルス発生機が必要になるでしょう。ファンクションジェネレータ等を持ってなくて車速パルス発生機を自作する場合、車速パルスの周波数が通常のマイコン工作で扱うPWMの周波数と比べて非常に低いことが製作のネックとなります。マイコンの動作周波数をぐっと下げてしまうという方法もあるんですが、それだと可変式にする場合に必要となるAD変換→PWM周期計算がまともにこなせなくなってしまいます。かといって車速パルスをソフトウェアで生成すると安定した波形はとても望めません。

 

ここではマイコンを2個使って上記の問題を解決します。1個目のマイコンのPWMでデユーティー比が最小値で周期が可変の中間パルスを発生し、2個目のマイコンでその中間パルスをたとえば1/64等に分周してデューティー比50%の方形波に変換し、車速パルスとします。
これによって、実車走行時と同じような、なめらかな加減速がシミュレートできます。ただし、簡易版なので後述のようにシミュレートできる速度域に制限があります。
digital-speed-meter_29_s.jpg
クリックすると大きな画像で表示されます

  • PIC12F683を2個使います。あちらと同時期にシリーズで作ったって感じです。
  • (今の目からは機能貧弱ですが、秋月ライタ等旧形式のライタで書き込めるという大きなメリットを持つ)10年選手のPIC12F683をもう一度見なおしてみようというのも今回の目的の一つです。
  • I2C機能のないPIC12F683ですが今回、秋月のI2C液晶をソフトウェアで操作するライブラリを作成しました。後閑さんのHI-TECH C用ソフトウェア・I2C液晶操作関数をXC8用に修正し、さらにそれとiwamotoさんのストロベリーリナックス用I2C液晶操作関数をマージし、さらに秋月のI2C液晶用に修正したものです。
  • I2C液晶に現在設定されている車速パルス数(1,2,4,8)、AD変換値、速度を表示します。
  • 両PIC12F683は共にピン2,ピン4が車速パルス数設定の入力ポートです。これによって両チップが同一の、設定(されている)車速パルス数を認識します。
  • 車速パルス数の入力にプッシュSWやタクトSWは使っていません。2ポートを静的にLowもしくはHiに設定することによって車速パルス数は決まります。これはI2C液晶を省略可能とする為の仕様です
  • 実は上側のチップから出力するパルスは、車速パルス数の設定によって変化しません。上側のチップにとって、車速パルス数の設定値によって動きが違ってくる部分は、液晶上の車速パルス数表示だけです。
  • 下側のチップでおこなう分周数は当然、設定車速パルス数によって異なります。
  • 上の写真で、I2C液晶上の速度表示値が100、右側の7セグ上の速度表示値が100と一致していますが、この程度の計算精度では完全な一致は望めません。可変抵抗を回していくと、写真のように合っている状態もありますが、1,2km/hずれている状態もあります。
  • ごく簡単なPWM周期の変更だけでパルス周波数を変更している為、ダイナミックレンジが十数倍しかありません。なので現在約10km/hから約180km/hの間だけ車速パルス周波数を生成できます。ただし設定する車速パルス数を故意に間違った値に設定することでシミュレート速度域を約5km/hから約90km/hの間に変更する等は簡単にできます。
 

digital-speed-meter_30_s.jpg
クリックすると大きな画像で表示されます

  • 回路図の代わりにこの写真を参照して下さい。
  • 両チップとも同じ向きで、ピン1が左上でです。
  • 既述のように両チップともピン2,ピン4が車速パルス数入力ポート、上側チップのピン5がPWMによる中間パルス出力ポート、下側チップのピン5が外部割り込みによる中間パルス入力ポート、下側チップのピン3が車速パルス出力ポートです。上側チップのピン3は可変抵抗による分圧値を入力するアナログポート、上側チップのピン6、ピン7は夫々I2CのSCL,SDAです。
  • 写真の1kΩの固定抵抗と4.2kΩ程の可変抵抗で分圧値は0Vから4.2V程をとりますが、現在のプログラムは0Vから3Vほどの値をとれれば動くので、実際には好きな部品を使って下さい。
  • 両チップともピン2は内部でプルアップしていますが、写真のように繋いでいる場合はもちろん片方のチップだけの内部プルアップでも十分です。
  • ピン4はチップの仕様上、内部でプルアップできませんので10kΩの抵抗でプルアップしています。
  • I2C液晶は秋月のこれです。
 

パルス発生機・ソース(XC8用&MPASM用)、MPLAB X IDE用プロジェクト、HEX一式
ダウンロード  file12f683_speed-pulse-generator.zip
(2016-3-3追記)このプログラムはAD変換の処理の仕方が一般的な手法とちょっと違います。普通は、ノイズの影響除去の為に複数回のAD変換の結果からまず平均をとり、その値をその後の処理に用いるんですが、このプログラムは、AD変換値を毎度少しずつ(だけど)直ぐに反映するという手法を採っています。

 
 

ご要望、ご意見、質問を下のフォームにどうぞ
(でもここより、掲示板書き込みフォームのページに書いて頂いた方が気づき易いと思います。)

  • こんばんは (^^) -- しお? 2010-09-30 (木) 22:44:52
    はじめまして、こんばんは (^^)

電子工作を始めたばかりの素人です。いつも勉強させていただいております。

よろしければ、お力添えいただきたいことがあります。

先日、保有するバイク用に汎用タコメータを購入したのですが、同メーターとバイクのイグニッションパルス信号が合わず、タコメータの表示が実際のエンジン回転数に比し、数倍の値を示してしまっている次第です。

バイク側はエンジン1回転当たり2回のイグニッションパルスを発生しているのですが、どうやらメーターは1回転当たり1パルス用だったもようです (T-T

メーター側にはこれらの設定機能がなく、バイクのイグニッションコイルからタコメータの検出線までの間に上記の車速パルス分周機のような物を組み込むことができたらと考えています。

上記の車速パルス分周機は、タコメータへのイグニッションパルスにも適応できますでしょうか?また、何とか製作を試みたいのですが、写真で判断が付かないので、回路図と使用部品名をお教え願えませんでしょうか?

なお、バイク等の諸元は

・Kawasaki KSR-2
・12V車
・メーターの検出線は、イグニッションコイル(発電機)からCDIまでの配線を分岐して接続中

です。このほか必要なデータがございましたら調べます。

ぶしつけにお願いばかりで大変申し訳ありません・・・。自分がまず知識に乏しい上、周りにも電子に詳しい者やショップもなく、何とかご支援いただけたら幸いです。

何卒、よろしくお願いいたします。

  • つい先ほど書き込みに気づきました。
    もちろん(といっても100%ではありませんが)このページで紹介しているパルス分周機が役立つでしょう。
    ただし、バイクということで、もしかすると、車体側のパルスの電圧が、直接マイコンに入力できない値である可能性があります。
    その場合は入力側にこのような(png画像)回路を追加する必要があります。
    ところで、部品名が知りたいとおっしゃるということは、ご自身でお書きになってますが、失礼ながら正真正銘の初心者の方のようですね。
    上記掲載の分周機で使っている部品は、PIC12F683マイコン(8ピンPIC)、8ピンICソケット、電解コンデンサ、コンデンサ、5V固定出力・3端子レギュレータ、10kカーボン抵抗です。ただしカーボン抵抗は上にも書いていますが、使わない(付けない)のがデフォルトです。
    部品の型番を書いていない理由:PIC以外の部品は、スペックだけ適合していれば、適宜自分の持っている余りものを使えばいいからです。
    3端子レギュレータは、低損失なものは耐圧が低いことが多いので、低損失でなくて5V固定出力のものを店で適当に選べばいいです。
    コンデンサ、電解コンデンサはそれぞれたとえば、0.1μF積セラコンデンサ、25〜50V耐圧の47μF電解コンデンサあたりで大丈夫だと思いますが、出来れば3端子レギュレータのデータシートに書いてある推奨値のものを使うことが好ましいです。
    PICマイコンはマイコンですのでプログラムを書き込む必要があります。その為にはPICライタが必要です。私が使っているものではないですが、こんなライタが値段も手頃でいいんじゃないでしょうか。
    PICマイコンは別にPIC12F683でなくても構いません。ほんの僅かなプログラム変更で他のPICマイコンも使えます。その気になればAVRも使えます。
    以上の部品の他に、冒頭の回路を追加する場合はその部品も必要です。

    ところで、車速パルスの「1パルス」「2パルス」の解釈が不正確ですよ。
    1(倍速)パルスは、1000/637メートル走行する毎にパルスが1周期分発生する状態のことを指します。
    2(倍速)パルスは、(1000/637)/2メートル走行する毎にパルスが1周期分発生する状態のことを指します。 -- disklessfun? 2010-10-02 (土) 02:04:04
  • おはようございます (^^)
    早速のご回答、誠にありがとうございました。深夜にもかかわらず懇切丁寧なご回答、誠に恐縮です・・・。安眠妨害してしまったこと、深くお詫びいたします<(__)>
    >失礼ながら正真正銘の初心者の方
    ・・・はい、そのとおりなんです (^^;。・・・といいますかdisklessfunさんが思う以上の初心者でありまして、今回、色々ご教示いただくまで、回路中央の黒い部品が3端子レギュレータだったり、8ピンソケットがPICマイコン用だったこと等、初めて知った次第です。ショップで部品を調達して組み上げれば作れると甚だしく勘違いしていました。事前勉強が不足したままで質問してしまったこと、反省しています<(__)>。
    ご教示いただいたこと、私にとってまだまだ勉強が必要です。ただ、だいぶヒントが得られ、勉強の方向性も見えてきました 。まずはPICマイコンについて勉強してみます。
    自分なりに今回のことを整理して、一度、回路図を書いてみようかと思います。その際に添削等、またご支援いただけたら非常にうれしい限りです。
    ご多用中の折、無理を申し誠に恐縮ですが、何卒、よろしくお願いいたします。
  • しお? 2010-10-02 (土) 08:29:17
  • 大事なことを書き忘れていました。上で紹介しているデジタルスピードメータは、ファームウェアを入れ替えれば車速パルス分周機としても使うことができます。こちらならキットなので部品は揃っているし、プリント基板なので製作も容易です。
    それから、先のレスの冒頭付近で書いている「追加しなければならないかもしれない回路」の部品の型番はここに載っています。この回路は前記デジタルスピードメータの一部(パルス入力部)です。
    それと、一応書いておきます。多分ご存知だと思いますが、高いでしょうけど車速パルス分周機の完成品もどこかで売っている筈です。でも必要に迫られて電子工作に手を染めるというのはとてもいい機会だとも思います。 -- disklessfun? 2010-10-02 (土) 11:52:30
  • アドバイス、ありがとうございます (^^)
    なるほどです。キットの方がとっつきやすいかもしれませんね。しかも、サブ的なタコメータとして、付けようとしているタコメータの表示との比較が出来て、おもしろいかもしれません。前向きに検討してみます (^^)
    ただ、私のようにタコメータへの流用を考えるのであれば、当然、表示に誤差(といいますか、明らかにイグニッションパルスを車速として入力するのですから表示に差が出て当然ですね。)が出るので、タコメータへの活用を見据えたファームウェアの入れ替え(PICのプログラム書き換えのことですよね?)が必要になると考えるので、その点について私にとっての登竜門になりそうです。ですが、disklessfunの仰るとおり、とてもいい機会ととらえています。がんばって勉強してみます! (^-^ -- しお? 2010-10-02 (土) 13:56:59
  • 上のデジタルスピードメータは無改造の状態で既に1,2,4,8,16,20,25(倍速)パルスに対応しています(ジャンパ切り替えにより)。
    分周機能は追加しなければなりませんが、1/2周波数のパルスの生成というのは、外部割り込みを受ける度に、1と0をトグルするだけです(※)。
    ※:外部割り込みは立ち上がりもしくは立ち下がりどちらか一方だけにしか反応しないので1/2の分周の場合は間引く処理は必要ありません。 -- disklessfun? 2010-10-02 (土) 18:16:41
  • 前のレスで一旦PICライタの紹介をおこないましたが、上のデジタルスピードメータを購入し、自分でファームウェアをカスタマイズするなら、基本的にはICSPを使うことになるので、PICライタはPICkit2PICkit3がお勧めです。 -- disklessfun? 2010-10-03 (日) 10:31:19
  • disklessfunさん
    こんばんは。ご連絡ありがとうございました。
    実は上記最後の書き込みの後、仕事上のトラブルが生じ、今しがた、一時帰宅した次第です。返答もできず大変申し訳ありませんでした。またすぐ職場に戻らなくならず、数日は連絡できそうもありません。落ち着き次第、また連絡いたします。
    こちらからの質問に対して親切、誠実に対応していただいている中、当方の事情でのわがままを言い、大変申し訳なく思ってます。 -- しお? 2010-10-04 (月) 01:07:12
  • ご心配には及びません。ところで、しおさん、私、勘違いをしていました。車速じゃなくてタコメータでしたね。すみません。エンジン回転数の表示をおこなうなら、定数の変更等も必要になります。面倒なら7セグLEDは取り付けずに純粋な分周機にしてしまえばいいと思います。ソースはそのうち、このページに掲載するかもしれません。 -- disklessfun? 2010-10-06 (水) 01:18:59
  • 念のためお聞きします。購入されたものが汎用タコメータということなので、入力パルスの仕様に合わせて設定を変更できるようにはなっていませんでしょうか。
    さて、その部分は確認できたとして話を進めます。改めて考えてみまして、上のデジタルスピードメータを分周機として使うことは最適の選択だと思います。ちょっと忘れていた上のデジタルスピードメータの仕様を再確認したんですが、分周機として使うことを完全に想定した設計になっています。分周機として使う為の出力回路や端子が元々用意されていて、ジャンパ設定変更だけで、5Vのパルスも12Vのパルスのどちらも出力できるようになっています。
    あとはプログラムの変更だけなんですが、実際に変更して動作確認してみました。
    変更はなんと「_asm btg LATC,3,0 _endasm」という1行を追加するだけです。これだけで分周機能を追加できました。 -- disklessfun? 2010-10-07 (木) 00:25:05
  • はじめまして、のらひこと申します。車速パルスの出力電圧に関してお尋ねします。私の車(スバルR2)の車速パルスのセンサーやECUへの出力は14.4Vです。これを分圧してPICに入力、変換後に14.4VでメーターやECUに出力したいのです。出力側の回路が分かりません。出力周辺について良い回路があればご教授願えますでしょうか? -- のらひこ? 2010-12-21 (火) 10:17:30
  • はじめまして、のらひこと申します。車速パルスの出力電圧に関してお尋ねします。私の車(スバルR2)の車速パルスのセンサーやECUへの出力は14.4Vです。これを分圧してPICに入力、変換後に14.4VでメーターやECUに出力したいのです。出力側の回路が分かりません。出力周辺について良い回路があればご教授願えますでしょうか? -- のらひこ? 2010-12-21 (火) 10:34:51
  • のらひこさん、お探しの回路でしたら、このページで紹介しているデジタルスピードメータの回路の中にあります。このページのsch(png)のリンクがその回路図画像です。PICの14番ピンから伸びている部分が該当回路です。(14番ピンのラベルがVUSBとなっていますが、これは本来RC3と記述すべきものです。)
    この回路はジャンパの1ピンと2ピンを繋いでおくと、PICからのHi時に5Vのパルスを、Hi時に12V(14.4と同じ意味)のパルスに”レベル変換”してくれます。
    さて、のらひこさんは入力を”分圧”でおこなおうとしているようですが、トランジスタやFETを使って”レベル変換”するべきです。分圧という手段は元々電流が少ししか流れていない信号回路でおこなうべきものではありません。車速パルスのPICへの入力用のレベル変換回路は同じ回路図のT4あたりが該当します。こちらの「スピードセンサ信号入力部」に抜き出したものがあります。出来ればその回路の直前に0.1マイクロFのコンデンサを直列に追加することをお勧めします。 -- disklessfun? 2010-12-21 (火) 23:30:38
  • disklessfunさま、ありがとうございました。おかげさまで希望するものが出来そうです。 -- のらひこ? 2010-12-22 (水) 12:25:53
  • 先日はありがとうございました。今回は、出力電圧を速度パルスに応じて0.5V程度下げるようにしたいと考えています(パルスが無い時に11.5V、パルスがある時に12V)。先に教えて頂いた12Vの出力の回路にラダー抵抗回路を組合わせれば実現できるのでしょうか? -- のらひこ? 2011-06-30 (木) 17:26:48
  • 負荷がわからないので何ともいえませんね。自動車関係の用途ですか? -- disklessfun? 2011-06-30 (木) 23:52:46
  • エンジン回転数に応じて擬似的に音を出すサウンドレーサーというアイテムに使います。スペックはこちらです→http://www.soundracer.se/?p=98&p2=103 オルタネーターのパルスを拾って回転数を検出するとのことですが、バイク等からのノイズを拾って動作が不安定です。PICを使って電源にノイズに相当する電圧変化を与えればよいのでは?と考えました。 -- のらひこ? 2011-07-01 (金) 13:52:48
  • 「ノイズを拾っている」か「そもそも12V電源の脈動が“ほぼ”ない」か、この2つが重なっているかですが、たとえノイズが多少あっても、オルタネータ由来の脈動が明確に存在し、その脈動が相対的にノイズより十分大きければノイズは自然と無視されるでしょう。ですから人工的にオルタネータ的な脈動を作ってやればそのアイテムはまともに動くと期待できると思います。で、その12V電源は“安定度が高い”と思われますから、抵抗で電圧を下げるという簡便な回路が多分使えると思います。安全に気をつけて(元となる12V系の電圧に影響が出ていないことを確認しながら)試してみて下さい。 -- disklessfun? 2011-07-02 (土) 11:41:58
  • 廣井と申します 分周するプログラム(PIC12F683)を作ってみたいと思い、素人ながら挑戦しています、12F683をakizukiのPICライタで書き込もうとすると 実行時エラー オーバーフローしましたと出ます まだよくわからなくて質問も何なんですが 何が原因と思われますか よろしくお願いします -- 廣井? 2011-12-21 (水) 20:39:10
  • ここ http://www.eleki-jack.com/indoorplane/2007/07/35_pic_1.html に似たように見える例が紹介されています。 最新のダウンロード先は http://akizukidenshi.com/catalog/contents2/pic_pgm.aspx -- disklessfun? 2011-12-21 (水) 21:29:49
  • またまた廣井です 有難うございます アプリのバージョンアップ ファ^−ムウェアアップで解決いたしました 昨日届いた品物だったのでまさかそんなに古い物が入ってるとは思っていなくて 確かにすぐにファームウェアを新しくしてくださいとは書いてあったのですが ファームウェアの更新は怖くて 手付かずにしてました ここのサイトはずいぶん前から覗いていまして ラリーコンピューターってご存じないかもしれませんが 車の車速を取り出すのに 安くてよいパルス変換が出来ないかイロイロ作ってきましたが PICまでは手もつけられなかったのですが 思い切ってやってみることにしました 自分で書くことは出来ませんが ここのサイトで勉強させてもらっています これからもよろしくお願いいたします -- 廣井? 2011-12-21 (水) 23:42:33
  • 外車に日本製のラリーコンピュータをつけるんですか?それともその逆ですか? 何パルスから何パルスに変換したいのかに興味があります。 -- disklessfun? 2011-12-22 (木) 01:06:02
  • 廣井です 早速車速パルス分周機を作ってテストしてみました パルス発生装置なるものと分周機を使って古いラリコンをつないでみましたら 見事に動いてくれました PIC12F683に書き込みがうまくいったことと disklessfunさんの回路を使えたということに大変満足をしています パルスの入力側と出力側には1815を入れて作りました    しかし実際に車(セレナオープンコレクタ?)につないで走ったら ラリコンは動いてくれませんでした もう少しパルスの取り出し方を工夫しなければいけないようです   ラリコンはすべて国産です 機種は4台手元にあります 4パルスと2パルス3パルス仕様です 国産の車につけるのですが 車からの取り出し場所にもよるのでしょうが2から8パルスで出てるようです  -- 廣井? 2011-12-23 (金) 00:17:52
  • 途中で切れてしまいました 続きです・・・ 友達にパルスの変換するものが買うと2万円くらいするから作ること出来ないかといわれ あれこれやり始めたのがきっかけで このサイトに気がつきました が PICはちょっと僕には荷が重いと思いあきらめていたのですが チャレンジしました まだまだですが 一つのきっかけとしては今は満足しています またよろしくお願いいたします -- 2011-12-23 (金) 00:26:10
  • ちょっと検索してみたところ、セレナはオープンコレクタのようです。1815の直前に5Vへのプルアップ抵抗を追加してみたらいかがでしょうか -- disklessfun? 2011-12-23 (金) 13:28:06
  • 廣井です 確かにセレナはオープンコレクタです 車速パルスの取り出し口に 5プルアップ抵抗を入れて使ってます そのために入力に1815入れた事が帰ってまずかったようで 分周機の入力側も 出力側の1815も取り外して使ったところうまくいきました 8キロくらい走行した(最高速70Km/h)結果 分周機をはずした時と 着けたときと まったく狂いはありませんでした 今後はもっと高速で試して見たいです   ただしノイズを対策はしないといけないようです エンジンキーを入れたり抜いたりしたり オートマのレンジを切り替えるたびに パルスを拾ってしまいます   今まで使っているものにシュミットトリガを追加したら消えたので  disklessfunさんの分周機にも追加しようと思っていますがどうなんでしょう ノイズ対策についてもご指導いただけると助かります よろしくお願いいたします  -- 廣井? 2011-12-23 (金) 17:12:53
  • 念のため確認したいのですが「分周機を外した時とつけた時で狂いはなかった」ということは、テストに用いているラリコンは2、4パルスに両対応で、4パルスに設定して分周機を介さずに直接繋いだ時と、2パルスに設定した上で1/2分周機を介して繋いだ時で比べて、ラリコンの動作が全く同じだったということでしょうか。このことはあまり大事な話というわけでもないのですが

    さて、あとはノイズ対策ですか。
    確認ですが、分周機を使っても使わなくてもラリコンがノイズを拾うんですよね。
    お薦めの答えではないんですが、ソフトウェア的に対応するなら分周機のファームウェアに大幅に手を入れて前回のパルスとあまりに間隔が異なるパルスを無視するという処理を加えるという手があります。オーソドックスなハード的な対応としてはトライ&エラーで徐々に徐々に入力インピーダンスを小さくしていって、ノイズは拾わないけどパルスは拾うという状態にすることだと思います。 -- disklessfun? 2011-12-23 (金) 18:39:24
  • 廣井さんはおわかりでしょうけど、他の人も見るので追記:PICで直接入力を受けると入力インピーダンスが非常に大きいのでノイズがあるとそれも拾ってしまいます。再び1815を追加した上で抵抗値を適宜調整する必要があると思われます。 -- disklessfun? 2011-12-23 (金) 18:50:41
  • あと、車速パルス線の電気的な仕様が、助手席下あたりにある車速パルス線とセンターコンソールあたりにある車速パルス線とで異なる場合が(わりと多く)あります。このような場合はセンターコンソールあたりの方から車速パルスを取り出す方が断然有利です。というのはセンターコンソールあたりにある車速パルス線はそもそもナビ取り付け用にメーカーが用意したものであることが多く、取り付ける機器の入力インピーダンスの許容範囲が広くなっている場合が多いんです。 -- disklessfun? 2011-12-23 (金) 20:45:07
  • 廣井です 説明がうまくなくて申し訳ありません   ラリコンの説明をせずにいきなり書いてしまいました 僕の持っているラリコンは ラリコンそのもでパルスの設定ができないタイプです 設計も古くほとんどにものが10年以上前のものです  今回のテストは1回目に分周機をつけて8KM走り距離をmの単位まで -- 廣井? 2011-12-24 (土) 00:13:42
  • 廣井さん、このページの現時点で上から三分の二くらいのところに修正用のリンク(マウスでクリックできるところ)がありますよ。ご利用の際は最終行の#contentsを削除しないようにお気をつけ願います。 -- disklessfun? 2011-12-24 (土) 00:17:50
  • 計測して 2回目は分周機をはずしてラリコンの補正値=1/2入れて(分周ではなく)走行しました その結果 距離がmの単位までほぼ一緒でした  (ラリコンの補正値とは ラリーの最にオフィシャルと参加者の車のメーター(スピード、距離)をそろえるためについている機能で 決められた距離を走って 自車/試走車=K値が出まし 計算して手動でも入れられますし 自動でもはいります)  説明の要領が悪くてすみません      -- 2011-12-24 (土) 00:34:58
  • 分周機のノイズですが ノイズたぶん分周機で拾っているようです 今使っている自分で作ったものもノイズを拾っていました 完全に消えたかどうかまでは言い切れません いつも決めている3Km弱の距離を走ってチェックをしていますが ここのところ1mくらいの誤差しか出ません 今回の分周機もノイズを拾ったのは スタート時に気がついただけで 走行中は大丈夫でした(たぶん…距離に誤差がなかったので)     disklessfunさんのおっしゃるように トライ&エラーでもう少しいろいろやってみたいと思います 分周機が完成して うれしくて先走った記述をしてしまい申し訳ありませんでした 車速は確かに運転席の下から取っていました  コンソールから取った方が良いという情報 ありがとうございます セレナの場合 2パルスしか出てなくて コンソールから取れば8パルスで 1/2に分周すればちょうどいいんですよね(ラリコン4パルスの場合) ついおっくなので 簡単なところから取っていました ありがとうございました またよろしくお願いいたします  -- 2011-12-24 (土) 00:56:05
  • なるほどよくわかりました。今までラリコンはモータースポーツ誌上で言葉として見るだけでした。こちらから質問させて頂きたいのですが、リアルイタイムの速度表示機能、つまり速度計機能も付いているのですか? -- disklessfun? 2011-12-24 (土) 01:57:48

廣井です すばやい対応にびっくりしています ラリコンですが 速度機能もついている機種もありますが それはおまけの機能みたいで、ラリーではたぶんほとんど使いません 能力としては ビット・トレード・ワンとほとんど同程度だと思ってます  むしろリアルタイムで コンマ1秒まで、決められた速度に対して 遅速を表示してくれる機能がメインです   ディスプレイの窓が機種により2ないし4しかなくて キーで切り替えて窓の内容を切り替えて使いますが 遅速の窓はいつでも見られるようにほとんどの機種はなってます  そのほかの窓で 時間を表示したり 距離を表示したり 指示速度を表示、入力したり 地図の距離を独立させて距離をクリアしたり 機能はたくさんありますし 機種によっては 時間専用の電卓になったり ストップウォッチになったり ある機種では 200区間の 距離、 通過時間、遅速時間 を記憶してくれていたりします  いずれにしても 正確な時間と 正確な距離の取り込みが生命です ラリコンについてはこんな感じです 有難うございました また お願いいたします。 

  • お手数をおかけしてありがとうございます。順番が逆になってしまいましたが速度計機能の有無についてお聞きした理由を書きます。簡単に書けば距離計と速度計では原理的に入力パルスに求められるパルスの精度が異なる為です。たとえば一部の外車にある割り切れないパルス倍数(たとえば20/3)のパルスを変換機の内部で掛け算したり割り算したりして2パルスとか4パルスに変換することは可能なんですが、微妙にパルスの波長にムラが混じることはどうしても避けられません。それでも距離計機能はパルス数さえ正しければ全く問題ありませんが、速度計機能は場合によっては(波長のムラによる悪影響を打ち消すフィルター機能が弱ければ)影響がでないとも限りません。そこでラリコンについての速度計機能の有無を今後の為に知っておきたいと思ったわけです。 -- disklessfun? 2011-12-24 (土) 16:24:27
  • 廣井です 先日はいろいろ教えていただきまして有難うございました 直接このサイトには関係の無い質問なのですが ご指導いただければ助かります 車の速度パルスが5Vで取り出せているのですが あるラリーコンピュータは 同じパルスを同時に2つ入力しています 最初はなぜこのような仕様になっているのか気がつかなかったのですが 最近片方のパルスの位相を変えて バックを感知してトリップを逆転している事がわかりました そこで先日の分周期器にこの機能をつけようと試行錯誤しているのですが 初心者の私にはどうしてもうまくいきません 分周期の出力を二つに分けて 片方にもう一度1815を入れてみたり フォトカプラを入れてみたりして・・・ 位相の反転は出来るのですが片方の電圧が半分2.5V位に落ちてしまいます トランジスタの回路の基本が出来てない初心者ですので当たり前といえばそうなんですが 何とかならないかとお正月中悩んでします たぶんなんでもないことなのでしょうが ご教授願えれば助かります よろしくお願いいたします。 -- 廣井? 2012-01-13 (金) 18:57:20
  • 失礼ながら「片方のパルスの位相を変えて バックを感知して」という調べはほんとに正しいでしょうか。webで検索する限り、通常、後退はパルスではなく単純にHi or Low で接続機器側に伝達されるものばかりのようです。オシロスコープでなく、テスター等で調べただけであって「実際には調べが間違えていた」ということはないでしょうか。申し訳ありませんが再度ご確認をお願いしたいと思います。

    ちなみに、車速パルス分周機から互いに位相が反転した2線を出力することは、ファームウェアの変更で簡単に実現できます。pulse-devider_by_external_interrupt.asmの70行目と75秒目を少し変更するだけです。 -- disklessfun? 2012-01-14 (土) 01:15:49
  • 早速の回答ありがとうございます うまく説明できなくて申し訳ありません ラリコンについてたパルス変換ボックスが有りまして このボックスには車から2本のらいんを入れます 1つは車速のパルス もう一つはバックに入れた時の電源です このボックスからラリコンに2本のラインが入っていまして 2本ともパルスですしかも同じパルスです 先日オシロスコープを知人より拝借して調べてみました そこでわかったことなのですが バックの電源ラインに12Vと入れてやると 片側の位相が反転しトリップが減算を開始しました パルスの数が間引かれていて(6パルス2パルスブランク)位相の逆転がわかりやすいです このボックスがあればいいようなのですが 車によって買い替えなくてはいけなくて 手作りを(半分遊びで)作ってみたくなりました いいのか悪いのかわかりませんが 12Vの小型のリレーを使って 反転させた信号を片側だけ入れ替えてやろうとしたのですが 電圧が片方落ちてしまいうまくいきません 多分抵抗の使い方が悪くて電圧が分圧されているのかとおもうのですが 素人のやることはこれが今のところ限界なのかと思い 思い切ってお願いさせていただきました いかがでしょうか -- 廣井? 2012-01-14 (土) 02:49:26
  • だいぶ話がわかってきました。信用しなくて申し訳ありませんでした。ただ「パルス変換ボックス」の入力側についてはカーナビ等と同様ですね。多分、今回は実質的に「パルス変換ボックスを自作したい」がメインテーマですよね。自作すれば他の車種にも自力で対応できる、と。
    さて、基本的な製作方針として「せっかくマイコンを導入した以上、複雑なロジックはマイコンに担当させて、極力ハード側はシンプルにした方がいい」という考え方を持った方がいいと思います。まだ私は「6パルス2パルスブランク」の詳細を知りませんが、その辺りのパルスを生成するロジックはマイコンのファームウェアに担当させればいいと思います
    お手数ですが「パルス変換ボックス」の2線の出力仕様をタイミングを揃えてグラフ(模式図、ポンチ絵)で表現して、それを表計算シート(xls か xlsx か ods)かjpgかpng画像にして、必ず拡張子を付けてから掲示板のページにアップロード(添付)して頂けませんか? そのファイルは後で私がこのページに移動します。前進時・後退時、両方の仕様を教えて下さい。切り替わる時に反転する側の出力がどうなるのかも教えて下さい(何かキリのいいところで切り替わるのか、そうじゃないのか等)。多分教えて頂ければすぐに対応ファームウェアを作成できると思います。マイコンが不得意なのはパルスの波長自体を2のべき乗倍か2のべき乗分の一以外に変換することで、それ以外だったら多分対応できると思います。 -- disklessfun? 2012-01-14 (土) 11:10:27
  • 割り込んですみません。私も今車速パルスと遊んでいる者です。最後の辺りに出てくる信号2本を使って、加減算(方向弁別)を行なっている辺りですが、SIN/COSの90度位相差の波形ではないですか?デジタルカウンタでは良くやる方法です。「クオドラチュア(Quadrature)http://goo.gl/Oo845http://goo.gl/8oYHl」で、お分かりになるでしょうか?最後になりましたが、色々有用な情報を提供いただき、ありがとうございます。 -- 農通? 2012-02-27 (月) 23:09:08
  • 申し訳ないですが、当事者じゃないからでしょう、論点をハズしてますね。反転したパルスの利用法を理解していない人はいないと思います。間引く仕様についてやりとりしてたんです。 -- disklessfun? 2012-02-28 (火) 00:04:52
  • ラリコンのパルス変換ボックスでは 大変お世話になりました おかげさまでいろいろ勉強させていただきました 実戦では使ってませんが うまく動作してくれています、  disklessfunさんはパルスの逓倍について触れられていまして スピードメーターについては正確には(特に5Km・h以下において)簡単にはいかないと書かれていますが パルスを単に逓倍するのは可能なのでしょうか ラリコンはパルスの数だけ増えてくれれば 距離は刻んでくれるのかと思うのですが・・・・ また素人が勝手なことをと 思われるかもしれませんが いかがでしょうか 2パルスの車をで3パルス仕様のラリコンは 逓倍できれば便利なのですが いかがでしょうか 廣井 -- 廣井? 2012-05-14 (月) 21:21:44
  • スピードメーター用途は完全に諦めて、距離だけは正確に拾う為の特別な処理を加えれば、5km/h(程度)以下の走行にも対応可能です。 -- disklessfun? 2012-05-14 (月) 23:17:56
  • パルスの逓倍がが可能なんですね PIC12F683 で以前作っていただいたパルス変換ボックスを手直しするような形で 出来るのでしょうか もしくは 入力パルスを1.5倍(2パルス→3パルス) 2倍(1パルス→2パルス) どのような形が一番簡単なんでしょうかね 想像はしてみるのですが 自分にはわかりません よろしければ考えていただけますか よろしくお願いいたします  -- 廣井? 2012-05-15 (火) 12:17:32
  • 書き込みに気づかず、返事が遅くなってしまい申し訳ありません。パルス変換ボックスとは全くレベルの違うプログラムが必要になります。そして1.5倍よりも2倍の方が簡単です。 -- disklessfun? 2012-05-24 (木) 00:15:43
  • 廣井です お返事有り難うございます 車速パルスを2倍に逓倍するプログラム(簡易ロジック+簡易近似補正採用版・PIC18F2420用)を作ってみようとしています これでは やはり 低速で誤差が出るのでしょうか とりあえずこれでうまくいったら 分周と組み合わせてみようと思っています いかがでしょうか -- 2012-05-24 (木) 11:54:41
  • 2(倍速)パルスだと2.5km/h未満のノロノロ走行時はパルスを出力しませんから当然誤差が出ます。 -- disklessfun? 2012-05-24 (木) 23:56:36
  • 廣井です やっぱりダメなんですね スピードメーターには対応できないが 距離計だけなら大丈夫なかと思ってました 残念ですね 新しい距離計(トリップメーター)を手に入れたのですが 今までのラリコンはある程度パルスが違っても補正機能でカバーできたのですが 今度のトリップは 補正の幅がなくて・・・・ パルス数を逓倍しないとカバーできない場合が有りそうなので 対応していただけますか・・・ -- 2012-05-27 (日) 09:52:13
  • 現在このページに、距離だけでも正確に拾う為の特別な処理を加えたプログラムはありません。誰かが作らないと存在しないです。 -- disklessfun? 2012-05-27 (日) 22:59:16
  • 管理人さま。嬉しいです。この様なプログラムを公開してくださって特に燃費計探していました、今後のバージョンアップ楽しみにしています。ちなみにガソリン使用料を10cc単位で計測できるようにプログラム変更可能でしょうか? -- ? 2013-05-13 (月) 18:04:52
  • たびたび失礼いたします。コンパイラは何をお使いでしょうか? -- ? 2013-05-13 (月) 18:23:17
  • 燃料消費量(絶対値)なら、固定値で割り算しているだけなので、今の枠組みそのままで有効桁数を増やすことが可能です。ただし桁数が足りないのでここ( http://j-pon.air-nifty.com/blog/2013/04/post-f5a3-1.html )のように表示桁数を増やすとか、スクロールさせる機能を追加するとか、10cc単位で表示するモードを追加する等の工夫が必要になります。コンパイラは「MPLAB C Compiler for PIC18 MCU」です。こちら( http://a-desk.jp/modules/forum_car/index.php?cat_id=2 )もご覧になって下さい。 -- disklessfun? 2013-05-14 (火) 00:34:10
  • 早速のお返事誠にありがとうございます。コンパイラの価格にびっくりしました。もう、プログラムは異様変更の際は管理人さまにお願いするしかないですね。ありがとうございました。このサイト運営これからもよろしくお願いいたします。 -- ? 2013-05-14 (火) 07:25:27
  • お聞きしたいんですが、各自動車での噴射量は当然違うのでプログラム中の波形補正値の数値を変更するのでしょうか?このさいウィンドーズのメモ帳で開いて書き換えれば宜しいのでしょうか?質問ばかりで申し訳ございません。 (^^; -- ? 2013-05-14 (火) 08:44:14
  • コンパイラは実質、無料です。「MPLAB C Compiler for PIC18 MCU」について独自にいろいろ検索して頂けませんか? そうすれば「実質的に無料」との情報が大量に見つかる筈です。もし本当に何万円もするのならそんなコンパイラは殆ど誰も使いませんし、ビット・トレード・ワンさんのユーザーコミュニティサイト( http://a-desk.jp )なんかも作られなかったでしょうし、デジタルスピードメータのキット自体が発売されていないでしょう。有料版コンパイラを選択するのは、商用利用したりサポートを受ける必要のある企業ユーザにほぼ限られています。
    次に、「各自動車での噴射量は当然違うので」に対応するソースの修正箇所は「波形補正値の数値」ではありません。80行目を読んだ時に79行目は読まなかったのでしょうか -- disklessfun? 2013-05-15 (水) 03:12:11
  • 管理人さま、お返事ありがとうございます。ご指摘の箇所確認いたしました、お恥ずかしい。この数値の求め方は3気筒のは -- ? 2013-05-15 (水) 05:49:07
  • すみません、エンター押してしまいました。3気筒で190 mL/minの場合のFC_FACTORの求め方を教えて頂けませんでしょうか?よろしくお願いいたします。 -- ? 2013-05-15 (水) 05:53:05
  • その数値だけはわかりません。開弁時間あたりの吐出量もわからないと計算できません。よしんばわかったとしても誤差を含みますからどうせ実用できません。FC_FACTORは現状のままで実走して、徐々に現物合わせしていくしかないと思います。 -- disklessfun? 2013-05-16 (木) 00:36:44
  • はじめまして、お伺いします。デジタルスピードメーターの7セグ表示部をXBee等でワイヤレスできないでしょうか?是非ご協力いただきたいのですが? 宜しくお願いいたします。 -- mikami? 2013-06-21 (金) 23:06:05
  • ビット・トレード・ワンさんのデジタルスピードメータは自動車、二輪用途を想定した商品です。その用途ではXBeeを用いる意味はあまりないと思います。固定して使うだろうし、「どうせ電源線を配線するなら、一緒に信号線も配線しちゃうよ。XBeeなんていらないよ」となってしまいます。仮に無理やりXBeeを使ったとしてもコストが増えるだけになってしまいます。何か他の用途を考えているなら、それを先に述べて頂けませんか? -- disklessfun? 2013-06-24 (月) 01:53:07
  • 早速の返答ありがとうございます。用途ですが、運転代行の料金メーターにしたいと思っております。 -- mikami? 2013-06-25 (火) 07:55:39
  • 客車に持ち込みたいのです、距離から料金設定をして携帯料金メーターとして使用したいのですが。 -- mikami? 2013-06-25 (火) 08:00:18
  • 用途の説明ありがとうございました。
    既に成立しているモノの中に無線を組み込むなら、モノ、無線デバイス、お互いの関連性が出来る限り低いことが望ましいと思います。具体的にこのデジタルスピードメータで言うと、メイン基板と表示部基板とを繋ぐ十数本の線を単純に無線化する方向が望ましいと言えると思います。そういう無線デバイス(パッケージ)を探されればいいのではないでしょうか。そういうものであれば、他のモノにも簡単に横展開が可能でしょう。 -- disklessfun? 2013-06-26 (水) 22:42:54
  • こんなのがありました。 http://www.herutu.co.jp/product/product_detail.php?keyid=222 表示部からのスイッチ操作を省略すれば、ほぼ無改造で使えそうです。 -- disklessfun? 2013-06-26 (水) 22:51:17
  • アドバイスありがとうございます。当方マイコンまったくの素人です、どなたか、ソフト、ハード開発してくれる方いませんか? -- mikami? 2013-06-29 (土) 09:27:37
  • 先述のリンクの先の機器を使えば簡単な改造で済み、素人に近い人でもご希望のシステムを作り上げられるかもしれません。その代わり、その機器は相当に高いと思います(どうせ高いと思うので、私は値段は見てません)。本体基板と表示部との間は専門用語的には「パラレル接続」となっています。パラレル接続のままで無線化する場合は先述の機器のようなものが必要になります。XBeeを使うのであれば、「パラレル接続」の部分を「シリアル接続」に変更しなければなりません。この場合、「デジタルスピードメータ」はほぼ全面的に作り直しになります。本体部と表示部それぞれにマイコンが必要になります。さて直上の質問についてですが、申し訳ありませんが、私は特に心あたりはありません。今ここに書いた「技術的な事情」をふまえた上で、あらためてa-desk.jpに投げてみてはいかがでしょうか? -- disklessfun? 2013-06-29 (土) 14:50:11
  • 始めまして。当方、電子機器製作に知識が全くないのでご教授願います。製品にはスイッチが付属していますが、スイッチを装着せずイルミネーション電源直結で減光モードとしたいのですが、その際、S3にイルミネーション電源を直結すればイルミネーションに連動し減光モードになるのでしょうか?なお最高速表示モードにはならなくても結構です。宜しくお願い致します。 -- ゴンザレス? 2014-02-09 (日) 10:54:07
  • 標準のファームウェアだとS3ではなくS1に5Vの電圧を入力すると減光モードになります。イルミ電源は12Vなのでこのような12V→5Vへの電圧変換回路とかフォトカプラを挟んでやる必要があります。 -- disklessfun? 2014-02-09 (日) 18:16:57
  • 早々のご回答ありがとう御座います。12V→5Vに変圧してS1に繋げばイルミ電源で減光モードになることは理解できました。電圧変換回路を組むことは素人の私には難しそうなので、「フォトカプラ」を挟む方法を行いたいと思います。素人ですみません。フォトカプラなる商品は何処で購入すればいいのでしょうか。また商品名や品番、繋ぎ方などお教えいただけないでしょうか。素人なので誠に恐縮ですが宜しくお願い致します。 -- ゴンザレス? 2014-02-09 (日) 18:52:20
  • ちょっと誤解を招く書き方だったかもしれません。フォトカプラを使った場合も「電圧変換回路」の一種であることに変わりはありません。フォトカプラを使った場合も、最低でも抵抗を2個使った回路を組む必要があります。ということで、上掲の変換回路で充分だと思います。ダイオードとコンデンサは省くことができます。 -- disklessfun? 2014-02-09 (日) 19:25:42
  • a-desk.jpに過去、類似質問がありましたね。そこに書かれているようにリレーを用いても電圧変換がおこなえます。 -- disklessfun? 2014-02-09 (日) 22:36:05
  • 有難う御座いました。がんばってみます。 -- ゴンザレス? 2014-02-09 (日) 23:59:44
  • 100円ショップにてスマホの充電器を購入。丁度12V→5Vに変圧するという情報を得たので即効バラして接続してみました。何と、見事に減光できました。投資は105円ですみました。当方、知識がないのでリレー、フォトカプラ等の理解が出来ませんでしたので色々なサイトを見て学習した結果、スマホの充電器が一番適すると判断した結果です。ご指導ありがとう御座いました。AW11のメーターパネル裏に上手く埋め込みAW11をデジパネ化しようと思います。今後とも宜しくお願い致します。 -- ゴンザレス? 2014-02-17 (月) 19:25:25
  • うまい方法を見つけましたね。技術的にも問題ありません。 -- disklessfun? 2014-02-20 (木) 01:12:19
  • PICで周波数カウンター製作しようと探しておりましたらたどり着きました。 -- ssk? 2014-05-30 (金) 23:07:20
  • 車パルス変換器で調査しておりましたらたどり着きました。車により2,4,8パルスではなくABSからの信号を利用するものなどがあり任意に分周する分周器は製作できないものかと調べております。特に25パルスを8ないし4パルスにするには整数分周ではないのでロジックICでは無理ですがソフトで実現できるでしょうか、当方ソフトには素人なので勉強したくよろしくお願いいたします。 -- ssk? 2014-05-30 (金) 23:18:09
  • 分周したパルスを最終的に何の目的で使うかで、答えに違いが出ます。自作の速度計に使うなら、ファームウェア(ソフト)内に必ず必要となる割り算処理に少し修正を加えてやればパルスの違いは吸収できます(この例は本ページで既に扱っています)。(25パルスに対応していない)メーカー品の(距離表示のみの)ラリコンへの入力に使う場合は、通常の1/4や1/8の整数分の一の分周処理をおこなった上で、間引きすぎて足りなくなったパルスを付け加える処理を組み合わせるか、テーブル用いれば実現できるでしょう。前記二例と異なり、リアル(実際)に、正確な8/25とか4/25の周波数のパルスが必要な場合、ソフトウェア(ファームウェア)での実現は困難です。 -- disklessfun? 2014-06-02 (月) 02:41:24
  • オルタネーター パルスに近い 信号は 電子回路で作れるのでしょうか -- Shell-Stone? 2014-11-15 (土) 20:35:53
  • サウンドレーサー用に、(パルスというより)「12V電源の電圧をエンジン回転数に合わせて脈動させられないか?」というのが正確な題意ではないですか? -- disklessfun? 2014-11-16 (日) 02:59:53
  • 初めまして、私も少し車速パルス変換の事で教えて頂きたいのですが 6パルスの車に4パルスのカーナビを付けたいのですがこのデジタルスピードメーターのキットのデフォルトですと1/2に分周てきますが3バルスになります。1パルス減になってしまいます。何か良い方法はありませんか?分周が1/1.5であれば4バルスに変換出来るのですが? [添付] -- kazuchan? 2015-03-01 (日) 22:30:48
  • こちらに回答を記述しました。 -- disklessfun? 2015-03-02 (月) 21:08:20
  • 早々の回答ありがとうございました。6バルスを4パルスに変換するのは難しいようですね。出来ましたらこのデジタルスピードメーターキットを -- kazuchan? 2015-03-03 (火) 20:45:23
  • すいません、質問が途中で送信してしまいました。このデジタルスピードメーターキットをベースに何かできませんか?もし方法があればご教授お願いします。 -- kazuchan? 2015-03-03 (火) 20:53:58
  • ベースにして十分なものが作れますよ。でもそのファームウェアは新規に作る必要があります。ただ、もしかすると、当該のカーナビは綺麗な(ほんとうの)4パルスを必要としないかもしれません。6パルスを間引いて作った汚い4パルスでうまく動くかもしれません。仮にそうだとすると、これのテーブルだけ入れ替えたもので用は足ります。 -- disklessfun? 2015-03-03 (火) 21:28:28
  • 実際に確認できないので今まで慎重目に書いてきたんですが、そのカーナビが車速パルスを距離の計測だけに用いていて、間引いて作った4パルスでも問題なく動作する可能性は十分あると思います。つまり簡易的なパルス変換機で用が足りるということです。
    ただし、この場合、マイコンの「変化割り込み」機能を使用するので、デジタルスピードメータキットをベースとして使用する場合、少し配線の改造が必要になります。「どうせハードの改造が必要となるなら、別にキットベースに拘る必要はない」と考えるなら、これみたいに一からハードを自作するという手もあります。車速パルスが5Vで、電圧変換が要らない車種ならこんな簡単な簡単な回路で済みます。キットをベースにするにせよ、一から自作するにせよ、いずれにしてもファームウェアを書き込むライタ(PICライタ)が必要になります。 -- disklessfun? 2015-03-09 (月) 23:35:42
  • はじめまして。スピードメーターキットを購入〜作成した者です。当方の車両は国産車ではない為、設定範囲のパルスでは正確な数値を表示できませんでした。 恐らく20/4気筒のパルス?または5〜6パルスと予想しておりますが、ソフトウェア上で対応は可能でしょうか? なにぶん素人の為、本ページを拝見いたしましたが理解に及ばず恐れ入りますがご教授くださると幸いです。 よろしくお願い致します。 -- daimos? 2015-11-10 (火) 12:54:52
  • そのような場合に備えてこのような計算式入りのファイルを用意しています。 http://a-desk.jp/modules/mydownloads/singlefile.php?cid=2&lid=37 ←これと、ファームウェアビルドに関する情報が入っている http://a-desk.jp/modules/mydownloads/singlefile.php?cid=3&lid=81 をダウンロードして下さい。 -- disklessfun? 2015-11-10 (火) 20:00:53
  • カスタマイズしたファームウェアをビルドする為には他にこれ http://a-desk.jp/project/car/spd_mtr/spd_mtr_v12_src.zip も必要です。ただし、難しければ代わりに私がビルドをおこなってもいいです。その場合、私が作成したHEXファイルを何らかの形でdaimosさんにお送りするという形になります。ただし、その為には少なくともdaimosさんが当該車のパルス数を調べる必要があります。同じ瞬間の、純正のスピードメータの数値と仮に4パルスにでも設定したデジタルスピードメータの数値を調べて、教えて頂く必要があります。 -- disklessfun? 2015-11-10 (火) 22:48:51
  • 早々のご回答ありがとうございます。 やはり私の知識と技術力では対応出来ないとわかりました。 -- daimos? 2015-11-13 (金) 10:04:19
  • 途中で切れてしまいました。 恐れ入りますがビルドをお願いしたく、まずは4パルスで実走測定を行いたいと思います。測定後また投稿させて頂きます。よろしくお願いいたします。 -- daimos? 2015-11-13 (金) 10:07:32
  • くれぐれも安全に気をつけて下さい。でも実を言うと、もっと確実で、はるかに正確な検証手段があります。それはまず、この距離計付きファームウェアに書き換える方法です。高速道路のキロポストなどを使って、実際の距離とデジタルメータ上の距離を比較し、それが一致するようにさらにファームウェアを書き換えると、自動的に速度表示もほぼ完全に正確に合います。こうすると純正スピードメーターにどれほどの誤差があるのかも、かなりわかります。 -- disklessfun? 2015-11-13 (金) 21:06:47
  • 私のところにメールを頂ければ、その返信の添付として距離計付きファームウェアをお送りできますよ。 -- disklessfun? 2015-11-13 (金) 22:27:48
  • メールじゃなくて、ここにしばらく貼り付けておきます。ダウンロード filever012kai_odo_spd_meter.hex 書き込み手段を持っていないなら確保して下さい。もしくは誰かに書き込んでもらって下さい。いなければビット・トレード・ワンさんに相談して見て下さい。 -- disklessfun? 2015-11-14 (土) 09:55:54
  • お返事できずすみません。 色々とありがとうございました。 ファームを書き込める環境を整えるのに時間がかかっておりました。 無事に自分でファームを書き換えられるようにはなったので高速道路 にて距離の誤差を調べてみました。 速度80/h巡航、誤差1劼△燭400m過剰表示(※500mで700mと表示) また車両側速度との誤差も記載しておきます。 20km/h→24km/h、30km/h→39 km/h、40km/h→51 km/h、50km/h→63 km/h 60km/h→78 km/h、70km/h→89 km/h、80km/h→104 km/h、90km/h→117 km/h 100km/h→131 km/h、110km/h→145 km/h、120km/h→158 km/h、130km/h→171 km/h 力不足によりご面倒をおかけしますが、この情報でビルド頂く事は可能でしょうか。 よろしくお願い致します -- daimos? 2015-12-08 (火) 14:24:22
  • お疲れ様です。距離の方のデータは、あまりに距離が短か過ぎて速度計のデータの方がまだ精度が高いくらいですね。距離を計測することで正確に補正する場合、私は最低でも50km走ります。今回のような場合でも、たとえば「速度計の瞬間視」に頼った場合の2倍程度の精度が欲しいとすれば、5〜10kmは距離をとるべきじゃないかと思います。今回の件においても、最終的には30〜50kmは走らないと本当にパルス数が合っているか確認できない可能性もあると思います。というのは外車の場合、JISの整数倍じゃなくて、分数の可能性もあるからです。
    さて、寄せて頂いた速度計のデータから作業を進めます。平均すると1.31倍くらいですね。このデータを頼りにすると、当該車は幸いなことに整数の5パルス(4パルスの1.25倍)の可能性が高いと言えます。
    (1.31/1.25)≒1.05なので速度計は約5%水増し表示されている、と。
    5パルス対応のhexをビルドしました。ダウンロード filever012kai_odo_spd_meter_5pulse_JP1_2-3__JP2_1-2.hex ファイル名にあるとおり、JP1を2-3、JP2を1-2にすると5パルス設定となります。国産車だと、速度計は水増し表示されていても、パルス数自体は規格に対してかなり正確なので、パルス数の設定が合っていれば距離計測の方は自動的にかなり合うものなのですが、もしかすると外車の場合は、パルス数の設定が合っていても距離計測の方があまり合わないということがあるかもしれません。まあとりあえず新ファームを試して下さいませ。 -- disklessfun? 2015-12-08 (火) 22:51:17
  • disklessfun様早速ありがとうございます。週明けテストしてみます。 -- daimos? 2015-12-11 (金) 10:47:22
  • そのhexは動作確認テストをおこなっていません。計算で求めた値に基づいてソースを修正して作成しただけです。もし5パルス設定でうまく動かなければ、遠慮無く報告して下さい。その場合、すぐに車速パルス発生機を用いて修正・テストをおこなうつもりです。 -- disklessfun? 2015-12-19 (土) 21:20:23

URL B I U SIZE Black Maroon Green Olive Navy Purple Teal Gray Silver Red Lime Yellow Blue Fuchsia Aqua White