Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Elektroda.pl
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

LAD - kolejność wykonywania

plcsystem 10 May 2014 09:06 2811 14
  • #1
    plcsystem
    Level 15  
    Witam!

    W jakiej kolejności wykonuje się program PLC napisany w LAD?
    Muszę napisać program, który będzie wykonywał sekwencje załączeń napędów, na podstawie stanów z czujników. Ta sekwencja jest z góry ustalona i ma być zapętlona. Czy program się wykonuje od góry do dołu i mogę w kilku miejscach użyć tego samego wyjścia?
  • #2
    kosmos99
    Level 38  
    Program wykonuje się od prawej do do lewej i następnie góra- dół.
    plcsystem wrote:
    mogę w kilku miejscach użyć tego samego wyjścia?


    Bez instrukcji skoku nie.
  • #3
    revcorey
    Level 12  
    Część środowisk udostępnia edytory sekwencji i radzę z tego skorzystać niż robić ręcznie samemu sekwencję.
  • #4
    plcsystem
    Level 15  
    Piszę w Proficy Machine Editor.
    A można to napisać bez tego edytora sekwencji?
  • #5
    kosmos99
    Level 38  
    A na czym ma polegać zadanie?
  • #6
    revcorey
    Level 12  
    Proficy niestety chyba nie ma(ale chyba z nakładką DCS już tak).
    Generalnie ręcznie robiona sekwencja to zawsze problem. W każdym razie ja bym każdy krok rozbił na osobny blok funkcyjny i odpowiednio później wywołał. Stare wersje proficy niestety nie mają możliwości tworzenia bloków.
  • #7
    kasjo
    Level 25  
    Zazwyczaj sterownik ustawia wyjścia dopiero po pełnym skanie programu więc jeżeli użyjesz te same wyjście na początku i na końcu programu to i tak ustawi się zgodnie z warunkiem na końcu programu (no chyba że będziesz się bawił w instrukcje SET i RESET).
    A co do sekwencji to osobiście używałem ręcznego robienia sekwencji, tak samo znajomi w pracy i to samo widziałem w projektach firm zewnętrznych i jakoś nie było potem większego problemu w diagnostyce maszyny.
    Możesz albo użyć kolejnych markerów albo jednej zmiennej w której będzie przechowywany numer sekwencji.
  • #8
    revcorey
    Level 12  
    Powiem tak. analizowałem wywołanie sekwencji zespołów młynowych dla kotła parowego. Sekwencja zrobiona ręcznie w sterowniku zabezpieczeń(PCS 7). Dużo gorzej analizuje się takie coś ,jedynym obejście dobrym jest tak jak napisałem rozbicie każdego kroku na osobny blok i jego wywoływanie zgodnie z sekwencją.
  • #9
    plcsystem
    Level 15  
    Generalnie mam przenosić elementy między stanowiskami. Urządzenie złożone z 2 napędów (pion i poziom), kilka czujników. Jest to zestaw laboratoryjny. Problem jest taki, że chcę załączać te napędy w pewnej kolejności. I generalnie chciałem to zrealizować głównie przy pomocy markerów i cewek SR. Mam tylko taką wątpliwość, czy jeśli na początku programu wciskam start ustawiam cewke, załączam napęd pioniowy. Kolejno dam warunek żeby po wykryciu krańcówki napędu pionowego reset cewki i załączenie cewki napędu w prawo.
    Później jest kilka liczników, timerów. I teraz chciałbym żeby napęd poruszał się w lewo. Ale warunkiem jest również sygnał z krańcówki czujnika pionowego. Czy to nie będzie kolidować? Chciałbym to zrealizować tak, żeby program wykonywał się szczebel po szczeblu.
  • #10
    revcorey
    Level 12  
    Czy miałeś już do czynienia kiedyś z sekwencją? Zakładam że tak w każdym razie musisz to sobie najpierw rozrysować tzn. Jak jest warunek na start sekwencji, później jakie są warunki na kolejne kroki( i czasy sekwencji), do tego wypracowanie sygnałów sekwencja trwa i awaria sekwencji. Do tego sekwencja wyłączenia. Jak sobie to rozpiszesz to wtedy łatwiej znajdziesz problem.
    Każdy krok to osobna funkcja (np. jak w siemens FB) i odpowiednie wywołanie po kolei.
  • #11
    plcsystem
    Level 15  
    Tyle że to jest projekt na laborkach na studiach i możemy korzystać tylko z języka drabinkowego.
  • #12
    revcorey
    Level 12  
    Czyli nie miałeś nigdy do czynienia z sekwencją. Powiedz mi jaki problem masz ze zrobieniem tego co napisałem w drabince?
    Jak wrócę z pracy narysuję ci przykład sekwencji na kartce i pokaże jak takie coś wygląda. To za parę godzin. Prowadzących z politechnik szkoda słuchać jeśli idzie o PLC.
  • #13
    Marek K
    Level 13  
    Metod na pisanie sekwencji jest kilka-naście nawet.
    LAD - kolejność wykonywania
    moja ulubiona przedstawiłem na rysunku :)
    Założenia są takie:
    D0 Jest licznikiem sekwencji. A instrukcja DECO robi coś takiego, że jeśli Zmienej(merker) D0 jest wartość 5 to zapala piąty bit w słowie MW0.
    Czyli zasada jest taka. Sekwencja liczy 1,2,3,4,5 Wraz ze wzrostem licznika aktywują się kolejne flagi.
    M0.0 reset (stan początkowy sekfencji)
    M0.1 pierwszy krok
    itd.
    http://wikimarek.referata.com/wiki/LG_PLC sekcja "Kilka sposobów na zaprogramowanie PLC-ka"
    Bardzo stary kiedyś pisałem :P
  • #14
    revcorey
    Level 12  
    Kolega nie chce sekwencji(pod pojęciem sekwencji rozumiem odpalenie np. zespołu młynowego nieskładającego się z n urządzeń i tylko tyle) a po prostu sterowanie :)
  • #15
    Markos80

    Automation specialist
    Według mnie sekwencja się nadaje jak najbardziej (potrzebne jest sekwencyjne wykonywanie czynności). Bardzo ładnie i przejrzyście można to zapisać bez użycia dedykowanego języka.
    Rozwiązanie Marek K jest fajne, ale ma wadę jeśli potrzeba sekwencji, która w jakimś momencie musi się rozdzielić na dwie lub więcej niezależnych ścieżek.
    Jaką masz wersję PME i jaki sterownik?