- Ý nghĩa: Di chuyển tương đối.
4. Lệnh movep:
- Ý nghĩa : Dịch chuyển theo xung
- Cú pháp : MOVE [x1(xv)], [y1(yv)], [z11(zv1)], [z12(zv2)];
- Ứng dụng : Giống như lệnh move, tuy nhiện quá trình dịch chuyển
sẽ dừng khi xuất hiện xung ở ngõ vào và lệnh tiếp theo sẽ được thực hiện
C
[x1 (xv)] : Khoảng dịch chuyển và tốc độ của trục x [y1 ( (v)] : Khoảng dịch chuyển và tốc độ của trục y [z11 (zv1)] : Khoảng dịch chuyển và tốc độ lần 1 của trục z [z12(zv2)] : Khoảng dịch chuyển và tốc độ lần thứ 2của trục z
Xung vào phải cĩ một bề rộng tối thiểu và khoảng cách 20s và tối đa là 100s, xung này được đưa đến ngõ vào stop của card giao tiếp, trong trường hợp xung quá rộng thì sai lệch movep nên thêm một lệnh trì hỗn.
5. Lệnh send:
- Ý nghĩa : Phát ký hiệu đồng bộ
- Cú pháp :Send [zahl];
- Ứng dụng :Để tạo khả năng đồng bộ giữa hai card giao tiếp hoặc với máy tính thì phải gởi đi ký hiệu đồng bộ tại một vị trí xác định trong vùng dữ liệu
Giải Thích
[Zahl] là số từ 33 đến 126 (MÃ ASCII)
Tín hiệu đồng bộ phải ở trong khoảng từ 33 đến 126, khơng nên dùng ký số 64. Ngay đầu chương trình nên định nghĩa các ký hiệu đồng bộ bằng lệnh #define, sau đĩ cĩ thể dùng một tên cho ký hiệu đồng bộ.
Ví dụ:
. . .
#define Bohren-ist-fertig 90; {ký hiệu đồng bộ bằng 90} . . . .. . .. . .. . . .. . .
Send bohren-ist-fertig
6. Lệnh “wait”:
- Ý nghĩa : Ký hiệu đồng bộ
- Cú pháp : Wait [zahl], [offset];
- Ứng dụng : Đi kèm với lệnh send như đã trình bày ở trên để chờ ký
- hiệu đồng bộ từ một card giao tiếp hoặc máy tính khác. Giải Thích
[Zahl] ký số từ 33 đến 126 (Mã ASCII)
[Offset] là một số cho biết vị trí số dịng lệnh trước hay sau hoặc một nhãn mà tại đĩ chương trình sẽ tiếp tục.
- Card giao tiếp cịn cĩ thể thực hiện nhiều thao tác cĩ thể tĩm tắt như sau: Tiếp tục thực hiện sau khi nhận ký hiệu đồng bộ.
- Card giao tiếp tự động thực hiện lệnh tiếp theo trong vùng dữ liệu khi nhận ký hiệu đồng bộ.
Thực hiện tại vị trí tương đối:
- Card giao tiếp nhảy đến vị trí được cho biết trong dịng lệnh. Nhận ký hiệu 127
C
- Card giao tiếp thực hiện reset và đợi lệnh từ máy tính.
Ví dụ :
. . .
Wait 90, - 5; {Đợi ký hiệu 90 và sau khi nhận nhảy lùi lại 5 dịng trong chương trình}
. . .
Wait 80, ngang; {Đợi ký hiệu 80 và nhảy về phải “ngang” sau khi nhận được ký hiệu.}
Ví dụ 2: Label1:
Move . . . . {Phần lổ}
Send TELL-DA; {Sẵn sàng kiểm tra} Wait TELL-OK, weiter; {Đợi cho phép}
Move . . . {Đặt phần khơng dùng (phần hư)} Goto label1; {Thử phần tiếp theo}
Weiter:
Move . . . {Đặt phần trong máy} Move . . . {Tại vị trí ra}
Goto label1; {Làm lại từ đầu}
Máy tính sẽ kiểm tra các phần và thơng báo cho card giao tiếp theo một yêu cầu TELL-DA, sau khi kết thúc và các phần điều tốt thì TEELL-OK + 1 sẽ được chuyển đi và card giao tiếp sẽ đặt phần này vào máy, trong các trường hợp khác máy tính sẽ phát TEIL-OK + 0 và card giao tiếp sẽ đặt các phần khơng xử dụng và lổ vào phần tiếp theo.
7. Lệnh “loop”
- Ý nghĩa : Thực hiện vịng lặp
- Cú pháp : Loop [số] Times [label];
- Ứng dụng : Lặp lại các thao tác giống nhau Giải Thích
[số] số từ 0 đến 32767, nếu bằng 0 cĩ nghĩa là vịng lặp khơng chấm dứt. [Label] Lặp lại từ nhản xác định.
Ví dụ 1:
Loop _1:
Move . . . {Di chuyển . . . .} - - - -- - - -
Loop 5 times loop_1; {Lặp lại 5 lần từ nhản “loop_1”}
Ví dụ 2:
Loop :
Move . . . {Di chuyển . . . .} - - - -- - - -
C
Nên dùng lệnh “Repeat” và “Until” vì dễ dùng và dịch chuyển nhanh hơn, lệnh loop cịn xử dụng là do tương thích với các version cũ.