Transmisja danych poprzez rs232

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.
Wojtek__27
Posty: 12
Rejestracja: 29 sie 2011 22:03
Wersja środowiska: LabVIEW 2011

Transmisja danych poprzez rs232

Post autor: Wojtek__27 »

Jakiś czas temu przy pomocy tego forum wykonałem obsługę portu RS232, która działa poprawnie. W tej chwili wysyłam dane poprzez wpisanie stringa do Visa Write, jednak chcę zmodyfikować kod tak, aby raz wpisana dana była wysyłana tyle razy ile wynosi zadana wartość. Generalnie chcę mieć możliwość ustawienia, że wpisana wartość string ma być wysłana np 1000 razy w odstępach 1ms. Nie bardzo wiem jak to ugryźć dlatego proszę o pomoc.
Awatar użytkownika
Arronax8
Posty: 69
Rejestracja: 06 kwie 2012 21:25
Wersja środowiska: LabVIEW 2012

Re: Transmisja danych poprzez rs232

Post autor: Arronax8 »

Hmm..., wrzuć Visa Write w pętlę for, do której terminalu N podepnij swój zadajnik ilości wykonań, a w środku pętli dodaj jeszcze opóźnienie jakie chcesz z użyciem np. bloku Wait (ms) :p
Wojtek__27
Posty: 12
Rejestracja: 29 sie 2011 22:03
Wersja środowiska: LabVIEW 2011

Re: Transmisja danych poprzez rs232

Post autor: Wojtek__27 »

Dzięki, mniej więcej tak właśnie kombinowałem. Jednak koniecznie chcę mieć Visa Close poza pętlą i tu pojawia się problem z typem danych. Nie da się połączyć Visa write umieszczonej w pętli z Visa close poza pętlą. Czy da się to jakość rozwiązać?
Awatar użytkownika
Pitol
Moderator
Posty: 982
Rejestracja: 19 lip 2007 00:00
Wersja środowiska: LabVIEW 2019
Lokalizacja: Kraków

Transmisja danych poprzez rs232

Post autor: Pitol »

Pokaż kod, bo nie chce mi się wierzyć, że nie można połączyć VISA WRITE z VISA CLOSE...
ObrazekObrazekObrazek
Chcesz taki podpis? Zajrzyj tutaj
Awatar użytkownika
Mikrobi
Posty: 1210
Rejestracja: 08 paź 2003 00:00
Wersja środowiska: LabVIEW 2017

Transmisja danych poprzez rs232

Post autor: Mikrobi »

Prawy klawisz na tunelu wyjściowym z referencją VISA i klastrem błędu: "Disable Indexing"
Na chwilę obecną dostajesz na wyjściu z pętli dwie tablice zamiast dwóch pojedynczych wartości?
pozdrawiam
Mikrobi

LabVIEW Champion, CLD, CPI
Wojtek__27
Posty: 12
Rejestracja: 29 sie 2011 22:03
Wersja środowiska: LabVIEW 2011

Re: Transmisja danych poprzez rs232

Post autor: Wojtek__27 »

Panowie załączam plik i z góry dziękuję za pomoc.
Załączniki
program4.vi
(14.77 KiB) Pobrany 379 razy
Awatar użytkownika
conioo
Posty: 53
Rejestracja: 22 mar 2006 00:00
Wersja środowiska: LabVIEW 2014
Lokalizacja: Kraków

Re: Transmisja danych poprzez rs232

Post autor: conioo »

Mikrobi ma rację :)
Masz indeksowane wyjście z VISA Write. Kliknij PPM na krawędź pętli FOR, gdzie wychodzi drut i zaznacz "Disable Indexing". Na dole masz klaster błędu, który również jest indeksowany i tworzona jest tablica klastrów. Na niego daj PPM i zmień na "Replace with Shift Register". Podepnij jeszcze wejście klastra błędu do pętli for jako Shift Register i po sprawie.
Załączniki
screen.png
screen.png (6.92 KiB) Przejrzano 9355 razy
Wojtek__27
Posty: 12
Rejestracja: 29 sie 2011 22:03
Wersja środowiska: LabVIEW 2011

Re: Transmisja danych poprzez rs232

Post autor: Wojtek__27 »

Dziękuję wszystkim za pomoc, działa elegancko:). Pochwały poszły ;).
ODPOWIEDZ