avatar_Ghozt

BattMeter. Очередная попытка создать убийцу Cycle Analyst (уже в продаже)

Автор Ghozt, 14 Май 2017 в 21:38

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Ghozt



Прикидочные характеристики текущего прототипа:


  • Дисплей 2004
  • Напряжение 20-250В
  • Ток -100A...+100A (возможен до -1000А...+1000А) Будут поддерживаться шунты с падением напряжения до 150мВ
  • 4 входа для термодатчиков. Поддерживаемые датчики: NTC1, 10, 100K, KTY83, 84 (семейства целиком)
  • Управление двумя кнопками
  • Часы
  • Зуммер по перегреву, задаваемым порогам напряжения и тока
  • Реле-термостат для охлаждения мотора/подогрева батареи

Список измеряемых/вычисляемых параметров по экранам

Основной экран

  • Вольты
  • Амперы/ватты (выбирается)
  • Ампер-часы/ватт-часы (выбирается)
  • Дневной пробег
  • Текущая скорость
  • Часы
  • Температуры всех компонентов, если включен термомониторинг

Экран потребления (Consumption)

  • Instant - мгновенное потребление в Втч/км
  • Average - среднее потребление в Втч/км за всю поездку
  • Spent - потраченные ватт-часы

Экран ездовой статистики (Driving stats)

  • Avg speed - общая средняя скорость
  • In move (чередуется с Avg Speed) - средняя скорость за поездку в движении
  • Max speed - максимальная скорость
  • Drive Time - общее время поездки, чч:мм:сс
  • In move (чередуется с Drive Time) - время в движении

Экран батарейной статистики (Battery stats)

  • Max Amps/Max Power - максимальный ток/максимальная мощность (чередуется)
  • Max VDrop - максимальная просадка батареи под нагрузкой: дельта между напряжением батареи без нагрузки и с ней
  • Battery R - внутреннее сопротивление батареи, считается по максимальной просадке

Экран рекуперации (Recuperation)

  • Max Regen - максимальный обратный ток/максимальная мощность регена (А/Вт, чередуется)
  • Restored - количество восстановленной энергии в Ач
  • Regen/Fwd - отношение восстановленной энергии к потраченной в %

Экран температур
Температуры всех компонентов. M1, M2 - моторы, Bt - батарея, Cn - контроллер. H - максимальная зафиксированная температура каждого компонента. L - минимальная зафиксированная температура (есть только у батареи). Если подключены не все упомянутые выше термодатчики, то соответствующие строки не отображаются.

Экран общей статистики

  • Total km - общий пробег
  • Total Ah - общая потраченная емкость
  • Cycles - количество циклов батареи





Предполагаемые отличия старшей версии - задел на далекое будущее

  • Вход для внешнего потенциометра/3-позиционного переключателя
  • Вход/выход управления сигналом газа для реализации ограничения тока, скорости, круиз-контроля и пр.
  • Поддержка кареток с торк-сенсором
  • Вход для сигнала тормоза - интеграция с круизом, управление стоп-сигналом при аналоговом регене и пр.
  • Поддержка microSD-карт для ведения лога, сохранения настроек и пр.

первая итерация платы

Немного предыстории. Все началось с этого поста, в котором была написана сырая прошивка для ваттметра под 1602 дисплей.
После была сделана первая пробная версия плат:




Но их использование было невозможным из-за достаточного количества косяков в разводке. Впрочем, мне все же удалось на этих образцах испытать некоторые технические решения.
Так, например, был проверен DC-DC на верхнем пороге напряжения 100В и нагрузке в 0,35А. Нагрев составил 40 градусов для микрухи LM5017 и 50 для дросселя. Всяко холоднее, чем любой параметрический стабилизатор.






Единственное, что при этом не было измерено - размах пульсаций под нагрузкой, не было на тот момент осциллографа в хозяйстве. Надо будет повторить эксперимент.
Что еще порадовало - даже при использовании в схеме простенького ИОН расхождение с мультиметром составило 0,1В. Причем я никак не калибровал вольтметр. Если так будет - обойдусь вообще без программной калибровки.
вторая итерация платы

Во вторую версию плат, помимо правки обнаруженных косяков, было решено заложить еще и поддержку USB. Конкретно надоело таскаться с шнурком в 5 проводов, неудобно подключать каждый раз при прошивке, в общем,
небольшой шаг к user-friendly:



И вот на этом прототипе все аппаратные фичи заработали как надо.
На данном этапе предстоит правка прошивки и добавление новых функций. Для начала целиком добью прошивку под дисплей 1602. Но в хозяйстве уже лежат 2004, и есть первые наброски кода под него. После этого (или параллельно с этим) буду рисовать корпуса под 3д-печать. Ход работы теперь буду освещать здесь.
третья итерация платы, новая прошивка
четвертая итерация платы, переезд на новый проц, доделан корпус

илс

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



HPend

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

Ghozt

В качестве побочного продукта из отбраковки первой партии платок думаю сделать DC-DC со входом 20-100В и выходом 5/12/15В 0,6А. Из 5в можно сделать подзарядку для телефона, из 12/15 - переделать питание контроллера, заменив гасящий резистор и LM317 на подобный преобразователь. Свет вряд ли выйдет запитать, тока маловато. Посему вопрос: какие более актуальны, и есть ли вообще смысл?

av404

[user]Ghozt[/user], у нас уже сделали. Почитай http://evel-ural.ru/index.php?topic=261.0, думаю, не пожалеешь о времени.
Green City Jet New 16''. Мотор - 24в/250вт. АКБ - литиево-ионный 48в/16ач 13s5p 18650

Ghozt

[user]av404[/user], ну кое-какие функции может и у этого перейму. Но почему последнее сообщение было уже 1,5 года назад? Проект тоже встал?

crond

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

Андрей25

Очень необходимый прибор, ибо аналогов цикл-аналиста нет (заросшие пылью проекты не в счёт), а цикл аналист штука хорошая, но цена очень большая.
E-KROSS, ДД 1.5кВт, LiFePO4 75В 20Ач 1.4кВт.

Ghozt

Есть немного новостей. Работа движется, но не так быстро, как хотелось бы. Но обо всем по порядку.
Поскольку с OSHPark пришло 3 платы, было собрано 3 прототипа: на 1602, 2004 и 2004 большом дисплее:




Для 2004 большого плату надо будет переделывать, т.к. USB-разъем слишком далеко от края получился

Хочу вынести на суд вариант размещения показаний на главном экране в варианте для 2004 дисплея:



Немного пояснений:  Wh и Ah чередуются, также как и показания 2 термодатчиков bat/mot соответственно для батареи и мотора. Думаю добавить еще мгновенный расход (или расход за последний километр) и чередовать его с усредненным расходом Wh/k

Изменения, коснувшиеся трассировки платы:
- кнопка вновь повешена на пин с аппаратным прерыванием, мне не нравится тормознутость кнопки, если она не на прерывании. Окончательно решил, что кнопка будет одна
- добавлены фильтры ФНЧ для кнопки и выхода управления сигналом газа
- добавлен небольшой вырез для USB-разъема

В процессе правки прошивки сгорела подсветка на 1602 дисплее, и я готовлюсь уже целиком от него отказаться.

Далее по корпусу. С корпусом все крайне сложно и неоднозначно. Напомню, корпуса планируется ваять посредством 3D-печати из атмосферостойкого ASA-пластика. Но 3д-печать накладывает определенные ограничения на форму корпуса - на красивости рассчитывать не приходится, максимум утилитарности. Сначала думал делать корпус из 3 частей, но потом решил ограничиться двумя: нижняя крышка с гермовводами кабелей и креплением на руль, и коробочка с отверстиями под дисплей, USB-разъем и слот SD-карты.

Разъем и слот планируется закрыть крышечками из резины/флекса, которые опять же будут печататься. Герметичность дисплея сверху будет обеспечиваться вклеенным на герметик 2мм-оргстеклом.

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

Дабы не быть голословным в плане корпуса, покажу черновой вариант верхней крышки для дисплея 1602:



И он же, но уже в пластике. Отверстие под SD сделать забыл, мда.



На 1602 получается довольно толстая коробочка из-за конденсатора на входе. Высота корпуса - 31мм.  2004 можно сделать примерно на 6мм тоньше, поскольку там есть куда отогнуть этот кондер (видно на верхних фотках)

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

На этом новости закончились. Пока что.

илс

Цитировать
Хочу вынести на суд вариант размещения показаний на главном экране в варианте для 2004 дисплея:
Вроде нормально.
Но...желательно сделать 2 или 3 экрана, на главном - основная инфа (скорость, пробег, ток, напряжение, темп.).

А все остальное - на последующие экраны/рабочие столы.

Напр. мощность -это  параметр, не оч. важный. Любой, без труда, видя ток и напряжение, сможет их перемножить, в уме..
А когда цифр много, и они бегают, то восприятие резко ухудшается/замедляется, пилот (надолго) отвлекается от управления. а это может закончится ДТП.

Ghozt

[user]илс[/user], разумеется, экран будет не один. Мощность тогда на второй перенесу, может вообще сделаю 6 параметров вместо 8 на главном

tmiaer

[user]Ghozt[/user], через терминал настраивать вполне вариант.

Согласен с [user]илс[/user], чередующиеся показания на приборах транспортного средства - очень плохо. Либо разбить их на два экрана, переключение между которыми будет осуществляться явно кнопкой, либо просто дать пользователю возможность самому задать интересующие величины. Лучше меньше параметров на экране, но крупнее. Вглядываться в простыню текста на скорости тоже не очень хорошая идея.

Из жизненно необходимых мне лично видятся: заряд (А*ч), скорость, расстояние, температура мотора. Все остальное в реальном времени в повседневной езде довольно бесполезно.

Ghozt

[user]tmiaer[/user], в таком случае мне видятся следующие 6 показаний: напряжение, ток, амперчасы слева и скорость, пробег и температура справа. Нижняя строка возможно будет использована в качестве статусной, как вариант, выводить на нее log recording во время записи лога поездки., overheat по перегреву, lowvolts по нижнему напряжению и т.д.

OIS

Дизайн коробочки ИМХО надо менять. Стараться максимально рамку вокруг дисплея уменьшать. Ну и над толщиной поработать, может заменить кондер чем то другим.... Но за идею плюсую!
Бензин - зло и с этим надо срочно что то делать!

Ghozt

[user]OIS[/user], особо не уменьшить эту рамку. Она очень большая из-за большого размера платы у 2004 дисплея. Крышка для 1602 была нарисована впритык, толщина стенки коробочки 2мм

По толщине тоже особо не поиграться, кондер - не единственный высокий элемент, есть еще и индуктивность. Кстати, змерил толщину cycle analyst - как раз 25мм без учета крепления на руль.

Ghozt

Сел я, значится, писать настройку ваттметра через терминал.  И оперативная память 328 меги стала просто на глазах уменьшаться. А потом вспомнилось, что еще логгер писать, еще кучу фич. А места на эту кучу фич уже просто не хватает. Поэтому с тяжелым сердцем, но все же решился на смену контроллера. Теперь это будет Atmega1284p в корпусе TQFP44.  Уж с ней-то точно места хватит на все-все хотелки, и еще останется, а удорожание проекта будет незначительным. Смена МК влечет за собой перетрассировку печатки, и поскольку от 1602 уже я точно отказался, то теперь уже можно смело увеличить плату, сделать весь монтаж односторонним и добавить еще интересных входов-выходов. Также думаю над тем, как сделать универсальную плату для большого  и маленького 2004 дисплея.
Подумываю о смене аппаратной части в плане измерения тока, прямой и обратный ток повесить на разные входы МК, чтобы увебичить разрешение уже даже без оверсемплинга. Но, к сожалению, я опять в самом начале пути. Некоторые части прошивки все равно удастся дописать на текущем образце, но трассировка и прочие радости опять затянутся надолго

Ghozt

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

Dimy4

Написано по мотивам пожеланий отображающихся на экране параметров:

Цитата: илс от 29 Июль 2017 в 22:15
... на главном - основная инфа (скорость, пробег, ток, напряжение, темп.).
Напр. мощность -это  параметр, не оч. важный. Любой, без труда, видя ток и напряжение, сможет их перемножить, в уме..

Цитата: tmiaer от 29 Июль 2017 в 22:28
... Из жизненно необходимых мне лично видятся: заряд (А*ч), скорость, расстояние, температура мотора. Все остальное в реальном времени в повседневной езде довольно бесполезно.


Возможно - мне показалось, но вышеупомянутые хар-ки максимально удобны для людей, попадающим под два основных признака:
1) Езда на химии (ионе, полимере, марганце), с "гнутой" кривой разряда.
2) Езда на мощном (2-3кВт+), или максимально зафорсированном моторе (да и батарея на всю пашет, а то и 2-3 параллельно).
Этим пилотам действительно важны такие параметры, как напряжение АКБ, температура мотора и батареи, скорей всего - и ток.




Напомню, что существует гораздо бОльшее кол-во людей, более чем удовлетворённых ШТАТНЫМИ РЕЖИМАМИ РАБОТЫ ОБОРУДОВАНИЯ, при которых перегревов и адовых просадок просто не бывает, по причине отсутствия условий для их появления.
Соответственно - пропадает необходимость мониторить критичные для первой категории пилотов показания.

Поскольку лично я и большинство моих друзей-товарищей относится именно к этой категории (спокойных, и относительно спокойных пилотов) - опишу свои усереднённые хотелки к ИДЕАЛЬНОМУ ваттметру.




ФАКТИЧЕСКАЯ (ОСТАТОЧНАЯ) ЁМКОСТЬ АКБ  -  безусловно, самая важная ячейка на экране.  Удобно, когда она имеет не только цифровое значение в процентах от полной, или ампер-часах, но и - ГРАФИЧЕСКОЕ, типа крупного значка батарейки на мобиле с быстросчитываемым уровнем заряда.
Наверняка - будет здорово, если символ батарейки раз в пару секунд будет замещаться КРУПНЫМ табло с цифровыми параметрами Ач и\или %.
Или же проценты\ёмкость будут написаны ВНУТРИ символа батарейки. 
Глянул мельком - понял примерно, пригляделся - точно знаешь)

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



МОЩНОСТЬ  -  тут не соглашусь с Сергеем, но мы на разных конфигах катаем, отчего и разброс хотелок возникает.
Для меня это достаточно ВАЖНЫЙ параметр, в отличии от напряжения и даже тока.     Бывает интересно, а то и полезно знать - с какой мощщёй ты сейчас прёшь.
Когда ногами подкрутить, когда газку сбросить, когда - прибавить, ну и конечно - с какой мощностью едет педальный велосипедист, за которым ты пристроился  :-D ))



НАПРЯЖЕНИЕ   Мне - НЕ особо важно видеть постоянно или крупными цифрами напряжение - у меня литий-феррум) в основном, на нём одно и то же напряжение, если ячейки по дороге не раздаривать.



ТОК   Видя текущее значение мощности, у меня нет надобности отслеживать или даже иногда проверять ток.   Так же, как и нет желания производить арифметические операции на ходу), это я про умножение тока на напругу.
Если у меня контроллер на 25А, значит - мой максимальный ток 24-26 ампер, я и так это прекрасно понимаю, и уточнять моментальные значения нет надобности, даже не могу представить - когда это может пригодиться.

Вспомнил - когда новое МК заспицовываю, смотрю ток Холостого Хода на максимальных оборотах), всё, не нужен мне больше ток  :ah:
Нет же в машине прибора, показывающего кол-ва бензина в милилитрах, подаваемого в цилиндры.  Не путайте с экономайзером, плз, там аналог ВтЧ\км.



ТЕМПЕРАТУРА МОТОРА И АКБ)    Самый спорный параметр, наверное), необходимый для "форсажников", и безполезный для живущих старающихся жить в гармонии)
За годы езды на разных конфигах я узнал всего три температуры колеса или батареи: холодное, чуть тёплое, и тёплое)
Частые разгоны-торможения при движении в пробке, почти постоянное использование рекуперации, затяжные подъёмы, движение в зоне низкого КПД (малая скорость на скоростном колесе), пролаз по гОвнам - ни разу не замечал нагрева колеса выше 45-55 градусов, ну - один-два раз батарею литиевую нагрел до 60 максимум, забыл рюкзак для проветривания расстегнуть, быстро вспомнил - ничего не произошло, все живы-здоровы.

Гораздо полезней мне было бы знать температуру воздуха вокруг, что бы или отказаться от поездки в случае -18-20, дабы лицо не отморозить, или АКБ не перенапрягать.

Думается - датчик температуры вещь нужная, поскольку - универсальная, и для максимального удобства и пользы предусмотреть его в ваттметре мечты стОит, но - снабдить бы его алярмом, уровень срабатывания которого можно было настраивать на манер буззеров в селлогах, с подачей громкого звукового сигнала и\или мигающей подсветки.
Форсирующие мотор будут следить за температурой обмоток, берущие всё от АКБ - мониторить батарею, а спокойные - знать погоду)



СКОРОСТЬ, ПРОБЕГ, ОБЩИЙ ПРОБЕГ   -   традиционно все эти показания, имхо, лучше реализованы в программах для телефонов и смартфонов, или же - в простых и дешёвых велокомпьютерах.    Можно выбрать любую модель или программу с удобной лично вам индикацией, а не подстраивать свои глаза под эти пиксельные мелкострочковые цикл-аналисты и их "убийц")

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



Могу эскизы разных вариантов экранов накидать, если пригодится.
Я лечу по Кутузу во мгле-еее, я к родной приближаюсь Земле-еее    :dash:
Контр искрит, всё болит, батарея дымит, я - пилот KS14БЭээээ.. ))

   :-D   (с)) песня из к\ф "Адский тошнопрыг", 1945г. Дармовые Электротранспортные Консультации