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

Regulator PID_compact s7-1200. Załączenie regulatora

colo993 09 Sty 2017 18:54 480 10
  • #1 09 Sty 2017 18:54
    colo993
    Poziom 3  

    Witam.
    Jestem w trakcie pisania pracy inżynierskiej, stworzyłem program w TIA portal z wirtualnym obiektem i regulatorem PID_compact. Niestety gdy chcę włączyć autotuning w regulatorze PID proces się zaczyna lecz staje martwy w miejscu i nic się nie dzieje nawet po godzinie pracy. W załączniku jest spakowany projekt w TIA portal 13 wraz z symulacją w PLCSIM, jeśli mógłby ktoś zajrzeć do programu i wskazać gdzie robię błąd byłbym wdzięczny. Korzystałem z kilku źródeł co do tego PID, ale nic nie dało. Zależy mi na tym aby to działało bo to moja praca inżynierska.

  • Pomocny post
    #2 09 Sty 2017 20:12
    Markos80

    Spec od PLC

    Tak na pierwszy strzał, bo dużo błędów ;)
    Zmienne REAL zajmują 4 bajty, więc Tag_6 MD0 i Tag_1 MD1 się nadpisują. Powinno być np.: MD0 i MD4. INT zajmuje 2 bajty. Nachodzących adresów masz więcej, więc poprzeglądaj całość.
    Nadpisujesz Tag_10 przed bloczkiem PID z wejścia, a symulację masz po bloczku, więc nic nie trafi jako wartość.
    W parametrach PID Process value limit masz od 0.0, a musi być mniejsza od rzeczywistej wartości z obiektu, bo w przeciwnym wypadku zwraca błąd.
    Polecam też nazywać zmienne z jakimś sensem, bo w obecnej formie to się bardzo kiepsko czyta.

  • #3 09 Sty 2017 20:36
    colo993
    Poziom 3  

    Dobrze, pozmieniam te wartości i zmienię wartości w bloku PID, czy jeśli zrobię korekty będę mógł wrzucić tutaj poprawiony program abyś go sprawdził i powiedział co jest jeszcze do poprawy? Napisałeś "Nadpisujesz Tag_10 przed bloczkiem PID z wejścia, a symulację masz po bloczku, więc nic nie trafi jako wartość. " czyli jak mam umieścić ten Tag 10, jeśli możesz powiedzieć.

  • #4 09 Sty 2017 22:08
    Markos80

    Spec od PLC

    Jeśli chcesz mieć uniwersalnie to powinieneś zrobić jakiś bit, np.: SimulationOn i w zależności od niego wywoływać symulację lub czytać i pisać sprzęt.

  • #5 10 Sty 2017 18:01
    colo993
    Poziom 3  

    Masz może jakiś przykład z takim regulatorem PID gdzie jest to zrobione tak jak ty mówisz uniwersalnie? Bo w Internecie ludzie mają zawsze fizyczne obiekty a nikt nie robi z wirtualnym obiektem i nie wiem jak to podlaczyć a mój promotor nie ogarnął zakupów części a sa mjeszcze nie robił takiej symulacji a mi każe to zrobić :D. Miło by było jakbyś mógł podrzucić jakiś przykład jak to jest gdzieś zrobione z wirtualnym obiektem. Czy w moim programie jest szanse gdy zmodyfikuję wejścia do tego PID to będzie wartość na wyjściu i PID zadziała?

  • #6 10 Sty 2017 18:23
    Markos80

    Spec od PLC

    colo993 napisał:
    Czy w moim programie jest szanse gdy zmodyfikuję wejścia do tego PID to będzie wartość na wyjściu i PID zadziała?
    Nie sprawdzałem czy Twój obiekt liczy sensownie, ale jak poprawisz wcześniejsze uwagi to powinien zadziałać. Masz wybrany PID v1.2 i tego nie zmieniaj, bo to jedyny, który działa w PLCSim. Uruchomienie PID_compact S7-1200
    Zobacz Closed-Loop Control of Simulated Controlled Systems in the S7-1500 with PID_Compact V2.2 . Przykład niby na 1500, ale biblioteka z obiektami jest na 1200/1500.

  • #7 10 Sty 2017 18:55
    colo993
    Poziom 3  

    Poprawiłem swój projekt, opisałem tagi czytelnie i zrozumiale, zmieniłem ich wartości aby na siebie nie nachodziły. Obiekt jest przepisany z książki więc powinno być wszystko z nim w porządku. Nie wiem jak zmodyfikować ten setpoint, co na niego podać aby była wartość na output regulatora. Przeskalowałem wartości analogowe żeby podać do regulatora wartości na input, a nie input_per. Wiem, że proszę o wiele i zawracam gitarę, ale czy mógłbyś powiedzieć jak zmodyfikować program i co dać na setpoint aby reguator zadziałał i była wartość na output. Naprawdę mi zależy a już nie wiem co robić...

  • Pomocny post
    #8 10 Sty 2017 19:54
    Markos80

    Spec od PLC

    Poprawiony program daj.

  • Pomocny post
    #10 11 Sty 2017 12:59
    Markos80

    Spec od PLC

    Dodałem bit SimOn M100.0 (włącza symulację) i PIDOn M100.1 (włącza regulator). Wtedy do "Rzeczywista wartość napięcia z potencjometru" MD12 można wpisać zadaną i wygląda, że coś się dzieje.
    Musisz posprawdzać zakresy Twojego skalowania, bo np. z regulatora wychodzi 0-50%, a skalujesz z 0-10. Sam obiekt też sprawdź, bo zmienia wartości poza zakresem wejściowym PID, pomimo, że wyjście z regulatora jest równe zero.
    Z nazwy pliku możesz usunąć rozszerzenie zip i otworzyć projekt poprzez Retrieve.

  • #11 11 Sty 2017 16:55
    colo993
    Poziom 3  

    OK super, wielkie dzięki. Postaram się to poprawić i mam nadzieję że zadziała :) jeszcze pytanie od tych bloków M100.0 i M100.1, one są cały czas wyłączone, kiedy one się załączają? Bo z poziomu symulacji nie mogę zmienić ich stanu.