Оглавление:
- Шаг 1. Инструменты и материалы
- Шаг 2: Сборка оборудования
- Шаг 3: схемы
- Шаг 4: программирование Arduino
- Шаг 5: сделайте счетчик посещений
- Шаг 6: Заключение
Видео: Arduino XMAS Hitcounter: 6 шагов (с изображениями)
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:54
Приближается Рождество, так что вот мой вклад, чтобы поднять вам настроение. Это счетчик посещений блога, который звонит в колокол. Буквально. Это вызывает улыбку на вашем лице каждый раз, когда кто-то посещает ваш блог.
Он состоит из платы Arduino, звонка, сервопривода и пары строк кода на языках c, python и php. Большинство деталей довольно распространены, и их должно быть легко достать.
Шаг 1. Инструменты и материалы
Итак, что нужно?
- Плата Arduino. Я получил Arduino Diecimila от Adafruits. А пока есть действительно дешевые и удобные клоны, например действительно голая костяная плата от Modern Devices, особенно если вы хотите использовать их на макетной плате.
- Серводвигатель. Подойдет любой сервопривод. Взял старую, которую использовал в прошлом хобби.
- Колокольчик. Предпочтительно тот, который достаточно мал, чтобы его можно было встряхнуть вместе с сервоприводом.
- Две скрепки. Большой, чтобы удерживать звонок, и маленький, чтобы построить привод, чтобы звонить в звонок.
- Провода для подключения сервопривода к Arduino.
- Сайт. На самом деле это не должен быть веб-сайт или блог. Собственно все, что можно посчитать, будет работать.
- ПК или Mac для подключения платы Arduino к блогу или веб-сайту.
Возможно, вам понадобится паяльник, если провода нельзя подключить напрямую к Arduino.
Шаг 2: Сборка оборудования
Колокольчик держится на прочной скрепке. Маленькая скрепка используется для создания своего рода рычага, который прикрепляется к сервомотору.
Обратите внимание, что вы хотите согнуть скрепку, удерживающую колокольчик, так, чтобы уже при небольшом встряхивании возникал звон.
Шаг 3: схемы
Настоящей схемы нет. Просто прикрепите серводвигатель к Arduino. Сервопривод имеет три провода:
- желтый или оранжевый: сигнал
- красный: VCC
- коричневый: GND
Красный и коричневый подключены к соответствующим контактам на Arduino (5V и GND). Оранжевый подключен к контакту 2. Он будет сигнализировать сервоприводу, в каком направлении нужно повернуться. Вы можете припаять к проводам небольшие разъемы, если провода не подходят непосредственно к Arduino или сервоприводу.
Шаг 4: программирование Arduino
Arduino Если вы новичок в Arduino, это небольшая плата, полностью собранная с микроконтроллером AVR. Он хорошо подходит для взлома и взаимодействия с вашей средой. Многое, что сложно с микроконтроллерами, с Arduino сделать довольно просто. Некоторые из преимуществ:
- нет необходимости в отдельном программаторе (программаторе)
- поставляется с интегрированной средой разработки (IDE)
- работает на любой платформе, Windows, Mac, Linux.
- простое подключение к ПК через USB
- оборудование с открытым исходным кодом (но имя Arduino нет)
- имеет отличное сообщество
Более подробную информацию можно найти на официальном сайте Arduino. Обязательно ознакомьтесь с инструкциями по Arduino Джона для получения дополнительных сведений о том, как начать работу с Arduino. Что делает программное обеспечение? Небольшая программа, которая загружается в Arduino, управляет сервоприводом. Он получает одиночные байты через последовательное соединение по USB-кабелю. Если он получает значение 5, он перемещает сервомеханизм пять раз вперед и назад. Таким образом, максимальное значение для отправки составляет 255. Запрограммируйте Ardiuno Итак, я предполагаю, что вы загрузили и установили последнюю версию Arduino IDE с Arduino.cc. На данный момент это версия 0010 Alpha. Чтобы управлять сервоприводом более комфортно, вам необходимо загрузить библиотеку. Вы можете найти его на игровой площадке Arduino. Разархивируйте его и поместите папку в… / arduino-0010 / hardware / libraries /.
- Подключите Arduino к компьютеру с помощью USB-кабеля.
- Откройте IDE и начните новый скетч. Sketch - это Arduino, говорящий за программу. Выберите Файл -> Создать.
- Выберите соответствующее последовательное устройство (Инструменты -> Последовательный порт). Это зависит от вашей среды, для меня это /dev/tty.usbserial-A4001JAh.
- Загрузите прикрепленный исходный файл и вставьте его в новый эскиз. Нажмите кнопку сохранения.
- Нажмите кнопку подтверждения. Это скомпилирует ваш скетч в шестнадцатеричный файл, который можно будет перенести на ваш Arduino.
- Нажмите кнопку загрузки, чтобы передать свой скетч в Arduino.
Тестирование Теперь ваш счетчик попаданий готов к некоторым действиям. Посмотрим, сработает ли это.
- Нажмите кнопку последовательного монитора.
- Выберите текстовое поле рядом с кнопкой отправки.
- Нажмите клавишу табуляции и отправьте его.
- К этому моменту сервомеханизм должен двигаться вперед и назад.
Уф. Это было самое сложное. А пока вы можете послать байт в Arduino, и сервопривод отправит вам сигнал. Далее нужно найти что-то, что вы хотите вызвать звонком. Мы почти закончили.
Шаг 5: сделайте счетчик посещений
Чтобы сделать его счетчиком посещений вашего веб-сайта, нам понадобятся два небольших фрагмента кода. Один два создают и заботятся о счетчике, а второй - получает значение счетчика и отправляет его в Arduino.
Примечание: если вы не знакомы с Python или PHP, скрипты можно легко перенести на ваш любимый язык программирования. Счетчик Это небольшой скрипт PHP, который считывает значение из файла (hitcounter.txt), увеличивает его и записывает его обратно в файл. Это все, что нужно. Этот файл можно сохранить, например, как counter.php на вашем сервере. Затем вы можете запустить подсчет, указав веб-браузер на https://www.youdomain.com/counter.php. Я включил этот фрагмент в свой блог на wordpress. $ hits = file ($ count_my_page); $ hit = обрезать ($ hits [0]); $ hit ++; $ fp = fopen ($ count_my_page, "ш"); fputs ($ fp, "$ hit"); fclose ($ fp); echo $ hit; ?> Связующий код Этот следующий фрагмент кода используется для получения счетчика. Я использовал Python, но все должно работать. Он открывает HTTP-соединение и получает файл hitcounter.txt. Если значение изменилось с момента последней загрузки, разница вычисляется и передается в Arduino. Это делается каждые десять секунд, пока вы не прервете сценарий с помощью crtl-c. Адаптируйте myUrl и последовательное соединение ниже в соответствии с вашими потребностями. # # счетчик выборки # время импорта import urllib import serial # последовательное соединение usb с arduino ser = serial. Serial ('/ dev / tty.usbserial-A4001JAh', 9600) myUrl = 'https://tinkerlog.com/hitcounter.txt 'last_counter = urllib.urlopen (myUrl).read () while (True): _ counter = urllib.urlopen (myUrl).read () _ delta = int (counter) - int (last_counter) _ print "counter:% s, delta:% s "% (counter, delta) _ ser.write (chr (ord (chr (delta)))) _ last_counter = counter _ time.sleep (10) Мне не удалось загрузить файлы с расширением php, поэтому вы нужно переименовать counterphp.txt в counter.php. Если ваш Arduino все еще подключен к вашему ПК, запустите скрипт Python, чтобы получить счетчик посещений…> python counter.py, и вы должны увидеть результат счетчика. Если вы укажете в браузере URL-адрес своего counter.php и нажмете «перезагрузить», вы должны услышать звонок Hitcounter. Да, теперь все готово. Пора расслабиться и насладиться нашей работой.
Шаг 6: Заключение
Я впервые построил что-то, в котором есть движущиеся части. Это первый шаг к преодолению разрыва между виртуальным и реальным миром. И это было действительно просто, код простой. Также большая часть деталей была в моем мусорном ведре, кроме звонка. Сложить все вместе и ждать, пока кто-нибудь ударит по моему блогу, было весело.
Надеюсь, вам понравилось.
Рекомендуемые:
Как: установка Raspberry PI 4 Headless (VNC) с Rpi-imager и изображениями: 7 шагов (с изображениями)
Как: установка Raspberry PI 4 Headless (VNC) с Rpi-imager и изображениями: я планирую использовать этот Rapsberry PI в кучу забавных проектов еще в моем блоге. Не стесняйтесь проверить это. Я хотел вернуться к использованию своего Raspberry PI, но у меня не было клавиатуры или мыши в моем новом месте. Прошло много времени с тех пор, как я установил Raspberry
Xmas Tree Wearable Textile LED // Светодиоды Árbol Navidad Textil Y: 3 шага
Xmas Tree Wearable Textile LED // Árbol Navidad Textil Y LEDs: это простой проект схем с использованием текстиля для рождественского сезона. Это носимое устройство, потому что вы можете надеть его на любую футболку, и ночью вы будете сиять, как бриллиант! ---- Es un proyecto simple de circuitos básicos para la temporada navideña, es un vestibl
Charlieplexing Xmas Tree: 7 шагов (с картинками)
Charlieplexing Xmas Tree: Приближается Рождество, и нам нужно какое-то новое оборудование. Рождественское оборудование должно быть зеленым + белым + красным + мигающим. Итак, печатная плата - зеленый + белый, затем добавьте несколько мигающих светодиодов, и все готово. У меня есть много светодиодов типа "под прямым углом, вид сбоку, красные, прозрачные, сверхяркие, SMD 0806" и
LED Xmas Tree !: 4 шага (с изображениями)
LED Xmas Tree !: Рождество не то же самое без елки; но, жопа, я живу в комнате общежития, у меня нет места, чтобы поставить настоящую. Вот почему я решил сделать свою собственную новогоднюю елку! Некоторое время я хотел поэкспериментировать с акрилом с боковой подсветкой, нет
Xmas-box: Рождественские огни и музыкальное шоу под управлением Arduino / ioBridge через Интернет: 7 шагов
Xmas-box: Рождественские огни и музыкальное шоу под управлением Arduino / ioBridge: Мой проект рождественского бокса состоит из управляемых через Интернет рождественских огней и музыкального шоу. Рождественскую песню можно запросить в Интернете, затем поставить в очередь и воспроизвести в том порядке, в котором она была запрошена. Музыка передается в FM-диапазоне