Panowie,
podpiąłem pierwszy w życiu moduł do Rpi 3+ i utknąłem...
Chodzi o taki:
Teoretycznie ciężko pomylić kabelki (5V-VCC, GND=GND i PIN=IN), więc chyba zrobiłem dobrze (3 razy sprawdziłem i zmieniłem na inny PIN). Nie wiem, czy to normalne, ale po uruchomieniu (w sensie podłączenia do RPi) świeci mi się ta dioda D1 na przekaźniku. Po odpaleniu skryptu D1 gaśnie, ale przekaźnik nie przełącza. Po skrypcie wygaszającym wspomniane D1 już się nie zapala.
Czy coś może robię źle czy coś raczej z przekaźnikiem?
[EDIT]
Skrypt działa poprawnie, bo widzę efekt w gpio readall
i robiłem według tej instrukcji:
@gerwazy niezły początek , ale nie martw się , weź odłącz wejście IN od GPIO w RBPI i żeby sprawdzić czy przekaźnik jest ok przy podłączonym zasilaniu 5V zewrzyj kawałkiem przewodu lub wkrętakiem GND z IN , jak przekaźnik klepnie , a pewnie tak się stanie to znaczy że musisz do tego modułu przekaźnika dołożyć jeden tranzystor NPN i jeden rezystor 500ohm - 1 k .
Rysować schemat czy znajdziesz sobie w necie ?
Wielkie dzięki dobry człowieku!!! Na krótko zadziałało. Gorzej z tym wyszukaniem schematu, bo wyników znalezisk nie jestem pewien. Jeśli mógłbyś, to prosiłbym Cię o ten schemacik lub opis.
Swoją drogą dlaczego o tym nie piszą w żadnym tutorialu "przekaźnik z RPi"? Czytałem / oglądałem kilka, zarówno naszych jak i zagranicznych i zawsze podłączenie 1:1.
[EDIT]
Znalazłem coś takiego
Tak pechowo trafiłeś , że kupiłeś przekaźnik sterowany stanem niskim a GPIO w RBPI w stanie aktywnym podaje 3,3V czyli stan wysoki . Schemat który znalazłeś jest ok , ale tobie równoległa dioda przy cewce nie jest potrzebna bo masz optoizolację
Podłącz tak jak na moich bazgrołach i będzie hulać
Dzięki bardzo! A miał być taki szybki sukces z tym przekaźnikiem i uznanie w oczach rodzinki, a tu klops... Dodatkowo nie mam tranzystora, więc już dziś czarować nie będę.
Niniejszym obrażam się na Botland, bo specjalnie u nich wybrałem/kupiłem i na ich załączonej instrukcji nic o tym nie ma.
Od rana pogłębiam temat, bo nie daje mi spokoju czemu innym działa a mi akurat nie. Dzięki @isom, że mnie natchnąłeś z tym sterowanie stanem niskim a wysokim.
Po konsultacjach z Dr. Google okazało się, że w RPi idzie tym sterować. Użyty przeze mnie skrypt nie był do końca/zawsze poprawny. Nie określał stanu początkowego:
GPIO.setup(rel,GPIO.OUT, initial=GPIO.HIGH)
Po zastosowaniu się do tych wskazówek zadziałało bez problemów:
https://starter-kit.nettigo.pl/2017/03/rpi-podstawy-sterowanie-gpio-przekaznikami/
@gerwazy dobrze, że uparty jesteś 🙂 przy okazji jednego przekaźnika poznałeś dwie różne możliwości wysterowania go, a gdybym napisał na początku suchą regułkę co wklepać , bez zrozumienia zagadnienia, to byś dalej żył w nieświadomości.
Ten schemat i tak kiedyś się przyda , bo jak będziesz chciał więcej przekaźników to zabraknie prądu z samego RBPI a wtedy podłączysz sobie zewnętrzny zasilacz do przekaźników a GPIO w RBPI odseparujesz od zasilacza tranzystorami , lub transoptorami. Powodzenia.
Za późno tu zajrzałem, ale tak na przyszłość to dla RPi, ESP82xx, itp. proponuję ograniczać się wyłącznie do rezystorów 4,7k, bo taki tranzystor BC sterujący transoptorem już przy prądzie bazy w okolicy 0,5mA jest w stanie nasycenia i więcej nam nie potrzeba. Schematy są oczywiście na 1k ale to trzeba czytać jako dowolny tranzystor sterujący dużym obciążeniem. Inżyniersko przyjmuje się, że tranzystorowi pracującemu jako klucz trzeba zapewnić prąd bazy jako 1/20 prądu kolektora. Czyli jak tranzystor ma sterować transoptorem, to prąd kolektora wystarczy 10mA, czyli bazy około 0,5mA. Przy dużym przekaźniku, który wymaga powiedzmy 60mA trzeba 3 mA prądu bazy i wtedy ten 1k jest OK. Malutkie przekaźniki pracujące w naszej automatyce domowej zadowalają się prądami rzędu 5-20mA, dlatego taki rezystor 4,7k na bazie jest wystarczający.
Dlaczego o tym piszę? Otóż jeśli takie RPI ma sterować kilkoma przekaźnikami, to zwykle na dłuższe okresy czasu niż tylko klik-klik. Wtedy prąd bazy tranzystora płynie ciągle przez GPIO podgrzewając nasze RPI. Przy rezystorze 1k powoduje to około 10mW do wytracenia z RPI, a przy 4,7 tylko 2mW. Moje RPi3 pobiera 1W (zwykle się nudzi - obciążenie średnie około 1-2% mocy procesora) czyli taki jeden przekaźnik zwiększa potrzebę rozproszenia ciepła nawet o 1%
Ostatni dzień na chorobowym, więc się nudzę i zgłębiam temat. Trochę mi zajęło zanim ostatecznie dopasowałem skrypty pod Domitcza. Jak już googlowałem z dodatkowym hasłem "initial" zobaczyłem, że nie jestem osamotniony. Coś się musiało ostatnio zmienić w RPi (?).
Może się komuś przyda:
1. Do włączania
#!/usr/bin/python
PIN_przelacznik=21
import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)
GPIO.setup(PIN_przelacznik,GPIO.OUT, initial=GPIO.HIGH)
GPIO.output(PIN_przelacznik,GPIO.LOW)
2. Do wyłączania
#!/usr/bin/python
PIN_przelacznik=21
import RPi.GPIO as GPIO
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BCM)
GPIO.setup(PIN_przelacznik,GPIO.OUT)
GPIO.output(PIN_przelacznik,GPIO.HIGH)
GPIO.cleanup(PIN_przelacznik)
Nie wiem czemu działa mi tylko z GPIO.setmode(GPIO.BCM) a z BOARD już nie. Byłem zbyt głodny sukcesu, więc pozostanie to na razie tajemnicą.
Faktycznie planuję podłączyć sporo takowych, więc schemat @isom się przyda. Niestety pierwsza część postu @_MarSs_ mnie na razie przerasta, ale z drugą poszło lepiej i przyjmuję za pewnik żeby dać 4,7.