Jednym z bardziej skomplikowanych obliczeń jest wyznaczanie godzin wschodu i zachodu Słońca w zależności od daty, godziny oraz położenia geograficznego. To ważna informacja, na której możemy opierać wiele codziennych czynności wykonywanych automatycznie bez stosowania czujników jasności. Dla przykładu, możemy w lato zwijać rolety czy żaluzje, otwierać okiennice itp. W LOGO! do określenia momentu wschodu i zachodu Słońca służy blok funkcyjny „Astronomical Clock” pokazany na rysunku 1. Podczas pracy bloku widać wyliczoną godzinę wschodu (TR) oraz zachodu (TS) Słońca, które są podane według czasu lokalnego, czyli z uwzględnieniem strefy czasowej.
Na rysunku 2 pokazano formularz konfiguracji parametrów pracy bloku. Z listy [Location] możemy wybrać jedną z gotowych lokalizacji lub, tak jak to przedstawiono na rysunku 3, wybrać opcję User-defined i samodzielnie ustawić dalsze parametry. Widoczne na rysunku 3 parametry geograficzne wpisane w polach [Longitude] oraz [Lattitude] są łatwe do zapamiętania i odpowiadają w przybliżeniu położeniu odległemu o 25km na południe od Warszawy. Należy je rozumieć w ten sposób: 21 stopni długości geograficznej wschodniej, czyli 21 stopni na wschód od południka zerowego, 52 stopnie szerokości geograficznej północnej, czyli 52 stopnie na północ od równika. Używając mapy papierowej, atlasu samochodowego lub mapy dostępnej w Internecie np. http://maps.google.com, można swoją lokalizację określić bardziej precyzyjnie. Oczywiście, realny wschód Słońca jest jeszcze silnie zależny od ukształtowania pobliskiego terenu. Gdy mieszkamy na okolicznym wzniesieniu, z którego widać odległy horyzont wówczas, obliczenia będą bliższe rzeczywistości. Jeżeli jednak żyjemy w kotlinie górskiej to, dla nas realny wchód będzie później a zachód wcześniej. Z tego powodu producent przewidział dwa pola w formularzu konfiguracyjnym: [Sunrise offset] aby można było doprecyzować wynik obliczeń do realnego momentu wschodu Słońca oraz, [Sunset offset] do doprecyzowania chwili zachodu Słońca. Oba pola wprowadzają korektę do wyliczonych wartości a, ich maksymalny zakres poprawki wynosi po 59 minut w każdą stronę. Przydatną funkcjonalnością w naszych urządzeniach będzie możliwość pokazania tych wyliczonych godzin na ekranie sterownika. Na wyjściu bloku „Astronomical Clock” otrzymujemy sygnał logiczny 1 od godziny (TR) do godziny (TS). Czyli podczas dnia.
Nasze życie codzienne toczy się nie tylko w cyklu dobowym ale również według cyklu tygodniowego. Najczęściej od poniedziałku do piątku mamy sporo obowiązków i wstajemy rano a w sobotę i niedzielę mamy wolne i pragniemy odpocząć po całym tygodniu pracy bądź nauki.
Blok funkcyjny „Weekly Timer”, którego symbol pokazano na rysunku 5 znakomicie pomoże nam w zautomatyzowaniu czynności realizowanych w określone dni tygodnia. Można też powiedzieć, że ten blok przyda się, aby sterownik nie realizował określonych czynności np. w sobotę i niedzielę. Czyli wschód Słońca nie odsłoni nam rano żaluzji w sobotę i niedzielę, dzięki czemu będziemy mogli dłużej wypoczywać. Zrobi to, na przykład, 3 godziny później. Blok ten działa podobnie do „Astronomical Clock”, czyli podaje na wyjście logiczną „1”, gdy są spełnione określone warunki.
Na rysunku 5 pokazano formularz warunków, które aktywują wyjście bloku. Upraszczając, zaznaczamy tylko te dni tygodnia, w które chcemy coś wykonać i ustawiamy godzinę. W jednym bloku funkcyjnym mamy 3 harmonogramy tygodniowe. Każdy ma możliwość zdefiniowania niezależnie godziny włączenia i wyłączenia wyjścia z bloku. Może się wydawać to dziwnym ale, dzięki temu możemy włączyć wyjście z bloku w środę o 09:00 i wyłączyć w piątek o 12:30. Aby zrealizować takie zadanie, będziemy użyjemy dwóch harmonogramów w jednym bloku funkcyjnym. Blok funkcyjny „Weekly Timer” idealnie pasuje nam do uruchamiania porannych zadań, na przykład, przygotowania herbaty.
Poranna, zimowa herbatka jest inna niż wiosenna. Tak właśnie powinien działać nasz automat – zadbać, aby zaparzał nam inne herbatki zimą, a inne wiosną. Do tego celu użyjemy bloku „Yearly Timer”, którego zadania są podobne do „Astronomical Clock”, tylko w szerszym zakresie czasu. Yearly Timer jako parametry może przyjmować lata pomiędzy którymi ma działać oraz dni i miesiące graniczne. Dzięki temu możemy włączyć jakąś funkcję w dniu 22 września i wyłączyć ją w dniu 20 marca w kolejnym roku.
Niech się parzy
A zatem, mamy już możliwość pełnej kontroli tego, co i kiedy zadziała. Blok funkcyjny „Yearly Timer” wskaże nam rodzaj herbaty. „Weekly Timer” wskaże dni i godziny, w których należy parzyć herbatę. „Astronomical Clock” będzie odpowiedzialny za przygotowanie kuchni i naszej sypialni do spokojnej pobudki i porannej herbaty. Zatem zbudujmy nasz układ sterowania.
Bezpieczeństwo to podstawa
Nasze urządzenie jest już dosyć rozbudowane, potrafi wykonywać więcej niż jedna czynność w tym samym czasie a, niektóre czynności wykonuje w odpowiedniej kolejności. Może się zdarzyć, że zabraknie kubków, nie naleje się do końca wrzątek, zabraknie herbaty itd. Może się również zdarzyć, że pęknie szklanka podczas nalewania. Dlatego w naszym urządzeniu trzeba zadbać o bezpieczeństwo. W zaprezentowanym układzie można zauważyć, że sygnał odczytany z wagi jest przekazywany do dwóch przełączników analogowych, z których jeden – B015, ma wyjście skierowane do B029, a będące bramką sygnalizującą obecność szklanki. A zatem, jeśli szklanka się zbije, to większa część spadnie poza wagę, a ewentualnie nalany wrzątek się wyleje, co, spowoduje obniżenie ciężary poniżej progu [Off] w bloku B015, a tym samym wysłanie do reszty układu sygnału o braku szklanki. Sygnał o braku szklanki jest w naszym układzie traktowany jako krytyczny i służy do kasowania wszystkich istotnych bloków odpowiedzialnych za sterowanie wyjściami realizującymi określone funkcje. W tym przypadku kasowane są wszystkie układy czasowe sterujące podawaniem wrzątku, podawaniem saszetek oraz cukru.
Waga tensometryczna w naszym układzie stała się jednocześnie źródłem informacji o postępowaniu procesu przygotowania herbaty. Jeśli będziemy dysponowali wystarczająco czułymi tensometrami oraz odpowiednio dobranym układem mostka tensometrycznego wówczas, możemy nawet zrezygnować z czujnika saszetki. Badając zmianę wagi wykryjemy moment wrzucenia saszetki. Zasypanie cukru również możemy oprzeć nie o czas, lecz o zmianę wagi. Nasz układ możemy rozbudować o sygnalizator gotowości produktu lub o informacje dotyczące zapotrzebowania na cukier czy herbatę.
Teraz pozostaje nam delektowanie się „automatyczną herbatką” podczas, gdy nasze poprzednio zbudowane układy automatyki dbają, o oszczędzanie energii elektrycznej i bezpieczeństwo. Pozostaje jedno pytanie: jak się ubrać do wyjścia z domu? Przydałaby się nam stacja pogodowa! Mamy LOGO! zatem... już wiem, co zbudujemy następnym razem!
Arkadiusz Wernicki