Коли ви чуєте термін "Raspberry Pi", це звучить як якийсь фрукт або хоча б якийсь модуль якоїсь випадкової мови програмування. Але ні, я тут, щоб довести вас неправильно. Тож давайте подивимось, що саме таке Пі та як наш улюблений пітон бере участь у всьому цьому.

Що таке Raspberry Pi?

Raspberry Pi - це одноплатний мікрокомп'ютер розміру кредитної картки. Ось як виглядає Raspberry Pi:

Raspberry Pi заснований на мікросхемі Broadcom BCM2835. Оригінальний чіп - це чіп на базі ARM з процесором 700 МГц та відео процесор VideoCore IV з 256 Мб оперативної пам’яті. Але це було кілька років тому. Пізніше були випущені версії B і B +, які мали 512 Мб оперативної пам’яті. І остання модель Raspberry PI 2 - це 900 МГц чотирьохядерний процесор ARM Cortex-A7, 1 Гб оперативної пам’яті, 4 порти USB, 40 гнізд GPIO, повний порт HDMI, 1 порт Ethernet, комбінований 3, 5-міліметровий аудіороз'єм та складене відео, Інтерфейс камери (CSI), інтерфейс дисплея (DSI), слот для карт Micro Micro, що підтримує до 64 Гб, і графічне ядро ​​VideoCore IV 3D. Звучить цікаво? Тоді дозвольте розповісти щось більше.

Raspberry Pi - це фактично кишеньковий комп'ютер, майже рівний розміру колоди карт; і оскільки у нього є процесор ARM Cortex-A7, він може запускати весь спектр дистрибутивів ARM GNU / Linux, включаючи Snappy Ubuntu Core, а також Microsoft Windows 10.

Тож тепер досить із вступною частиною, давайте подивимось, що є реальним світовим застосуванням цього мікрокомп'ютера.

Використання реального світу

Нижче наведено кілька найдивовижніших проектів, які я бачив до цього часу. Перш ніж перейти до того, як python корисний з Raspberry, давайте подивіться на ці проекти (я буду лише надавати назви проектів. Будь ласка, шукайте весь проект у github чи Google для отримання додаткової інформації):

1. Створення планшетного ПК на базі Linux:

Так, ви правильно прочитали. Ви можете зробити планшет із ваших простих RaspPi. Все, що вам знадобиться - це припаяти простий 10-дюймовий сенсорний екран, портативний зарядний пристрій 10000 мАч, модуль камери та адаптер Wi-Fi та ІЧ-датчик. Можливо, ви, можливо, захочете створити корпус, який я пропоную вам зробити з Balsa Wood. Причина в тому, що вона міцна, легка і легко замінна. Є дуже багато людей, які вже побудували цю дивовижну машину. Переконайтесь, що це перевірити.

2. Викрадення мережі Pi:

Ви бачили відомий телесеріал Містер Робот? Якщо ви цього не зробили, то ви обов'язково повинні це перевірити. Це шалено дивовижно. Якщо ви комп'ютерний витівник, ця серія - це точна копія того, що роблять хактивісти в реальному житті. Але я не для просування жодної серії. Отже, повертаючись до нашої теми, якщо ви побачили серіал, то знаєте, про що я говорю.

Крім того, що саме таке, Pi встановлюється з ARM-версією Kali Linux і до нього додається адаптер. Той, що працює чудово - TP-LINK wn722n. Після встановлення просто встановіть VNC в RaspPi, а потім залиште його будь-яку відокремлену ділянку в будь-якому приміщенні компанії. БУМ !! Підключіться до VNC за допомогою домашньої системи, і тепер ви можете легко зламати паролі WPA / WPA2 та потрапити в мережу.

Мережевому інженеру доведеться надзвичайно важко шукати Pi, оскільки він надзвичайно компактний, і його можна навіть заховати всередині процесора або монітора комп'ютера.

3. Створення QuadCopter Rasp-Pi:

Тепер це щось не кожен хотів би побудувати. Причиною того, що RaspPi потрібен 5В акумулятор. А якщо ви з квадрокоптера, то, напевно, знаєте, що нам потрібно зробити Quad максимально легким. Так що, якщо ви не фахівець з електроніки, напевно, це не те, що ви хотіли б зробити. Але просто подумайте про можливості того, що ви можете зробити, якщо ви могли б створити Quad з RaspPi.

Рекомендовані курси

  • Програма AJAX
  • Курс з швидкого тестування професіонала
  • Навчання сертифікації ExtJS
  • Курс CISSP

4. Портативний RaspStation Pi:

Зачекайте. Чого ??? Що це означає? Це мала бути портативна Playstation або PSP. Ні, ви правильно це прочитали. Люди за допомогою трохи кодування навчилися робити портативний Gameboy з пі. Я прочитав цю статтю десь на Github минулого тижня. Це те, що я думаю, ви повинні це перевірити.

5. Pi-rate Radio:

Pi-rate Radio - це не лише ваше щоденне радіо. Ви можете зробити власне радіо за кілька проміжків годин і почати експериментувати з частотами, на які воно може змінитися. Це насправді дуже круто, за винятком того, що якщо ви потрапляєте в неправильну частоту, як уряди, то це насправді може привести вас до неприємностей.

Тепер, мої дорогі друзі, я думаю, ви, мабуть, мали уявлення про те, на що RaspPi здатний; Практично все, що може зробити ваш звичайний мобільний телефон або комп’ютер, а також ті речі, які вони не можуть.

Тепер давайте зробимо крок назад і подивимося, як пітон пов'язаний із усім цим.

Мікс пітона

Купуючи весь комплект RaspPi, він постачається з 8 гігабайт sdcard класу 10. Ця карта постачається з попередньо встановленою операційною системою, яка називається NOOBS. NOOBS заснований на debian, і він вже містить Python 2, а також 3. Але з якоїсь причини, якщо ви виявите, що вам не вистачає будь-якої конкретної версії python, ви можете просто встановити її, ввівши в командному рядку наступне:

>>> sudo apt-get install python

Але перш ніж будувати пітон, вам потрібно переконатися, що у вас є кілька налаштувань. Для того, щоб функціональність HTTPS / SSL python працювала правильно, нам потрібен libssl-dev. tk-dev також необхідний для розробки графічного інтерфейсу Tk, і libsqlite3-dev додасть підтримку Sqlite3, вбудованої бази даних SQL. Отже, дозвольте налаштувати та встановити все це перед тим, як розпочати роботу з 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

За бажанням ви можете замінити включену версію Python 3 (3.2.3 в моєму розповсюдженні), оновивши симпосилання.

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

Альтернативою python є ipython. IPython - це інтерактивна оболонка Python з підсвічуванням синтаксису, автоматичним завершенням, гарною друком, вбудованою документацією тощо. IPython не встановлений за замовчуванням. Ви можете просто встановити його, ввівши:

>>> sudo apt - отримайте установку ipython #or ipython3, якщо хочете

Тоді запуск ipython в терміналі почне вам працювати. Ви також можете встановити бібліотеки python для RaspPi, використовуючи наступні команди:

>>>sudo apt-get update

>>>sudo apt-get install python-picamera

Це кращий метод встановлення додатків, бібліотек та модулів, оскільки це означає, що встановлені модулі будуть легко оновлюватися за допомогою звичайних оновлень sudo apt-get update та sudo apt-get update upgrade .

Але це лише бібліотеки, які знаходяться в архівах Raspbian. Для того, щоб встановити інші архіви, яких там немає, ви можете використовувати PIP для їх встановлення. Просто введіть наступне для встановлення тієї бібліотеки, яку ви хочете встановити:

>>> sudo apt-get install python-pip

>>> sudo pip install simplejson

А щоб встановити бібліотеки pi Umbrella та програмне забезпечення GPIO, ви можете скористатися наступним:

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

>>> sudo pip install pibrella ## для встановлення pibrella

для пітона 2

>>> sudo pip3.2 встановити pibrella ## для встановлення pibrella

для пітона 3

Використання Python на Raspberry Pi відкриває можливість підключитися до реального світу за допомогою GPIO-штифтів Pi. Це можна зробити за допомогою бібліотеки RPi GPIO. Він попередньо встановлений на останніх зображеннях Raspbian.

Щоб керувати шпильками GPIO, вам знадобиться кореневий доступ у Python. Отже, вам потрібно запустити sudo python, ipython, sudo idle & .

У вашому сценарії Python (або в REPL) імпортуйте модуль GPIO, встановіть режим плати відповідно до ваших уподобань, налаштуйте штифти, які ви хочете використовувати, і увімкніть їх:

>>> імпортуйте RPI.GPIO як GPIO

## Роблячи це таким чином, ви можете посилатися на RPI.GPIO як просто на GPIO через решту вашого сценарію.

Існує два способи нумерації штифтів IO на Raspberry Pi в RPi.GPIO. Перший - це використання системи нумерації BOARD. Це стосується номерів штифтів на заголовку P1 дошки Raspberry Pi. Перевага використання цієї системи нумерації полягає в тому, що обладнання завжди працюватиме, незалежно від ревізії плати RPi. Вам не потрібно буде перемотувати з'єднувач або змінювати код.

Друга система нумерації - це числа BCM. Це спосіб роботи нижчого рівня - він відноситься до номерів каналів у Broadcom SOC. Ви завжди повинні працювати з діаграмою, який номер каналу йде до якого контакту на платі RPi. Ваш сценарій може перерватися між переглядами дощок Raspberry Pi.

>>> GPIO.setmode (GPIO.bcm) ## встановити режим плати на Broadcom

Якщо ви не знаєте, що ви робите, просто введіть наступне, щоб бути безпечним:

>>> режим = GPIO.getmode ()

Це дозволить визначити, яка система PIN-кодів була встановлена ​​(наприклад, іншим модулем Python)

>>> GPIO.setup (17, GPIO.OUT) ## налаштування PIN-коду 17

>>> GPIO.setup (18, GPIO.OUT) ## налаштування PIN-коду 18

>>> GPIO.output (17, 1) ## увімкніть PIN 17

>>> GPIO.output (18, 1) ## увімкніть PIN 18

Для тих людей, які не знають, що таке GPIO, є його модулем для управління Raspberry Pi GPIO каналами. Цей пакет пропонує клас для управління GPIO на Raspberry Pi.

Зауважте, що цей модуль непридатний для критичних додатків у режимі реального часу або в часі. Це тому, що ви не можете передбачити, коли Python буде зайнятий збиранням сміття. Він також працює під ядром Linux, що не підходить для додатків у режимі реального часу - це багатозадачність O / S, і інший процес може мати пріоритет перед процесором, викликаючи тремтіння у вашій програмі.

Якщо ви досягли справжньої продуктивності та передбачуваності в режимі реального часу, вам варто придбати собі Arduino. Зауважте, що поточний випуск ще не підтримує SPI, I2C, апаратну PWM або послідовну функціональність на RPi. Хоча апаратні ШІМ ще не доступні, програмне забезпечення ШІМ доступне для використання на всіх каналах.

Отже, я думаю, що це було б для початку роботи, якщо у вас є більше сумнівів щодо Raspberry Pi або Python, ви завжди можете звернутися до документації GPIO або Raspberry Pi для отримання більш детальної інформації.

З Raspberry Pi можна так багато зробити. Цей блог не може визначити чудеса людей, які ним користувались. Переконайтеся, що ви, як мінімум, спробуйте це, і якщо вам це вдасться, будь ласка, будьте досить скромними, щоб поділитися своїм вихідним кодом на github. Зрештою, "Обмін - це турбота".

Рекомендовані статті

Ось кілька статей, які допоможуть вам отримати більш детальну інформацію про Raspberry Pi з Mix of Python, тому просто перейдіть за посиланням.

  1. Linux vs Ubuntu - корисні відмінності
  2. Кар'єра в Python
  3. Почніть роботи з Python та Django для веб-розробки
  4. Які переваги та обмеження використання Python?
  5. 25 найдивовижніших питань інтерв'ю Python та відповіді, які потрібно вивчити
  6. Хочете знати про Kali Linux проти Ubuntu

Категорія: