У меня есть идея собрать автономного робота… полностью автономного, т.е. собрать его, запрограммировать и забыть о хлопотах, а он будет что-то делать и вообще жить своей жизнью… Робот-питомец?

С чего начинается… автономность? Да, именно с питания. По моему мнению, во многих современных роботах есть очень большой недостаток – нужно периодически менять батарейки или заряжать аккумуляторы. Рано или поздно, это делать надоедает, и робот уходит пылиться на далекую полку… А в самом начале, помните, как хотелось его собрать, научить его чему-то, посмотреть как он справляется с поставленными задачами?
В этой статье мы сделаем нашего робота (у вас еще нет своего робота???) автономным, т.е. запрограммировали и забыли. Брать энергию он будет из воздуха, а точнее, от солнца.
Помогут нам в этом следующие компоненты

(все компоненты подходят друг к другу)
- Солнечная панель (можно и несколько, соединив их параллельно и добавив диоды шоттки – увеличим скорость заряда аккумулятора) для получения энергии от солнца
- Контроллер заряда LiPo Rider Pro – у него есть вход для солнечной батареи с разъемом jst, вход для аккумулятора тоже jst, вход miniUSB для подключения к блоку питания, чтобы заряжать аккумулятор и питать устройство, а также есть выход мама USB порта, куда соединяется устройство-потребитель
- Аккумулятор Lipo 1s 3.7v (можно и несколько, соединив их параллельно – увеличим время активного состояния робота) для накапливания энергии
Принцип действия

Нужно питать робота от аккумулятора и при первой возможности заряжать аккумулятор от солнечного света. Скажем, наш робот Durashka будет стоять на подоконнике и днем получать энергию от солнца из окна, а ночью… переходить в режим сна и ничего не делать. Важно правильно рассчитать мощность солнечной панели, чтобы в обычный солнечный день панель выдавала достаточно энергии для зарядки аккумулятора и питания контроллера с датчиками и сервоприводами. Кроме того, необходимо иметь возможность в экстренных случаях заряжать аккумулятор от блока питания.
В конструкции контроллера заряда LiPo Rider Pro предусмотрена и автоматическая зарядка аккумулятора при подключении к блоку питания, и зарядка его от солнечной панели, и недопущение перезаряда и переразряда аккумулятора. Самого робота подключаем по USB к LiPo Rider’у, соответственно, получаем стабильные 5V. Все в одном – почти идеальный вариант! Соединил вместе проводами – и работает!

Почему почти идеально? Дело в том, что робот не будет знать, сколько осталось заряда в аккумуляторе. Сколько ему еще бодрствовать и не пора ли перейти в спящий режим?
Для этой цели в последствии придется прикрутить еще одну плату – LiPo fuel gauge, которая и даст ответы на все оставшиеся вопросы. Ее мы подключим к аккумулятору и по I2C шине робот всегда будет в курсе состояния батареи (читать: насколько он голоден или объелся как на пасху), соответственно можно будет скорректировать его поведение в зависимости от этого.
О роботе

Робот Durashka на данный момент обладает следующими функциями:
- Питается 9V от блока питания ACDC
- Понимает, что рядом с ним есть кто-то (ультразвуковой дальномер)
- Понимает, когда в комнате что-то происходит или с ним говорят, откуда идет звук (датчик звука, стерео)
- Понимает, когда в комнате светло или темно (датчик освещенности)
- Следит за временем и знает, день сейчас или ночь (часы реального времени)
- Понимает, что его взяли в руки, крутят, уронили (гироскоп-акселерометр)
- Может выражать свои чувства трехцветным светодиодом на голове, движениями рук и головы, а также заранее записанными на microSD карточку словами и выражениями
В планах:
- Сделать Durashk’у автономным (питание от аккумулятора и солнечных батарей)
- Добавить модуль wifi и читать слова и выражения не только с microSD карточки, но и подгружать с компьютера.
- Выход в интернет даст возможность роботу узнавать: прогноз погоды на улице через сторонние сайты, текущие параметры окружающей среды (температура, влажность, уровень углекислого газа, уровень пыли в воздухе, радиационный фон) от датчиков, подключенных к компьютеру (серверу), читать последние новости на сайтах вслух.
- На основании полученных данных реализовать более сложный алгоритм поведения
Заключение
И все-таки, автономность – это круто! Мне кажется, эта функция добавляет некоторую “оживленность” роботам, делая их более самостоятельными. Когда знаешь, что там, на подоконнике, сидит существо, пусть с кремниевыми мозгами и ограниченным функционалом… но ведет свой образ жизни, знает, когда можно бодрствовать и что-то делать, а когда, устав от будничной суеты, поспать и набраться сил. И ничем не хуже хомячка в клетке, который только кушает, играет, спит и справляет нужду… и даже не может матернуться на какой-то неприятный внешний раздражитель! =)
Удачных вам экспериментов!
Реальные и очень полезные статьи! Спасибо. Буду ждать еще Ваших постов. Сайт однозначно в избранные.
Успехов и развития Вашему сайту!
Спасибо за добрые слова! 🙂