3. Phần mềm Procomm Plus For Windown:
3.2.5. Một số từ lệnh trong ASPECT hay dùng khi điều khiển robot:
Ngôn ngữ ASPECT có hơn 600 từ lệnh, dùng với nhiều mục đích khác nhau. Phần này giới thiệu sơ lượt một số lệnh hay dùng khi lập trình điều khiển robot.
Các lệnh cơ bản:
• call: gọi một thủ tục hoặc hàm từ chương trình chính hoặc từ một thủ tục khác.
Cú pháp:
Khi gọi một hàm:
call <tên> [WITH <danhsách tham biến>][INTO<biến>]
khi gọi một thủ tục:
call<tên> [WITH<danh sách tham biến>]
Tên: tên thủ tục hoặc hàm được gọi.
Danh sách tham biến: tên các tham biến trong thủ tục hoặc hàm INTO<biến>: chỉ dùng khi gọi một hàm, biến sẽ chứa giá trị trả lại của hàm.
• Case/endcase:
Cú pháp:
switch <biến> (string | integer | long)
case <giá trị so sánh> (string | integer | long) ...
[exitswitch] ; thoát khỏi khối lệnh switch không điều kiện ...
[endcase]
[default] ; thực hiện khi các trường hợp so sánh đều không đúng ... Endcase endswitch Ví dụ: proc main
integer Alpha = 2 ; gán giá trị ban đầu cho biến Alpha = 2 switch Alpha ; tìm giá trị của biến số
case 0 ; trường hợp biến có giá trị bằng 0 usermsg “Alpha = 0”; xuất kết quả trên cửa sổ màn hình endcase ; hết trường hợp so sánh thứ nhất case 1 ; tương tự như trên
usermsg "Alpha = 1" endcase
case 2
usermsg "Alpha = 2" endcase
endswitch ; luôn đi kèm với switch để kết thúc khối lệnh switch endproc
• If/endif: câu lệnh điều kiện Cú pháp:
if <điều kiện 1> ; bắt đầu khối lệnh if …
… [else] …
endif ; kết thúc khối lệnh if
• While/endwhile: lặp lại một số câu lệnh cho đến khi điều kiện kiểm tra là sai.
Ví dụ:
Proc main
integer SoLanLap = 0 ; biến nguyên dùng để đếm số lần lặp while (SoLanLap++)<3 ; mỗi lần lặp biến tăng giá trị thêm 1 endwhile ; kết thúc khối lệnh while
usermsg “Toi da lap %d lan” SoLanLap endproc
• for/endfor: câu lệnh lặp theo một số lần nhất định Cú pháp:
for <biến đếm> = <giá trị ban đầu> UPTO | DOWNTO <giá trị cuối>
[BY<bước>] ……..
[exitfor] ; chuyển điều khiển thoát khỏi câu lệnh for ; đến dòng lệnh sau endfor
…….. endfor
• Return: thoát khỏi thủ tục hoặc hàm hiện tại, tiếp tục ở câu lệnh tiếp theo của thủ tục đã gọi.
Các lệnh khác:
• Transmit: gửi một dòng ký tự (lệnh) đến cổng đang hoạt động.
Ví dụ:
proc main
transmit "B-250~C-200~F-240~~P+200” ; chuyển lệnh điều khiển ; robot TG-45
endproc
• pause: tạm dừng thực hiện chương trình trong một số giây qui định.
Cú pháp: pause <số giây|FOREVER>
Ví dụ:
Pause 5: tạm dừng thực hiện chương trình 5s
Pause Forever: dừng với thời gian không xác định. Lệnh pause có thể được huỷ bỏ khi nhấn Ctrl – Break.
Ký tự ~ thay cho lệnh pause với giá trị dừng bằng 0.5s
Ví dụ: Transmit “B+200~~E-100”
Sau khi truyền lệnh B+200 sẽ tạm dừng 1s (hai ký tự ~) mới truyền tiếp lệnh E-100.
• Chdir: thay đổi dường dẫn đến một ổ đĩa hoặc thư mục khác Cú pháp: chdir < “tên đường dẫn”>
Ví dụ: chdir “C:\procom3\Robot”
• copyfile: copy một file theo đường dẫn hoặc với một tên khác Cú pháp: copyfile < “file nguồn”> < “file đích”>
Ví dụ: copy “C:\ Procom3\ aspect\ robot.was” “C:\ tam\ robot1.txt
• delfile: xoá một file theo chỉ dịnh Cú pháp: delfile < “tên file”>
• mkdir: tạo một thư mục mới
Cú pháp: mkdir < “tên thư mục”>
• rmdir: xoá một thư mục (trống).
Cú pháp: rmdir < “tên thư mục”>
• rename: đổi tên một file
Cú pháp: rename < “tên file cũ”> < “tên file mới”>
Cú pháp: fopen <số hiệu file>< “tên file”>READ|WRITE |READWRITE\CREATE\APPEND\READAPPEND
Các tuỳ chọn: READ: chỉ đọc; READWRITE: có thể đọc và ghi; CREATE: tạo mới; APPEND: ghi tiếp vào cuối file; READAPPEND: có thể đọc và ghi tiếp vào cuối file.
• fclose: đóng một file đã mở
Cú pháp: fclose <số hiệu file>
• fputs: ghi một chuỗi ký tự lên file
Cú pháp: fputs < số hiệu file> < “chuỗi ký tự”>
• feof: kiểm tra điều kiện đã ở cuối một file Cú pháp: feof < số hiệu file>[biến nguyên]
[biến nguyên]: có giá trị 0 nếu chưa kết thức file, bằng 1 nếu đã kết thúc file.
• Fgets: đọc một dòng ký tự từ một tệp đã mở ghi vào một biến. Cú pháp: fgets < số hiệu file> < tên biến kiểu string>
• Termwrites: viết một dòng ký tự lên cửa sổ nhập xuất dữ liệu Cú pháp: termwrites < biến hoặc“dòng ký tự”>
• run: thực hiện một chương trình bên ngoài (đuôi com, exe hoặc bat)
Cú pháp: run < “tên chương trình”>
Ngoài các từ lệnh đã giới thiệu trên, còn có rất nhiều lệnh khác,…người sử dụng có thể tham khảo trực tiếp trong mục Help của cửa sổ soạn thảo khi cần thiết.
Ngôn ngữ ASPECT không có sẵn các hàm toán học như sin, cos,… nên khi muốn thực hiện các tính toán phức tạp ta phải dùng các phần mềm khác.