Счётчик лайков в Facebook из старого электросчётчика

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

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

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

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

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

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

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

  1. Привод для счётчика.
  2. Управляющая программа.

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

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

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

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

Вот оригинальное устройство для получения лайков из интернета

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

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

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

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

В итоге

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

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

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

0
58 комментариев
Написать комментарий...
Влад Цыплухин

Мы собирали колокольчик, который звенит при поступлении денег на счет. Но теперь хотим и ваш счетчик тоже!

Ответить
Развернуть ветку
Artyom Petrovich
Автор

Круто! А как узнавать состояние счета? По оповещению через емэйл?

Ответить
Развернуть ветку
8 комментариев
Sergey Arsenichev

Servo наживает?

Ответить
Развернуть ветку
Георгий

ЧТо за бред!
Всю жизнь счетчики дорабатывали что бы они не крутились, а вы тут похабщиной занимаетесь.
До сих пор кое где справа от стеклышка старого механического счетчика обрезок фотопленки вставлен

Ответить
Развернуть ветку
Artyom Petrovich
Автор

Отличный коммент )
Помню медом диск мазали как-то и муравьев запускали. А тут придется обрушить сервера Цукерберга

Ответить
Развернуть ветку
1 комментарий
Ilya Finagin

А слабо сделать такое: за дизлайк в офис заезжает робот и, например, стреляет водой в кого-то рандомно? Ну или кричит что-нибудь матерное.

Ответить
Развернуть ветку
ILoveVC

Картинка с троллейбусом из буханки.jpg

Ответить
Развернуть ветку
Nick Sidorov

Прикольно :)

Ответить
Развернуть ветку
Make Luv

Интересная задумка)

Ответить
Развернуть ветку
Sandy Bell

Ещё можно скорость вращения в зависимости от числа посетителей на сайте.
СССР счётчики поддерживали шикарный диапазон скоростей вращения...

Ответить
Развернуть ветку
Artyom Petrovich
Автор

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

Ответить
Развернуть ветку
Никита Лихачёв

Охренительно.

Ответить
Развернуть ветку
For Nothing

Сколько лет назад я видел это на каком-нибудь Хабре или сайте для домохозяек. Где инновации, почему сразу ардуино

Ответить
Развернуть ветку
Artyom Petrovich
Автор

Это даже не ардуино а искра, потому что на ней собирать просто с модулями тройка на тройка-шилде. Счетчики делают давно, это правда, но в таком корпусе я не видел еще.

Ответить
Развернуть ветку
Evgheni C

А нет онлайн стрима счетчика? Прям захотелось зайти лайкнуть, и посмотреть на счетчик. Вообще, идея - огонь. Это просто гениальный SMM ход - заставить людей лайкнуть страницу, ради того что-б посмотреть как счетчик крутанется. Молодцы!

Ответить
Развернуть ветку
Artyom Petrovich
Автор

Есть у нас на сайте. Но в счетчике сгорел сервомотор, починим и повесим обратно.

Ответить
Развернуть ветку
Дмитрий Нескучный

Отличный девайс. Петровичи, а что если Вам "допилить" дизайн счетчика, скрыть все техно и нано, на фасад штамповку смонтировать "made in Petrovich Brothers" (сделано в СССР) и ценник прикрепить как в старые добрые времена - на джутовой веревки. Договриться с хедлайнерами от ютуба - вы им девайс и креатив в стрим, они вам конверсию на ресурсы.

Ответить
Развернуть ветку
Artyom Petrovich
Автор

Пока вдохновение закончилось его докручивать. Надо же и клиентские проекты еще иногда делать.

Ответить
Развернуть ветку
Никита Евдокимов

А какая задержка между получением лайка и изменением значения счётчика?

Ответить
Развернуть ветку
Artyom Petrovich
Автор

Когда все работает то через 20-30 секунд видна картинка на камере. Но он подвисает иногда думаю что из-за вайфая.

Ответить
Развернуть ветку
1 комментарий
Vlad Samusenko

и лойсы считает?

Ответить
Развернуть ветку
Artyom Petrovich
Автор

Конечно

Ответить
Развернуть ветку

Комментарий удален модератором

Развернуть ветку

Комментарий удален модератором

Развернуть ветку
1 комментарий
Klara Nikitina

тяга к тактильному созиданию остается, и никакие новшества её не отобьют

Ответить
Развернуть ветку
John Rambo

Ждите звонков: - Ваш счетчик вышел из строя, необходимо сделать поверку, ждите нашего специалиста!

Ответить
Развернуть ветку
Андрей Иванов

Скручено!

Ответить
Развернуть ветку
Vlad Bogatko

у BB Burgers стоит счётчик лайков во всех заведениях , надо у них спросить )

Ответить
Развернуть ветку
Andrey Greenberg

Счётчик надо в форме нарцисса тогда...смастерить вокруг него лепестки из солнечных панелей...и чтоб на каждой новой сотне лайков гимн звучал)))

Ответить
Развернуть ветку
Андрей Владимиров

Сделайте такой же счетчик для подсчета лайков этой статьи с вебкой и обратной связью. Уверен, что статья взлетит в топ, поставив рекорд на vc.ru.

Ответить
Развернуть ветку
Bilguun Billy

Круто, я б купил, за разумные деньги конечно.

Ответить
Развернуть ветку
Лев Толстой

Задумка хорошая, а вот реализация убогая.

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

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

И вообще изначально это надо было делать на ESP модуле.

Ответить
Развернуть ветку
Лев Толстой
Модуль не может запрашивать количество лайков напрямую у страницы в Facebook, так как не работает с HTTPS

ESP8266? Даже в примерах есть HTTPSRequest.

Ответить
Развернуть ветку
2 комментария
Artyom Petrovich
Автор

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

Ямка на краю диска покажет только оборот диска целиком. А он может повернуться на 300 градусов вместо 360, и как это отслеживать? Там механику надо дорабатывать вместе с электроникой.

Ответить
Развернуть ветку
4 комментария
Sandy Bell

Тёплый ламповый счётчик с диском.....
Как раньше 😍

Ответить
Развернуть ветку
ДИРЕКТОР

Хочу такой

Ответить
Развернуть ветку
Александр Дайверов

Сломалсо

Ответить
Развернуть ветку
Александр Дайверов

А не, норм

Ответить
Развернуть ветку
Alexander Rudenko

Круто!)) Всегда рад появлению таких вот необычных устройств. Мы вот на Raspberry Pi 3 собрали девайс для мгновенной передачи информации на разные прикольные интерфейсы такие как LED экран, онлайн стрим, VR и т.п. Работает на блокчейне сети Ethereum.

Ответить
Развернуть ветку
Artyom Petrovich
Автор

Спасибо! Видео не показывается, а посмотреть интересно что это.

Ответить
Развернуть ветку
Алексей Кобелев

Хочу такой же =)

Ответить
Развернуть ветку
Cibron

Поздно, но всё же (странно, что до этого никто не выложил это).

Ответить
Развернуть ветку
Evgheni C

Видимо потому, что идея со счетчиком действительно ни у кого не вызвала вопроса "но зачем"?

Ответить
Развернуть ветку

Комментарий удален модератором

Развернуть ветку
55 комментариев
Раскрывать всегда