Kiedy słyszysz termin „Raspberry Pi”, brzmi to jak jakiś owoc lub przynajmniej moduł jakiegoś losowego języka programowania. Ale nie, jestem tutaj, aby udowodnić, że się mylisz. Zobaczmy więc, czym dokładnie jest Pi i jak zaangażowany jest w to nasz ulubiony python.

Co to jest Raspberry Pi?

Raspberry Pi to jednokartowy mikrokomputer wielkości karty kredytowej. Tak wygląda Raspberry Pi:

Raspberry Pi jest oparty na chipie Broadcom BCM2835. Oryginalny układ to układ ARM z procesorem 700 MHz i procesorem graficznym VideoCore IV z 256 MB pamięci RAM. Ale to było kilka lat temu. Później zostały wydane wersje B i B +, które miały 512 MB pamięci RAM. Najnowszy model Raspberry PI 2 to czterordzeniowy procesor ARM Cortex-A7 900 MHz, 1 GB pamięci RAM, 4 porty USB, 40 pinów GPIO, pełny port HDMI, 1 port Ethernet, połączone gniazdo audio 3, 5 mm i kompozyt wideo, Interfejs aparatu (CSI), interfejs wyświetlacza (DSI), gniazdo kart Micro SD obsługujące do 64 GB oraz rdzeń graficzny VideoCore IV 3D. Brzmi interesująco? Pozwól, że powiem ci coś więcej.

Raspberry Pi to tak naprawdę komputer kieszonkowy prawie równy rozmiarowi talii kart; a ponieważ ma procesor ARM Cortex-A7, może obsługiwać pełną gamę dystrybucji ARM GNU / Linux, w tym Snappy Ubuntu Core, a także Microsoft Windows 10.

Teraz wystarczy już część wstępna, zobaczmy, jaka jest rzeczywista aplikacja tego mikrokomputera.

Wykorzystanie w prawdziwym świecie

Oto niektóre z najbardziej niesamowitych projektów, które widziałem do tej pory. Zanim przejdę do kwestii przydatności Pythona w Raspberry, przyjrzyjmy się tym projektom (podam tylko nazwy projektów. Przeszukaj cały projekt na github lub Google, aby uzyskać więcej informacji):

1. Tworzenie tabletu z systemem Linux:

Tak, dobrze to przeczytałeś. Możesz zrobić z siebie tablet r prosty RaspPi. Wszystko czego potrzebujesz to wlutować prosty 10-calowy ekran dotykowy, przenośną ładowarkę 10000 mAh, moduł kamery oraz adapter Wi-Fi i czujnik podczerwieni. Prawdopodobnie możesz również chcieć zbudować skrzynię, którą sugeruję zrobić z Balsa Wood. Powodem jest to, że jest mocny, lekki i łatwy do wymiany. Jest wielu ludzi, którzy już zbudowali tę niesamowitą maszynę. Sprawdź je.

2. Przejęcie sieci Pi:

Czy widziałeś słynny serial telewizyjny Mr. Robot? Jeśli nie, to na pewno musisz to sprawdzić. To jest niesamowicie niesamowite. Jeśli jesteś maniakiem komputerowym, ta seria jest dokładną repliką tego, co hakerzy robią w prawdziwym życiu. Ale nie jestem tu, by promować jakąkolwiek serię. Wracając do naszego tematu, jeśli widziałeś serial, to wiesz o czym mówię.

Poza tym dokładnie tak jest, że Pi jest zainstalowany z wersją ARM Kali Linux i dołączony jest do niego Adapter. Ten, który działa doskonale, to TP-LINK wn722n. Po instalacji wystarczy zainstalować VNC w RaspPi, a następnie pozostawić dowolny ustronny obszar w dowolnym miejscu firmy. BUM!! Połącz się z VNC, używając swojego systemu w domu, a teraz możesz łatwo złamać hasła WPA / WPA2 i dostać się do sieci.

Inżynierowi sieci będzie bardzo ciężko przeszukiwać Pi, ponieważ jest on wyjątkowo kompaktowy i można nawet ukryć go w procesorze lub monitorze komputera.

3. Budowanie Quadcoptera Rasp-Pi:

To coś, czego nie wszyscy chcieliby budować. Powodem jest to, że RaspPi potrzebuje baterii 5 V. A jeśli jesteś na tle quadkoptera, prawdopodobnie wiesz, że musimy uczynić Quad tak lekkim, jak to możliwe. Więc dopóki nie jesteś ekspertem w dziedzinie elektroniki, prawdopodobnie nie jest to coś, co chciałbyś zrobić. Ale pomyśl o możliwościach, które możesz zrobić, jeśli możesz stworzyć Quad z RaspPi.

Polecane kursy

  • Program AJAX
  • Kurs Szybkiego Testu Profesjonalisty
  • Szkolenie certyfikacyjne ExtJS
  • Kurs CISSP

4. Portable RaspStation Pi:

Czekać. Co ??? Co to znaczy? Powinno to być Portable Playstation lub PSP. Nie, dokładnie przeczytałeś. Ludzie przy pomocy odrobiny kodowania nauczyli się tworzyć przenośnego Gameboya z pi. Przeczytałem ten artykuł gdzieś na githubie w zeszłym tygodniu. Myślę, że powinieneś to sprawdzić.

5. Radio Pi-rate:

Radio Pi-Rate to nie tylko codzienne radio. Możesz stworzyć własne radio w ciągu kilku godzin i zacząć eksperymentować z częstotliwościami, na które może się zmieniać. To jest naprawdę bardzo fajne, z wyjątkiem tego, że jeśli wpadniesz w niewłaściwą częstotliwość, taką jak rządy, może to wpędzić cię w kłopoty.

Moi drodzy przyjaciele, myślę, że musieliście mieć pojęcie o tym, do czego zdolny jest RaspPi; Prawie wszystko, co może zrobić zwykły telefon komórkowy lub komputer, a także te rzeczy, których nie mogą.

Teraz cofnijmy się o krok i zobaczmy, jak Python jest z tym wszystkim związany.

Mieszanka Pythona

Po zakupie całego zestawu RaspPi jest on wyposażony w 8 gigabajtów karty SD klasy 10. Ta karta ma fabrycznie zainstalowany system operacyjny o nazwie NOOBS. NOOBS jest oparty na debianie i zawiera już Python 2, a także 3. Ale z jakiegoś powodu, jeśli okaże się, że brakuje konkretnej wersji Pythona, możesz po prostu zainstalować go, wpisując w wierszu poleceń:

>>> sudo apt-get install python

Ale zanim zbudujesz swój python, musisz upewnić się, że masz kilka ustawień. Aby funkcja HTTPS / SSL Pythona działała poprawnie, potrzebujemy libssl-dev. tk-dev jest również wymagany do programowania Tk GUI, a libsqlite3-dev doda Sqlite3, wbudowaną bazę danych SQL, wsparcie. Pozwól więc skonfigurować i zainstalować je wszystkie, zanim zaczniesz korzystać z Pythona:

>>> sudo apt-get update

>>>sudo apt-get upgrade -y

>>>sudo apt-get install build-essential libncursesw5-dev libgdbm-dev libc6-dev

>>>sudo apt-get install zlib1g-dev libsqlite3-dev tk-dev

>>>sudo apt-get install libssl-dev openssl

Opcjonalnie możesz zastąpić dołączoną wersję Python 3 (3.2.3 w mojej dystrybucji) poprzez aktualizację dowiązania symbolicznego.

>>> sudo ln -sf /usr/local/bin/python3.4 / usr / local / bin / python3

Alternatywą dla Pythona jest ipython. IPython to interaktywna powłoka Pythona z podświetlaniem składni, automatycznym uzupełnianiem, ładnym drukowaniem, wbudowaną dokumentacją i nie tylko. IPython nie jest domyślnie instalowany. Możesz go po prostu zainstalować, wpisując:

>>> sudo apt-get zainstaluj ipython # lub ipython3, jeśli chcesz

Uruchomienie ipython w terminalu pozwoli ci zacząć. Możesz także zainstalować biblioteki Pythona dla RaspPi, używając następujących poleceń:

>>>sudo apt-get update

>>>sudo apt-get install python-picamera

Jest to preferowana metoda instalowania aplikacji, bibliotek i modułów, ponieważ oznacza, że ​​instalowane moduły będą łatwo aktualizowane dzięki zwykłym poleceniom sudo apt-get update i sudo apt-get upgrade .

Ale to tylko biblioteki, które są obecne w archiwach Raspbian. Aby zainstalować inne archiwa, których tam nie ma, możesz użyć PIP, aby je zainstalować. Po prostu wpisz następujące informacje, aby zainstalować bibliotekę, którą chcesz zainstalować:

>>> sudo apt-get install python-pip

>>> sudo pip install simplejson

Aby zainstalować biblioteki pi Umbrella i oprogramowanie GPIO, możesz użyć:

>>> sudo apt-get install python3-rpi.gpio

>>> sudo pip zainstaluj pibrella ##, aby zainstalować pibrella

dla python 2

>>> sudo pip3.2 zainstaluj pibrella ##, aby zainstalować pibrella

dla python 3

Używanie Pythona na Raspberry Pi otwiera możliwość połączenia się ze światem rzeczywistym za pośrednictwem pinów GPIO Pi. Można to zrobić za pomocą biblioteki RPi GPIO. Jest fabrycznie zainstalowany na najnowszych obrazach Raspbian.

Aby kontrolować piny GPIO, potrzebujesz dostępu do roota w Pythonie. Musisz uruchomić sudo python, ipython, sudo idle & .

W swoim skrypcie Python (lub w REPL) zaimportuj moduł GPIO, ustaw tryb karty zgodnie z własnymi preferencjami, ustaw styki, których chcesz używać, i włącz je:

>>> importuj RPI.GPIO jako GPIO

## Robiąc to w ten sposób, możesz odwoływać się do RPI.GPIO jako tylko GPIO przez resztę skryptu.

Istnieją dwa sposoby numerowania styków we / wy na Raspberry Pi w RPi.GPIO. Pierwszym z nich jest system numeracji BOARD. Odnosi się to do numerów pinów w nagłówku P1 płyty Raspberry Pi. Zaletą korzystania z tego systemu numerowania jest to, że Twój sprzęt zawsze będzie działał, niezależnie od wersji RPi na płycie. Nie musisz ponownie podłączać złącza ani zmieniać kodu.

Drugi system numeracji to numery BCM. Jest to sposób działania na niższym poziomie - odnosi się do numerów kanałów w SOC Broadcom. Zawsze musisz pracować ze schematem, który numer kanału trafia do którego pinu na planszy RPi. Twój skrypt może być przerywany między wersjami płyt Raspberry Pi.

>>> GPIO.setmode (GPIO.bcm) ## ustaw tryb karty na Broadcom

Jeśli nie wiesz, co robisz, po prostu wpisz następujące informacje, aby zachować bezpieczeństwo:

>>> mode = GPIO.getmode ()

Wykryje to, który system numeracji pinów został ustawiony (na przykład przez inny moduł Python)

>>> GPIO.setup (17, GPIO.OUT) ## skonfiguruj PIN 17

>>> GPIO.setup (18, GPIO.OUT) ## skonfiguruj PIN 18

>>> GPIO.output (17, 1) ## włącz PIN 17

>>> GPIO.output (18, 1) ## włącz PIN 18

Dla tych, którzy nie wiedzą, co to jest GPIO, jest to moduł do kontrolowania kanałów GPIO Raspberry Pi. Ten pakiet zapewnia klasę do kontrolowania GPIO na Raspberry Pi.

Pamiętaj, że ten moduł nie nadaje się do aplikacji w czasie rzeczywistym lub krytycznych pod względem czasu. Wynika to z faktu, że nie można przewidzieć, kiedy Python będzie zajęty zbieraniem pamięci. Działa również pod jądrem Linuksa, co nie jest odpowiednie dla aplikacji działających w czasie rzeczywistym - jest to wielozadaniowy system operacyjny, a inny proces może mieć wyższy priorytet niż procesor, powodując zakłócenia w programie.

Jeśli szukasz prawdziwej wydajności i przewidywalności w czasie rzeczywistym, powinieneś rozważyć zakup Arduino. Zauważ, że bieżąca wersja nie obsługuje jeszcze SPI, I2C, sprzętowego PWM ani funkcji szeregowych w RPi. Chociaż sprzętowy PWM nie jest jeszcze dostępny, oprogramowanie PWM jest dostępne do użycia na wszystkich kanałach.

Tak więc myślę, że to by było na początek, jeśli masz więcej wątpliwości co do Raspberry Pi lub Python, zawsze możesz zapoznać się z dokumentacją GPIO lub Raspberry Pi w celu uzyskania dalszych szczegółów.

Z Raspberry Pi możesz wiele zrobić. Ten blog sam nie potrafi zdefiniować cudów dokonanych przez ludzi, którzy z niego korzystali. Upewnij się, że przynajmniej spróbujesz, a jeśli ci się powiedzie, uprzejmie bądź na tyle pokorny, aby udostępnić swój kod źródłowy na github. W końcu „Sharing is Caring”.

Polecane artykuły

Oto kilka artykułów, które pomogą Ci uzyskać więcej szczegółów na temat Raspberry Pi za pomocą Mix of Python, więc po prostu przejdź przez link.

  1. Linux vs Ubuntu - Przydatne różnice
  2. Kariera w Pythonie
  3. Rozpocznij pracę z Python i Django do tworzenia aplikacji internetowych
  4. Jakie są zalety i ograniczenia używania Pythona?
  5. 25 najbardziej niesamowitych pytań i odpowiedzi na pytania w Pythonie - trzeba się nauczyć
  6. Chcesz wiedzieć o Kali Linux vs Ubuntu

Kategoria: