Obsah:

Udělej to tak! Mini inženýrský počítač Star Trek TNG: 11 kroků (s obrázky)
Udělej to tak! Mini inženýrský počítač Star Trek TNG: 11 kroků (s obrázky)

Video: Udělej to tak! Mini inženýrský počítač Star Trek TNG: 11 kroků (s obrázky)

Video: Udělej to tak! Mini inženýrský počítač Star Trek TNG: 11 kroků (s obrázky)
Video: Ohromující odhalení UFO Aviho Loeba: Bob Lazar a více vesmírů! 2024, Listopad
Anonim
Image
Image
Udělej to tak! Mini inženýrský počítač Star Trek TNG
Udělej to tak! Mini inženýrský počítač Star Trek TNG
Udělej to tak! Mini inženýrský počítač Star Trek TNG
Udělej to tak! Mini inženýrský počítač Star Trek TNG

Přehled

Vyrůstal jsem na Star Trek: The Next Generation. Vždy jsem chtěl postavit zařízení s motivem Star Treku, a tak jsem se konečně dostal k remixování jednoho ze svých starých projektů, abych vytvořil terminál pro zobrazení Star Treku.

Terminál poskytuje následující informace:

  • Počasí - pomocí Národní meteorologické služby
  • Vnitřní teplota, vlhkost a síla těkavých organických sloučenin (VOC)
  • Novinové články - z News.org
  • Plán (s funkcí alarmu) - z aplikace Microsoft Outlook
  • Informace o kondici (kroky, minuty pohybu, srdeční body, hmotnost, spálené kalorie) - z Google Fitness
  • graf barevného kódu rezistoru
  • kalkulačka odporu LED (k určení hodnoty odporu na základě proudu a výkonu zdroje)
  • Nástroj pro měření proudu a proudu

Tyto informace jsou k dispozici prostřednictvím kombinace API a hardwarových senzorů. Využívám ESP32 pro mikrokontrolér a využívám cloud AWS pro veškerý sběr a agregaci dat.

Zahrnul jsem také několik „velikonočních vajec“:

  • Pocta Ronovi McNairovi - Dr. McNair je důvod, proč jsem se stal inženýrem; vyrostl 45 minut z mého rodného města. Zemřel při výbuchu Challengeru.

    • Moje hvězdná loď se jmenuje „USS Ronald E McNair“
    • Registrační číslo pochází z data narození Sr McNair; Prefix Code je den, kdy přišel o život.
  • Použití „předponového kódu“je kývnutí na Star Trek: Wrath of Khan (největší Star Trek film všech dob; Don't @ me).
  • Čísla vpravo od terminálu odkazují na moje bratrství (1906 - Alpha Phi Alpha) a moji alma mater a studijní obor - (University of Oklahoma, College of Engineering)

Máte možnost přizpůsobit číslování, nápisy a název lodi, registr atd. Pro vlastní „velikonoční vajíčka“.

Pozadí

V loňském roce jsem potřeboval levný způsob měření energie a vybití baterie pro nositelný projekt. Koupil jsem Adafruit INA219 Featherwing a některé různé náhradní díly jsem použil k vytvoření jednoduchého zařízení pro měření výkonu (více si o něm můžete přečíst zde).

Letos jsem se rozhodl upgradovat zařízení … aby bylo více „techy“. Původně jsem plánoval postavit fungující trikordér Star Trek (verze Mark IV TR-590 Mark IX, pro ty, které to zajímá) … ale rychle jsem pochopil, že má větší smysl vytvořit něco, co bude sedět na mém stole (myslím, proč jděte na všechny ty potíže, abyste vytvořili skvělé zařízení, jen ho zavřete a vložte do zásuvky, když se nepoužívá).

Takže jsem se obrátil k vytvoření verze počítačových displejů, které vidíte na Star Trek TNG nebo Voyager (nebo různých filmech). Pohrával jsem si s různými designy a pak jsem narazil na verzi vytvořenou Ruiz Brothers of Adafruit. Adafruit odvedl skvělou práci při poskytování zdrojových souborů pro své 3D tištěné projekty, takže jsem mohl vzít jejich původní verzi a remixovat ji pro svůj hardware, tlačítka a další periferie.

Věci, které byste měli vědět, než budete pokračovat

  1. Poskytuji pokyny krok za krokem k vytvoření mé verze projektu; o určitých krocích však nezacházím do podrobností (budu odkazovat na podpůrné pokyny nebo dokumentaci)
  2. Jedná se o komplexní projekt. Je to „multidisciplinovaný make“, který vyžaduje následující dovednosti

    • Arduino IDE
    • AWS - Budete potřebovat účet a budete muset rozumět S3, Lambda a Node JS
    • Pájení
    • 3D tisk
  3. Aby bylo možné získat informace o kalendáři a fitness, jsou k dispozici volitelné doplňky pro vylepšení projektu. Funkce je zahrnuta v základně kódů; k podpoře funkcí však budete muset v cloudech Azure a Google vytvářet „aplikace“.
  4. To je v konečném důsledku přizpůsobitelné … můžete vyměnit proudový snímač za jiný perový křídel Můžete použít jinou kombinaci peří/wifi.

Zásoby

Elektronické komponenty

  • Adafruit ESP32 Huzzah Feather
  • Mini souprava Adafruit Featherwing Tripler
  • Adafruit 12klíčový kapacitní dotykový senzor Breakout
  • Adafruit TFT FeatherWing - 3,5 "dotykový displej s rozlišením 480 x 320 pixelů
  • Adafruit BME680 - snímač teploty, vlhkosti, tlaku a plynu
  • Panelový konektor DC pro montáž na panel 2.1 (2)
  • Lithium -iontová polymerová baterie - 3,7 V, 500 mAh
  • Piezo bzučák
  • Mirco USB kabel a 5V nabíječka (typická USB telefonní nabíječka bude fungovat)
  • Páska z měděné fólie s lepidlem
  • Volitelné - Adafruit INA219 Featherwing
  • Volitelné - 2,1 zástrčky - (pro použití se snímačem proudu INA219)

Odkaz na všechny elektronické součásti kromě konektorů 2.1:

Komponenty 3D vláken a volitelné součásti pro lakování/broušení

  • Proto Pasta Conductive PLA
  • Další 3D vlákna - použil jsem 4 barvy - šedá, černá, aqua (světle modrá) a bílá
  • Trysky 0,25 a 0,4 mm (pro detaily písma jsem použil 0,25).

Součásti a nástroje sestavy hardwaru

  • Šrouby M2x5 a M3x5
  • Piny pro záhlaví v pravém a pravém úhlu (odkazy viz seznam přání Adafruit)
  • Páječka (a cívka pájky, cíliče, páječky atd.)
  • Sada šroubováků Philips
  • Smršťovací obal
  • Stranded Wire 22AWG - pět nebo šest barev
  • Solid Wire 22AWG - pět nebo šest barev
  • Svěrák na desku plošných spojů a Pomocné ruce (volitelné, ale usnadňuje pájení)
  • Diagonální drátové řezačky
  • Odizolovače drátu
  • Nůž Xacto (pro odstranění podpěr z částí 3D tiskárny)
  • 3D tiskárna (pokud plánujete tisknout sami)
  • Tmel nebo páska (k připevnění baterie na vnitřní stranu potištěného pouzdra)
  • Digitální třmeny
  • Bláznivé lepidlo
  • Volitelné - jednorázové nitrilové rukavice
  • Volitelně - Pájecí podložka (volitelná, ale chrání povrchy)

Poznámka: pokud tyto nástroje nemáte, doporučuji vám navštívit stránky Becky Stern, kde najdete doporučení pro dobré možnosti.

Software

  • Arduino IDE
  • Node JS editor (jako Microsoft Code)
  • Účet AWS
  • Volitelné - účet Google Cloud (informace o fitness)
  • Volitelné - cloudový účet Microsoft Azure (informace o kalendáři)
  • Krok 1: Stahujte, upravujte soubory a tiskněte 3D soubory

    Stahujte, upravujte soubory a tiskněte 3D soubory
    Stahujte, upravujte soubory a tiskněte 3D soubory
    Stahujte, upravujte soubory a tiskněte 3D soubory
    Stahujte, upravujte soubory a tiskněte 3D soubory
    Stahujte, upravujte soubory a tiskněte 3D soubory
    Stahujte, upravujte soubory a tiskněte 3D soubory
    Stahujte, upravujte soubory a tiskněte 3D soubory
    Stahujte, upravujte soubory a tiskněte 3D soubory

    Soubory můžete odeslat do služby 3D tisku (například 3D Hubs) nebo si můžete vytisknout vlastní. Soubory jsou k dispozici na PrusaPrinters.org.

    Tento případ je remixem budíku Py Portal na webu Adafruit. Můj projekt používá podobný TFT, takže jsem byl schopen minimalizovat množství projekční práce potřebné k tomu, aby kufr fungoval s mým příslušenstvím.

    Pro tisk jsem použil následující nastavení:

    • Přední a zadní tisk s výškou vrstvy 0,2 mm s tryskou 0,4 mm, bez podpěr
    • Číslo strany - vytištěno ve výšce vrstvy 0,10 mm s tryskou 0,25 mm, bez podpěr
    • Klíče - potištěné ve výšce vrstvy 0,2 mm s tryskou 0,4 mm. Budete muset vytisknout 7 a budete muset tisknout s vodivým vláknem Proto-Pasta.
    • Pouzdro - vytištěno ve výšce vrstvy 0,2 mm.

      Podpora je nutná, ale není nutná všude (pouze na bocích a uprostřed, kde sedí klávesnice

    Několik věcí, které byste měli vědět:

    1. Prusa MK3 vám umožňuje měnit barvy v různých výškách vrstev. Tuto funkci jsem použil pro dílčí číslo.
    2. Také, pokud jde o kus bočního čísla:

      • Produkční posádka Star Trek TNG by v rekvizitách posypala velikonoční vajíčka. Když se podíváte pozorně na různé plakety a panely, uvidíte jména lidí, texty písní atd. Chtěl jsem vytvořit vlastní „velikonoční vajíčko“pro číslo strany, takže používám „06“- což odkazuje na mé bratrství (vytvořena v roce 1906) a „OUCOE“- což se týká mé alma mater (University of Oklahoma, College of Engineering).
      • Vytvořil jsem „prázdný“kus čísla_čísla, který můžete upravit, abyste si vytvořili vlastní číslo a text.

    Krok 2: Pájecí/montážní součásti - část a (klávesnice a boční číslo)

    Pájecí/montážní součásti - část a (klávesnice a boční číslo)
    Pájecí/montážní součásti - část a (klávesnice a boční číslo)
    Pájecí/montážní součásti - část a (klávesnice a boční číslo)
    Pájecí/montážní součásti - část a (klávesnice a boční číslo)
    Pájecí/montážní součásti - část a (klávesnice a boční číslo)
    Pájecí/montážní součásti - část a (klávesnice a boční číslo)
    Pájecí/montážní součásti - část a (klávesnice a boční číslo)
    Pájecí/montážní součásti - část a (klávesnice a boční číslo)

    Nejprve připojíme číslo strany. Pomocí malého tampónu lepidla vložte číslo strany na místo.

    Dále sestavíme klávesnici

    1. Budete muset uříznout 7 kusů splétaného drátu - každý o délce 10 až 12 palců. Ty budou připojeny k pinům 0-6 kapacitního dotykového senzoru. Doporučuji použít různé barvy (a zapište si mapování barev/pinů, protože tyto informace budete potřebovat později). Použil jsem následující barevnou kombinaci:

      • Žlutá - kolík 0/tlačítko 1
      • Šedá - kolík 1/tlačítko 2
      • Červená - kolík 2 /tlačítko 3
      • Modrá - Pin 3 // Tlačítko 4
      • Zelená - Pin 4 // Tlačítko 5
      • Bílá - Pin 5 // Tlačítko 6
      • Černá - Pin 6 // Tlačítko 7
    2. Odizolujte 1/2 palce z konce každého drátu.
    3. Odřízněte 7 kusů vodivé pásky (každý asi 1/2 palce na šířku) a připájejte dráty k měděné straně pásky.
    4. Odstraňte lepicí podložku a přilepte je ke spodní části klíčů. Možná budete muset oříznout část měděné pásky.

    Poznámka: Klíče lze lepit buď zespodu (tak, aby byly v jedné rovině s vrcholem), nebo lepit shora (aby „plavaly“pár mm shora). Rozhodl jsem se přilepit ten svůj shora.

    Jakmile dokončíte všech 7, použijte malou kapku lepidla a připevněte klíče na klávesnici. Zdá se mi jednodušší:

    • Drát nejprve „hadem“protáhněte klíčovým otvorem.
    • Poté na hřeben/okraj klíče naneste malou kapku lepidla
    • Rychle vložte klíč na místo.

    Poznámka: Krazy Glue funguje nejlépe zde; možná budete chtít použít rukavice k omezení nehod a pravděpodobnosti podráždění pokožky.

    Krok 3: Pájecí/montážní součásti - část B (perová křídla a senzory)

    Pájecí/montážní součásti - část B (perová křídla a senzory)
    Pájecí/montážní součásti - část B (perová křídla a senzory)
    Pájecí/montážní součásti - část B (perová křídla a senzory)
    Pájecí/montážní součásti - část B (perová křídla a senzory)
    Pájecí/montážní součásti - část B (perová křídla a senzory)
    Pájecí/montážní součásti - část B (perová křídla a senzory)

    Dalším krokem je příprava a montáž hardwarových komponent. V konečném důsledku to znamená pájení kolíků a vodičů záhlaví pro pozdější použití. Tato příručka předpokládá, že vám pájení vyhovuje; pokud ne, podívejte se na tento „Průvodce vynikajícím pájením“od společnosti Adafruit.

    Nejprve připravíme materiály. K tomuto kroku budete potřebovat:

    • TFT 3.5 Featherwing
    • Peří ESP32
    • INA219 Featherwing
    • Tripler Featherwing
    • Kapacitní dotykový senzor MPR121
    • Senzor BME680
    • Kolíky záhlaví přímého a pravého úhlu
    • Pevný a spletený drát
    • Pájecí nástroje a pomocné ruce
    • Diagonální řezačky drátu a odizolovače drátu
    • Posuvná měřítka

    Poznámka: Doporučuji, abyste si nejprve přečetli tento krok a odstřihli všechny vodiče a záhlaví, než začnete pájet. Tímto způsobem nebudete muset přestat měřit/řezat.

    Připravte si TFT 3.5 Featherwing

    TFT je připraven k použití ihned po vybalení s jediným nastavením. Budete muset pájet vodič mezi „lite“podložkou a pinovou pájecí podložkou. Náš kód používá ESP32 Pin 21 k ovládání TFT lite. Uspořádejte TFT „dlouhou“cestou s resetovacím tlačítkem ve spodní části. Kolík 21 bude kolíkem vlevo dole.

    Odřízněte 40 mm kus splétaného drátu. Odizolujte konce tak, aby na každém konci bylo několik milimetrů drátu. Pomocí páječky pečlivě připájejte oba kolíky.

    Poznámka: potřebujete jen asi 35 mm na délku … takže můžete svůj kabel zkrátit podle potřeby. Také jsem zjistil, že přidání pájky k podložce, poté k drátu a pájení drátu k podložce je nejjednodušší přístup. Nakonec - tyto pady jsou malé … pokud vám to není příjemné, tento krok můžete kdykoli přeskočit: slouží pouze k vypnutí TFT pomocí klávesnice.

    Připravte si ESP32 Feather

    K ESP32 budete muset připájet standardní kolíkové zástrčky. Váš ESP32 by měl být dodáván se záhlavími, i když je možná budete muset oříznout, abyste dosáhli správné délky (16 pinů na dlouhé straně; 12 pinů na krátké straně). Čepy záhlaví jsou vyrobeny tak, aby „odtrhaly“, takže můžete pomocí diagonálních řezaček připnout záhlaví na správnou délku. Adafruit má opět skvělý návod, jak na to, takže se podívejte, jestli potřebujete vedení.

    VOLITELNÉ - Připravte INA219 Featherwing

    Nejprve připájejte samčí hlavičky k pernatému křídlu (podle stejných pokynů, jaké byly použity pro ESP32). Dále ustřihněte čtyři 20 mm délky splétaného drátu. Udělal bych 2 ČERNÉ a ostatní jinou barvu. Pro výběr barev jsem použil ŠEDOU a MODROU.

    Odizolujte konce drátu tak, aby na každém konci byly odhaleny 3-4 mm měděného drátu. Každý z drátu pájíte po jednom, jak je uvedeno níže:

    • ŠEDÁ -> V+ (plus)
    • MODRÁ -> V- (minus)
    • ČERNÁ -> GND (zem)
    • ČERNÁ -> GND (zem)

    V tuto chvíli nechte ostatní konce vodičů; nakonec je připájíme k zástrčkám DC 2.1.

    Připojte Piezo bzučák

    INA Featherwing přichází s malou oblastí prototypů; použijeme to k připojení našeho piezo. Piezo dává našemu projektu možnost pípnutí a zvukových upozornění, alarmů atd.

    Piezo se připojuje k ESP32 PIN 13; to odpovídá kolíku vedle USB kolíku na perovém křídle (šipky viz obrázek). Druhý piezoelektrický kolík se připojuje k zemi. Pieze kolíky jsou dostatečně dlouhé, aby je mohly pájet přímo k pernatému křídlu … stačí je ohnout do tvaru „muže s lukem“(viz obrázek). Jakmile máte kolíky na svém místě, pomocí pomocných rukou (nebo pásky) přidržte piezo na místě a pájejte ze spodní strany perového křídla.

    Poznámka - Pokud INA219 nepoužíváte, budete muset pájet piezo přímo na desku Featherwing.

    Připravte si Tripler Featherwing

    Peří nám ušetří spoustu pájení; pojme 3 peří/perová křídla … takže ho použijeme k elektrickému propojení mezi TFT, ESP32, INA219 (stejně jako piezo a pin TFT Lite).

    Aby byla připojení správná, budeme muset pájet dva páry stohovacích hlaviček a jeden pár standardních samčích hlaviček.

    • Pravidelné mužské hlavičky budou pokračovat na „horním“místě, ale budou připájeny ke spodní straně Tripleru.
    • Dvě stohovací hlavičky budou pájeny v místech 2 a 3 na horní straně Tripleru.

    To je trochu matoucí, takže se podívejte na obrázky, abyste pochopili, kde jsou jednotlivé záhlaví umístěny. Také kombinace PCB svěráku a pomocných rukou může výrazně pomoci při pájení součástek.

    Připravte si snímač BME 680 a kapacitní dotykový snímač MPR121

    Poslední dva senzory jsou nejobtížnějším připojením. Před dokončením montáže musíme na odlamovací desky připevnit kolíky záhlaví.

    Senzor BME je připevněn pod úhlem 90 stupňů, abych mohl senzor zarovnat s otvorem v pouzdře (aby senzor mohl zachytit teplotu, plyn, vlhkost). K otvorům budete muset připájet kolíky s pravým úhlem. Podívejte se na obrázky, abyste se ujistili, že je zarovnáte správně.

    Kapacitní dotykový senzor je přímočarý - stačí připájet kolíkové kolíkové konektory, jak je zde uvedeno. Poznámka: NESMÍTE pájet piny na kapacitní dotykové piny (0 - 11).

    Připojte senzory BME 680 a MPR121 k trojité desce

    Oba senzory komunikují přes I2C … což znamená, že potřebujeme pouze 4 spojení mezi vylamovacími deskami a Featherwing. Pro jednoduchost pájím všechna spojení mezi deskami.

    BME 680

    U tohoto senzoru používám pomocné ruce a svěrák na desky plošných spojů, abych držel obě součásti na svém místě (viz obrázek výše). Senzor BME680 by měl být umístěn na konci pernatého křídla. Umístění potvrďte na výše uvedených obrázcích.

    Proces pájení spojů je únavný, jděte tedy pomalu. Pro připojení používám drát s plným jádrem:

      • ČERNÁ - GND
      • ČERVENÁ - VIN
      • ŽLUTÝ - SCL (kolík SCK na senzoru do
      • ORANŽOVÁ - SDA (kolík SDA na senzoru)

    Poznámka: Piny SCL a SDA jsou potřebné pro oba senzory, takže může být snazší použít pin SCL nebo SDA na jiné části Featherwing.

    MPR121

    Pomocné ruce také pomáhají při pájení tohoto senzoru na místě (funguje také páska). Kód pro komunikaci s ESP32 používal I2C, takže budete připojovat piny SCA a SDA.

    Krok 4: Pájení/sestavení součástí - část C (klávesnice s kapacitním snímačem a Feathewing v pouzdře)

    Pájecí/montážní součásti - část C (klávesnice s kapacitním snímačem a Feathewing v pouzdře)
    Pájecí/montážní součásti - část C (klávesnice s kapacitním snímačem a Feathewing v pouzdře)
    Pájecí/montážní součásti - část C (klávesnice s kapacitním snímačem a Feathewing v pouzdře)
    Pájecí/montážní součásti - část C (klávesnice s kapacitním snímačem a Feathewing v pouzdře)
    Pájecí/montážní součásti - část C (klávesnice s kapacitním senzorem a Feathewing v pouzdře)
    Pájecí/montážní součásti - část C (klávesnice s kapacitním senzorem a Feathewing v pouzdře)

    V tomto kroku připájíte vodiče z klávesnice k kapacitnímu dotykovému senzoru. Použijte stejné mapování barev jako dříve. Pokud jste se řídili mým barevným schématem, pájíte barevné dráty následujícím způsobem:

    • Žlutá - kolík 0/tlačítko 1
    • Šedá - kolík 1/tlačítko 2
    • Červená - kolík 2 /tlačítko 3
    • Modrá - kolík 3 /tlačítko 4
    • Zelená - kolík 4/tlačítko 5
    • Bílá - kolík 5/tlačítko 6
    • Černá - kolík 6/tlačítko 7

    Jakmile je pájení hotové, držte dráty na místě pomocí twisty-tie.

    Dále přišroubujte obrazovku TFT k dílu „Přední“. Použijete šrouby M3 (celkem čtyři). Jakmile je TFT na místě, přišroubujte „přední“díl k pouzdru. Opět použijete šrouby M3 (dva).

    Poté připojte Featherwing Tripler se všemi zapojenými komponentami k TFT.

    Poznámka - Pokud plánujete použít baterii, nezapomeňte ji před vložením TFT zapojit do portu ESP32 -JST. Pomocí pásky připevněte baterii k vnitřní spodní části pouzdra.

    Krok 5: VOLITELNÉ - Pájecí/montážní součásti - část D (peří INA219)

    VOLITELNÉ - Pájecí/montážní součásti - Část D (INA219 Feather)
    VOLITELNÉ - Pájecí/montážní součásti - Část D (INA219 Feather)
    VOLITELNÉ - Pájecí/montážní součásti - Část D (INA219 Feather)
    VOLITELNÉ - Pájecí/montážní součásti - Část D (INA219 Feather)
    VOLITELNÉ - Pájecí/montážní součásti - Část D (INA219 Feather)
    VOLITELNÉ - Pájecí/montážní součásti - Část D (INA219 Feather)
    VOLITELNÉ - Pájecí/montážní součásti - Část D (peří INA219)
    VOLITELNÉ - Pájecí/montážní součásti - Část D (peří INA219)

    Pokud používáte senzor INA219, připojte vodiče k DC konektorům.

    1. Zasuňte DC konektory do zadního krytu a našroubujte je na místo.
    2. Pro připojení vodičů INA219 použijte páječku.

      • Černé vodiče by měly jít do UZEMNĚNÍ pro každou DC zástrčku.
      • Šedý vodič by měl jít do konektoru INPUT DC
      • Modrý vodič by měl jít do VÝSTUPNÍ zástrčky.

    Krok 6: Zašroubujte zadní kryt a zapojte USB

    Posledním krokem při montáži hardwaru je přišroubování zadního krytu na místo - pomocí šroubů M2 (4). Odtud připojte kabel USB, připojte jej k počítači a pokračujte kroky softwaru!

    Krok 7: Připravte prostředí AWS

    Připravte prostředí AWS
    Připravte prostředí AWS

    Jak jsem uvedl v úvodu, předpoklad řešení je následující:

    1. Terminál poháněný ESP32 využívá ke komunikaci s cloudem AWS připojení MQTT (přes Wifi).
    2. Cloud AWS provádí většinu zpracování a slouží jako přenos mezi monitorem a požadovanými službami.

    V tomto kroku musíme udělat několik věcí:

    Pokud jste tak dosud neučinili, musíte nejprve nastavit prostředí AWS. Tento pokyn předpokládá, že již máte účet AWS nastaven, takže pokyny k nastavení cloudového účtu nejsou zahrnuty. Jak již bylo řečeno, kroky jsou přímočaré a najdete je zde.

    Jakmile tento krok překonáte, musíte vytvořit několik služeb, takže se přihlaste do konzoly AWS.

    Vytvořte věc a stáhněte si klíče

    AWS IoT Core usnadňuje komunikaci mezi cloudem AWS a displejem. K podpoře komunikace budete muset vytvořit „věc“a stáhnout certifikáty.

    [Poznámka: většina těchto pokynů byla převzata z příručky, kterou napsal Moheeb Zara, evangelista AWS]

    1. Otevřete konzolu AWS a vyberte AWS IoT Core.
    2. V konzole AWS IoT vyberte Zaregistrovat novou věc, Vytvořit jednu věc.
    3. Pojmenujte novou věc „starTrekESP32“. Zbývající pole ponechte nastavená na výchozí hodnoty. Zvolte Další.
    4. Zvolte Vytvořit certifikát. K připojení ESP32 je nutné pouze stažení certifikátu, soukromého klíče a stahování Amazon Root CA 1. Stáhněte si je a uložte na bezpečném místě, protože se používají při programování zařízení ESP32.
    5. Zvolte Aktivovat, Připojit zásadu.
    6. Přeskočte přidání zásady a zvolte Zaregistrovat věc.
    7. V postranní nabídce konzoly AWS IoT zvolte Zabezpečit, Zásady, Vytvořit zásadu.
    8. Pojmenujte zásadu AllowEverything. Vyberte kartu Upřesnit.
    9. Vložte do následující šablony zásad.
    10. {{"Verze": "2012-10-17", "Prohlášení": [{"Efekt": "Povolit", "Akce": "iot:*", "Zdroj": "*"}]}}
    11. Zvolte Vytvořit. (Poznámka: Toto je doporučeno pouze pro začátek. Až vám bude všechno fungovat, vraťte se prosím a změňte to na něco více omezujícího.)
    12. V konzole AWS IoT vyberte Zabezpečené, Certifikace.
    13. Vyberte ten, který byl vytvořen pro vaše zařízení, a vyberte Akce, Připojit zásady.
    14. Zvolte AllowEverything, Attach.
    15. Než odejdete, klikněte na „Nastavení“(v nabídce vlevo). Zobrazí se váš „vlastní koncový bod“; uložte to do textového souboru … budete to potřebovat při konfiguraci ESP32.

    Vytvořte prázdný soubor Lambda

    Lambda je forma bezserverového výpočtu, takže se zde nemusíme starat o žádný hardware. Nakonec zde umístíme náš aktualizovaný kód (což uděláme v několika krocích). Prozatím chceme pouze vytvořit zástupný symbol, takže …

    1. Přihlaste se zpět do konzoly AWS (pokud jste se odhlásili) a klikněte na Lambda.
    2. Klikněte na tlačítko „Vytvořit funkci“.
    3. Na další stránce zadejte základní název, například starTrekDisplay
    4. Vyberte Node.js 12. X
    5. Pod oprávněními:

      • Pokud se v Lambdě orientujete a jste s ním obeznámeni, můžete si vybrat jakoukoli možnost, která má smysl. Budete potřebovat oprávnění pro CloudWatch, IotCore, S3 (čtení a zápis).
      • Pokud si nejste jisti oprávněními, vyberte „Vytvořit novou roli se základními oprávněními Lambda“. Zapište si název role. Později oprávnění upravíme.
    6. Klikněte na Vytvořit funkci.
    7. Po minutě vstoupíte na novou obrazovku s úryvkem kódu „ahoj svět“. Přejděte dolů do části Základní nastavení a klikněte na „Upravit“
    8. Změňte časový limit z 3 sekund na 2 minuty a 0 sekund. Poznámka: váš kód by nikdy neměl běžet déle než 5–10 sekund… pro počáteční ověření u společnosti Microsoft (pro funkce kalendáře) však potřebujeme delší časový limit. Jakmile se autentizujete, můžete to změnit na 20 sekund.
    9. Stiskněte uložit.

    Vytvořte pravidlo Iot

    1. Zůstaňte v konzole Lambda a přejděte nahoru. Vyberte „Přidat spoušť“.
    2. Vyberte AWS IoT. Poté vyberte „Vlastní pravidlo“.
    3. Vyberte „Vytvořit nové pravidlo“.

      • Název pravidla: Připojení ESP
      • Prohlášení o pravidle: „VYBRAT * Z 'starTrekDisplay/pub'
    4. Klikněte na „Přidat“

    Vytvořte vědro a složku S3

    1. Přejděte do konzoly AWS a vyberte S3.
    2. K ukládání ověřovacích souborů budete potřebovat kbelík a složku. Tato složka by měla být soukromá. Doporučuji použít jakýkoli kbelík, který již máte, a pojmenujte vytvořenou složku s názvem „starTrekDisplay“. Poznámka - pokud kbelík nemáte, vytvořte si jej podle zde uvedených pokynů.

    Aktualizovat oprávnění - Pokud jste Lambdě nechali vytvořit roli pro vás, budete muset tento krok dodržet

    1. Přihlaste se do konzoly AWS a vyberte IAM
    2. Klikněte na ROLE a poté vyberte název role, který jste vytvořili dříve.
    3. Klikněte na připojit zásady a poté vyberte následující zásady:

      • AWSIoTFullAccess
      • AmazonSNSFullAccess
      • CloudWatchFullAccess
      • AmazonS3FullAccess

    Krok 8: Stažení softwarových klíčů a nastavení služeb třetích stran

    Stáhněte si softwarové klíče a nastavte služby třetích stran
    Stáhněte si softwarové klíče a nastavte služby třetích stran

    V projektu používám následující služby třetích stran:

    1. Worldtime API - na čas
    2. Národní meteorologická služba API - pro počasí
    3. Microsoft Graph API pro přístup do mého kalendáře
    4. Google Fitness API pro přístup k informacím o kondici

    Abyste mohli využívat stejné služby, budete muset nastavit účty a stahovat klíče

    Worldtime API - na čas

    Toto rozhraní API nevyžaduje klíč, takže k tomu, aby to fungovalo, není potřeba žádná akce.

    Národní meteorologická služba API - pro počasí

    National Weather Service API je zdarma a není vyžadován žádný klíč API. Vyžadují však, abyste v každém požadavku (jako součást souboru záhlaví) předali kontaktní informace (ve formě e -mailu). V dalším kroku ke kódu přidáte kontaktní informace.

    VOLITELNÉ - Microsoft Graph API a Google Fitness API

    Toto je nejsložitější část nastavení kódu. Naše zařízení nemá plnohodnotnou klávesnici … proto pro přístup do našeho kalendáře používáme něco, co se nazývá OAUTH pro omezená zařízení. Abyste mohli kód používat OAUTH pro omezená zařízení, musíte bohužel vytvořit „aplikaci“Azure a aplikaci Google.

    Pokyny pro vytvoření aplikace jsou zde pro Microsoft a zde pro Google. Zde je několik věcí, které byste měli vědět:

    • Budete si muset vytvořit cloudový účet Azure a Google. Je to zdarma a nic vám nebude účtováno
    • Microsoft:

      • Budete dotázáni na konkrétní uživatele, kteří mohou aplikaci používat. Doporučuji vybrat „Účty v libovolném organizačním adresáři a osobní účty Microsoft“. To vám umožní používat osobní účty Microsoft a firemní účty (ve většině případů).
      • Budete chtít vybrat aplikace „Mobilní a stolní“, nemusíte však vyplňovat všechny informace (protože se jedná o osobní aplikaci). To znamená, že nemůžete svou aplikaci zpřístupnit světu…. ale to je v tomto případě v pořádku
      • Jakmile je aplikace nastavena, budete muset vybrat potřebná oprávnění. Požádal jsem o oprávnění související s profily a kalendáři (úplný seznam oprávnění najdete na obrázku v galerii). Budete muset vybrat stejnou sadu. Pokud přidáte další oprávnění, budete v dalším kroku muset příslušně změnit rozsah.

    Krok 9: Upravte a nahrajte kód AWS

    Tento návod předpokládá, že jste obeznámeni s vývojem Node.js a Lambda. Stáhněte si propojený soubor a proveďte úpravy k aktualizaci:

    • Informace o aplikaci a klientovi Microsoft
    • Klíč Google
    • E -mailová adresa pro sledování národní meteorologické služby
    • Název vědra S3
    • Název složky S3
    • AWS Endpoint

    Budete také muset stáhnout následující knihovny uzlů:

    1. aws-sdk
    2. momentové časové pásmo
    3. akcenty

    Jakmile jsou tyto změny provedeny, nahrajte kód do zástupného symbolu lambda, který jste vytvořili dříve.

    Krok 10: Připravte si Arduino IDE a stáhněte si knihovny

    Tato příručka také předpokládá, že znáte Arduino. Budete muset zajistit, aby vaše IDE bylo nastaveno pro práci s Adafruit ESP32. Pokud potřebujete pomoc, postupujte podle zde uvedených pokynů.

    Jakmile to bude hotové, stáhněte si následující knihovny:

    • Adafruit_GFX (od správce knihovny)
    • Adafruit_HX8357 (od správce knihovny)
    • TFT_eSPI (od správce knihovny)
    • TFT_eFEX (https://github.com/Bodmer/TFT_eFEX)
    • PubSubClient (od správce knihovny)
    • ArduinoJson (od správce knihovny)
    • Adafruit_STMPE610 (od správce knihovny)
    • Adafruit_MPR121 (od správce knihovny)
    • Adafruit_INA219 (od správce knihovny)
    • Adafruit_Sensor (od správce knihovny)
    • Adafruit_BME680 (od správce knihovny)
    • Tone32 (https://github.com/lbernstone/Tone)

    Dále budeme muset upravit několik knihoven:

    1. Otevřete složku PubSubClient (ve složce Arduino/Library) a otevřete „PubSubClient.h“. Najděte hodnotu pro MQTT_MAX_PACKET_SIZE a změňte ji na 2000.
    2. Dále otevřete složku TFT_eSPI a otevřete soubor "User_Setup_Select.h". Okomentujte všechny řádky „includes users_setup…“a přidejte tento řádek:

    #zahrnout

    Poté si stáhněte propojený soubor Custom_Tricorder.zip a rozbalte soubor „.h“do umístění „TFT_eSPI / User_Setups“ve složce knihoven Arduino. Já

    Nyní můžeme přejít k aktualizaci kódu Arduino

    Krok 11: Aktualizujte a nainstalujte kód Arduino a zapojte se

    Aktualizujte a nainstalujte kód Arduino a zapojte se!
    Aktualizujte a nainstalujte kód Arduino a zapojte se!

    Arduino kód

    Stáhněte a rozbalte propojený soubor pro kód Arduino. Přejděte na kartu secrets.h. Budete muset aktualizovat následující:

    • WIFI_SSID = aktualizace pomocí wifi SSID
    • WIFI_PASSWORD = aktualizace pomocí hesla wifi
    • TIMEZONE = aktualizace pomocí vašeho časového pásma z tohoto seznamu
    • LAT (k vyhledání zeměpisné šířky a délky můžete použít službu jako „https://www.latlong.net“
    • LNG
    • AWS_IOT_ENDPOINT = měli jste to uložit dříve. Mělo by to vypadat jako „dx68asda7sd.iot.us-east1-amazonaws.com“
    • AWS_CERT_CA
    • AWS_CERT_CRT
    • AWS_CERT_PRIVATE

    Rovněž si stáhnete certifikáty z předchozího kroku. Poté otevřete v editoru poznámek (např. Poznámkový blok) a vložte text mezi „R“EOF ('a') EOF ; '. Nezapomeňte uvést „----- ZAČÁTEK CERTIFIKÁT -----“nebo „----- ZAČÍT SOUKROMÝ KLÍČ RSA -----“.

    Soubory obrázků

    ESP32 je dodáván s malým souborovým systémem. Tento souborový systém používáme k ukládání obrázků pro náš program. Budete muset nainstalovat nástroj, který vám umožní nahrávat soubory.

    1. Nejprve navštivte podrobný tutoriál na Random Nerd Tutorials.
    2. Jakmile to bude fungovat, můžete nahrát soubory do datové složky (také součástí souboru zip).

    Zapojte se

    Nahrajte konečný kód Arduino a máte hotovo!

    Poznámka - Název Star Trek a obrázky Star Trek jsou ve vlastnictví CBS/Paramount. Pokud jde o cosplay a fanouškovskou fikci, mají poměrně laxní zásady - pokud máte dotazy, přečtěte si je zde.

    Fandom Contest
    Fandom Contest
    Fandom Contest
    Fandom Contest

    První cena v soutěži Fandom

    Doporučuje: