Elektroda.pl
Elektroda.pl
X
Elektroda.pl
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Programik do nauki PLC i rozwiązanie lekcji

25 Maj 2008 08:25 18656 29
  • Poziom 9  
    Mam fajny program do nauki PLC.

    Program dołączyłem wcześniej do postu:

    https://www.elektroda.pl/rtvforum/viewtopic.ph...1tek+plc&sid=42ff8e0c27e04189e6897ee98ecaa395

    Próbuje rozwiązać przedstawione w nim problemy.

    Lekcja 2 Basen

    Programik do nauki PLC i rozwiązanie lekcji


    * CZUJ_GÓRA - czujnik u brzegu basenu
    * CZUJ_DÓŁ - czujnik u dna basenu
    * NAPEŁNIJ - przycisk "Napełnij"
    * OPRÓŻNIJ - przycisk "Opróżnij"
    * WYMIANA - przycisk "Wymiana"
    * DOPŁYW - siłownik sterujący dopływem wody
    * ODPŁYW - siłownik sterujący odpływem wody

    Zadania do wykonania:

    1. Napisz program obsługujący przycisk "Napełnij", tak aby po jego wciśnięciu zaczęła się lać woda. (Użyj cewki S)
    2. Dopisz do poprzedniego programu zabezpieczenie reagujące na górny czujnik poziomu cieczy tak, aby woda się nie przelewała przez brzeg.
    3. Uzupełnij poprzedni program o obsługę przycisku "Opróżnij". Spraw aby wylewana była woda z całego basenu.
    4. Zmodyfikuj program tak, aby nie można było przerwać procesu napełniania i opróżniania basenu. Dopiero gdy poziom cieczy osiągnie jakiś czujnik, proces zostaje przerwany.
    5. Dodaj obsługę przełącznika "Wymiana". Jeśli basen nie jest aktualnie napełniany lub opróżniany, a przycisk jest załączony, to niech zostaną otwarte oba zawory na raz (wymusza to ciągły obieg świeżej wody).

    [/img]

    Dodano po 10 [minuty]:

    Tak to będzie działało ale na zwykłych cewkach a w treści napisali, aby wykorzystać cewkę S

    Programik do nauki PLC i rozwiązanie lekcji[url][/url][url][/url]
  • Specjalista Automatyk
    twój program jest niepoprawny.
    Wg. tego programu musisz cały czas trzymać przycisk ażeby napełnić basen.
    po drugie jest możliwość przelania basenu. Trzymając przycisk "Napełnij" nie ma żadnego warunku wyłączenia zaworu.
    Naturalnie lepiej jest poprzez SET i RESET ustawić zawory (tak jak jest zalecone).
    Zawór DOPLYW:
    SET = jeżeli przycisk "napełnnij" i (lub) czujnik np. CZUJ_DÓŁ --negacja (kiedy ma się otworzyć zawór ?)
    RESET = CZUJ_GÓRA
    W analogiczny sposób zaprogramuj zawór ODPŁYW
    Potem rozszerz twój program o funkcje : OPRÓŻNIJ oraz WYMIANA.
    Zwróć uwagę,że przy wymianie nie przelać (lub opróżnić) basenu - średnica rur odpływu i dopływu, opory przepływów
  • Poziom 9  
    Jeżeli chodzi o napełnianie to wcale nie muszę trzymać przycisku. Jest pr5zecież zrobione podtrzymanie dopływu przez styk zwierny.

    A woda się nie przeleje bo jest styk rozwierny CZUJ_GÓRA.

    Układ chodzi lecz chciałbym zrobić go wykorzystując cewki S i R
  • Poziom 19  
    Marked masz racje układ będzie chodził, ale nie będzie to "eleganckie" rozwiązanie i tym sposobem nie zrobiłeś wszystkich zadań do wykonania. Pobaw się cewkami SET i RESET: cewka SET ustawia zmienną na 1 a RESET zeruje ją. np po naciśnięciu przycisku NAPEŁNIJ (jest to przycisk astabilny) zastosuj cewke SET dla zmiennej DOPŁYW a po osiągnięciu CZUJ_GÓRA zmienną DOPŁYW zresetuj stosując cewkę RESET. Napewno do wykonania zadania trzeba to będzie bardziej rozbudować. Pobaw sie troche a na pewno zrozumiesz cała sprawę. Pozdrawiam
  • Specjalista Automatyk
    powtarzam, twój program jest niepoprawny . Pomimo, że basen będzie pełny to jest możliość otwarcia zaworu przyciskiem "napełnij".
    Program powinien być tak napisany, ażeby w każdej sytuacji urządzenie działało poprawnie.
  • Specjalista Automatyk
    @arek_m,
    w twoim programie nie można niczym przerwać cyklu napełniania lub
    opróżniania. Basen musi być 100% napełniony ażeby mógł być opróżniony (i odwrotnie). Oczywiście, nie jest to błąd - jeżeli takie byłyby założenia działania ale myślę, że lepiej przerywać proces np. napełniania przyciskiem "opróżniaie" lub "wymiana".
  • Poziom 22  
    Witam
    Narysowałem ten programik według założeń zamieszczonych w pierwszym pości, tam jest wyraźnie napisane że, cyklu napełniania, lub opróżniania ma nic nie przerywać. A jeśli Kolega chce przerywać cykl, to lepiej zrobić dwa tryby działania, automatyczny i ręczny.
  • Specjalista Automatyk
    arek,masz rację. Przeoczyłem punkt 4 zadania.
  • Poziom 17  
    Witam,

    Co do 4 pierwszych punktów to mam gotowe, problem w Wymianie, może ktoś podpowie.
    Programik do nauki PLC i rozwiązanie lekcji

    Pozdrawiam
  • Specjalista Automatyk
    w zadaniu nie jest określone czy basen w trakcie budowy sterowania jest np. w połowie wypełniony wodą lub co się stanie po wyparowaniu wody trochę poniżej czujnika_góra -- w obu przypadkach twój program nie będzie działać.
    na twoim miejscu w 1 i 4 linijce programu wstawiłbym zamiast "nie czuj_dół"-- "nie odpływ" a zamiast "czuj_góra-- "nie dopływ".
    Efekt jest ten sam ale program będzie działać nawet jeżeli basen w momencie zainstalowania sterowania jest w połowie wypełniony wodą.
  • Poziom 17  
    Andy, chodził Ci chyba o 1 i 3 linijkę. Zmieniłem nadal działa. Może jakaś podpowiedź co do wymiany?
  • Poziom 24  
    W przypadku przycisku "Wymiana" problem się komplikuje.
    Należałoby zdefiniować 2 flagi: "dopływ_pomocnicza" i "odpływ_pomocnicza" i ustawiać je funkcjami "set i "reset" tak, jak obecnie otwierasz odnośne zawory.
    A same zawory otwierać warunkami logicznymi
    (dopływ_pomocnicza LUB Wymiana) = Dopływ
    oraz
    (odpływ_pomocnicza LUB Wymiana) = Odpływ
    które trzebaby dopisać w następnych linijkach.
    Możnaby uniknąć flagi pomocniczej, wracając do początku Twoich rozważań i ciągnąc dalej koncepcję zwykłej cewki z podtrzymaniem w miejsce funkcji set/reset.
  • Specjalista Automatyk
    @j222, tak, chodziło mi o linijkę 1 i 3.
    @kenion, dodaj do 4 linijki "R Odpływ" (równolegle do R %M0000.
    Zbliżamy się do finału. Jednakże takie rozwiązanie (lub podobne) powinien przedstawić założyciel tematu, który chce się uczyć poprawnego programowania. Dlatego też nie napisałem na początku gotowego rozwiązania zadania a starałem się naszego kolegę naprowadzić na "dobry tor"
  • Poziom 17  
    Też dopiero zaczynam. Mam pytanie: co ta są za zestyki M000*. Do czego się odnoszą?

    Pozdrawiam
  • Poziom 19  
    andy1955 zgadza sie w 4 linijce brakuje cewki resetującej ODPLYW. Zmienne z oznaczeniem M sa to zmienne wewnetrzne (markery) sluza do pomocy w napisaniu programu. W tym programie zmienne te oznaczaja trwanie cyklu napelniania badz oprozniania zbiornika.
  • Poziom 9  
    A czy w tym przypadku konieczne jest stosowanie tych markerów.

    Kierując się waszymi sugestiami zrobiłem tak:

    Programik do nauki PLC i rozwiązanie lekcji

    i można powiedzieć ze 4 punkty są spełnione, a jeżeli chodzi o WYMIANĘ to następuje tak jak napisano w 5 punkcie gdy basen nie jest ani opróżniany ani napełniany, tylko jest mały problem bo wyłączenie wymiany powoduje w zależności od poziomu basenu albo napełnianie albo opróżnianie.
  • Poziom 24  
    Jak już zainicjujesz wymianę, to jej nigdy w życiu nie skończysz.
    Chyba, że przepływy przez zawory będą różne i nastąpi w końcu w czasie wymiany taka sytuacja, że zbiornik się całkowicie napełni, albo całkowicie opróżni.
    Uwaga ważna: nigdzie w zadaniu nie jest powiedziane, że masz używać WYŁĄCZNIE cewek S i R, a nie możesz użyć zwykłej cewki.
  • Poziom 9  
    proponuje to zrobic z wymiana samoistna

    Dodano po 50 [sekundy]:

    przesle to po 17
  • Poziom 9  
    Ja ostatnio na pracownii poszedłem na łatwizne i zrobiłem taki programik. Układ działa z operacja wymiany.Dodałem od razu plik do odczytu dla programu możecie sobie sprawdzić działanie.
    Programik do nauki PLC i rozwiązanie lekcji
  • Poziom 12  
    Program homercioo7 jest niepoprawny. Nie spełnia kryteriów zadania nr 4 - można przerwać proces napełniania i opróżniania basenu. Wymiana też nie jest dobrze zrobiona, gdyż po ponownym przełączeniu następuje napełnianie lub opróżnianie.

    Program kamilpazdan tragedia... Nic nie działa jak powinno.

    Program kenion działa jak powinien, po uwzględnieniu poprawki.

    Moja wersja:
    Programik do nauki PLC i rozwiązanie lekcji
  • Poziom 1  
    A jakby wyglądał program, jeśli chciałbym dodać automatyczne opróżnianie po wysłaniu sygnału przez górny czujnik oraz napełnianie po sygnale z dolnego czujnika?
  • Poziom 9  
    Jesteście pewni, że program kenion działa poprawnie? W punkcie 3-im jest napisane: "Spraw aby wylewana była woda z całego basenu." No chyba, że tej wody poniżej "czujnika dół" nie bierzemy pod uwagę. pozdrawiam
  • Poziom 9  
    Masz rację kolego, też zwróciłem uwagę na to że źle sprecyzowane jest określenie "cała woda". Ja przyjąłem że dno basenu to dolny czujnik, i oto moja wersja programu wydaje mi się że spełnia wszystkie założenia, chociaż nie jest to idealny program do basenu ale zrobiony według założeń autora.
  • Poziom 1  
    A wracając jeszcze na momęt do lekcji pierwszej samouczka, aczkolwiek mam problem ze stworzeniem programu zapalenia i gaszenia żarówki za pomocą jednego przycisku astabilnego w taki sposób aby jedno kliknięcie zapaliło żarówke natomiast kolejne ją zgasiło ale używając wyłacznie styków i cewek ??
  • Poziom 11  
    Witam.
    Ja dopiero raczkuje i właśnie ściągnąłem programik i robię basen mam problem tylko z wymianą w basenie.
  • Specjalista Automatyk
    Nie stosujcie (oczywiście czasami trzeba, więc w miarę możliwości) cewek set , reset to rozwiązanie (wbrew niektórym opinią) jest zdecydowanie nieeleganckie.
    Wyobraźcie sobie teraz duży program gdzie w 20 miejscach (różnych podprogramach) ustawiana jest dana zmienna poprzez cewki set / reset. Taki program jest trudny do analizy.
    Najlepiej używać zwykłej cewki która jest ustawiana w jednym miejscu pod wszystkimi możliwymi warunkami.
    Pozdrawiam.