synchronizacja DAQmx i X-NET

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.
Awatar użytkownika
mar3cki
Posty: 53
Rejestracja: 15 lis 2005 00:00
Lokalizacja: Wrocław

synchronizacja DAQmx i X-NET

Post autor: mar3cki »

System PXIe, karta DAQ + CAN + FIU.
Wielowątkowa aplikacja w predefiniowany sposób wystawia ramki na X-NET, przełącza styki w FIU i w tym czasie próbuje kilkanaście kanałów AI. Każda z pętli zwraca waveform, dane są wyświetlane na jednym Graphie po zakończeniu sterowania. Całość trwa ok 3sek, niby drift zegarowy niewielki, ale możliwy do kilku ms, a to już za dużo.
wątki w pętlach timowanych:
1 sterowanie karty FIU (10ms)
2 odczyt strumienia z X-NET (2ms) z dekodowaniem ramek
3 wysyłanie na strumień X-NET (2ms)
4 pomiar DAQmx (100kS, 3s)

- Jak zsynchronizować zegar DAQmx z CAN/X-NET? Jest tutorial NI http://www.ni.com/white-paper/4204/en, ale nie rozumiem który zegar ma być podany jako sterujący. Czy mam użyć DAQmx Connect Terminal do przekierowania sygnału zegarowego?
- zauważyłem, że jak pętla 2 (odczyt X-NET) dam szybciej tzn 1ms, to zaczyna się nie wyrabiać (ok 70x patrząc na Previous Iteration Timing -> Finished Late? [i-1]. Czy przyczyną może być konflikt dostępu do karty X-NET wątku 2 i 3? Tzn ta sama karta nie może w tym samym czasie nadać i odczytać ramki?
pozdro marecki

Certified LabVIEW Developer
bogdani
Administrator
Posty: 1315
Rejestracja: 30 lip 2003 00:00
Wersja środowiska: LabVIEW 2015
Lokalizacja: Ruda Śląska
Kontakt:

synchronizacja DAQmx i X-NET

Post autor: bogdani »

Witaj

Możesz zrobić tak: generujesz sobie zegar, który będzie ci wyznaczał cykl (podziel zegar na licznikach jak masz) i puść go na linię RTSI.
W DAQmx możesz ustawić trigger aby startował akwizycję, sterowanie na konkretny impuls, a w przypadku X-NET podobnie, nie robiłem tego, ale wygląda że da się.
Zwróć właśnie uwagę, że nie możesz w tym samym czasie mieć dostępu dwóch wątków do jednego urządzenia.
Zauważ że odczytujesz informację poCAN, która była nadana chwilę wcześniej, nie masz pewności jakie przesunięcie jest. Czy jest szansa na to, że twoje urządzenie daje jakiś sygnał gdzieś, że nadaje, że coś się dzieje, żebyś miał pewność że to jest ten moment?

bogdani
Ktoś ci pomógł na forum? Podziękuj dając pochwałę.

Obrazek Obrazek Obrazek
ODPOWIEDZ