Счетчик Фейсбук-лайков из старого электросчетчика

в 14:51, , рубрики: diy или сделай сам, лайфхак, счетчик лайков, электроника, Электроника для начинающих

Мы сделали физический счетчик лайков страницы в Facebook. Из старого электросчетчика. В основе программируемая плата Iskra Neo от Амперки (аналог Ардуино) и сервомотор постоянного вращения.

Счетчик Фейсбук-лайков из старого электросчетчика - 1

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

Это первый опыт.

Как это сделано

Электроника для получения лайков уже была собрана и опробована в проекте Амперки, её достаточно только собрать. Оказалось, что это не так просто, когда я захотел вместо Искры сделать всё на Arduino Uno. Не получилось из-за разных принципов работы с UART (через него получает сигналы WiFi-модуль). Чтобы не писать программный UART, пришлось забить на Ардуино и использовать оригинальную Iskra Neo.

Модуль не может запрашивать количество лайков напрямую у страницы fb, так как не работает с HTTPS. Чтобы обойти ограничение на сервер вешается PHP-скрипт, который узнает количество лайков и выдается в виде переменной. А модуль уже обращается к адресу этого PHP-скрипта с помощью AT-команд (помните, раньше модему можно было сказать ATDP XXX, где XXX это телефонный номер, и он начинал по нему звонить? вот это они и есть)

Электроника была готовая, оставшиеся задачи я разделил на две части:

  • Привод для счетчика
  • Управляющая программа

Привод для счетчика

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

Счетчик Фейсбук-лайков из старого электросчетчика - 2

Счетчик Фейсбук-лайков из старого электросчетчика - 3

Счетчик Фейсбук-лайков из старого электросчетчика - 4

Управляющая программа

Сначала я посчитал на сколько миллисекунд нужно включать мотор, чтобы он поворачивал диск на один оборот. Получилось примерно 1650 мс. Тут же выяснилось, что эта цифра меняется от напряжения в сети (а оно почему-то иногда скачет), и от гуляния колесиков счетчика. Они были разработаны лет 50 назад и плюс-минус полцифры тогда роли не играли.

Счетчик Фейсбук-лайков из старого электросчетчика - 5

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

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

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

Это нужно, чтобы при отключении от сети знали на сколько надо поправить счетчик.

А что в итоге?

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

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

Доработаем в следующей версии.

Автор: petrovichbrothers_design

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js