2016年5月15日日曜日

IchigoJam Car/ MOV を作ってみた


NT京都で領布されていたIchigoJam Car/MOVを作ってみました。
MOVについてはこちらからどうぞ。 人気があって今は売り切れになっています。

IchigoJamにつきましては、こちらをご覧ください。

改造点

本家の説明書とすこし変えています。
  1. タイヤは大きい方で、キャスター(前輪)は低くしキャスター取り付けスペーサを18mmに高くしました。キャスターを低く作らないとラインセンサーが組み付けられないためです。
  2. モーターの配線を直付けでなく、コネクタをいれました。ピッチがあってませんが無理やり半田付けしています。
  3. 電池ボックスはお勧め品がなく手近で手に入ったものを基板に穴をあけて取り付けました。

外観写真

側面 右が前になります。 
18mmスペーサでキャスターを固定しました。
 電池ボックスが変わってます。
電線はIchigoTerm接続用です。

プログラムの方法の種類

さて、MOVのIchigoJam「mov-opt15」のプログラムには、次の方法があるようです。
  1. CN2にTVモニタとPS/2キーボードを繋ぐ。この場合接続ケーブルを別途自作する必要があります。多分既製品はないと思います。
  2. シリアル接続で(TXDとRXDを使って)PCにつなぐ。CN5を使いますが、手元になく、未実装です。USBシリアルアダプターが別途必要です。
  3. シリアル接続(TXDとRXD)で端末を繋ぐ。
2の方法というのは、PCを端末として使う方法でもあります。

今回作ってみた方法 IchigoTerm

PCを使わない方法として、Jamカーを買うような人なら既に持っているであろうIchigoJamを端末としてつないで、Jamカーのプログラムができるように考えてみました。

回路

IchigoJamのTxD, RxDとJamカーのTxD,RxDをクロス接続します。配線を延ばしたいため抵抗を追加します。難しく言えば送信端のインピーダンスマッチングと言います。


回路図

製作例

ご注意

抵抗はいれても、静電気とかで壊れる可能性があることは書いておきます。これからの梅雨の時期は大丈夫と思いますが、冬場にパチッとかをやりますと、多分壊れます。今の回路はその保護を行ってはいませんのでご承知の上でお使いください。

プログラム IchigoTerm

繋いで頂くとすぐわかりますが、このままではSyntax Errorの応酬になって使えません。そこでプログラムを用意しました。

http://pastebin.com/FAhzEbws

上のLINKに置いてあるプログラムを使います。端末側でエラー表示を無視するようになっています。

使い方

  1. 上の回路の接続ケーブルを使って端末につかうIchigoJamとJamカーを繋ぎます。まだ両方とも電源は切っておきます。
  2. IchigoJamの電源をいれてIchigoTermをRUNします。「デンゲンヲイレテクダサイ」的なメッセージが出ます。
  3. JamカーのスライドスイッチをPROG側にして電源をいれます。お馴染みのスタートメッセージとOKが出れば準備完了です。
  4. Jamカーのプログラムができる状態になっているので、プログラムしてください。
  5. 動作が確認できたら「SAVE 0」します。
  6. Jamカーの電源を一度切って、スライドスイッチをRUNにします。
  7. 電源をいれれば、プログラム通りに動くハズです。

余談 インピーダンスマッチングって何?

ケーブルに入れた抵抗器でインピーダンスマッチングと書きました。これが無いと何が起こるかを簡単に書いておきます。

配線を長くすると、信号はTxD端子を出て配線を伝わって走っていきます。RxDに到達したとき何が起こるのかというのが今回のお話です。

電線を走っていった信号はRxDにブツカル訳ですがこのときRxDが(電気的に)適度に柔らかいとそのまま入っていきますが、固かったり柔らかすぎると跳ね返ってしまうのです。この電気的柔らかさをインピーダンスと考えて頂ければよろしいかと思います。

同じ電気的柔らかさは電線にもあって抵抗値(単位はオーム)であらわされます。昔のTVのケーブルの50オームとか300オームというのがこれです。電線とTxDやRxD端子のインピーダンス(電気的柔らかさ)を近くして跳ねっ返りが起こらないようにすることをインピーダンスマッチングと言います。

マッチッグしないと何が起こるの?

 信号が跳ね返るとどうなるかというのが次の写真です。信号が跳ね上がっているのがお分かり頂けるでしょうか。この程度であれば、実害はあまりないのですが、信号が0V~VCCの範囲を超えることは信頼性の上から好ましくないですし、高速信号の場合は正常に動かなくなったりします。

インピーダンスマッチング無し(抵抗なし)の場合

抵抗をいれると信号波形が大人しくなっています。 今回は送信端でいれていますので「RxDで跳ね返った信号がTxDに戻ったところで、さらに跳ね返るのを止めている」ことになります。

インピーダンスマッチングあり(470オーム)の場合

以上



 




0 件のコメント:

コメントを投稿