Мы сделали физический счётчик лайков страницы студии в Facebook. Из старого электросчётчика. В основе программируемая плата Iskra Neo от «Амперки» (аналог «Ардуино») и сервомотор постоянного вращения.
Чтобы наблюдать за ростом лайков, мы поставили онлайн-камеру, направленную на счётчик, и вынесли сюда кнопку лайков (мы, конечно, хотим набрать лайков на страницу, но не только). Ещё мне нравится разбираться с электроникой и управлять вещами через интернет.
Это первый опыт.
Как это сделано
Электроника для получения лайков уже была собрана и опробована в проекте «Амперки», её достаточно только собрать. Оказалось, что это не так просто, когда я захотел вместо «Искры» сделать всё на Arduino Uno. Не получилось из-за разных принципов работы с UART(через него получает сигналы WiFi-модуль). Чтобы не писать программный UART, пришлось забить на «Ардуино» и использовать оригинальную Iskra Neo.
Модуль не может запрашивать количество лайков напрямую у страницы в Facebook, так как не работает с HTTPS. Чтобы обойти ограничение на сервер, вешается PHP-скрипт, который узнаёт количество лайков и выдаётся в виде переменной. А модуль уже обращается к адресу этого PHP-скрипта с помощью AT-команд. (Помните, раньше модему можно было сказать ATDP XXX, где XXX — это телефонный номер, и он начинал по нему звонить? Вот это они и есть.)
Электроника была готовая. Оставшиеся задачи я разделил на две части.
- Привод для счётчика.
- Управляющая программа.
Привод для счётчика
Было бы здорово сделать элегантное решение подключения счётчика с подачей тока на оригинальные катушки. Тогда можно было и оставить вращающийся диск и по минимуму вмешиваться в конструкцию. Но это сложно реализовать, поэтому отложили до следующей версии. Сейчас в счётчике сервомотор постоянного вращения прикреплён напрямую к шестерням, вращающим счётчик.
Управляющая программа
Сначала я посчитал, на сколько миллисекунд нужно включать мотор, чтобы он поворачивал диск на один оборот. Получилось примерно 1650 мс. Тут же выяснилось, что это число меняется от напряжения в сети (а оно почему-то иногда скачет) и от гуляния колёсиков счётчика. Они были разработаны лет 50 назад и плюс-минус полцифры тогда роли не играли.
Программе нужно знать, что именно показывает счётчик, а нам хотя бы иметь возможность вручную подкорректировать его. Чтобы узнать точное количество градусов, на которое мотор повернул колёсики, понадобится датчик вроде датчика положения дроссельной заслонки на автомобиле, это сложно.
Поэтому в первой версии для контроля правильности показаний есть электронный дисплей рядом со счётчиком и две кнопки, которыми можно вручную подкорректировать счётчик, если он куда-то не туда убежал. Полуручной режим, а что делать.
В программе предусмотрена переменная, которая хранит количество лайков на физическом счётчике. При выключении питания она сохраняется в EPROM и при включении оттуда же берётся обратно.
Это нужно, чтобы при отключении от сети знали, на сколько надо поправить счётчик.
В итоге
Получился классный арт-объект. Прежде чем настроить камеру и повесить его на стену у себя в комнате, мы показали его в общей зоне коворкинга. Это добавило нашей странице пару десятков лайков :)
Он ещё сильно далёк от совершенства. Не хватает точности, сервомотор при включении питания иногда начинает крутиться сам по себе, а также отсутствует оригинальный вращающийся диск.
Доработаем в следующей версии.
Мы собирали колокольчик, который звенит при поступлении денег на счет. Но теперь хотим и ваш счетчик тоже!
Нужный фитиль
Нужно покрутить ручку на этом аппарате, наклониться и спросить: «Оператор, сколько на счете?»
ЧТо за бред!
Всю жизнь счетчики дорабатывали что бы они не крутились, а вы тут похабщиной занимаетесь.
До сих пор кое где справа от стеклышка старого механического счетчика обрезок фотопленки вставлен
А слабо сделать такое: за дизлайк в офис заезжает робот и, например, стреляет водой в кого-то рандомно? Ну или кричит что-нибудь матерное.
Ещё можно скорость вращения в зависимости от числа посетителей на сайте.
СССР счётчики поддерживали шикарный диапазон скоростей вращения...
Сколько лет назад я видел это на каком-нибудь Хабре или сайте для домохозяек. Где инновации, почему сразу ардуино
А нет онлайн стрима счетчика? Прям захотелось зайти лайкнуть, и посмотреть на счетчик. Вообще, идея - огонь. Это просто гениальный SMM ход - заставить людей лайкнуть страницу, ради того что-б посмотреть как счетчик крутанется. Молодцы!
Отличный девайс. Петровичи, а что если Вам "допилить" дизайн счетчика, скрыть все техно и нано, на фасад штамповку смонтировать "made in Petrovich Brothers" (сделано в СССР) и ценник прикрепить как в старые добрые времена - на джутовой веревки. Договриться с хедлайнерами от ютуба - вы им девайс и креатив в стрим, они вам конверсию на ресурсы.
Комментарий удален
Комментарий удален
Ждите звонков: - Ваш счетчик вышел из строя, необходимо сделать поверку, ждите нашего специалиста!
у BB Burgers стоит счётчик лайков во всех заведениях , надо у них спросить )
Счётчик надо в форме нарцисса тогда...смастерить вокруг него лепестки из солнечных панелей...и чтоб на каждой новой сотне лайков гимн звучал)))
Сделайте такой же счетчик для подсчета лайков этой статьи с вебкой и обратной связью. Уверен, что статья взлетит в топ, поставив рекорд на vc.ru.
Задумка хорошая, а вот реализация убогая.
Чтобы узнать точное количество градусов, на которое мотор повернул колёсики, понадобится датчик вроде датчика положения дроссельной заслонки на автомобиле, это сложно
Выпили ямку на краю диска и поставь микропереключатель с рычажком - будет тебе счётчик оборотов. Сделаешь две таких и будет инкрементальный энкодер. Микрик заведи на прерывания той же ардуины.
И вообще изначально это надо было делать на ESP модуле.
Модуль не может запрашивать количество лайков напрямую у страницы в Facebook, так как не работает с HTTPS
ESP8266? Даже в примерах есть HTTPSRequest.
А он может повернуться на 300 градусов вместо 360, и как это отслеживать?
Зачем? Один оборот диска - одно переключение цифры. Надо точнее - энкодер поставь на вал движка.
Сейчас увидел, что на лицевой панели прямо написано соотношение оборотов диска к переключению цифр. Для переключения младшего разряда нужно 128 оборотов диска. Даже серва не нужна, можно обычным двигателем постоянного тока обойтись.
В любом случае добавление экрана и кнопок для подстройки показаний, вместо счётчика оборотов - это костыль.
Круто!)) Всегда рад появлению таких вот необычных устройств. Мы вот на Raspberry Pi 3 собрали девайс для мгновенной передачи информации на разные прикольные интерфейсы такие как LED экран, онлайн стрим, VR и т.п. Работает на блокчейне сети Ethereum.
Видимо потому, что идея со счетчиком действительно ни у кого не вызвала вопроса "но зачем"?
Комментарий удален
Комментарии