zdarzenie i czas zdarzenia do pliku

Sprawy związane z interfejsem użytkownika - kontrolki, wskaźniki, wyświetlacze, wykresy oraz inne zagadnienia tego typu...
Kamyll0
Posty: 13
Rejestracja: 07 kwie 2011 22:06
Wersja środowiska: LabVIEW 8.5

zdarzenie i czas zdarzenia do pliku

Post autor: Kamyll0 »

Witam,
przepraszam jeśli były gdzieś podobne wątki. Dawno nie pracowałem w LB.

Potrzebuję Waszej pomocy przy programie, który monitoruje dwa sygnały wejściowe A i B. Jeśli sygnał A będzie aktywny to zacznie się liczenie czasu do momentu wystąpienia sygnału B. Jeśli czas ten przekroczy zadaną wartość (np. 10 minut) to czas pomiędzy A i B zostanie zapisany do pliku (w pliku muszą być informacje: data godzina zdarzenia oraz czas pomiędzy A i B).
Jeśli natomiast sygnał B pojawi się zanim zadany czas upłynie to nic się nie dzieje z plikiem a licznik czasu się zeruje i tak do ponownego pojawienia się sygnału A.

Sygnały będę brał z karty DAQ.

Zrobiłem kwestie zliczania i zerowania natomiast trudno jest mi wymyślić zapis i to z aktualną datą i czasem.
http://ifotos.pl/z/axpxxan

Za wszystkie pomocne informacje bardzo Wam dziękuję.

Pozdrawiam!
Awatar użytkownika
Festin
Posty: 20
Rejestracja: 21 sty 2009 12:43
Wersja środowiska: LabVIEW 8.6
Kontakt:

zdarzenie i czas zdarzenia do pliku

Post autor: Festin »

Ja generalnie robię to tak:
Podczas uruchomienia programu otwieram (lub tworzę i otwieram plik) tekstowy (Open/Create/Replace File).
Gdy nastąpi jakieś zdarzenie warte tego by je zapisać tworzę odpowiedni string ( data i czas uzyskane przy pomocy Format Date/Time String + jakieś stałe znaki + treść wiadomości + znak końca linii ) i zapisuję do do otwartego pliku Write to Text File
Przy zamykaniu programu zamykam plik. (Close File)
pozdrawiam
Paweł
Kamyll0
Posty: 13
Rejestracja: 07 kwie 2011 22:06
Wersja środowiska: LabVIEW 8.5

Re: zdarzenie i czas zdarzenia do pliku

Post autor: Kamyll0 »

A czy mógłbyś przybliżyć mi to na jakimś przykładzie?
Awatar użytkownika
Festin
Posty: 20
Rejestracja: 21 sty 2009 12:43
Wersja środowiska: LabVIEW 8.6
Kontakt:

Re: zdarzenie i czas zdarzenia do pliku

Post autor: Festin »

1. Tu masz otwieranie ( lub tworzenie i otwieranie ) i zaraz po tym zapis do tego pliku komunikatu "Uruchomienie programu"
Obrazek
A tu masz zawartość "klocka" zapisującego komunikat razem ze stemplem czasowym
Obrazek
pozdrawiam
Paweł
Awatar użytkownika
Festin
Posty: 20
Rejestracja: 21 sty 2009 12:43
Wersja środowiska: LabVIEW 8.6
Kontakt:

Re: zdarzenie i czas zdarzenia do pliku

Post autor: Festin »

Po zadziałaniu powyższego kodu w katalogu C:\Telab\LOG pojawi się nowy plik o nazwie 16_10_26 a w nim wpis, o tym, że program został uruchomiony.
Obrazek
pozdrawiam
Paweł
Kamyll0
Posty: 13
Rejestracja: 07 kwie 2011 22:06
Wersja środowiska: LabVIEW 8.5

Re: zdarzenie i czas zdarzenia do pliku

Post autor: Kamyll0 »

Przepraszam, ale czy mógłbyś wrzucić ten VI?
Z powyższych grafik nie mogę przekopiować do LabView.

Z góry dziękuję za pomoc.

Finalnie chciałbym aby zapis odbywał się tylko gdy będzie spełniony pewien warunek Bolean i wtedy wartość z Indicator będzie zapisana wraz z datą.

Pozdrawiam
Awatar użytkownika
Pitol
Moderator
Posty: 984
Rejestracja: 19 lip 2007 00:00
Wersja środowiska: LabVIEW 2019
Lokalizacja: Kraków

zdarzenie i czas zdarzenia do pliku

Post autor: Pitol »

Nie no bez przesady.

Wszystkie potrzebne bloczki są w paletach Timing i File I/O.
Odrobina chęci i zrobisz to sam.

Co do "warunku" zapisu to skorzystaj ze struktury CASE, do której podepnij Twój Boolean.
Jeśli warunek będzie spełniony to przypadek TRUE w strukturze CASE się wykona (w nim będzie zapis do pliku).
Jeżeli chcesz coś dopisać do komunikatu, to musisz sygnał Boolean zamienić na tekst.
Jak? Np. z użyciem bloczka Select
Potem połączyć to z komunikatem i wysłać do VI zapisującego do pliku.

Próbuj sam, a jak nie wyjdzie, to spróbuj jeszcze raz... :)
ObrazekObrazekObrazek
Chcesz taki podpis? Zajrzyj tutaj
ODPOWIEDZ