- Необходими компоненти:
- Конструкция на витловия дисплей:
- Обяснение на веригата и работата:
- Обяснение на програмирането:
Виждали сте витла във въздухоплавателни средства или на морски кораби, ако не в действителност, то във филмите със сигурност. В тази сесия ще проектираме витлов дисплей с Arduino, светодиоди и DC двигател. В този дисплей на витлото изглежда, че текстът се върти по начин на витлото в кръгла форма.
Дисплеят на витлото е по подобие на LED Matrix. Съдържа 8 светодиода (светодиоди), които са подредени под формата на матрица 8 * 1 (8 реда и 1 колона). Те са подредени под формата на стълба една върху друга. Тези 8 LED могат да бъдат направени за показване на всякакво съдържание като текст, цифри, символи и т.н. Това се постига чрез Perception of Vision (POV), при което много неподвижни изображения се преместват бързо едно по едно в последователност, което дава усещане за анимация или движещо се изображение. Как се прави това е обяснено в урока, даден по-долу.
Необходими компоненти:
- Arduino Uno
- DC мотор
- + 3.6V LI-ION батерия
- LED (8 броя)
- 1KΩ резистор (8 броя)
Конструкция на витловия дисплей:
Първо вземете стабилна основа; Използвах стар компютър за DVD DVD, който лежеше наоколо. Можете да вземете дървена дъска или картонена кутия. След това направете дупка в средата на DVD устройството (основа) и вкарайте оста на DC мотора в него. Уверете се, че отворът е достатъчно стегнат, за да държи двигателя и той може да се върти свободно. Използвах Feviquick, за да поставя оста на мястото си.
Подкрепете върха на Motor, за да изравните неравномерните неравности. Използвах точка върху него и отново използвах бързо лепило, за да го залепя с мотор с постоянен ток.
Прикрепете LI-ION батерията отгоре. Ако нямате LI-ION батерия със същия размер, просто я оставете. След това вземете всеки светодиод и го тествайте с клетка на бутон или друг източник. След това вземете резистори и ги запойте със светодиоди, както е показано на снимката и схемата, показана по-долу.
U
Свържете запоените светодиоди и резистори с Arduino UNO, както е показано на фигурата по-долу и електрическата схема.
U
Монтирайте UNO на върха на DC MOTOR и го закрепете с помощта на виолончелна лента, за да завършите настройката. Така че окончателната настройка на витлото ще изглежда по-долу:
Обяснение на веригата и работата:
Веригата на контролирания от Arduino POV дисплей е много проста, ние просто свързахме 8 светодиода с Arduino Uno според схемата по-долу.
ПОРТ, ПИН0 ------------------ LED8 ПОЛОЖИТЕЛЕН ТЕРМИНАЛ
ПОРТ, ПИН1 ------------------ LED7 ПОЛОЖИТЕЛЕН ТЕРМИНАЛ
ПОРТ, ПИН2 ------------------ LED6 ПОЛОЖИТЕЛЕН ТЕРМИНАЛ
ПОРТ, ПИН3 ------------------ LED5 ПОЛОЖИТЕЛЕН ТЕРМИНАЛ
ПОРТ, ПИН4 ------------------ LED4 ПОЛОЖИТЕЛЕН ТЕРМИНАЛ
ПОРТ, ПИН5 ------------------ LED3 ПОЗИТИВЕН ТЕРМИНАЛ
ПОРТ, ПИН6 ------------------ LED2 ПОЛОЖИТЕЛЕН ТЕРМИНАЛ
ПОРТ, ПИН7 ------------------ LED1 ПОЗИТИВЕН ТЕРМИНАЛ
Подобно на това, че добавяме повече колони в 8x8 LED матрица, за да разширим дисплея, по същия начин, вместо да добавяме повече LED КОЛОНИ, ние преместваме първата LED КОЛОНА на второто място на LED COLUMN с помощта на движението на DC MOTOR.
За да разберем цялата ситуация, кажете, че искаме „A“ да се показва на дисплея на витлото. Помислете, че светодиодът "игла" първо е на POSITION1, както е показано на фигурата по-долу. LED иглата е колоната от 8 светодиода.
Сега ще захранваме мотора и той ще започне да работи.
При t = 0ms: иглата ще бъде в ПОЗИЦИЯ 1. На тази позиция всички осем светодиода, от ТОП LED (MSB) до ДОЛЕН LED (LSB), са включени.
При t = 1ms: иглата ще бъде в ПОЗИЦИЯ 2. Същото като Позиция 1, в тази позиция всички осем светодиода, от ТОП LED (MSB) до ДОЛЕН LED (LSB), са включени.
При t = 2ms: иглата ще бъде в ПОЗИЦИЯ 3. В тази позиция само LED7, LED6 и LED3 остават ВКЛЮЧЕНИ, а останалите светодиоди са изключени.
При t = 3ms: иглата ще бъде в ПОЗИЦИЯ 4. Същата като Позиция 3, в тази позиция само LED7, LED6 и LED3 остават ВКЛЮЧЕНИ, а останалите светодиоди са изключени.
При t = 4ms: иглата ще бъде на ПОЗИЦИЯ 5. Същата като Позиции 3 и 4, в тази позиция само LED7, LED6 и LED3 остават ВКЛЮЧЕНИ. Останалите светодиоди са изключени.
При t = 5ms: иглата ще бъде в ПОЗИЦИЯ 6. При това положение всичките осем светодиода отново са включени, ТОП светодиодът (MSB) до ДОЛНИЯТ led (LSB) са включени.
При t = 6ms: иглата ще бъде в ПОЗИЦИЯ 7. Същата като Позиция 6, в тази позиция всичките осем светодиода остават включени.
Както е обяснено по-горе, ще включим подходящи светодиоди в подходящите позиции на иглата, за да покажем необходимия знак. Ако скоростта на движение на иглата е бавна, можем да видим всяка LED колона поотделно. Но когато скоростта на двигателя е висока и иглата се движи твърде бързо, тогава дисплеят ще се вижда като непрекъснато показващ символ „А“.
Обяснение на програмирането:
Програмирали сме Arduino да захранва подходящия светодиод в подходящо време, докато се върти, така че LED колоната да показва текста „CIRCUIT DIGEST“ в кръгова позиция.
Програмирането на дисплея на витлото е лесно разбираемо. Масив Char от 26x8 е приет като летлив char ALPHA. Този масив се състои от 8 позиции на иглата за показване на всяка от 26-те азбуки, което я прави масив от 26x8. 26 реда в Array представляват 26 азбуки, а 8 колони във всеки ред представляват осемте позиции на иглата за показване на символа по време на въртене. Сега всяка клетка се състои от двоично число, което представлява състоянието на включване / изключване на 8 светодиода в определена позиция на иглата. Не забравяйте, че иглата тук се отнася до линия от 8 светодиода, свързани към Arduino, както е обяснено по-горе.
Сега просто трябва да завъртите DC мотора и да използвате „ for loop “ с осем итерации, за да покажете символ. Както ако искате да покажете 10 символа, тогава трябва да изпълните 10 " за цикли" с осем итерации във всяка. Така че ние използвахме 13 за цикли, за да покажем текста CIRCUIT DIGEST. Проверете пълния програмен код по-долу с демонстрационно видео.
Така че по този начин можете да създадете красива илюзия за устойчивост на зрението (POV) с Arduino като текст, който се върти като витло.