setJogOffset()

描述

設置在 incJog 模式下,觸發移動的距離。

語法


machine.setJogOffset(incPerMM);

參數

machine:為 Machine物件。

incPerMM:每次觸發移動多少毫米。

回傳

無回傳值。

範例

設定機器的基本參數,並啟用 incJog 模式,每次點擊移動 1 毫米。

 
#include "Motion86.h"

// 產生機器物件,最多可使用 machine 0~2 三台機器,每台機器三軸。 
Machine machine(0);

// 步進馬達 enable pin。
int EnablePin = 4;

void setup() {
  while (!Serial);
  pinMode(EnablePin, OUTPUT);

  // 若有需要,可以反轉運動軸的運動方向。
  // 在此範例中,需要反轉 x 軸和 y 軸的方向。
  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 設置為 jog 模式,並以連接到的按鈕觸發。
  // machine.beginJog(27, 28, 32, 3, 16, 17, false);

  // 如果將 Machine 設置為 Inc Jog 模式,則應配置偏移量以設置每次點擊時移動多少毫米。
  machine.beginJog(27, 28, 32, 3, 16, 17, true);
  machine.setJogOffset(1.0);

  // Jog 模式下的進給速度。
  machine.setJogSpeed(600);

  // 啟動步進馬達。
  digitalWrite(EnablePin, LOW);
}

void loop() {
  Serial.print("Jog position = ");
  Serial.print(machine.getJogPos(AXIS_X));
  Serial.print(", ");
  Serial.print(machine.getJogPos(AXIS_Y));
  Serial.print(", ");
  Serial.println(machine.getJogPos(AXIS_Z));
  delay(500);
}

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.