Вот люди электросчетчик сделали

Недавно на хабре появилась очередная полезная статья Олега Артамонова – об оптимизации потребления устройств на микроконтроллерах. В заключительной части мельком упоминалось о “полусамодельном” устройстве, используемом в Unwired Devices для измерения энергопотребления – которое в последнее время сильно улучшилось и превратилось в самостоятельный продукт (и да, его можно купить).

energymon

Разумеется, это “не только счетчик” – раз уж тут стоит микроконтроллер, то его стоит “загрузить” дополнительными задачами, так что здесь есть еще “мост” USB-UART и совместимый с CMSIS-DAP отладчик (а заодно можно использовать устройство в качестве электросчетчика в домике Барби, по масштабу подходит идеально). Это все крутится под управлением довольно нетривиальной прошивки – тут вам и срабатывающий раз в 3 микросекунды АЦП, и выдаваемые с периодичностью в 10-100 миллисекунд данные об энергопотреблении, и обновляемый раз в секунду экранчик – в общем, от написанной в стиле “бесконечный цикл” прошивки DAP42 здесь получается практически настоящая, но очень маленькая RTOS.

Да, не все пока работает идеально гладко (тем более, что основной упор при разработке делался на мониторинг энергопотребления, а мост USB-UART и отладчик – это “бонусы”) – но исходники открыты и выложены на гитхаб, так что при желании в них можно покопаться (чем я и занимаюсь сейчас, пытаясь добиться работы этого всего в полном объеме с некоторыми микроконтроллерами TI):

https://github.com/unwireddevices/dap42

Больше всего мне интересно, конечно, другое – рано или поздно в любом проекте на микроконтроллере “вырастает” несложная RTOS (собственно, с UMDK-ENERGYMON это уже случилось). А вот в какой момент там появится “заново написанная, неспецифицированная, глючная и медленная реализация половины языка Common Lisp”? Впрочем, парсер консольных команд уже есть.

Комментарии отключены.