Witam,
mam zrobić projekt, w ktorym poprzez sterowanie falownikiem będzie się zmieniało natężenie przepływu. A dokładniej mamy falownik (0,04-0,2A), który wpływa na pompę zmieniając ciśnienie -> zmienia się przepływ. Regulujemy również otwarcie zaworu. We wcześniejszym projekcie robiliśmy jedynie odczyt z czujników korzystając ze zmiennej lokalnej. A tutaj mamy zrobić regulację ręczną, np przy pomocy suwaka zadając set point. Aparatura jest wyłączona, więc nie mam możliwości sprawdzić czy działa program. Czy w takim przypadku też należy skorzystać ze zmiennej lokalnej tylko wybrać opcję change to write? Jaką pętlę najlepiej zastosować i czy musi być shift register / feedback node? Prowadzący mówił również o regulatorze PID, ale to chyba do regulacji automatycznej, tak?
Z góry dziękuję za wszelkie sugestie.
Sterowanie falownikiem / regulacja ręczna
-
humunumunuku
- Posty: 2
- Rejestracja: 26 mar 2012 22:41
- Wersja środowiska: LabVIEW 8.6
Sterowanie falownikiem / regulacja ręczna
Podstawy sterowania/automatyki się kłaniają:) Jednakże nie możemy się wypowiadać za prowadzącego i narzucać Tobie wymagań projektu.
Ja to rozumiem tak: robisz suwak, którym dajesz nastawę żądanego przepływu => kontroler PID steruje tak falownikiem (a dokładniej sygnałem prądowym 4-20mA), aby zadany przepływ uzyskać.
Czy program działa możesz jedynie sprawdzić wpisując coś zamiast odczytu z czujników - ideałem byłoby gdybyś miał model falownika (choćby najprostszy, jakiś liniowy) i go wpiął w program.
Pętla do zastosowania to pewnie będzie zwykły while.
Co do rejestrów i feedbacków to już wszystko zależy od Twojej inwencji i wizji programu. Choć zasadniczo pewnie sam PID da się zrobić bez shift registers czy feedback'a, bo Twoją informacją zwrotną będzie i tak nowy odczyt z czujników, a wartość sterującą wpiszesz tylko raz i nie będziesz jej potrzebować w kolejnym obrocie pętli. Ale tak jak mówię, zależy od tego jak zaplanujesz program.
Ja to rozumiem tak: robisz suwak, którym dajesz nastawę żądanego przepływu => kontroler PID steruje tak falownikiem (a dokładniej sygnałem prądowym 4-20mA), aby zadany przepływ uzyskać.
Czy program działa możesz jedynie sprawdzić wpisując coś zamiast odczytu z czujników - ideałem byłoby gdybyś miał model falownika (choćby najprostszy, jakiś liniowy) i go wpiął w program.
Pętla do zastosowania to pewnie będzie zwykły while.
Co do rejestrów i feedbacków to już wszystko zależy od Twojej inwencji i wizji programu. Choć zasadniczo pewnie sam PID da się zrobić bez shift registers czy feedback'a, bo Twoją informacją zwrotną będzie i tak nowy odczyt z czujników, a wartość sterującą wpiszesz tylko raz i nie będziesz jej potrzebować w kolejnym obrocie pętli. Ale tak jak mówię, zależy od tego jak zaplanujesz program.
-
humunumunuku
- Posty: 2
- Rejestracja: 26 mar 2012 22:41
- Wersja środowiska: LabVIEW 8.6
Re: Sterowanie falownikiem / regulacja ręczna
Hmm, suwak mam, ale zrobiłam chwilowo tak, że mam zmienną lokalną ustawioną na write (falownik) podłączoną jako wartość inicjującą pod shift register w while i do niej dodaję coś tym suwakiem a w pętli jest indykator (również falownik). Zrobiłam tak, żeby było widać jakieś zmiany skoro aparatura jest wyłączona. Ale z racji tego, że jest wyłączona to wartości, które pokazuje indykator nie wpływają w żaden sposób na ten przepływ ani na otwarcie zaworu. I nie za bardzo wiem o co chodzi z tym modelem falownika. Wg informacji podanej na schemacie, falownik pracuje w zakresie 0,004-0,02A a sam przepływ opisany jest zależnością, że : 0l/min - 0,004A ; 1l/min - 0,02A. A sam zawór pokazuje wartości z takiego samego zakresu co falownik.
Re: Sterowanie falownikiem / regulacja ręczna
Na podstawie Twoich informacji, stworzyłem prosty VI, który w moim odczuciu robi to, co potrzebujesz. W kodzie dałem komentarz i opisy kabelków, więc nie powinnaś mieć problemu z jego analizą. Tylko zaznaczam, że czas samplowania kontrolera PID, jak również jego nastawy zrobiłem "na oko", żeby ładnie waveform chart wyglądał, więc dopasuj je do swojego projektu przed podłączeniem sprzętu, aby czegoś nie uszkodzić.
Jeszcze jedna sprawa dotyczy jednostek - podawałaś wszystko w Amperach, więc taką też jednostkę zastosowałem w VI, jednak wygodniej byłoby posługiwać się miliamperami w VI, a przed wysłaniem sygnału do falownika, podzielić wartość przez 1000. Tylko wtedy będziesz mieć inne nastawy PID (prawdopodobnie przemnożone przez 1000).
Jeszcze jedna sprawa dotyczy jednostek - podawałaś wszystko w Amperach, więc taką też jednostkę zastosowałem w VI, jednak wygodniej byłoby posługiwać się miliamperami w VI, a przed wysłaniem sygnału do falownika, podzielić wartość przez 1000. Tylko wtedy będziesz mieć inne nastawy PID (prawdopodobnie przemnożone przez 1000).
- Załączniki
-
- falownik.vi
- VI do najnowszej wersji LV
- (17.18 KiB) Pobrany 448 razy
-
- falownik 8.6.vi
- VI w wersji do LV 8.6
- (12.41 KiB) Pobrany 418 razy