入力不足に対する論理回路の構築1 ~ 設計編 ~
概要
マイコンを使ってモータドライバを通してステッピングモータを駆動させたいと思ったもののモータドライバは入力が4つあることがわかりました。
使用しようとしているマイコンはPIC10F200で3つしか出力できません。
そこで論理回路を使用して駆動させれるように考えてみます。
目的
- マイコンの出力を4本にしたい
- マイコンの出力をモータドライバに合わせて出力したい
設計
どのように作成すればよいかを考えるために入出力を考えてみます。
まず、ステッピングモータを回すための入力には以下の入力が必要になるようです。
※私自身は業務でこういった経験はないので、これが本当に良い設計方法かはわかりません。
| No | Out0 | Out1 | Out2 | Out3 |
|---|---|---|---|---|
| 1 | 1 | 0 | 0 | 0 |
| 2 | 1 | 1 | 0 | 0 |
| 3 | 0 | 1 | 0 | 0 |
| 4 | 0 | 1 | 1 | 0 |
| 5 | 0 | 0 | 1 | 0 |
| 6 | 0 | 0 | 1 | 1 |
| 7 | 0 | 0 | 0 | 1 |
| 8 | 1 | 0 | 0 | 1 |
3ビットは2の3乗で8通りの出力であるため、すべて0の出力と合わせると8通りを超えてしまいます。今回は少し乱暴かもしれませんが、ステッピングモータへの入力は以下とします。
| No | Out0 | Out1 | Out2 | Out3 |
|---|---|---|---|---|
| 1 | 0 | 0 | 0 | 0 |
| 2 | 1 | 1 | 0 | 0 |
| 3 | 0 | 1 | 1 | 0 |
| 4 | 0 | 0 | 1 | 1 |
| 5 | 1 | 0 | 0 | 1 |
Inをマイコンの出力、Outを捨てピングモータの入力として下記表にまとめます。
| No | In0 | In1 | In2 | Out0 | Out1 | Out2 | Out3 |
|---|---|---|---|---|---|---|---|
| 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 2 | 0 | 0 | 1 | 0 | 0 | 0 | 0 |
| 3 | 0 | 1 | 0 | 0 | 1 | 1 | 0 |
| 4 | 0 | 1 | 1 | 0 | 0 | 1 | 1 |
| 5 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
| 6 | 1 | 0 | 1 | 1 | 0 | 0 | 1 |
| 7 | 1 | 1 | 0 | 1 | 1 | 0 | 0 |
| 8 | 1 | 1 | 1 | 0 | 0 | 0 | 0 |
この表をブール代数やド・モルガンの定理等を使って式で表現してみます。
※否定は上に線を引くのですが、ここでは下に線を引いて否定とします。
論理式
出力Out0
= In0・In1・In2+In0・In1・In2
In0でまとめられそうですね。
= In0(In1・In2+In1・In2)
出力Out1
= In0・In1・In2+In0・In1・In2
In1・In2でまとめられそうですね。
= In1・In2(In0+In0)
かっこの中は常に1になるためまとめます。
= In1・In2
出力Out2
= In0・In1・In2+In0・In1・In2
In0・In1でまとめられそうですね。
= In0・In1(In2+In2)
かっこの中は常に1になるためまとめます。
= In0・In1
出力Out3
= In0・In1・In2+In0・In1・In2
In2でまとめられそうですね。
= In2(In0・In1+In0・In1)
論理回路
論理式をもとに論理回路を描きます。

最後に
論理回路の設計が完了したので次回はブレッドボード上で実際に回路を組み動作確認を行っていきます。
1件のコメント