如果有兩段路徑分別是由 A 走到 B,之後又由 B 走到 C,如何讓 A->B 可以不減速到 0就可以平順的銜接走下段 B->C的路徑。
在我們的二次平台裡有個基本指令 MC_OPT (Motion Option)指令可以指令 Overlap 屬性,讓接下來的運動以重疊的方式進行。(大家自行參考ezASD 中指令說明)
而重疊的方式為前一段命令進入到減速段時,下一段的命令就可以開始啟動,而不是等到前一段命令結束(減速到0),如此就可以讓速度較為平順。
可以參考下圖最右邊圖示:
如果有兩段路徑分別是由 A 走到 B,之後又由 B 走到 C,如何讓 A->B 可以不減速到 0就可以平順的銜接走下段 B->C的路徑。
在我們的二次平台裡有個基本指令 MC_OPT (Motion Option)指令可以指令 Overlap 屬性,讓接下來的運動以重疊的方式進行。(大家自行參考ezASD 中指令說明)
而重疊的方式為前一段命令進入到減速段時,下一段的命令就可以開始啟動,而不是等到前一段命令結束(減速到0),如此就可以讓速度較為平順。
可以參考下圖最右邊圖示:
指標(pointer)是 MSM 語法支持的一種 定址方式,得以讓程式寫作的彈性更大,功能更完整!但因為牽涉到 記憶體位址 的觀念,初次接觸的人 可能會望而生畏.其實指標並不困難,只要把它想像成 陣列的別名 就好了!例如,有一個名為 A 的陣列,型態是 DINT,我們可以用下列的方式來取用它:
迴圈(Loop)通常用來實作 重複而規律 的程式行為,例如,計算 一個陣列 所有內容的總和,或是將 一個陣列 複製到 另一個陣列中!MSM 的迴圈語法如下:
MSM 語言 支援 陣列(Array)的用法,宣告陣列 的方式與 一般 變數(符號)相似,可使用 ezASD 提供的介面,如下圖所示:
使用 MSM 設定 常數資料 給 暫存器 或 變數時,雖可透過 ACC 載入 與 存出指令來做,但是需二步驟.例如,要把常數 123456 設給變數 Var_1,撰寫如下:
四則運算就是 加/減/乘/除 四種數學運算,指令命名規則如下圖: 指令尾碼 (W/L/F) 是根據 Op1 的型態來選擇!
MSM 是 Motion Assembly 的意思,是一種專為運動控制所設計的組合語言,其特色有: