描述
以進給速度進行線性運動到目標點。
如欲了解各種運動方法請詳見運動方法解說頁面。
語法
machine.line(x, y, z);
machine.line(x, y, z, feedrate);
參數
machine
:為 Machine
物件。
x
:目標 X 座標。
y
:目標 X 座標。
z
:目標 X 座標。
feedrate
:進給速度,不傳參數時將使用最後一次記錄的進給速度。
回傳
bool
:
true: 機器存在且創建成功。
false: 機器不存在或創建失敗。
範例
設定機器的基本參數,並將機器來回直線運動至(10, 10, 10)。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
#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.setDefaultFeedrate(400);
// 啟動步進馬達。
digitalWrite(EnablePin, LOW);
}
void loop() {
// 線性運動到 (10, 10, 10)。
machine.line(10, 10, 10);
// 線性運動到 (0, 0, 0)。
machine.line(0, 0, 0);
// 等待直到已規劃之運動完成。
while (machine.isMoving());
}
|
86Duino 參考資料的文字遵循知識共享署名-Creative Commons Attribution-ShareAlike 3.0 License。參考資料中的程式碼範例已發佈到公共領域。