2022年8月4日

スライダーレールを動かす (C言語の場合)

DOBOTには、拡張機器(別売)としてスライダーレールキットがあります。
モーター駆動式の左右スライド機構により、DOBOTの作業範囲を大幅に拡張できます。

DOBOT Magician スライダーレールキット

接続方法について

本体の組立方法はキット付属のマニュアルを参照ください。

接続

1) Stepper2ケーブル(モーター接続)をStepper2端子に接続します。

2) GP2ケーブル(リミットスイッチ接続)をGP2端子に接続します。

  • スライダーレールのバージョンを以下の手順で確認します。写真は色付きなのでV2.0です。
  • 端子の色なし (Stepper2白 / GP2 白):V1.0
  • 端子の色付き (Stepper2黄 / GP2 緑):V2.0

動かし方 (初期設定)

電源を入れる前にDOBOTの位置をスライダーレール右端に寄せてください。電源投入時またはHOMEポジション復帰操作時点の座標がスライダーレール0[mm]原点となります。

HOMEポジション

HOMEポジション復帰命令を実行した場合は、DOBOTがスライダーレール右端に自動復帰し、HOME姿勢になります。

動かし方 (C言語で制御)

サンプルプログラムをダウンロードしてお試しください。

  • 各プログラムにおいて、PC接続中のUSBのCOMポートを指定してください。下記では”COM8”。
	int ret = ConnectDobot("COM8", 115200, fwType, version, time);

プログラム動作解説

  • スライダーレールを有効にする
    スライダーレールのバージョンに応じて引数を変更してください。

V1.0の場合

	SetDeviceWithL(true, 0, false, &cmdIndex);

V2.0の場合

	SetDeviceWithL(true, 1, false, &cmdIndex);
  • リニアレールの速度を100、加速度を100に設定する
	PTPLParams ptpLParams;
	ptpLParams.velocity = 100;
	ptpLParams.acceleration = 100;
	SetPTPLParams(&ptpLParams, false, &cmdIndex);

  • DOBOTをHOMEポジションへ移動
	SetHOMECmd(&cmd, true, &CommandIndex);
	do {
		cmdIdx = 0;
		if (GetQueuedCmdCurrentIndex(&cmdIdx) != 0) {
			// 単位はmm秒
			Sleep(100);
		}
	} while (cmdIdx < CommandIndex);

  • リニアレールを座標100[mm]の位置へ移動 (HOMEポジションが0[mm]原点となる)
	ptpWithLCmd.ptpMode = PTPMOVLXYZMode;
	ptpWithLCmd.x = 200;
	ptpWithLCmd.y = 0;
	ptpWithLCmd.z = 0;
	ptpWithLCmd.r = 0;
	ptpWithLCmd.l = 100;

	SetPTPWithLCmd(&ptpWithLCmd, true, &CommandIndex);
	do {
		cmdIdx = 0;
		if (GetQueuedCmdCurrentIndex(&cmdIdx) != 0) {
			Sleep(100);
		}
	} while (cmdIdx < CommandIndex);

DOBOTのHOMEポジション座標はX:200, Y:0, Z:0, R:0に設定中

参考テキスト

C言語環境でロボットアームの制御を学びたい方へおすすめの教材です。

(2022/7/5 現在)