Używam tych przedmiotów:
- Odbiorniki ON-OFF do sterowania moimi światłami (zwykle umieszczasz urządzenie w walloutlet lub zamiast walloutlet). Pracują w paśmie 433 MHz (ISM).
Po wyjęciu z pudełka masz pilota, który wysyła sygnał do urządzenia odbiorczego i włącza go lub wyłącza.
W moim przypadku stworzyłem tę sytuację:
- Utworzono witrynę HTML na moim Raspberry Pi (
/switch.html
)
- Dzwonię na tę stronę w moim smartfonie
- Na stronie znajdują się cztery przyciski (steruję czterema urządzeniami / lampkami)
- Kiedy klikam przycisk, asynchronicznie uruchamia wywołanie do
/switch.php
(.php jest na Raspberry Pi)
switch.php
Wywołuje switch.py
program, który steruje nadawcę 433 MHz (patrz niżej)
- Nadajnik 433 MHz robi to samo, co gotowy pilot.
To jest nadawca, czyli zamiennik standardowego pilota:
Superregeneracja bezprzewodowego modułu nadajnika 433 MHz dla Arduino
Stworzyłem również scenariusz do użytku poza domem.
Nie chciałem podłączać mojego Raspberry Pi przez mój homerouter bezpośrednio do Internetu, więc zbudowałem sobie inną stronę internetową (w mojej własnej domenie), która nie kontroluje bezpośrednio Raspberry Pi, ale wysyła wiadomość e-mail na adres (znany tylko z ja) adres e-mail ( Gmail ).
Raspberry Pi sprawdza to konto e-mail co 10 minut, aby sprawdzić, czy jest jakiś e-mail. W tym e-mailu mówię na przykład A włączone lub B wyłączone.
Więc kiedy wrócimy do domu późno i światła są już wyłączone, nawigujemy do strony na moim telefonie komórkowym (planujemy uczynić ją aplikacją na Androida), kliknij przycisk, strona zostanie opublikowana, a na serwerze zostanie wysłany e-mail, i w ciągu następnych 0-10 minut Raspberry Pi sprawdza pocztę, widzi cztery nowe e-maile (A włączone, B włączone, C włączone i D włączone) i włącza światła.
Jak zacząć
Tak więc, aby zacząć, to są rzeczy, które zrobiłem, aby wszystko działało. W moim przypadku zaprogramowałem sterowanie nadajnikiem 433 MHz w Pythonie (który jest łatwym językiem, jeśli już wiesz, jak programować).
Najpierw zainstaluj rpi.gpio
bibliotekę.
Ta biblioteka służy do sterowania małymi pinami na twoim Raspberry Pi ze skryptu Python. Zobacz Instalowanie biblioteki Python RPi.GPIO .
Następnie możesz opcjonalnie przeczytać artykuł Samouczek: jak używać Raspberry Pi jak Arduino , chodzi o to, co możesz zrobić z rpi.gpio
biblioteką, na przykład migające diody LED .
Jednak włączanie światła Elro nie jest obowiązkowe.
Następnie dostajesz niesamowity kod dla Elro dowodzonego przez HeikoHeiko, pod adresem http://pastebin.com/aRipYrZ6 . Wklej ten kod w pliku o nazwie „ switchelro.py
”.
Następnie zmień ciąg w linii 94 na własne ustawienia zworek (tak jak ustawiłeś w pilocie i urządzeniu walloutlet. Sprawdź, czy połączenie urządzenia zdalnego walloutlet działa przed wypróbowaniem go z Raspberry Pi. Jeśli to nie działa ze standardowymi komponentami prawdopodobnie również zawiedzie z Raspberry Pi).
Następnie zmieniasz numer PIN, do którego jest podłączony nadawca w linii 97.
Numer pinu można uzyskać z niskopoziomowych urządzeń peryferyjnych RPi oraz w pliku: RPi P1 header.png .
Musisz użyć liczby 1..26 (czarny obraz), a nie GPIO34, GPIO24 itp. (Zielony obraz).
Następnie wpisz to w wierszu polecenia:
sudo python switchelro.py 2 1
co oznacza „włącz B” (zgodnie z tym schematem: A = 1, B = 2, C = 4, D = 8, E = 16
dla pierwszego numeru, a 1 = włączony, 0 = wyłączony dla drugiego).
Zmieniłem repeat = 10
na line 30
celu repeat = 20
na początku (nie pamiętam dlaczego) i że działa. Nigdy nie próbowałem tego z ustawieniem „10”.