Raspberry Pi:Введение. Введение в Raspberry Pi


Raspberry PI 3 — одноплатный компьютер размером с банковскую карту. Как и обычный компьютер он имеет периферию и интерфейсы. Он позволяет выполнять многие функции, доступные мощным настольным системам. Практически он выполняет все функции компьютера и даже больше. Raspberry обладает большими графическими возможностями и его можно использовать, как платформу для разработки игровых приложений. С другой стороны, его можно использовать для разработки измерительных и робототехнических систем, применяя датчики и исполнительные механизмы.

Из этой статьи вы узнаете:

Приветствую вас на страницах моего блога kip-world! С вами Гридин Семён. Друзья, у меня часто происходят задержки с публикациями статей. Поэтому прошу меня извинить.

Я наконец-то добрался до самого корня своего ресурса. То, ради чего я всё начинал. Прошло 1,5 года.

Я пишу эти строки по своей любимой теме — об одноплатных компьютерах и о Raspberry PI в частности. Саму плату я заказал на . Как раз 11 Ноября, в это время был праздник в честь шоппинга и в китайском магазине были сумасшедшие скидки.

Вот, я воспользовался случаем...

Сколько потенциальных возможностей хранит в себе эта вещь. У нас в России не сильно популярный к сожалению. Сколько я перелопатил информации. Большая часть на английском языке.

Сейчас я на таком уровне, что всё понимаю в общих чертах. Я собираюсь расширять и углублять эти знания.

Начнём с описания...

Описание Raspberry PI

Миниатюрный и бесшумный компьютер, способный общаться с внешним миром с помощью системы ввода-выводов GPIO. Его способности ограничиваются лишь вашими знаниями и фантазией.

Какие могут быть применения на Raspberry PI 3:

  • Домашний сервер для хранения данных;
  • Майннинг Биткойнов;
  • Робот под управлением WI-FI или с машинным зрением
  • Игровая приставка или игровой автомат;
  • Домашняя метеостанция;
  • Планшет;
  • Охранная система с распознаванием лиц;
  • «Умный» дом;

На этой машинке можно собрать любую автоматику. Собрать любого робота.

Самые главные критерии любой системы автоматики заключаются в следующем:

  • Составление главного алгоритма и применение библиотек;
  • Учёт скорости цикла обработки операции;
  • Учёт дискретизации и скорости опроса аналоговых сигналов;
  • Наличие сетевой связи;

Давайте начнём с основных технических характеристик:

SoC Broadcom BCM2837
Процессор ARM Cortex-A53 (4 ядра)
Графический процессор Broadcom VideoCore IV
Оперативная память 1Гб LDDR2
Встроенные адаптеры 10/100Мбит Ethernet, Bluetooth 4.1 LE, Wi-Fi 802.11n
Порты 4xUSB 2.0, HDMI, 3.5мм аудиовыход, 40-pin GPIO , Camera Serial Interface (CSI), Display Serial Interface (DSI)
Разъем под microSD-карту

Какие я могу добавить комментарии из всего вышеперечисленного?

Основной операционной системой является Linux. ОС прописывается на флешку microSD и вставляется в соответствующий слот.

И, если ваша операционная система слетит, то ничего страшного. В любой момент можно заново записать.

Основная архитектура процессора является ARM Cortex-A53. О чем это говорит? О том, что мы можем прошить одну из множества операционных систем:

  1. Raspbian (производная Debian, заточенная под Raspberry). Кстати говоря эту операционную систему применяют в серверах хостингов
  2. Raspberry PI Desktop
  3. UBUNTU Mate
  4. Snappy UBUNTU Core
  5. Windows 10 IOT
  6. LIBREELEC
  7. PINET
  8. RISC OS
  9. Weather station

Для начала изучения я предлагаю опробовать Raspbian. Нужно сначала понять, как вообще пользоваться ОС Linux.

Для Raspberry доступны следующие интерфейсы:

  • UART (Serial);
  • I²C/TWI;
  • SPI с селектором между двумя устройствами;
  • Ethernet на 10/100 Мбит с выходом на стандартное гнездо 8P8C (RJ45);
  • Wi-Fi 802.11n и Bluetooth 4.1, обеспечиваемые микросхемой Broadcom BCM43438;

По поводу питания одноплатного компьютера. На борту платы есть micro-USB, которое принимает 5 Вольт. Можно запитать через ПИНы. Но лучше всего подключить адаптер питания на 5 В с выходным током на 2 А. Таким образом хватит энергоёмкости для устройств, которые вы будете подключать к USB.

Так что способен выполнять в основном только узкие задачи — локальные. Вообще интересно использовать непосредственно связку RPI + Arduino. Всегда хотел опробовать.

Что нужно для запуска Raspberry PI

Для начала работы вам потребуется:

  1. Сама плата мини-компьютера;
  2. Набор медных радиаторов (Очень рекомендую, если хотите чтобы малина проработала подольше);
  3. Любой корпус (не обязательно, но желательно);
  4. Блок питания 5 В на 2.5 А;
  5. Карта памяти microSD с минимальным объемом 8 Гб;

Затем нам нужна периферия для работы, в общем, как и обычный компьютер.

  1. Монитор или телевизор с HDMI выходом;
  2. Клавиатура;
  3. Мышь;

Если у вас Монитор с VGA ничего страшного, переходим на HDMI с помощью специального преобразователя.

Про установку и первое включение мы поговорим с вами позже, когда малина наконец-то приедет ко мне домой.

Для реализации различных программных функций Raspberry в основном . Можно писать на Java. Есть ещё и совсем детский объектно — ориентированный язык программирования Scratch.

Можно и применить для Raspberry, вполне реально.

Примеры проектов с малиной

Что можно сделать с Raspberry PI 3? А много чего, очень много. Примеров реализации просто море.

Я скину в основном англоязычные видео, так как они наиболее информативные::

1 GameBoy на Raspberry PI Zero


Или как вариант:

И вторая часть:

2 Квадрокоптер на RPI

3 «Умный» дом на RPI

4 Полноценный «домашний» сервер

5 Шикарный видеомагнитофон в машину

Это лишь малая часть, то что я перечислил. К сожалению в основном на английском языке.

С уважением, Гридин Семён

Андрей Васильков

Сегодня без лишнего шума начались продажи Raspberry Pi 2. Рекомендованная цена новинки составляет $35 – столько же, сколько стоила изначально первая модель этого одноплатного компьютера. За три года было выпущено 4,5 млн экземпляров модификаций «A», «B» и «B+», что по словам руководителя Raspberry Pi Foundation Ибена Аптона (Eben Upton) гораздо больше предполагаемых объёмов производства, звучавших в самых смелых прогнозах. Вторая же версия Raspberry Pi получилась настолько удачной, что у неё есть все шансы побить суммарный рекорд своих предшественниц уже в этом году.

Внешне модель Raspberry Pi 2 очень похожа на обновлённую версию B+, представленную летом прошлого года. Тогда число USB портов было увеличено до четырёх, добавлены ещё четырнадцать входов/выходов общего назначения (GPIO), а относительно большой слот для карт памяти формата SD был заменён на microSD. Однако улучшенная периферия в модели B+ работала с прежней платформой – однокристальной системой Broadcom BCM2835. К тому времени она уже выглядела откровенно устаревшей. Одноядерный процессор с частотой 700 МГц и 256/512 МБ ОЗУ сильно лимитировали возможности использования.

Новая модель Raspberry Pi 2 не просто впечатляет своими характеристиками, но и позволяет существенно расширить потенциальные области применения микрокомпьютера размером с пластиковую карточку (85,6 × 56,5 мм). Теперь на «Малине» без проблем запускаются не только RISC OS и различные специализированные дистрибутивы, вроде Raspbian и Pidora (который так и не переименовали), но и более требовательные к ресурсам ОС с поддержкой архитектуры ARM.


Raspberry Pi 2 – 40 контактов GPIO и обратная совместимость.

Если возможность запуска Debian вполне ожидаема для Raspberry Pi 2, то поддержка Windows 10 – приятно удивляет. Более того, легальную копию Windows 10 можно будет получить в рамках Windows Developer Program в ближайшее время.

«Raspberry Pi 2 – удивительно мощное устройство, открывающее мир современных вычислений и программирования для огромного количества людей с разным уровнем квалификации», – пишет в корпоративном блоге генеральный менеджер направления «Windows для интернета вещей» Кевин Даллас (Kevin Dallas).

Начиная с сегодняшнего дня стала доступна модель Raspberry Pi 2 mod. B v.1.1. Эти микрокомпьютеры выпускаются на заводе Sony в Уэльсе с конца прошлого года, о чём свидетельствует маркировка на плате. Объём первой партии составляет сто тысяч единиц.

Основой микрокомпьютера стала однокристальная система Broadcom BCM2836. В ней интегрированы четыре процессорных ядра Cortex-A7 (работающих на частоте 900 МГц и поддерживающих набор инструкций ARMv7), уже известный по прошлым версиям Raspberry графический процессор Broadcom VideoCore IV (с частотой 250 МГц, поддержкой OpenGL ES 2.0, кодеков MPEG-2, h.264/MPEG-4 AVC и VC-1 в режиме до 1080p@30 FPS), гигабайт оперативной памяти типа LPDDR2 SDRAM (общей для ЦП и ГП) и цифровой сигнальный процессор.


Raspberry Pi 2 – система на кристалле BCM2836.

Старое видеоядро было решено оставить по простой причине: среди SoC архитектуры ARM это пока единственный вариант, для которого есть полная и открытая техническая документация.

В однопоточных тестах Rapsberry Pi 2 демонстрирует прирост производительности примерно в полтора раза по сравнению с первой версией mod B+1. Многопоточные пакеты Sunspider ожидаемо выполняются вчетверо быстрее, а в тестах NEON с использованием оптимизированных для многопоточности видеокодеков достигается двадцатикратное ускорение. Средний прирост производительности Rapsberry Pi 2 указывается как шестикратный, и это впечатляет!

Питание платы, как и прежде, осуществляется через разъём micro-USB. Типичное значение силы тока составляет 800 мА, но может быть повышено до 1200 мА при использовании более мощного адаптера (рекомендуется с маркировкой 2A). Потребляемая мощность самой платы не превышает шести ватт и обычно удерживается в диапазоне 3-4 Вт, что позволяет использовать только пассивное охлаждение.


Raspberry Pi 2 – 4 порта USB 2.0 и порт Ethernet 10/100.

Сетевой контроллер остался стамегабитным. Как и прежде, камера подключается гибким плоским шлейфом по интерфейсу MIPI CSI, а дисплей – аналогичным образом к порту DSI. Среди видеовыходов есть полноразмерный HDMI и композитный (PAL и NTSC) через 3,5 мм разъем. Аудиовход – I 2 S. Аудиовыходы: аналоговый 3,5 мм, цифровой через HDMI и I 2 S.

Для загрузки ОС, программ и хранения пользовательских данных распаян слот microSD. Из сорока входов/выходов общего назначения первые 26 расположены также, как в предыдущих моделях Raspberry. Даже форм-фактор остался прежним, поэтому все сторонние дополнения для mod. B+ подойдут и для второй версии.

Сегодня также появились новые дистрибутивы ОС Raspbian. В них добавлена поддержка Raspberry Pi 2, а владельцы прежних модификаций микрокомпьютера смогут просто обновить версию ОС через apt-get.


Раньше Raspberry Pi использовали для обучения программированию, создания простых роботов, самодельных систем управления «умным домом», в качестве медиацентра и множеством других способов. Ибен Аптон считает, что с появлением второй версии многим хватит её вычислительной мощности для воплощения куда более сложных идей. Она даже сможет заменить неттоп или HTPC. «У нас уже есть сотрудники, которые используют Raspberry Pi 2 вместо офисного компьютера», – сказал он в интервью изданию Ars Technica.

Полная стоимость Raspberry Pi 2 mod. B v.1.1. для конечного потребителя пока составляет около $60 – с учётом наценок продавцов и доставки. Ожидается, что она будет постепенно снижаться по мере увеличения объёмов выпуска. Прежние модели Raspberry Pi продолжат выпускать ещё какое-то время и будут предлагать по сниженной цене.

В статье использованы фотографии Raspberry Pi Foundation.

» представляет учебный курс «Raspberry Pi: первое знакомство».

Уроки включают текстовые инструкции, фотографии и обучающие видео. В каждом уроке вы найдете список необходимых компонентов и листинг программы. Курс ориентирован на начинающих, чтобы к нему приступить, не нужны никакие дополнительные сведения из электротехники или робототехники.

Краткие сведения о Raspberry Pi

Что такое Raspberry Pi?

Raspberry Pi – одноплатный компьютер, то есть различные части компьютера, которые обычно располагаются на отдельных платах, здесь представлены на одной. К тому же эта плата имеет относительно небольшой размер — примерно 8,5*5,5 см.

В названии продукта объединены Raspberry – малина и Pi – число Пи. Изображение малины стало логотипом проекта.

Продажа «малины» началась сравнительно недавно — в начале 2012 г., сегодня это наиболее популярная платформа своей области, продано уже более 3,5 млн экземпляров Raspberry Pi.

Как связаны Raspberry Pi и роботы?

Raspberry Pi часто используется как мозг робота, домашний сервер или просто компьютер.

Raspberry Pi в образовании

Изначально проект создавался как образовательный, Raspberry Pi отлично подходит для изучения основ электроники. На основе Raspberry Pi создано множество . Однако сегодня его назначение вышло за только образовательное.

Что нужно для начала работы с Raspberry Pi?

Чтобы начать работу с Raspberry Pi помимо самой платы вам понадобится:

  • SD-карта, с которой вы загрузите операционную систему; производитель рекомендует использовать карту от 8 до 32 Gb, реально работает и на меньших картах;
  • монитор или телевизор с разъемами HDMI, DVI или RCA (только для моделей A и B), и, соответственно, кабель HDMI-HDMI, HDMI-DVI или RCA-RCA, также можно использовать HDMI-VGA преобразователь;
  • USB-клавиатура;
  • USB-мышь
  • кабель питания или аккумулятор micro-USB

Raspberry Pi поставляется без ОС, ее нужно скачать с сайта производителя и загрузить на SD карту.

Модификации Raspberry Pi

Raspberry Pi выпущена в трех вариация: A, A+, B и B+. Наиболее популярна модель B, B+ набирает популярность, так как . Самая новая и дешевая из-за своей цены, возможно, станет хитом.

Он-лайн курс «Raspberry Pi: первое знакомство»

Урок 1. Устройство и установка ОС Raspbian

На первом уроке рассматривается устройство Raspberry Pi, установка операционной системы Raspbian , подключение, включение и выключение Raspberry Pi.

Урок 2. Подключение к Интернету, программы из Pi Store и LibreOffice

На этом уроке вы настроите подключение Raspberry Pi к интернету через кабель LAN или WiFi-адаптер, научитесь скачивать программы через каталог Pi Store, в частности установите бесплатный офисный пакет LibreOffice.

Урок 3. Консоль, утилита apt-get, скриншоты, удаленное управление

В этом уроке вы научитесь работать с Linux-консолью, скачивать программы с помощью утилиты apt-get, делать скриншоты с помощью утилиты scrot и удаленно управлять Raspberry Pi c помощью системы VNC.

Урок 4. Работа с GPIO, мигание светодиодом, Python

На этом уроке вы подключите светодиод и кнопку с помощью GPIO-портов, имеющихся на Raspberry Pi.

В статье представлена информация о популярной линейке миникомпьютеров Raspberry pi. Описан принцип действия, области применения и дан развернутый обзор функциональных особенностей различных моделей Raspberry pi2, Raspberry pi3, Raspberry pi model B.

Raspberry и «умный» дом

В 2011 году компания Raspberry Pi Foundation выпустила первый в мире миниатюрный, но полноценный компьютер разработанный Девидом Брабеном. Размер этого устройства сопоставим с размерами банковской карты. В то же время его технические параметры соответствуют топовым компьютерам 2005-10 годов.

Одними из самых привлекательных черт данной техники является ее доступность. Стоимость базовых моделей (model А) находится в области 25 дол США, а более продвинутых (model В) около 35 дол США. Конечно, на отечественном рынке эта техника стоит несколько дороже, так как сказываются высокие ввозные пошлины и налоговые отчисления, но все равно стоимость Raspberry не сопоставима с аналогичной крупномасштабной техникой.


Вторым немаловажным преимуществом является его феноменальная экономность. Raspberry Pi 2 потребляет все 1 Вт электроэнергии в час, в то время как его стационарный аналог не менее 250 Вт.

Что может Raspberry и как он работает?

Операционная система Raspberry Pi – Debian Linux, на данный момент практически все модели выпускаются с предустановленной специальной системой под названием Raspbian. В довесок ко всему в качестве браузера используется Midori, офисный пакет (аналог незаменимого World и Exel) Koffice.

Как же Такое оборудование может использоваться в ?


Представленный пример структуры состоит из центрального вычислительного устройства (далее сервер), связанного с периферийными модулями через RS485 – интерфейс. В каждом ключевом помещении дома устанавливается контроллер, который интерпретирует поступающие сигналы и передает их на исполнительные устройства различной бытовой техники. Это могут быть детекторы контроля, устройства регулировки и управления или датчики защиты.


Преимущества такой структуры заключаются в предоставлении определенной автономности периферии, которая будет выполнять поставленные задачи даже при выходе центрального устройства из строя. И элементарном упрощении задач по прокладке кабельных сетей. От сервера будет проложено по одному UTP кабелю к каждому контроллеру. Команды управления будут пересылаться по одной паре проводов, а остальные 3 пары будут использованы для подачи питания самих контроллеров и исполнительных устройств, находящихся под их управлением.

Центральным сервером системы является Raspberry Pi на котором установлен WEB-интерфейс, связанный с внешними мобильными устройствами управления – смартфоном, планшетом, ноутбуком. Доступ к ресурсу предоставляется по логину и паролю с сети интернет, Wi-Fi, или локальной Ethernet. У большинства ПО есть возможность разграничения уровня доступа на администраторский и пользовательский.

Связь модуля Raspberry Pi с контроллерами реализована через порт UART, к которому подключается согласующее устройство – переходник на интерфейс RS485. В последних моделях данный интерфейс реализован в базовой комплектации. Так же, реализована возможность подключения GSM модема для связи с мобильным оператором, предоставляющим провайдерские услуги доступа в глобальную сеть.

Кроме того существует и радиомодуль, основная задача которого привязка общей сети радиодатчиков и радиопультов управления.

Стандартная система «Умный дом» основанная на Raspberry Pi может включать следующие элементы:

  • Контроллер температуры и влажности на 8 каналов. Собирает показания о состоянии параметров через детектор DHT22 и 7 датчиков типа DHT11.
  • Четырехканальный термостат. Этот терморегулятор может контролировать параметры четырех отдельных линии нагрузки, как нагрева, так и охлаждения. Параметры могут задаваться непосредственно на контроллере или через WEB-интерфейс сервера.
  • Радиомодуль – используется для приема данных с 10 радиодатчиков и эмуляции 5 радиобрелоков;
  • Универсальный констроллер, может применяться для контроля и управления системой полива, отопления и т.д. имеет 2 входя для подключения детекторов влажности (DHT22) и температуры (DHT11).

Более подробно о функционировании описанной системы можно увидеть здесь:

Обзор моделей Raspberry Pi 2, Pi 3 model B

Процессор ARM Cortex-A7 с тактовой частотой 900МГц и 4 ядрами на борту. Объем оперативной памяти довольно солидный даже по современным меркам 1 ГБ. В плату интегрирован графический чипсет — VideoCore IV 3D и звуковой контроллер. Это дает возможность использовать устройство в качестве универсального мультимедийного сервера в .


Внешние интерфейсы:

HDMI – главное отличие от предыдущих разработок, заменил собой аналоговый RCA видеовыход. Однако возможность подключения телевизора через 3,5 мм разъем осталась. Необходимо дополнительно приобрести кабель переходник (стоимость около 5 дол).


Еще одним отличием от моделей предыдущего поколения является наличие системных файлов. Так же имеется Lan порт и 4 USB порта, которые могут выдать для питания внешних устройств ток силой 1,2 А каждый. Для этого сам Raspberry Pi должен быть подключен к специальному сетевому адаптеру, который обеспечит силу тока 2 А.

По сравнению с 1 и 2 версиями Raspberry Pi 3 не подверглась кардинальной модернизации. Однако эволюция развития основных технических показателей существенна. Основным отличием является высокопроизводительный четырехъядерный 1,2 ГГц процессор ARM Cortex-A53. По заверениям разработчиков создание такого процессора на базе однокристальной платформы Broadcom BCM2837 увеличило его производительность на 50%, и при этом он полностью совмести с предыдущими версиями.

Из основных интерфейсов связи можно отметить:

  • Bluetooth 4.1;
  • Wi-Fi 802.11n;
  • 4 USB;
  • HDMI;
  • 40ка пиновый GPIO.

Стоимость устройства не изменилась, все те же 35 дол плюс доставка от официального дилера в Великобритании.

Raspberry Pi незаменимое устройство для тех, кто самостоятельно занимается установкой и наладкой систем «Умный дом».

Рисунок 1. Блочная диаграмма аппаратной части системы

Описание процесса монтажа аппаратной части системы занимает много времени, но является достаточно простым. В первую очередь следует соединить блок питания с стенной розеткой с помощью удлинителя, отрезав розетку это удлинителя. Зачистите провода и закрепите их с помощью винтов в терминалах блока питания. Далее соедините Raspberry Pi с блоком питания, отрезав разъем типа A от кабеля USB и соединив провода с соответствующими выводами блока питания, и вставьте разъем micro USB в разъем питания RPi. После этого следует зачистить оба конца двух жил гибкого кабеля и соединить их с соответствующими терминалами с обозначениями GND и JDVcc блока питания и блока реле. Наконец, следует удалить джампер, соединяющий вывод с обозначением JDVcc с выводом с обозначением Vcc. В том случае, если вы не удалите этот дампер, на предназначенные для напряжения 3.3 В выводы RPi будет подано напряжение в 5 В, которое с высокой вероятностью выведет компьютер из строя.

Теперь, когда питание подведено ко всем терминалам, следует соединить линии IN1-IN8 модуля реле с соответствующими выводами разъема GPIO с помощью гибкого кабеля таким образом, как показано на Рисунке 2. Представленный в данной статье код был разработан для случая, когда выводы IN1-IN7 соединены с выводами GPIO1-GPIO7. В том случае, если вы решите соединить данные выводы по-другому, вам придется модифицировать соответствующим образом ваш код.

Схема расположения выводов разъема GPIO Raspberry Pi приведена на Рисунке 2. На порты ввода-вывода Raspberry Pi подается напряжение 3.3 В, а модуль реле работает с напряжением 5 В. Однако, реле изолированы от выводов GPIO Raspberry Pi при помощи оптопар. На оптопары может подаваться напряжение 3.3 В с вывода Vcc. На вывод Vcc модуля реле может быть подано напряжение 3.3 В с разъема GPIO Raspberry Pi. Убедитесь в том, что вы убрали джампер, замыкающий выводы Vcc и JDVcc модуля реле. На вывод JDVcc должно подаваться напряжение 5 В для корректной работы реле. Рассматриваемый модуль реле размыкает контакты в активном состоянии. Из этого следует, что вы должны заземлить терминалы IN1-IN8 для включения реле.

Рисунок 2. Схема расположения выводов разъема GPIO Raspberry Pi

Предупреждение: проявляйте особую осторожность при соединении аппаратных компонентов системы. Последствия поражения электрическим током могут оказаться фатальными!

Обрежьте остатки кабелей удлинителей с вилками и закрепите провода в соответствующих терминалах модуля реле. Также подключите провода кабеля, который впоследствии будет связывать систему со стенной розеткой, к соответствующим терминалам модуля реле. Вся аппаратная часть системы может быть размещена в пенале или аналогичном контейнере. Подумайте о корпусе заранее, чтобы по окончании работы над аппаратной частью системы избежать необходимости в отсоединении и повторном присоединении проводов к терминалам модуля реле. Кроме того, я вставил несколько закрепляемых с помощью винтов зажимов для кабелей в соответствующие отверстия корпуса для ограничения натяжения кабелей (Рисунок 3).

Рисунок 3. Монтаж аппаратной части системы

Программное окружение

Я начал создание своего программного окружения с установки образа операционной системы Raspbian. Перед началом установки образа операционной системы вам потребуется подготовить дисплей, поддерживающий передачу изображения по HDMI, клавиатуру и мышь с разъемами USB, а также сетевой кабель для соединения с системой по протоколу Ethernet. Также вы можете установить соединение с системой посредством адаптера Wi-Fi. Создайте загрузочную SD-карту для первой загрузки системы в соответствии с инструкциями, приведенными на ресурсе http://www.raspberrypi.org/documentation/installation/installing-image . В процессе первой загрузки системы установщик осуществит настройку операционной системы и разместит данные из ее образа на всем доступном пространстве карты памяти. После первой загрузки вы должны иметь возможность входа в систему с помощью стандартных данных учетной записи пользователя (имя пользователя "pi" и пароль "raspberry").

Обновление системы является разумным действием, которое должно выполняться сразу же после успешного входа в систему. Образ операционной системы Raspbian базируется на пакетах программного обеспечения дистрибутива Debian и использует приложение aptitude в качестве менеджера пакетов программного обеспечения. Кроме того, вам понадобятся пакеты программного обеспечения с именами python , pip и git . Я также мог бы порекомендовать установку Webmin для упрощения процесса администрирования системы. Инструкции по установке Webmin приведены на ресурсе http://www.webmin.com/deb.html (следуйте рекомендациям, приведенным в разделе "Using the Webmin APT repository"):

Sudo apt-get update && sudo apt-get dist-upgrade sudo apt-get install python python-pip git git-core

После этого вам придется настроить соединение с использованием адаптера Wi-Fi. Вы можете найти подробные инструкции на ресурсе http://www.raspberrypi.org/documentation/configuration/wireless . Я рекомендую использовать вариант wicd-curses . На данном этапе вы можете изменить параметры настройки Raspberry Pi с помощью команды sudo raspi-config . После ввода данной команды вы получите доступ к удобному графическому интерфейсу, который позволит вам установить значения таких параметров, как объем оперативной памяти, разделяемой с графическим процессором, параметры быстродействия центрального процессора, режим использования графического интерфейса в процессе загрузки и других.

Другим полезным инструментом является интегрированная среда разработки Cloud 9 IDE . Cloud 9 IDE позволит вам редактировать свой код на уровне Raspberry Pi посредством веб-браузера. Данная интегрированная среда разработки также предоставит вам доступ к интерфейсу командной строки в рамках веб-браузера. Вы можете разрабатывать и исполнять любой код, не покидая свой веб-браузер. Интегрированная среда разработки Colud 9 IDE требует наличия определенной версии фреймворка NodeJS. Использование неподдерживаемой версии фреймворка повлечет за собой постоянные аварийные завершения работы сервера Cloud 9, которые могут привести любого пользователя в уныние. Инструкции по установке фреймворка NodeJS на компьютер Raspberry Pi приведены на ресурсе http://weworkweplay.com/play/raspberry-pi-nodejs .

Программное обеспечение

Я решил создавать пользовательский интерфейс своей системы с использованием технологий HTML5, CSS3 и JavaScript. Комбинация трех упомянутых технологий является мощным инструментом для создания пользовательских интерфейсов. Язык программирования JavaScript позволяет использовать простой API для взаимодействия с серверами. Кроме того, существует множество библиотек для языка программирования JavaScript, таких, как JQuery, Bootstrap и других, из которых можно выбрать наиболее подходящую. HTML5 предоставляет API WebSocket, позволяющее веб-браузеру поддерживать соединение в рабочем состоянии и осуществлять обмен данными посредством этого соединения. Это обстоятельство делает API WebSocket особенно полезным для реализации динамических приложений и приложений для потоковой передачи данных, таких, как игры и чаты. Каскадные таблицы стилей CSS полезны для стилизации различных элементов страницы HTML. В случае корректного использования они позволяют создавать динамические пользовательские интерфейсы путем изменения стилей элементов страниц при наступлении тех или иных событий. Для данного проекта я выбрал фреймворк JQuery для обработки событий, Bootstrap CSS для размещения кнопок в форме сетки и язык программирования JavaScript для реализации механизмов обмена данными на основе API WebSocket.

Библиотеки

Серверное приложение, работающее на уровне Raspberry Pi, должно управлять состоянием выводов разъема GPIO платы Raspberry Pi. Оно также должно предоставлять интерфейс HTTP для передачи данных графического интерфейса и интерфейс WebSocket для передачи сообщений с командами и данными состояния. Готового к установке серверного приложения с такими специфическими функциями попросту не существует, поэтому я принял решение о создании своей собственной реализации сервера с использованием языка программирования Python. Для упрощения разработки описанного серверного приложения с использованием языка программирования Python доступны модули с реализациями методов для работы с интерфейсом GPIO Raspberry Pi, для создания сервера HTTP и для работы с интерфейсом WebSockets. Так как все перечисленные модули предназначены для выполнения поставленных задач, мне пришлось разработать минимальный объем кода.

Однако, упомянутые модули не включены в комплект поставки интерпретатора Python и должны устанавливаться отдельно. В первую очередь вам понадобится модуль для управления состоянием выводов разъема GPIO Raspberry Pi. Простейший способ изменения состояния выводов данного разъема заключается в использовании библиотеки RPi.GPIO, доступной по адресу https://pypi.python.org/pypi/RPi.GPIO . Вы можете установить соответствующий модуль с помощью следующей команды:

Sudo pip install RPi.GPIO

Работа с модулем RPi.GPIO не связана с какими-либо сложностями. Вы можете найти примеры использования данного модуля по адресу . На первом шаге работы с модулем необходимо осуществить импорт его кода в код проекта. После этого вам придется выбрать режим работы. В качестве идентификатора режима работы может использоваться либо константа GPIO.BOARD, либо константа GPIO.BCM. Выбор режима работы обуславливает использование чипа BCM или выводов разъема ввода-вывода при ссылках на номера выводов во всех последующих командах. Далее следует указать, используются ли выводы из рассматриваемого разъема для ввода или вывода. Теперь вы можете использовать выводы данного разъема по назначению. Наконец, вам придется осуществить вызов метода cleanup() для сброса состояния выводов разъема GPIO. В Листинге 1 показан простейший пример использования модуля RPi.GPIO.

Листинг 1. Использование модуля RPi.GPIO

Import RPi.GPIO as GPIO # импортирование кода модуля в код проекта GPIO.setmode(GPIO.BOARD) # указание на то, что нумерация используется для обозначения выводов разъема GPIO.setup(0, GPIO.IN) # указание на то, что канал 0 будет использоваться для ввода GPIO.setup(1, GPIO.OUT) # указание на то, что канал 1 будет использоваться для вывода var1=GPIO.input(0) # чтение состояния канала 0 GPIO.output(1, GPIO.HIGH) # установка логической единицы на канале 1 GPIO.cleanup() # сброс состояния выводов разъема GPIO.







2024 © gtavrl.ru.