Wirtualne projektowanie urządzeń sterujących z wykorzystaniem Cadence PSpice MATLAB Co-Simulation

| Technika

Rosnąca liczba sterowanych programowo urządzeń elektronicznych wymaga stosowania coraz to bardziej zaawansowanych konstrukcji wykorzystujących złożone procesy technologiczne. Konsekwencją tego faktu jest konieczność przeprowadzania symulacji pracy zarówno części sprzętowej jak i programowej projektu. Niestety, bardzo często działania te są od siebie wyraźnie rozdzielone.Podział symulacji na weryfikację układu elektronicznego i weryfikację oprogramowania uniemożliwia dostrzeżenie zależności, jakie wynikają z uruchomienia danego programu na zaprojektowanym sprzęcie. Konfrontacja tych dwóch światów zachodzi najczęściej dopiero na etapie prototypu, czyli wtedy, gdy wprowadzane zmiany są już kosztowne i czasochłonne.

Wirtualne projektowanie urządzeń sterujących z wykorzystaniem Cadence PSpice MATLAB Co-Simulation

Rys. 1. Schemat typowego procesu projektowego

Wczesne włączenie części programowej do symulacji działania części sprzętowej (Software-In-The-Loop) projektowanego urządzenia umożliwia opartą na modelach weryfikację całego systemu, a zwłaszcza określenie wzajemnych relacji między tymi dwoma procesami konstrukcyjnymi. Ewentualne błędy w specyfikacji lub implementacji systemu mogą być w takim przypadku bardzo szybko wykryte i skompensowane, co prowadzi w efekcie końcowym do znacznego skrócenia czasu projektowania.

Na wczesnym etapie projektowania elastyczność symulacji pozwala na wirtualne wprowadzanie zmian w projekcie bez generacji dodatkowych kosztów. W każdej chwili można wykonać analizy oraz optymalizacje projektowanego urządzenia prowadzące do zwiększenia jego funkcjonalności oraz stabilności. Analizy takie nie są możliwe do przeprowadzenia podczas projektowania tradycyjnego, w którym elementy sprzętowe i programowe tworzone są w prawie cały czas oddzielnie. Jest oczywiste, że proces projektowy oparty na jednoczesnym modelowaniu części programowej i sprzętowej jest możliwy jedynie w oparciu o odpowiednie oprogramowanie.

W dalszej części artykułu omówiony zostanie przykład projektowania układu sterowania przepustnicą gaźnika silnika spalinowego przy pomocy programów PSpice oraz Matlab-Simulink. Oprogramowanie to pozwala na modelowanie i analizę współpracy części sprzętowej i programowej projektu na każdym etapie konstruowania.

Cadence PSpice i MATLAB razem

Rys. 2. Bloki projektu połączone przy pomocy SLPS

Program do symulacji sprzętowej PSpice firmy Cadence Design Systems oraz program do symulacji oprogramowania MATLAB-Simulink firmy MathWorks mają już zasłużoną renomę i są to jedne z najbardziej popularnych pakietów tego typu na rynku. Jeszcze do niedawna nie istniała wydajna metoda pozwalająca na współpracę tych dwóch symulatorów. Podejmowano próby ekstrakcji pojedynczych wartości z jednego systemu i przesyłania ich do drugiego w celu uzyskania logicznego połączenia. Połączenie takie pozwalało na pewne, bardzo przybliżone symulacje otrzymanego złożenia jako kompletnego systemu, ale brak pełnego sprzężenia zwrotnego nie dawał szansy na uzyskanie precyzyjnych rezultatów.

Obecnie możliwe jest wzajemne sprzężenie wymienionych symulatorów dzięki interfejsowi SLPS (SimuLinkPSpice) firmy Cadence. Pozwala to na pełną symulację urządzenia sterującego jako kompletnego systemu złożonego z części programowej i części sprzętowej, reprezentowanych odpowiednio za pomocą właściwych dla obu symulatorów modeli. Interfejs SLPS traktuje program Simulink jako nadrzędny w stosunku do PSpice i pozwala na otwarcie kanału łączącego obydwa symulatory poprzez umieszczenie specjalnego bloku hierarchicznego - tak jak to pokazano na rysunku 3. Ważną jest iż takie połączenie w żaden sposób nie determinuje ustawień parametrów obu symulacji, co pozwala na jej przeprowadzenie z krokiem umożliwiającym zarówno uzyskanie wymaganej dokładności jak i zbieżności wewnętrznych metod numerycznych. Obydwie symulacje są synchronizowane automatycznie poprzez interfejs SLPS.

Rys. 3. Podgląd obu komponentów projektu

Schemat układu elektronicznego zapisany w formacie programu Pspice może być wykorzystywany jako blok hierarchiczny w programie Simulink bez żadnych dodatkowych zabiegów. Po umieszczeniu bloku w obszarze pracy Simulinka następuje automatyczne zdefiniowanie węzłów łączących obydwa symulatory. Dodatkowo, program Simulink pozwala na bezpośredni dostęp do parametrów symulatora PSpice.

Sterowania przepustnicą gaźnika

Praca wspomnianego wcześniej układu sterowania polega na przetwarzaniu zadanej pozycji pedału gazu na prądową falę prostokątną, której wartość średnia wynikająca ze współczynnika wypełnienia steruje prędkością obrotową silnika napędzającego oś przepustnicy.

Rysunek 3 przedstawia kompletny, trzyczęściowy układ regulacji kąta nachylenia przepustnicy gaźnika.

Rys. 4. Wyniki symulacji pracy układu przepustnicy

W obszarze bloku PSpice znajdują się następujące elementy: sterowanie silniczkiem napędzającym oś przepustnicy, sam silniczek, mechatroniczny model przepustnicy oraz czujnik prędkości odchylania przepustnicy. Elementy umieszczone w obszarze PSpice tworzą otwartą pętle zakończoną na końcach sygnałami wchodzącymi już w skład interfejsu SLPS. Sygnały te to wejściowy PWM oraz wyjściowy Sensor, który jest generowany przez układ czujnika prędkości. Model algorytmu regulatora został wykonany w postaci bloku Simulink. Wszystkie elementy wchodzące w skład przedstawionych obszarów tworzą wirtualną pętlę wprowadzającą sprzężenie zwrotne widoczne zarówno dla konstruktorów sprzętu jak i programistów.

Istnienie zamkniętej pętli obejmującej obszary PSpice i Simulink pozwala na równoczesne projektowanie i symulację całego systemu z uwzględnieniem wszystkich bieżących poprawek i zmian pojawiających się w trakcie pracy zespołów.

Najważniejsza symulacja w omawianym systemie dotyczy badania wpływu parametrów regulujących (PID Control) na wartość kąta odchylenia przepustnicy gaźnika. Celem konstruktorów jest uzyskanie takiego zestawu parametrów sterujących, które umożliwiają najszybsze osiągnięcie pozycji końcowej przez przepustnicę bez szkodliwych drgań. Czerwony przebieg na rysunku 6 przedstawia wynik symulacji dla optymalnego zestawu parametrów, podczas gdy przebieg niebieski przedstawia drganie przepustnicy w końcowej fazie jej odchylania.

Rys. 5. Wyniki symulacji podzespołów składających się na układ przepustnicy

Rysunek 5. przedstawia wyniki symulacji całego systemu z uwzględnieniem pozycji pedału, kąta odchylenia przepustnicy, prędkości silniczka napędzającego oś przepustnicy oraz sygnału błędu. Symulacja pokazuje, że przepustnica osiąga pełne otwarcie w czasie 0,3s po wciśnięciu pedału gazu oraz pełne zamknięcie w mniej więcej tym samym czasie, dzięki zadziałaniu sprężyny powrotnej - co jest dodatkowo obrazowane poprzez ujemną prędkość silniczka.

Podsumowanie

Przedstawiony przykład pokazuje możliwość stworzenia zamkniętej pętli obejmującej dwa, zwykle oddzielone od siebie obszary projektowania. Utworzona w ten sposób wirtualna platforma projektowa nie tylko pozwala na wykonywanie bieżących symulacji podczas projektowania, ale również może być wykorzystana jako medium komunikacyjne dla podwykonawców. Umożliwia to zleceniodawcy sprawowanie szczegółowej kontroli nad procesem projektowym oraz pozwala na realne skrócenie czasu projektowania i prototypowania. W końcowym efekcie korzyści te przekładają się na znacznie szybsze dostarczenie gotowego urządzenia do odbiorców.

Michael Seibt, Tomasz Górecki, FlowCAD