Autor Wątek: Aplikacja DomowyKokpit  (Przeczytany 62367 razy)

0 użytkowników i 1 Gość przegląda ten wątek.

Odp: Aplikacja DomowyKokpit
« Odpowiedź #90 dnia: Stycznia 26, 2010, 06:41:08 »
Wykonałem następne testy.Mam teraz jasny pogląd jak działa program i co jeszcze trzeba zrobić.
Na początek uwaga ogólna dotycząca działania PFL w symulatorze Falcon.W kokpicie jest wyświetlacz LCD oraz przycisk F-ACK.Jak to działa.Wyświetlacz jest zgaszony.Jeśli chcemy uzyskać informacje o problemach z samolotem naciskamy przycisk F-ACK.Jeśli jest o.k to otrzymujemy w linii 0 oraz 1 komunikat:
NO FAULTS     
ALL SYS OK
Jeśli jest awaria to linii 0
FAULT
w linii 2 informacja o usterkach.
Przyciskiem F-ACK przewijamy komunikaty o usterkach (jeśli jest ich więcej).Przewijanie kończy się zawsze zgaszeniem LCD.Tak jest w symulatorze.
Jak jest u mnie w LCD zewnętrznym.Tak samo jak w symulatorze z wyjątkim braku gaszenia linii 2.
Linia 0 jest o.k.,ponieważ usunąłem dla tej linii funkcje usuwające spacje.Przyczyna problemu o którym wspomniałem w poprzednim post wyjaśniła się.Linia 0 ma tylko dwa komunikaty:
''NO FAULTS      "
"FAULT"
 gdy usuwałem spacje to otrzymałem
"FAULTULTS     "
była to pozostałość po poprzednim komunikacie.
Jak to wyglądało w Log
$L0=""   źle
$L0="                " dobrze brak ULTS
Teraz jest wszystko o.k,ale chciałbym gasić także linię 2.W log dla linii 2 mam:
$L1="" a powinno być $L1="               "
W module LCDOnLPT jest funkcja LCD1_Clear,może trzeba jej użyć?
Mam nadzieję,że nie pogmatwałem.Codeking możesz coś doradzić,aby linia 2 także była wyzerowana.
Teraz pomyślałem,że jest jeszcze jedna funkcja LCD1_OnOff wygaszania LCD.Zastanawiam się do czego można ją zastosować?

Odp: Aplikacja DomowyKokpit
« Odpowiedź #91 dnia: Stycznia 26, 2010, 08:41:06 »
Zastosuj dopełnienie obszaru znakowego LCD spacjami. Wtedy do tekstu zostaną dopisane spacje tak żeby tekst miał długość równą ilości znaków w obszarze znakowym. Dzięki temu znikną z wyświetlacza poprzednie wartości. No chyba, że dopełnienie nie działa, to wtedy to naprawię.

Odp: Aplikacja DomowyKokpit
« Odpowiedź #92 dnia: Stycznia 26, 2010, 11:06:16 »
Jestem po testach.Moim zdaniem skrypt jest już dopracowany i gotowy do zastosowania.Umieszczę go na stronie EGHI.Można zastosować dwa warianty wyświetlania wg.uznania.Ja zastosuję wariant nazwany umownie 1.Warianty różnią się tylko sposobem wyświetlania linii 0.
Wariant 1.
1.W linii 0 nie ma usuwania spacji.
2.Tekst linii 0 rozpoczyna się z lewej strony od 2 kolumny.
3.Przy przewijaniu komunikatów na PFL jest opcja wygaszania linii 0 (linia pusta).
Wariant 2.
1.W linii 0 są usuwane spacje.
2.Tekst linii 0 kończy się na ostatniej kolumnie.
3.Dołączamy z lewej strony spacje.
4.Przy przewijaniu komunikatów na PFL linia 0 nie jest gaszona.
W obu wariantach w linii 2 usuwamy spacje z lewej oraz prawej strony.

Odp: Aplikacja DomowyKokpit
« Odpowiedź #93 dnia: Stycznia 26, 2010, 13:02:08 »
Chciałbym uzupełnić ostatni post,tak aby był zrozumiały.Różnice pomiędzy zachowaniem się LCD zewnętrznego dla obu wariantów a LCD w symulatorze polega na tym,że w symulatorze możemy wyłączyć wyświetlacz (ekran jest ciemny).Przyciskiem F-ACK przewijamy komunikaty na LCD,jednym z komunikatów jest brak widocznych znaków (mogą to być spacje)w obu liniach L0 i L2.
Aby to zrealizować w naszym programie musielibyśmy zrobić warunek typu IF .....ELSE.Jeśli linie są puste to wyświetl tylko spacje w przeciwnym przypadku wyświetl treść linii.
W log widać różnicę pomiędzy wygaszeniem linii a powtórzeniem linii.
Dla wygaszenia mamy w log L0="                "
Dla powtórzenia L0=""
Dla mnie jest interesujące to,że jeżeli nie stosujemy funkcji usuwania spacji to program potrafi wystawić np.L0="                ",jeśli stosujemy te funkcje to powtarza ostatni komunikat i wystawia L0="" (tak jest w log).
Idealnie byłoby mieć tę możliwość,ale wspomniane powyżej warianty1,2 są także do przyjęcia.

Odp: Aplikacja DomowyKokpit
« Odpowiedź #94 dnia: Stycznia 26, 2010, 13:19:54 »
Chyba się nie rozumiemy albo funkcja dołączania znaków nie działa (sprawdzę wieczorem). Funkcje do usuwania spacji usuwają wszystkie spacje aż natrafią na znak inny niż spacja więc tekst "    " zostanie oczywiście przerobiony na "" (brak spacji). Teraz jeśli taki pusty tekst przypisujemy do zmiennej z LCD to moduł do obsługi LCD wysyła tylko te znaki które się zmieniły, więc jeśli tekst nie ma znaków to nic nie sprawdza i nic nie wysyła. Funkcja dołączania znaków dołącza je zanim moduł sprawdzi czy znaki się zmieniły. Więc włączenie dołączania spacji będzie powodowało, że jeśli przekażemy do LCD pusty tekst to zostanie on uzupełniony o spacje, moduł wykryje, że na wyświetlaczu są inne znaki niż w przekazanym tekście (uzupełnionym o spacje) i wyśle ten tekst (tylko zmienione znaki) na wyświetlacz.

Odp: Aplikacja DomowyKokpit
« Odpowiedź #95 dnia: Stycznia 26, 2010, 18:04:17 »
Uzyskałem to co chciałem uzyskać metodą prób.Linia 0 nie wymaga modyfikacji.Linia 2 wymaga wprowadzenia funkcji usuwania spacji z lewej oraz prawej strony.Dodatkowo trzeba dołączyć do linii 2 ciąg spacji z prawej strony.Efekt widać na zdjęciu 1 oraz 2.Na zdjęciu 3 widać efekt dołączenia spacji z lewej strony.
Chciałbym w tym miejscu prosić o wyjaśnienie opcji ciąg dołączony.Czy pozycja ciągu dołączonego zaczyna się zawsze od 0?Ile można dołączyć znaków,czy jest jakieś ograniczenie?Jak działa ta opcja jeśli mamy podstawową informację mniejszą  lub równą  maksymalnej liczbie znaków w wierszu?
Reasumując teraz wyświetlacz LCD 2x16 zachowuje się tak jak ten w Falconie.Jeszcze będę go testował,ale nie powinno być niespodzianek.Na koniec chcę podziękować codeking za pomoc w realizacji tego projektu.Jest on atrakcyjny ponieważ realizuje wszystkie funkcje tego z Falcona jednocześnie realizacja jest bardzo tania.Pytałem kolegów na forum czy coś przeoczyłem,jeśli chodzi o rodzaj komunikatów.Mam nadzieję,że wszystko jest o.k.





Odp: Aplikacja DomowyKokpit
« Odpowiedź #96 dnia: Stycznia 26, 2010, 18:56:31 »
Do testowania i sprawdzenia jak działa opcja dołączana polecam skorzystanie z opcji testowania (w oknie konfiguracji obszaru znakowego). Pole "Pozycja" informuje o tym, od którego znaku obszaru (nie tekstu) zostanie wypisywany tekst - ma to znaczenie w przypadku wyrównania do środka lub prawej strony obszaru.

Wystarczy wpisać jakiś tekst w polu "Ciąg wejściowy" i "bawić" się ustawieniami, a w polu "Ciąg wyjściowy" pokazany będzie tekst, który będzie wysłany do wyświetlacza.

Odp: Aplikacja DomowyKokpit
« Odpowiedź #97 dnia: Stycznia 31, 2010, 19:40:09 »
Na stronie http://fs.angus.foxnet.pl/ udostępniłem moduł do obsługi myszy.

Odp: Aplikacja DomowyKokpit
« Odpowiedź #98 dnia: Stycznia 31, 2010, 22:58:59 »
codeking,
 możesz podać jakiś prosty przykład? Skrypt z jedną funkcją?
Np. w FS2004, Cessna, włącznik AP to X120, Y418 (trzymając lewy SHIFT, tak mi wyszło). Teraz, jak przypisać to do np. przycisku Mjoy?

Odp: Aplikacja DomowyKokpit
« Odpowiedź #99 dnia: Stycznia 31, 2010, 23:09:31 »
Proszę bardzo:
   variable $aviator_przycisk_001 { module = "GameControllersInput"; id = "aviator:przycisk_001"; type = bool; direct = in; }
   
   variable_changed $aviator_przycisk_001
   {
      if ( $aviator_przycisk_001 )
      {
         MouseOutput:Click( 0 , 120 , 418 );
      }
   }

Tylko należy pamiętać, że ten włącznik AP musi być zawsze w tej lokalizacji gdy ma być kliknięty.

Odp: Aplikacja DomowyKokpit
« Odpowiedź #100 dnia: Lutego 02, 2010, 19:21:33 »
Zapoznałem się z nowym modułem i myślę,że wiem jak go programować.Pytanie zasadnicze jak go wykorzystać.Nie mam tutaj doświadczenia.W symulatorze eliminuję klawiaturę oraz mysz.Nie mając fizycznego kokpitu możemy użyć albo mysz albo klawiaturę.Mając kokpit używamy fizycznych przycisków.Czy mogę prosić o jakiś przykład zastosowania tego modułu.

Odp: Aplikacja DomowyKokpit
« Odpowiedź #101 dnia: Lutego 02, 2010, 19:48:23 »
To się doskonale sprawdza w FS. Wiele płatnych dodatków nie daje możliwości przypisania do funkcji nawet klawiatury, pozostaje tylko klikanie myszką. Najlepszym przykładem zastosowania tego modułu  jest projekt FMC Zajaca :
http://www.vatsim.pl/viewtopic.php?f=68&t=26955&sid=1059411af09dea0911e9bfd9230d6b66&p=290811#p290811

Odp: Aplikacja DomowyKokpit
« Odpowiedź #102 dnia: Lutego 02, 2010, 21:29:36 »
Teraz wszystko się wyjaśniło.Można ten moduł zastosować w symulatorach,które nie mają przypisań do klawiatury,ale działają z myszą.Zamieniamy funkcje fizycznej myszy na wirtualną mysz a następnie przypisujmy do fizycznych przycisków zaprogramowanych np.w MJoyu.Pozostaje problem widoku 2 D,tzn.nieruchome panele tak aby pozycje przycisków były stałe.Czyli w ten sposób można zaprogramować MFD(przyciski),ICP (przyciski)w Falconie pod warunkiem,że nie zmieniamy widoków w 2D.

Odp: Aplikacja DomowyKokpit
« Odpowiedź #103 dnia: Lutego 05, 2010, 21:41:03 »
Na stronie http://fs.angus.foxnet.pl/ udostępniłem bibliotekę z modułami do przesyłania wartości zmiennych pomiędzy komputerami.

Odp: Aplikacja DomowyKokpit
« Odpowiedź #104 dnia: Lutego 06, 2010, 05:32:47 »
Gratuluję.Stajesz się na naszym forum takim "Lightingiem" z forum viperpits rozumianym w sensie pozytywnym.Jest to bardzo przydatny moduł.Ja także nie mam w nowym PC LPT i mogę ten moduł wykorzystać do wyświetlania LCD.
Bardzo się cieszę,że podjąłeś się zadanie wsparcia programowego rozwiązań elektronicznych np.platformy skalarki.Mogę podać przykład jak ważne jest wsparcie programisty.Najlepsza platforma elektroniczna nie pomoże,jeśli nie wiadomo jak napisać skrypt.Przykład z ostatnich dni.
Mam kartę z OC do sterowania serwerów,mam serwery uruchamiam program testowy i jest o.k.Chcę uruchomić symulator Falcon z tym układem i jest problem jak napisać skrypt.Przykłady z OC dotyczą innego symulatora FS i nie są odpowiednie do Falcona.Pytam na forum OC brak odpowiedzi,pytam na pw brak koncepcji.Po kilku dniach różnych testów znalazłem rozwiązanie problemu.Wniosek brak programisty,dla którego problem byłby trywialny.
Dlatego cieszę się,że mamy wsparcie z strony codeking.