Kada čujete izraz 'Raspberry Pi', zvuči kao neka vrsta voća ili barem neki modul nekog slučajnog programskog jezika. Ali ne, tu sam da dokažem da ste pogriješili. Pa pogledajmo što je to Pi i kako je naš omiljeni piton uključen u sve to.

Što je Raspberry Pi?

Raspberry Pi je jednoračunalo mikroračunalo veličine kreditne kartice. Ovako izgleda Raspberry Pi:

Raspberry Pi se temelji na čipu Broadcom BCM2835. Originalni čip je ARM baziran čip od 700 MHz procesora i VideoCore IV GPU s 256 MB RAM-a. Ali to je bilo prije nekoliko godina. Kasnije su objavljene verzije B i B +, koje su imale 512 MB RAM-a. A najnoviji Model Raspberry PI 2 je četverojezgreni ARM Cortex-A7 procesor od 900 Mhz, 1 GB RAM-a, 4 USB priključka, 40 GPIO pinova, pun HDMI priključak, 1 Ethernet port, kombinirani 3, 5 mm audio priključak i kompozitni video, Kamera (CSI), sučelje za prikaz (DSI), utor za Micro SD karticu koji podržava do 64 GB i VideoCore IV 3D grafička jezgra. Zvuči zanimljivo? Onda ću vam reći nešto više.

Raspberry Pi je zapravo računalo s džepnim računalom, gotovo jednako veličini palube karata; a budući da ima ARM Cortex-A7 procesor, on može pokrenuti cijeli niz ARM GNU / Linux distribucija, uključujući Snappy Ubuntu Core, kao i Microsoft Windows 10.

Dakle, sada s uvodnim dijelom, pogledajmo koja je stvarna svjetska primjena ovog mikroračunala.

Stvarna upotreba u svijetu

Slijedi nekoliko najnevjerovatnijih projekata koje sam vidio do danas. Neposredno prije nego što nastavim s pitanjem kako je python koristan s Raspberryjem, pogledajte ove projekte (pružat ću samo nazive projekata. Ljubazno pretražite cijeli projekt na githubu ili Googleu za više informacija):

1. Izrada tablet zasnovanog na Linuxu:

Da, dobro ste pročitali. Možete napraviti tablet od jednostavnog RaspPi-ja. Sve što trebate je lemljenje jednostavnog zaslona osjetljivog na dodir od 10 inča, prijenosnog punjača od 10000 mAh, modula kamere i Wi-Fi adaptera i IC senzora. Vjerojatno biste željeli izgraditi i slučaj koji predlažem da napravite od Balsa Wooda. Razlog je to što je jak, lagan i lako zamjenjiv. Puno je ljudi koji su već izgradili ovaj nevjerojatan stroj. Obavezno to provjerite.

2. Mrežna otmica pi:

Jeste li vidjeli poznatu TV seriju Mr. Robot? Ako niste, onda to sigurno morate provjeriti. To je nevjerojatno nevjerojatno. Ako ste računalni štreber, ova je serija točna replika onoga što hacktivisti rade u stvarnom životu. Ali nisam ovdje da promoviram nijednu seriju. Dakle, vraćajući se našoj temi, ako ste gledali seriju, onda znate o čemu govorim.

Uz to, Pi je instaliran s ARM verzijom Kali Linuxa i na njega je priključen adapter. Ona koja savršeno funkcionira je TP-LINK wn722n. Nakon instaliranja jednostavno instalirajte VNC u RaspPi, a zatim ga ostavite na osami u bilo kojem prostoru tvrtke. BUM !! Kućni sustav se spaja na VNC i sada možete lako provaliti lozinke WPA / WPA2 i ući u mrežu.

Mrežnom inženjeru će biti izuzetno teško pretražiti Pi jer je izuzetno kompaktan i možete ga sakriti čak i unutar CPU-a ili monitora računala.

3. Izgradnja Rasp-Pi QuadCoptera:

Sada to nešto što ne bi svi željeli graditi. Razlog što je RaspPi treba 5V bateriju. A ako ste iz quadcopter pozadine, onda vjerojatno znate da moramo Quad učiniti što lakšim. Dakle, sve dok niste stručnjak za elektroniku, vjerojatno ovo nije nešto što biste željeli raditi. Ali samo razmislite o mogućnostima koje možete učiniti ako biste mogli stvoriti Quad s RaspPi-om.

Preporučeni tečajevi

  • AJAX program
  • Tečaj za brzi test profesionalaca
  • Obuka za certifikaciju ExtJS
  • CISSP tečaj

4. Prijenosni RaspStation Pi:

Čekati. Wha ??? Što to znači? Ovo bi trebao biti Prijenosni Playstation ili PSP. Ne, točno ste pročitali. Ljudi su uz pomoć malo kodiranja naučili napraviti prijenosni Gameboy od pi-a. Pročitao sam ovaj članak negdje na gitubu prošli tjedan. Ovo je nešto što mislim da biste trebali provjeriti.

5. Pi-rate radio:

Pi-rate radio nije samo vaš svakodnevni radio. U nekoliko sati možete napraviti vlastiti radio i početi eksperimentirati s frekvencijama na koje se može promijeniti. To je zapravo vrlo cool, osim što ako upadnete u pogrešnu frekvenciju, poput one vlade, onda bi vas to moglo uvesti u probleme.

Sada, dragi moji prijatelji, mislim da ste sigurno imali ideju za što je RaspPi sposoban; Gotovo sve što može učiniti vaš uobičajeni mobitel ili računalo, a također i one stvari koje ne mogu.

A sada učinimo korak unatrag i pogledajte kako je pyton povezan sa svim tim.

Mješavina Pythona

Kada kupite cijeli RaspPi Kit, dolazi s 8 gigabajtom sdcard-a klase 10. Ova kartica dolazi s unaprijed instaliranim operativnim sustavom nazvanim NOOBS. NOOBS se temelji na debianu, a on već sadrži Python 2 kao i 3. Ali iz nekog razloga, ako utvrdite da vam nedostaje bilo koja specifična verzija pythona, jednostavno je možete instalirati tako da u naredbeni redak upišete sljedeće:

>>> sudo apt-get install python

Ali prije nego što izgradite python, morate biti sigurni da ste postavili nekoliko stvari. Da bi HTTPS / SSL funkcionalnost pythona ispravno radila, potreban nam je libssl-dev. tk-dev je također potreban za razvoj Tk GUI-ja, a libsqlite3-dev će dodati podršku za Sqlite3, ugrađenu SQL bazu podataka. Dakle, konfigurirajte i instalirajte sve to prije nego što započnete s pitonom:

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

Po želji, možete zamijeniti uključenu verziju Python 3 (3.2.3 o mojoj distribuciji) ažuriranjem simboličke veze.

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

Alternativa python-u je ipython. IPython je interaktivna Python školjka sa isticanjem sintakse, automatskim dovršavanjem, lijepim ispisom, ugrađenom dokumentacijom i još mnogo toga. IPython nije instaliran prema zadanim postavkama. Možete ga jednostavno instalirati upisivanjem:

>>> sudo apt-instalirajte ipython #or ipython3 ako želite

Tada će pokretanje ipytona u terminalu započeti. Također možete instalirati python knjižnice za RaspPi koristeći sljedeće naredbe:

>>>sudo apt-get update

>>>sudo apt-get install python-picamera

Ovo je poželjna metoda instaliranja aplikacija, knjižnica i modula jer znači da će se moduli koje instalirate lako ažurirati uobičajenim sudo apt-get update i sudo apt-get naredbama za nadogradnju .

Ali to su samo knjižnice, koje se nalaze u raspbijskim arhivima. Kako biste instalirali druge arhive, koje tamo nisu prisutne, za njihovo instaliranje možete koristiti PIP. Samo upišite sljedeće da biste instalirali knjižnicu koju želite instalirati:

>>> sudo apt-get install python-pip

>>> sudo pip install simplejson

A za instaliranje pi Umbrella knjižnica i GPIO softvera, možete koristiti sljedeće:

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

>>> sudo pip install pibrella ## za instaliranje pibrella

za piton 2

>>> sudo pip3.2 instalirati pibrella ## za instaliranje pibrella

za piton 3

Korištenje Pythona na Raspberry Pi otvara mogućnost povezivanja sa stvarnim svijetom putem Pi-ovih GPIO pinova. To se može učiniti s RPi GPIO bibliotekom. Ona je unaprijed instalirana na nedavnim raspbijskim slikama.

Za kontrolu GPIO pinovima potreban vam bi bio root pristup u Python-u. Dakle, trebali biste pokrenuti sudo python, ipython, sudo idle & .

U Python skripti (ili u REPL-u) uvežite GPIO modul, postavite način rada ploče prema vlastitim željama, postavite igle koje želite koristiti i uključite ih:

>>> uvezite RPI.GPIO kao GPIO

## Ako to učinite na ovaj način, RPI.GPIO možete nazvati samo GPIO-om kroz ostatak skripte.

Postoje dva načina numeriranja IO pinova na Raspberry Pi u RPi.GPIO. Prvo se koristi sustavom numeriranja BOARD. To se odnosi na pin brojeve na P1 zaglavlju Raspberry Pi ploče. Prednost korištenja ovog sistema brojanja je u tome što će vaš hardver uvijek raditi, bez obzira na reviziju ploče RPi-ja. Nećete trebati ponovno povezivati ​​priključak ili mijenjati kôd.

Drugi sustav numeriranja su BCM brojevi. Ovo je način rada na nižoj razini - odnosi se na brojeve kanala na Broadcom SOC-u. Uvijek morate raditi s dijagramom broja kanala koji ide na koji pin na RPi ploči. Vaša bi se skripta mogla probiti između revizija ploča Raspberry Pi.

>>> GPIO.setmode (GPIO.bcm) ## postavite način rada ploče na Broadcom

Ako ne znate što radite, jednostavno upišite sljedeće da biste bili sigurni:

>>> mod = GPIO.getmode ()

Ovo će otkriti koji je sustav numeriranja igara postavljen (na primjer, drugi Python modul)

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

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

>>> GPIO.output (17, 1) ## uključite PIN 17

>>> GPIO.output (18, 1) ## uključite PIN 18

Za one koji ne znaju što je GPIO, njegov je modul za kontrolu Raspberry Pi GPIO kanala. Ovaj paket pruža klasu za upravljanje GPIO na Raspberry Pi.

Imajte na umu da je ovaj modul neprikladan za kritične aplikacije u stvarnom vremenu ili tempiranje vremena. To je zato što ne možete predvidjeti kada će Python biti zauzet sakupljanjem smeća. Također radi pod Linux kernelom, što nije pogodno za aplikacije u stvarnom vremenu - to je višesatni O / S i drugi proces može imati prednost pred CPU-om, uzrokujući podrhtavanje u vašem programu.

Ako se nakon stvarnih performansi i predvidljivosti radi u stvarnom vremenu, razmislite o tome da kupite Arduino. Imajte na umu da trenutno izdanje još ne podržava SPI, I2C, hardverski PWM ili serijsku funkcionalnost na RPi-ju. Iako hardverski PWM još nije dostupan, softverski PWM dostupan je za upotrebu na svim kanalima.

Dakle, mislim da bi to bilo kako biste započeli, ako imate više nedoumica o Raspberry Pi ili Python-u, uvijek se možete obratiti dokumentaciji za GPIO ili Raspberry Pi za daljnje detalje.

Toliko toga možete učiniti s Raspberry Pi. Ovaj blog sam ne može definirati čuda ljudi koji su ga koristili. Obavezno pokušajte ovo, i ako uspijete, budite dovoljno skromni da svoj izvorni kod podijelite na githubu. Uostalom, "Dijeljenje je brižno."

Preporučeni članci

Evo nekoliko članaka koji će vam pomoći da dobijete više detalja o Raspberry Pi s Mix Python-om, pa samo prođite vezu.

  1. Linux u Ubuntu-korisne razlike
  2. Karijere u Pythonu
  3. Započnite s Python i Django za web razvoj
  4. Koje su prednosti i ograničenja upotrebe Pythona?
  5. 25 najneverovatnijih pitanja o Python Intervjuu i odgovori koje treba naučiti
  6. Želite znati o Kali Linuxu protiv Ubuntua

Kategorija: