Podłączenie modułu przekaźnika w systemie Domoticz

wpis w: Domoticz | 16

W dzisiejszym wpisie opiszę jak podłączyć do Raspberry moduł przekaźnika do sterowania zasilaniem. Może on posłużyć do sterowania listwami, lampkami oraz praktycznie wszystkimi urządzeniami podłączanymi do prądu.

W moim przypadku będę chciał sterować zwykłą lampką nocną.

Sam moduł przekaźnika możemy kupić min. w sklepie Electropark.

Moduł 1-przekaźnika 5V
Moduł 1-przekaźnika 5V

Dane techniczne:

  • Liczba przekaźników: 1
  • Napięcie zasilania przekaźnika: 5V DC
  • Max. obciążenie styków przekaźnika:
    • 10A/230V AC
    • 10A/30V DC
  • Diody LED sygnalizujące stan załączenia przekaźnika
  • Dioda LED sygnalizująca zasilanie modułu
  • Wymiary: 43x24mm

W moim przykładzie zastosowałem moduł z jednym przekaźnikiem. Można zastosować moduły wieloprzekaźnikowe (największy jaki widziałem to 16). Dzięki takiemu przekaźnikowi będziecie mogli sterować aż 16 urządzeniami.

Moduł 16- przekaźników
Moduł 16- przekaźników

 

Schemat podłączenia przekaźnika do Raspberry Pi:

VCC – zasilanie 3V/5V w Raspberry Pi

GND – GND w Raspberry Pi

IN – dowolny Pin w Raspberry Pi

Na poniższym zdjęciu na dole przełącznika widać 3 śruby gdzie będziemy podłączać kable z Naszej nocnej lampki.

Będziemy podłączać dwa kable a miejsca są trzy…Dlaczego?

Na zdjęciu widać jakby dwa obwody (zamknięty po prawej i otwarty po lewej). Jeżeli chcemy by Nasza lampka była normalnie zapalona gdy włączymy Nasze Raspberry Pi podłączamy kable do otworu środkowego i do otworu z prawej strony (tam gdzie widać obwód zamknięty). W innym przypadku podłączamy jeden z kabli do otworu środkowego a drugi do otworu ze strony lewej.

Moduł przekaźnika
Moduł przekaźnika

 

Aby podłączyć Naszą nocną lampkę należy delikatnie naciąć izolację lampki w miejscu gdzie instalowany będzie Nasz przekaźnik. W izolacji standardowej lampki nocnej znajdować się będą 2 kable. Przecinamy jeden z nich i zarabiamy końcówki, które następnie podłączamy do Naszego przełącznika w sposób opisany powyżej. Na koniec podłączamy Naszą lampkę do prądu i włączamy Raspberry Pi. (żeby nie niszczyć kabla lampki można to samo zrobić np. z listwą antyprzepięciową lub zwykłym przedłużaczem).

Przedłużacz
Przedłużacz

 

Gdy wszystko mamy już podłączony logujemy się przez SSH do Naszego Raspberry.

Tworzymy nowy plik poprzez komendę:

  • sudo nano switchon.py

W Naszym nowym pliku wklejamy poniższy skrypt:

W miejscu XX wpisujemy nr PINu w Raspberry do jakiego podłączyliśmy Nasz przekaźnik.
Aby utworzyć plik który będzie wyłączał Nasz przekaźnik powtarzamy czynności tylko zmieniamy nazwę pliku na np. „switchoff.py” i w przedostatniej linijce Naszego skryptu wpisujemy cyfrę 0 zamiast 1.
Zapisujemy wszystko wciskając kombinację klawiszy ctrl+x.
Nadajemy plikom odpowiednie uprawnienia poprzez komendę:

  • sudo chmod +x switchon.py
  • sudo chmod +x switchoff.py

Sprawdzamy czy wszystko działa poprawnie poprzez wpisanie komend:

  • sudo python switchon.py
  • sudo python switchoff.py

Jeżeli wszystko działa poprawnie za pomocą tych dwóch komend powinniśmy sterować zasilaniem Naszej lampki. Jeżeli nie będzie żadnej reakcji sprawdźcie poprawność PINu GPIO (różne modele Raspberry mają różne numery).

Aby wszystko działało w Naszym systemie Domoticz musimy utworzyć wirtualny przełącznik (On/Off) o czym pisałem w poprzednich wpisach.

Gdy już mamy utworzony Nasz wirtualny przełącznik wchodzimy w zakładkę „Przełączniki” i wybieramy przycisk „Edycja”.

Jeżeli utworzyliśmy Nasze pliki w głównym katalogu Raspberry uzupełniamy pola „Włącz/Wyłącz akcję” jak na poniższym zdjęciu. Jeżeli utworzyliście pliki w innym miejscu należy podać dokładną lokalizację nowo utworzonych plików.

 

lampka

 

Naciskamy przycisk „Zapisz”.

Od tego momentu możemy sterować zasilaniem Naszej lampki bezpośrednio z systemu Domoticz.

16 Odpowiedzi

  1. hej
    napisz proszę jak dodać do tego jeszcze „włącznik impulsowy (dzwonkowy) zwykły push button”

    że jak go nacisnę raz to zapali lampkę jak drugi raz to zgasi

  2. Podpinam sie pod pytanie kolegi Jak dodac do tego jeszcze włącznik dzwonkowy??

  3. Łukasz Kostrzewa

    Witam Serdecznie

    Wydaje mi się, że należałoby między GND a PIN IN wpiąć tzw. Push Button (http://razzpisampler.oreilly.com/ch07.html). Na tej stronie też jest kod:

    import RPi.GPIO as GPIO
    import time
    GPIO.setmode(GPIO.BCM)
    GPIO.setup(XX, GPIO.IN, pull_up_down=GPIO.PUD_UP)

    while True:
    input_state = GPIO.input(XX)
    if input_state == False:
    GPIO.output(XX,1)
    time.sleep(0.2)

    Nie będzie to jednak działało tak jak powinno bo przykładowa lampka będzie się świeciła tylko wtedy gdy przycisk będzie wciśnięty.

    Niestety nie znam się na programowaniu. Postaram się znaleźć jakieś rozwiązanie i dam znać.

    Pozdrawiam

  4. mi się udało
    należy podpiąć przełącznik do pinu ustawionego na in

    i w zdarzeniach zbudować takie
    https://goo.gl/photos/7pEwPf4YLu2unDJR8
    https://goo.gl/photos/8tJiBmX7K5mC8yVn7

  5. a czy mozna by poprosic jak wyglada kod do tego ?

    • Łukasz Kostrzewa

      Witam Serdecznie
      Jet we wpisie przecież:

      #!/usr/bin/python
       
      import RPi.GPIO as GPIO
      GPIO.setmode(GPIO.BOARD)
      GPIO.setup(XX, GPIO.OUT)
      GPIO.output(XX,1)
      GPIO.cleanup()

      Pozdrawiam i życzę powodzenia

  6. pomocy… zrobiłem zgodnie z tym artykułem i utknąłem. po komendzie sudo python switchon.py nic się nie dzieje. zmieniałem piny, kombinowałem i jak wpisywałem błędne piny to dostawałem o tym informacje. wszystko sprawdziłem i wygląda na to, że jest niby ok w kwestii podłączenia. Wszystko jednak robiłem zgodnie z tym artykułem i nie sprawdzałem poprzednich artykułów. czy muszę zainstalować jakieś dodatki, biblioteki etc. do tego? nie istalowałem nic do obsługi gpio itp

    • Łukasz Kostrzewa

      Witam Serdecznie

      Hmmm… a co się Panu wyświetla jak odpala Pan switchon.py? Wyskakuje jakiś błąd?
      Może warto zainstalować WiringPi:
      1. sudo apt-get install git-core
      2. sudo apt-get update
      3. sudo apt-get upgrade
      4. git clone git://git.drogon.net/wiringPi
      5. cd ~/wiringPi
      6. git pull origin
      7. ./build

      Proszę spróbować wpisać te komendy i sprawdzić raz jeszcze.
      PRoszę się również upewnić, że wpisał Pan poprawny numer Pinu – tu jest opisane czym różni się GPIO.BOARD i GPIO.BCM (https://raspberrypi.stackexchange.com/questions/12966/what-is-the-difference-between-board-and-bcm-for-gpio-pin-numbering)

      Może Pan w konsoli po zainstalowaniu wiringPi wpisać:
      gpio readall – tam będzie Pan widział dokładny rozkład Pinów w Pana raspberry.

      Powodzenia i proszę dać znać czy się udało

  7. Witam, mam problem napisałem pliki switchon.py i switchoff.py i wszystko działa z poziomu wiersza poleceń po wpisaniu sudo python switchon.py wystawia mi 1 na porcie a po wpisaniu sudo python switchoff.py wystawia 0. Sprawdzam komendą Gpio readall. Niestety po wytworzeniu przełącznika jak w opisie teoretycznie wszystko z poziomu Domoticza jest poprawnie ale nie ma reakcji, nie zmienia wartości. Może jeszcze coś trzeba skonfigurować aby Domoticz działał? Mam podłączone czujniki DS18B20 i temperaturę w domoticzu widzi mi poprawnie. Prośba o sugestie co może być nie tak?

    • Łukasz Kostrzewa

      Witam Serdecznie
      A ma Pan wpisaną odpowiednią ścieżkę do pliku w Edycji Przełącznika w Domoticz?
      U mnie to script:///home/pi/switchon.py ale u Pana może być inna. Ma Pan ten plik w głównym katalogu raspberry czy może w jakimś innym?
      Proszę to sprawdzić.
      Pozdrawiam

      • Tak ścieżka jest odpowiednia pliki są w katalogu /home/pi.

        • Łukasz Kostrzewa

          Niestety nie mam pomysłu co może być przyczyną?
          Rozumiem, że nadał Pan uprawnienia poprzez sudo chmod +x ?
          Po wpisaniu sudo python switchon.py wyświetla się jakiś komunikat (błąd)?
          Pozdrawiam

          • Tomek

            Odpowiadając na pytanie uprawnienia były nadane. Po wydaniu komendy sudo python switchon.py nie wyświetlał komunikatów ale wsytawiał 1 na wyjście sprawdzałem komendą Gpio readall. Zainstalowałem od nowa raspbiana w wersji lite i zrobiłem wszystko po koleji jak Pan napisał i zadziałało :-). Wcześniej miałem wersję desktop i może w tym był jakiś problem.
            P.s.
            W poradzie dotyczącej instalacji warto by było dopisać aby na karcie SD tworzyć katalog SSD bo bez tego nie da się połączyć z zewnątrz poprzez terminal – jest to opisane w komentarzach do tej instrukcji.

          • Łukasz Kostrzewa

            Witam Serdecznie

            Super, że się udało.

            Jeżeli chodzi o utworzenie katalogu SSD…rozumiem, że chodziło o SSH?
            I faktycznie w nowym systemie jest to wymagane. Musiałem tak zrobić aby uruchomić Raspberry Pi Zero W.
            Jak ja rok temu zabierałem się za instalację Domoticza na raspberry taka procedura nie była wymagana.
            W wolnej chwili postaram się dopisać tą informację w odpowiednim poście.
            Pozdrawiam

          • Oczywiście SSH. Pozdrawiam

Zostaw Komentarz

*