Rozpoczęcie pracy z GPIO na Raspberry Pi

  • William Charles
  • 0
  • 4104
  • 381
Reklama

Jeśli uważasz, że Arduino było fajne, poczekaj, aż dostaniesz Raspberry Pi - te rzeczy są niesamowite. Oprócz tego, że są w pełni funkcjonalnym komputerem, mają również do wyboru Ogólne wejście / wyjście szpilki. Podobnie jak Arduino, możemy ich używać do tworzenia projektów elektronicznych - i zaskakująco łatwo jest zacząć.

Dziś podłączymy przekaźnik i użyjemy go do włączenia diody LED, ale równie łatwo można włączyć lampę.

To wprowadzenie służy jako pierwsza część większego projektu automatyki domowej. Christian położył już podwaliny pod rozpoczęcie korzystania z Pi, więc nie powtórzę tutaj pierwszych kroków pobierania systemu operacyjnego lub podłączania karty SD - zakładam, że masz działający system Raspian już skonfigurowane.

Ostrzeżenie: Chociaż Raspberry Pi mogą być używane podobnie jak Arduino, potrzeba nieco więcej uwagi. Piny Pi działają w 3.3v, podczas gdy Arduino używa 5v. Chociaż możliwe jest złamanie Arduino, o wiele łatwiej jest złamać Pi, ponieważ piny łączą się bezpośrednio z pokładowym układem - wysyłanie 5 V w dół może go usmażyć.

Dlatego bądź bardzo ostrożny przy próbach replikacji projektów Arduino na swoim Pi - postępuj zgodnie z tutorialem Pi lub upewnij się, że dobrze rozumiesz podstawową elektronikę.

Wymagania:

  • Tranzystor NPN, taki jak P2N2222A
  • Rezystor 1k
  • Przekaźnik; Używam 4-przekaźnikowego modułu 5 V, który ma wbudowane dodatkowe obwody ochronne (więc nie ma potrzeby stosowania dodatkowych diod)
  • LED i rezystor 220 omów do testowania
  • Kabel zrywalny

Kabel zrywalny (“Zestaw Cobbler”)

Piny GPIO znajdują się z boku Pi, obok gniazda wyjściowego wideo RCA.

Chociaż możesz technicznie podłączyć do nich niektóre żeńskie kable rozruchowe, nie są one oznakowane w żaden użyteczny sposób i dlatego istnieje większe prawdopodobieństwo, że coś zepsujesz. Zamiast tego zdobądź kabel typu breakout, taki jak ten od Adafruit, lub jeden z wielu tańszych klonów w serwisie eBay. Być może będziesz musiał to przylutować, ponieważ będzie w formie zestawu.

Chociaż strona płyty ma wycięcie wskazujące prawidłowe ułożenie kabla, strona Pi nie. Upewnij się, że piny 3v i 5v w odległym rogu Pi są w jednej linii z odpowiednimi pinami na płycie. Oczywiście, jeśli kupiłeś skrzynkę, która nie ujawnia nagłówka GPIO, będziesz musiał biec z nagim Pi lub wyciąć dziurę.

Alternatywnie, możesz uzyskać pełną płytkę, która umieszcza się na twoim Pi i zwykle zawiera szereg użytecznych składników.

Obwód podstawowy

Skonfiguruj obwód w sposób opisany poniżej. Pominąłem obwód przekaźnika, ponieważ będzie się to różnić. Użyj NIE (normalnie zamknięty) i COM zaciski przekaźnika do diody LED lub innego urządzenia.

Użyj pinu 4 z Raspberry Pi. Na mojej płycie Breakout jest oznaczony + GPCLK0; niezależnie od tego, jest to czwarty pin liczący od 3V3.

Testowanie z linii poleceń

W poniższych przykładach zakładam, że jesteś zalogowany przez SSH lub w inny sposób jako użytkownik root. Jeśli nie, będziesz musiał poprzedzić niektóre polecenia sudo w celu podniesienia uprawnień.

Najpierw musimy zainstalować WiringPi.

git clone git: //git.drogon.net/wiringPi cd wiringPi ./build

Zakładając, że wszystko poszło dobrze, powinniśmy być teraz w stanie bezpośrednio kontrolować GPIO z wiersza poleceń w następujący sposób:

Tryb gpio -g 4 wyjścia gpio -g zapis 4 4

Pierwsze polecenie jest podobne do funkcji konfiguracji Arduino, w której mówimy, że Pi używa pin 4 jako wyjścia. Następne polecenie zapisuje wartość 1 na pinie, co powinno wyzwolić tranzystor, aktywować przekaźnik, zamknąć obwód diody LED i włączyć.

Niesamowite. Jeśli nie, wróć i sprawdź okablowanie. Czy przekaźnik kliknie?

Pyton

Chociaż Python nie jest jedynym sposobem komunikacji z pinami GPIO, jest ogólnie uważany za najłatwiejszy i jest najczęściej spotykany w istniejących projektach. W przeciwieństwie do C, Python jest stosunkowo łatwy do pobrania (oto 5 stron do nauki Python 5 najlepszych stron do nauki programowania w Pythonie 5 najlepszych stron do nauki programowania w Pythonie Chcesz nauczyć się programowania w języku Python? Oto najlepsze sposoby nauki języka Python online, z których wiele jest całkowicie darmowych.).

Rozpocznij od zainstalowania następujących rozszerzeń języka Python:

apt-get install python-dev apt-get install python-rpi.gpio

Teraz utwórz nowy plik o nazwie test.py. jeśli używasz wiersza polecenia, wpisz

nano test.py

Wklej lub wpisz następujące informacje (także na tej pastebinie):

import RPi.GPIO jako czas importu GPIO GPIO.setmode (GPIO.BCM) GPIO.setup (4, GPIO.OUT) dla xw zakresie (0,10): time.sleep (5) GPIO.output (4,1) time.sleep (5) GPIO.output (4,0)

Jest to bardzo prosty skrypt w języku Python, który włącza diodę LED (lub cokolwiek, co podłączyłeś do przekaźnika) na 5 sekund, a następnie gaśnie na 5 sekund, 10 razy. Powinieneś być w stanie zrozumieć większość kodu. The GPIO.setmode linia jest po prostu używana do wskazania schematu numeracji pinów, którego będziemy używać.

To jest to! Aby uruchomić kod, wpisz:

python test.py

W przyszłym tygodniu będziemy trochę opracowywać konfigurację i robić ekscytujące rzeczy, takie jak dodawanie sterowania głosowego. Jeśli zamierzasz dodać elementy elektryczne wysokiego napięcia do obwodu przekaźnika, musisz mieć pewność, że używasz odpowiednio dobranego przekaźnika na przewodzie pod napięciem, i pamiętajcie o zamknięciu wszystkiego, aby było z dala od wścibskich palców niemowląt lub mamy. Ale naprawdę, bądź bezpieczny.

W polu poniżej umieść swoje pytania, komentarze, opinie i haikus - ale pamiętaj, że ocenię cię pod względem gramatyki.




Jeszcze bez komentarzy

O nowoczesnej technologii, prostej i niedrogiej.
Twój przewodnik w świecie nowoczesnych technologii. Dowiedz się, jak korzystać z technologii i gadżetów, które nas otaczają każdego dnia i dowiedz się, jak odkrywać ciekawe rzeczy w Internecie.