Đăng ký Đăng nhập
Trang chủ MỘT GIẢI PHÁP ĐIỀU KHIỂN ROBOT CƠ CẤU SONG SONG...

Tài liệu MỘT GIẢI PHÁP ĐIỀU KHIỂN ROBOT CƠ CẤU SONG SONG

.PDF
6
259
77

Mô tả:

MỘT GIẢI PHÁP ĐIỀU KHIỂN ROBOT CƠ CẤU SONG SONG
MỘT GIẢI PHÁP ĐIỀU KHIỂN ROBOT CƠ CẤU SONG SONG Đinh Công Huân, Vương Thị Diệu Hương, Đỗ Thị Ngọc Oanh, Nguyễn Huy Thụy, Phạm Anh Tuấn Phòng Cơ điện tử - Viện Cơ học - 264 Đội Cấn, Ba Đình, Hà Nội E-mail: [email protected] Tóm tắt: Với nhiều lợi thế mà robot cơ cấu song song đem lại như: độ chính xác, độ cứng vững cao, tốc độ làm việc lớn, tiện lợi trong quá trình di chuyển, lắp đặt… robot cơ cấu song song ngày càng được quan tâm và ứng dụng rộng rãi. Bài báo đưa ra một giải pháp hoàn chỉnh điều khiển robot cơ cấu song song. Đầu tiên là một số phân tích về xử lý song song, xử lý phân tán trong điều khiển robot tiếp theo sẽ trình bày về ứng dụng nguyên lý Hardware-in-the-loop trong mô phỏng điều khiển robot, cuối cùng đưa ra lựa chọn thiết bị và thuật toán điều khiển robot cơ cấu song song mà phòng Cơ điện tử - Viện Cơ học đang phát triển. 1. Đặt vấn đề Robot cơ cấu chuỗi đã được ứng dụng trên thế giới từ rất sớm và ngày càng được phát triển. Tuy nhiên, do tính chất kết cấu nên nó vẫn bộc lộ một số nhược điểm vì vậy khả năng ứng dụng còn hạn chế. Ra đời và phát triển sau nhưng với nhiều lợi thế hơn so với robot cơ cấu chuỗi, robot cơ cấu song song bắt đầu được ứng dụng trong rất nhiều lĩnh vực như: cơ khí, y tế, quân sự, vật lý, hàng không… Nhận thấy khả năng ứng dụng rất lớn cùng những thế mạnh của robot cơ cấu song song, phòng Cơ điện tử - Viện Cơ học đã triển khai nghiên cứu nhằm mục đích chế tạo robot cơ cấu song song mẫu ứng dụng trong lĩnh vực gia công cơ khí chính xác. Sau khi nghiên cứu khả năng ứng dụng và khả năng phát triển của các loại robot cơ cấu song song, robot cơ cấu song song 6 bậc tự do (Hexapod) đã được chọn, đóng vai trò là bàn gá phôi cho máy phay thông thường để gia công khuôn mẫu (hình 1). 2. Lựa chọn hệ thống điều khiển Yêu cầu đối với hệ thống điều khiển Mỗi hệ thống tự động bất kỳ đều gồm ba phần cơ bản: bộ điều khiển (Controller), đối tượng điều khiển (Object) và thiết bị đo (Measure) (hình 2). Set point C u O y M Hình 2: Sơ đồ khối hệ thống tự động Robot cũng là một hệ thống tự động với các nhiệm vụ khác nhau tuỳ theo yêu cầu đặt ra. Để thiết kế robot với các nhiệm vụ phức tạp người ta thường phân chia nhiệm vụ phức tạp thành các nhiệm vụ đơn giản hơn và thiết kế nhiều bộ phận (là các hệ tự động đơn giản với các thành phần cơ bản nêu trên) để mỗi bộ phận chịu trách nhiệm xử lý một nhiệm vụ đơn giản và các bộ phận sẽ được phối hợp quản lý để đạt được mục tiêu chung của toàn hệ thống. Cách phân chia như vậy được gọi là “xử lý phân tán theo chức năng”. Theo cách này, mỗi bộ phận sẽ chỉ phải xử lý một nhiệm vụ đơn giản do đó sẽ thuận lợi hơn cho việc phân tích, thiết kế và xử lý lỗi; mặt khác, các công việc được xử lý đồng thời sẽ tăng được tốc độ của toàn hệ thống. Với robot Hexapod mà đặc trưng là một chuỗi nhiều khâu khép kín, để thực hiện một di chuyển của tấm trên robot theo một quỹ đạo yêu cầu, cần đồng thời có các tác động điều khiển tới sáu chân của robot và chuyển động của các chân này phải có sự liên hệ chặt chẽ. Không như robot chuỗi, nếu không có được sự liên hệ chặt chẽ này sẽ gây ra hiện tượng “giằng”, “xé” nhau giữa các chân. Chính vì vậy, yêu cầu về độ chính xác của điều khiển robot Hexapod đòi hỏi cao hơn, quá độ của mỗi khâu cũng phải được kiểm soát chặt chẽ. Và cuối cùng là việc phối hợp giữa các khâu đóng vai trò đặc biệt quan trọng quyết định tới độ chính xác của quỹ đạo robot. Hệ thống điều khiển Để đạt được các yêu cầu trên, phương án thiết kế hệ điều khiển cho robot Hexapod được chọn như trên hình 3, trong đó: Hình 1: Hexapod làm bàn gá phôi trong gia công cơ khí − ĐKPH: bộ điều khiển phối hợp, − ĐKTP: các bộ điều khiển thành phần. cơ servo, xác định tham số cho mô hình để từ đó chọn tham số của các thuật toán điều khiển. ĐKPH ĐKTP ĐKTP ĐKTP RTS (Run Time Simulation) là phần mềm được phát triển bởi phòng Cơ điện tử - Viện Cơ học, với mục đích tạo ra một công cụ hỗ trợ cho việc mô phỏng thời gian thực. Giao diện chính của RTS được đưa ra trên hình 4. Phần mềm RTS được phát triển theo cấu trúc module, gồm 3 module sau: Hình 3: Sơ đồ cấu trúc hệ điều khiển cho Hexapod Các bộ ĐKTP chịu trách nhiệm điều khiển bộ phận mình phụ trách, để đạt được những yêu cầu cục bộ. Thực chất chúng là các bộ điều khiển vị trí, có nhiệm vụ đưa các chân tương ứng của robot tới độ dài mong muốn theo một vận tốc nào đó. Ở đây, mỗi chân robot được chọn sử dụng một hệ truyền động động cơ, do đó bộ điều khiển sẽ là bộ điều khiển vị trí động cơ. Bộ ĐKPH sẽ chịu trách nhiệm phối hợp các bộ ĐKTP để đạt được yêu cầu tổng thể. Bộ ĐKPH ở đây sẽ lấy thông tin của toàn hệ là độ dài thực của các chân robot so với độ dài yêu cầu được tính bằng phần mềm tính toán động lực học hệ nhiều vật alaska để đưa ra các quyết định điều khiển cho từng bộ ĐKTP, [1]. Các thuật toán điều khiển được thực hiện ở từng bộ ĐKTP cũng như bộ ĐKPH. Để đảm bảo được độ chính xác của robot trong quá trình hoạt động, các thuật toán điều khiển đóng vai trò rất quan trọng. Mô phỏng Hardware-in-the-loop Mô phỏng thời gian thực các hệ tự động theo nguyên lý Hardware-in-the-loop nhằm: − + Module đồ họa: module này có nhiệm vụ thể hiện đáp ứng đầu ra của đối tượng dưới dạng mô hình và đồ thị, biểu diễn sự thay đổi trạng thái của đối tượng trong quá trình mô phỏng (ví dụ trong trường hợp này là vị trí và tốc độ của động cơ). Phần mềm RTS cho phép thể hiện mô hình thời gian thực của một số đối tượng điều khiển trên máy tính. Khi có tín hiệu điều khiển, mô hình thời gian thực của đối tượng sẽ cung cấp đáp ứng đầu ra cho hệ thống giống như đối tượng thật phản ứng khi có tín hiệu điều khiển. Bằng cách ghép nối bộ điều khiển với mô hình thời gian thực của đối tượng ta có thể kiểm tra hiệu lực của thuật toán điều khiển trong quá trình thiết kế. Giảm chi phí trong quá trình thiết kế. − + Module tính toán: module này thực hiện tất cả các công việc tính toán, ví dụ như giải phương trình vi phân để tính đáp ứng đầu ra của đối tượng khi có kích thích đầu vào vv... Kiểm tra hiệu lực của thuật toán điều khiển. − + Module giao tiếp: module này có nhiệm vụ tạo mối liên hệ giữa mô hình của đối tượng và bộ điều khiển. Hiện tại, có hai phương thức giao tiếp được hỗ trợ là giao tiếp qua cổng nối tiếp và qua card AD/DA. Tránh được những sai sót không đáng có khi ứng dụng thực tế. Mô phỏng thời gian thực (real time simulation) theo nguyên lý Hardware-in-the-loop nghĩa là có sử dụng phần cứng (hardware) để mô phỏng vòng điều khiển. Mô phỏng thời gian thực không chỉ cho phép ta đánh giá khả năng phần cứng mà còn giúp ta đánh giá khả năng của phần mềm điều khiển dưới điều kiện diễn biến thời gian sát với thực tế. Điều này có ý nghĩa quan trọng khi ta phải kiểm tra các thiết bị hỗn hợp nhiều phần tử. Để tìm được thuật toán điều khiển tốt nhất, động cơ được chọn đã được mô phỏng theo nguyên lý trên, bằng cách sử dụng một số công cụ sau: Hình 4. Giao diện phần mềm RTS Việc mô phỏng Hexapod đã được tiến hành theo các bước sau: − Phần mềm: Matlab, RTS. − Mô hình hóa động cơ servo. − Phần cứng: PLC, PC, Card AD/DA. − Tìm khâu điều khiển bằng mô phỏng offline. − Mô phỏng thời gian thực theo nguyên lý Hardware-in-the-loop. Matlab/Simulink được sử dụng như là công cụ hỗ trợ cho việc xây dựng và tối giản mô hình toán của đối tượng điều khiển trong trường hợp này là động Bước 1: Mô hình hoá động cơ servo Tuy có sự khác nhau về kết cấu và nguyên lý làm việc nhưng động cơ servo có thể được mô hình hóa giống như động cơ điện một chiều. Thông qua biến phức s, sự cân bằng điện của phần ứng được mô tả bởi phương trình, [2]: Va = ( Ra + sLa ) I a + V g Trong đó: − Va , Ra , La , I a lần lượt là điện áp, điện trở, điện kháng, dòng điện phần ứng. − Vg là sức điện động của phần ứng, tỷ lệ với ω vận tốc góc của rotor, V g = k v ω Hệ số k v thể hiện quan hệ giữa vận tốc góc của rotor và sức điện động. Nó phụ thuộc kết cấu của động cơ và tính chất điện từ của phần cảm. Tương tự, phương trình cân bằng cơ học của động cơ có dạng: C m = ( Fm + sI m )ω + C r Cm = kt I a với: − C m và C r là mô men chủ động và momen phản lực, − Bước 2: Tìm khâu điều khiển bằng mô phỏng offline Matlab/ Simulink đã được sử dụng để tiến hành mô phỏng offline với mục đích lựa chọn thuật toán điều khiển và tham số của bộ điều khiển. Trên nền Simulink có thể xây dựng hệ thống điều chỉnh bao gồm đối tượng điều khiển, khâu điều khiển, phản hồi tín hiệu đầu ra với hệ số là 1. Bằng cách dùng tín hiệu đầu vào có dạng bước nhảy đơn vị, thay đổi thực nghiệm tham số của bộ điều khiển (phương pháp dò tìm) và quan sát đáp ứng để lựa chọn bộ tham số tốt nhất. Bước 3: Mô phỏng thời gian thực theo nguyên lý Hardware-in-the-loop Bước cuối cùng này nhằm thử nghiệm thiết bị điều khiển, với thuật toán điều khiển chạy trên phần cứng thực, ở đây là PLC S7-300 với các module cần thiết. Đối tượng điều khiển được thực hiện dưới dạng mô hình thời gian thực, tức là mô hình chạy trực tiếp trên phần cứng tốc độ cao. Trong trường hợp này, mô hình của đối tượng được thực hiện với sự trợ giúp của máy tính. Tín hiệu đầu ra dưới dạng tương tự của thiết bị điều chỉnh sẽ được biến đổi thành dạng tín hiệu số nhờ bộ biến đổi A/D để điều khiển mô hình của đối tượng, được thực hiện trên máy tính. Ngược lại, đáp ứng đầu ra của mô hình lại được biến đổi thành tín hiệu tương tự nhờ bộ biến đổi D/A. I m và Fm là mô men quán tính và hệ số cản nhớt trên trục động cơ. − k t Hệ số tỷ lệ biểu diễn quan hệ giữa mô men của động cơ và dòng điện phần ứng. Nếu hệ số cản nhớt rất nhỏ so với hệ số hãm điện năng, nghĩa là ( Fm << k v k t / Ra ), đồng thời giả thiết C r = 0 thì có mối quan hệ giữa đại lượng vào (điện áp điều khiển Vc ) với đại lượng ra (vận tốc góc A/D D/A ω ) như sau, [1]: A/D 1 kv ω= Vc La I m 2 R a I m s + s +1 kv kt kv kt Đặt T 2 = R I La I m , 2ξT = a m , kv kt kv kt ω= k= 2 (1) mô hình gần đúng của động cơ servo. Controller Hình 5: Sơ đồ ghép nối bộ điều khiển và mô hình đối tượng qua card AD/DA 1 , ta sẽ có: kv k Vc T s + 2ξTs + 1 2 D/A (1) Đối tượng điều khiển được thực hiện dưới dạng mô hình thời gian thực chạy trực tiếp trên phần cứng do đó phần cứng này cần đảm bảo một số yêu cầu: − Tốc độ xử lý nhanh: đảm bảo tính năng thời gian thực của quá trình mô phỏng đối tượng. − Có khả năng truyền thông, truy cập online để thay đổi các tham số khi đang thực hiện mô phỏng tạo điều kiện thuận lợi cho việc quan sát các trạng thái đang diễn biến trong quá trình mô phỏng. robot Hexapod. Sơ đồ hệ điều khiển này được đưa ra trên hình 6, [3]. Bộ điều khiển và mô hình của đối tượng được ghép nối qua card AD/DA. Card AD/DA phải có tốc độ biến đổi và bộ nhớ đủ lớn để không ảnh hưởng tới việc giao tiếp giữa bộ điều khiển và đối tượng điều khiển. Hình 5 giới thiệu sơ đồ ghép nối giữa bộ điều khiển và mô hình của đối tượng qua card AD/DA. Thiết bị lập trình (PC) Bộ điều khiển trung tâm (PLC S7 - 300) Kết quả cho thấy, với thuật toán điều khiển động cơ tìm được, các động cơ khi hoạt động đã thỏa mãn những yêu cầu đặt ra như: độ chính xác, độ quá điều chỉnh, tốc độ đáp ứng... Module chức năng (FM 357 – 2) Lựa chọn thiết bị cho điều khiển robot Hexapod Để đạt được tính đồng thời, phương án thiết bị phải đảm bảo một số yêu cầu cơ bản: khả năng nhớ và quản lý từng khâu động học độc lập. Bộ điều khiển theo kiểu này là một tập hợp các phần tử xử lý độc lập liên lạc với nhau qua trao đổi thông tin. Bộ khuếch đại công suất (SIMODRIVE 611) Động cơ - Phương án tự thiết kế mạch dùng bộ vi xử lý Mỗi bộ xử lý độc lập đóng vai trò là bộ ĐKTP sẽ thực hiện các chỉ thị của chính nó và làm việc trên một tập các dữ liệu riêng biệt. Các bộ ĐKTP này sẽ được ghép nối và giao tiếp với bộ ĐKPH (có thể là một máy tính) thông qua các cổng vào ra. Phương án này có ưu điểm là gọn nhẹ nhưng khả năng linh hoạt kém, tính phức tạp của hệ thống cao, độ ổn định và độ chính xác khó đảm bảo bởi hoạt động của robot cơ cấu song song rất phức tạp. Hình 6: Sơ đồ khối hệ điều khiển robot Hexapod dùng PLC FM357-2 kết hợp với SIMODRIVE 611 tạo thành các bộ ĐKTP điều khiển tốc độ và vị trí của động cơ theo như sơ đồ trên hình 6. Trong đó: − Vòng điều khiển vị trí chân robot (hình 7) do module FM357-2 chịu trách nhiệm. Tín hiệu phản hồi vị trí động cơ từ encoder được đưa về FM357-2, kết hợp với vị trí yêu cầu để đưa ra tốc độ yêu cầu (set point) cho bộ khuếch đại công suất. Mỗi module FM357-2 chỉ điều khiển được tối đa 4 trục, do đó để điều khiển 6 chân robot, ta cần dùng 2 module này. − Bộ khuếch đại công suất SIMODRIVE 611 (KĐCS) đảm nhiệm việc điều khiển tốc độ. Bộ KĐCS sẽ lấy tín hiệu phản hồi tốc độ từ encoder so sánh với tốc độ yêu cầu nhận được từ FM357-2 và đưa ra tín hiệu điều khiển động cơ. - Phương án sử dụng PLC PLC (Programable Logic Control) là thiết bị điều khiển logic khả trình cho phép thực hiện các thuật toán điều khiển thông qua một ngôn ngữ lập trình, thay cho việc phải thể hiện thuật toán đó bằng mạch điện tử. PLC là một thiết bị điều khiển nhỏ gọn, có thể thay đổi thuật toán một cách linh hoạt và đặc biệt thuận lợi cho việc trao đổi thông tin do đây là một hệ đã được chuẩn hóa. Toàn bộ chương trình điều khiển được lưu trữ trong bộ nhớ của PLC dưới dạng các khối chương trình và được thực hiện lặp theo chu kỳ vòng quét. Cấu trúc module được sử dụng để tăng tính mềm dẻo trong các ứng dụng thực tế [3]. Với những ưu điểm của mình, phương án sử dụng PLC được chọn dùng để xây dựng hệ điều khiển cho robot Hexapod. Độ dài của 6 chân quyết định vị trí của tấm trên robot, và được điều khiển bởi 6 động cơ. Động cơ được chọn phải có khả năng hoạt động ở một dải tốc độ rộng, có thể duy trì mô men xoắn thích hợp để giữ tải tại một vị trí nhất định. Với những tiêu chí trên thì động cơ servo là một lựa chọn phù hợp cho bài toán. Hệ thống thiết bị điều khiển logic khả trình PLC S7300 của Siemens cùng với module chức năng điều khiển động cơ FM357-2 và bộ khuếch đại công suất SIMODRIVE 611 được chọn cho hệ điều khiển Đặt tốc độ FM357-2 ĐC Servo Encoder ĐK vị trí DAC KĐCS M Tốc độ thực Vòng ĐK tốc độ Vị trí thực Hình 7: Sơ đồ điều khiển vị trí. Vòng điều khiển ngoài cùng là vòng điều khiển thực hiện nhiệm vụ phối hợp hoạt động của các chân robot, quản lý toàn bộ 6 chân để đạt được yêu cầu chung của hệ thống do CPU S7-300 thực hiện. Như vậy CPU S7-300 sẽ đóng vai trò là bộ ĐKPH. Và như trên đã nói, thuật toán điều khiển ở phần này là đặc biệt quan trọng, quyết định tới quỹ đạo chuyển động của robot. − k = 0 ÷ 5 là chỉ số của bộ ĐKTP Bắt đầu 3. Tính toán thông số điều khiển robot Đưa robot về vị trí 0 Từ hình dạng của mỗi khuôn mẫu cần gia công, lập quỹ đạo chuyển động của bàn gá phôi (tấm trên của robot) trong không gian và rời rạc hóa quỹ đạo chuyển động này. Tại mỗi điểm, tiến hành giải bài toán động học ngược để xác định tọa độ và hướng của tấm trên. Tiếp theo là tính độ dài của các chân robot sao cho tấm trên của robot chuyển động theo một quỹ đạo và hướng cho trước với vận tốc yêu cầu (hình 8). Tất cả những công việc này được phần mềm alaska đảm nhiệm, [5]. Nhận dữ liệu về độ dài chân robot i=0 k=0 Bắt đầu Nhập dữ liệu về khuôn mẫu cần gia công Xuất tham số điều khiển thứ i cho bộ ĐKTP thứ k i=i+1 k=5 Đưa ra quỹ đạo chuyển động k=k+1 S Đ S Tính tọa độ và hướng của tấm trên robot i = n -1 Đ Kết thúc Tính độ dài của các chân Hình 9: Thuật toán điều khiển cho bộ ĐKPH Đưa ra dữ liệu về độ dài chân và vận tốc dịch chuyển Kết thúc Hình 8: Sơ đồ thuật toán tính các thông số điều khiển robot Việc rời rạc hóa quỹ đạo chuyển động của robot phải dựa trên yêu cầu về chất lượng của khuôn mẫu cần gia công, khả năng đáp ứng của hệ điều khiển... 4. Thuật toán điều khiển Độ dài tính được ứng với các điểm trên quỹ đạo làm việc chính là dữ liệu đầu vào của bộ ĐKPH (PLC S7-300). Trên cơ sở những dự liệu này Bộ ĐKPH sẽ điều khiển lần lượt các bộ ĐKTP (FM 357-2) theo thuật toán điều khiển được trình bày trong hình 9, trong đó: − n là số điểm rời rạc trên quỹ đạo làm việc Bắt đầu Nhận giá trị vị trí yêu cầu từ ĐKPH Nhận giá trị vị trí thực của động cơ So sánh và đưa ra tốc độ yêu cầu cho động cơ Kết thúc Hình 10: Thuật toán điều khiển cho các bộ ĐKTP Mỗi bộ ĐKTP sẽ nhận từ bộ ĐKPH tham số điều khiển là vị trí của động cơ tương ứng rồi so sánh với vị trí thực tế để đưa ra tín hiệu điều khiển vị trí và tốc độ quay cho động cơ đó theo thuật toán được đưa ra trên hình 10. 5. Kết luận Bài báo đã đưa ra một giải pháp điều khiển robot Hexapod, từ lựa chọn phương án điều khiển, mô phỏng để tìm ra tham số cho bộ điều khiển đến lựa chọn thiết bị điều khiển. Trong thời gian tới robot Hexapod này sẽ được chế tạo và đưa vào ứng dụng cụ thể. Bài báo này được hoàn thành với sự trợ giúp của Chương trình Quốc gia về Nghiên cứu Khoa học Tự nhiên. 6. Tài liệu tham khảo [1] Institute of Mechatronics, Inc., Chemnitz: alaska, version 3.0, User Manual, Simulation Tool in Multibody System Dynamics. 1998 [2] Đào Văn Hiệp: Kỹ thuật robot; NXB KH&KT, 2003. [3] Phan Xuân Minh, Nguyễn Doãn Phước: Tự động hóa với SIMATIC S7-300; NXB KH&KT, 2000. [4] Siemens: FM357-2 manual, SIMODRIVE manual, Sinumerik & Simodrive. [5] Phạm Văn Bạch Ngọc, Vũ Thanh Quang, Đỗ Trần Thắng, Phạm Anh Tuấn: Mô phỏng và thiết kế Hexapod cho gia công cơ khí chính xác; Báo cáo Hội nghị Cơ điện tử toàn quốc lần thứ 2, 5/2004, tp. Hồ Chí Minh.
- Xem thêm -

Tài liệu liên quan