Når du hører udtrykket 'Raspberry Pi', lyder det som en slags frugt eller i det mindste et modul af et tilfældigt programmeringssprog. Men nej, jeg er her for at bevise, at du har forkert. Så lad os se, hvad denne Pi er nøjagtigt, og hvordan er vores foretrukne python involveret i alt dette.

Hvad er Raspberry Pi?

Raspberry Pi er et enkeltkort Microcomputer med kreditkortstørrelse. Sådan ser en Raspberry Pi ud:

Raspberry Pi er baseret på Broadcom BCM2835 Chip. Den originale chip er en ARM-baseret chip på 700 MHz processor og VideoCore IV GPU med en 256 MB RAM. Men dette var for få år tilbage. Senere blev B- og B + -versioner frigivet, som havde 512 MB RAM. Og den seneste Model Raspberry PI 2 er en 900 MHz quad-core ARM Cortex-A7-processor, 1 GB RAM, 4 USB-porte, 40 GPIO-stifter, Full HDMI-port, 1 Ethernet-port, en kombineret 3, 5 mm lydstik og kompositvideo, Camera interface (CSI), Display interface (DSI), Micro SD-kortslot, der understøtter op til 64 GB, og en VideoCore IV 3D-grafikkerne. Lyder interessant? Så lad mig fortælle dig noget mere.

Raspberry Pi er faktisk en Pocket-størrelse computer næsten lig med størrelsen på et kortstykke; og da den har en ARM Cortex-A7-processor, kan den køre en komplet række ARM GNU / Linux-distributioner, herunder Snappy Ubuntu Core samt Microsoft Windows 10.

Så nu nok med introduktionsdelen, lad os se, hvad der er den virkelige verden anvendelse af denne Micro Computer.

Brug af ægte verden

Følgende er nogle af de mest fantastiske projekter, jeg har set indtil nu. Lige før jeg fortsætter med, hvordan python er nyttigt med Raspberry, lad os se på disse projekter (jeg vil kun give projektnavne. Venligst søg i hele projektet på github eller Google for mere information):

1. Oprettelse af en Linux-baseret tablet:

Ja, du læser det rigtigt. Du kan lave en tablet ud af dit enkle RaspPi. Alt hvad du behøver er at lodde en simpel 10 ”berøringsskærm, en bærbar 10000 mAh oplader, et kameramodul og en Wi-Fi-adapter og en IR-sensor. Du ønsker måske også at opbygge en sag, som jeg foreslår, at du laver af Balsa Wood. Årsagen til at det er stærk, let og let udskiftelig. Der er mange mennesker, der allerede har bygget denne fantastiske maskine. Sørg for at tjekke dem ud.

2. Network-Hijacking Pi:

Har du set den berømte tv-serie Mr. Robot? Hvis du ikke har gjort det, skal du helt sikkert tjekke det ud. Det er sindssygt fantastisk. Hvis du er en computer nørd, er denne serie en nøjagtig kopi af, hvad Hacktivister gør i det virkelige liv. Men jeg er ikke her for at reklamere for nogen serier. Så når du vender tilbage til vores emne, hvis du har set serien, ved du hvad jeg taler om.

Desuden er det, hvad dette er nøjagtigt, Pi er installeret med en ARM-version af Kali Linux og der er knyttet en adapter til den. Den der fungerer perfekt godt er TP-LINK wn722n. Efter installation er det bare at installere en VNC i RaspPi og derefter lade det være ethvert afsondret område i ethvert virksomheds lokaler. BOOM !! Opret forbindelse til VNC ved hjælp af dit system derhjemme, og nu kan du nemt knække WPA / WPA2-adgangskoder og komme ind i netværket.

Netværksingeniøren vil have en ekstremt hård tid med at søge i Pi, da den er ekstremt kompakt, og du kan endda skjule den inde i en CPU eller en skærm på en computer.

3. Opbygning af en Rasp-Pi QuadCopter:

Nu er det noget, ikke alle gerne vil bygge. Årsagen til at RaspPi har brug for et 5V batteri. Og hvis du kommer fra en quadcopter-baggrund, ved du sandsynligvis, at vi er nødt til at gøre Quad så let som muligt. Så indtil du ikke er en ekspert inden for elektronik, er det sandsynligvis ikke noget, du gerne vil gøre. Men tænk bare på mulighederne for de ting, du kan gøre, hvis du kunne oprette en Quad med RaspPi.

Anbefalede kurser

  • AJAX-program
  • Kursus i Quick Test Professional
  • ExtJS-certificeringstræning
  • CISSP-kursus

4. Bærbar RaspStation Pi:

Vente. Wha ??? Hvad betyder det? Dette skulle have været Portable Playstation eller PSP. Nej, du læser det nøjagtigt. Mennesker ved hjælp af en smule kodning har lært at lave en bærbar gameboy ud af pi. Jeg læste denne artikel et sted på github i sidste uge. Dette er noget, jeg synes, du skal tjekke det ud.

5. Pi-rate Radio:

Pi-rate Radio er ikke kun din hverdagsradio. Du kan lave dig egen radio inden for få timer og begynde at eksperimentere med de frekvenser, den kan ændres til. Dette er faktisk meget cool, bortset fra at hvis du kommer i en forkert frekvens, som regeringen, så kan det faktisk lande dig i problemer.

Nu, mine kære venner, jeg tror, ​​du skal have haft en idé om, hvad RaspPi er i stand til; Næsten alt, hvad din normale mobiltelefon eller computer kan gøre, og også de ting, som de ikke kan.

Lad os nu tage et skridt tilbage og se, hvordan python er relateret til alt dette.

En blanding af Python

Når du køber hele RaspPi-kittet, leveres det med en 8 gigabyte Klasse 10 sdcard. Dette kort leveres med et forudinstalleret operativsystem kaldet NOOBS. NOOBS er baseret på debian, og den indeholder allerede Python 2 såvel som 3. Men på grund af en eller anden grund, hvis du finder ud af, at du mangler en bestemt version af python, kan du blot installere den ved at skrive følgende i kommandolinjen:

>>> sudo apt-get install python

Men inden du bygger din python, skal du sørge for, at du har et par ting opsætning. For at HTTPS / SSL-funktionaliteten i python fungerer korrekt, har vi brug for libssl-dev. tk-dev kræves også til Tk GUI-udvikling, og libsqlite3-dev vil tilføje Sqlite3, integreret SQL-database, support. Så lad os konfigurere og installere alle disse, inden du kommer i gang med python:

>>> 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

Valgfrit kan du overskrive den inkluderede Python 3-version (3.2.3 på min distribution) ved at opdatere symlink.

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

Et alternativ til python er ipython. IPython er et interaktivt Python-shell med syntaksbelysning, automatisk færdiggørelse, smuk udskrivning, indbygget dokumentation og mere. IPython er ikke installeret som standard. Du kan blot installere det ved at skrive:

>>> sudo apt-get install ipython #eller ipython3, hvis du vil

Så kører ipython i terminalen, kommer du i gang. Du kan også installere pythonbiblioteker til RaspPi ved hjælp af følgende kommandoer:

>>>sudo apt-get update

>>>sudo apt-get install python-picamera

Dette er en foretrukken metode til installation af apps, biblioteker og moduler, da det betyder, at modulerne, du installerer, let holdes opdaterede med den sædvanlige sudo apt-get-opdatering og sudo apt-get-opgraderingskommandoer .

Men dette er kun biblioteker, der er til stede i Raspbian-arkiverne. For at installere andre arkiver, der ikke findes derovre, kan du bruge PIP til at installere dem. Skriv blot følgende for at installere det bibliotek, du vil installere:

>>> sudo apt-get install python-pip

>>> sudo pip installerer simplejson

Og for at installere pi Umbrella-biblioteker og GPIO-software kan du bruge følgende:

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

>>> sudo pip installerer pibrella ## for at installere pibrella

til python 2

>>> sudo pip3.2 installer pibrella ## for at installere pibrella

til python 3

Brug af Python på Raspberry Pi åbner muligheden for at oprette forbindelse til den virkelige verden gennem Pi's GPIO-stifter. Dette kan gøres med RPi GPIO-biblioteket. Det kommer forudinstalleret på nylige Raspbian-billeder.

For at kontrollere GPIO-stifterne skal du bruge root-adgangen i Python. Så du bliver nødt til at køre sudo python, ipython, sudo idle & .

I dit Python-script (eller i REPL) skal du importere GPIO-modulet, indstille tavletilstanden til det, du foretrækker, opsætte tapperne, du vil bruge, og tænde dem:

>>> importere RPI.GPIO som GPIO

## Ved at gøre det på denne måde kan du referere til RPI.GPIO som bare GPIO gennem resten af ​​dit script.

Der er to måder at nummerere IO-stifterne på en Raspberry Pi inden for RPi.GPIO. Den første er at bruge BOARD-nummereringssystemet. Dette henviser til pin-numrene på P1-overskriften på Raspberry Pi-tavlen. Fordelen ved at bruge dette nummereringssystem er, at din hardware altid fungerer, uanset bestyrelsesrevisionen af ​​RPi. Du behøver ikke at tilslutte dit stik eller ændre din kode.

Det andet nummereringssystem er BCM-numrene. Dette er en lavere måde at arbejde på - det henviser til kanalnumrene på Broadcom SOC. Du skal altid arbejde med et diagram over hvilket kanalnummer, der går til hvilken pin på RPi-kortet. Dit script kan bryde mellem revisioner af Raspberry Pi-plader.

>>> GPIO.setmode (GPIO.bcm) ## indstil korttilstand til Broadcom

Hvis du ikke ved, hvad du laver, skal du blot indtaste følgende for at være sikker:

>>> tilstand = GPIO.getmode ()

Dette registrerer, hvilket pin-nummereringssystem der er indstillet (f.eks. Af et andet Python-modul)

>>> GPIO.setup (17, GPIO.OUT) ## opsæt PIN-kode 17

>>> GPIO.setup (18, GPIO.OUT) ## opsæt PIN-kode 18

>>> GPIO.output (17, 1) ## tænd PIN 17

>>> GPIO.output (18, 1) ## tænd PIN-kode 18

For de mennesker, der ikke ved, hvad GPIO er, er det et modul til styring af Raspberry Pi GPIO-kanaler. Denne pakke giver en klasse til styring af GPIO på en Raspberry Pi.

Bemærk, at dette modul er uegnet til kritiske applikationer i realtid eller timing. Dette er fordi du ikke kan forudsige, hvornår Python vil have travlt med indsamling af skrald. Det kører også under Linux-kernen, som ikke er egnet til realtidsapplikationer - det er en O / S til flere opgaver, og en anden proces kan have prioritet over CPU'en, hvilket forårsager jitter i dit program.

Hvis du søger ægte realtidspræstation og forudsigelighed, bør du overveje at købe dig en Arduino. Bemærk, at den aktuelle version ikke understøtter SPI, I2C, hardware PWM eller seriel funktionalitet på RPi endnu. Selvom hardware PWM ikke er tilgængelig endnu, er software PWM tilgængelig til brug på alle kanaler.

Så jeg tror, ​​det ville være det at komme i gang, hvis du er mere i tvivl om Raspberry Pi eller Python, kan du altid henvise til GPIO- eller Raspberry Pi-dokumentationen for yderligere oplysninger.

Der er så meget, du kan gøre med Raspberry Pi. Denne blog alene kan ikke definere vidundere udført af mennesker, der har brugt den. Sørg for, at du mindst prøver dette, og hvis du lykkes, skal du venligst være ydmyg nok til at dele din kildekode på github. Når alt kommer til alt er "Deling er omsorgsfuld."

Anbefalede artikler

Her er nogle artikler, der hjælper dig med at få flere detaljer om Raspberry Pi med en blanding af Python, så bare gå gennem linket.

  1. Linux vs Ubuntu-nyttige forskelle
  2. Karrierer i Python
  3. Kom i gang med Python og Django til webudvikling
  4. Hvad er fordelene og begrænsningerne ved at bruge Python?
  5. 25 mest fantastiske Python-interviewspørgsmål og svar-behov for at lære
  6. Vil du vide om Kali Linux vs Ubuntu

Kategori: