Zbieżność inżynierii mechanicznej, elektrycznej oraz oprogramowania zmienia oblicze projektowania oraz rozwoju kontroli ruchu. W artykule pokazujemy, jak to się dzieje.
Bazując na swoim doświadczeniu związanym z tradycyjnym budowaniem maszyn, John Pritchard, kierownik do spraw marketingu w Kinetix Motion Control Business (Rockwell Automation) stwierdza: ? Odosobnione zespoły projektujące część mechaniczną, elektryczną oraz sterowania pracują niezależnie nad produkcją osobnych części składających się na całą maszynę. W efekcie uzyskują jedynie wystarczające, nie zaś optymalne powiązanie mechanicznych funkcji maszyny z jej systemem sterowania. Mechatronika dostarcza efektywniejszego podejścia do projektowania.
W ciągu ostatnich kilku lat wiele mówiono i pisano o tym, że oprogramowanie symulacyjne, narzędzia do zarządzania projektem oraz oprogramowanie umożliwiające współpracę to lekarstwa na bolączki związane z projektowaniem mechatronicznych systemów sterowania ruchem. I choć narzędzia te stanowią ważnąi potencjalnie krytyczną część każdego projektu, to nie mogą rywalizować z dobrym, bezpośrednim planowaniem oraz inżynierskim doświadczeniem. Podany w artykule przykład projektu pokazuje, w jaki sposób dobry inżynier mechatronik może zgrać narzędzia programistyczne z dobrym zarządzaniem.
Na początek specyfikacja
Każdy projekt rozwoju zaczyna się od specyfikacji. W przypadku produktu specyfikacja pochodzi z działu marketingu bądź sprzedaży i opiera się na wymaganiach klientów. Jeżeli projekt dotyczy rozwoju maszyny dla zastosowań wewnętrznych, ?klientem? jest szef działu, w którym będzie używana. W innych przypadkach specyfikacja zawsze pochodzi od potencjalnych użytkowników, a nie od inwestorów lub integratorów systemu. Kiedy zapytano Dana Jonesa, prezesa Incremotion Associates, jak zazwyczaj projektuje silnik dla zastosowań w aplikacjach ruchu, odpowiedział, że? musi wiedzieć, gdzie zacząć.
? Pierwsze, podstawowe pytanie zazwyczaj brzmi: czego oczekujemy od silnika? ? mówi Jones. ? Jaka jest nasza strategia? Jaki jest kierunek planowanych osiągnięć, w którym chce się pójść?
Specyfikacja dla inżynierów zaangażowanych w projektowanie części sterowania ruchem powinna być ogólnikowa. Wystarczy, gdy zawiera informacje potrzebne do ustanowienia odpowiedniego kierunku działań. Przykładowo, dobra specyfikacja dla systemu transportu materiału może brzmieć:
?Usunąć części (dołączony opis) z wyjścia maszyny A (dołączony opis) na poziomie pomiędzy Rmin części na minutę a Rmax części na minutę i wsadzić je do maszyny B (dołączony opis). System powinien mieć zakres błędu mniejszy niż Emax minimalnego czasu zdolności do pracy Umin. Wymagany jest bufor przepełnienia?.
Specyfikacja nie obejmuje wyjaśnienia, w jaki sposób inżynier ma osiągać założone rezultaty. Oczywiście prosta specyfikacja dla tego samego projektu może być następująca: ?zainstaluj robota typu SCARA pomiędzy maszyną A i B?. Taka specyfikacja ma jednak trzy błędy. Po pierwsze, zawodzi tu dostarczona ilościowa informacja odnośnie wymaganych osiągów. Po drugie, zawiódł dostarczony zamknięty opis maszyn, z którymi współpracuje robot SCARA. Po trzecie, ograniczono zadanie integratora do dostarczenia robota typu SCARA, który może ? ale nie musi ? być najlepszym rozwiązaniem.
Podział projektu na zadania
Pierwszą sentencją Juliusza Cezara w dziele ?O wojnie galijskiej? było ?Gallia est omnis divisa in partes tres?, co literalnie znaczy ?cała Galia jest podzielona na trzy części?. Cezar, który był jednym z największych generałów w historii, wiedział, że nie da się wygrać całej wojny od razu. Branie na siebie więcej, niż można podołać, jest receptą na katastrofę. Inni znawcy wojen i taktyki, włączając Machiavelliego, Sun Tsu oraz Lau Tsu mówili właściwie to samo innymi słowami.
Takie podejście stało się jednym z fundamentów współczesnego zarządzania projektem. Zanim więc inwestor weźmie się za pracę, musi podzielić projekt na indywidualne zadania. Diagramy blokowe umożliwiają podział projektu.
Rys 1. Elektromechaniczny podsystem pozycjonowania obracającego się obciążenia złożony ze: stojanu serwomotoru, jego twornika, wału napędowego i obciążenia, Źródło: Control Engineering
Są dwie części diagramu blokowego: bloki i powiązania między nimi. Bloki reprezentują podsystemy lub podzłożenia, które pracują wspólnie w celu osiągnięcia realizacji całego zadania. System gospodarowania materiałem opisany powyżej ma trzy bloki: środki odbioru części z maszyny A, środki ich transportu do maszyny B i środki dostarczania części do maszyny B. Powiązania, zazwyczaj reprezentowane przez strzałki w diagramach blokowych, przekazują coś między blokami. Może to być informacja lub fizyczne oddziaływanie, takie jak siła czy też moment. Zazwyczaj jest to kombinacja tej trójki.
Tym, co czyni bloki bardziej użytecznymi, jest fakt, że zazwyczaj nie reprezentują pojedynczych obiektów, ale podsystemy. Są ?pudełkami? zawierającymi bloki, które inżynier może otworzyć, aby pomajstrować w mechanizmach lub zostawić zamknięte i pracować nad interfejsem scalającym. Oczywiście bloki są puste, dopóki inżynier ich nie otworzy i nie włoży czegoś do nich. Proces selekcji zaczyna się od listy wszystkich dostępnych opcji. Następnie odrzuca się te, które wyraźnie nie pasują lub te, które są zbyt skomplikowane. Jeśli na przykład wyjście maszyny A i wejście maszyny B są oddalone o ćwierć mili, to robot typu SCARA nie jest w stanie wykonać pracy, a z pewnością nie samodzielnie. Linia taśmowa prawdopodobnie również nie jest w stanie pomóc. Zautomatyzowane zdalne pojazdy mogą być najlepszym rozwiązaniem (więcej na ten temat w artykule pt. ?Robot kontra transporter? w Control Engineering Polska nr 3/2008).
? Najlepiej, gdyby inżynierowie zaczynali od podstaw: jaki rodzaj profilu ruchu i jakie siły są wymagane etc. ? mówi John Pritchard. ? Zamiast tego najczęściej inżynierowie po prostu sięgają do narzędzi projektowania i biorą coś, czego używali wcześniej.
Rys 2. Diagram blokowy dostarczający metod dzielenia systemu na lepiej zarządzalne części, Źródło: Control Engineering
Według Pritcharda to niebezpieczna praktyka. Twierdzi on, że jeśli wybierzemy coś, co jest jedynie wystarczające, wynik będzie mierny. Tradycyjne dyscypliny inżynierskie napotykają na problemy w punkcie, w którym inżynierowie określają, co włożyć w bloki wysokiego poziomu. Program zajęć inżynierii był przez pokolenia kierowany do przybywających, wysoko wyszkolonych specjalistów. To było wystarczające tak długo, jak długo projektowanie systemów mechanicznych, takich jak przekładnie w samochodach, wymagało ekspertyzy inżyniera mechanika, projektowanie systemu elektronicznego ? jak wzmacniacz do sprzętu muzycznego ? wymagał inżyniera elektronika, a projekt systemu komputerowego związany był z pracą inżyniera wyspecjalizowanego w elektronice cyfrowej. W dzisiejszej mechatronice i systemach sterowania ruchem żadna z tych konwencjonalnych dyscyplin nie rozwiąże problemu bez udziału pozostałych.
Dlatego potrzebny jest ktoś zdolny ocenić dostępne opcje, a następnie podjąć uzasadnioną inżynierską decyzję. Według Pritcharda ten ktoś powinien umieć poruszać się w różnych dyscyplinach, być otwarty na projekty mechaniczne tak samo, jak na automatykę oraz programowanie. Innymi słowy, idealny inżynier mechatroniki powinien być osobą interdyscyplinarną. Profesor Kevin Craig z uniwersytetu Marquette prowadzi kurs projektowania mechatroniki, na którym uczy takiego właśnie podejścia do zawodu. Słuchacze spędzają czas na studiowaniu teorii: mechaniki, elektrotechniki, elektroniki, sterowania oraz oprogramowania. Pritchard uważa, że ci studenci będą dokładnie takimi fachowcami, jakich potrzebują klienci.
Użycie modeli ilościowych
Po wyczerpaniu wszystkich ?jakościowych? rozważań odnośnie projektu sterowania ruchem warto zawęzić temat do modelowania ilościowego.
? Dobry projekt mechatroniczny powinien zaczynać się od podstawowej analizy fizycznej, aby umożliwić projektantowi wybór odpowiednich mechanizmów ? mówi John Pritchard. ? Występują dwa typy modeli ilościowych: równania dynamiczne oraz modele elementów skończonych. W obydwu typach tych modeli stosuje się techniki matematyczne. Często obydwa są potrzebne.
Równania dynamiczne to równania ruchu w uogólnionych współrzędnych z prostym rozszerzeniem idei współrzędnych systemu poza banalne: przód-tył, prawo-lewo, góra-dół. Na przykład pozycja przekładni pociągu jest najlepiej reprezentowana przez pozycję kątową jednego z przełożeń wału. Siła modeli analitycznych w uogólnionych współrzędnych związana jest tym, że wymagają inżynierskiej wiedzy interdyscyplinarnej. Myślenie w kategoriach uogólnionych współrzędnych pomaga traktować aspekty niemechaniczne modelu tak samo, jak aspekty mechaniczne. Na przykład każdy komponent systemu mechanicznego ma skojarzoną z nim pozycję kątową. Jakkolwiek, każdy komponent elektryczny ma także wartość. Każda z tych zmiennych liczy się jako następna, uogólniona współrzędna.
Wiele współrzędnych jest połączonych przez ograniczenia równań, które redukują ilość równań ruchu. Na przykład moment między polem a twornikiem jest proporcjonalny do obecnego napędu. W przypadku, gdy wszystkie ograniczenia zostaną wzięte pod uwagę, stopnie swobody systemu są zmiennymi pozostałymi. Na przykład poza niektórymi z dziewięciu uogólnionych współrzędnych dla opisu pozycji obrotu obciążenia w systemie jest tylko jeden stopień swobody i jedno równanie ruchu, zarządzające reakcją podsystemu wejściowego na zmiany w pozycji celu:
I ? + 2S ? = Q ?
gdzie I jest inercyjnym momentem obciążającym, S jest sztywnością wału, Q jest pomocniczym parametrem wyrażającym wzmocnienie pętli systemu, ? jest różnicą między kątem obciążenia a kątem do celowym, ? jest kątem skrętu wału.
Zauważmy, że te równania ruchu zawierają niewyraźnie sterowaną zmienną, którą jest orientacja obciążenia. Orientacja obciążenia w niektórych stałych szkieletach odniesienia nie znaczy dla systemu kompletnie nic. Cały system skupia się na różnicy między aktualnym i docelowym zorientowaniem obciążenia oraz na ilości skręceń wału. Równania ruchu mogą być zapisane w konwencji aktualnej pozycji kątowej, ale może to wyglądać w sposób bardziej skomplikowany. Najlepszym wyborem jest rozwiązanie tych równań poprzez użycie wspomnianych zmiennych pomocniczych. Następnie należy przetransformować rozwiązanie wstecz do współrzędnych absolutnych (aktualny i docelowy kąt obciążenia).
Rys 3. Mechatronika zapewniająca bardziej skuteczne podejście do projektowania dla projektów takich, jak projektowanie nowych systemów transportu materiału, Źródło: Control Engineering
Kolejną zaletą wyraźnego zapisania równań ruchu jest to, że możliwe jest wówczas zastosowanie wielu różnych metod rozwiązania: znajomość odpowiedzi z wyprzedzeniem. Czytelnicy zaznajomieni z równaniami systemów wibrujących rozpoznają to jako harmoniczny oscylator siły bez tłumienia. Rozwiązanie jest dobrze znane i studiowane od wieków. Forma tego równania powinna natychmiast ostrzegać inżyniera mechatronika: dopóki coś niezostanie zrobione, system będzie oscylował wokół pozycji docelowej. Wytrawny inżynier mechatronik będzie wiedział, że są trzy możliwe lekarstwa: dodać tłumienie, zainstalować dwustopniowy filtr w pętli sprzężenia zwrotnego lub zmodyfikować profil ruchu tak, aby cofnąć oscylacje.
Modele numeryczne w rzeczywistych warunkach
Poznanie równań ruchu oraz ich analitycznych rozwiązań jest dopiero pierwszym krokiem. Te równania ruchu, tak jak dla większości rzeczywistych maszyn, nie są analitycznie rozwiązywalne. Poza tymi, które charakteryzują się szczególnymi warunkami, jak brak napędu wejściowego lub napęd wejściowy o charakterze sinusoidalnym. Aby przewidzieć zachowanie systemu w rzeczywistych warunkach, najlepsze są modele numeryczne (komputerowe). Modelowanie komputerowe to powtarzające się obliczenia analiz typu ?co ? jeśli?. Są dwa podejścia: rozwiązanie numeryczne równań ruchu i analiza elementów skończonych. W celu ogólnego zwymiarowania i konfiguracji należy użyć rozwiązań numerycznych. Z kolei metoda elementów skończonych przyda się do przeprowadzenia szczegółowej analizy odnośnie wyjaśnienia zasad działania różnych komponentów systemu.
Oczywiście inżynier mechatronik, który ma wystarczająco dużo czasu oraz wiedzy odnośnie programowania komputerów, może napisać program rozwiązujący równania ruchu w języku wysokiego poziomu, takim jak C++. Z drugiej strony wiele firm dostarcza narzędzi, które mają pomóc użytkownikom w ułożeniu i rozwiązaniu równania ruchu bazując na komercyjnych, gotowych komponentach.
? Większość narzędzi albo wykorzystuje podejście równań globalnych, albo są to programy projektujące w oparciu o elementy skończone ? mówi Jones. ? Na etapie analizy, a następnie optymalizacji rozwiązań równania ogólne mają pewną przewagę nad elementami skończonymi. Mimo że normalnie nie są tak dokładne, jak elementy skończone, istotna jest oszczędność czasu na początku projektowania. Po tym, jak otrzymuję dopracowany projekt, do jego sprawdzenia używam elementów skończonych.
Pritchard twierdzi, że firmy, które zaadoptowały takie interpunkcyjne podejście do projektowania, produkują maszyny, które lepiej wyglądają i charakteryzują się lepszymi osiągami.
C.G. Masi
Artykuł pod redakcją Krzysztofa Jaroszewskiego, adiunkta w Zakładzie Automatyki Instytutu Automatyki Przemysłowej na Wydziale Elektrycznym Politechniki Szczecińskiej