トップ-ロゴ
トップ ニュース 製品案内 ダウンロード サポート 業務案内 会社情報 サイトマップ ナビゲーションメニュー

トップ >> 電気電子系教材 >> C言語によるZ80制御入門と機械制御の考え方 >> バーチャル実習

2.DCモータ(M1)

(例題) 押ボタンスイッチ1(PB1)を押すとDCモータ1(M1)が右回転し、
近接スイッチ(LS1)がM1を3回検出したらM1が止まるC言語プログラムの作成

このセクションではDCモータ1(M1)が回転するプログラムを作成して動作確認します


DCモータ

このDCモータは左右に回転することができます。DCモータ駆動基盤で回転方向を切り替えています。

outp関数について

void outp(unsigned char adrs,
unsigned char data)

指定したポートにデータを出力する
ランプを点灯させたり、モータを回転させたりするにはそれが接続されているポートに動作命令のデータを出力します。
outp関数はYellowSoft社が提供する関数で引数を2つもち、第1引数にはデータを出力するポートのアドレス、第2引数には出力データを指定します。この関数のプロトタイプ宣言はIo.hファイルに記述されています。


DCモータ駆動基盤のポートアドレス

outp(DC_MT, A);

DCモータ駆動基盤にデータAを出力する
M1が接続されているDC モータ駆動基盤はディップスイッチでポートアドレスが0x20に設定されています。
そこで、outp関数の第1引数にこれを指定することでM1を動かすことができます。
その値はDC_MTで定義されています。

M1を動かす命令

DCモータ駆動基盤の出力端子

モータ左回転命令の定義

M1を左回転させるにはDCモータ駆動基盤の4ビット目(端子4)にM1Lが接続されていますので、その端子に電流を流します。
端子に電流を流すには対応するビットを1にしたデータを出力すればよいのでM1を左回転させるには0x10の値を出力します。この値はDC_M1_Lとして定義してあります。

DCモータ駆動基盤の出力端子


モータ右回転命令の定義

M1を右回転させるにはDCモータ駆動基盤の5ビット目(端子5)にM1Rが接続されていますので、0x20の値を出力します。
その値はDC_M1_Rとして定義してあります。
また、M1を停止させるには電流を流さなければいいので各ビットをすべて0にした値を出力します。
これはDC_MA_OFとして定義してあります。

バーチャル実習スタート

M1を回転させるプログラム

#include<Io.h>
#include<Const.h>
void main(void)
{
outp((1) (2) ); // モータ回転命令
while(1); // モータ回転を維持する
}


ボタンを押してモータが動くか確認してください


[C言語ビデオメインに戻る]  [一つ前に戻る]