Strona 1 z 2

Labview Embedded a opto22

: 15 lis 2008 16:57
autor: Tutenhamon
Witam,

Czy może ktoś pracował z urządzeniami firmy Opto22?

http://www.opto22.com/site/pr_details.a ... 1055,,,0,5&

Chodzi mi czy jest możliwość wrzucenia Labview Embedded do tego urządzenia?

Pozdrawiam.

Re: Labview Embedded a opto22

: 15 lis 2008 17:31
autor: wino
Znalazłem coś takiego:

Google

Producent

NI

Re: Labview Embedded a opto22

: 15 lis 2008 17:40
autor: Tutenhamon
Dzięki ale akurat to próbowałem.

Tylko nie wiem czy to wina Windowsa czy sterowników ale jak wrzucę to w pętle 10mS to czasy poszczególnych pętli nie są jednakowe. Skaczę pomiędzy 15-40mS. Nie udaję mi się uzyskać 10mS albo przynajmniej jednakowych czasów dla kolejnych pętli. Dlatego myślałem, że pomoże wrzucenie programu bezpośrednio do urządzenia.

Labview Embedded a opto22

: 15 lis 2008 17:54
autor: wino
A próbowałeś użyć Timed loop ? Nie przyspieszy to działania aplikacji?

Re: Labview Embedded a opto22

: 15 lis 2008 18:03
autor: Tutenhamon
W sumie nie próbowałem. Używam tylko while loop. Myślałem, że timed loop jest bardziej użyteczna do RT systemów, które można implikować do pamięci urządzenia. Coś takiego jak działają npoint-y Labview. Ale na pewno po weekendzie spróbuje dam znać czy coś to zmieniło.

Labview Embedded a opto22

: 16 lis 2008 08:49
autor: Mikrobi
Tutenhamon : Windows nie da ci czasów powtarzalnych wykonywania pętli na poziomie 10 ms. zawsze bedzie się to zmieniało w okolicach 20ms. Z doświadczenia - ilość zainstalowanych aplikacji, wersja, ilość pracujących serwisów - wynika, że będzie ten czas większy, o czym zresztą sam wspominasz.

Re: Labview Embedded a opto22

: 16 lis 2008 12:07
autor: Tutenhamon
No i trafiliśmy do setna sprawy.

To trochę inaczej. A czy pomogłoby zainstalowanie Windowsa Embedded albo sterowników RTX? Tylko podobno sterowniki te nie obsługują ActiveX. A na tym opierają się sterowniki do mojego urządzenia pod Labview. Miał ktoś styczność z tym?

Labview Embedded a opto22

: 16 lis 2008 13:51
autor: wino
Mikrobi pisze:Tutenhamon : Windows nie da ci czasów powtarzalnych wykonywania pętli na poziomie 10 ms. zawsze bedzie się to zmieniało w okolicach 20ms.
Tu sie nie zgodze. Ostatnio z pitolem klepnęliśmy aplikacje, w której pętla(Timed Loop) zawsze działa co 10 ms. Wszystko zależy od tego co jest w środku pętli. Jeżeli jest mało operacji to taka pętla bez problemu się wykona.

Re: Labview Embedded a opto22

: 16 lis 2008 15:33
autor: Tutenhamon
Nie wiem co myślisz poprzez mało operacji ale ja w tym samym czasie odczytuje dane z przepływomierza, steruje silnik liniowy, odczytuję ciśnienie i temperaturę (2 termopary) oraz steruje zaworem solenoidowym. Pomijam operacje pośrednie oraz bezpośrednie, które bazują na tych urządzeniach jak PID kontrolery oraz obliczenia napięć ścinających. Możliwe, że to jest trochę za dużo dla Windowsa i staram się znaleźć jakieś obejście.

Dzięki za odpowiedzi.

Labview Embedded a opto22

: 16 lis 2008 16:47
autor: wino
A możesz wkleić diagram z ciekawości :)

Mam rozumieć, że te wszystkie operacje są przeprowadzane w jednej pętli?
Może pora na jakąś wielowątkowość? Będziesz miał możliwość ustawienia priorytetów operacji i na pewno to przyspieszy działanie programu.

Re: Labview Embedded a opto22

: 16 lis 2008 17:11
autor: Tutenhamon
Tak wszystko jest w jednej pętli. Nie myślałem o wielowątkowości i nie za bardzo wiem jak to działa. Muszę doczytać. Dzięki za radę. Wrzucam mój vi w pdf. Na pewno poleję się grad krytyki :) Dodam tylko, że nie pracuję w Labview długo i wiele jeszcze rzeczy na pewno muszę się nauczyć.

Re: Labview Embedded a opto22

: 16 lis 2008 19:52
autor: maszup
mozesz zmienic opcje w VI: (VI Properties/Execution/Priority) na High lub Time Critical, ale w systemach nie real time nigdy nie dostaniesz dokladnego czasu wykonania petli.
zalaczony VI moze ci pomoc w testach.

Re: Labview Embedded a opto22

: 18 lis 2008 09:05
autor: Tutenhamon
Dzięki za program fonzo. Z tego co pokazuję pętla, czas zawiera się pomiędzy 9-11 mS. Time loop nie pomaga w moim programie ciągle mam skaczące dane. Widać to przy zapisywaniu danych. Załączam plik txt z danymi. Pierwsza kolumna to czas. Jakoś nie widać, żeby była wykonywana pętla co 10mS albo przynajmniej powtarzalna. Spróbuję zainstalować Windows XP Embedded i zobaczyć jak to działa na odchudzonym Windowsie.

Re: Labview Embedded a opto22

: 18 lis 2008 10:21
autor: maszup
a jestes pewien ze twoje operacje wyrabiaja sie w tych 10ms?

petla timeowana, jesli sie nei wyrabia to mierzy czas wykonania danej operacji w pelnych cyklach lub niepelnych (rzeczywisty czas), o tym decyduje opcja Maintain Original Phase w ustawienia petli (prawym przyciskiem myszy na petle timeowana - Configure Timed Loop) - chodzi o to, czy jesli petla sie nie wyrobi to ma zaczac nastepny cykl z dokladnoscia do ustawionego periodu czy natychmiast.

w zalaczonym pliku zmienilem ta opcje na FALSE i zwiekszyl iteracje petli for, tak, zeby na moim kompie przestala sie wyrabiac w 10ms, u mnie wtedy sredni cykl to ok 22ms

widze jeszcze ze co jakis czas logujesz dane z tym samym timestampem, moze jakis dodatkowy bug w sofcie? powinien byc jeden wiersz co 10ms tak?

Re: Labview Embedded a opto22

: 18 lis 2008 10:30
autor: Tutenhamon
"widze jeszcze ze co jakis czas logujesz dane z tym samym timestampem, moze jakis dodatkowy bug w sofcie? powinien byc jeden wiersz co 10ms tak?"
Dokładnie powinien zapisywać co 10mS a tego nie robi i powtarza te same dane. Staram się to jakoś wyeliminować.