Мазмуну:

Дареги жок RGB LED Strip Audio Visualizer: 6 кадам (сүрөттөр менен)
Дареги жок RGB LED Strip Audio Visualizer: 6 кадам (сүрөттөр менен)

Video: Дареги жок RGB LED Strip Audio Visualizer: 6 кадам (сүрөттөр менен)

Video: Дареги жок RGB LED Strip Audio Visualizer: 6 кадам (сүрөттөр менен)
Video: Диодная RGB LED лента BIOM + white LED Premium обзор и подключение 2024, Ноябрь
Anonim
Image
Image

Менде телевизор кабинетинин айланасында 12В RGB LED тилкеси бар болчу жана ал кызыксыз LED драйвери тарабынан башкарылат, ал мага алдын ала программаланган 16 түстүн бирин тандоого мүмкүндүк берет!

Мен көптөгөн музыкаларды угам, бул мага мотивация берет, бирок жарык маанайды жөнгө салбайт. Муну оңдоо үчүн AUX (3.5 мм джек) аркылуу динамигиме берилген аудио сигналды алууну чечип, аны иштетип, ошого жараша RGB тилкесин көзөмөлдөңүз.

Светодиоддор музыкага Басс (Төмөн), Требл (Орто) жана Жогорку жыштыктарга негизделген.

Жыштык диапазону - Түсү төмөнкүчө:

Төмөн - Кызыл

Орто - Жашыл

Жогорку - Көк

Бул долбоор DIY буюмдарын көп камтыйт, анткени бүт схема нөлдөн баштап курулган. Эгер сиз аны нан тактасына орнотуп жатсаңыз, бул оңой болушу керек, бирок аны ПХБга ширетүү өтө кыйын.

Жабдуулар

(x1) RGB LED тилкеси

(x1) Arduino Uno/Nano (Mega сунушталат)

(x1) TL072 же TL082 (TL081/TL071 да жакшы)

(x3) TIP120 NPN транзистору (TIP121, TIP122 же N-Channel MOSFETs сыяктуу IRF540, IRF 530 да жакшы)

(x1) 10kOhm потенциометр сызыктуу

(x3) 100kOhm 1/4watt каршылыгы

(x1) 10uF электролиттик конденсатор

(x1) 47nF керамикалык конденсатор

(x2) 3,5 мм аудио туташтыргычы - Аял

(x2) 9V батарея

(x2) 9V батареянын туташтыргычы

1 -кадам: RGB LED тилкелеринин түрлөрүн түшүнүү

RGB LED тилкелеринин түрлөрүн түшүнүү
RGB LED тилкелеринин түрлөрүн түшүнүү

LED тилкелеринин эки негизги түрү бар, "аналогдук" жана "санариптик" түрү.

Аналогдук типтеги (1-сүрөт) тилкелерде бардык диоддор параллель туташтырылган жана ушунчалык чоң үч түстүү LED сыяктуу иштейт; сиз каалаган тилкеге бүт тилкени коё аласыз, бирок жеке LED түстөрүн башкара албайсыз. Алар колдонуу үчүн абдан жеңил жана кыйла арзан.

Санарип типтеги (2-сүрөт) тилкелер башкача иштейт. Аларда ар бир светодиод үчүн чип бар, тилкени колдонуу үчүн санарипке коддолгон маалыматтарды чиптерге жөнөтүү керек. Бирок, бул сиз ар бир LEDди жекече башкара аласыз дегенди билдирет! Чиптин кошумча татаалдыгынан улам алар кымбатыраак.

Эгерде сиз аналогдук жана санариптик тилкелердин ортосундагы айырмачылыктарды физикалык жактан аныктоо кыйын болуп жатсаңыз,

  1. Анолог түрүндө 4 казык, 1 жалпы оң жана 3 терс колдонулат, башкача айтканда RGBдин ар бир түсү үчүн бирөө.
  2. Санариптик типтеги 3 казык, оң, маалыматтар жана жерди колдонот.

Мен аналогдук тилкелерди колдоном, анткени

  1. Музыканы реактивдүү аналогдук тилке кылууну үйрөтүүчү Instructables өтө аз. Алардын көпчүлүгү Digital түрүнө басым жасашат жана аларды музыкага реакция кылуу оңой.
  2. Менде аналогдук типтеги тилкелер бар болчу.

2 -кадам: Аудио сигналды күчөтүү

Аудио сигналды күчөтүү
Аудио сигналды күчөтүү
Аудио сигналды күчөтүү
Аудио сигналды күчөтүү
Аудио сигналды күчөтүү
Аудио сигналды күчөтүү

Аудио уячасы аркылуу жөнөтүлгөн аудио сигнал

+200мВ жана -200мВ ичинде термелүүчү аналогдук сигнал. Эми бул көйгөй, биз аудио сигналды Arduino аналогдук кирүүлөрүнүн бири менен өлчөгүбүз келет, анткени Arduino аналогдук кириштери 0 менен 5В ортосундагы чыңалууларды гана өлчөй алат. Эгерде биз аудио сигналдагы терс чыңалууларды өлчөөгө аракет кылсак, Arduino 0В гана окуйт жана биз сигналдын түбүн кыркып бүтүрөбүз.

Аны чечүү үчүн, биз 0-5В диапазонуна түшүп калгыдай аудио сигналдарды күчөтүп, ордун алмаштырышыбыз керек. Идеалында, сигнал 2.5В тегерегинде термелүүчү амплитудага ээ болушу керек, минималдуу чыңалуусу 0В жана максималдуу чыңалуусу 5В.

Күчөтүү

Күчөткүч схеманын биринчи кадамы, ал сигналдын амплитудасын + же 200мВтан + же - 2,5Вга чейин жогорулатат (идеалдуу). Күчөткүчтүн башка функциясы - аудио булагын (биринчи кезекте аудио сигналын жаратуучу нерсени) чынжырдын калган бөлүгүнөн коргоо. Чыгып жаткан күчөткүч бардык токту күчөткүчтөн алат, андыктан ага кийинчерээк жүктөлгөн ар кандай жүктү аудио булагы "сезбейт" (менин учурда телефон/iPod/ноутбук). TL072 же TL082 пакетиндеги оп-амптердин бирин орнотуу менен, муну инверторсуз күчөткүч конфигурациясында жасаңыз.

TL072 же TL082 маалымат барагында ал +15 жана -15V менен иштөө керек экени айтылат, бирок сигнал эч качан + же 2.5V жогору көтөрүлбөйт, анткени оп -ампти төмөн нерсе менен иштетүү жакшы. Мен тогуз вольттогу эки батарейканы + же - 9В электр булагын түзүү үчүн сериялык зым менен колдондум.

+V (пин 8) жана –V (пин 4) оп-ампка туташтырыңыз. Сигналды моно уячадан инверттик эмес киришке (3-пин) жана чыңалуудагы жерге туташтыргычты 0В чыңалууңузга туташтырыңыз (мен үчүн бул эки 9В батарейканын сериясы). Чыгуу (пин 1) менен инверттик кириштин (пин 2) ортосунда 100kOhm каршылыгын өткөрүңүз. Бул схемада мен өзгөрбөгөн каршылык катары зымдуу 10kOhm потенциометрди колдондум, бул менин күчөткүчүмдүн кирешесин (күчөткүчтүн көлөмүн) жөнгө салуу үчүн. Бул 10K сызыктуу конустук казанды инверттөөчү кирүү менен 0В шилтеменин ортосунда өткөрүңүз.

DC Offset

DC офсет схемасы эки негизги компоненттен турат: чыңалуу бөлүштүргүч жана конденсатор. Чыңалуу бөлүштүргүчү Arduino 5Vдан жерге чейин эки 100k каршылыгынан жасалган. Резисторлор бирдей каршылыкка ээ болгондуктан, алардын ортосундагы өткөөлдөгү чыңалуу 2,5Вге барабар. Бул 2.5V түйүнү 10uF конденсатору аркылуу күчөткүчтүн чыгуусуна байланган. Конденсатордун күчөткүч тарабындагы чыңалуу жогорулап жана төмөндөгөндө, ал заряддын бир убакта топтолушуна жана 2.5В түйүнүнө туташтырылган конденсатор тараптан кайтарылышына алып келет. Бул 2.5В түйүнүндөгү чыңалуунун өйдө -ылдый термелишине алып келет, борбордун айланасында 2,5В.

Схемада көрсөтүлгөндөй, 10uF конденсаторунун терс коргоосун күчөткүчтөн чыккан чыгууга туташтырыңыз. Капкактын экинчи тарабын 5V менен жердин ортосунда серияланган эки 100k каршылыктын ортосундагы түйүнгө туташтырыңыз. Ошондой эле, жерге 2.5Vдан 47nF конденсатор кошуңуз.

3 -кадам: Сигналды стационардык синусоиддердин суммасына ажыратуу - теория

Сигналды стационардык синусоиддердин суммасына ажыратуу - теория
Сигналды стационардык синусоиддердин суммасына ажыратуу - теория

3.5мм джек аркылуу жөнөтүлгөн аудио сигнал

диапазону 20 Гцтен 20 кГцке чейин. Ал 44,1 кГц ылдамдыкта тандалып алынган жана ар бир үлгү 16 бит боюнча коддолгон.

Аудио сигналды түзгөн негизги элементтик жыштыктарды деконструкциялоо үчүн, сигналды стационардык синусоиддердин суммасына ажыратуучу Фурье трансформациясын колдонобуз. Башкача айтканда, Фурье анализи сигналды баштапкы доменинен (көбүнчө убакыт же мейкиндиктен) жыштык чөйрөсүндөгү өкүлчүлүккө жана тескерисинче айлантат. Бирок аны аныктамадан түз эсептөө көп учурда практикалык болуу үчүн өтө жай.

Фигуралар сигналдын убакыт жана жыштык чөйрөсүндө кандай экенин көрсөтөт.

Бул жерде Fast Fourier Transform (FFT) алгоритми абдан пайдалуу!

Аныктама боюнча, FFT DFT матрицасын сейрек (көбүнчө нөл) факторлордун продуктусуна факторизациялоо аркылуу мындай өзгөртүүлөрдү тез эсептейт. Натыйжада, ал DFTди O (N2) эсептөөнүн татаалдыгын азайтууга жетишет, эгерде DFTтин аныктамасын жөн эле O (N log N) колдонсо, анда N - маалыматтын өлчөмү. Ылдамдыктын айырмасы өтө чоң болушу мүмкүн, айрыкча N миңдеген же миллиондогон болушу мүмкүн болгон узак маалымат топтому үчүн. Тегеректөө катасы болгондо, көптөгөн FFT алгоритмдери DFTтин аныктамасын түз же кыйыр баалоого караганда алда канча так болот.

Жөнөкөй сөз менен айтканда, бул FFT алгоритми кандайдыр бир сигналдын Фурье трансформациясын эсептөөнүн ылдамыраак жолу экенин билдирет. Бул көбүнчө эсептөө күчү төмөн түзмөктөрдө колдонулат.

Сунушталууда: