Lập trình điều khiển robot TERGAN-45 :

Một phần của tài liệu Giáo trình Robot công nghiệp Phần I _TS. Phạm Đăng Thức (Trang 71)

(Robot Programming Language s)

5.5. Lập trình điều khiển robot TERGAN-45 :

Nh− đã nói trên, để điều khiển robot TERGAN-45 ta có thể dùng phần mềm Procomm Plus for Windows điều khiển trực tiếp hoặc viết các ch−ơng trình bằng ngôn ngữ ASPECT.

5.5.1. Giới thiệu robot TERGAN 45 (TG-45):

TERGAN 45 là một loại robot dùng để dạy học do Pháp sản xuất. Đây là loại robot toàn khớp quay, có 4 bậc tự do. Đi kèm với robot gồm có một bộ nguồn và một môđun điều khiển. Môđun điều khiển cho phép điều khiển robot trên các Terminal hoặc máy tính có giao diện kiểu RS-232. Cấu hình của robot nh− hình 5.2 :

o o o Thân Vai Cánh tay Cổ tay Bàn tay Hình 5.3 : Sơ đồ động Robot TG-45

Các khớp quay của robot đ−ợc dẫn động bằng các động cơ điện một chiều có gắn các potentionmeter, ngoài ra để đóng mở bàn tay của robot ng−ời ta dùng truyền động vit-me có gắn cử hành trình, vận tốc đóng mở các ngón tay có thể điều chỉnh đ−ợc.

Các góc quay giới hạn của các khâu trênrobot là : + Chuyển động của thân 2610.

+ Chuyển động của vai 850. + Chuyển động của cánh tay 2490. + Chuyển động của cổ tay 1800.

Tốc độ truyền thông tin qua mođun điều khiển từ 50 đến 9600 bauds với bộ vi xử lý 8 bits, Stop bit là 1 hoặc 2. Điện áp nguồn cung cấp là 110V/220V, 50HZ. Điện áp điều khiển ±12V.

Trên môđun điều khiển có thêm các đầu vào và ra để giao diện với các thiết bị khác (nh− các cảm biến, điều khiển băng tải nhỏ, ...). Mođun điều khiển robot TG-45 đ−ợc thiết kế giao diện với máy tính bằng các lệnh cơ bản sau :

B±XXX : Điều khiển thân (Base), E±XXX : Điều khiển vai (épaule), C±XXX: Điều khiển cánh tay (Coude), F±XXX : Điều khiển cổ tay (Poignet), P±XXX : Đóng mở bàn tay (Pince), S±XXX : Điều khiển các tín hiệu ra, I±XXX : Điều khiển các tín hiệu vào.

Chiều dài của các lệnh điều khiển là 5 ký tự mã ASCII. Ký hiệu XXX biểu diễn các chữ số từ 000 đến 511.

Ví du :

Lệnh B-200 sẽ điều khiển thân robot quay sang phải một góc : θ1 = (261o/2) x 200 / 511 ≈ 51004’

Lệnh C+200 sẽ điều khiển cánh tay robot quay lên phía trên một góc : θ3 = (249o/2) x 200 / 511 ≈ 48043’ (so với vai).

Lệnh P+200 sẽ đóng bàn tay (dùng khi muốn nắm một vật) , vận tốc đóng mở thay đổi đ−ợc theo giá trị từ 001 đến 511. Ví dụ P+100 sẽ đóng chậm hơn P+200.

Các lệnh đ−ợc chuyển đến từ máy tính sẽ đ−ợc môđun điều khiển xử lý sau đó trả lại các thông báo thực hiện (message) trên màn hình.

ở chế độ TERMINAL của Procomm Plus ta có thể điều khiển trực tiếp robot Tergan 45 bằng cách gõ trực tiếp các lệnh làm quay các khớp của robot, ví dụ :

B+200 C-250 E-100 F-250 P+200

Ta có thể ghi lại các lệnh vừa nhập vào một file để thực hiện lại sau nầy, nếu tr−ớc khi nhập các lệnh ta chọn mục START RECORDER trên menu hoặc Icon t−ơng ứng.

5.5.3. Viết ch−ơng trình điều khiển robot TERGAN-45 :

Ta có thể điều khiển robot Tergan-45 bằng cách viết các ch−ơng trình bằng ngôn ngữ ASPECT. Một ch−ơng trình ví dụ đơn giản nh− sau :

proc main transmit "E-100~B-250~F-180~C-200~B-300~~~P+150~~~” transmit “E+000~C-150~B+300~~C-180~~~~P-200~~~" transmit "E+200~B-400~~~E-000~~~C-300~~~F-080~~~B-450~~~P+150~~~” transmit “C-260~~E+100~~B+300~~~~~~P-200~~" transmit "F+200~C-130~B-350~F-300~~E-180~~B-400~~~P+100~~" transmit "E+200~~B+300~~~~E-100~~~F-230~~~~P-200~~~~” transmit “C-000~F-000~E-000~B-000~P-200~" pause 50 clear

termwrites "Da thuc hien xong, xin cho lenh !" endproc

Khi soạn thảo xong ch−ơng trình ta phải đặt tên và ghi vào đĩa, ví dụ tên ch−ơng trình là DEMO.WAS. Sau đó ta phải dịch ch−ơng trình để tạo ra file DEMO.WAX lúc đó mới có thể chạy đ−ợc trong Procomm Plus.

Tuy nhiên, nh− đã giới thiệu ở trên, môđun điều khiển robot TG-45 chỉ có các lệnh đơn giản để điều khiển các môtơ dẫn động các khớp quay. Nếu chỉ điều khiển robot bằng các lệnh đơn thì không thể mở rộng khả năng làm việc của robot đ−ợc, hơn nữa việc lập trình cũng mất nhiều công sức vì khó xác định đ−ợc các toạ độ mà ta yêu cầu bàn tay robot phải đạt tới. Do đó việc lập trình điều khiển robot phải tạo ra các chức năng khác khi điều khiển robot nh− :

1) Ch−ơng trình có thể giúp ng−ời sử dụng dạy robot học mà robot có thể lặp lại các chuyển động đã đ−ợc dạy-học một cách chính xác.

2) Thiết kế điều khiển động học thuận : nghĩa là ch−ơng trình cho phép ng−ời sử dụng điều khiển robot theo giá trị các góc quay của khớp (tính bằng độ) khi xác định tr−ớc một cấu hình nào đó của robot.

3) Thiết kế điều khiển động học ng−ợc : nghĩa là ng−ời sử dụng ch−ơng trình có thể điều khiển robot theo các toạ độ vị trí và h−ớng của bàn tay đã đ−ợc xác định tr−ớc. Khi ta nhập các giá trị về toạ độ và h−ớng của bàn tay thì ch−ơng trình tự động tính toán các góc quay của các khớp để robot chuyển động đến vị trí yêu cầu với h−ớng đã đ−ợc xác định.

4) Thiết kế các tiện ích khác nh− : điều khiển theo đ−ờng, tạo các meta keys, tạo ra các trợ giúp cho ng−ời sử dụng...

Các nội dung 2 và 3 cần phải thiết lập hệ ph−ơng trình động học của robot TERGAN-45 và giải hệ ph−ơng trình động học đó. Phần tính toán có thể viết bằng ngôn ngữ Pascal hoặc C++ mà nó đ−ợc gọi từ ch−ơng trình điều khiển (dùng lệnh RUN), ch−ơng trình điều khiển xử lý kết quả tính toán qua các file trung gian dạng text.

Phần mềm Procomm cung cấp nhiều tiện ích để ta có thể thiết kế ch−ơng trình kiểu trực quan (Visual), giúp cho việc viết ch−ơng trình và thao tác trong quá trình sử dụng đ−ợc dễ dàng, thuận tiện hơn.

5.8. Kết luận :

Trong ch−ơng nầy chỉ giới thiệu một cách tổng quát về các ph−ơng pháp lập trình điều khiển robot. Khó có thể đi sâu, cụ thể vào một ngôn ngữ nào vì nó phụ thuộc rất nhiều vào loại robot đ−ợc sử dụng. Phần ngôn ngữ ASPECT trong phần mềm Procomm đ−ợc nghiên cứu ở trên là một ví dụ về ứng dụng các phần mềm dùng cho nhiều mục đích để điều khiển robot. Trong thực tế, tuỳ nhiệm vụ cụ thể của mỗi robot, phối hợp với hoạt động chung của các máy móc thiết bị khác mà ta thiết kế các ch−ơng trình cụ thể để robot hoạt động theo những mục đích mong muốn.

Một phần của tài liệu Giáo trình Robot công nghiệp Phần I _TS. Phạm Đăng Thức (Trang 71)

Tải bản đầy đủ (PDF)

(75 trang)