Когда вы слышите термин «Raspberry Pi», это звучит как какой-то фрукт или, по крайней мере, какой-то модуль какого-то случайного языка программирования. Но нет, я здесь, чтобы доказать, что ты не прав. Итак, давайте посмотрим, что это за Pi и как наш любимый питон вовлечен во все это.

Что такое Raspberry Pi?

Raspberry Pi - это одноплатный микрокомпьютер размером с кредитную карту. Вот как выглядит Raspberry Pi:

Raspberry Pi основан на чипе Broadcom BCM2835. Оригинальный чип представляет собой чип на базе процессора ARM с тактовой частотой 700 МГц и графический процессор VideoCore IV с 256 МБ оперативной памяти. Но это было несколько лет назад. Позже были выпущены версии B и B +, которые имели 512 МБ ОЗУ. Последняя модель Raspberry PI 2 представляет собой четырехъядерный процессор ARM Cortex-A7 с частотой 900 МГц, 1 ГБ ОЗУ, 4 порта USB, 40 контактов GPIO, порт Full HDMI, 1 порт Ethernet, комбинированный аудиоразъем 3, 5 мм и композитное видео, Интерфейс камеры (CSI), интерфейс дисплея (DSI), слот для карты Micro SD с поддержкой до 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 и ИК-датчик. Возможно, вы также захотите построить дело, которое я предлагаю вам сделать из бальсового дерева. Причина в том, что он прочный, легкий и легко заменяется. Есть много людей, которые уже создали эту удивительную машину. Не забудьте проверить это.

2. Сетевая кража Пи:

Вы видели знаменитый сериал Мистер Робот? Если нет, то вы обязательно должны это проверить. Это безумно удивительно. Если вы компьютерный гик, эта серия является точной копией того, что делают хактивисты в реальной жизни. Но я здесь не для продвижения какой-либо серии. Итак, возвращаясь к нашей теме, если вы видели сериал, то вы понимаете, о чем я говорю.

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

Сетевому инженеру будет очень трудно искать Pi, так как он очень компактен, и вы даже можете спрятать его внутри процессора или монитора компьютера.

3. Создание квадрокоптера Rasp-Pi:

Теперь это то, что не каждый хотел бы построить. Причина в том, что RaspPi требуется батарея 5В. А если вы из квадрокоптера, вы, вероятно, знаете, что нам нужно сделать Quad максимально легким. Так что, пока вы не являетесь экспертом в области электроники, вероятно, это не то, что вы хотели бы сделать. Но просто подумайте о возможностях того, что вы можете сделать, если бы вы могли создать Quad с RaspPi.

Рекомендуемые курсы

  • Программа AJAX
  • Курс на Quick Test Professional
  • Сертификационный тренинг ExtJS
  • Курс CISSP

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

Подождите. Wha ??? Что это значит? Это должен был быть портативный Playstation или PSP. Нет, вы прочитали это совершенно правильно. Люди с помощью небольшого количества кода научились делать портативный Gameboy из пи. Я читал эту статью где-то на GitHub на прошлой неделе. Это то, что я думаю, тебе стоит это проверить.

5. Пи-рейтинг радио:

Радио Pi-Rate - это не просто ваше повседневное радио. Вы можете создать собственное радио в течение нескольких часов и начать экспериментировать с частотами, на которые оно может измениться. Это на самом деле очень круто, за исключением того, что если вы попадете на неправильную частоту, как у правительств, то это может на самом деле доставить вам неприятности.

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

Теперь давайте сделаем шаг назад и посмотрим, как Python связан со всем этим.

Смесь Питона

Когда вы покупаете весь комплект RaspPi, он поставляется с 8 гигабайтами SD-карты класса 10. Эта карта поставляется с предустановленной операционной системой, называемой NOOBS. NOOBS основан на Debian и уже содержит Python 2 и 3. Но по какой-то причине, если вы обнаружите, что вам не хватает какой-либо конкретной версии Python, вы можете просто установить ее, введя в командной строке следующее:

>>> sudo apt-get установить python

Но перед сборкой вашего питона вам необходимо убедиться, что у вас есть несколько настроек. Для правильной работы HTTPS / SSL-функций Python нам понадобится libssl-dev. tk-dev также требуется для разработки Tk GUI, а 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

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

>>> sudo apt-get установите ipython # или ipython3, если хотите

Тогда запуск ipython в терминале поможет вам начать. Вы также можете установить библиотеки Python для RaspPi, используя следующие команды:

>>>sudo apt-get update

>>>sudo apt-get install python-picamera

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

Но это только библиотеки, которые присутствуют в распбских архивах. Чтобы установить другие архивы, которых там нет, вы можете использовать PIP для их установки. Просто введите следующее для установки любой библиотеки, которую вы хотите установить:

>>> sudo apt-get установить python-pip

>>> sudo pip install simplejson

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

>>> sudo apt-get установить python3-rpi.gpio

>>> sudo pip установить pibrella ## для установки pibrella

для питона 2

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

для питона 3

Использование Python на Raspberry Pi открывает возможность подключения к реальному миру через контакты GPIO Pi. Это можно сделать с помощью библиотеки RPi GPIO. Он предустановлен на последних изображениях Распбиана.

Для управления выводами GPIO вам потребуется root-доступ в Python. Таким образом, вам нужно будет запустить sudo python, ipython, sudo idle & .

В вашем скрипте Python (или в REPL) импортируйте модуль GPIO, установите режим платы в соответствии с вашими предпочтениями, установите контакты, которые вы хотите использовать, и включите их:

>>> импортировать RPI.GPIO как GPIO

## Делая это таким образом, вы можете ссылаться на RPI.GPIO как на GPIO в остальной части вашего скрипта.

Существует два способа нумерации выводов ввода / вывода на Raspberry Pi в RPi.GPIO. Первый использует систему нумерации BOARD. Это относится к номерам контактов на заголовке P1 платы Raspberry Pi. Преимущество использования этой системы нумерации состоит в том, что ваше оборудование будет работать всегда, независимо от версии платы RPi. Вам не нужно будет переподключать разъем или менять код.

Вторая система нумерации - это номера BCM. Это низкоуровневый способ работы - он относится к номерам каналов в Broadcom SOC. Вы должны всегда работать с диаграммой того, какой номер канала идет на какой вывод на плате RPi. Ваш скрипт может сломаться между ревизиями плат Raspberry Pi.

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

Если вы не знаете, что делаете, просто введите следующее, чтобы быть в безопасности:

>>> mode = GPIO.getmode ()

Это определит, какая система нумерации выводов была установлена ​​(например, другим модулем 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, это модуль для управления каналами GPO Raspberry Pi. Этот пакет предоставляет класс для управления GPIO на Raspberry Pi.

Обратите внимание, что этот модуль не подходит для приложений, работающих в режиме реального времени или времени. Это потому, что вы не можете предсказать, когда Python будет занят сборкой мусора. Он также работает под ядром Linux, что не подходит для приложений реального времени - это многозадачная операционная система, и другой процесс может получить приоритет над процессором, что вызывает дрожание в вашей программе.

Если вам нужна настоящая производительность и предсказуемость в реальном времени, вам следует подумать о покупке Arduino. Обратите внимание, что текущая версия еще не поддерживает SPI, I2C, аппаратную ШИМ или последовательную функциональность на RPi. Хотя аппаратный ШИМ еще не доступен, программный ШИМ доступен для использования на всех каналах.

Итак, я думаю, что это было бы для начала, если у вас есть больше сомнений относительно Raspberry Pi или Python, вы всегда можете обратиться к документации GPIO или Raspberry Pi для получения дополнительной информации.

С Raspberry Pi ты так много можешь сделать. Один только этот блог не может определить чудеса, совершенные людьми, которые его использовали. Убедитесь, что вы хотя бы попробуете это, и если вам это удастся, будьте любезны, чтобы поделиться своим исходным кодом на github. В конце концов, «Обмен заботой».

Рекомендуемые статьи

Вот несколько статей, которые помогут вам получить более подробную информацию о Raspberry Pi с Mix of Python, поэтому просто перейдите по ссылке.

  1. Linux против Ubuntu-Полезные различия
  2. Карьера в Python
  3. Начните с Python и Django для веб-разработки
  4. Каковы преимущества и ограничения использования Python?
  5. 25 самых удивительных вопросов и ответов на Python. Нужно учиться
  6. Хотите знать о Kali Linux против Ubuntu