Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
Obě strany předchozí revize Předchozí verze Následující verze | Předchozí verze | ||
2019:lora-rn2483 [2020/01/19 22:54] Radek Závorka |
2019:lora-rn2483 [2020/01/20 18:55] (aktuální) Radek Závorka |
||
---|---|---|---|
Řádek 77: | Řádek 77: | ||
TTN akceptuje dvě metody připojení, přičemž prefrerována je OTAA(**O**ver-**T**he-**A**ir-**A**ctivation), neboť si sama vyjednává šifrovací klíče a nastavení zařízení se zachová i po restartu/vypnutí. Druhá možnost je ABP (**A**ctivation **B**y **P**ersonalisation), ta se doporučuje pro testovací a demonstrační účely, neboť nevyjednává spojení, což může být v případě vytížených bran časově náročné. | TTN akceptuje dvě metody připojení, přičemž prefrerována je OTAA(**O**ver-**T**he-**A**ir-**A**ctivation), neboť si sama vyjednává šifrovací klíče a nastavení zařízení se zachová i po restartu/vypnutí. Druhá možnost je ABP (**A**ctivation **B**y **P**ersonalisation), ta se doporučuje pro testovací a demonstrační účely, neboť nevyjednává spojení, což může být v případě vytížených bran časově náročné. | ||
- | Níže přikládám screen terminálu při komunikaci s modulem po jeho nutném nastavení. Nejdříve byl zaslán příkaz ''sys get ver'', na který modul odpoví verzí s datumem systému. Dále příkazem ''mac join otaa'', byl dán příkaz pro připojení modulu do sítě. Ten odpoví ''ok'', tzn. že rozumí příkazu a vykonal ho. Odpovědí je ''denied''. Ta má však 2 významy, buď modul není v síti zaregistrován, nebo, jak tomu bylo v tomto případě, modul neobdržel od sítě odpověď. K tomuto stavu docházelo poměrně často vlivem použití nevhodné antény. Při náhledu do konzole TTN však požadavek na autorizaci od modulu přišel a odpověď byla vyslána. Na druhý pokus se však povedlo modul do sítě připojit a modul odpovídá ''accepted''. Byl tedy pomocí příkazu ''mac tx <type> <portno> <data>'' vyslán požadavek na vyslání dat. Odpovědí je ''invalid_param'', jelikož je možné vylílat pouze hexadecimální data a GG není z tohoto rozsahu. Parametr ''type'' může být ''cnf'' nebo ''uncnf'', tzn., že si můžeme vyžádat potvrzení přijetí dat serverem. Parametr ''portno'' značí číslo portu a může být z rozsahu 1 - 223. Druhým již platným pokusem jsou testovací data vyslána a potvrzena. Přihlášením do svého účtu na TTN je provedena kontrola přijetí. | + | Níže přikládám screen terminálu při komunikaci s modulem po jeho nutném nastavení. Nejdříve byl zaslán příkaz ''sys get ver'', na který modul odpoví verzí s datumem systému. Dále příkazem ''mac join otaa'', byl dán příkaz pro připojení modulu do sítě. Ten odpoví ''ok'', tzn. že rozumí příkazu a vykonal ho. Odpovědí je ''denied''. Ta má však 2 významy, buď modul není v síti zaregistrován, nebo, jak tomu bylo v tomto případě, modul neobdržel od sítě odpověď. K tomuto stavu docházelo poměrně často vlivem použití nevhodné antény. Při náhledu do konzole TTN však požadavek na autorizaci od modulu přišel a odpověď byla vyslána. Na druhý pokus se však povedlo modul do sítě připojit a modul odpovídá ''accepted''. Byl tedy pomocí příkazu ''mac tx <type> <portno> <data>'' vyslán požadavek na vyslání dat. Odpovědí je ''invalid_param'', jelikož je možné vysílat pouze hexadecimální data a GG není z tohoto rozsahu. Parametr ''type'' může být ''cnf'' nebo ''uncnf'', tzn., že si můžeme vyžádat potvrzení přijetí dat serverem. Parametr ''portno'' značí číslo portu a může být z rozsahu 1 - 223. Druhým již platným pokusem jsou testovací data vyslána a potvrzena. Přihlášením do svého účtu na TTN je provedena kontrola přijetí. |
{{:2019:term_acc.png}} | {{:2019:term_acc.png}} | ||
Řádek 86: | Řádek 86: | ||
===== Aplikace ===== | ===== Aplikace ===== | ||
- | Bylo využito programu STM32CubeMX, což je software, pomocí kterého se v grafickém rozhranní nakonfigurují jednotlivé periferie mikrokontroléru a následně je vygenerován inicializační odpovídající kód v programovacím jazyce C pro daný procesor. Pro tuto aplikaci bylo nutné pouze inicializovat rozhraní UART jako asynchronní s parametry uvedenými v tabulce výše pro modul RN2483. | + | Bylo využito programu STM32CubeMX, což je software, pomocí kterého se v grafickém rozhranní nakonfigurují jednotlivé periferie mikrokontroléru a následně je vygenerován inicializační odpovídající kód v programovacím jazyce C pro daný procesor. Pro tuto aplikaci bylo nutné inicializovat rozhraní UART jako asynchronní s parametry uvedenými v tabulce výše pro modul RN2483 a AD převodník pro měření napětí. |
Samotný kód pracuje podle následujícího blokového schématu. | Samotný kód pracuje podle následujícího blokového schématu. | ||
Řádek 106: | Řádek 106: | ||
====== Závěr ====== | ====== Závěr ====== | ||
+ | Byla demonstrována funkce modulu RN2483, který podporuje technologii LoRa. Tento modul byl zaregistrován do sítě TTN, kde v pětiminutových intervalech posílá hodnotu napájecího napětí mikroprocesoru STM32F4. Pro tento modul byla navržena jednoduchá DPS, aby ho bylo možné spojit s použitým vývojovým kitem STM32F4DISCOVERY. Během realizace projektu jsem řešil problémy s vyrobenou deskou, kdy došlo ke zkratu a zničení modulu. Následně jsem byl tedy nucen přistoupit k "nadrátování" nového modulu, jak je vidět na videu. Jako vylepšení pro pokračování projektu bych navrhoval připojení např. teplotního čidla aby bylo možné sledovat vývoj teploty v místnosti nebo venku. Dále při reálném použití by bylo vhodné vyrobit samostatný malý plošný spoj bez použití vývojového kitu, který bude napájen z baterie a může tak být umístěn téměr kamkoliv. Pro dlouhou životnost baterie by bylo vhodné aktivování sleep módu, aby bylo odebíráno co nejméně energie. | ||
---- | ---- | ||
+ | |||
+ | ====== Video ====== | ||
+ | |||
+ | [[https://www.youtube.com/watch?v=Fnwz3t4cf6o&feature=youtu.be|Video ukázka]] | ||
+ | ---- | ||
+ | |||
+ | ==== Zdrojový kód aplikace==== | ||
+ | |||
+ | {{:2019:xzavor03_mpoa_projekt.zip|Zdrojový soubor projektu}} | ||
+ | ---- | ||
+ | |||