MDC2018のデータ量を削減したプログラムのマスタ側(メインマイコン)のプログラム
モータドライバコントローラ2018(MDC)
モータドライバコントローラ(MDC2018)は、2018年に開発されたモータドライバを制御するためのドライバ回路です。
基本データ
分類 | 名称など |
CPU | STM32F303K8T6 |
主用途 | 3ピン型MDの駆動とABZ相出力型インクリメンタルエンコーダの読み取り |
製作年 | 2018年 |
通信方式 | I²C(Slave)・UART |
使用方法
- ST-LINK V2にmdc_simpleのソースコードを書き込むか、main.cppを参考にしてオリジナルのファームウェアを作成して、書き込みます。
- I²Cコネクタ経由でメインマイコンから制御します。
- 5V駆動インクリメンタルエンコーダとモータドライバ(2018年)制御端子を接続します。
詳しくは、readme.txtを参照してください。
Diff: readme.txt
- Revision:
- 10:1bbe0d41813e
- Parent:
- 9:a3a2fb1a3ba7
--- a/readme.txt Tue Apr 30 04:54:26 2019 +0000 +++ b/readme.txt Thu Jun 27 07:56:29 2019 +0000 @@ -12,8 +12,6 @@ 3.エンコーダの角度と角速度の読み取り(単位はrad基準) float spd(); 角速度を読み取る.返り値:角速度(rad/s) float angle(); 角度を読み取る.オーバーフロー注意.返り値:角度(rad) - float position(); 1周のうちの自己位置を求める。正の値しか返さない。返り値:角度(rad) - int count; angle_e()関数が最後に呼び出された時点での回転数。返り値:回転数 //サンプル---------------------------------------------------------------------- #include "mbed.h" @@ -30,9 +28,7 @@ motor1.move(0.6); motor2.move(); - pc.printf("motor1.spd = %.3f\t",motor1.spd()); pc.printf("motor1.angle = %.3f\t",motor1.angle()); - pc.printf("motor1.position = %.3f\t",motor1.position()); pc.printf("\n"); } } \ No newline at end of file