---パルスジェネレーターによるテスト (9)---

 MPG(手パ)を直接モーターのドライバーに接続して、
 ステッピングモーターもテストするためのアダプター、
 おもちゃが完成しました。

 

 このアダプターには、DIR信号を作るためのD-FFのICと、
 おもちゃのルーレットよろしくLEDを制御するための
 PIC(16F88)を組み込みました。あと一つは、MPGに電源を
 供給するためのアダプターの役割もします。
 エンコーダーを早く回すと、LEDの回転が分からなくなります。
 まあ、ちょっと、お遊びをしてしまいましたが、うまくできて
 自己満足です。

---パルスジェネレーターによるテスト (8)---

 テスト基盤から、組み込み用の基盤に作り直し、組み込み
 前のテストです。

 プログラムも多少変更しました。
   ○電源投入後、LEDを一つ約1.5秒点灯させ、スイッチ
     の代わりにする。
   ○MPGを回すのを止めて、約1.5秒動かさないと、LED
     を消灯させる。
 の変更をしました。TIMER0の割込で、おおざっぱな時間を
 計測しています。

 

 ケースにLEDを埋め込む予定ですが、まだ、部品が届かな
 いので、手持ちのLEDを基板につけてテストです。

---パルスジェネレーターによるテスト (7)---

 回転方向に従って、LEDを点灯しようと、あれこれ考え、
 アドバイスもいただきました。ただ、LEDをつけるだけでは
 おもしろくないので、ルーレット風に、表示するように、PIC
 で簡単なプログラムを組んでみました。
 テストボードで、8個ならんだLEDをMPGによって、点滅
 させて見ました。

 

 ゆっくり回すと、回転方向がわかりますが、普通の早さで
 回すと、全部が点灯してみえるようです。
 回転方向が分かるようにするには、LEDの点灯と点灯の
 間に、ウエイトタイムをいれるようでしょうかね。
 まあ、お遊びの要素ですので、それほど気にしなくても
 いいのですが。
 74HC74等の信号と「and」とる必要があったので、
 74HC08( or 74HC00)と74HC123を使う予定でしたが
 PICを使ったので、必要なくなりました。でも、よく使われる
 タイマーICの555よりも、多機能?の74HC123の使用方が
 わかり、大きな収穫でした。

---パルスジェネレーターによるテスト (6)---

 アドバイスをいただきました。74HC00を使うと、IC等で、
 2個で済み、部品数を大幅に減らすことができるとのこと
 です。
 今まで、Dフリップフロップからの信号1本で、処理しようと
 頭が固まっていました。反対の信号が出ていること忘れ
 ていました。2本使うととても簡単にできます。
 Dフリップフロップからは、Qという信号とのQインバートと
 言う、反対の出力がありますので、これを使えば、もっと
 単純にできたようです。

 

 こうすれば、未入力端子の処理も必要なく、すっきりです。
 ただ、こうなると、ちょっと、おもしろくなくなりますので、
 多少手を加えて、おもちゃの要素も入れてみようかななんて
 思ってます。
 LEDを大幅に増やして、回転方向を示す、ルーレット風に
 したら、おもしろいかなと思いました。

---パルスジェネレーターによるテスト (5)---

 いろいろ回路を考え、ブレッドボードで、あれこれ実験等を
 しました。識者からみれば、なんだこれは、と言われそうで
 すが、能力それなりです。
 まず、次のような回路を考えました。

 

 
 Dフリップフロップで、DIR信号を作りました。この信号は、CW
 方向にMPGを回転するとHightなり、MPGをCCW側に回転す
 るまで、Hightに固定されます。
 
 この信号を、前掲の回路にいれてやると、CWのLEDを点灯さ
 せ、CCWのLEDを消灯することができます。
 しかし、この回路では、電源を入れた時はCCWのLED点灯し、
 また、CW方向への回転をやめてもCWのLEDが点灯したまま
 になります。
 MPGをCCW方向へ回すことによって初めて、
 Dフリップフロップからの信号をLowにすることができ、
 CWの信号を消灯させることができます。
 この二つの不具合があるので、74HC123を使って、
 MPGの回転を検知させ、回っている時に、Hightの信号
 を取り出します。この信号とDフリップフロップからの信号の
 ANDをとる回路を入れて、MPGが回転しているときだけ、
 目的のLEDを点灯させるようにします。

 

 写真の回路のようにすることで、電源投入時と、MPGの回転
 が止まっている時は、LEDが消灯することになります。
 74HC123からの信号がHightになったときだけ、つまり、
 MPGが回転しているときだけ、CW、CCWのLEDがつくこと
 になります。
 構想は、いいように思いますが、部品がそろってから、
 トライアンドエラーで組みたてます。
 接続に必要なのは、MPGからは、4本なのですが、
 過日作成した16ピンのコネクターを直接接続できるように、
 16ピンのコネクターを使います。自作手パよりは、一回り
 小さい、同じような、台形のケースを使いました。

 

 ちょっと、かっこよくできたかな、なんて、自画自賛してます。
 これから、必要な、LED等の配置をします。

---パルスジェネレーターによるテスト (4)---

 パルスジェネレータをDフリップフロップを介して、直接
 ステッピングモーターをテストする環境を作りました。
 そのときのDフリップフロップの回路があるので、そのままで
 はもったいないので、勉強がてら、また、ケースに組み込む
 ことにしました。
 CWとCCWの目安として、CWの時にLEDがモニターと
 して点灯するようにしましたが、ちょっと物足りないので、
 CW用とCCW用のLEDを用意して、それぞれ、回している
 時だけ、点灯するようにしたいなと思いました。
 これが初心者に毛が生えたくらいの私には結構むずかしく
 あれこれあさりました。
 
 
 最初、タイマーICの555に目をつけましたが、このICには
 リトリガーの機能がなくて、目的の機能をさせるためには、
 付加回路が結構難しいようなので、断念。

 やっと、諸兄のHPに載っている回路を参考にすれば
 可能のように思えました。
 このHPには、74HC123を使用して、水車の回転を検出
 して、豆電球を点灯する回路が紹介されてました。
 また、別な先達のHPにも、74HC123使って、パルスを制御
 する記事がのっていました。
 ということで、74HC123が必要になりましたが、あいにく、
 Dフリップ不フロップの回路を組み込むためのケース等の
 部品を注文してしまいました。
 74HC123だけを頼むとなると、送料が500円ぐらいかか
 るので、もしやと思い、某オークションをみてみると、
 でてました。10個で360円。定形外で送料120円。
 10個も必要ないのですが、、だめにする自信があるので、
 予備の予備も含めてということで、落札してしまいました。
 
 コンデンサーと抵抗等の部品を多少外付けすると、
 パルスジェネレーターのパルスを拾って、Hightの出力を
 維持できそうです。
 この74HC123は、ワンショットマルチバイブレーターと
 呼ばれていて、タイマー計測中にトリガーがかかるとその
 分タイマーを延長できる機能がついているそうです。

 

 いろいろ調べていて、世の中には、便利なものがあるんだ
 なとあらためて思いました。

---パルスジェネレーターによるテスト (3)---

 実際にうごかしてみました。プルアップでよかったのか疑問
 でしたが、プルアップの回路でよかったようです。
 ブレッドボードで仮組で動作させてみました。
 オシロで確認しました。DIRの信号は、パルス状にしか、
 オシロ上では確認できないので、LEDをいれてみました。

 

 CW(時計方向)では、LEDが点灯しますが、
 CCW(反時計方向)では、LEDが消灯します。
 ユニバーサル基板に組んでみます。

 

 あまり体裁はよくありませんが、実際に組み込んでみたもの
 です。
 これをステッピングモーターに接続して回してみます。

 

 ゆっくりですが、手パの動作に従って、CW、CCWと追従して
 回ります。
 それにしても、先達は、すごいです。

---パルスジェネレーターによるテスト (2)---

 ○ECさんの回路を参考に、回路図を書きました。
 ○ECさんの回路では、4013のDフリップフロップのICを使っ
 てますが、○月では、SN74HC74のICの取り扱いしかないの
 で、これを使います。
 真理表を見てみると、

 

                     
 のようにSET・RESETとPRE・CLRの条件が反対になってます。
 SN74HC74は負論理?のようです。
 ある方に紹介いただいたサイトには、
  負論理のもうひとつの意味は、前図74HC74の-Qのよう
  に、1と0の論理レベルが反対になっていることを表す場
  合です。
  この場合にはLowで1、Highで0の意味であることを表して
  います。
                            
 記述があります。この辺をよく考えないで、PRE・CLRをプル
 アップする回路にしてしまいました。
 Highで思った動作になるのですが、Highが0だと、なにも考
 えずにグランドに落とせば良かったのでしょうか。
 まあ、これも勉強です。下記のような回路で、出力をオシロで
 みてみたいと思います。

 

   (ICはHC74HC74の間違いでした。)
 どうなることやら。
 回路図では、プルアップの抵抗をいれていませんが、
 実際の配線では、プルアップ抵抗念のためにいれておき
 ました。

---パルスジェネレーターによるテスト---

 いつの間にか、ステッピングモーターが増えてしまいました。
 それそれ目論見があって集めましたが、テスト方法に手間
 取ってました。
 ある方の掲示板を見てたら、以前にアドバイスを受けたこと
 のある方の記事が目にとまりました。
 その方は、手動パルスジェネレーターをDフリップフロップ
 回路を介して、直接ドライバーに接続してるようでした。
 Dフリップフロップは、初めての言葉で戸惑いましたが、
 いろいろ調べて見ると、私にもできそうなので、早速部品
 を調達して、トライしてみることにしました。
 通常、手動パルスジェネレーターからは、A相、B相の信号
 が出力されます。

 

 このままでは、ドライバーに入力できません。ドライバーにも
 よりますが、1パルス入力方式の信号に変換する必要が
 あります。

 

 この変換にDフリップフロップの回路が使えるようです。 
 A相の信号は、そのままドライバーのパルスに入力します。
 B相の立ち上がりのタイミングで、そのときのA相の信号のHL
 を判別してその信号を出力する役割をDフリップフロップの
 回路に分担させます。
 CW(時計方向回転)のB相の立ち上がり時のA相は、必ずH
 になります。CCW(半時計回り)のB相の立ち上がり時の
 A相は必ずLになります。

 

 実際には、B相の信号をクロック入力に入れます。A相の
 信号は、ドライバーへの接続とデーター入力の両方に入れ
 ます。こうすると、CWの時は、出力がHに、CCWの時は、
 出力が、Lになります。
 Dフリップフロックを使うことによって、A相B相の信号を
 1パルス(PULSE/SIG CK/DIR)方式に変換できること
 になります。

 幸い、回路図は、○ECさんのHPにありますので、これを
 参考に部品が届きしだいトライしてみようと思います。
 DフリップフロップのICは、○ルツには、
     TC4013BP
 という○ECさんの回路図と同じものがありますが、○月には、
     SN54HC74
       (SN74HC74の間違いでした。)
 というICしかありません。
 この二つは、同じ動作をするようですが、ピン配置・真理等が
 違うようで、ICを差し替えればいいというような互換性はない
 ようです。
 他の部品も必要だったので、○月に注文しました。
 ○ECさんの回路図には、カレントダウンの回路も組み込まれ
 ていますが、とりあえず必要ないので、信号変換の部分だけ、
 まねをします。