setRelative()

描述

以相對增量值規劃運動。

語法


Machine machine(0);
machine.setRelative();

參數

machine:為 Machine物件。

回傳

無回傳值。

範例

使用相對移動方式畫正方形。

 
#include "Motion86.h"

// 產生機器物件,最多可使用 machine 0~2 三台機器,每台機器三軸。 
Machine machine(0);
// 步進馬達 enable pin。
int EnablePin = 4;

void setup() {
  while (!Serial);
  pinMode(EnablePin, OUTPUT);
  // 若有需要,可以反轉運動軸的運動方向。
  machine.config_ReverseDirection(AXIS_X);
  machine.config_ReverseDirection(AXIS_Y);
  // PPU (pulse per unit) 是一虛擬長度單位,依照不同需求而定。
  // 此例 x 軸的單位長度設定為 80 pulses,對應到實際應用為 1 mm。
  machine.config_PPU(AXIS_X, 80.0);
  machine.config_PPU(AXIS_Y, 80.0);
  machine.config_PPU(AXIS_Z, 1600.0);
	// 控制之前,必須啟動機器。
  machine.machineOn();
	// 設定預設的進給速率。
  machine.setDefaultFeedrate(600);
  // 啟動步進馬達。
  digitalWrite(EnablePin, LOW);
	// 採用相對增量值規劃運動
	machine.setRelative();
	// 以當下位置為基準,使用相對增量值移,移動到中心位置。
  machine.line(0,0,10,400);
  machine.line(170,100,0,800);
  machine.line(0,0,-10,400);
}

void loop() {
	// 移動到該相對位置,此處無設定進給速率代表採用預設值。
	machine.line(10,0,0);
	machine.line(0,10,0);
	machine.line(-10,0,0);
	machine.line(0,-10,0);
	// 等待直到已規劃之運動完成
	while (machine.isMoving());
}

See also


函式庫參考主頁面

The text of the 86Duino reference is licensed under a Creative Commons Attribution-ShareAlike 3.0 License. Code samples in the reference are released into the public domain.