Obsah:

„MicroDot“pro LattePanda (nebo Raspberry Pi): 7 kroků (s obrázky)
„MicroDot“pro LattePanda (nebo Raspberry Pi): 7 kroků (s obrázky)

Video: „MicroDot“pro LattePanda (nebo Raspberry Pi): 7 kroků (s obrázky)

Video: „MicroDot“pro LattePanda (nebo Raspberry Pi): 7 kroků (s obrázky)
Video: Что такое Микродот? | Как получить максимальную отдачу от ваших лавальеров 2024, Listopad
Anonim
obraz
obraz

MicroDot je podomácku vyrobené „tlačítko“Alexa určené k připojení k LattePanda nebo Raspberry Pi s nainstalovanou aplikací Alexa Sample. Jedná se o malý reproduktor s LED diodami a dotykovou/řečovou aktivací a je ideální pro použití na stolním počítači nebo v autě.

*LattePanda pro tento projekt laskavě dodala společnost DFRobot

Krok 1: Přehled systému

Přehled systému
Přehled systému

LATTE PANDA

LattePanda je malý (zhruba o velikosti Raspberry Pi) Windows 10 počítač s vestavěným Arduino pro propojení se skutečným světem. Je to opravdu docela šikovné - a je to dobrá náhrada za Raspberry Pi - zvláště pokud máte (jako já) problémy s vypořádáním se s Linuxem.

Nainstaloval jsem si na Pandu aplikaci Alexa Sample a implementoval jsem svůj vlastní engine pro budování slov založený na vestavěné SDK rozpoznávání řeči ve Windows.

MICRODOT

MicroDot se skládá z malého zesilovače a reproduktoru s dotykovou mřížkou a modro/bílým polem LED. MicroDot byl původně navržen tak, aby byl umístěn na palubní desku v mém autě, aby poskytl mé řešení Alexa do auta (spárovat s mým předchozím projektem-autorádio s podporou Alexa). Kromě možnosti probuzení jsem chtěl aktivaci dotykem, protože Alexa bude těžko slyšet moje probuzení, když je hudba nahlas! (Po aktivaci Panda vyšle signál do stereofonního zařízení, aby snížila hlasitost, zatímco Alexa poslouchá/mluví).

RASPBERRY PI

Pro ty, kteří se vyznají v „Raspberry Pi“, jsem na konci tohoto Instructable popsal, jak propojit MicroDot s Rapsberry Pi 3.

Krok 2: Obvod MicroDot

Obvod MicroDot
Obvod MicroDot
Obvod MicroDot
Obvod MicroDot
Obvod MicroDot
Obvod MicroDot

DÍLY

6 x 220R SMD rezistory 2 x 470R SMD rezistory 1 x 10uF SMD kondenzátor 1 x modul dotykového senzoru TTP223 (https://www.ebay.com/itm/192097635565)1 x modul zesilovače PAM8403 3W (https://www.ebay.com/ itm/221895096190) 1 x 10K jednoduchý lineární potenciometr palce (https://www.ebay.com/itm/401105807680)1 x 50pF keramický kondenzátor3 x 3 mm modré LED 3 x 3 mm bílé LED 1 x 1,7 palce 4ohm 3W reproduktor 1 x tenký černý kabel od stará sluchátka 1 x tenký černý 1 m prodlužovací kabel USB*

KONSTRUKCE

MicroDot PCB byla vyrobena metodou železo na toner na jednostranné desce o tloušťce 0,8 mm - v této tloušťce ji lze ostře nůžkami nahrubo nařezat a poté snadno vytvarovat. Nejprve namontujte všechny součásti pro povrchovou montáž.

K dotykové ploše senzoru je třeba připojit vodič, takže je třeba seškrábat malou plochu, aby se připájel. Zjistil jsem, že v surovém režimu byl senzor příliš citlivý - fungoval dobře, ale jakmile byl namontován do skříně, často se spouštěl falešně kvůli jeho blízkosti k kovovému reproduktoru. Uzemnil jsem kovový reproduktor - což trochu pomohlo, ale nakonec jsem se musel obrátit na datový list.

Datový list TTP223 uvádí, že citlivost můžete upravit umístěním kondenzátoru (0 až 50 pf) mezi dotykový senzor a zem. Senzor fungoval dobře s kondenzátorem 50 pf. Umístění tohoto můžete vidět na obrázku v další části.

Pro připojení MicroDot k Pandě se používají dva kabely:- tenký černý kabel ze starého páru sluchátek pro připojení zvuku- pro připojení ke GPIO (dotykový senzor/LED) byl použit tenký USB kabel. Budete potřebovat kabel se 6 samostatnými konektory (5 interních + stínění). *Dávejte pozor, že některé levné USB kabely nemají samostatný zemnící kolík/stínění, nebo tyto dva mohou být propojeny interně (zkontrolujte to před přerušením kabelu tím, že se ujistíte, že existuje spojitost mezi vnějšími kovovými částmi samce a samice zástrčky a že mezi zemnicím kolíkem a vnějšími kovovými částmi není spojitost).

Použijte připojení USB kabelem: červená =+5 V, stínění = GND, černá = dotykový senzor, bílá = bílé LED diody, zelená = modré LED diody. Místo pouhého odstřižení konektorů a pevného zapojení můžete chtít udělat to, co jsem udělal a ponechte zástrčky a odřízněte jednu dlouhou část a jednu krátkou (řekněme 200 mm) část a spojte dva konce kabelu dohromady. Tímto způsobem je jednotka odnímatelná. Jen se ujistěte, že do něj nezapojujete žádná skutečná zařízení USB, ani jej nezapojujte do běžného portu USB!

Krok 3: Konstrukce MicroDot

MicroDot konstrukce
MicroDot konstrukce
MicroDot konstrukce
MicroDot konstrukce
MicroDot konstrukce
MicroDot konstrukce
MicroDot konstrukce
MicroDot konstrukce

3D TISKOVÉ DÍLY

V přiloženém souboru zip jsou čtyři 3D tištěné části: 1. Hlavní skořepina MicroDot - vytištěna černě PLA2. Základna MicroDot - vytištěno černě PLA3. LED kroužek - tištěný bílou PLA (čirý nebo průsvitný může být lepší, aby pomohl rovnoměrněji rozptýlit světlo) 4. Distanční podložka desky plošných spojů - jakákoli barva - vložená mezi reproduktor a desku plošných spojů.

K přišroubování základny ke skořepině se používají šrouby a matice M2. Do otvorů na vnitřní straně pláště je třeba natavit tři šrouby M2. Jsou poměrně malé a možná je budete muset „pájet“na místě pomocí dalšího vlákna.

LED ARRAY

Bílé a modré LED diody jsou namontovány v poli střídavě, jak je znázorněno na obrázcích. Vodiče jsou ohnuty o 90 stupňů proti spodní části LED a vodiče jsou roztaveny do prstence horkou páječkou (zde si všimněte polarity). Spodní část LED diod je uložena dolů, takže jsou ploché k povrchu prstenu.

Katody diod LED jsou všechny spojeny dohromady prstencem drátu a ty se připojují k nejspodnějšímu kolíku záhlaví. Ostatní kolíky záhlaví musí být střídavě modré/bílé pro každou jednotlivou LED

UVEDENÍ TO SPOLU

Gril byl vyřezán z držáku stolního papíru (na obrázku) drátem připájeným k jednomu okraji. Ten se nejprve vloží do skořepiny, poté do pole LED (toto musí být vloženo pod úhlem, jak je znázorněno, přičemž slot je zarovnán s jedním ze šroubových sloupků). Reproduktor je další (umístěte tenkou pásku kolem horní části, abyste ji izolovali od okraje desky plošných spojů). Poté mezikus a deska plošných spojů sedí pouze nahoře. Našroubujte základnu, aby vše drželo pohromadě.

Při zapojování zvukového kabelu do LattePandy jsem zjistil, že k získání dobrého zvuku musím použít filtr pro zemní smyčku zvuku (https://www.ebay.com/itm/371801191297). Všimněte si, že na fotografiích používám zvukový výstup z mého video adaptéru HDMI-VGA, ale je dobré použít integrovaný výstupní konektor zvuku.

Budete také potřebovat usb mikrofon (https://www.ebay.com/itm/332148968227).

Krok 4: LattePanda

LattePanda
LattePanda
LattePanda
LattePanda

ZALOŽIT

Panda se dodává v modelech 2G/32G a 4G/64G, s licencí Windows 10 nebo bez ní. Model, který jsem použil, byla verze 2G/32G s licencí Windows 10:

Prostudujte si oficiální dokumentaci k nastavení LattePanda (https://docs.lattepanda.com) Zde není nic příliš složitého, ale vezměte na vědomí pokyny k zapnutí Pandy (https://docs.lattepanda.com/ content/getStarted/powe …).

Zdálo se, že mi všechno fungovalo poprvé (což je příjemná změna oproti mým zkušenostem s Raspberry Pi).

Jedna důležitá věc je, že pro Pandu opravdu potřebujete nějaký druh chlazení. Použil jsem nějaké nalepovací chladiče nahoře a dole (spodní strana je obzvlášť horká).

Tento diagram podrobně popisuje vstupy a výstupy Arduino: https://docs.lattepanda.com/content/hardware/inputs… K připojení k MicroDot (D9, D10 budeme používat řadu 3kolíkových konektorů na levé straně) a D11), jakož i zvukový výstupní konektor.

Krok 5: LattePanda - Nainstalujte si ukázkovou aplikaci Alexa

LattePanda - Nainstalujte si ukázkovou aplikaci Alexa
LattePanda - Nainstalujte si ukázkovou aplikaci Alexa

STAŽENÍ

Ukázka aplikace Alexa je k dispozici zde:

github.com/alexa/alexa-avs-sample-app/

Stiskněte tlačítko Klonovat nebo Stáhnout a stahujte jako.zip

Vytvořte adresář na jednotce C C: / ALEXA a extrahujte obsah zipu tak, aby se adresář zip nazvaný sample umístil přímo do adresáře ALEXA (tj. C: / ALEXA / sample \…)

INSTALACE

Oficiální úplné pokyny k instalaci v systému Windows jsou zde:

github.com/alexa/alexa-avs-sample-app/wiki…

Existuje několik kroků a chvíli to trvá, ale zjistil jsem, že s Windows všechno šlo poprvé hladce.

K úpravě některých konfiguračních souborů budete potřebovat dobrý textový editor (Poznámkový blok není vhodný, protože soubory mají koncovky řádků ve stylu Linuxu). Použil jsem Notepad ++, který je k dispozici zde:

Několik poznámek k oficiálním pokynům:

Část 3 - Závislosti

Moje Panda je 64bitová, takže jsem stáhl všechny 64bitové verze, ale pokud instalujete na 32bitový systém, budete muset použít 32bitové verze. Poznámka: nekombinujte 32 a 64 bitové verze závislostí.

Odkaz zobrazený pro přehrávač médií VLC vás přenese na 32bitovou verzi. Chcete-li získat 64bitovou verzi, přejděte na tento odkaz: https://www.videolan.org/vlc/download-windows.html a na tlačítku stahování vyberte šipku a poté Instalační program pro 64bitovou verzi.

Pro instalaci JDK jsem použil verzi: jdk-8u144-windows-x64 Pro nodejs jsem použil: Windows Installer (.msi) 64 bitů Pro Maven: apache-maven-3.5.0-bin.zip Pro OpenSSL jsem použil: Win64 OpenSSL v1.1.0f

Část 5 - Metoda autentizace

Vyberte 5a - server Nodejs. Pokud se vám při spuštění příkazu npm zobrazí chyba, musíte přidat adresář nodejs do proměnné prostředí cesty (v pokynech je vysvětleno, jak to provést).

Část 6 - Spuštění ukázkové aplikace

Při úpravách souboru config.json nastavte wakeWordAgentEnabled na true, protože v další části nainstalujeme vlastní modul pro probuzení (modul pro probuzení, který je součástí ukázkové aplikace, funguje pouze v Linuxu).

Pokud se vám při spuštění příkazu mvn zobrazí chyba, musíte do proměnné prostředí cesty přidat adresář maven / bin.

Při spuštění aplikace byste měli dostat GUI zobrazené na snímku obrazovky. Když kliknete na ikonu, budete moci mluvit s Alexou. Toto je základní aplikace Alexa - ale budeme potřebovat víc než tohle!

Dalšími kroky bude instalace vlastního enginu pro probuzení, abyste mohli aktivovat jednoduše „Alexa“, a také mít možnost použít dotykový senzor přes vstup Arduino. Musíme také zajistit automatické spuštění aplikace při spuštění a rozsvítit některé LED diody, když Alexa poslouchá a mluví.

Krok 6: LattePanda - Nainstalujte si vlastní WakeWord Engine

LattePanda - Nainstalujte si vlastní WakeWord Engine
LattePanda - Nainstalujte si vlastní WakeWord Engine

MOTOR WAKEWORD

WakeWord engine umožňuje Alexu probudit mluveným slovem (obvykle '' Alexa ), místo aby klikal na tlačítko. Ukázková aplikace má pro WakeWord engine dvě možnosti: Sensory nebo KITT. AI wake engine. jejich implementace v ukázkové aplikaci však funguje pouze pro Linux. Oba tyto motory také podléhají určitým licenčním požadavkům.

Zde implementuji vlastní modul pro probuzení slov, který je založen na vlastní SDK pro rozpoznávání řeči Windows 10. Toto je tedy také bez dalších licenčních požadavků.

INSTALUJTE ZÁVISLOSTI

Microsoft Speech Platform - Runtime (verze 11) https://www.microsoft.com/en-gb/download/details.a…x86_SpeechPlatformRuntime\SpeechPlatformRuntime.msi (32 bitů) nebo x64_SpeechPlatformRuntime / SpeechPlatformRuntime.msi (64 bitů)

Microsoft Speech Platform-Runtime Languages (verze 11)

Můj vlastní modul WakeWord byl napsán v jazyce C# v aplikaci Visual Studio 2017. Zadal jsem zde konečný spustitelný soubor a také zdrojový kód. Pokud si to chcete sestavit sami, budete také potřebovat toto:

Microsoft Speech Platform - Software Development Kit (SDK) (verze 11) https://www.microsoft.com/en-gb/download/details….|x86_MicrosoftSpeechPlatformSDK\MicrosoftSpeechPlatformSDK.msi (32 bit) nebo x64_MicrosoftSpeechPlatformSDK / MicrosoftSpeechPlatformSDK.ms 64 bitů)

Vložte WakeWordPanda.exe (a alexa_run.bat) do adresáře ALEXA. Tento program provádí následující úkoly:- Naslouchá probuzení „Alexa“- Monitoruje senzor dotykového vstupu- Ovládá MODRÉ a BÍLÉ LED diody

Všimněte si toho, že jsem to vyvinul na jiném počítači se systémem Windows 10, takže jsem nemusel instalovat Visual Studio na LattePanda, protože jsem nechtěl spotřebovat gigabajty. K vývojovému počítači jsem připojil Arduino Uno nainstalované s StandardFirmata (https://www.lattepanda.com/docs/#SetuptheArduino), abych mohl také vyvíjet se vstupy/výstupy Arduino. Zdrojový kód Visual Studio je také připojen, pokud ho chcete upravit a/nebo zkompilovat sami.

ZMĚNIT JAVA KLIENTA

Klient Java potřebuje do kódu přidat několik řádků navíc. Toto má umožnit správné fungování LED:

Když Alexa poslouchá, je do motoru WakeWord odeslán signál PAUSE_WAKE_WORD_ENGINE. Pomocí tohoto signálu jsem věděl, kdy zapnout MODROU (LED pro poslech Alexa). Když je přijat signál RESUME_WAKE_WORD_ENGINE, modrá LED zhasne a BÍLÁ (LED mluvící Alexa) se rozsvítí. Když Alexa přestane mluvit, extra kód pošle další signál RESUME_WAKE_WORD_ENGINE - aby motor WakeWord věděl, kdy vypnout bílou LED.

Přejděte na: C: / ALEXA / samples / javaclient / src / main / java / com / amazon / alexa / avs a otevřete AVSController.java v textovém editoru. Zkopírujte kód z připojeného souboru Extra_Code.txt. Je třeba jej vložit na dvě místa:

1. Ve funkci public void onAlexaSpeechFinished () přímo za příkazem: dependentDirectiveThread.unblock ();

2. Ve funkci private void handleAudioPlayerDirective (směrnice směrnice) přímo před příkazem: player.handleStop ();

Také jsem přepracoval signál CONFIRM, aby motor WakeWord věděl, jestli Alexa zareagovala. Toto má zrušit 5sekundový časový limit, který nastane, pokud nedojde k žádné reakci. Zkopírujte kód z Extra_Code2.txt a vložte jej na jedno místo:

1. Ve funkci publicpublic onAlexaSpeechStarted () přímo za příkazem dependentDirectiveThread.block ();

Nyní je třeba znovu zkompilovat klienta Java. Otevřete příkazový řádek a přejděte do C: / ALEXA / samples / javaclient Enter: mvn install pro rekompilaci.

Pokud spustíte aplikaci Companion Service a Java Alexa jako dříve a poté také dvakrát kliknete na WakeWordPanda.exe, počkáte, až se připojí, a poté byste měli být schopni aktivovat Alexa vyslovením „Alexa“.

MICRODOT

Pokud připojíte kabel „USB“MicroDot k LattePanda podle obrázku a zapojíte zvukový kabel, měl by nyní být plně funkční. Když vyslovíte probuzení nebo se dotknete grilu, měla by se aktivovat Alexa a rozsvítit by se měly modré LED diody. Když Alexa odpoví, měly by se rozsvítit bílé LED diody.

NASTAVENÍ AUTO RUN

Místo ručního zadávání všech příkazů ke spuštění všeho můžete použít skript alexa_run.bat. To počká na připojení k internetu a poté vyvolá samostatné moduly (doprovodná služba, java klient, engine pro probuzení slov).

Posledním krokem je nechat vše běžet automaticky při spuštění:

1. Klepněte pravým tlačítkem na auto-run.bat a vyberte vytvořit zástupce. Stiskněte ctrl+R a zadejte shell: startup. Otevře se spouštěcí složka. Přetáhněte vytvořenou zkratku do spouštěcí složky.

Alexa se nyní automaticky spustí při spuštění (inicializace po spuštění trvá přibližně 30 sekund).

Krok 7: MicroDot pro Raspberry Pi

MicroDot pro Raspberry Pi
MicroDot pro Raspberry Pi
MicroDot pro Raspberry Pi
MicroDot pro Raspberry Pi

(Pokud chcete místo LattePandy použít Raspberry Pi 3).

STAŽENÍ

Stáhněte si ukázkovou aplikaci Alexa odtud:

Stiskněte tlačítko Klonovat nebo Stáhnout a stahujte jako.zip. Rozbalte, aby byla složka alexa-ava-sample-app na ploše.

INSTALACE

Postupujte podle oficiálních úplných pokynů zde (poznámka: nastavení tak, aby složka alexa-ava-sample-app na ploše):

github.com/alexa/alexa-avs-sample-app/wiki…

Existuje spousta návodů, jak to udělat s Raspberry Pi na internetu. Nainstaloval jsem to několikrát na Raspberry Pi a ani jednou to nešlo tak hladce jako instalace na WIndows 10 (žádné překvapení - Linux mě pokaždé dostane). Hlavní problémy, se kterými jsem se setkal, byly:

1. Zajistěte správnou funkci zvuku a mikrofonu. Pokud máte tyto problémy, podívejte se sem

2. Problémy s verzí JDK. Viz 4.3 v oficiálních pokynech a poznámka v souboru pom.xml, která hovoří o přepsání verze při provádění příkazu mvn exec: exec (tj. Musel jsem přidat tento přepínač -Dalpn -boot.version = 8.1.6.v20151105). Všimněte si, že tento příkaz je součástí mého spouštěcího skriptu (alexa_startup.sh).

3. Uvedení enginu Sensory Wake do provozu (https://github.com/Sensory/alexa-rpi)

Jakmile vše spustíte pomocí manuálních příkazů, jak je uvedeno v pokynech, pokračujte v instalaci MicroDot.

PŘIPOJENÍ MICRODOTU

MicroDot nemůžete přímo připojit k GPIO, protože bude odebírat příliš mnoho proudu. Budete potřebovat: 2x 2N3904 tranzistory pro napájení LED, 1x2K2 a 1x3K3 odpory pro snížení napětí z dotykového senzoru na 3,3 V (MicroDot bude napájen z 5V zdroje). Viz přiložený diagram. Možná budete chtít vyrobit desku plošných spojů, ale právě jsem tyto komponenty namontoval na zadní stranu 8kolíkové zásuvky.

CUSTOM WAKE ENGINE (TOUCH)

Rozbalte obsah připojené složky zip do složky alexa-avs-sample-app. Existují dva soubory: wake.py - skript pythonu, což je vlastní (dotykový) modul probuzení pro MicroDot alexa_autostart.sh - skript pro spuštění všeho. Klikněte pravým tlačítkem na vlastnosti a vyberte spustit: kdokoli na kartě oprávnění.

Ke spuštění enginu Wake budete potřebovat nainstalovaný python. Budete také potřebovat knihovnu GPIO (https://makezine.com/projects/tutorial-raspberry-p…) Ty by již měly být nainstalovány v nejnovější verzi Raspbian.

Chcete-li spustit vše, zadejte do terminálu: cd/home/pi/Desktop/alexa-avs-sample-appsudo./alexa_startup.sh

NASTAVIT AUTORUN

Chcete-li nastavit automatické spouštění Alexa při spuštění, otevřete terminál a zadejte:

cd /home/pi/.config/lxsession/LXDE-pisudo nano autostart

a přidejte řádek a uložte:

@/home/pi/Desktop/alexa-avs-sample-app/alexa_autostart.sh

Restartujte a aplikace Alexa by se měla spustit automaticky.

Doporučuje: