5 способов полезного использования Raspberry Pi. Часть третья

    Привет, Хабр.

    Во второй части были рассмотрены 5 способов использования Raspberry Pi. И как оказывается, этот микрокомпьютер способен ещё на большее. Сейчас мы рассмотрим еще 5, надеюсь, не менее интересных возможностей Raspberry Pi.



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

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

    image

    Как нетрудно видеть, из современных моделей наиболее быстрыми являются Raspberry Pi 3 B+ и самая последняя версия Raspberry Pi 4. Недостаток Pi4 лишь в том, что она имеет более редкий разъем Micro HDMI, модель 3B+ в этом плане более универсальна. Если нужна ультра-компактная модель, можно смотреть в сторону Raspberry Pi Zero W, но по большому счету, я бы её не рекомендовал. Во-первых, как можно видеть из тестов, она заметно медленнее, во-вторых, Zero W имеет (опять!) другой видео разъем (Mini HDMI), не имеет Ethernet и требует USB-переходника для подключения клавиатуры или мыши. Zero W стоит брать лишь в том случае, если вы точно знаете зачем вам ультракомпактная модель — обычная версия (Pi 3B+ или Pi 4) является и более быстрой и более универсальной.

    Кстати, если нужен ультракомпактный микро-ПК, можно посмотреть в сторону Nano Pi, которые бывают в виде вполне интересных моделей, вроде таких:



    А теперь, мы продолжим. Итак, 5 способов использования Raspberry Pi.

    1. Информационный киоск



    Фото с сайта newscrewdriver.com/2019/08/10/raspberry-pi-web-kiosk-boots-faster-on-raspbian-than-ubuntu-core

    Последние версии OS Raspbian имеют вполне современный браузер Chromium, способный корректно отображать даже сложные web-страницы. Так что если нужно отображать на большом экране тикеты из Jira, котировки акций вашей компании, расписание поездов или хотя бы прогноз погоды, Raspberry Pi вполне справится с такой задачей.

    Это достаточно просто и не требует никакого программирования, нужно лишь запустить Chromium в kiosk-режиме, спрятать курсор мыши и отключить скринсейвер.

    Для интересующихся, пара туториалов:


    2. Шлюз LoRaWAN




    Если вам нужна беспроводная сеть LoRaWAN для приема данных через радиомодемы LoRa с низким электропотреблением, сделать её можно на базе Raspberry Pi. Существуют варианты разных ценовых категорий, одноканальные шлюзы дешевле, 8-канальные дороже. Примерная цена вопроса от 50$ до 500$ в зависимости от «навороченности» шлюза.

    Подробное изучение LoRa выходит за рамки этого текста, материалы для более подробного изучения:


    3. Интернет-радио и интернет-ТВ




    Тема воспроизведения звука на Raspberry Pi чрезвычайно обширна — к устройству можно подключить и китайскую USB-звуковую карту за 3.5$, и HiFi-shield с позолоченными разъемами за 35$, и плату с динамиком, как показано на фото выше. Несложно найти и платы с оптическим выходом, что позволит добавить даже к старой аудиосистеме современные «сетевые» функции.

    Что касается софта, то вариантов тоже много. Можно захардкодить и воспроизводить лишь одну интернет-радиостанцию, сделав подобие «радиоточки» для любимой бабушки, можно добавить ЖК-дисплей, кнопки и пр. Имеющие подписку, могут сделать воспроизведение из Spotify.

    Желающие могут посмотреть следующие туториалы:


    Что касается IP-TV, здесь рекомендуют использовать Kodi — софт, специально заточенный под использование в виде медиацентра. Я лично не пробовал настраивать IP-TV, да и платной подписки у меня нет, но для тех например, кто живет заграницей но хочет смотреть русскоязычное ТВ, это может быть актуально.

    Желающие могут обратиться к туториалам:


    Также к Raspberry Pi можно можно подключить ИК-приемник, что позволит использовать пульт ДУ.

    4. FM-трансмиттер



    Фото с сайта circuitdigest.com/microcontroller-projects/raspberry-pi-fm-transmitter

    Не многие знают, но изменяя программно частоту PLL, на Raspberry Pi можно безо всякого дополнительного «железа» передавать радиосигналы в диапазоне до 500МГц — достаточно просто подсоединить к пину кусок провода, как показано на фото, и запустить программу. Разумеется, HiFi-качества здесь не будет, да и выходная мощность всего лишь около 10мВт, но для тестирования каких-либо радиоустройств или просто для розыгрыша друзей или соседей, это вполне может пригодиться. Мощности в 10мВт хватает, чтобы воспроизводить музыку на FM-радио в пределах комнаты.

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

    5. Полетный контроллер для дрона




    Следующий проект для Raspberry Pi не менее интересен. Многим наверное известны контроллеры для мультикоптеров, такие как MultiWii, Arducopter или DJI. Аналогичный контроллер может быть сделан и на базе Raspberry Pi. Проект NAVIO2 представляет собой специальный шилд, способный управлять регуляторами моторов и имеющий на борту необходимые сенсоры (акселерометр, барометр, GPS и пр).

    Сложно сказать, насколько такая связка лучше «обычных» Arducopter/Pixhawk, но для ряда задач идея может быть достаточно перспективной. Во-первых, управлять или передавать телеметрию (или даже изображение) с такого коптера можно через 3G/4G-модем, что заметно увеличивает дальность линка. Во-вторых, на Raspberry Pi могут работать достаточно сложные алгоритмы, типа фильтра Калмана или какой-то другой математики. Я лично этот контроллер не пробовал, так что более подробно сказать не могу, желающие могут поискать видео полетов в Youtube.

    Заключение


    Надеюсь, читатели нашли для себя какие-либо полезные идеи.
    Это была последняя часть, вторая и первая части доступны по ссылкам.

    Всем удачных экспериментов.
    Поделиться публикацией
    AdBlock похитил этот баннер, но баннеры не зубы — отрастут

    Подробнее
    Реклама

    Комментарии 58

      +3

      По поводу киоска. Я попробовал воспользоваться приведенными в статье ссылками. И вообще той информацией, что есть в интернете. В общем, сказать, что я поел говна — ничего не сказать. Информация фрагментарная, противоречивая, автоматизации никакой не предлагается. В общем, DIY во всей красе. В моих планах в ближайшее время систематизировать свой опыт и предложить свои мысли как повод к дискуссии — какой же всё-таки правильный подход к построению киоска на ПИшке.


      Какие ещё варианты использования распберри остались за кадром.


      1. Тонкий клиент для rdp. Есть опасения, что может тупо не хватить быстродействия, но в остальном — почему нет. А если изобрести способ удобного крепежа к монитору...


      2. Принт-сервер для дешманских принтеров, которые не умеют в wi-fi / ethernet


      3. Вычислительные фермы. Вроде https://turingpi.com/ Но здесь надо точно считать экономику. Т.к. наверняка, что в приведенной вычислительной мощности распберри хорош, но вот в абсолютной…



      P.s.


      . Хотя уже не уверен, найдется ли еще 5 более-менее необычных проектов, посмотрим.

      Ну, и совершенно идиотский вопрос — дробить статью было обязательно? Плюсики поставил, но удобнее было бы все прочитать одним текстом, а не фрагментами.

        +2
        Запускали тонкий клиент RDP еще на самой первой версии, до сих пор работают. Вполне подходит для простой работы сотрудников, которым необходима только одна программа в рдп сессии.
        Так же, в одном диллерском центре видел как оптимизировали под видеоконтент с рекламой и предложениями — вполне себе production решение — все rpi подключаются через опенвпн и за ночь выкачивают необходимый контент, днем показывают FullHD.
          +2
          Берем BuildRoot и собираем рутфс, кроскомпилим Qt поверх eglfs собираем Qtишный пример браузера — имеем загрузку 4-5сек, хромиум поверх eglfs без всяких иксов с возможностью прокидывать сигналы и мигать диодами через GPIO и все это на 64метровой карточке
            0

            Осталось написать годный туториал ;)


            / и не забыть, что нужно каким-то образом еще предусмотреть возможность обновления распберри по воздуху, не через замену SD /

              0
              В буилдрут есть дефконфиг под малину. Ставим галочку напротив Qt и меняем systemV на systemd, что бы грузилось быстрее. Ну и не собираем ядро, а переписываем готовое из малиногита. На туториал там явно не тянет)
              0
              Делали подобное, правда, на iMX6, 4-5 секунд получить не удалось, даже голый линукс без всего грузится чуть дольше. Чтобы запустить хромиум под Qt, требовалось в районе 20 секунд. У малины с этим настолько лучше?
                +1
                С нормальной карточки ситемди до голой консоли 4-5 сек. грузит. Я запускаю хромиум с простейшей локальной страничкой типа заставки сразу после инициализации локалфс, кидаю системд нотифи, по которой поднимается сеть и после этого гружу уже целевую страничку. Через 5-6 сек появляется заставка, а целевая страничка прогружается, в зависимости от сложности. Qtшный Webengine собираю с внешним ffmpeg, что бы mmalные кодеки для h264 пользовать, без Webasm и с системным libjpegturbo.
                  0

                  Ждем от Вас статью. Очень интересный опыт.

                    0
                    Ок, а сколько реально времени занимает процесс загрузки до момента отображения странички? От включения до полного отображения.
                      +1
                      Зависит от странички. Если локальная статическая страничка с парой фоток — < 10сек, если тяжелая по сетке сильно дольше. В любом случае намнооого быстрее, чем прогружать иксы, а поверх них хромиум. Кроме того, к моменту начала загрузки странички прога во всю что-то показывает/рассказыват, считывает штрих коды и моргает диодами. Удобно прокинуть сообщения libcec и вызывать JS методы с пульта телевизора
                0
                CodeSys + cromium (киоск) + куча плат по Modbus + монитор 17".
                Плюс еще поднял wifi точку доступа. Можно подключатся и рулить всем этим барахлом так же как и с локальной панели оператора (монитор и тач).
                Завелось как нечего делать особенно учитывая что на момент реализации проекта я с линухом не был знаком вообще. Правда проект так и не был доведен до конца по ряду причин :))))

                Сейчас вместо хрома и кодесиса QT в полноэкранном режиме.

                  0

                  Wtware. Тонкий клиент для rdp, vnc, отдельный запуск хрома (в том числе в режиме киоска), рабочий принтсервер и ещё маленькая тележка возможностей.

                  0
                  Информация фрагментарная, противоречивая, автоматизации никакой не предлагается. В общем, DIY во всей красе.

                  Я делал в офисе по этому туториалу, до сих пор работает без проблем. Да, автоматизации нет, скрипты придется вручную создать, но для умеющего пользоваться nano, работы на 10 минут.

                  Вычислительные фермы

                  Пробовал запускать расчеты на Raspberry Pi, нет смысла, десктопный проц рвет их как тузик. Не говоря уже про GPU.
                  Кластер на Raspberry Pi сделать можно, но чисто в учебных целях, практического смысла никакого.

                  Ну, и совершенно идиотский вопрос — дробить статью было обязательно?

                  Никакого умысла делать N частей не было, это чистая импровизация. Что-то вспомнилось по ходу написания, что-то в процессе обсуждения в комментариях.
                    0
                    Пробовал запускать расчеты на Raspberry Pi, нет смысла, десктопный проц рвет их как тузик. Не говоря уже про GPU.

                    Я повторюсь, что по абсолютной вычислительной мощи — да, десктопный проц порвет распи. Но вот все равно наверняка можно придумать метрику, по которой распи будет выгоднее (например, вычислительная мощность на единицу потребленной электроэнергии или что-то вроде того).


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

                    Тоже вариант.


                    Я делал в офисе по этому туториалу, до сих пор работает без проблем.

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

                      0
                      Но вот все равно наверняка можно придумать метрику, по которой распи будет выгоднее

                      Есть метрика Gigaflops per watt: web.eece.maine.edu/~vweaver/group/green_machines.html

                      Ни по абсолютной, ни по относительной мощности Raspberry Pi не в лидерах (да в общем, RPi и не задумывалась как вычислительная платформа).
                        0
                        Как минимум — не рассмотрен вопрос — что делать, если хром завис

                        Я не уверен, что это решается настройками Хрома (хотя может быть и там какой-то авто restart есть). Как посоветовали ниже, если нужны совсем гибкие настройки, пишите свою «обертку» над браузером и обрабатывайте его сообщения в коде.
                          0
                          По своему опыту скажу так: если компилировать большой сишный проект прямо на RPI3 командой make -j4 то малинка перегревается и виснет наглухо. Только сброс помогает. Пробовал на разных платах.
                          Пассивный кулер стоит.
                          Так что сделать чтоб плата не висла — та еще проблема, особенно если ресурсоемкое приложение. Особенно если хочется не чистую плату прикрутить, а в закрытом корпусе, где перегрев еще больше.
                            0
                            При компилировании попробуйте останавливать практически все прописанные в системе сервисы, и временно создавайте файл подкачки.
                              0
                              Часто бывает достаточно переключиться на компиляцию в один поток — с make -j4 на make -j1 :)
                      +1
                      >Интернет-радио
                      Сделал такое из строй Nokia N79. Можно и другие модели использовать под такое, например Nokia 5800 или Nokia 603. Полет нормальный, цена — копейки.
                        +1
                        А можно подробнее?
                          0
                          LCG Jukebox + .m3u плейлист с радиостанциями.
                        +1
                        Я бы для дронов рекомендовал OrangePI — И стоит дешевле и энергии жрет заметно меньше (Что критично), а мощей проца примерно столькоже.
                          0
                          Для дронов как раз потребление контроллера не так критично, там основное движки+пропеллеры жрут. Но в целом идея с OrangePI тоже неплохая, да.
                            0

                            OrangePI — это который в андроид грузится, если SD нет? Выглядит как китайская подделка под оригинальную малинку.
                            Дистрибутив линукса у них тоже кривой.

                              0
                              У них есть интересные модели, например с двумя Ethernet, если надо www.orangepi.org/OrangePiR1

                              Лично не пробовал, подробнее не знаю.
                              0
                              Нет, на первых OrangePI вообще альтернативного флеша небыло.
                              А когда появился — продавали с пустой флешкой, на скок я помню.
                              По поводу дистрибутивов — Есть официальный порт Raspbian. Работает отлично.
                              Да и RetroPie тоже портанули давно (RetrOrangePi).
                                0
                                У них моделей 100500. Совершенно нормального вида и производительности. Линукс — armbian. В случае кривых рук, не спасет и macos, конечно.
                            +1
                            достаточно сложные алгоритмы, типа фильтра Калмана

                            Это ж чего такого сложного или ресурсоемкого в фильтре Калмана, что бы для его реализации требовалась целая Малина? У меня в проектике хедтрекера на тухлой Arduino ProMini этот фильтр реализован для нескольких каналов и вполне успешно работает.
                              0
                              На старых контроллерах были проблемы с производительностью, на современных уже работает.
                              ardupilot.org/dev/docs/extended-kalman-filter.html#extended-kalman-filter

                              Нужна «малина» или нет для еще более сложной математики, как я и написал, вопрос открытый, я этот контроллер не тестировал.

                              Для меня более интересным в случае RPi было бы управление и передача картинки по 4G.
                                0
                                А, тогда понятно. Но это проблемы не самого фильтра, а его проблемы его реализации в конкретном софте. Так-то он прост как валенок.
                                  0
                                  В современных полетных контроллерах дофига кода, там и обработка сенсоров, и телеметрия, и полет по точкам, и логи и пр.

                                  dev.px4.io/master/en/concept/architecture.html
                                    0
                                    Да, я в курсе :) Сам такой разрабатывал для самолетов.
                                      0
                                      Да, когда-то все начиналось с MultiWii и Atmega328 на борту, сейчас уже Linux и RTOS.

                                      Думал себе недавно Pixhawk4 для тестов купить, но запускать все это негде…
                                        0
                                        Господи, вы это так сказали, как будто это было еще при дедушке Ленине :) У меня в мелком квадре до сих пор на ардуине автопилот. И OSD на нем же :)

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

                                        Опять же, финальная цена :) Pixhawk4 — все таки денег уже серьезных стоит.
                                          +1
                                          Не, при дедушке Ленине были первые Multiwii на распиленных нунчаках :) И трикоптеры с контроллером вообще почти без «мозгов» и с сервой на хвосте, забыл уже как назывались.
                                            0
                                            Были и вообще без мозгов, на гироскопах от вертолётов.
                                            Но как-то всё это быстро переползло на платку «Captain Kuk» (вроде так)

                                            А Wii с нунчаком лично делал. И с гироскопом от WiiMotionPlus. Когда коптеры, как сейчас модно говорить, ещё не стали мэйнстримом…
                                            0
                                            нравились решения основанные на мелких независимых железках

                                            С одной стороны хорошо, с другой, в одном проце и в одном адресном пространстве куда легче код писать, чем синхронизировать кучу разных девайсов по шине.
                                              0
                                              Ну это мое лично мнение, везде есть плюсы и минусы.
                                                0
                                                В автомобилях вроде так и делают — есть CAN-шина и разные девайсы с разным приоритетом. Не знаю, используется ли похожее где-то в коптерах. CAN-регуляторы вроде в продаже были.
                                                  0
                                                  Да не только в авто. Много где делают. У меня сейчас подобная система сбора данных в разработке. Куча датчиков разнокалиберных, соединенных физически на двух шинах, либо i2c это то что на плате, либо rs485. Очень удобно. Каждый девайс на шине логически законченное устройство, которое собирает и обрабатывает один тип данных. На выходе, стандартизированный пакет с результатами работы в шину, на входе, стандартизированная же команда управления.
                                              0
                                              Pixhawk4 — все таки денег уже серьезных стоит

                                              220$ не такая уж гигантская цена, да и функционал интересный. Другой вопрос, что только выехать в безлюдные поля где можно реализовать возможности контроллера (полеты по точкам и пр) это минимум 1.5 часа на машине из города или 2 часа общественным транспортом. Тут весь интерес пропадает… А просто на поляне в парке висеть уже не так интересно.

                                              В мелких городах с этим проще наверно, хотя там и зарплаты ниже пропорционально плотности населения :)
                                                +1
                                                Гы, ну кому как. 220 баксов на потестить, это как-то, ну его нафиг :) Я лучше двигатель очередной для самолета куплю. Особенно если учесть, что всякие полеты по точкам и в контроллерах за 20 баксов имеются.

                                                Да и наигрался. Погонять FPV на квадре вся эта чепуха не нужна, а летать в Кронштадт, уже неинтересно. На системах попроще летали за 40 километров еще до того как это стало мейнстримом :)

                                                Так я на полянке на даче летаю. Не свечусь. А было время летали промеж глиссад со стороны Шушар в полях :)
                                  +1
                                  Автор в курсе, для чего используют PNG и JPG форматы? Зачем в статье растровые/фото вывалены в несжатом виде? В .jpg будет почти на порядок меньше весить, чем эти 5 МегаБайт .png.
                                  toster.ru/q/589922
                                    0
                                    Спасибо. Вообще-то был уверен что движок сайта оптимизирует страницу сам.
                                      0
                                      Может сами форматы изображений и можно заставить движок оптимально сжимать, но вот выбирать формат изображения — пока увы.

                                      Я, собственно, и не заметил бы, но есть у меня такая хомячная привычка — утаскивать понравившиеся материалы в offline. В частности, пользуюсь плагином UnMHT для FireFox + плагином MhtUnPack для Total Commander. Первый позволяет сохранять выделенный кусок, а не всю веб-страницу. Второй — гулять внутри получившегося MHTML файла как в обычном архиве — удалять ненужные файлы и добавлять нужные. Последнюю возможность использую для хранения в этом же файле дополнительных материалов — архивы, прошивки, исходники, комментарии и т.п. image
                                      А по сабжу — в качестве антиоффтопа — добавлю ссылку на ещё один вариант применения малинки в публиковавшейся здесь статье: DIY тепловизор на Raspberry PI (правда, специфика поуже упоминавшихся).
                                    0
                                    Хотя уже не уверен, найдется ли еще 5 более-менее необычных проектов, посмотрим.

                                    Как вариант использования: тестер пропускной способности локальной и Wi-Fi сети. На RPI можно установить jperf, работающий в качестве сервера, на ПК или смартфон, в качестве клиента.
                                      0
                                      Разве в дронах не используются операционные системы реального времени? На пи можно установить систему реального времени?

                                      0

                                      Nano Pi в качестве терминальной станции мне очень нравится.
                                      Потянет? У кого-нибудь уже есть действующее решение?

                                        0
                                        Raspi + OpenScada и у вас в руках УСПД или ПЛК — все зависит от задачи. Web-интерфейс — дополнительная плюшка. Реализован проект сбора и архивирования значений температуры с терморегуляторов Овен по RS-485 (via RS-485\USB адаптер).
                                          +1
                                          Использовать USB/RS-485 свисток (да и вообще любые свистки, 3G тот же) сомнительное решение, висячие на соплях провода и т.д., такое решение трудно продать Заказчику как законченное. Необходимо все упаковывать в качественный и красивый вид, например, вот так - шлюз IoT на базе raspberry cm3
                                          image
                                          image

                                          Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                                          Самое читаемое