W aplikacji podczas uruchomienia maszyny zwykle fizycznie trzeba przesunąć oś do znanej pozycji lub do pozycji początkowej. Aby to wykonać należy zrealizować następujące kroki: przejechać osią z zadaną prędkością, aż do napotkania czujnika bazującego, następnie zmniejszyć prędkość, aż do zatrzymania. Po zatrzymaniu ruszamy powoli w przeciwnym kierunku, aż do zjechania z czujnika bazującego. Jest to typowa czynność, którą zawsze powinno wykonać się po uruchomienia. W zwykłych sterowniach wymaga to pisania dość długiego kodu, jednak w sterowniku ruchu Trio zostało to uproszczone do kilku linijek.
DATUMING – czyli bazowanie upraszcza programowanie dzięki wbudowanym procedurom. Dostępnych jest 6 wariantów do zastosowania w tym kombinacji sygnałów wejściowych i znacznika Z z enkodera.
Możemy programować prędkości poszukiwania bazy, a po zbazowaniu funkcja automatycznie ustawia pozycję zerową.
DATUM_IN = numer_wejścia_bazującego – funkcja pozwala nam wskazać, na które wejście jest podłączony czujnik bazujący.
Zatem pracę możemy rozpocząć od zdefiniowania numeru wejścia bazującego poprzez napisanie poniższego kodu:
‘ustawienie wejście bazującego
BASE(0) ‘określenie, do której osi odnoszą się poniższe parametry
DATUM_IN = 0 ‘określenie numeru wejścia bazującego dla osi 0
DATUM_IN AXIS(1) = 1 ‘określenie numeru wejścia bazującego dla osi 1, jak widać, zamiast funkcji BASE, możemy również określać bezpośrednio po funkcji, do której osi się odwołujemy.
Kolejną ważna rzeczą jest określenie prędkości bazowania:
CREEP = prędkość_bazowania – określamy z jaką prędkością oś zjeżdża z czujnika bazującego.
Teraz możemy przejść do określenia sposobu bazowania. Wykorzystamy do tego funkcję:
DATUM(numer trybu bazowania) – w oprogramowaniu Motion Perfect w zakłace Help –> Trio Basic help mamy opisane wszystkie dostępne tryby bazowania.
Tryb 1 i 2:
DATUM(1) – bazowanie w kierunku dodatnim
DATUM(2) – bazowanie w kierunku ujemnym
Oś porusza porusza się w kierunku dodatnim/ujemnym, z prędkością CREEP aż do znalezienia znacznika Z z enkodera – w tym miejscu zostaje określona pozycja zerowe osi. Następnie zwalnia, aż do zatrzymania. Uwaga – na poniższym diagramie przedstawiono dodatkowy ruch do pozycji zero – MOVEABS(0).
Tryb 3 i 4
DATUM(3) – bazowanie w kierunku dodatnim
DATUM(4) – bazowanie w kierunku ujemnym
Oś porusza się z prędkością SPEED, aż do napotkania sygnału z wejścia bazującego, po czym zwalnia aż do zatrzymania. Następnie porusza się z prędkością CREEP w przeciwnym kierunku, aż do opuszczenia czujnika bazującego, po czym następuje zatrzymanie i w miejscu zatrzymania przyjęcie pozycji zerowej.
Tryb 5 i 6
DATUM(5) – bazowanie w kierunku dodatnim
DATUM(6) – bazowanie w kierunku ujemnym
Oś porusza się z prędkością SPEED, aż do napotkania sygnału z wejścia bazującego, po czym zwalnia aż do zatrzymania. Następnie porusza się z prędkością CREEP w przeciwnym kierunku, aż do opuszczenia czujnika bazującego, po czym kontynuuje drogę, aż do znalezienia znacznika Z z enkodera. Po jego znalezieniu następuje przyjęcie pozycji zerowej i zatrzymanie. Uwaga: oś nie przyjmuje pozycji 0 w miejscu zatrzymania.
Teraz możemy napisać program bazujący dla dwóch osi:
FOR x=0 TO 1
BASE(x)
SPEED=200 ‘ustawienie prędkości osi
ACCEL=10000 ‘ustawienie przyśpieszenia osi
DECEL=10000 ‘ustawienie opóźnienia osi
CREEP=5 ‘określenie prędkości bazowania
DATUM(3) ‘wybór trybu bazowania
NEXT x
WAIT IDLE AXIS(0) ‘ oczekiwania, aż oś zakończy prace
WAIT IDLE AXIS(1) ‘ oczekiwania, aż oś zakończy prace
Dodatkowo warto zdefiniować następujące parametry:
FWD_IN =wejście zakresu osi w kierunku dodatnim
REV_IN = wejście zakresu osi w kierunku ujemnym
FS_LIMIT = limit pozycji w kierunku dodatnim
RS_LIMIT = limit pozycji w kierunku ujemnym
FASTDEC = opóźnienie w przypadku przekroczenia limitu
DEFPOS(pozycja) – ustawienie bieżącej pozycji na przypisaną wartość
WDOG – Steruje stykiem przekaźnika WDOG używanym do włączania napędów zewnętrznych. Polecenie WDOG = ON MUSI zostać wydane w programie przed wykonaniem ruchów
RUN “nazwa programu” – wywołuje kolejny program
Tyle teorii, teraz opierając się na poprzedniej części kursu przechodzimy do praktyki żeby zobaczyć jak przesunąć oś do pozycji początkowej lub znanej:
Zapraszamy do następnej części kursu.

Autor: Jarosław Pawełek
Absolwent Akademii Górniczo – Hutniczej im. Stanisława Staszica w Krakowie na kierunku Automatyka i Robotyka ze specjalnością Automatyka i Metrologia. Przygodę z automatyką rozpoczynał w firmie od stanowiska praktykanta. Przechodząc kolejno na stanowisko Doradcy ds. technicznych oraz obecnie zajmując stanowisko Kierownika Działu Wsparcia Technicznego stara się zapewniać najlepsze wsparcie merytoryczne dla naszych klientów. Prywatnie miłośnik fotografii.