Arduino: определение заряда аккумуляторов и вывод информации в консоль
Наверное, каждый, создавая собственного автономного робота, хотел определять уровень заряда аккумуляторов и выводить их на дисплей или в консоль. Эта функция в основном необходима для отладки, однако в некоторых случаях определение заряда — важная часть функционала робота. Сложность в выполнении этой задачи составляет ограничение максимального входного напряжения на аналогово-цифровом преобразователе (5В), а также огромные скачки полученного значения. В этом посте я хотел бы показать свой способ считывания напряжения с аккумуляторов и определение заряда.
В первую очередь необходимо припаять к штекеру питания два резистора по 1 кΩ вот этой схеме делителя напряжения:
Таким образом, если выходное напряжение полностью заряженных аккумуляторов не превышает 10В, то напряжение после делителя будет меньше 5В, а значит, будет адекватно распознаваться аналого-цифровым преобразователем.
Теперь необходимо подключить выход делителя к любому аналоговому входу на Arduino. В моем случае это ножка А5. Затем попробуем считать напряжение с батареек:
void setup() < Serial.begin(9600); pinMode(A5, INPUT); >void loop()
Получается непонятно что, так как мы забыли конвертировать значение в десятеричную систему счисления. Для этого делим все на 1024:
void loop() < float k = 2/1024; float voltage = k*analogRead(A5); >
Теперь подбираем при помощи вольтметра коэффициент, при котором voltage будет примерно равно реальному напряжению:
float k = 2*1.12; float voltage = k*4.5f/1024*analogRead(A5);
Мы получили сильно прыгающее вверх-вниз напряжение, зачастую не схожее с требуемым. Для исправления этой ошибки добавляем низкочастотную фильтрацию с наиболее оптимальным для вашего проекта коэффициентом сглаживания:
void loop() < float k = 2*1.12; float voltage = k*4.5f/1024*analogRead(A5); float chargeLevel_procents; float chargeLevel; float y; int z; //Сглаживание значения заряда батареи float A_v = voltage; //Значение float A_K = 0.3; //Коэффициент сглаживания static float A_y; //Выходное значение A_y = A_y - A_K * (A_y - A_v); >
Теперь осталось измерить напряжение на полностью заряженных аккумуляторах и полностью разряженных. В моем случае разница составляет ровно 1В.
После этого необходимо найти заряд аккумулятора в процентах:
y = A_y / 8.4 * 100; chargeLevel_procents = y; chargeLevel = z;
Нам осталось только перевести это в значок батарейки (или в квадратики, как у меня) и вывести в консоль:
if(chargeLevel_procents >= 0 && chargeLevel_procents < 33) < z = 1; // 1/3 заряда >else if(chargeLevel_procents >= 33 && chargeLevel_procents < 66) < z = 2; // 2/3 заряда >else if(chargeLevel_procents >= 66 && chargeLevel_procents
Serial.print("\t Voltage: "); Serial.print(A_y); Serial.print(" V "); Serial.print("\t Charge: "); if(z == 1) < Serial.print("■"); >else if(z == 2) < Serial.print("■■"); >else if(z == 3) < Serial.print("■■■"); >else < Serial.print("ERROR"); >Serial.print("\r\n");
Для просмотра результата рекомендую использовать PuTTY, т. к. она поддерживает любые кодировки, в отличие от обычного «монитора порта» в Arduino IDE.
- Робототехника
- DIY или Сделай сам
На сколько заряда батареи хватает
Добрый вечер, ответьте пожалуйста на сколько реально хватает батареи? У меня площадь квартиры 75 кв.м.
Комментарии 3
nezavtrakal
2 года назад
Сильно зависит от режима уборки (стандартная / интенсивная / турбо). На стандартной у меня убирал примерно 30-35 кв метров (около 40 минут) , оставалось около 50-55% батареи, на интенсивной уборке, остается 25-30% батареи (при той же площади), на турбо уборке пылесос «не доубрал» 5 метров, и поехал заряжаться на базу (при 15% батареи он возвращается на базу для подзарядки, после чего продолжает уборку с места, где остановился).
Как ухаживать за роботом-пылесосом: 9 правил, которые мало кто соблюдает
«Быстро сломался аккумулятор», «не видит базу», «высыпает мусор обратно на пол» — эти жалобы на работу робота часто объясняются просто: пользователи забывают, что у роботов-пылесосов нет программы «автоматический уход за собой». Рассказываем, как позаботиться о роботах, чтобы они работали дольше.
Полная первая зарядка аккумулятора в соответствии с инструкцией
Аккумулятор робота-пылесоса нуждается в правильной первой зарядке и правильном хранении, если пылесос долгое время не используется. Для разных видов аккумуляторов (никель-металл-гидридный, литий-ионный) эти правила разные, длительность первой зарядки тоже индивидуальна: рассчитывается из мощности и ёмкости аккумулятора и тоже зависит от его вида.
Правильные конкретно для вашей модели параметры прописаны в инструкции, но общие правила таковы: первая зарядка должна быть полной, даже если вам хочется быстрее опробовать робота в деле и вам кажется, что «полчасика пусть поубирается, на это же половины зарядки хватит?» Например, вот что рекомендует известный производитель роботов-пылесосов iRobot: «В первый раз перед началом использования нужно подключить робот-пылесос к зарядному устройству или установить его на зарядную базу и заряжать не менее 16 часов. Если через 3–4 часа после начала зарядки индикатор заряда загорится зеленым цветом, это будет означать, что аккумулятор заряжен полностью. Однако нужно не прерывать процесс зарядки и выдержать первый цикл зарядки ровно 16 часов».
Полная разрядка аккумулятора
NiMH-аккумуляторs обладают так называемым эффектом памяти: он «привыкает» отдавать в процессе работы емкость, полученную во время последних циклов зарядки. Например, аккумулятор разрядился неполностью, так вы использовали короткую программу уборки или прервали ее. Вы возвращаете аккумулятор на базу при помощи пульта ДУ. Что происходит с аккумулятором? Он привыкает «отдавать» эту половину и теряет емкость. Если такое происходило, то просто нужно несколько раз полностью зарядить и разрядить аккумулятор, постепенно он «вспомнит» свою емкость — так можно улучить даже сильно побитый жизнью аккумулятор. Во многих моделях такой «курс» предусмотрен, и робот периодически встает на цикл длительной зарядки, как правило, подавая специальные сигналы — мигание индикаторов, например. Для того, чтобы опознать эти действия и не мешать роботу, тоже надо заглянуть в инструкцию.
Литий-ионные аккумуляторы в меньшей степени страдают «эффектом памяти», и все равно требуют полной первой зарядки и соблюдения правил, прописанных в инструкции.
Правильное хранение аккумулятора на время отпуска или длительного перерыва в работе
Любые аккумуляторы — и литий-ионные, и никель-металл-гидридные — требуется вынуть из корпуса робота-пылесоса и хранить отдельно, зарядив не менее, чем на 40%, в сухом и прохладном месте. Относительно совета держать аккумулятор в холодильнике есть разные мнения: с одной стороны, низкая (но обязательно плюсовая!) температура в холодильной камере — это идеальные условия, с другой стороны, во многих современных холодильниках поддерживается повышенная влажность, поэтому тут требуется осторожность.
Уход за «глазами» и «ушами» робота-пылесоса
Робот ориентируется в помещении при помощи датчиков и камер — это и есть его «глаза», которые не должны быть покрыты пылью или заляпаны. Для связи робота с базой тоже используются датчики. Поэтому корпус робота и базу нужно содержать в чистоте, регулярно протирая мягкой тканью, салфеткой из микрофибры или специальной салфеткой для ухода за техникой.
Камера и датчик должны быть чистыми
Уход за щетками
Грязные щетки с намотанными волосами и шерстью животных не только ухудшают качество уборки, но и заставляют пылесос работать на максимальной мощности, и ему приходится тратить больше энергии на вращение щеток «через силу». В последнее время появилось много моделей без центральной щетки-валика: такие роботы просто засасывают мусор и пыль в отверстие на «брюшке», а для подметания и подталкивания мусора там работают только боковые щетки — «вертолетики». Возможно, для тех, кому неохота морочиться с турбощеткой, это наилучший вариант.
Робот-пылесос без центральной щетки
Своевременная очистка пылесборника и замена фильтров
Объем пылесборников роботов-пылесосов — в среднем 600 мл, и после почти каждой уборки нужно его освобождать от мусора, даже если он не наполнился целиком – на две уборки емкости контейнера вряд ли хватит. Постоянное несоблюдение этого правила приведет и к ухудшению качества уборки, к более быстрой разрядке аккумулятора и, со временем, к появлению зазоров и нарушению герметичности конструкции. Из-за этого пылесос будет высыпать часть мусора на пол.
Моторный и выпускной фильтры нуждаются в очистке и замене: сроки могут быть разными в зависимости от модели и интенсивности эксплуатации, но, как правило, они невелики: в среднем от 3 месяцев до полугода. Лайфхак: фильтры хорошо чистятся обычным пылесосом, если он у вас есть.
Руководство пользователя умных пылесосов Xiaomi
Рекомендуется к прочтению перед использованием умных пылесосов Xiaomi.
Схематический вид и кнопки управления:
1. Кнопка уборки/питания. Данная кнопка отвечает за включение и выключение робота путем удержания кнопки. Короткое нажатие запускает режим уборки.
2. Индикатор. Индикатор показывает уровень заряда аккумулятора, а также сервисную информацию:
белый цвет – батарея заряжена на 50 и более процентов;
желтый цвет – диапазон от 20 до 50 процентов;
красный цвет – заряд менее 20 процентов;
мигание индикатора указывает на включение/выключение, а также зарядку;
красное мигание указывает на нарушение режима работы.
3. Кнопка возвращения на базу. Нажатие данной кнопки даёт роботу команду на возврат к зарядной станции. Удержание клавиши запускает локальную уборку.
4. Выступ для открытия крышки.
1. Индикатор Wi-Fi. Данный индикатор показывает статус подключения к сети Wi-Fi:
частое мигание означает, что Wi-Fi подключается;
постоянное свечение показывает, что Wi-Fi подключен;
медленное мигание указывает на отключение Wi-Fi.
2. Кнопка сброса. Нажимается скрепкой для открытия лотка с sim-картами.
3. Контейнер для пыли и мусора.
5. Язычок для изъятия контейнера.
Дополнительные принадлежности
1. Зарядная станция. Используется для зарядки и синхронизации робота со смартфоном и домашним Wi-Fi.
2. Инструмент для очистки щеток.
3. Шнур для подключения зарядной станции к сети 220V.
Также опционально в комплекте может находиться тряпка для влажной уборки, дополнительный комплект щеток и фильтров.
Информация о роботе
1. Лазерный дальномер для определения расстояния до объектов.
2. Датчик столкновения для определения столкновения с объектами.
3. Ультразвуковой радар для прорисовки местности.
4. Воздуховод для всасывания воздуха.
5. Динамик для воспроизведения системных сигналов.
6. Датчики высоты. Предотвращают падение робота с высоты, например, не позволят пылесосу упасть с лестницы.
7. Поворотное колесо для маневренности.
8. Боковая щетка для уборки в углах.
9. Основная щетка для захвата загрязняющих элементов.
10. Крышка для щетки служит удерживающим механизмом.
11. Ведущие колеса.
12. Разъем USB для отладки робота через специальное устройство.
Подготовка и запуск робота-пылесоса
Очистите участок пола, где будет установлена зарядная станция робота. По бокам от нее должно быть свободное расстояние в 0.5 метра, а спереди – более 1 метра (желательно 1.5 метра).
Далее устанавливаем станцию, присоединяем к ней штатный кабель и подключаем ее к сети питания.
Включите робота, удерживая кнопку питания, и поставьте его на зарядную станцию так, чтобы индикатор отобразил процесс зарядки.
Следующий шаг – это синхронизация робота со смартфоном и домашним Wi-Fi. Для этого нужно скачать приложение Mi Home. Оно доступно по данным QR-кодам, либо в магазинах приложений.
QR-код для Аndroid
Далее следует войти в приложение и синхронизироваться с роботом-пылесосом. Подробное описание будет доступно по данной ссылке
QR-код на описания подключения
Обслуживание Контейнер и фильтр необходимо чистить после каждой уборки.
Для этого откройте люк пылесоса и извлеките пылесборник из отсека, нажав на паз.
Откройте крышку контейнера в указанном направлении.
Выбросьте мусор из контейнера.
* Для поддержания нормальной работы фильтра рекомендуется во время очистки от мусора слегка постучать по нему, чтобы избавиться от оставшихся частиц. Мыть фильтр категорически запрещается! Менять фильтр рекомендуется раз в 3 месяца для поддержания высокой степени эффективности. Основная (центральная) щетка
1. Нажмите упоры для удаления крышки основной щетки.
2. Снимите основную щетку и очистите ее ось с помощью специального инструмента.
3. Отрежьте накрученные волосы с помощью специального инструмента.
4. Поставьте обратно очищенную основную щетку и крышку.
Примечание: для эффективной уборки рекомендуется производить замену щетки каждые 6-12 месяцев в зависимости от интенсивности использования. Чистить щетку рекомендуется раз в неделю.
1) Отвинтите боковую щетку.
2) Снимите и очистите боковую щетку.
3) Вставьте обратно и закрепите боковую щетку.
Примечание: рекомендуется заменять боковую щетку каждые 3-6 месяцев, чтобы обеспечить эффективную уборку. А чистить щетку рекомендуется раз в 3-4 недели.
Датчики, расположенные на корпусе робота-пылесоса, рекомендуется протирать по мере загрязнения или раз в месяц.
Очистите коннектор зарядного устройства док-станции сухой мягкой тканью.
Обеспечьте свободное пространство 0.5 м с обеих сторон и 1 метр с лицевой стороны, затем подключите док-станцию к электросети.
Примечание: не устанавливайте зарядную станцию под прямыми солнечными лучами, а также рядом с посторонними объектами в районе стыковки. В противном случае робот не сможет вернуться к зарядной станции автоматически. Проводить уборку рекомендуем раз в месяц.
Робот имеет встроенный высокопроизводительный литий-ионный аккумулятор. Для того чтобы поддерживать работу батареи, рекомендуем заряжать робота после ежедневных уборок.
Примечание: если Вы планируете не пользоваться роботом в течение длительного времени, пожалуйста, выключите его и заряжайте по крайней мере раз в три месяца, чтобы избежать повреждения батареи из-за чрезмерного разряда и последующей потери емкости.
Устранение возможных неисправностей
1) Нужно ли заряжать батарею и полностью разряжать первые 3 раза?
Литиевая батарея без эффекта памяти, поэтому достаточно полной зарядки.
2) Как сбросить настройки Wi-Fi?
В случаях, когда произошла потеря связи между роботом и телефоном (маршрутизатор изменил конфигурацию, вы забыли пароль или по каким-то другим причинам), откройте верхнюю крышку, чтобы видеть индикатор Wi-Fi. Затем нажмите одновременно на кнопку питания и клавишу Home до тех пор, пока не услышите голосовое оповещение «Перезагрузка W-Fi». Если индикатор Wi-Fi снова нечасто замигает, это значит, что произведен успешный сброс.
3) Как я могу обновить прошивку?
Вы можете обновить прошивку робота через мобильное приложение. Во время обновления, пожалуйста, подключите робота к док-станции и убедитесь, что уровень заряда превышает 20%. Когда кольцевой индикатор замигает белым цветом – встроенное программное обеспечение обновлено.
4) Как сделать сброс системы?
Если робот не реагирует на нажатие клавиш или не может быть выключен, попробуйте его перезагрузить, нажав кнопку сброса (кнопка Reset под крышкой), робот автоматически перезагрузит систему. Перезагрузка системы сбрасывает настройки синхронизации, режима уборки, а также настройки Wi-Fi.
5) Как восстановить заводские настройки, если не удается сбросить систему?
Если не удается произвести сброс системы, пожалуйста, нажмите одновременно на клавишу Home и на клавишу Reset, пока не услышите голосовое оповещение «Запуск восстановления заводских настроек» – робот начнет восстанавливать заводские настройки.
6) Почему не включается робот?
Возможное решение 1. Уровень заряда батареи может быть очень низким. Пожалуйста, подключите робота к док-станции и дайте зарядиться.
Возможное решение 2. Температура может быть ниже 0°C или выше 50°С, в то время как рабочий диапазон температуры 0-40°.
7) Почему не удается зарядить робота?
Возможное решение 1. Док-станция может быть не подключена к источнику питания, поэтому, пожалуйста, убедитесь, что оба конца электрического шнура подключены.
Возможное решение 2. Коннекторы док-станции могут быть загрязнены, поэтому, пожалуйста, почистите зарядные разъемы док-станции и робота.
8) Что делать, если эффективность очистки снизилась или остается грязь?
Возможное решение 1. Пожалуйста, очистите мусорный контейнер, он может быть полон.
Возможное решение 2. Пожалуйста, очистите фильтры, они могут быть забиты.
Возможное решение 3. Пожалуйста, очистите центральную щетку, на ней могут быть накручены волосы.
9) Что делать, если робот не может вернуться к док-станции?
Возможное решение 1. Пожалуйста, переместите его в другую свободную зону, т.к. ему могут мешать препятствия.
Возможное решение 2: Пожалуйста, поставьте робота рядом с док-станцией и проверьте, возвращается ли он к док-станции или нет. Возможно, он находился слишком далеко.
10) Что делать, если робот ведет себя ненормально?
Перезапустите робота. Если проблема осталась, то, пожалуйста, выполните сброс системы или восстановите заводские настройки.
11) Потребляет ли робот много энергии при постоянной зарядке?
Во время зарядки робот потребляет некоторое количество электроэнергии, но после полной зарядки он переходит в спящий режим, чтобы сохранить максимальную производительность.
12) Почему уборка по расписанию не работает?
Пожалуйста, проследите, чтобы уровень заряда батареи превышал 20%.