Gra w życie.

Tematy związane z tworzeniem dużych aplikacji. Zaganiednia dotyczące architektury oraz zasad tworzenia optymalnych rozwiązań.
player_adax
Posty: 7
Rejestracja: 16 lut 2016 02:37
Wersja środowiska: LabVIEW 2013

Gra w życie.

Post autor: player_adax »

Hej wszystkim, jestem początkującym w świecie labVIEW. Pracuję nad projektem automatu komórkowego. Niestety wynik po każdym "dniu" jest różny od oczekiwanego.
Obiektami testowymi są małe oscylatory i figury niezmienne. Ich ewolucja w mojej implementacji zachowuje się w sposób którego nie rozumiem, komórki żywe rozchodzą się promieniście i nie potrafię tego naprawić. Używam instalacji LV 2013.
Załączniki
Projekt LabVIEW_GameofLife.zip
plik projektu do wglądu.
(44.16 KiB) Pobrany 403 razy
Awatar użytkownika
dajpanspokój
Posty: 145
Rejestracja: 05 lis 2015 08:15
Wersja środowiska: LabVIEW 2016

Re: Gra w życie.

Post autor: dajpanspokój »

Funkcja liczaca sasiadow zle liczy
Sciagnij moja (razem z coerce.vi) i uzyj ich

Te przyciski stopu nie beda działać bo do petli while caly czas wysylany jest ten sam sygnal (False). Wiec ta petla nigdy sie nie zatrzyma. Musisz umiescic kontrolki stopu w srodku petli, wtedy za kazdym razem beda odczytywane.

Zamiast 3 petli while w jednym casie, uzyj jednej petli while i case w srodku. Wtedy sposob wyswietlania symulacji (ktory tez bedzie w petli) bedzie odczytywany za kazdym razem i bedziesz mogl go zmienic bez potrzeby zatrzymania petli
Załączniki
ile sasiednich.vi
(11.13 KiB) Pobrany 396 razy
Coerce.vi
(11.59 KiB) Pobrany 387 razy
Obrazek
Awatar użytkownika
dajpanspokój
Posty: 145
Rejestracja: 05 lis 2015 08:15
Wersja środowiska: LabVIEW 2016

Re: Gra w życie.

Post autor: dajpanspokój »

Hej
Lepiej ci pomóc dobrze, niż nie pomagać wcale. W twoim rozwiązaniu są dość poważne błędy w architekturze.
Obejrzyj sobie projekt w załączniku i go dokończ zgodnie ze wskazówkami, otwórz Main, nacisnij ctrl+h i poobczajaj co tam jest użyte. Nauczysz sie paru sztuczek
Poczytaj też o maszynie stanów w LabVIEW
Załączniki
Game of Life 2013.rar
(53.37 KiB) Pobrany 416 razy
Obrazek
Awatar użytkownika
skoziate
Administrator
Posty: 245
Rejestracja: 06 mar 2007 00:00
Wersja środowiska: LabVIEW 2019
Lokalizacja: Warszawa
Kontakt:

Re: Gra w życie.

Post autor: skoziate »

Zainspirowany postem stworzyłem implementację gry w życie i bonusowo mrówki Langtona przy pomocy Formula Node w LabVIEW. Kto chętny niech pobiera i korzysta.
Załączniki
Logical Games.zip
(65.36 KiB) Pobrany 408 razy
Pozdrawiam,
Sebastian
player_adax
Posty: 7
Rejestracja: 16 lut 2016 02:37
Wersja środowiska: LabVIEW 2013

Re: Gra w życie.

Post autor: player_adax »

Dziękuję bardzo za dobre rady. Właśnie kończę implementację. Mimo mojego nikłego doświadczenia postaram się dokończyć program.
player_adax
Posty: 7
Rejestracja: 16 lut 2016 02:37
Wersja środowiska: LabVIEW 2013

Re: Gra w życie.

Post autor: player_adax »

nie wiem dlaczego nie działa mi zapis do pliku, oraz nie mam pomysłu jak zaimplementować zmianę trybu wyświetlania. Jeśli wyrzucę te dwie rzeczy to program działa.
Załączniki
Projekt LabVIEW.zip
(86.62 KiB) Pobrany 396 razy
Awatar użytkownika
skoziate
Administrator
Posty: 245
Rejestracja: 06 mar 2007 00:00
Wersja środowiska: LabVIEW 2019
Lokalizacja: Warszawa
Kontakt:

Gra w życie.

Post autor: skoziate »

W projekcie brakuje
gun.vi
oscylatory.vi
zapis do ppm.vi

Dorzuć to zerknę.
Pozdrawiam,
Sebastian
player_adax
Posty: 7
Rejestracja: 16 lut 2016 02:37
Wersja środowiska: LabVIEW 2013

Re: Gra w życie.

Post autor: player_adax »

już poprawiam paczkę
Załączniki
Projekt LabVIEW.zip
dodane pliki
(79.34 KiB) Pobrany 397 razy
Awatar użytkownika
skoziate
Administrator
Posty: 245
Rejestracja: 06 mar 2007 00:00
Wersja środowiska: LabVIEW 2019
Lokalizacja: Warszawa
Kontakt:

Re: Gra w życie.

Post autor: skoziate »

W zapisz do ppm.vi znajduje się pętla while, w którą gdy program wejdzie, to już nigdy nie wyjdzie. Zamiast pętli stosuj strukturę case. Załączam poprawkę.
Załączniki
zapis_do_ppm.png
Pozdrawiam,
Sebastian
player_adax
Posty: 7
Rejestracja: 16 lut 2016 02:37
Wersja środowiska: LabVIEW 2013

Re: Gra w życie.

Post autor: player_adax »

no właśnie wiedziałem że coś jest nie tak z pętlą. A mogę prosić o jakieś rady do trybu wyświetlania?
Awatar użytkownika
skoziate
Administrator
Posty: 245
Rejestracja: 06 mar 2007 00:00
Wersja środowiska: LabVIEW 2019
Lokalizacja: Warszawa
Kontakt:

Re: Gra w życie.

Post autor: skoziate »

Jasne. Najpierw jednak musisz mi wyjaśnić, jak te tryby mają działać. Po pierwsze są to 3 tryby:
1. ciągły
2. iteracja po iteracji
3. co kilka iteracji

Tryb 3. jest dla mnie jasny. Czy możesz wyjaśnić czym różni się 1. od 2. ?
player_adax pisze:no właśnie wiedziałem że coś jest nie tak z pętlą. A mogę prosić o jakieś rady do trybu wyświetlania?
Pozdrawiam,
Sebastian
player_adax
Posty: 7
Rejestracja: 16 lut 2016 02:37
Wersja środowiska: LabVIEW 2013

Gra w życie.

Post autor: player_adax »

w ciągłym animacja jest "płynna" a w drugim przejście do następnej iteracji jest wywoływane np. przyciskiem "następna iteracja"
player_adax
Posty: 7
Rejestracja: 16 lut 2016 02:37
Wersja środowiska: LabVIEW 2013

Gra w życie.

Post autor: player_adax »

chyba mnie przerósł pomysł, nie działa funkcja zapisująca tablicę do tekstu. Domyślnie chciałbym aby plik byl zapisany w formacie ppm.
Awatar użytkownika
skoziate
Administrator
Posty: 245
Rejestracja: 06 mar 2007 00:00
Wersja środowiska: LabVIEW 2019
Lokalizacja: Warszawa
Kontakt:

Gra w życie.

Post autor: skoziate »

Co to znaczy, że nie działa? Wyrzuca błąd, nic się nie dzieje, czy zapisuje, ale nieprawidłowe dane?
Pozdrawiam,
Sebastian
ODPOWIEDZ