Содержание
- 1. Настоящий настольный компьютер
- 2. Своё облачное хранилище
- 3. Музыкальный плеер
- 4. Превращаем старый телевизор в домашний медиацентр
- 5. Отопительная печь с беспроводным управлением
- 6. Домик для птиц с видеонаблюдением
- 7. Ламповые настольные часы на газоразрядных индикаторах
- 8. Робот-манипулятор
- 9. Квадрокоптер
- 10. Кормушка для птиц с Telegram-ботом для фотографий
- Идеи для проектов на Raspberry Pi для начинающих
- Идеи для проектов на Raspberry Pi среднего уровня
- Продвинутый уровень идей для проектов на Raspberry Pi
- Близнецы или Двойняшки: Внешние различия с Raspberry Pi 3B
- Быстрее, выше, сильнее или коротко о производительности
- Raspbian Buster и первый старт
- Несбывшиеся мечты, запуск с USB и новый EEPROM
- Deconz, Docker, Home Assistant в venv и другие ругательства
- Заключение
- Содержание
- Обзор плат Raspberry Pi
- Операционные системы
Raspberry Pi — это одноплатный компьютер размером не больше кредитной карты. Все его порты и компоненты компактно уложены, компьютер может питаться от USB, его можно носить в кармане, плюс стоит он намного дешевле, чем любой компьютер-моноблок.
Из минусов — у него нет собственного монитора (нужно подключать внешний), его хранилище ограничено картой памяти или USB-диском, и у него не самый шустрый процессор. Тем не менее на этой Raspberry можно сделать много прекрасных вещей. Вот несколько примеров.
1. Настоящий настольный компьютер
Сложность: 5/5.
Время: 5/5.
В Raspberry Pi можно вставить карточку с предустановленной операционной системой Raspbian и загрузить его как обыкновенный компьютер. Вы вряд ли сможете поиграть на нём в игрушки, но работать с документами, сидеть в интернете, слушать музыку и смотреть фильмы — без проблем. Также в базовый дистрибутив входит пакет офисных программ. И всё это на плате за 35 долларов!
Кроме самой платы вам будет нужна карта памяти, блок питания, монитор с HDMI-кабелем и мышка с клавиатурой. Всё остальное есть на самой плате: Wi-Fi, Bluetooth, сетевой порт и разъём для наушников.
2. Своё облачное хранилище
Сложность: 3/5.
Время: 2/5.
Зачем платить за облачные сервисы хранения данных, когда можно сделать свой? Если вы параноик и не хотите хранить личные фото на чужом сервере, то это — вполне ваш вариант. Тем более что размер хранилища и скорость загрузки зависят только от вас самих.
Настройка такого сервиса происходит в два этапа: сначала ставим Linux, например тот же Debian, а затем настраиваем удалённый доступ. В итоге своё облако можно приспособить для чего угодно: хранить почту, файлы, фото с отпуска, рабочие проекты для команды или фильмы, которые жалко удалять после просмотра.
Единственный минус — для бесперебойного доступа к файлам сервис должен работать круглосуточно.
Подробности: owncloud.org.
3. Музыкальный плеер
Сложность: 2/5.
Время: 3/5.
Если у вас есть несколько часов свободного времени, хорошие колонки и интернет, то вот что вы можете получить:
- стриминг музыки из Spotify, SoundCloud, Google Music, Apple Podcast;
- интернет-радио TuneIn, Dirble, AudioAddict, Soma FM;
- можно слушать музыку любых форматов с флешки и по домашней сети и раздавать её по Bluetooth.
Такой плеер подойдёт для фоновой музыки. Для меломанов и аудиофилов не подойдёт, потому что встроенный аудиочип на Raspberry даёт не самый чистый звук. Но можно подключить внешнюю карту!
Подробности: pimusicbox.com.
4. Превращаем старый телевизор в домашний медиацентр
Сложность: 1/5.
Время: 2/5.
Продолжение предыдущей темы про развлечения. С помощью того же софта можно превратить любой, даже самый старый телевизор в полноценный домашний медиацентр — достаточно подключить его по HDMI. Если телевизор настолько стар, что там есть только древние «тюльпаны» — поможет переходник.
Ставим Kodi, настраиваем картинку, подключаем к сети — и можно смотреть сериалы и стримы даже на ламповых телевизорах. А если добавить клавиатуру, то телек превращается в медиамонстра, который работает с любым видеоконтентом мира.
Подробности: kodi.tv.
5. Отопительная печь с беспроводным управлением
Сложность: 4/5.
Время: 5/5.
Умный дом — это не только погодные датчики и цветные лампы по комнатам. Как насчёт умного обогрева и реального огня? Один товарищ взял старую буржуйку, сделал недостающие детали и получил полностью автоматическую регулировку температуры с удалённым управлением через интернет.
Официальное предупреждение: это всё действительно работает, но требует инженерного образования и знания физики и термодинамики. Не нужно собирать такую систему и управлять открытым огнём из газового баллона, если вы первый раз в жизни держите в руках газовый клапан низкого давления.
Подробнее о проекте: raspberrypi.org/blog/wifi-controlled-pottery-kiln/.
6. Домик для птиц с видеонаблюдением
Сложность: 1/5.
Время: 2/5.
Орнитологи будут в восторге: можно наблюдать за птицами в любое время и даже делать стримы. Всё, что для этого нужно — картонная коробка, скотч, инфракрасные светодиоды и внешний модуль камеры. Птицам на самом деле всё равно, как выглядит скворечник, а вы получаете классные снимки в любое время.
Страница проекта: projects.raspberrypi.org/en/projects/infrared-bird-box.
7. Ламповые настольные часы на газоразрядных индикаторах
Сложность: 3/5.
Время: 4/5.
Крутой проект, который соединяет хай-тек и стимпанк. За первую часть отвечает Raspberry Pi, который управляет всеми лампами и синхронизирует время через интернет, за вторую — лампы Nixie. Выглядит дорого и винтажно, как и должен выглядеть настоящий гиковский продукт.
Если не нравится оранжевый свет, есть такие же лампы, но с фиолетовым свечением. Хотите впечатлить увлечённого технологиями человека — соберите для него такие часы.
Проект: mjoldfield.com/atelier/2012/08/ntp-nixie.html.
8. Робот-манипулятор
Сложность: 4/5.
Время: 4/5.
До Скайнета пока далеко, но сделать роботизированную руку теперь под силу каждому. Единственная сложность — почти все детали придётся печатать на 3D-принтере. После сборки можно двигать этой рукой во всех плоскостях, захватывать мелкие предметы и перекладывать их с места на место.
Если добавить ещё один манипулятор, то появится вторая рука, а если ещё два, то и ноги. Голову пока лучше не делать.
Проект: issuu.com/themagpi/docs/the_magpi_issue_1_final.
9. Квадрокоптер
Сложность: 4/5.
Время: 5/5.
Алексей из Ижевска сделал крафтовый квадрокоптер на Raspberry Pi. По сути коптер — это летающий сервер. Изначально задумка была такая: сделать квадрокоптер в виде саней Деда Мороза, который бы сам и под музыку развозил по офису подарки для сотрудников.
Внутри у него стоит Raspbian — адаптированный именно для этого железа вариант Linux. Можно ставить и другое, но работать будет не так стабильно. Камера тоже есть.
Проект: habr.com/ru/post/438496/.
10. Кормушка для птиц с Telegram-ботом для фотографий
Сложность: 3/5.
Время: 3/5.
У Антона Мальцева была идея: прилетает птичка в уличную кормушку — вжуууух — она оказывается на телефоне. Главная мысль — чтобы система автоматически обнаруживала всех прилетающих к кормушке, определяла, что это за птица, делала и выбирала лучшую фотографию, а потом выкладывала её куда-нибудь и вела статистику посещаемости.
Вот что получилось реализовать в итоге:
- всё работает на Raspberry Pi B+;
- настроена система сбора данных;
- есть отдельная нейронная сеть с обучением для распознавания птиц;
- интерфейс и чат-бот, который делает снимки по команде.
Проект: habr.com/ru/post/322520/.
Не будет преувеличением, если я назову Raspberry Pi революционным гаджетом. Когда он был впервые запущен в 2011-12 году, люди просто не могли поверить, что компьютер может быть доступен всего за 25 долларов.
Если вы купили Raspberry Pi и понятия не имеете, что с ним делать, я вас прикрою. Я собираюсь перечислить несколько классных проектов Raspberry Pi, за которыми вы можете начать следить в свободное время.
Эти идеи проекта Raspberry Pi не ограничиваются только самим Pi. Вы можете использовать их с подобными Raspberry Pi устройствами, такими как Orange Pi, Khadas и т. д.
25 крутых проектов для Raspberry Pi
Я перечислил эти проекты, разбив их по уровню сложности (начальный, средний и продвинутый). Некоторые из них требуют дополнительного оборудования и датчиков.
Конечно, стоит отметить, что легкость использования этих проектов будет напрямую зависеть от вашего опыта. Итак, давайте посмотрим на них.
Идеи для проектов на Raspberry Pi для начинающих
1. Медиа-сервер
Создание медиа-сервера с использованием Rasberry Pi является наиболее распространенным и, вероятно, самым простым проектом.
Чтобы узнать больше об этом применении, вы можете обратиться к официальной документации по использованию Kodi с Raspberry Pi (которая является одной из наиболее доступных программ для медиа-сервера).
Использовать Kodi на Raspberry Pi
2. Метеостанция
Если вы хороши в построении проектов с электронными компонентами, то создание метеостанции с использованием Raspberry Pi должно быть для вас увлекательным занятием.
Эта идея может показаться не самой простой для начала – но оказывается совсем не сложной, если вы внимательно изучите требования проекта.
Вы сможете собирать данные о погоде используя различные датчики в соответствии с вашими нуждами и пожеланиями.
Проект описан на официальном сайте Raspberry Pi, чтобы вы могли реализовать его самым простым спобом.
Ознакомиться с проектом метеостанции
3. Родительский детектор
Еще один проект с официального сайта Raspberry Pi. Этот проект использует минимальное аппаратное обеспечение для настройки детектора движения, который затем запускает видеозапись с использованием модуля камеры Raspberry Pi.
Вариантов использования масса. Если вы являетесь родителем, вы можете следить за своим ребенком, когда он входит в свою комнату. В любом случае этот проект также может пригодиться, чтобы следить за вашей входной дверью в качестве меры безопасности.
Вы можете найти все необходимые подробности на официальном сайте Raspberry Pi.
Узнать больше про родительский детектор
4. FM-радиостанция
Raspberry Pi — это недорогое устройство для создания FM-радиостанции. Предварительных условий у него может быть и немного, но его стоит изучить ради развлечения.
Обратите внимание, что возможно не стоит создавать помехи для местных частот FM. Вы можете найти все детали, чтобы настроить свой Raspberry Pi в качестве FM-радиостанции, пройдя по ссылке ниже.
Настроить FM-радио передатчик
5. Сервер для игры в Minecraft
Minecraft – довольно популярная игра. Однако, если вам нужен персональный сервер, вам, скорее всего, придется доплатить.
Но не беспокойтесь, вы можете использовать свой Raspberry Pi для создания локального сервера, создать свой собственный мир и весело провести время с семьей и друзьями.
Создать свой сервер для игры в Minecraft
6. Температурный журнал
Это кое-что интересное, что я нашел на официальном сайте, чтобы помочь вам узнать несколько вещей, например – как записать данные в файл и т. д.
Здесь вы будете записывать температуру, используя датчик.
Вам понадобиться использовать командную строку для контроля температуры вашего Raspberry Pi.
Настроить температурный журнал
7. Игровая ретро-консоль
Вы можете превратить Raspberry Pi в игровую консоль, просто установив ОС на SD-карту и перенеся на нее несколько файлов.
У нас также есть статья о том, как превратить ваш старый компьютер в игровую консоль для так называемого ретрогейминга, если вам интересно.
По ссылке ниже вы найдете ресурс, который поможет запустить вам подобный проект.
Запустить игровую ретро-консоль
8. Полноценный десктопный компьютер
Если вы не хотите вкладывать много ресурсов в создание ПК, вы можете легко использовать Raspberry Pi.
Технически, ваш Raspberry Pi станет сердцем вашего ПК, и вам всего лишь нужно добавить периферийные устройства (монитор, клавиатуру, мышь и т. д.), чтобы превратить его в ПК. При желании вы также можете создать специальный корпус для вашего нового ПК, впрочем, это совершенно необязательно.
Очевидно, что такой компьютер не будет достаточно мощным для всех видов задач – но он будет пригоден для использования.
Вы также можете изучить опыт использования Raspberry Pi 4 в качестве замены настольного компьютера на их официальном сайте. Ссылка ниже.
Raspberry Pi в качестве персонального компьютера
Идеи для проектов на Raspberry Pi среднего уровня
9. Создайте веб-сервер LAMP с помощью WordPress
Если вы занимаетесь веб-разработкой, вы можете попробовать на строить сервер LAMP (Linux + Apache + MySQL + PHP) и установить WordPress для создания веб-сайта.
Вы также можете сделать что-то еще с нуля, не устанавливая WordPress.
Вы сможете получить доступ к сайту на любом устройстве в той же сети, что и Raspberry Pi.
Создайте веб-сервер LAMP
10. Лазерная ловушка
Это похоже на концепцию родительского детектора, который использует датчик движения. В этом случае лазерный луч используется для обнаружения активности всякий раз, когда кто-то прерывает луч.
Вам просто нужно несколько вещей, чтобы настроить сигнализацию и завершить конструирование растяжки. Конечно, это простой проект с потенциально различными приложениями.
Сделать лазерную ловушку
11. Сервер печати
Что если вы сможете включить свой старый принтер для работы в сети, даже если у него нет встроенного Wi-Fi модуля?
В этом суть этого проекта. Вы сможете получить доступ к принтеру с нескольких устройств, используя сервер печати. Проверьте все детали, чтобы легко настроить его, ниже.
Настроить Raspberry Pi в качестве сервера печати
12. Камера Time Lapse съемки
Ищите дешевую камеру специально для замедленной съемки? В общем, вы можете сделать ее самостоятельно с помощью Raspberry Pi.
Вы можете использовать модуль камеры Pi или изучить другие варианты.
Сконструировать камеру Time Lapse
13. Music Box
Вы можете создать music box, управляемый кнопками, используя Raspberry Pi, чтобы прекрасно провести время со своими детьми или любителями музыки.
Когда вы нажимаете кнопку, он будет воспроизводить звук. Вы можете найти краткое описание проекта в видео выше, для более подробной информации нажмите на ссылку ниже.
Спроектировать Music Box
14. Google дом на Raspberry Pi
Если бы вы могли сконфигурировать и настроить Google Assistant на своем Raspberry Pi, вы бы превратили его в недорогую альтернативу Google Home DIY, верно?
К счастью, этого можно легко добиться имея в наличии Raspberry Pi и посмотрев видео выше.
15. Сконструировать Smart TV
Если вы знаете, как настроить медиасервер на Raspberry Pi (как предлагалось в первом пункте этой статьи), вы также можете это сделать.
С помощью Kodi (или аналогичной программы) вы можете создать свой собственный персональный умный телевизор, работающий на выбранном вами медиасервере.
Больше об умном телевизоре на базе Raspberry Pi
Вы можете добавить возможность управления жестами в любой из ваших проектов на Raspberry Pi, используя Flick Board.
Это может быть не самая дешевая фича, но это впечатляющий штрих для любого вашего проекта Raspberry Pi.
Добавить контроль жестов
Продвинутый уровень идей для проектов на Raspberry Pi
17. Тор маршрутизатор
Если вы человек, который хочет изучить способы повышения вашей личной цифровой конфиденциальности, вы можете начать с создания своего собственного локального маршрутизатора Tor.
Благодаря этому вы можете зашифровать свое интернет-соединение и оставаться анонимным при просмотре веб-страниц. Это просто что-то вроде VPN, но технически отличается.
Сконструировать маршрутизатор Тор
18. Голосовое управление светодиодами
Это довольно интересно. Я уже упоминал проект, в котором вы можете настроить Google Assistant на своем Raspberry Pi. Однако в этом случае вы сможете управлять светодиодами своим голосом.
На этот раз вам не понадобится помощник, все, что вам нужно, это голосовой набор Google AIY.
Этот проект был включен в список официальных проектов DIY, использующих Raspberry Pi, вы можете получить больше информации там.
Управлять светодиодами голосом
19. Wi-Fi усилитель
Если вы хотите увеличить радиус действия своей сети Wi-Fi, вам, возможно, придется выбрать премиальный гаджет, который может помочь вам в этом, или вы можете использовать Raspberry Pi, чтобы выполнить эту работу.
Да, это верно, вы можете создать усилитель Wi-Fi, просто используя свой Raspberry Pi.
Превратить ваш Raspberry Pi в усилитель Wi-Fi
20. VPN Сервер
Вам не нужно доверять провайдерам VPN, если вы можете создать свой собственный локальный сервер VPN. Хотя, это может быть довольно сложно сделать.
Так что, если вы готовы к некоторым трудностям, вы можете использовать свой Raspberry Pi, чтобы сделать частный VPN-сервер для вашего соединения. Узнайте больше об этом здесь:
Узнать про VPN сервер.
21. Автоматизация дома с использованием Raspberry Pi
Многие мощные проекты могут быть реализованы с использованием Raspberry Pi, один из таких проектов – «Автоматизированный дом».
Реализовать домашнюю автоматизацию достаточно дорого. Но если использовать Raspberry Pi для создания чего-то подобного, в конечном счете это потребует гораздо меньших инвестиций. Конечно, вам придется исследовать и улучшать этот проект, чтобы сделать его более надежным, но вы можете начать с основ.
Основы автоматизации дома
22. Локальный облачный сервер
Вы можете создать собственное облако с помощью Raspberry Pi. А также установить Nextcloud для защиты и хранения ваших данных.
Есть масса интересных вещей для исследований, когда у вас есть собственное облако, верно?
Настроить локальный облачный сервер
23. Портативное устройство для взлома
Позвольте мне прояснить одну вещь: я не призываю вас сделать что-то незаконное (как в художественных фильмах), создав портативное хакерское устройство.
Так что, просто для образовательных целей или тестирования, не стесняйтесь попробовать сделать собственное портативное устройство для взлома с помощью Raspberry Pi.
Создать портативный хакерский девайс
24. Умные Перчатки
Создание умных перчаток — это действительно крутой проект с Raspberry Pi. В студенческие годы я был свидетелем того, как старшие делают эту вещь, это было интересно.
Вы можете обратиться к официальному ресурсу для этого проекта и начать работу.
Сделать умные перчатки
25. Блокировщик рекламы
С Raspberry Pi вы можете легко внедрить сетевой блокировщик рекламы, чтобы вам не приходилось устанавливать блокировщики рекламы отдельно на устройствах или в браузерах.
Вам нужно установить блокировщик рекламы Pi-Hole и настроить его. Посмотрите видео выше, а затем посетите официальный ресурс по ссылке ниже.
Блокировать рекламу
Послесловие
Здесь я перечислил некоторые из самых интересных проектов, которые я мог найти, и которые могут вам пригодиться.
07 июля 2019, 08:22 Несколько последних недель после представления нового одноплатного компьютера Raspberry Pi 4 B, весь интернет бурлит обсуждениями – как долго мы этого ждали, и какой это прорыв по сравнением с предыдущим поколением Raspberry Pi 3B. Видеоблогеры, основная часть которых получила новый одноплатник до официальной даты выхода, сразу же выпустили обзоры, поющие дифирамбы новой “малинке”. Нечего и говорить о глобальном комьюнити, которое видя, как далеко ушли конкуренты Raspberry в мощностях процессоров и объемах памяти, вздохнули с облегчением. Но так ли все хорошо на самом деле?
Заказывая новую “малинку”, у меня не было определенного плана что с ней делать, но зная что “малинок много не бывает” и любой хоббист найдет ей за пару минут применений больше, чем пальцев на своих же руках и ногах, я не задумываясь заказал вот такой комплект:
- Raspberry Pi 4 (4 Gb RAM),
- официальный БП USB-C,
- официальный бело-красный пластиковый корпус.
И тут же я столкнулся с первой проблемой – цена. Комплект c доставкой обошелся мне чуть больше ста! долларов (100 USD). И если прибавить сюда еще и microSD карту хорошего качества класса A2, как рекомендует, например, официальный сайт Home Assistant, то мы с легкостью подойдем к отметке в 150 долларов. Накинем Z-wave и Zigbee стики и вот уже и “колобок” (Athom Homey) не кажется такой уж и дорогой покупкой. Не далеко с таким ценником и до Intel Nuc, а если рассматривать б/у варианты, то можно собрать намного более производительный центр умного дома на базе неттопа или barebone компьютера. Но все мы знаем, что огромное комьюнити пользователей и база знаний всегда идет бесплатно с покупкой любой Raspberry Pi, поэтому заострять внимание на цене не считаю нужным. “Малину” никогда не покупали за соотношение цена/производительность, плюс есть ведь и более дешевые версии четвертой raspberry с меньшим объемом памяти – 1 и 2 Гб соответственно, они все ещё находятся в бюджетной категории.
Итак, пришел мой заказ, я не претендую на полноценный обзор, но хотел бы отметить некоторые свои наблюдения, которые, надеюсь, будут полезны многим на этом портале. Все они будут через ту или иную призму касаться “умного дома”. Обзор затронет лишь часть того, о чем хотелось бы написать, поэтому подписывайтесь. Всё заслуживающее внимание широкой аудитории будет периодически появляться в моем блоге. Не забудьте поставить лайк или оставить комментарий, чтоб мотивировать автора на создание интересующего вас контента.
Близнецы или Двойняшки: Внешние различия с Raspberry Pi 3B
На сайте уже есть полная спецификация продукта – с ней можно познакомиться здесь. Основными внешними различиями являются наличие двух microHDMI портов вместо одного полноразмерного HDMI порта, изменение в очередности расположения портов USB (два из них теперь USB 3.0) и Ethernet, а также расположения модуля RAM на верхней стороне платы – на Rpi 3B он был расположен снизу. Еще одно важное изменение – порт USB-C для питания. Все остальное, включая GPIO, разъёмы для SD карт, дисплея, камеры и PoE расположены в тех же местах и идентичны таким же на плате предыдущего поколения. Это дает нам возможность использовать аксессуары от предыдущих моделей Raspberry. К сожалению, использование корпусов от Rpi 3 не получиться без модификаций, из-за разного расположения разъёмов.
Новый источник питания выглядит неплохо, имеет разъём USB-C и выдает аж целых 3 (три) Ампера при 5.1 Вольтах, для питания нового мощного чипа. Надеюсь, что дополнительная мощность поможет и беспроблемно питать все стики для связи с устройствами умного дома. Использования старых 2.5А БП возможно, но не рекомендовано при наличии какой-либо периферии (мышь, клавиатура, монитор, USB), Raspberry даже выпустили официальный адаптер microUSB to USB-C.
Быстрее, выше, сильнее или коротко о производительности
Вы уже наверняка знаете, что основные изменения коснулись процессора и графического чипа, а также памяти – ее стало не только больше, но она еще и стала быстрее. Сравнительные таблицы пестрят на многих сайтах. Я тоже не удержался от того, чтоб не создать еще одну и подчерктнуть основные изменения в Rpi 4, по сравнению с предшественницей:
Raspberry Pi 4 B | Raspberry Pi 3 B |
CPU | |
GPU | |
RAM | |
LAN | |
Wi-Fi | |
BLE | |
USB | |
Video Out |
Но вот что действительно очень важно, так это новая высокоскоростная шина обмена данных, за счет нее удалось разделить потоки от USB и Ethernet, чтобы полностью использовать потенциал этих интерфейсов, а также увеличить скорость слота microSD. Я решил сам сделать несколько тестов, вот их результаты:
Тест |
Стоит сразу отметить, что в “малины” были вставлены разные типы microSD карт, но даже с погрешностью на это, разница в скорости чтения колоссальная. Что бросилось мне в глаза, так это скорость upload, думаю здесь проблема в настройках сети, а уж никак не в новой Raspberry. Я также протестировал скорость чтения и записи на внешний SSD, подключенный по USB 3.0 к Raspberry 4. Результаты 171 MB/s на запись и 631 MB/s на чтение. Я предполагал, что скорость чтения Raspberry Pi 4 с USB будет больше, чем с microSD карты, но оказалось что они сопоставимы – здесь, вероятно, влияет синтетика теста, а также возможное использования буфера “малиной”.
Множество сайтов сделали сравнения скорости процессора, производительности, температуры и энергопотребления новой Raspberry Pi 4 B. Я не буду повторяться, а приведу ссылки на официальный benchmark от Raspberry, обзор и сравнение от Tom’s Hardware, а также сравнительную таблицу от Core Electronics.
Raspbian Buster и первый старт
Вместе с новой начинкой мы также получили и новую версию операционной системы – Raspbian Buster. Я не буду заострять внимание на различиях с предыдущей версией Stretch, о них подробно можно почитать здесь. Скажу лишь, что изменения коснулись в основном безопасности, а также чуть изменился интерфейс – его сделали более современным, а именно, убрали красивости. Основное же различие лежит в использовании нового open-source драйвера Open GL совместно с аппаратным ускорением для использования всех возможностей новой четвертой “малины”, портировать его в старые версии Raspbian посчитали накладным, и поэтому они не поддерживают новую Raspberry Pi 4. Именно здесь и кроется корень многих проблем: любая новая система требует времени разработчиков на адаптацию их программных продуктов для работы с ней. Более того Raspbian Buster вышел даже раньше официального релиза своего прототипа Debian Buster, официальный релиз которого назначен на 6 июля 2019 года. Соответственно, не стоит ждать полной поддержки всего и вся с первых же дней. В этом я смог убедиться и сам, но об этом немного позже.
Я скачал образ Raspbian Buster Desktop c сайта Raspberry. Записал с помощью Balena Etcher на SD карту, вставил в малинку, подключил ее к монитору и питанию, и загрузка началась. Подводных камней и проблем не было, несмотря на пугающую надпись с официального сайта:
“If your Raspberry Pi 4 will not boot, it is possible that the SPI EEPROM has become corrupted.”
После загрузки система сразу предложила скачать обновления, что я сразу и подтвердил. Честно сказать, я никогда не использовал продукты Raspberry в режиме ПК, а в основном только удаленно в headless.
Удивила быстрота работы и отзывчивость мыши, но только до тех пор, пока я не активировал 4k60p вывод на монитор, после этого все стало хоть немного, но притормаживать. Открыл YouTube в браузере Chromium и запустил видео 4k60p, к сожалению, даже выбрать 4K качество было невозможно, а при 1080p видео cильно лагало, лишь 720p было смотрибельным. Хоть и разочарование, но не сильное, все-таки я покупал Raspberry не для просмотра видео на YouTube. После непродолжительного знакомства с интерфейсом я активировал в настройках ssh и vnc, чтобы перейти к обычному способу общения с одноплатником – через терминал.
Если у вас нет клавиатуры, мыши и монитора, для того чтобы сделать первую настройку и включит ssh, вы можете воспользоваться вот этой инструкцией с портала.
Несбывшиеся мечты, запуск с USB и новый EEPROM
Отсутствие m.2 или eMMC слота на Raspberry Pi 4 компенсируется наличием двух портов USB 3.0. Увеличение скорости в почти 10 раз позволяет нам наконец-то эффективно использовать внешние USB диски. И вот я уже подготовился установить всю систему на внешний SSD, но не тут было, оказывается пока загрузка с USB не поддерживается. Вот что пишут на официальном сайте самого Raspberry:
” PXE and USB Boot. Support for these additional bootmodes will be added in the future via optional bootloader updates. The current schedule is to release PXE boot first, then USB boot. “
В данный момент (начало июля 2019 года) запуск с USB не поддерживается, эта функция будет доступна даже позже запуска по сети (PXE boot). К счастью, существует возможность перенести всю root область на USB диск, оставив только небольшую загрузочную часть на флэшке. Инструкция о том, как это сделать, может с легкостью стать темой отдельной статьи, пока же вы можете воспользоваться инструкцией от Tom’s Hardware здесь.
Это приводит нас к еще одному серьезному изменению в архитектуре нового одноплатника, по сравнению с предыдущей моделью. У четвертой “малины” имеется SPI EEPROM (4MBits/512KB) – не что иное, как небольшой чип, содержащий код для загрузки системы. Он, по сути, заменяет bootcode.bin, который ранее находился в boot разделе SD карты. EEPROM является перезаписываемым, поэтому новые функции могут быть добавлены в следующих прошивках как, например, столь вожделенный нами USB Boot. Более подробно об этом можно прочитать здесь.
Deconz, Docker, Home Assistant в venv и другие ругательства
Переходим в терминал и начинаем проверять совместимость наших любимых программ для умного дома. Начнем с Deconz. Образ под Buster на сайте dresden elektronik пока не доступен, что и следовало ожидать. Что же, пробуем установить Deconz из командной строки, на сайте сразу видим, что ни Buster, ни Raspberry Pi 4 не поддерживаются. Попытка не пытка, следуем инструкции с сайта:
sudo gpasswd -a pi dialout wget -O - http://phoscon.de/apt/deconz.pub.key | sudo apt-key add - sudo sh -c "echo 'deb [arch=amd64] http://phoscon.de/apt/deconz $(lsb_release -cs) main' > /etc/apt/sources.list.d/deconz.list" sudo apt update sudo apt install deconz
Похожее на положительный исход, устанавливается deconz 2.05.65. Проверку стабильности релиза делать не стал, но на github открыта issue и есть информация, что официальная поддержка Buster-a появиться только в deconz 2.05.67. Так что, судя по всему, без багов не обойтись. Подождем.
Теперь переходим к Home Assistant. Образа Hass.io для Raspberry Pi 4 пока нет – ожидаемо. Зато новый образ Hassbian основан на Debian Buster, но Debian это вовсе не Raspbian, подводных камней не миновать. Вдобавок такой способ установки HA один из самых непопулярных, пробовать его не стал. Тем более на github открыт целый раздел, где собирают все issue этого релиза.
Остается любимый народом способ установки, в python virtual environment по статьям Охотника. Четко следуем инструкциям, но результат плачевен – установка прервана с ошибкой. На закуску Docker, но и здесь все не просто. Стандартная рекомендованная процедура установки не проходит, отсутствуют пакет в репозиториях. К счастью, есть уже способ обхода, благодаря всему тому-же огромному комьюнити пользователей. Команда прилагается:
sudo curl -sL get.docker.com | sed 's/9)/10)/' | sh
Docker установлен, а это спасение. Для теста я установил portainer, где уже из графического интерфейса можно будет продолжать установку. В контейнерах можно поднять все нужные нам программы, включая Home Assistant, Homebridge, Nore-Red, Deconz и т.д. При таком использовании “малины” как раз и начинает иметь смысл иметь дополнительную оперативную память.
Заключение
Если подвести краткий итог, то однозначно можно сказать, что Raspberry Pi 4 – это серьезный upgrade, по сравнению с предшественником. Увелечение скорости USB, скоростной гигабитный Ethernet порт, а также новый мощный процессор и графический чип делают решение о покупке достаточно простым.
При сравнении с предыдущей версией Raspberry Pi3 B , у нас имеется огромный запас по ресурсам и мы можем нагрузить наш сервер умного дома дополнительными задачами, например, такими как распознование лиц.
К сожалению, в данный момент мы также видим и отсутствие полного спектра поддерживаемого программного обеспечения, нет поддержки загрузки с USB и SSD, а также всеобщий ажиотаж и отсутствие платы в продаже во многих магазинах. Из этого всего можно сделать очевидный выбор – с покупкой платы пока стоит повременить.
Если Вы все-таки решили приобрести Raspberry Pi 4 B, то сможете это сделать очень выгодно, достаточно перейти по ссылке.
Содержание
- Обзор
- Операционные системы
- Установка Raspbian
- Работа с GPIO
- Программирование GPIO
- Часто Задаваемые вопросы FAQ
Обзор плат Raspberry Pi
Raspberry Pi – это миниатюрный одноплатный компьютер, который с лёгкостью поместится на ладони взрослого человека. Несмотря на свои скромные размеры, плата имеет высокую производительность, что позволяет ей выйти на один уровень со стационарными ПК. Изначально Raspberry Pi была разработана, как учебное пособие по информатике. Но сама идея оказалась настолько удачной, что за несколько лет мини-компьютер стал популярен в очень широких кругах. С течением времени Raspberry Pi пережила несколько модификаций, каждая из которых отличалась от предшественника каким-либо параметром. Такой подход позволил регулировать стоимость изделия в зависимости от потребностей пользователя, что также положительно сказалось на популярности устройства. Вся линейка Raspberry Pi применяет процессоры с АРМ-архитектурой, которая зарекомендовала себя с лучшей стороны. На рисунке №1 показан внешний вид одной из популярных плат Raspberry Pi В+.
Рисунок №1 – обзор составных элементов Raspberry Pi
На сегодняшний день (период 2012-2019гг.) существует 11 разновидностей Raspberry Pi. Последние версии оснащены беспроводными WiFi и Bluetooth модулями, расширяющими границы применения мини-пк в области Ethernet-технологий. Ниже приведена сравнительная таблица, в которой отражены особенности каждой модификации с указанием некоторых технических данных.
Как видно из вышеприведенной таблицы, даже самая младшая модель в линейке имеет вполне серьёзные характеристики, учитывая то, что это одноплатный компьютер размером чуть больше кредитной карты.
На рисунке №2 изображена последняя на момент написания статьи модификация Raspberry Pi 4В, запущенная в продажу в июне 2019г. Она оснащена дополнительным графическим процессором VideoCore VI (OpenGL ES 3.x), а также аппаратным декодером 4Kp60 для воспроизведения HEVC видео. Два порта microHDMI с возможностью пропускать сигнал до 4К, позволяют подключить одновременно два монитора.
Рисунок №2 – внешний вид Raspberry Pi 4В
Основной отличительной чертой Raspberry Pi от обычных компьютеров, является наличие программируемых портов ввода-вывода GPIO. С помощью них можно управлять различными устройствами и принимать телеметрию с различного рода датчиков.
Где приобрести?
Купить Raspberry Pi вы можете в нашем магазине с доставкой по всей России.
Операционные системы
Хоть Raspberry Pi внешне может напомнить нам Arduino, он всё-таки использует кардинально другой метод функционирования. Данная плата, как и обычный ПК, работает под управлением одной из специализированных операционных систем. В зависимости от области применения или личных симпатий, каждый может выбрать для себя свою. Ниже приведён перечень наиболее популярных «операционок» для Raspberry Pi с их кратким описанием.
Raspbian – данная операционная система в 2015 году была представлена как основная для Raspberry Pi. Она по максимуму оптимизирована для процессоров с АРМ-архитектурой и достаточно активно продолжает развиваться. Основой операционной системы является Debian GNU/Linux. Среда рабочего стола состоит из LXDE (среда для UNIX и других POSIX-совместимых систем типа Linux и BSD), а также менеджера окон Openbox (бесплатный менеджер для X Window System). В состав дистрибутива входят: программа компьютерной алгебры Mathematica; модифицированная версия Minecraft PI; урезанная версия Chrome.
Debian – операционная система с открытым исходным кодом. В состав Debian входит более 59000 пакетов уже скомпилированного ПО. Система использует ядро Linux или FreeBSD. В стандартный дистрибутив включены: среда рабочего стола GNOME с набором наиболее популярных программ, таких как Firefox, LibreOffice, Evolution, и прочий набор для работы с мультимедиа. Также есть возможность установки образов с используемыми средами рабочих столов KDE, Xfce, LXDE, MATE и Cinnamon.
Ubuntu – система основана на Debian GNU/Linux. По популярности Ubuntu занимает первое место среди дистрибутивов Linux, предназначенных для web-серверов. В состав дистрибутива входят: программа для просмотра Интернет; офисный пакет, программы для коммуникации и т.д.
Fedora – эта операционная система основана на дистрибутиве Linux от известной фирмы Red Hat. В состав дистрибутива входят LibreOffice, Mozilla Firefox, а также другое ПО, которое можно дополнительно установить через Цент Приложений GNOME.
Arch Linux – это свободно распространяемый дистрибутив GNU/Linux общего назначения. Особенностью данной системы является отсутствие графического установщика, что может изрядно потренировать навыки ярых исследователей Linux.
Gentoo Linux – один из популярных дистрибутивов GNU/Linux с гибкой технологией управления пакетами. В системе предусмотрена возможность максимальной оптимизации под конкретное аппаратное решение. Алгоритм управления пакетами даёт возможность легко реализовать как рабочую станцию, так и сервер.
RISC OS – операционная система специально разрабатывалась для процессоров с архитектурой АRМ. Особенности ядра RISC OS позволяют системе производить ускоренный запуск за счёт хранения данных в ПЗУ. Такой подход также помогает защитить данные при различного рода сбоях и влияния вредоносного ПО.
OpenELEC – это программный комплекс для организации домашнего кинотеатра под управлением GNU/Linux.
OSMC – ещё один комплекс для реализации домашнего кинотеатра.
В сети Интернет, помимо перечисленных операционных систем, можно найти ещё множество модификаций для самых различных предназначений. Но так как Raspbian является основной средой для Raspberry Pi, то в дальнейшем будем опираться именно на неё.
Установка Raspbian
Для установки операционной системы необходимо подключить к плате Raspberry Pi минимальный набор периферии, а именно: монитор, клавиатуру и мышь. Далее, необходима SD-карта с записанным образом Raspbian. Именно с неё и будет производится установка.
Для того, чтобы записать образ на карту памяти, её необходимо вставить в компьютер и отформатировать в системе FAT32. Сделать это можно как стандартными средствами Windows, так и сторонними программами, например – SD Memory Card Formatter. После чего, скачиваем дистрибутив операционной системы с официального сайта Raspberry. Для неопытных пользователей, доступна упрощённая версия установщика NOOBS. По окончании загрузки, архив необходимо распаковать в корень карты памяти. На этом подготовительный этап окончен.
Вставляем карту памяти в плату Raspberry Pi (клавиатура, мышь и монитор уже подключены) и подаём питание через разъём micro-USB. Начинается установка Raspbian, которая длиться порядка 10 минут. В это время от пользователя практически ничего не требуется кроме самых простых и интуитивно понятных действий, таких как выбор языка, ввод пароля и т.п. На завершающем этапе появиться меню, в котором можно выбрать тип пользовательского интерфейса (консольный или графический). Выбираем графический и завершаем установку нажатием кнопки Finish. Система попросит перезагрузиться и как следствие запуститься уже в более привлекательном виде.
Работа с GPIO
Как уже говорилось ранее, основной отличительной черной Raspberry Pi от обычного ПК, является наличие на плате портов общего назначения GPIO (General-purpose input/output). Пользователю доступна возможность управления этими выводами, а это значит, что к Raspberry Pi можно подключать дисплеи, кнопки, датчики, реле и прочие электронные модули, которыми можно манипулировать на своё усмотрение.
Внешне GPIO выполнен в виде двухрядной штыревой колодки с шагом 2,54мм, которая расположена на краю платы. Ранние модели, такие как В и А содержат 26 выводов, а более современные – 40. На рисунке №3 показан внешний вид портов общего назначения для платы Raspberry Pi 3В+ с указанием нумерации выводов.
Рисунок №3 – выводы GPIO
Но для того, чтобы полноценно использовать GPIO, знать их нумерацию недостаточно. Необходимо точно понимать где расположен тот или иной вывод, как он называется и за что он отвечает. На рисунке №4 приведена полная распиновка разъёмов GPIO для различных модификаций Raspberry Pi.
Рисунок №4 – распиновка GPIO в платах Raspberry Pi
Как видно из вышеприведенного рисунка, на колодке помимо самих GPIO выведены штырьки с напряжениями 3,3V, 5V, а также выводы GND. Некоторые GPIO имеют альтернативные функции, назначение которых указано в синих блоках. К тому же нельзя нарушать нагрузочные способности порта, чтобы не вывести Raspberry Pi из строя. Следует помнить, что GPIO работает с напряжением 3,3V и максимальным током нагрузки 50mA на один вывод. Это означает, что любое превышение указанных параметров негативно скажется на работоспособности платы, поэтому лучше использовать гальваническую развязку между GPIO и внешним исполнительным устройством. То же самое относится и ко входным цепям, к которым применяются резистивные делители и всевозможные преобразователи уровней. На рисунке №5 показан пример правильного и неправильного подключения базовых элементов.
Рисунок №5 – примеры правильного и неправильного подключения
В левой части рисунка прямое подключение светодиода приведёт к превышению максимально допустимого тока 50mA. Это, в свою очередь, выведет GPIO10 из строя. В правой части рисунка добавлен ограничительный резистор, который будет удерживать ток в допустимых рамках. Что касается кнопки, то может возникнуть ситуация, когда GPIO10 ошибочно будет сконфигурирован на выход, и её нажатие приведёт к прямому соединению 3,3V и GND. При добавлении резисторов R2 и R3 все выводы будут гарантировано защищены от перегрузок. Исходя из вышеизложенного можно сделать вывод, что мелочится в элементах защиты не стоит, так как работоспособность Raspberry Pi гораздо важнее кучки дешёвых резисторов.
Программирование GPIO
Операционная система Raspbian предлагает пользователям удобный модуль для программного управления GPIO. Называется он RPi.GPIO и является стандартным приложением. Перед его применением, модуль рекомендуется обновить. Сделать это можно набрав в консоли следующие строки:
sudo apt-get update sudo apt-get install python-rpi.gpio
Чтобы иметь практическое представление о работе с GPIO, создадим небольшой проект, который заставит Raspberry Pi мигать светодиодом один раз в секунду, а при нажатии на кнопку увеличивать частоту мигания в 5 раз. Схема будущего проекта показана на рисунке №6.
Рисунок №6 – схема управления светодиодом
За управление светодиодом будет отвечать GPIO4, а за чтение состояния кнопки GPIO17.
По классике, программы для Raspberry Pi пишутся на скриптовом языке программирования Python. Особенность его в том, что для запуска программы не требуется компилятор. Скрипт запускается и начинает работу сразу, но его необходимо сохранить в файл с последующей загрузкой в плату. Для этого открываем терминал и прописываем следующую строку:
nano /home/pi/led_key_test.py
Тем самым мы создаём файл «led_key_test.py» в директории «/home/pi». Как следствие откроется редактор, в который необходимо написать нижеследующий код.
#!/usr/bin/env python # -*- coding: utf-8 -*- # Подключение библиотек для работы с GPIO и организации задержек по времени import time import RPi.GPIO as GPIO # Определение выводов GPIO, к которым подключены светодиод и кнопка LED = 4 KEY = 17 # Сброс портов (все выводы настраиваются на вход - INPUT) GPIO.cleanup() # Режим нумерации пинов - по названию (не по порядковому номеру на колодке) GPIO.setmode(GPIO.BCM) # Настройка пина LED на выход (OUTPUT) GPIO.setup(LED, GPIO.OUT) # Установка логического (0) на выводе LED GPIO.output(LED, GPIO.LOW) # Настройка пина KEY на вход (INPUT) GPIO.setup(KEY, GPIO.IN) # Вывод приветствия на экран print 'Hello Raspberry Pi' # Проверка на прерывание программы по нажатию (CTRL+C) на клавиатуре try: # Бесконечный цикл while True: # Если кнопка нажата (на пине KEY логический 0) if GPIO.input(KEY) == False: # Выставляем задержку 0,1 сек. и выводим сообщение timeout = 0.1 print 'Key is pressed.' else: # иначе задержка - 0,5 сек. timeout = 0.5 # Включаем светодиод GPIO.output(LED, GPIO.HIGH) # Задержка time.sleep(timeout) # Гасим светодиод GPIO.output(LED, GPIO.LOW) time.sleep(timeout) # Если CTRL+C была нажата – сбрасываем порт и завершаем выполнение программы except KeyboardInterrupt: GPIO.cleanup()
Ещё одной немаловажной особенностью программы Python является строгое соблюдение отступов (табуляций) при написании программ. Учитывайте это правило при создании своего кода.
Итак, переходим к последнему этапу. Чтобы выйти из редактора жмём CTRL+X и сохраняем программу нажатием «у» + ENTER. Осталось только сделать скрипт исполняемым. Для этого вводим в терминале следующие строки:
chmod +x /home/pi/led_key_test.py /home/pi/led_key_test.py
Видим на экране приветствие и мигающий 1 раз в секунду светодиод. Теперь проверяем работоспособность кнопки, и если всё сделано правильно, то при её нажатии частота мигания возрастёт и возвратиться к прежней при её отпускании.
Часто задаваемые вопросы (FAQ)
Вопрос: Какие виды внешних устройств можно подключить к Raspberry Pi по Bluetooth-каналу? Ответ: В этом плане нет особых ограничений. Например, такие устройства, как колонки, мышь и клавиатура, с лёгкостью могут быть подключены к плате. Метод сопряжения зависит от операционной системы, которая установлена Raspberry Pi.Вопрос: Какой на Raspberry Pi установлен root-пароль по умолчанию? Ответ: Всё зависит от операционной системы. К примеру, для Raspbian, паролем будет «raspberry».Вопрос: Можно ли применить Raspberry Pi для управления 3D-принтером? Ответ: По большому счёту, применить Raspberry Pi для управления 3D-принтером возможно, но не слишком удобно. Дело в том, что стандартные операционные системы, предназначенные для Raspberry Pi, не способны обеспечить RealTime-режим, необходимый для чёткой работы принтера. Другой преградой является недостаточное количество GPIO для подключения всей необходимой периферии без применения специальных плат расширения.Вопрос: Как можно установить Apache, PHP, MySQL на Raspberry Pi? Ответ: Этом можно сделать стандартными Linux-командами:
-
sudo apt-get install apache2 php5 libapache2-mod-php5
-
sudo apt-get install php5-mysqlnd
-
sudo apt-get install phpMyAdmin
ли со статьей или есть что добавить?