Czyszczenie portów w labView

Jeśli masz coś do powiedzenia w sprawie LabVIEW napisz. Tutaj są tematy, których nie można uściślić do innych działów.
bumboos
Posty: 10
Rejestracja: 11 kwie 2005 00:00

Czyszczenie portów w labView

Post autor: bumboos »

Witam Jako prace inzynierska stworzylem uklad sermomechanizmu sterowany z poziomu LabViev, jednak pojawil sie problem z ktorym ni jak nie wiem jak sie uporac. Mianowicie, dlaczego jesli przerwe prace rogramu naciskajac w menu "Abort Operation" program ciagle wysyla na karte pomiarowa ostatnia wartosc napiecia wyliczonego przez PID`a. Dlaczego LabView to robi??. Korzystam z karty pomiarowej Advantecha-moze to nie w LabView jest wina a to karta nie jest odswiezana?
Dodam ze ma byc to stanowisko laboratoryjne dla studentów i musze to dobrze zabezpieczyc.
:D
grzechura
Posty: 54
Rejestracja: 16 mar 2005 00:00

Post autor: grzechura »

nie wiem czy w tym jest problem ale u mnie jest tak ze jesli np: zadam sobie sygnal ktory ma byc generowany przez 5 sekund to jesli wylacze labview po np 2 sekundach to on i tak generuje mi ten sygnal przez 3 sekundy. zrob wiec tak, generuj sygnal np przez 1 sekuned daj to w petle nieskonczona. jesli bedziesz chcial potem przerwac program, on bedzie generowal prawdopodobnie tylko do konca petli.
bogdani
Administrator
Posty: 1315
Rejestracja: 30 lip 2003 00:00
Wersja środowiska: LabVIEW 2015
Lokalizacja: Ruda Śląska
Kontakt:

wyłączenie

Post autor: bogdani »

Witam
Grzechura ma rację. Nie powinieneś wyłączać programu przez naciśnięcie przycisku Abort Operation bo to jest w zły stylu. Powinieneś mieć tak zbudowany program, żeby mieć od tego odpowiedni przycisk, który uruchamia procedurę zmierzającą do zakończenia pracy programu. Njaczęście właśnie się to robi umieszczejąc sekwencją programu w pętli While Loop, która wykonuje się dokpóki nie zostanie naciśnięty np. przycisk STOP. Będziesz miał wtedy czas, żeby zamknąćodpowiednio sterowniki używane w programie.
Pozdrawiam bogdani
Ktoś ci pomógł na forum? Podziękuj dając pochwałę.

Obrazek Obrazek Obrazek
bumboos
Posty: 10
Rejestracja: 11 kwie 2005 00:00

Post autor: bumboos »

Dziekuje za opdpowiedzi.
Zgodze sie ze nie powinno sie tego robic przez abbort operation ale tu wlasnie zaczyna sie problem o ktorym pisze. Mianowicie jest to uklad regulacji automatycznej gdzie sygnal wyjsciowyjest ustawiany przez regulator PID i w zaleznosci od tego jaki jest uchyb i jakie sa nastawy wypracowywuje rozna wartosc napiecia. Nie moge wiec jak zescie poradzili wykorzystywac tej samej wartosci amplitudy gdyz zaleznie od wartosci sprzezenia uchyb jest rozny a wiec i rozne napiecie wysylane z karty. Jak wspomnialem ma to byc stanowisko laboratoryjne dla studentow i prosze mi wierzyc jest naprawde wielce prawdopodobne ze nie jeden geniusz wlasnie tak bedzie konczyl prace programu :) . Myslalem zeby przez wyjscie cyfrowe puscic flage ktora by dzialala jako wlacznik wylacznik , jesli aplikacja dziala to wysyla przykladowo stan wysoki, jesli ktos nacisnal Abort... to nie ma wysylanego napiecia wiec uklad dodatkowy odcina zasilanie. Ale niestety tak samo na cyfrowym wyjsciu jesli cokolwiek zostalo wyslane to po nacisnieciu abort operation on ciagle wysyla na port. Zastanawialiscie sie moze co by sie dzialo jak by windows zawiesil sie- ostatni wyliczony sygnal przez PID jest ciagle wysylany:) jest to niewatpliwie wada LabView- przynajmniej w mojej ocenie. Prosze o podjecie dyskusji na ten temat.

Czy ktos z Panstwa korzysta z kart rekomendowanych przez National Instruments?? Jesli tak to jak wyglada tam sytuacja-tak samo??

Dziekuje i pozdrawiam
grzechura
Posty: 54
Rejestracja: 16 mar 2005 00:00

Post autor: grzechura »

Sparawa wyglada tak, portem nie steruje labview tylko procesor kompa. procesor dostaje sygnal od labview ze ma na port wyslac jakis sygnal i wysyla go dopoki nie dostanie innej instrukcji. jesli zamykasz labview opcja abort to labview konczy prace i nie daje procesorowi zadnego polecenie zeby przestal generowac sygnal.

sprawe rozwiazuje

1 petal:))))

2 zawsze mozna opcje abort ukryc tak tak zeby podczas dzialania programu byla niewidoczna.to samo mozna zrobic z zamknieciem okna. wiec nikt nie zamknie przez przypadek tego programu.

i musze sie przyznac nie rozumie:( dlaczego nie mozesz zastosowac petli?
bumboos
Posty: 10
Rejestracja: 11 kwie 2005 00:00

Post autor: bumboos »

Juz wyjasniam.
Program dziala u mnie w petli-moze nie jasno sie wyrazilem, jednak amplituda sygnalu obliczana przez niego musi byc umieszczona wewnatrz tej petli(jest to petla while) wiec dlatego nie moge skorzystac ze sposobu przedstawionego przez kogos powyzej. Dziekuje za wyjasnienie jak jest z przesylaniem sygnalow.
Jednoczesnie wlsnie bardzo dobrym rozwiazaniem byloby schowanie i zablokowanie okna przed zamknieciem i tu moja prosba :) czy ktos ma jakis przyklady jak sie to robi?

Dziekuje za podpowiedzi
pozdrawiam
grzechura
Posty: 54
Rejestracja: 16 mar 2005 00:00

Post autor: grzechura »

File--------> VI Properites----------->wybierasz Window Appearance, potem ---->custom -------> customise i potem odznaczasz :show toolbar when running i allow user to close window i wszystko jest ok

sygnal do petli mozesz podac za pomoca zmiennej lokalnej wiec do wykonania nowej petli powinnien zawsze czytac aktualna amplitude, dla mnie tu nie ma problemu ale byc moze sie myle
bumboos
Posty: 10
Rejestracja: 11 kwie 2005 00:00

Post autor: bumboos »

Dziekuje za pomoc. Naprawde to w pelni rozwiazuje moj problem. :D :D

Jeszcze raz wielkie dzieki.
Slawek_ZG
Posty: 77
Rejestracja: 29 sty 2004 00:00

Post autor: Slawek_ZG »

Nie wiem jak w ADvantech ale w sprzecie NI petla While Loop zatrzymana tylko przyciskiem stop nie wyskoczy nawet po dotarciu na miejsce bo nie ma informacji ze servo wykonalo przejscie. Trzeba dodac informacie ze ruch sie zakonczyl, ze nie ma bledu (jak jest to stop petli a potem stop servo albo natychniast albo po jakims zboczu dla predkosci I tu trzeba pomyslec o przewodzie bledu). Tak wiec to sa 3 elementy ktore stopuja petle.

A tak na marginesie jak steruje sie sprzetem Advantecha? i jak to dzial?
jakos nie mialem okazji sie tym bawic. (mowie o motion) te same vi steruja czy laduje sie cos nowego?
Pozdrawiam

Slawek
Slawek_ZG
Posty: 77
Rejestracja: 29 sty 2004 00:00

Post autor: Slawek_ZG »

a zapomnialem jesli chcesz zeby mozna bylo zatrzymac to mozna wywolac funkcie na zdarzeniach i jesli ktos zamknie okno to wywola zdarzenie zwiazane z zamknieciem okna w ktorym ty wywolasz zatrzymanie serva
Pozdrawiam

Slawek
ODPOWIEDZ