Съдържание:
- Стъпка 1: Тествайте FSR с Arduino
- Стъпка 2: Начертайте плановете за дъската
- Стъпка 3: Моделирайте дъската в TinkerCad
- Стъпка 4: Тествайте LCD екрана
- Стъпка 5: Тествайте въртящия се енкодер с LCD екрана
- Стъпка 6: Сглобете дъската
- Стъпка 7: Свържете всичко
- Стъпка 8: Завършете кодирането на ВСИЧКО
- Стъпка 9: Заключете
Видео: Прототип Arduino-Raspberry Pi Soundboard: 9 стъпки (със снимки)
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:53
Прототипът на звуковата дъска, създаден с Arduino и Raspberry Pi, е предназначен да бъде прост начин за възпроизвеждане на 4 различни звука или шума, като същевременно има възможност за превключване на звукови набори с копче и показване на текущия набор от звуци с LCD екран.
*Моля, обърнете внимание: Кодът на проекта е завършен на 99%, но не е функционален.
Raspberry Pi контролира 16x2 LCD екрана и въртящия се енкодер, докато Arduino чете аналоговите входове от чувствителни към сила резистори (FSR) и изпраща сигнал към Arduino за възпроизвеждане на звук. И двамата никога не бяхме използвали Arduino или Pi преди този клас, но нашият професор ни даде всички необходими инструменти и насоки за лесно кодиране и изграждане на този проект. TinkerCad, безплатен онлайн инструмент за 3D моделиране от AutoDesk, беше използван за моделиране на нашия проект.
Най -трудната част от проекта беше намирането на начин да накараме Arduino и Raspberry Pi да комуникират със серийна комуникация. Първоначално искахме да използваме Pi само за целия проект, но се нуждаехме от Arduino, за да прочетем аналоговия сигнал от FSR. Лесно успяхме да изпратим редове от думи или числа от Arduino и да ги покажем на Pi, но проблемът дойде, когато се опитахме да прочетем тези стойности в Python и да ги внедрим в изявления за състояние, за да ги обработим.
Необходими умения
- Просто разбиране на C/C ++ за кодиране на Arduino
- Просто разбиране на Python за кодиране на Raspberry Pi
- Знания за това как е свързан макет
- Основни умения за 3D моделиране
- Желание да научите и разширите програмирането, окабеляването и изграждането на нещо доста спретнато
Списък на частите
1 x Raspberry Pi 3
1 x Elegoo Uno ИЛИ Arduino Uno
1 x 830 Вратовръзка
1 x GPIO Breakout Board (RSP-GPIO)
1 х лентов кабел за пробивна дъска
4 x Чувствителни резистори с малка сила
1 x основен 16x2 символен LCD екран
1 x Ротационен кодиращ модул
24 x мъжки към женски проводници
10 x мъжки проводници
4 x 10k резистора
1 x 10k потенциометър
1 x подложка за коляно от градинска пяна (доларов магазин)
Стъпка 1: Тествайте FSR с Arduino
Първо решихме да изпробваме FSR с Arduino. FSR изпращат аналогов сигнал и затова трябваше да използваме Arduino, тъй като Pi не получава аналог без други схеми. Искахме да тестваме праговете, за да се уверим, че пресите са с добро налягане. Открихме, че е около 150 от общо 1000. Серийният плотер на Arduino IDE беше много полезен за тази стъпка.
Стъпка 2: Начертайте плановете за дъската
След това съставихме и измерихме плановете за борда. Искахме да имаме 4 подложки за възпроизвеждане на звуци, място за LCD екран за показване на текущата група звуци и въртящ се енкодер за промяна на групата звуци.
Стъпка 3: Моделирайте дъската в TinkerCad
След като плановете бяха съставени, ние моделирахме дъската на онлайн безплатен уебсайт за 3D моделиране, наречен TinkerCad от Autodesk. Силно го препоръчваме за тези от вас, които не искат да харчат много пари за голям софтуер за 3D моделиране, тъй като е лесен за използване, базиран на облак и има пълна поддръжка за 3D печат.
След като беше моделиран, трябваше да го разделим на 2 части, за да го поставим на принтера. Отпечата се много добре, но моята грешка не беше да оразмеря много добре слота на LCD екрана (не правете тази грешка!) Качихме лявата и дясната страна. STL файлове, ако искате да ги проверите.
Стъпка 4: Тествайте LCD екрана
Вече използвахме екрана на Arduino и настройката беше много лесна. Въпреки това беше по -трудно да се управлява с Pi. С няколко часа за отстраняване на неизправности в Google и забъркване с кабели, най -накрая го заработихме. Моля, вижте крайния код на Python в края, за да видите как работи. Използвахме няколко уебсайта, за да ни помогнат да го свържем и да напишем кода. Проверете ги:
learn.adafruit.com/drive-a-16x2-lcd-direct…
www.raspberrypi-spy.co.uk/2012/07/16x2-lcd…
Стъпка 5: Тествайте въртящия се енкодер с LCD екрана
След това искахме да видим дали можем да накараме LCD екрана да промени текста си при завъртане на енкодера. Енкодерът няма зададено количество ъгли или завъртания, така че в кода сме преброили колко пъти е завъртян по посока на часовниковата стрелка или обратно на часовниковата стрелка и сме го направили да брои до 3. Ако премине, ще се върне към 0 и ако беше под 0, щеше да се върне до 3. Тези цифри могат да бъдат зададени за колкото и звукови комплекти да ви харесат, но в крайна сметка тествахме само един звуков набор. Уверете се, че вашите звуци са в същата папка/място, където се изпълнява основният код на Python.
Стъпка 6: Сглобете дъската
FSR се плъзгат под четирите различни слота. Центрирахме ги и ги залепихме. Препоръчваме тиксо или може би дори залепване, защото обикновената скоч беше ужасна прилепването към 3D печатния материал. След кратко пътуване до доларовия магазин открихме мека, но хлъзгава градинска подложка за коляното, която можехме да нарежем на четири парчета, които да използваме като бутони за дъската. Нарязахме ги така, че да могат да се прибират плътно на местата си, така че да могат да останат на място, но също така лесно да бъдат отстранени, ако е необходимо.
Стъпка 7: Свържете всичко
След като сглобихме платката и поставихме FSR, енкодер и екран на място, свързахме всичко. Можете да използвате 2 дъски, но успяхме да поставим всичко върху едно. Картината изглежда като бъркотия, но ние направихме схематична диаграма в безплатна програма, наречена Fritzing. Имайте предвид, че можете да промените към какви пинове искате да прикачите всичко, но диаграмата съответства на нашия код.
Стъпка 8: Завършете кодирането на ВСИЧКО
Това беше сложната част. Както е посочено във въведението, не можахме да завършим тази част. Кодът е 99% изцяло там, но единствената част, която не работи, беше серийната комуникация от Arduino до Pi. Можехме лесно да изпратим информацията, когато свързахме Arduino към Pi с USB кабела, но Pi не можеше да направи нищо, освен да покаже тази информация на екрана. Искахме да можем да кажем кой бутон е натиснат и да накара този звук да възпроизведе специфичен звук, но данните, които идваха през комуникацията, не можеха да бъдат поставени в изявление за условие, за да тестваме кой бутон е натиснат.
Моля, вижте прикачения код, бележките са коментирани в кода на Python за Pi. Кодът на Arduino трябва да бъде 100%.
Стъпка 9: Заключете
Като цяло този проект беше ОГРОМНО учене за нас двамата и се надяваме, че това писане може да даде на бъдещите студенти, учители или калайджии някакво вдъхновение за техния собствен проект и да ги напътства, като се учи от нашите грешки. Извикайте на нашия страхотен професор по роботика, който помогна изключително много през нашето време в класа и ни даде възможност да се забавляваме много и да научим много в старши клас по COMP! Благодаря за четенето:)
Препоръчано:
Air - True Mobile Air Guitar (прототип): 7 стъпки (със снимки)
Air - True Mobile Air Guitar (прототип): Добре, това ще бъде наистина кратка инструкция за първата част от най -накрая да се доближа до една моя детска мечта. Когато бях малко момче, винаги гледах любимите си изпълнители и групи, които безупречно свирят на китара. Когато пораснах, не бях
DIY BB8 - Изцяло 3D отпечатан - Първи прототип на диаметър 20 см в реален размер: 6 стъпки (със снимки)
DIY BB8 - Изцяло 3D печат - Първи прототип на диаметър 20 см с реален размер: Здравейте на всички, това е първият ми проект, затова исках да споделя любимия си проект. В този проект ще направим BB8, който се произвежда с изцяло 3D принтер с диаметър 20 см. Отивам да построя робот, който да се движи по същия начин като истинския BB8
Прототип на кюфтен китарен усилвател: 6 стъпки (със снимки)
Прототип на кюфтен китарен усилвател: Поздрави, общност за инструктори! Разработил съм много специален усилвател за китара и бих искал да споделя с вас как го построих. Преди да започнем, бих искал да споделя с вас всички материали, необходими за изграждането на този усилвател. Материал лист
Прототип на бутон PaniK (испански): 5 стъпки (със снимки)
Прототип на бутон PaniK (испански): Bot ó n de p á nico que al ser presionado env í un mensaje personalizado a trav é s de la cuenta de twitter del usuario; este se encuentra desarrollado mediaante el uso del Arduino UNO y una aplicaci ó n m ó vil
Компютърен интерфейс на Brainwave Прототип TGAM Starter Kit Запояване и тестване: 7 стъпки (със снимки)
Brainwave Computer Interface Prototype TGAM Starter Kit Запояване и тестване: Последният век от невронаучните изследвания значително увеличи знанията ни за мозъка и по -специално за електрическите сигнали, излъчвани от невроните, стрелящи в мозъка. Моделите и честотите на тези електрически сигнали могат да бъдат измерени