Съдържание:

Arduino XMAS Hitcounter: 6 стъпки (със снимки)
Arduino XMAS Hitcounter: 6 стъпки (със снимки)

Видео: Arduino XMAS Hitcounter: 6 стъпки (със снимки)

Видео: Arduino XMAS Hitcounter: 6 стъпки (със снимки)
Видео: Arduino XMAS hitcounter 2024, Ноември
Anonim
Arduino XMAS Hitcounter
Arduino XMAS Hitcounter
Arduino XMAS Hitcounter
Arduino XMAS Hitcounter

Коледа наближава, така че тук е моят принос, за да ви вкарам в правилното настроение. Това е хит брояч в блога, който звъни. Буквално. Той поставя усмивка на лицето ви, всеки път, когато някой посети блога ви.

Състои се от дъска 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

Arduino Ако сте нов в Arduino, това е малка платка, напълно сглобена с AVR микроконтролер. Той е много подходящ за хакване и взаимодействие с вашата среда. Много неща, които са трудни с микроконтролерите, са доста лесни с Arduino. Някои от предимствата:

  • няма нужда от отделно устройство за програмиране (програмист)
  • идва с интегрирана среда за разработка (IDE)
  • работи на всяка платформа, Windows, Mac, Linux.
  • лесно свързване към вашия компютър с USB
  • хардуерът е с отворен код (но името Arduino не е)
  • има страхотна общност

Повече информация можете да намерите на официалния уебсайт на Arduino. Не забравяйте да проверите инструкциите на Arduino на John за допълнителни подробности как да започнете с Arduino. Какво прави софтуерът? Малкото софтуерче, което се качва на Arduino, контролира серво. Той получава единични байтове чрез серийната връзка през USB кабела. Ако получи стойност 5, той премества серво рамото пет пъти напред и назад. Така че максималната стойност за изпращане е 255. Програмирайте Ardiuno Така че предполагам, че сте изтеглили и инсталирали най -новата Arduino IDE от Arduino.cc. Засега това е версия 0010 Alpha. За да управлявате серво по -удобно, трябва да изтеглите библиотека. Можете да го намерите на детската площадка Arduino. Разархивирайте го и поставете папката в…/arduino-0010/hardware/libraries/.

  • Прикрепете Arduino към вашия компютър с USB кабел.
  • Отворете IDE и започнете нова скица. Скица е Arduino говори за програма. Изберете Файл -> Нов.
  • Изберете подходящото серийно устройство (Инструменти -> Сериен порт). Това зависи от вашата среда, за мен е /dev/tty.usbserial-A4001JAh.
  • Изтеглете прикачения изходен файл и го поставете в новата скица. Натиснете бутона за запазване.
  • Натиснете бутона за проверка. Това компилира вашата скица в шестнадесетичен файл, който може да бъде прехвърлен на вашия Arduino.
  • Натиснете бутона за качване, за да прехвърлите скицата си в Arduino.

Тестване Сега вашият брояч на удари е готов за някои действия. Да видим дали работи.

  • Натиснете бутона за сериен монитор.
  • Изберете текстовото поле до бутона за изпращане.
  • Натиснете клавиша Tab и го изпратете.
  • Към момента серво рамото трябва да се движи напред и назад.

Фу. Това беше най -трудната част. Засега можете да изпратите байт към Arduino и серво вълните към вас. Следващото е да намерите нещо, което искате да задейства камбаната. Почти свършихме.

Стъпка 5: Направете го хит -брояч

За да стане хит брояч за вашия уебсайт, имаме нужда от две малки парчета код. Един двама създават и се грижат за брояча, а вторият за извличане на стойността на брояча и изпращането му до Arduino.

Забележка: Ако не сте запознати с Python или PHP, скриптовете могат лесно да бъдат пренесени към любимия ви език за програмиране. Броячът Ето малък PHP скрипт, който чете стойност от файл (hitcounter.txt), увеличава го и записва го върнете във файла. Това е всичко, това е необходимо. Този файл може да бъде записан като counter.php на вашия сървър например. След това можете да задействате броене с вашия уеб браузър, сочещ към https://www.youdomain.com/counter.php. Включих този фрагмент в моя блог на Wordpress. $ hits = файл ($ count_my_page); $ hit = trim ($ hits [0]); $ хит ++; $ fp = fopen ($ count_my_page, "w"); fputs ($ fp, "$ hit"); fclose ($ fp); ехо $ хит; ?> Кодът на лепилото Този следващ фрагмент от код се използва за извличане на брояча. Използвах Python, но всичко трябва да работи. Той отваря HTTP връзка и извлича hitcounter.txt. Ако стойността се е променила от последното извличане, разликата се изчислява и избутва към Arduino. Това се прави на всеки десет секунди, докато не прекъснете скрипта с crtl-c. Адаптирайте myUrl и серийната връзка по -долу към вашите нужди. # # извличане на брояч # време за импортиране urllib импортиране сериен # 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, делта: % s " % (брояч, делта) _ 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 и натиснете презареждане, трябва да чуете звъненето на брояча на удари. Да, сега сме готови. Време е да се отпуснем назад и да се насладим на работата си.

Стъпка 6: Заключение

Заключение
Заключение

За първи път съм построил нещо, което има движещи се части. Това е първата стъпка за преодоляване на разликата между виртуалния и реалния свят. И беше наистина лесно, кодът е направо напред. Също така повечето части бяха в кошчето ми, с изключение на камбаната. Събирането на всичко заедно и чакането някой да влезе в моя блог беше забавно.

Надявам се да ви е харесало.

Препоръчано: