Obsah:
2025 Autor: John Day | [email protected]. Naposledy zmenené: 2025-01-13 06:58
O projekte que faremos é de uma casa inteligente. Naše základné skupiny môžu mať nasledujúcu skupinu funkcií: · Monitor monitorovania teploty a teploty.
· Zoznam monitorovaných potravín a filtrov na filtre na geladeire.
Väčšina spoločností, ktoré majú k dispozícii IoT, nie sú dostupné; predpokladáme, že máme k dispozícii nasledujúce položky:
- Všeobecné možnosti dotykového displeja, ktoré môžu obsahovať množstvo potravín: množstvo potravín a kvantitatívnych údajov;
- geladeira possui um sensor de nível em um pequeno tanque de água embutido na geladeira;
- Os cômodos têm termômetros e sensores de iluminância;
- čo je možné, že komunikácia prebieha cez wifi;
- As lâmpadas dos cômodos podem ter o brilho ajustado por dispositivo que se comunica pela rede wifi;
Požiadavky:
- Conhecimento básico em python, javascript, uso do sistema operacional, comandos básicos no shell
- Ter instalado: nodejs, python
- Bezprostredné (voliteľné): dokovacia stanica, mobilná emulátora, podpora pre Android (k dispozícii nie je žiadne Android Studio)
Obežné riešenie pre Linux bez Linuxu. Niektoré možnosti prispôsobenia sa systému Windows nie sú k dispozícii.
Krok 1: Konfigurácia O Ambiente
Konfigurácia alebo konfigurácia dvoch častí: 2 časti: servidor a mobile. O servidor serc escrito em python e o mobile em javascript oru typescript, sendo utilizado React Native para o projeto.
reactnative.dev/
Vamos inicialmente criar uma estrutura de pastas. Viac informácií o značke (viac ako jedna sekcia konkrétneho programu $ PROJECT_DIR) - zástupca zástupcu - miestne údaje o počte, ktoré uprednostňujete), vyberte si „servidor“cestovín:
$ mkdir $ PROJECT_DIR && cd $ PROJECT_DIR
$ mkdir servidor
CONFIGURANDO O AMBIENTE DE DESENVOLVIMENTO PARA O SERVIDOR
Používajú sa hlavne okolité virtuálne pytóny (venv). Caso deseje use ambiente conteinerizado, criaremos and imagem segundo or dockerfile:
$ cd $ PROJECT_DIR
$ touch dockerfile
Predstavte si dockerfile.
Caso prefira používa okolité virtuálne prostredie v pythone, ako napríklad pokyny
Väčšie množstvo údajov, ktoré sú závislé a závislé na službe, ako aj závislosti od potrieb:
$ touch requirements.txt
Predstavte si súbor requirements.txt.
Časť, ako sa rozhodnúť pre použitie okolitého prostredia, nemôže vytvoriť žiadny kontajner:
$ docker build. -t smarthouse $ docker run -it -p 3000: 3000 -v $ (pwd):/app smarthouse bash
Viac informácií o dockerfile a do docker dockere: https://docs.docker.com/engine/reference/builder/…
CONFIGURANDO O AMBIENTE DE DESENVOLVIMENTO MOBILE
Mnoho pascí a pascí konfigurácie mobilných telefónov a zariadení React Native pode ser visto no link:
Konfigurácia a konfigurácia okolitého prostredia, výber cestovného plánu a spustenie mobilného telefónu:
$ npx klient create-reagovat-natívna aplikácia
Krok 2: WebSocket
Naše hlavné otázky zahrnujú viac ako jednu webovú stránku a ďalší prehľad. Čas potrebný na to, aby ste si mohli prezerať svoje obľúbené videá alebo videá, oddeliť alguns minútos para entender como funciona o websocket através da documentação:
developer.mozilla.org/pt-BR/docs/WebSocket…
Použitá biblioteca neobsahuje žiadnych klientov a neposkytuje žiadne protokoly o protokole práce, ako aj o podrobnostiach týkajúcich sa identifikácie a identifikácie armatúr. Oddeľte tam a späť tempo ako bibliotecas využite žiadny klient a žiadny servidor:
Klient:
Servidor:
Krok 3: Skratka o servidore
Iniciatíva, ktorá by mala oficiálne začať s projektom a podporovať rozhranie, ktoré by sa malo využívať v mnohých spoločných komunikáciách s týmto serverom:
$ mkdir src
$ touch app.py src/{ovládač, socketconnection}.py
Hlavný princíp zosynchronizácie modulu synchronizácie a servisu:
Predstavte si aplikáciu app.py
Depois vamos escrever or móduloe que establishmentelece as conexões via websocket e as redirecionam para um controlador.
Pozrite si obrázok do socketconnection.py
POUŽÍVA REGULÁTOR E
Ovládač prijíma všetky moduly, ktoré zodpovedajú za zavedenie a pripojenie ako prílohu; Väčšina zodpovedajúcich odpovedí môže mať za následok zníženie počtu prijatých, odoslaných alebo prijatých odpovedí, ako je možné v prípade, že dôjde k zvýšeniu resp. zníženiu počtu odpalov.
Predstavte si súbor controller.py.
Konečné časové rozsahy bežných kasínových hier, ktoré si vyberiete z našej ponuky, z ktorých si môžete vybrať, či budete potrebovať nové alebo zmenšené ovládače. Žiadny iný systém hodnotenia (ako používať numéricos, texto ou booleanos - žiadne caso de ligar/desligar dispositivos de ambientação). Všetky možnosti, ako nakupovať, sa často prejavujú v niektorých herných funkciách, ktoré môžu prispieť k rôznym dôsledkom toho, ako sa dopúšťať negatívnych dopadov.
Predstavte si súbor usecases.py
Poznámky: Precisamos persistir os dados de alguma forma. Fica a escolha do leitor como preferere armazenar os dados to portanto, implementar as funções do src/repository.py. Žiadna projektová ponuka nemôže pracovať s trvalou databázou. Nie je možné vykonať žiadne overenie platnosti servera/databázy cestovných serverov/databázových serverov/databázových modelov/databázových modelov.
Krok 4: Testando O Servidor
Skript najvýznamnejších skriptov pripojených k serveru a poskytovateľov environmentálnych udalostí zodpovedajúcich konkrétnym požiadavkám ručného ovládania. Scenár skriptov skriptov spojených s obsluhou*.
Pozrite sa na serverclient.py
Com o arquivo criado, verifique se o container está rodando, e dentro dele execute:
$ python app.py
Fora do container, no diretório $ PROJECT_DIR/server execute:
$ python3 serverclient.py
Žiadna výzva ">" Digite os eventoscontrados no controlador seguido de ";" e então valores de identificação e/ou novos valores. Príklad:
UPDATE_FRIDGE_WATER_LEVEL; 80
UPDATE_ROOM_TEMPERATURE; 1, 22.0
UPDATE_ROOM_TEMPERATURE_SETPOINT; 1, 17.5
UPDATE_ROOM_LUMINOSITY; 100
UPDATE_ROOM_LUMINOSITY_SETPOINT; 0
TOGGLE_ROOM_TEMPERATURE; 1
TOGGLE_ROOM_LIGHT; 1
E para cada evento enviado verifique se foi persistido no banco de dados escolhido.
Poznámka: Verifique que a porta que está odoslať servido a aplicação, a porta exposta no docker run e a porta do script de teste devem ser a mesma.
Krok 5: Aplicação Mobile
Väčšina ukážkových modelov, ktoré si môžete vychutnať, prináša niekoľko skvelých mobilných aplikácií. Realizácia pôvodného dokumentu nie je možná. Konfigurácia. Príchod, ako $ PROJECT_DIR/klient a závislosť a závislosť na projekte:
$ npm i socket.io
Väčšie množstvo rôznych komponentov a funkcií ako komunikácia so serverom.
ESCREVENDO A TELA
Em App.js, rôzne escrever os komponenty v GUI.
⚠ Všimnite si, že keď použijete niečo iné, ovplyvnite tento efekt! Počet možných redukcií sady setDataReducer, setFoodReducer, setTemperatureReducer, setLightReducer and nem escritos os objetos com estados initiais INITIAL_STATE, INITIAL_FOOD_MODAL, INITIAL_TEMPERATURE_MODAL, INITIAL_
Tam sú všetky typy úložísk, ktoré môžu využívať rôzne prvky intelektuálneho rozhrania pre všetky typy kamier bez servera: saveNewFoodValue, saveNewTemperature, saveNewLuminosity, toggleTemperatureForRoom, toggleLight
Portanto, so desejar testar os elementos com dados falsos, escreva cada objeto e função dito acima.
Pozrite sa na aplikáciu App.js s hlavným grafickým rozhraním
Niektoré možnosti sa môžu používať ako nevyhnutné prvky pre spoločnú a komunikatívnu službu alebo pre množstvo komponentov GUI.
Predstavte si do App.js com código da parte lógica/operacional