So-net無料ブログ作成
検索選択

Masconにスピードメーターと圧力計をつける [S88]

 明日はJNMAフェスティバルを見に行こうかなあと思っております。
 さて、5月からS88 Masconにスピードメーターと圧力計をつけようとずるずるとやっております。
 最初はダイソーの100円時計でやってみて、まあ、それなりですが、360°が60分割のため、2km/hごとパタパタ値が変わるのと、時計の逆回転はスピードが遅いため、自己満足レベルでは満足レベル高いのですが・・・という感じでした。
 ということで、角度をちゃんと制御するならステッピングモーターだということで、秋月でステッピングモーターを買ってきて、制御実験を繰り返していたのですが、MDP-35Aは48ステップで時計より回転角が荒く、DRV8835を使用して、適当なPWMを使用したマイクロステップのスケッチを書いて、どうかなあとやっていました。
 しかし、マイクロステップ時に角度が等間隔にならず、出来が100円ショップ時計未満でしたので、ボツとしました。
 で、SPG27-1101が360°で120ステップということで、こっちを採用することにしました。100km/hまでの目盛りなら、1km/hで1ステップ動かすことになります。(本当はこのSPG27-1101でもマイクロステップを試してみたのですが、こっちもダメでした。ステッピングモーターではなく、私のスケッチかドライバの問題かと思います)
 そして、一応完成です。
 システムは、DSMainR5、S88 Masconと繋ぎ、S88 Masconからスピードメーター、圧力計を制御します。
re_DSC01645.jpg

 実験中ですので、ブレッドボードがスパゲティのようになっています。
re_DSC01646.jpg

 前回の時計流用品はメーター一つあたり108円(ダイソー)でしたが、今回は650円(モーター350円+ドライバ300円)です。二つで1300円。このごろ散財が激しいので、基板を作るかどうかは未定です。

 で、動画です。今回のは前のよりもいい感じです。子供も、「100キロ!」とか言いながら喜んで遊んでいました。やっぱり液晶と違ってアナログメーターは直感的にスピードが分かるような気がします。ただ、子供が「スピードが変わるとカタカタって聞こえるの?」と聞いてくるので、これは偽物だからね、と本物と違うことを断っておきました。(ステッピングモーターの音が結構うるさい)



参考に以前の100円時計のものの動画です。

S88 Analogと鉄コレのコントローラをつなぐ(pin change interruptを使う) [S88]

 複数の話題を一緒に書くと、後で探しづらいことに、このごろやっと気づいたので、単発の記事にしていきます。
 S88 Analogですが、鉄コレの101系コントローラとつないで実験をしていますが、あまり芳しくありません。
 いまはこんな感じに繋いでいて、すでに鉄道模型ですらありません。re_DSC01584.jpg
 DS One(DSJoyスケッチ)のS88端子にS88 Analogをつないで、DCC出力にはみるだけ君(DCCパケットの解析をしてくれる基板)をつないでいます。
 鉄コレのコントローラの波形はDU202(常点灯の12Vパルスとモーター駆動用の直流パルスの組み合わせ)と違い、12Vのパルス(周期は50us)のみでの駆動です。
 このため、スピードの検出が少々難しくて、まず、1ms周期のAD変換でスピードに変換してみたところ、ふらついてしまい、吊りかけ音がかなりふらつきます。(音無しのデコーダでは問題ないかもです)。平均化を入れるなどやり方はありますが、余り良くありませんでした。
 次に、今回、パルス幅を割り込みを使って検出してみることにしてみました。Arudinoには割り込みがいくつかありますが、サポートされていない、全てのIOピンに対しての割り込み(Pin Change Interrupt)とかいうのがあるということを調べていて知りました。コントローラからの信号はA3ピンに入れており、ここはArudinoの標準の割り込みでは使えないピンですが、この割り込みなら使用可能です。
 参考にしたページは、こちらこちらです。
 で、めでたく割り込みを使ってパルス幅を正確に検出することはできました。
こんなコードです。
セットアップで
  //pin change interrupt
  PCMSK1 |= (1 << PCINT11);  // A3(D17)ピンからのピンチェンジ割込みを使う
  PCICR  |= (1 << PCIE1);     // PCIE1グループからの割込み許可

割り込みは
//鉄コレコントローラパルス幅計測
ISR(PCINT1_vect)
{
  static int pulse_width_temp = 0;
  //A3(D17)のChangeで割り込みがかかる(はず)
  if(digitalRead(A3)==HIGH)
  {
    //開始
    pulse_width_temp = micros();
  }
  else
  {
    //終了
    A3_pulse_width += micros() - pulse_width_temp;
  }
}

 A3_pulse_widthにパルス幅をある程度溜め込んでから、平均化するようなルーチンです。
 で、パルス幅ですが、50us周期の信号は上記では12us~40usぐらいまでしか測れず、おまけにmicros()は4usの解像度しか持っていないようです・・・。
 なので、かなり離散的な値が出てきてと、書きながら、割り込み時に回数を記録して平均を取ろうと思いました。
 まあ、もう少し頑張んないとろくなものにはならなさそうです。

Kato E5系(HO)を「ぼくが運転!マスコン北海道新幹線はやぶさ」のマスコンで動かす。 [S88]

 題名が長すぎるような気もしますが、マスコン付きプラレールの名前が長すぎるだけだと思います。
 で、S88 Plarail Masconがとりあえず、動いたので、ふるさと納税の返礼品でいただいたKato E5系はやぶさ(HO)に2両増結した電車を動かしました。
 まず、今回のレイアウトです。いつもの部屋は新幹線を動かすのには狭いので、違う部屋に広げます。夜は寝る部屋になるので、昼間のうちに片付けないとです。
re_DSC01505.jpg
 レイアウトの形はあやのすけ様のを参考にしています。
 で、制御機器の写真は以下です。
re_DSC01501.jpg

 システム図を一応書くとこんな感じです。E5系は(台車モーターで改造がかなり面倒なため)DCC化していないので、Mp3サウンドデコーダV5のモーター線をそのままHOの線路に流しています。VVVF音はCV47:9のE231系(墜落じゃないやつ)にして、音は控えめにBoseのスピーカーから出しております。
S88 masconの説明.png

 赤外線による遠隔制御のメリットですが、こんな感じに優雅に足を組んで、上から目線で操作したり、
re_DSC01502.jpg

 レイアウトの真ん中でケーブルを気にせずに寝そべって操作したりというのが可能です。(笑)
re_DSC01503.jpg

 一応動画を載せておきます。まず、「ぼくが運転!マスコン北海道新幹線はやぶさ」のマスコンの場合です。東京から新函館北斗まで自動でアナウンスしてくれたような気がします。


 こっちはプラレールアドバンスのコントローラで動かしています。という動画です。


 一応どちらのコントローラでも、八畳ぐらいの部屋なら、受信機のほうを向けなくても受信しているようでした。(壁の色によってはだめかもですが)
 少し遊ぶと、アドバンスのコントローラのほうが使いやすいです。
 子供から、プラレールは二列車一緒に動かせるよ!と言われてしまいました。(私の作ったモノは現状1列車しか動かせません。コントローラごとの識別はしていますが)。アドバンスのコントローラ(車両付き)がAmazonで1200円で売っていたので、とりあえず買いました。
 いや、でも、複数コントローラバージョンとか作るのか?



プラレールのマスコンをDSJoyにつなぐ検討(その2) [S88]

 さて、5/3はプラレールのマスコンをDSJoyにつなげるべく秋葉原に行ってフォトトランジスタを物色しました。どう考えても、通販のほうが安いしゆっくり見られるのですが、まあ、せっかくの連休ですし。
 で、いくつか買ってみました。
(1)フォトトランジスタ3mm丸型 L-31ROPT1C
(2)赤外線リモコン受信モジュール SPS-444-1(38kHz)
(3)赤外線リモコン受信モジュールPL-IRM1261-C438
 まずは安直に(1)フォトトランジスタを使ってマスコンの受信実験です。・・・・素人にはだめですね。わかったことは、5V→抵抗(1kΩ)→Arudino In→フォトトランジスタ→GNDというつなぎ方では、全く信号が取れないという悲しい事実でした。リモコンから10mmていど離したらもうだめかなあということでした。
 で、(2)赤外線リモコン受信モジュールの資料を確認すると、2ページ目、Transmitterの項目で38KHzの搬送はローバスフィルターで平滑しつつ、トランジスタで増幅しているような回路図があります。(いや、そんなことも知らずに今まで実験してました・・・。)
 ネットで調べると、赤外線リモコンの通信フォーマット説明があります。ふーん。
 そして、Arduinoには簡単につながるようです。
 第23回 Arduinoでパーツやセンサーを使ってみよう~赤外線リモコン(前編)
 ということで、このページのまんまでArduino Unoと赤外線リモコン受信モジュールをつなげることにしました。VCC(5V)とGNDをそれぞれ繋ぎ、VoutはA1に繋いでいます。なお今回Voutのノイズがひどく、VCCとGNDに0.1uFのパスコンを入れて直りました。
re_DSC01508.jpg

 ライブラリもページのまんまを使います。
 Arduino-IRremote
 で、プラレールマスコンの信号はテレビのリモコンとは波形が少々異なるようですが、このライブラリのIRrecvDumpというサンプルでそのまま受信できましたので、何も考えずにこれで行くことにします。
 こちらが適当に作った受信のスケッチです。
 コンパイル時に注意があって、(ライブラリの所にも説明ありますが)
Make sure to delete Arduino_Root/libraries/RobotIRremote. Where Arduino_Root refers to the install directory of Arduino. The library RobotIRremote has similar definitions to IRremote and causes errors.
 とのことで、Arduino_Root/libraries/RobotIRremoteとバッティングしてコンパイルできません。消せばコンパイルできます。(私はRobotIRremoteを使ったことありませんので特に躊躇しませんでした)
 プラレールのマスコンとプラレールアドバンスのマスコンに対応していて、results.valueの値でどのボタンが押されているかを判断してシリアルに送信するだけです。results.valueがどうしてこのような値を取るかについてはライブラリの中身がよくわからなかったので、全く見ておりません。
 このソフトをちょっと改変して、DesktopStationのシリアルコマンドにしてしてDSoneなどに送れば、そのまま電車を操作させることも可能かと思いますし、適当にPWMに変換してやればアナログ電車をプラレールマスコンで操作させるのも可能かと思います。
 で、今回の目的はDSJoyに乗せますので、後はこれをDSJoyプロトコルにつなげれば出来上がりです。ということで、今度のつなぎも先ほど同様で、S88 Mascon基板のA1とVCCとGNDを赤外線リモコン受信モジュールに繋ぎます。
re_DSC01509.jpg
 で、こちらがS88 Plarail Masconスケッチです。(毎度のことながら、つなげるためだけで作ったのでかなり汚いです。)よく考えるとS88 Mascon基板はボタンすらないため、Loco番号すら変えられません・・・。SPI関連のポートが余っているので、そちらに移動させるか、S88 Analog基板用に作り直すか・・・。
 一応、S88 Mascon基板でプラレールアドバンスのコントローラが動きますよという動画です。



 
 


プラレールのマスコンをDSJoyにつなぐ検討(その1) [S88]

 題名の件、鉄道模型市のあとの飲み会で「えー、またそういうのつくるの?」と言われてしまいましたが、そういうのを作ろうと思います。
 S88 DSJoyは「電車でGo!マスコン」、「Tomix DU202-CL」と来ましたが、次はプラレールマスコンをつなげようと思います。
 なんと、プラレールのマスコンは実売価格4,000円台にして、新幹線3両+マスコンに加え、音声が付きつつワイヤレスという、お化けみたいなスペックのマスコンです。そして、幼稚園児、小学生低学年が触っても(おそらく)壊れない耐久性を兼ね備えています。大体、Mp3デコーダのジョイント音も、発車ベルやドア開け閉め音もプラレールが先に実現しています。そして、プラレールこそが、若者を鉄道模型へいざなう入り口のはずです。プラレールの資産を有効活用しつつステップアップできるはずです?
 で、まずはプラレールマスコンの赤外線信号がどうなっているかを確認します。
 これがプラレールのマスコンです。
re_DSC01495.jpg
 こっちが、プラレールアドバンスのマスコンというかコントローラです。
re_DSC01496.jpg
 こんな感じで、とりあえずはS88Detector基板を流用して、フォトトランジスタの出力をオシロで見ます。
re_DSC01497.jpg

 これが代表的な波形です。例として、Achのマスコンを”はやい”に合わせたときの赤外線の波形です。 オシロの信号はHの時は消灯でLの時は点灯です。長い点灯を1、短い点灯を0とすると、上記では、100110010となります。38kHzぐらいで変調されていますが、サチらせて変調は見えなくしております。
はやい_A.png

 プラレールのマスコンは9ビット、アドバンスのマスコンは8ビットの信号で、DCCに似たような信号が出ております。
 点灯開始から
0の時は500usで消灯、周期は1250us
1の時は1300usで消灯、周期は1800usというところでしょうか?
(DCCと違って消灯時の時間は一定のようです)

 で、これが繰り返し周期的に出ています。
 下記がプラレールアドバンスのマスコンのAchの周期で、Chごとに周期をずらすことによって、混線対策をして、複数のマスコンに対応させているようです。2回同じものを送るというのを繰り返すという形に見えます。下記の波形では一つ波形をだしたら30ms待ってもう一回波形を出す。これを130ms周期で繰り返すみたいなかんじです。
周期_A_アドバンス.png
 
まとめるとこんな表になりました。
プラレールマスコンプロトコル.png

で、受け側の処理としては
(1)点灯スタート↓でカウント開始
(2)800us後に状態を確認してLなら1、Hなら0
(3)8ないし9ビット格納後に消灯のまま5ms経ったらバッファリセットしつつ、S88へコマンドを格納する
 これで、行けそうな感じなので、S88 Mascon基板かS88 Analog基板を適当に改造して作ってみるつもりです。
 で、秋月で、適当に赤外線用のフォトトランジスタを買って試してみようかと思います。(どれが良いのかさっぱりわかりませんが)
 一点残念なのが、マスコンのボタンを押しても送信されないことです。さすがにそこら辺の改造を始めるなら、マスコン基板を分解して入れ替えるとか大変な作業になりそうですし。

 で、秋月でフォトトランジスタなどを買って、その2に続きます。

鉄コレ式制御器 国鉄101系運転台型コントローラーDX の波形 [S88]

 昨日、シュッシュポポンに行った影響で、なんとなくNゲージの長い編成を運転してみたくなったので、子供とImon横浜店の貸レイアウトに、ロマンスカーを2編成持って行って1時間遊んでいました。貸レイアウトデビューです。複線を1時間借りて税込み1620円でした。レイアウト自体は大きく、コントローラもTomixのN-S2-CLで、初めて使いましたが、音や線路の継ぎ目音なども聞こえてとても楽しかったです。レイアウトが大きすぎて、遠くのほうが見えませんでしたが・・・。
re_DSC01388.jpg

 さて、S88 Analogに「国鉄101系運転台型コントローラーDX」をMECYさんがつなげるとのことでしたが、N-DU202-CLとは波形が違いますと話したら、現物を送っていただいて、私の方でS88 Analogへの接続確認をすることになりました。
 で、これが写真です。
re_DSC01390.jpg

 普通に動かす分には、抵抗制御の音や線路の継ぎ目音、警笛や、ブレーキ音など聞こえ、とても楽しいコントローラです。
 ブレーキ部分はグレードアップパーツが発売されていますので、N-DU202-CLのブレーキレバーもグレードアップできないかなあと思っていたのですが、大きさが全然違いました・・・。
re_DSC01389.jpg

 で、本題ですが、これが停止時の波形です。残念ながら0Vで、常点灯に対応しておりません。
停止.png

 次に、速度調整ダイアルを左一杯にした場合の始動直後の波形です。
始動直後_速度ダイアル左一杯.png

 速度調整ダイアルを右一杯にした場合の始動直後の波形です。
始動直後_速度ダイアル右 一杯.png

 速度調整ダイアルを左一杯にした場合の最高速の波形です。
最高速_速度ダイアル左一杯.png

 速度調整ダイアルを右一杯にした場合の最高速の波形です。
最高速_速度ダイアル右一杯.png

 12VのPWMで、速度調整ダイアルとスロットルによって、PWMのDutyが変わるという方式になります。(N-DU202-CLは常点灯部分がPWMで、速度はDCの電圧だった)。
 技術的には、明らかに停止時の常点灯が可能だと思われますが、鉄コレって、前照灯も室内灯もないので、機能を切ったんでしょうね。
 で、ここまでならいいのですが、問題が一つあり、以下のおまけ波形です。1msぐらいに1回出ているようなフシがあります。
おまけ波形.png

 進行方向を逆にしても、出ます。
おまけ波形_逆側.png

 ±12Vが出てしまいますので、現状の方向検出では、いつもForwardになってしまいます。なぜなら、検出期間中、1回でもプラスの電圧(High)を検出したらForward、ずっと0V(Low)ならReverseという簡単なルーチンにしているためです。
 鉄コレ用に直すなら、側面の速度調整ダイアルを目いっぱい回しておいて、プラスの電圧が検出中の1/4以上ならForward、1/4未満ならReverseみたいなルーチンにすればよさそうです。
 と、ここまで書いて、よく考えるとS88 Analogにはボタンがいっぱいあるので、どこかのボタンを方向切り替えに割り当てればいいかなあともちょっと思いました。そうしたら、普通のパワーパック系もスロットル0から使えますし。
 まあ、ここら辺はまた追々考えていきます。すぐにゴールデンウィークですし・・・。

 
 

Tomix N-DU202-CLを買った [S88]

 来週N-DU204-CLが発売というこのタイミングで何をしているかというと、S88 Analogのデバッグをパルスコントローラ(というか常点灯コントローラ)でやりたいなあと思ってました。
 理由は常点灯のパルス信号で前進、後進が簡単に検出できるからです。
 しかし、普通のTCSパワーユニットN-1001-CLはアナログの常点灯させるわけでもないし、丸いツマミはあまり好みでもないし、と思いましたが、といって、N-DU204-CLは新発売で18,000円ぐらい払うのはわたしには高いよなあと思っておりました。
 で、よく見ている橋のくまさんのブログ様はYahooのオークションをよく使っておられるようなので、私も突然、Yahooオークションデビューしてみました。
 よくわかりませんが、N-DU202-CLが10,000円ぐらいで買えました。よかったよかった。

 で、今日から、S88 Analogのデバッグです。
re_DSC01343.jpg
 
 波形を見ていませんが、おそらく少々交流チックな波形が出ているようで、S88 Analogで計算しているスピードがふらついて、吊りかけ音がフニャフニャしていて気持ち悪いです。ちょっと平均化のサンプリング数を増やそうと思います。前進、後進は常点灯のおかげで、ばっちり検出できました。
 今週末をめどにいろいろと作っていこうかなあと思います。

S88 Masconの不具合確認中 [S88]

 さて、今日は子供と一緒に江ノ電バス祭りに行きました。
 子供も、私もバスはそんなに興味がないのですが、エンジンとか見られたら面白いかなあとおもったもので。でも、エンジンルームは見えませんでした。なんか、粗品でバッグとかカイロとかポンチョとか、ジュースとかもらってよかったです。高速バスの交代乗務員の寝床も見られましたし。バスの洗車体験があって、バスに乗り込んで大型洗車機に入るのがありました。子供は大興奮でした。
 近くのJR鎌倉車両センターを外から見ようかと思いましたが、あまり見られるいい場所がありませんでした。NEXや横浜線や横須賀線が止まっていました。なんかこういう機会(これは昨年)に行くべきですね。
 で、本題です。頒布した方から、うまく動かないというお話があり、
-----------
・S88端子、DC入力から電源を入れてもバックライトが点くだけ。
・S88端子を抜き差ししているとたまに起動画面になるが、それ以上は進まない。また、一部が文字化けしたり、1文字1文字が順にゆっくり出現したりすることもある。
・さらにまれに通常画面に行き着くが、コントローラーをつないでもまったく反応無し。
------------
昔のSoundOptionの時のメロディーが遅いに似たような症状かなあと思い、電源電圧を振ってみることにしました。
 実験環境は以下の感じで、KatoのStandardSで電圧を振ります。もちろんACアダプタは秋月の平滑化された直流が出るものにしております。で、S88 Masconのプログラムする端子から5V、GNDをつないで、5Vを振って起動がどうなるかを確認しました。
re_DSC01339.jpg

 そして、
(1)基板は、二種類(液晶バックライトの制限抵抗を100Ω、220Ωのもの)です。
(2)Masconは1ハンドル、2ハンドル、付けない、と試しました。
(3)電圧の過渡特性が影響しているかもと思い、方向キーで一気に4.5V入れるのと、速度ボリュームで4.5Vまで徐々に上げるという二つを試しています。
 なお、電圧は2.8Vあたりでマイコンが起動する以外は、どの電圧でも挙動は変わらなかったので、電圧を振るのは省略しました。(4.5Vに統一)。あとは3V台だと、設定のため、液晶が薄くて見えないというのもありましたが。
 で結果を字面で書いていくと、
A:(1)100Ω(2)1(3)一気 → 問題なし
B:(1)100Ω(2)1(3)徐々 → ごくまれに問題あり
C:(1)100Ω(2)2(3)一気 → 問題なし
D:(1)100Ω(2)2(3)徐々 → 問題あり
D:(1)100Ω(2)無(3)一気 → 問題なし
D:(1)100Ω(2)無(3)徐々 → まれに問題あり
E:(1)220Ω(2)1(3)一気 → 問題なし
F:(1)220Ω(2)1(3)徐々 → 問題なし
G:(1)220Ω(2)2(3)一気 → 問題なし
H:(1)220Ω(2)2(3)徐々 → 問題なし
H:(1)220Ω(2)無(3)一気 → 問題なし
H:(1)220Ω(2)無(3)徐々 → 問題なし
ということで、液晶の制限抵抗を100Ω、2ハンドル、徐々に電圧を上げると問題(液晶表示がなくなる、ずれる)が起きることが分かりました。
こんな感じです。
re_DSC01341.jpg
re_DSC01342.jpg

マイコンはとっかえひっかえしても変わらず、基板についてきました。
抵抗ですが、
液晶制限抵抗100Ω,電圧降下1.73V→17.3mA
液晶制限抵抗220Ω,電圧降下1.93V→8.7mA
という感じです。

 理由はわかりませんが、
・液晶の制限抵抗は220Ωのほうがシステム的に良いようです。
・2ハンドルよりも1ハンドルマスコンのほうがシステム的には良いようです。
(電力が少ないからでしょうか?)
 でも、液晶の表示ずれの時は、どうやらマイコンは動作しているようです。ちょっと動作が違うかもです。


S88 Analogのデモ [S88]

 今日は妻の誕生日で、何か欲しいものある?と聞いたら、チーズケーキはもう食べたから、今度はレーズンケーキと言われたので、子供と一緒に(というか指図しながら)レーズンのパウンドケーキを作りました。オーブンレンジを1年前ぐらいに買い替えているのですが、ちょっと温度と時間を間違えて、微妙な味になりました。レシピでは、160℃、40分でした。前の非力なオーブンレンジでは、180度、1時間ぐらいで、いい感じに焼けていましたが、今度のオーブンレンジは(前のに比べると)高級品を買ったので、レシピ通りの時間にしたらダメダメで、追加で20分160℃~170℃焼きましたが、微妙。今度は170℃、1時間でやると心に決めました。
 で、本題(と言ってもこっちもおまけのようなもの)です。
 S88 Analogのスケッチをかなり適当にD101操作風に作りました。
 S88 Analogのボタンですが、
[Loco][1][2][3]
[Fsel][4][5][6]
[    ][7][8][9]
      [ ][0][ ]

としています。空欄はまだ何も割り当てていない。Fsel押すとF00,F10,F20+テンキーのFnを送るようになる。
で、その動画です。

 PWM方式のコントローラは思ったよりも安く手に入りそうなので、来たら、また試して紹介したいと思います。

S88 Analog Control基板デバッグ [S88]

 妻にホワイトデー何がいい?と聞いたら、チーズケーキと言われたので、子供と一緒に久しぶりに作りました。混ぜて焼くだけのケーキを作るのは昔から大好きです。(つまりチーズケーキとかパウンドケーキ)。逆にイチゴのショートケーキなどデコレーションをしないといけなくて、且つ、焼いていないものがつくもの(泡立てた生クリームとか生フルーツ)はお腹の弱い私はすぐに調子が悪くなるので、好きではありません。
 ケーキのレシピはこちらで作りました。クックパッドは玉石混交で、レシピがはずれると、かなりへんてこな味に仕上がるので、私は基本的にメーカーのレシピで作ります。
 チーズケーキにしては少々甘めでしたが、材料費だけで900円近くもするので、(クリームチーズと生クリームが高い)、おいしかったです。が、写真は失敗のようです。照明かなあ。(あと、下にクッキーを砕いたのを敷いています)
 re_DSC01330.jpg

 さて、基板が組みあがりましたので、デバッグを始めました。
 UI部分は作るのが面倒な割に書くことがありませんので、割愛します・・・。
 操作はD101風にしました。ただし、まだ、Loco番号の設定と、ファンクションを鳴らす程度しかできません。
 で、アナログコントローラの電圧を確認しておこうと思って、TomixのN-1とKatoのStandard Sの波形を確認しました。どちらも無負荷状態です。
 まずはトミックスのN-1です。特に何の引っ掛かりもなく直流でした。
Tomix_n-1.png
 ただし、コンデンサが入っているのか、私の基板に入れる程度の小電流では、減速時になかなか電圧が下がってくれません。放電用に大きな抵抗でもつなぐかと思って12V-0V間に大きな抵抗47Ω(2W品かなあ?)をつないだら、いい感じに電圧の下がりは早くなりましたが、アッチッチになったので、もう少し電圧やW数を考えてやった方がよさそうです。いっそのことモーターを一つつないでおくのも手かなあと思いました。(いやいや、それはないだろう。)
 次にKatoのStandard Sです。
kato_powerpack_standard_s.png
 ACアダプタの出力がACだったので多分そうだろうなあと思っておりましたが、案の定平滑されていない信号です。電圧もすごいですが、ほぼ無負荷状態なので気にしないでください。
 一応、マイコン取り込み時に、ソフト的に1ms周期で電圧を測って、100ms周期ごとに平均値に直して速度データにするようにしたので、まあ、少し速度値がふらふらする程度までには良くなりました。
 このKato Standard Sは普通の平滑化された直流を入れてやると、普通にトミックスのN-1と同じような波形になりますので、今回は平滑化したDCを入れる使い方をすることにします。おまけにTomixと違い出力にコンデンサ?が入っていないようで、減速時も電圧がスロットルに忠実です。(自己責任です)
 ということで、私の所有コントローラで言うと、
・Tomix N-1は、平滑化されたDCで使いやすいが、減速時、電圧の下がりが遅い。
・Kato Standard Sは整流されただけのDCで使いづらいが使えないわけでもない。
・Kato Standard S + 秋月とかのACアダプタ 平滑化されたDCで、減速時の電圧も下がりやすく一番良い?
となりました。
 次の問題は、以下の回路です。
AnalogIn.png

 電気のことはさっぱりなので(←それはどうかと思うが)、何も考えずにYaasan様のDSMainR2から回路をコピーしてきました。
 で、実際に動かしてみると、私が思っていたことと違うことがわかりました。(ちゃんと実験しておけよ!いう感じですが)
 回路はCN6またはCN3からパワーユニットの電圧が入ってきます。
 そして、ANALOG_IN信号側はブリッジダイオードを通って、M側がGND、P側がパワーユニットの+電圧となり、2.2K,1Kの抵抗で分圧され、12Vが来ても3.75V(=12V * 1.2k / (2.2k+1.2k))の電圧になります。それなりに高い電圧が来ても。D5のダイオードから5Vラインのほうに電流が流れて、ANALOG_INの電圧は5.5V程度でした。
 で、問題はPWM_DIR信号側で、ある電圧未満はLowになるので、実験のデータで言うと、パワーユニットの電圧が2.24V未満では、Lowになりました。
 つまり、パワーユニットで前進、後進時
前進時:PWM_Dirは初めLow(後進側)、2.24V過ぎるとHigh(前進側)
後進時;PWM_DirはずっとLow (後進側)
 まあ、適当にソフトで2.24V以下の時は、まったく走り出さずに、それ以上で走り出しにしましたが、パワーユニットのつまみを1/4以上回さないと方向すら検出できない、ちょっと悲しい回路になりました。常点灯がついていたら、方向が分かるので、この現象は回避できると思います。(でも、PWMなので、速度の検出は今よりも悲しいことになるかも)