- Необходим компонент
- Ултразвукова схема на левитация
- Програмиране на Arduino за ултразвукова левитация
- Изграждане на настройка за ултразвукова левитация
Много е вълнуващо да видиш как нещо се носи във въздуха или свободното пространство, което е точно това, за което се отнася един антигравитационен проект. Обектът (основно малко парче хартия или термокол) се поставя между два ултразвукови преобразувателя, които генерират акустични звукови вълни. Обектът се носи във въздуха поради тези вълни, които изглеждат като антигравитационни. Това е не само страхотно изглеждащ проект за левитация на Arduino, но има и много практически приложения. Изследователите работят върху ултразвукови роботизирани грайфери, които работят много подобно на това и тези грайфери могат да бъдат полезни при движещи се обекти, без да ги докосват.
Необходим компонент
- Arduino Uno / Arduino Nano ATMEGA328P
- Ултразвуков модул HC-SR04
- IC или L239d H-мостов модул L239D
- Vero Board Dotted Vero
- Диод 4007
- Кондензатор (PF) 104
Допълнително изискване за захранване от 8v до 12v
- Регулатор на напрежение LM 7809
- LED захранване 12V 2Amp
Допълнителен материал: Някакъв свързващ проводник, мъжки заглавен кабел, женски към женски джъмпер
Ултразвукова схема на левитация
Пълната схема на Arduino Levitation е показана по-долу и принципът на работа на веригата е много прост. Основният компонент на този проект е интегрална схема за задвижване на двигател Arduino, L239D и ултразвуков преобразувател, събрани от ултразвуковия сензорен модул HCSR04. Обикновено ултразвуковият сензор предава акустична вълна с честотен сигнал между 25khz и 50 kHz и в този проект използваме ултразвуков преобразувател HCSR04. Преди това сме изградили много проекти за ултразвукови сензори, в които HCSR04 се използва предимно за измерване на разстоянието. В този проект ние сме отпаяли преобразувателя от модула.
Според листа с данни работната честота на този ултразвуков преобразувател е 40 kHz. И така, целта на използването на Arduino и тази малка част от кода е да се генерира 40KHz високочестотен осцилационен сигнал за моя ултразвуков сензор или преобразувател и този импулс се прилага към входа на драйвера на дуел IC L239D (Pin 2 и 6 от Arduino A0 и A1 щифтове) за задвижване на ултразвуковия преобразувател. И накрая, ние прилагаме този високочестотен 40KHz сигнал за трептене заедно с напрежение на задвижване през управляваща интегрална схема (обикновено 8 до 12 напрежение, дадено на 8 -ия щифт на L239D IC, Vcc2) на ултразвуковия преобразувател. В резултат на което ултразвуковият преобразувател произвежда акустични звукови вълни. Поставихме два преобразувателя лице в лице в обратна посока по такъв начин, че да остане малко пространство между тях. Акустичните звукови вълни се движат между два преобразувателя и позволяват на обекта да плава.
Моля, имайте предвид, че L293D има двойно входно напрежение, едното е да захранва самата интегрална схема, която се захранва от Arduino 5v в този проект, а друга Vcc2 (8 -ма), приложена към изходното напрежение на изходния компонент и този VCC щифт може да приема до 36v Тази интегрална схема има 2 активирани щифта, 4 входно-изходни щифта, 4 заземени щифта. Концепцията за използването на тази интегрална схема идва от концепцията за използване на микроконтролер и този чип, където можем да променим посоката и скоростта на 2 двигателя поотделно, като просто предоставим логически или цифров сигнал от микроконтролера.
В тази схема използваме само два входа на IC L293D, входен щифт 1 (2) и входен щифт 2 (7). За да активираме тези два щифта, трябва да поддържаме висок PIN 1 за активиране на IC, така че заснехме този щифт към IC щифт 16, който е входен Vcc 1, за да научите повече, моля, следвайте таблицата с данни L293D.
Използването на кондензатор 100nf не е задължително само за задържане на захранването с интегрална схема и като захранване използваме 12V 2Amp LED драйвер, след това сваляме напрежението до 9v с помощта на регулатора на напрежението IC LM7809 и захранваме към 8 -ми щифт на L139D с общи основания. Според форума Arduino, Cc и Arduino, платката Arduino UNO поддържа 7 до 12 волта вход, но е по-безопасно да поставите 9V Max.
Програмиране на Arduino за ултразвукова левитация
Кодирането е много просто, само от няколко реда. Използвайки този малък код с помощта на таймер и функции за прекъсване, ние правим високо или ниско (0/1) и генерираме осцилиращ сигнал от 40Khz към изходните щифтове Arduino A0 и A1.
Първо започнете с масив с фазово изместване.
байт TP = 0b10101010;
И всеки втори порт получава този противоположен сигнал. След това при настройката на void определяме всички аналогови портове като изход, използвайки този ред код.
DDRC = 0b11111111;
След това инициализираме таймера 1 и деактивираме всички прекъсвания, за да зададем нула.
Чрез този код, noInterrupts (); TCCR1A = 0; TCCR1B = 0; TCNT1 = 0;
След това таймерът едно е конфигуриран да задейства часовник за прекъсване на сравнение при 80KHZ. Arduino работи при 16000000 MHZ ÷ 200 = 80 000 kHz квадратни вълни се генерират с помощта на тази функция.
OCR1A = 200; TCCR1B - = (1 << WGM12); TCCR1B - = (1 << CS10);
След това този ред се активира, сравнете прекъсването на таймера.
TIMSK1 - = (1 << OCIE1A);
И накрая, активирайте прекъсването, използвайки този парче код.
прекъсва ();
Всяко прекъсване обръща състоянието на аналоговите портове, което превръща 80 kHz сигнал с квадратна вълна в пълен сигнал за циклиране при 40Khz. След това изпращаме стойността към изхода A0 и A1 на Arduino.
ISR (TIMER1_COMPA_vect) {PORTC = TP; TP = ~ TP; // Обръщане на TP за следващото изпълнение}
И няма какво да се сложи или да е необходимо да се изпълни под контурите.
Изграждане на настройка за ултразвукова левитация
Моля, имайте предвид, че за този проект е важно правилното монтиране на ултразвукови преобразуватели. Те трябва да се изправят един срещу друг в обратна посока, което е много важно, и те трябва да са в една и съща линия, така че ултразвуковите звукови вълни да могат да се движат и да се пресичат взаимно в противоположни посоки. За това можете да вземете две малки парчета дърво или MD дъска, болт с гайка и лепило. Можете да направите два отвора, които да пасват перфектно на преобразувателя от свредлото. На стойката можете да закачите устройството за ултразвуков преобразувател.
В този случай използвах две парчета картон и след това фиксирах ултразвуков преобразувател с помощта на лепило от пистолета за лепило. По-късно за направата на стойката използвах обикновена кутия за окабеляване и фиксирах всичко с лепило.
Ето няколко снимки на ултразвукова левитация, които показват работата на проекта.
Ултразвуковата левитация или акустичната левитация също работи, ако едната страна е монтирана с ултразвуковия преобразувател, но в този случай ще е необходим рефлектор, който ще действа като пречка, за да може да се използва в ховърборд в бъдеще и при антигравитационен транспорт. Можете да разгледате и пълното работещо видео по-долу.
Надявам се, че сте разбрали проекта и сте се радвали да изградите нещо забавно. Ако имате някакви въпроси, моля, оставете ги в раздела за коментари по-долу, можете да използвате форумите ни и за други технически въпроси.