Taula de continguts:
- Pas 1: Pas 1: Materials Uitilitzats
- Pas 2: Pas 2: Montagem
- Pas 3: Pas 3: Codigo Python
- Pas 4: Pas 4: Dweet
- Pas 5: Pas 5: Codi d’estudi virtual d’Ionic E
- Pas 6: Pas 6: Finalització
Vídeo: SHIOT: 6 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:16
Aquest projecte s'ha desenvolupat per a un sistema d'il·luminació mitjançant Dweet, i s'ha utilitzat amb maquinari Dragonborad 410C amb la seva versió linux linaro instal·lat.
I per al desenvolupament de l'aplicatiu per al telèfon intel·ligent utilitzat o iònic, i o IDE Visual studio Code.
Pas 1: Pas 1: Materials Uitilitzats
1 x Dragonboard 410C
1 x enllaç Mezzanine
1 x mòdul led
1 x mòdul de temperatura
1 x mòdul de lluminositat LDR
1 x sensor tàctil mòdul
2 x mòduls rele
1 x teclat usb
1 x ratolí usb
1 x monitor Hdmi
conexão com a internet
resistor de 1k Ohms per adaptação do led
Pas 2: Pas 2: Montagem
a) Plugue o Linker Mezzanine na placa da Dragonboard 410C
b) Endoll o mòdul de temperatura sense conector do ADC2 da mezzanine
c) Endoll o mòdul de sensor de lluminositat sense conector do ADC1 da mezzanine
d) Endoll o mòdul de sensor toque no conector do D1 da mezzanine
e) Plugue o modulo de rele no conector do D2 da mezzanine
f) Plugue o modulo Led no conector do D3 da mezzanine
g) Plugue o modulo de rele no conector do D4 da mezzanine
h) Endoll o monitor sense conector HDMI da placa Dragonboard 410C
i) Connector o teclado USB na placa Dragonboard 410C
j) Connector o mouse USB na placa Dragonboard 410C
l) Connecta una font d'alimentació a la placa Dragonboard 410C
OBS 1: Devido ao modulo LED ter apenas um resistor de 82 Ohms, interfere na medição do sensor de temperatura causando valores negativos cuando es accionado, sentido necessário a utilización de um resistor de pelos menos de 1k Ohms conforme figura.
OBS 2: Devido ao kit da mezzanine possuir apenas um modulo rele, foi necessari adaptador um modulo rele generico, utilizado no conector D4 da mezzanine, interligando cabo VCC no VCC, GND no GND, e o de sinal no D_G da mezzanine
Pas 3: Pas 3: Codigo Python
# importació de les biblioteques spidev e time
importar spidev
temps d'importació
# importació parcial das bibliotecas
des de libsoc import gpio
des de gpio_96boards importeu GPIO
de la importació de Dweet
# definição das porta analogica, o sensor de luminosidade e de temperatura serão definidas por endereçamento.
GPIO_CS = GPIO.gpio_id ('GPIO_CS')
# definição das portas digitais
BUTTON = GPIO.gpio_id ('GPIO_A')
RELE = GPIO.gpio_id ('GPIO_C')
LED = GPIO.gpio_id ('GPIO_E')
RELE2 = GPIO.gpio_id ('GPIO_G')
# configurações das GPIOS se IN ou OUT
pins = ((GPIO_CS, 'out'), (BUTTON, 'in'), (RELE, 'out'), (LED, 'out'), (RELE2, 'out'),)
# configurações das portas analagicas
spi = spidev. SpiDev ()
spi.open (0, 0)
spi.max_speed_hz = 10000
spi.mode = 0b00
spi.bits_per_word = 8
sistema_estat = 1
dweet = Dweet ()
# configurações do bloco de comando LED e RELE
def readDigital (gpio):
digital = [0, 0]
digital [0] = gpio.digital_read (LED)
digital [1] = gpio.digital_read (RELE)
tornar digital
def writeDigital (gpio, digital):
escriure = digital
gpio.digital_write (LED, escriptura [0])
gpio.digital_write (RELE, write [1])
tornar digital
# configuração do bloco para o touch, para o sistema o ligar o sistema
def detectaButton (gpio):
estat_estat_sistema global
status = gpio.digital_read (BOTÓ)
si l'estat == 1:
si estat_estat == 0:
sistema_estat = 1
sis_status = "Ligado"
print ("Estat del sistema% s"% sis_status)
en cas contrari:
estat_estat = 0
sis_status = "Desligado"
print ("Estat del sistema% s"% sis_status)
dweet.dweet_by_name (name = "shiot", data = {"sistema": sis_status})
torna l'estat_sistema
# configuração do bloco para leitura da temperatura
def readTemp (gpio):
gpio.digital_write (GPIO_CS, GPIO. HIGH)
time.sleep (0.0002)
gpio.digital_write (GPIO_CS, GPIO. LOW)
r = spi.xfer2 ([0x01, 0xA0, 0x00])
gpio.digital_write (GPIO_CS, GPIO. HIGH)
adcout = (r [1] << 8) & 0b1100000000
adcout = adcout | (r [2] i 0xff)
adc_temp = (adcout * 5.0 / 1023-0.5) * 100
#print ("Temperatura:% 2.1f"% adc_temp)
torna adc_temp
# configuração do bloco para leitura da luminosidade.
readLumi (gpio):
gpio.digital_write (GPIO_CS, GPIO. HIGH)
time.sleep (0.0002)
gpio.digital_write (GPIO_CS, GPIO. LOW)
r = spi.xfer2 ([0x01, 0x80, 0x00])
gpio.digital_write (GPIO_CS, GPIO. HIGH)
adcout = (r [1] << 8) & 0b1100000000
adcout = adcout | (r [2] i 0xff)
tornar adcout
# execução dos blocos de comandos
si _nom _ == '_ principal_':
amb GPIO (pins) com a gpio:
mentre que és cert:
digital = [0, 0]
si detectaButton (gpio) == 1:
lumi = readLumi (gpio)
# verificação da luminosidade para accionamento do rele do conector D4
si lumi <400:
gpio.digital_write (RELE2, GPIO. HIGH)
luz_status = "Ligado"
en cas contrari:
gpio.digital_write (RELE2, GPIO. LOW)
luz_status = "Apagado"
# verificação no dweet for accionamento do led e / ou rele
resposta = dweet.latest_dweet (name = "shiot")
digital [0] = resposta ['with'] [0] ['content'] ['led']
digital [1] = resposta ['with'] [0] ['content'] ['rele']
writeDigital (gpio, digital)
temp = readTemp (gpio)
digital = readDigital (gpio)
#imprime os valores de luminosidade, temperatura
print "Temp:% 2.1f / nlumi:% d / nled:% d / nrele:% d / n"% (temp, lumi, digital [0], digital [1])
print ("Luz Externa:% s"% luz_status)
sis_status = "Ligado"
#envio de dados para o dweet
dweet.dweet_by_name (name = "shiot", data = {"led": digital [0], "rele": digital [1], "Temperatura": temp, "Luminosidade": lumi, "Luz_externa": luz_status, " sistema ": sis_status})
#tempo para cada leitura
time.sleep (5)
#devido a metodologia do dweet, deve ser configurado o dweet abans d'executar o programa no python.
Pas 4: Pas 4: Dweet
Em dweet.io, cliqueu en PLAY.
Em dweets: Crea o llegeix dweets a la memòria cau a curt termini, ja que:
POST / dweet / quietly / for / {thing}
- no parametro thing escreva shiot, conforme programa fet no python.
- em escreva contingut:
Que são os para os parametros enviados do dweet para a Dragonboard410C, sendo 0 para desligado y 1 para ligado.
e clique no botão PROVEU-ho.
Execute o programa no terminal da Dragonboard 410C (he d'estar connectat em uma rede com internet):
sudo python smart.py
Na aba OBTÉ:
GET / get / dweets / for / {thing}
- no parametro thing escreva shiot, conforme programa fet no python.
e clique no botão PROVEU-ho.
El cos de resposta a l'empresa ha obtingut alguna cosa similar:
Pas 5: Pas 5: Codi d’estudi virtual d’Ionic E
para criar pastas e os arquivos para necessários do app
no hi ha cap comandament de Windows:
xió inicial iònic
abra o Visual Studio Code
per construir com a pàgines html:
Em SRC => pages => Home => home.html
codigo conforme arquivo homehtml.txt
Em SRC => pages => Home => home.tscodigo conforme arquivo homets.txt
és necessari gerar o dweet.ts per comunicar correctament HTTP i dweet
a prompt de comando na pasta do projectet:
el proveïdor iònic de generar ha de ser
Em SRC => proveïdors => dweet => dweet.ts
codigo conforme arquivo dweetts.txt
importació per a la comunicació
Em SRC => app => app.module.ts
codigo conforme arquivo appmodulets.txt
Pas 6: Pas 6: Finalització
No hi ha cap missatge de comandament de la pasta del projecte:
servei iònic
Sera oberto no navegador https:// localhost: 8100 /
Sendo gerado uma tela com Led que pode ser ligado ou desligado com uma "chave liga / desliga".
Sendo gerado uma tela com rele que pode ser ligado ou desligado com uma "chave liga / desliga".
E monitoramento de Temperatura, Iluminação, Luz externa, e Sistema.
més detalls del funcionament sense arxiu Dragon.pdf
Recomanat:
Disseny de jocs en Flick en 5 passos: 5 passos
Disseny de jocs en Flick en 5 passos: Flick és una manera molt senzilla de fer un joc, sobretot com un trencaclosques, una novel·la visual o un joc d’aventures
Detecció de cares a Raspberry Pi 4B en 3 passos: 3 passos
Detecció de cares a Raspberry Pi 4B en 3 passos: en aquest manual, farem la detecció de cares a Raspberry Pi 4 amb Shunya O / S mitjançant la biblioteca Shunyaface. Shunyaface és una biblioteca de reconeixement / detecció de cares. El projecte té com a objectiu aconseguir una velocitat de detecció i reconeixement més ràpida amb
Com fer un comptador de passos ?: 3 passos (amb imatges)
Com fer un comptador de passos ?: Jo solia tenir un bon rendiment en molts esports: caminar, córrer, anar en bicicleta, jugar a bàdminton, etc. M’encanta viatjar poc després. Bé, mireu el meu ventre corpulent … Bé, de totes maneres, decideixo tornar a començar a fer exercici. Quin equip he de preparar?
Mirall de vanitat de bricolatge en passos senzills (amb llums de tira LED): 4 passos
Mirall de vanitat de bricolatge en passos senzills (amb llums de tires LED): en aquest post vaig crear un mirall de vanitat de bricolatge amb l'ajut de les tires LED. És molt genial i també heu de provar-les
Arduino Halloween Edition: pantalla emergent de zombis (passos amb imatges): 6 passos
Arduino Halloween Edition: pantalla emergent de zombis (passos amb imatges): voleu espantar els vostres amics i fer soroll a Halloween? O simplement voleu fer una bona broma? Aquesta pantalla emergent de Zombies ho pot fer! En aquest instructiu us ensenyaré a fer zombis fàcilment amb Arduino. L'HC-SR0