Робот из raspberry pi 3. Робот для видеонаблюдения на Raspberry Pi

Raspberry Pi это одноплатный компьютер, сделанный для обучения базовым компьютерным навыкам для школьников. В последствии получивший намного более широкое применение и популярность, чем ожидали его авторы. Наша плата выглядит так: Данная версия платы оснащена процессором ARM11 фирмы Broadcom BCM2835 с тактовой частотой 700 МГц и модулем оперативной памяти на 256МБ/512МБ. Raspberry Pi работает под управлением операционной системы Linux. Мы, будем использовать плату версии «B» с установленной ОС Raspbian.

1. Сборка робота на базе гусеничной платформы

Raspberry Pi и камера будут установлены на гусеничную платформу. По сути это будет мобильная система видеонаблюдения.
Сама Raspberry Pi с драйвером моторов будет закреплена с помощью конструктора Lego, так как на данной плате отсутствуют необходимые крепежные элементы.
Электропитание платы и моторов раздельное. На моторы стоит 8 аккумуляторов по 1.2 вольта, на плату стоять 2 аккумулятора по 3.7 вольта. Все аккумуляторы включены последовательно. Моторы получают питание через драйвер моторов выполненный на L293D с помощью навесного монтажа.
Электропитание самой платы осуществляется через линейный стабилизатор, так как требуется фиксированное напряжение в 5 вольт. Что умеет данная платформа делать: 1. Сам перемещаться по площади (квартире и тд) используя датчик Ultrasonic HC-SR04 для обьезда препядствий. 2. Снимать через определенное время фото (видео кадр) снимок и отправлять его на яндекс или гугл диск. 3. Сам подъезжать на базу для подзарядки используя ИК-локатор. 4. Возможность ручного управления, используя браузер и интернет. Стабилизатор для питания самой платы raspberry. На макетной плате был собран драйвер управления моторами на L293 и установлен гироскоп mpu-6050, подключенный по шине I2C.
Общаться с интернетом будет за счет вот такого WiFi адаптера Tp-Link.
Завелся сразу из коробки, без установки дополнительного программного обеспечения. Так же установлена камера для raspberry pi с CSI интерфейсом.
Для поворота камеру использоваться будет вот такой механизм на двух сервоприводах.
Управлять им будет Raspberry напрямую с GPIO портов, как и моторами движения через микросхему L293D. Зарядка робота будет осуществляется с док станции к которой надо будет подъехать. Для этого на передней части шасси установлены контакты для подзарядки.
Была куплена в магазине вот такая макетная плата на которой все будет смонтировано. От деталей конструктора Lego для крепления Raspberry пришлось отказаться, так как не все умещается.
Прикрепив ее к шасси получаем. Далее на штырьки так крепим саму Raspberry Pi.
Теперь на шасси.
Примерно вот так будет ездить платформа:

2. Общая схема подключения


3. Подключение моторов

Подробно разберём схему подключения моторов с помощь L293D.
Порты GPIO Raspberry Pi к драйверу моторов подключаем следующим образом: Левый мотор: L293 IN1 on GPIO 9 L293 IN2 on GPIO 10 L293 EN1 on GPIO 11 Правый мотор: L293 IN3 on GPIO 23 L293 IN4 on GPIO 24 L293 EN2 on GPIO 25

4. Настройка Raspberry Pi

Для того чтобы управлять данным шасси удалено, нужен белый IP адрес (постоянный), который можно сделать с помощью роутера находящегося в помещении. Для удаленного управления и настройки нам понадобится программа PuTTY. Скачать ее можно на просторах интернета. На Raspberry нужно включить SSH сервер, если вы этого не сделано то в консоли нужно набрать команду sudo raspi-config В пункте SSH нажать на Enable. Далее перезагрузить плату, теперь мы можем удаленно подключится. Устанавливаем на нашем компьютере PuTTY и настраиваем ее. Для этого в вкладке «Сеанс» вводим IP адрес Raspberry Pi. IP адрес можно посмотреть в настройках роутера. Номер порта оставляем 22, тип соединения SSH. Нажимаем «Сохранить» введя при этом название сеанса. Теперь настройки сохранены. Далее выбираем пункт Соединение -> Данные и вводим наши имя и пароль для входа на Raspberry. Если не меняли, то имя и пароль те же: pi и raspberry. Вводим мы это для того, чтобы не вводить каждый раз имя и пароль при входе. Теперь выбираем пункт SSH ->X11 и ставим галочку напротив «Включить переадресацию X11», а в строчке «Отображение дисплея Х» необходимо написать localhost:0 Вернемся в вкладку «Сеанс» и сохраняем все настройки под тем именем, что уже записали. Всё, настройка завершена! Нажимаем «Соединить» и входим в командную строку Raspberry Pi. Теперь настраиваем картинку с камеры в браузер. Для этого в командной строке вводим: sudo apt-get update После завершения работы команды, пишем следующую: sudo apt-get upgrade Затем: sudo raspi-config и включаем поддержку камеры. Перезагружаемся, снова запускаем PuTTY и соединяемся с raspberry. Далее устанавливаем приложения нужные для правильной работы mjpg-streamer: sudo apt-get install libjpeg8-dev Затем: sudo apt-get install cmake Скачиваем исходники mjpg-streamer: wget github.com/jacksonliam/mjpg-streamer/archive/master.zip Потом распаковываем полученный архив: unzip ./master –d ./Valli (Vflli произвольное имя) Заходим в папку cd /Valli/mjpg-streamer-master/mjpg-streamer-experimental далее вводим make clean all Командой nano меняем файл start.sh sudo nano Valli/mjpg-streamer-master/mjpg-streamer-experimental/start.sh удаляем там две незакомментрованные строки и пишем вместо них cd etc/ms/mjpg-streamer-master/mjpg-streamer-experimental ./mjpg_streamer -o "./output_http.so -w ./www" -i "./input_raspicam.so -x 640 -y 480 -fps 10 -ex auto -awb auto -vs -ISO 100" Выходим из редактора командой Ctrl+X, затем Enter (соглашаемся с изменением) и Y (да). В папке mjpg-streamer-experimental запускаем наш скрипт: ./start.sh Должно запуститься и в консоли будет много букв на камере загорится светодиод. Команда Ctrl+C остановит скрипт и светодиод погаснет. Открываем браузер, заходим по такой ссылке: ip-address-raspberry:8080/?action=stream (где ip-address-raspberry – это IP нашей raspberry) и попадаем на вебсервер, нажимаем на Stream и видим:
Чтоб робот двигался необходимо установить веб-интерфейс, который будет управлять роботом. Устанавливаем. Для начала скачиваем WebIOPi wget webiopi.googlecode.com/files/WebIOPi-0.6.0.tar.gz распаковываем tar xvzf WebIOPi-0.6.0.tar.gz Заходим в папку cd WebIOPi-0.6.0 и запускаем файл установки командой sudo ./setup.sh После установки, командой: update-rc.d webiopi defaults делаем автозапуск интерфейса с raspberry. Как всегда открываем браузер, заходим по такой ссылке: ip-address-raspberry:8000 и получаем
В итоге получаем: Всем удачи!

Роботизированные устройства по-прежнему остаются диковинкой даже для тех современных семей, члены которых повсеместно пользуются продвинутыми гаджетами, цифровыми системами и плодами передовых разработок ведущих мировых компаний. Одной из причин такого положения вещей является слишком высокая цена на сложные автоматизированные механизмы, а также сомнительная целесообразность применения дорогостоящих «машин» для выполнения простых операций. Команда словацких инженеров решила в рамках стартапа «PiKit — Robotic & Control kit based on Raspberry Pi» убедить всех, что концепция модульных роботов, когда покупатель сам вправе выбрать и собрать устройство с необходимой ему функциональностью, способна не просто популяризировать подобные механизмы, но и сделать их более доступными.

Главной особенностью PiKit стала конструкция из отдельного набора «блоков», оснащённых теми или иными датчиками. Представьте, что в предлагаемой сторонними производителями модели часть возможностей вам просто не пригодится, но переплачивать за ненужные опции — затея явно нерациональная. Компромиссом в этом случае выглядит модель компании Anima Technika — робот PiKit, за обработку поступающих команд которого отвечает одноплатный компьютер Raspberry Pi или Banana Pi.

Стартап начал поиски финансирования при помощи краудфандинговой площадки Indiegogo, чтобы собрать $41,8 тыс. для воплощения идеи в жизнь. Участники проекта при соответствующей материальной поддержке могут оформить предзаказ как на уже готовое изделие, так и на отдельные части модульного конструктора. Главной составляющей является небольших размеров корпус, в котором расположился сам PiController на базе одноплатного микрокомпьютера. Благодаря встроенному в него модулю беспроводной связи Wi-Fi владелец устройства сможет управлять PiKit дистанционно, используя для этого настольный ПК, ноутбук, смартфон или планшет.

Набор дополнительных модулей включает в себя два вида приводов для передвижения робота — один ориентирован на манёвренность, другой — на скорость. Первый привод делает робота похожим на паука , а второй превращает PiKit в роботизированный аналог самобалансирующегося двухколёсного самоката наподобие сегвея (Segway) .

Чтобы следить за всем происходящим от первого лица разработчики предлагают установить модуль визуализации со встроенной HD-камерой, микрофоном и ультразвуковым дальномером. С помощью микрофона устройство сможет обрабатывать голосовые команды, а встроенный динамик обеспечит имитацию живого общения PiKit с его владельцем. А чтобы превратить робота в максимально самостоятельный механизм, специалисты Anima Technika подготовили модуль автоматизации, отвечающий за переход «машины» в автономный режим для выполнения ряда несложных задач.

PiController обеспечивает взаимодействие всех модулей со встроенным в него трёхосным акселерометром и гироскопом, трёхосным магнитометром, ШИМ-контроллером, динамиками, зумером, выводя при этом системную информацию на собственный LCD-дисплей.

Элементы PiController, для создания которого использовался Raspberry Pi

Покупатель может заказать PiController за $249 без одноплатного компьютера в комплекте, чтобы усовершенствовать систему по своему усмотрению. Цены на отдельные составляющие указаны ниже:

  • модуль визуализации — $189;
  • модуль автоматизации — $119;
  • колёсный Segway-привод — $99;
  • Spider-привод — $899;
  • PiController с Raspberry Pi — $289;
  • PiController с Banana Pi — $299.

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

Модификация под названием Balancing robot, которая представлена на изображении выше, включает в себя модуль визуализации, PiController и колёсный привод. Её розничная стоимость составит $587. А вот для сборки робота-паука понадобится уже куда более дорогой Spider-модуль за $899 — две пары механизированных лап, синхронизирующиеся с центральным контроллером.

Что там говорилось про сомнительную целесообразность дорогих механизмов? Неудивительно, что на данном этапе стартап собрал лишь $628. Однако до окончания краудфандинга осталось ещё 43 дня.

Программа обмена текстовыми сообщениями Google Talk обычно используется для общения между людьми. Тем не менее, технология, лежащая в её основе удобна для реализации программных роботов. Интернет-боты, они же веб-роботы, WWW роботы или просто «боты» также могут использовать эту технологию для исполнения автоматических функций с помощью интернета. Существует масса подобных ботов, предоставляющих различные службы, начиная от шуточных ([email protected]) до сокращения URL ([email protected]) и даже математических вычислений ([email protected]). Подключение к подобным ботам не является сложной задачей, достаточно добавить адрес бота в ваши контакты. Затем, при необходимости, отправьте боту текстовую команду и он пришлёт в ответ требуемую информацию.

Бот Raspi похож на всех остальных интернет ботов. Для его настройки необходимо иметь отдельный адрес электронной почты, связанный с учетной записью Google Talk. Этот адрес должны будут добавить себе в контакты все желающие управлять ботом. Затем, как только будет запущен скрипт бота, он подключится к службе чата Google и появится среди ваших друзей в списке контактов.

Программное обеспечение бота представляет собой клиента протокола XMPP, написанного на языке Python. При запуске, скрипт подключается под своими учетными данными к службе Google Talk. Скрипт на языке Python является развитием проекта pygtalkrobot - открытого проекта бота gtalk (google talk) с использованием библиотек XMPPPY и PyDNS, а также с использованием кода проекта python-jabberbot.

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

Бот требует наличия дополнительных модулей Python. Проще всего установить их с помощью менеджера пакетов pip. Если он не установлен, вы можете установить его с помощью apt-get:

Sudo apt-get install python-pip git-core python2.7-dev

Затем обновите индекс easy_install:

Sudo easy_install -U distribute

и установите модули GPIO, xmpppy и pydns:

Sudo pip install RPi.GPIO xmpppy pydns

Затем скопируйте мой репозиторий с исходниками робота Raspi Gtalk:

Git clone https://github.com/mitchtech/raspi_gtalk_robot.git

Теперь смените рабочий каталог:

Наконец, укажите имя пользователя и пароль в службе Google для своего робота. Это можно сделать с помощью полей BOT_GTALK_USER, BOT_GTALK_PASS, и BOT_ADMIN в строках с 31 по 33 файла raspiBot.py. Рекомендуется (но не является необходимым) создать для робота свою собственную учетную запись в службах Google. Кроме того, поскольку доступ к шине GPIO на компьютере Raspberry Pi предоставляется только суперпользователю, запускать робота необходимо с помощью команды sudo:

Sudo python ./raspiBot.py

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

: включает указанный выход GPIO
: отключает указанный выход GPIO
: устанавливает указанное состояние указанному выходу
: считывает состояние указанного выхода GPIO
: определяет состояние подключения google talk и статусное сообщение в соответствии с аргументом
: выполняет команду оболочки, указанную в аргументе после слова «shell» или «bash»

Например, сообщение «pinon 10» даст команду включить 10-й выход GPIO, сообщение «read 8» даст команду считать текущее состояние 8-го входа GPIO, наконец сообщение «bash ps» запустит на выполнение команду оболочки «ps».

Железо

Конфигурация, показанная в видеоролике, включает в себя двухпозиционный переключатель, подключенный к входу 8 GPIO, а также светодиод, подключенный к 10-му выходу GPIO. Вот подробная схема подключения (схема сделана с помощью Fritzing):

Пример использования №1. Домашняя автоматизация

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

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

Пример использования №2. Удаленный доступ

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

Вот небольшой список относительно безопасных команд, которые можно запускать удаленно с помощью робота Raspberry Pi:

vmstat - отображает активность системы, оборудования и прочую информацию
uptime - время непрерывной работы системы
w - показывает подключенного пользователя и его активный процесс
ps - выдает список запущенных процессов
free - объем свободной физической и виртуальной памяти

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

Пример использования №3. Удаленная перезагрузка

Еще одна проблема, которая может быть решена с помощью робота на Raspberry Pi - это перезагрузка зависших компьютеров. Многие из нас попадали в такую ситуацию, когда необходимо получить удаленный доступ к компьютеру, который не отвечает на внешние запросы. В этом случае, приходится совершать поездку до места физического нахождения компьютера для того, чтобы нажать «большую красную кнопку» и вызвать перезагрузку этого компьютера. Подобных ситуаций легко можно избежать, используя робота на основе Raspberry Pi в качестве агента удаленной перезагрузки. Этой цели можно достигнуть, используя систему реле цепей питания, управляемых нашим роботом. В случае, когда любой из компьютеров, управляемых роботом, перестает отвечать на внешние запросы, достаточно просто отправить соответствующую команду в виде сообщения Google talk для размыкания заданного реле и перезагрузки повисшего компьютера. Ниже возможная схема включения:

Хочу познакомить вас с одной вполне интересной разработкой - самодельным экспериментальным роботом, которого я назвал "Zer0". Эта статья является первой из цикла статей по самостоятельному изготовлению робота на основе Raspberry Pi, который будет управляться могущественной связкой Linux + Python.

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

Подготовка

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

Малинка (Raspberry Pi 2B) у меня уже была в наличии, поэтому прикупив парочку Ni-MH аккумуляторов по 6В/6А*ч (позже купил еще один на 12В/2,3А*ч) окончательно решил что вполне можно собирать небольшого робота для обучения, экспериментов, развлечений и не только...

Рис. 1. Набор деталей, которые дали начало самодельному роботу.

Поскольку двигатели оказались на рабочее напряжение +24В, а для питания малинки нужно +5В, то пришлось заказать несколько понижающих и повышающих DC-DC преобразователей на микросхемах LM2596 и XL6009.

Основой шасси для робота будет служить доска из дерева средней плотности, она легкая и на нее удобно крепить все детали при помощи маленьких шурупов-саморезов.

Ходовую часть решил делать трехколесную: два ведущих колеса спереди от игрушечной машинки и одно колесико - сзади, которое будет следовать направлению ведущих. Можно сделать ходовую часть и на 4 колеса, 2 из которых ведущие или же все 4, это уже дело вкуса и запчастей в наличии.

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

Ведущие колеса для будущего робота можно извлечь из игрушечной машинки - новой или поломанной. Вот вам идея на заметку: поспрашивайте на базаре у продавцов игрушек нет ли у них на складе поломанных машинок с колесами и прочих электронных игрушек, такое добро скорее всего согласятся продать за копейки - будет польза и вам и продавцу, поскольку ему остается его или выбросить или кому-то подарить на окончательное уничтожение "маленькими исследователями".))

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

Обо всем этом и многом другом я подробно расскажу в следующих статьях. А теперь давайте просто рассмотрим что в итоге получилось и как это можно использовать.

Из чего состоит робот

Основные составные части и возможности экспериментального робота Zer0:

  • Мозг робота - Raspberry Pi + Raspbian Linux;
  • Питание - аккумулятор на 12В/2,3А*ч + контроллер на ATtiny2313 + DC-DC преобразователи;
  • Перемещение - два электродвигателя на +24В с редукторами + модуль L298;
  • Воспроизведение звука - два широкополосных динамика 2x3 Вт/8 Ом + усилитель на TDA1517P;
  • Захват видео/фото/звук - Webcam Logitech C270 HD, 1280 x 720 пикселей + микрофон;
  • Управление углом обзора - два сервопривода S05NF;
  • Освещение - 6 ярких светодиодов + отражатель с фокусировкой;
  • Отображение информации - OLED дисплей 128x64 пикселя;
  • Связь - USB Wi-Fi + USB 3G
  • Другие возможности - пиродатчик, газовый анализатор воздуха, датчик температуры и влажности воздуха, 3-х осевой компас, ультразвуковой датчик препятствий, датчик освещения, мониторинг напряжения батареи питания, часы реального времени, 2-3 свободных USB порта для подключения разных устройств.

Все приведенные выше составляющие позволяют получить достаточно богатый и разнообразный набор функционала как для такой небольшой конструкции. Размеры и вес робота можно уменьшить еще больше если бы использовать батареи Li-Ion или Li-Pol, а также купив более миниатюрные микроэлектродвигатели с редукторами.

Я же отдал предпочтение батареи Ni-MH потому что она безопасна, недорога и проста в обслуживании, хорошо подходит для беспрерывного питания устройств с постоянной подзарядкой.

Для управления питанием был изготовлен несложный самодельный контроллер на основе ATtiny2313 + электронные ключи на полевых транзисторах. Благодаря ему робот умеет находиться в ждущем режиме (включение по кнопке), выполнять безопасное выключение компьютера с последующим полным отключением питания в случае подачи команды от Raspberry Pi или с кнопки.

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

Знакомьтесь: Zer0!

Zer0 - это самодельный работ, собранный на основе Raspberry Pi, который управляется операционной системой Linux (Raspbian). Название "Zer0" пришло в голову как-то сразу, это как начальная модель 0-й версии.

Ниже привожу несколько фотографий готового робота (все рисунки кликабельны) и описания к ним:

Рис. 2. Самодельный робот Zer0 на Raspberry Pi и Linux - фронтальный вид.

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

Голова робота содержит HD веб-камеру со встроенным микрофоном, маленький монохромный OLED-дисплей, пиродатчик, а также небольшой фонарик для освещения того на что голова смотрит если очень темно. Для поворота головы в разные стороны, а также для наклонов вперед и назад используются два маленьких но мощных сервопривода.

Рис. 3. Самодельный робот Zer0 на Raspberry Pi и Linux - вид сзади.

Сзади в нижней части у робота прикреплено колесико с подшипником, в верхней части располагается панель управления питанием. На панели питания размещены клеммы для зарядки аккумулятора и для подачи внешнего питания для робота. Также из этих клемм можно снять 12В для питания чего-либо.

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

Рис. 4. Самодельный робот Zer0 - вид с боковой стороны где размещен компьютер Raspberry Pi.

С левой стороны у робота находится компьютер, по сути для него отведена вся левая сторона. Здесь мы имеем удобный доступ ко всем разъемам и пинам GPIO, которые размещены на малинке. С передней части у нас есть доступ к Micro-SD карточке компьютера.

Также сзади за компьютером есть небольшая свободная площадка для удобного подключения и размещения различных Flash-накопителей, USB Wi-Fi, 3G-адаптеров и для подключения сетевого Ethernet-шнура в случае необходимости.

Рис. 5. Робот Zer0 - вид со стороны где размещены датчики, контроллер движков и система питания.

С правой боковой стороны у робота размещены: платка с набором датчиков, модуль управления электродвигателями на основе L298 + платка для конвертации сигналов на К561ЛА7, DC-DC преобразователи напряжения на +5В и +24В, плата контроллера питания на ATtiny2313 + ключи на полевых транзисторах и радиатор к ним, панель управления питанием.

Рис. 6. Робот Zer0 - вид снизу на движки, акустические колонки и колесико с подшипником.

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

Идеи по применению робота

Приведу несколько идей по использованию робота:

  • Периодические задачи на автомате, оповещение о наличии новой почты, комментариях на сайтах, курсах валют, погоде...о чем угодно (синтезатор речи + информация на дисплее). У многих есть каждодневные задачи, которые приходится выполнять вручную, это все можно запрограммировать и поручить роботу, настроив при этом время, условия и периодичность оповещений;
  • Эксперименты с искусственным интеллектом, нейросетями, логикой . Мощности 2-й и 3-й версии малинки уже хватит для некоторых вещей в этой сфере;
  • Платформа для обучения и работы с OpenCV (Open Computer Vision). Анализ информации с фото и видео для принятия каких-то решений, например распознавание лиц у людей, детектор наличия и перемещения каких-то предметов;
  • Сигнализация об утечке воды в помещении, появления вредных веществ (газов) в воздухе . Суть идеи проста: робот установлен (или же перемещается) в помещении и периодически измеряет уровень влажности воздуха, анализирует наличие паров вредных веществ и газа в воздухе. В случае отклонений от нормы можно подать звуковой сигнал, отправить куда-то письмо или СМС...;
  • Напоминалка о том что нужно полить вазоны и/или проветрить помещение (анализ температуры, влажности и качества воздуха). Часто бывает что люди находясь в помещении привыкают и перестают замечать что по сути там уже нечем дышать, начинает болеть голова, появляется вялость и куда-то пропадают все силы - причиной может быть плохая проветриваемость помещения, низкая влажность воздуха из-за включенного на обогрев кондиционера или обогревателя, жаждущих полива растений и т.п. Можно запрограммировать робота на выполнение периодического контроля качества и влажности воздуха в помещении, с последующем оповещением, например: "откройте окно и освободите помещение на Х минут для его проветривания";
  • Удаленный просмотр и мониторинг помещений (интернет через Wi-FI/3G + управление движением + веб-камера). Полезная штука если на некоторое время нужно куда-то уехать, а дома некому остаться, можно будет удаленно увидеть состояние комнат и всего дома, убедиться что все на своем месте;
  • Система интерактивной охраны для квартиры или дома (фото + видео + перемещение + звуковой оповещение, сигнализация). Динамические и статические маршруты перемещения с автокорректировкой + логирование событий и значений с датчиков, запись видео и фото, отправка информации на почту или личный удаленный сервер в интернете;
  • "Скайп на колесах" (камера + звук + микрофон + перемещение). Возможность общаться и при этом перемещать камеру, меняя позицию и угол обзора удаленно. Возможно вы видели как Эдвард Сноуден удаленно (без физического присутствия) выступал на конференциях TED 2014 (Ванкувер) и CES 2016 в Лас-Вегасе используя робота, которого в сети назвали как "Сноубот"? - в моем случае получится почти то же самое, за исключением наличия большого дисплея на котором смогут видеть того кто "за роботом". Тем не менее, к роботу можно подключить дисплей на 4-7 дюймов используя HDMI выход;
  • Подбор и воспроизведение музыки (голосовые команды + удаленное управление). Можно воспроизводить музыку под настроение, отдавая простые голосовые команды или же просто по хлопкам. Также запрограммировав робота можно включать музыку или какое-то звуковое приветствие при срабатывании пиродатчика если кто-то вошел в помещение;
  • Управление электроприборами в квартире или доме (через радиомодуль). Здесь нужна доработка: передатчик на 433МГц встраиваем в робот, приемники с "умными" электронными реле подключаем к каждому устройству для управления их питанием и/или режимами;
  • Развлечение для детишек (перемещение + камера + звук + свет + удаленное управление). В робота можно заложить какую-то программу и научить его реагировать на какие-то голосовые команды, а также самому управлять и разговаривать через него удаленно... детишки будут в восторге;
  • Источник питания с напряжением 12В и током 4А (стоит предохранитель). В тыловой части робота установлена панель управления питанием с двумя клеммами на которых постоянно присутствует напряжение +12В даже если робот выключен, также через них сейчас выполняется заряд аккумулятора. Вполне можно использовать как источник питания для каких-то самоделок и экспериментов не покупая при этом дополнительного аккумулятора или БП;
  • и т.д. и т.п. .... придумайте сами:) .

Скомбинировав некоторые из приведенных выше идей можно получить достаточно функциональное устройство, которое может принести не мало пользы вам и вашим близким.

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

В заключение

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

Другие мои статьи по самодельному роботу Zer0:

  1. Изготовление платформы для самодельного робота (шасси, двигатели, акустика, УНЧ на TDA1517)

Желаю вам творческих успехов и побольше позитива во всех ваших начинаниях!