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 » 25 paź 2016 09:08

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 » 25 paź 2016 17:29

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 » 26 paź 2016 15:36

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 » 26 paź 2016 17:51

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 » 26 paź 2016 18:01

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 » 27 paź 2016 08:50

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: 916
Rejestracja: 19 lip 2007 00:00
Wersja środowiska: LabVIEW 2015
Lokalizacja: Kraków
Has thanked: 1 time
Been thanked: 7 times

zdarzenie i czas zdarzenia do pliku

Post autor: Pitol » 27 paź 2016 12:30

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... :)
ObrazekObrazek
Chcesz taki podpis? Zajrzyj tutaj

ODPOWIEDZ