Raspberry Pi Black Box (DIY-корпус)

Два года назад я купил raspberry pi model b.Я не обладал и не обладаю особыми навыками программирования, поэтому, установив дистрибутив raspbian и наигравшись, я надолго забыл про микрокомпьютер.
Недавно я откопал свою raspberry и решил докупить недостающее оборудование, заодно собрать корпус.Пересмотрев варианты корпусов, которые в продаже и статьи о самодельных корпусах, я решил собрать что-то своё, уникальное.

Читать дальше →

Подключение блока сегментных индикаторов с драйвером MAX7219

7-сегментный индикатор хорошо подходит для вывода цифровых значений — он компактен, эстетичен, потребляет мало тока, хорошо виден издалека и при ярком освещении. Каждый сегмент индикатора представляет собой светодиод. Зажигаясь, сегменты образуют цифру или символ.
Недостатком таких индикаторов является то, что для управления каждым сегментом нужен отдельный вывод.
Драйвер MAX7219 решает эту проблему. К 1 чипу MAX7219 можно подключить до 8 семисегментных светодиодных индикаторов, управлять которыми можно по интерфейсу SPI.


Читать дальше →

Простая установка Windows 10 на Raspberry pi 2

В официальной инструкции Microsoft (http://ms-iot.github.io/content/win10/SetupRPI.htm)запись образа с Windows 10 IoT для Raspberry Pi 2 на карту памяти (IoT — Internet of Things «интернет вещей») должна производиться с компьютера, на котором установлена Windows 10, что не очень удобно.

В этой статье, я расскажу как можно обойти это ограничение и записать образ с Windows 10 IoT с любой современной версии Windows.

Читать дальше →
  • 0

Wiring Pi - библиотека работы с GPIO. Часть 1

Данная статья рассчитана на пользователей, имеющих представления об основах GPIO Raspberry Pi.
Если эта тема для вас новая, то перед прочтением статьи рекомендую ознакомится с другими статьями для начинающих на тему GPIO — их можно найти в разделе «Документация»

В настоящее время самой популярной библиотекой для работы с GPIO на Raspberry Pi стала wiringPi

Читать дальше →

Сборка Windows под ARMv6

1
Собираем винду под армв6, по факту будет выложена ссылка, просьба по тестить на своих малинах.
заранее спасибо.
  • 0

Bubot: Scout — машинка с управлением через веб интерфейс без строчки кода

Давно хотел сделать машинку с камерой, управляемую через веб-интерфейс. Предлагаю вашему вниманию видео о том, как запрограммировать такую машинку, не написав при этом ни строчки кода.



Видео сделано в продолжение обзорной статьи по фреймворку для робототехники и домашней автоматизации.
Читать дальше →

Bubot — очень легкий фреймворк на Python 3 для программирования роботов и домашней автоматизации

Предыстория

Хотелось создать своего робота, а так же автоматизировать управление светом и климатом дома. С этой целью начал изучать имеющиеся возможности. Для себя я разделил все решения на две группы: системы в которых код на контроллере выполняется в одном главном цикле (arduino, lego и т.п.) и системы состоящие из параллельно работающих процессов обменивающихся между собой сообщениями.
Интуитивно выбрал вторую группу, так как хотелось найти максимально простое решение с дружественным пользовательским интерфейсом. Из наиболее популярных представителей этого «семейства» очень понравились Microsoft Robotics Studio и ROS. Но к сожалению, на текущий момент, привязать их к конкретному железу весьма не просто, да и разобраться в них с нуля так же весьма не тривиальная задача. В итоге принял решение писать сам, но «кодить» на C очень не хотелось, Душа просила чего-нибудь попроще и полегче. В итоге выбрал Python. А учитывая, что по мимо робота и «умного дома» в голову начало лезть куча других идей, то решил сразу сделать небольшой фреймворк, в котором основной упор был бы сделан на простоту разработки.

Концепция

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

Bubot - Схема

Сеть процессов строится на базе стандартного Python модуля multiprocessing. Система обмена сообщениями и разделяемая память реализованы при помощи Redis.

Каждый Bubot имеет встроенный веб-сервер веб-сервер Tornado, который позволяет контролировать состояние, управлять роботом, на ходу менять параметры (калибровать) робота, а также закладывается возможность обмена данными между роботами.
Bubot не является системой реального времени, хотя Bubot возможно интегрировать с кодом реального времени.

Читать дальше →

Чистый звук на Raspberry Pi, подключаем USB звуковую карту

Как известно звук с аналогового аудиовыхода Raspberry Pi не отличается высоким качеством и наполнен посторонними шумами, что особенно заметно при большой громкости динамиков.
Для получения качественного звука лучше подключить по USB внешнюю звуковую карту. Помимо улучшения качества аудио, звуковая карта обладает входом для микрофона, что также весьма полезно.
Чтобы не заморачиваться с драйверами я выбрал звуковую карту с чипом c-Media, т.к c-Media работает в Raspbian «из коробки».


Читать дальше →

Получение данных с аналоговых датчиков, подключенных к Raspberry Pi

1
Информация, снимаемая с аналогового датчика, представляет собой напряжение сигнального выхода датчика. Это напряжение может изменяться от 0 до напряжения питания датчика (грубо говоря, чем больше измеряемая датчиком величина, тем выше напряжение сигнального выхода)
Чтобы считать это напряжение и преобразовать его к осязаемому цифровому значению используется аналого-цифровой преобразователь (AЦП).
В Raspberry Pi отсутствует встроенный АЦП, поэтому для подключения к RasPi аналоговых датчиков потребуется внешний АЦП.

Я использовал АЦП на основе чипа PCF8591 — http://rspmarket.com/viewproduct/49/

Это 4-канальный 8-битный АЦП, который передаёт считываемые с датчика значения напряжения по i2c.
Читать дальше →

Компиляция ядра для Raspberry Pi и Raspberry Pi2

Приветствую уважаемое русскоязычное сообщество Raspberry Pi
Сегодня я расскажу вам про технику компиляции ядра для Raspberry Pi и Raspberry Pi2
Зачем нам может потребоваться компиляция собственного ядра? Ну например, чтобы добавить устройства, которые не поддерживаются в дефолтной сборке.


Читать дальше →