Wymagania:
Aplikacja MirSmartHome, której częścią jest opisywana tutaj MSwitch, ma budowę modułową. Każdy z modułów (powiązanych ze sobą zależnościami) wykonuje swoje ściśle określone zadania. Dobrym przykładem jest tutaj moduł komunikacyjny ConnMod, który dba o kolejkowanie transmisji po magistrali oraz zarządza portem szeregowym, pozwalając na komunikację z wieloma modułami niezależnie. Zatem aplikacja MSwitch, uruchomiona w trybie samodzielnym, będzie wymagała modułu komunikacyjnego do poprawnego działania, podczas gdy pracując jako jeden z modułów w aplikacji głównej MirSmartHome, będzie korzystała z już załadowanego modułu komunikacyjnego. Na dzień dzisiejszy przygotowano wersję wykonywalną aplikacji pod system Linux i Windows, która powinna działać bez instalacji dodatkowych składników na komputerze. Sama aplikacja także nie wymaga instalacji w systemie, wystarczy wypakować archiwum do dowolnego katalogu na komputerze. W załącznikach można znaleźć też źródła programu, które do poprawnej pracy będą wymagały (niezależnie od systemu operacyjnego):- Python 2.7
- PySerial - moduł do obsługi portów szeregowych
- PyQT4 - wsparcie dla QT4
Obsługa Programu:
Obecnie pakiet MirSmartHome jest w wersji testowej, zatem aplikacja wyłącznika MSwitch będzie działała w trybie samodzielnym. W tym trybie aplikację uruchamiamy wywołując z konsoli plik multchswitch.py. W przypadku aplikacji w wersji wykonywalnej należy uruchomić (najlepiej z konsoli ze względu na zwracane z programu komunikaty) plik multchswitch (dla systemu Windows będzie to multchswitch.exe). Pojawi się okienko główne widoczne na rysunku 1: Główna częścią interfejsu okna głównego stanowi 10 przycisków wraz z "diodami" sygnalizującymi aktualny stan na urządzeniu. Przyciski te mają takie same działanie jak klawiatura na urządzeniu sprzętowym. Po lewej stronie u dołu wyświetla się aktualny status komunikacji z urządzeniem sprzętowym (czerwony - komunikacja nieaktywna, zielony - aktywna). Jeśli komunikacja jest aktywna to aplikacja utrzymuje ciągłą synchronizację z urządzeniem. Jeżeli zostało ono zresetowane to zostanie wysłana do niego aktualna konfiguracja kanałów wybrana w działającej aplikacji. Jeżeli aplikacja zostanie uruchomiona przy już skonfigurowanym urządzeniu to odpowiednie dane zostaną odczytane z urządzenia. Po prawej stronie u dołu dostępne jest menu programu, które zapewnia dostęp do ustawień komunikacji, konfiguracji kanałów i samego programu oraz między innymi pozwala na uruchomienie lub zatrzymanie komunikacji z urządzeniem.Tryby pracy kanałów:
- M0: tryb manualny - umożliwia sterowanie ręczne danego kanału, z poziomu klawiatury lub z poziomu aplikacji.
- M1: tryb czasowy, od A do B - pozwala na zaprogramowanie danego wyjścia w cyklu dobowym. Wyjście będzie aktywne od godziny A do godziny B, każdego dnia. W tym trybie przyciski sterowania ręcznego nie działają.
- M2: tryb cykliczny, praca przez A, przerwa B - wyjście działa w trybie cyklicznym, jest aktywne przez czas A, po czym następuje przerwa B. Oba przedziały czasu można ustawić w granicach od 0 do 34 godziny z precyzją 1 minuty. W tym trybie przyciski sterowania ręcznego pozwalają zmienić stan wyjścia na przeciwny, jednorazowo skracając tym samym czas aktualnie odliczanej przerwy bądź pracy. Ustawienie któregokolwiek z czasów na 0 daje nieskończony odstęp czasu, co oznacza to że wyjście ma jeden stan stabilny (praca monostabilna).
- M3: tryb cykliczny, praca przez A, przerwa B - działa tak samo jak tryb 2, z tym że oba przedziały czasu można ustawić w granicach od 0 do 34 minuty z precyzją 1 sekundy.
Tryby warunków początkowych:
- Automatyczny (Automatic): Po starcie aplikacji jej zachowanie zależy od stanu urządzenia sprzętowego. Jeżeli zostało ono zresetowane to do urządzenia zostanie wysłana ostatnio zapisana konfiguracja, traktowana jednocześnie jako stan początkowy w aplikacji. W innej sytuacji aplikacja odczytuje konfigurację kanałów z urządzenia, traktując ją jako stan początkowy.
- Zawsze wysyłaj ustawienia (Always send configuration): Po starcie aplikacji do urządzenia zawsze wysyłana jest ostatnio zapisana konfiguracja, niezależnie od stanu urządzenia - stan w aplikacji ma priorytet.
- Zawsze odczytuj ustawienia (Always read configuration): Po starcie aplikacji odczytywana jest cała konfiguracja kanałów z urządzenia, niezależnie od jego stanu - konfiguracja w urządzeniu ma priorytet.
Wersje Oprogramowania:
- 0.90 - Wszystko działa poprawnie. Jest to pierwsza wersja która w ogóle zawiera informacje na temat aktualnej wersji :). Aplikacja będzie mogła w przyszłości sprawdzić czy nie ma nowej wersji oprogramowania na stronie i ewentualnie wyświetlić zmiany.
- 0.95 - Dodano możliwość wyboru warunków początkowych.
Załączniki:
Pozostałe: | ||
AB AB AB | Aplikacja MSwitch (wersja wykonywalna, Linux) | 18.2 MB |
AB AB AB | Aplikacja MSwitch (wersja wykonywalna, Windows) | 10.2 MB |
AB AB AB | Aplikacja MSwitch (kod źródłowy, Python 2.7) | 73.4 kB |
Pytania i Komentarze:
comments powered by Disqus
Lipiec 19, 2018
Zasilacz do wzmacniaczy już opisany ...
Więcej …
Czerwiec 20, 2018
Moduł wykonawczy już opisany...
Więcej …
Więcej nowinek …
Zasilacz do wzmacniaczy już opisany ...
Więcej …
Czerwiec 20, 2018
Moduł wykonawczy już opisany...
Więcej …
Więcej nowinek …
Polecane Strony