Kazalo:

SHIOT: 6 korakov
SHIOT: 6 korakov

Video: SHIOT: 6 korakov

Video: SHIOT: 6 korakov
Video: Tugan Sokhiev Conducts the Vienna Philharmonic | Rimsky-Korsakov and Tchaikovsky 2024, November
Anonim
SHIOT
SHIOT

Este projeto foi desenvolvido for um system of iluminação via Dweet, and the foi useado of hardware Dragonborad 410C com uma verão linux linaro instalado.

E para o desenvolvimento do aplicativo para or smartphone fori useado o ionic, e IDE Visual studio Code.

1. korak: 1. korak: Materiais Uitilizados

Korak: Materiais Uitilizados
Korak: Materiais Uitilizados
Korak: Materiais Uitilizados
Korak: Materiais Uitilizados
Korak: Materiais Uitilizados
Korak: Materiais Uitilizados
Korak: Materiais Uitilizados
Korak: Materiais Uitilizados

1 x Dragonboard 410C

1 x povezovalnik Mezzanine

1 x modularna LED

1x modularna temperatura

1 x modularno luminosidna LDR

1x modularni senzor na dotik

2 x modulo rele

1x teclado usb

1x USB miška

1 x monitor Hdmi

conexão com internet

upor 1k ohmov za prilagoditev LED

2. korak: 2. korak: Montagem

2. korak: Montagem
2. korak: Montagem
2. korak: Montagem
2. korak: Montagem
2. korak: Montagem
2. korak: Montagem

a) Plugue o Linker Mezzanine na placa da Dragonboard 410C

b) Priključite o po modulu temperature brez priključka do ADC2 v medetaži

c) Priključek o modulo senzorja za luminosidado brez priključka do ADC1 v medetaži

d) Priključite o po modulu senzorja, da ne povežete priključka do D1 z medetažo

e) Plugue o modulo de rele no conector do D2 da medetaža

f) Plugue o modulo Led no conector do D3 da medetaža

g) Plugue o modulo de rele no conector do D4 da medetaža

h) Vključite monitor ali priključek brez priključka HDMI na ploščo Dragonboard 410C

i) Priključite USB priključek na ploščo Dragonboard 410C

j) Priključite USB na miško na plošči Dragonboard 410C

l) Plugue a fonte de alimentação na placa Dragonboard 410C

OBS 1: Devido ali modularni LED terpenski upor z upornostjo 82 Ohmov, moti na medij do senzorja temperature, kar povzroči negativne učinke, ki so potrebni za delovanje, senzor pa potrebuje uporabo upora za upor, ki vsebuje 1 Ohm, ki ustreza sliki.

OBS 2: Devido ao kit da mezzanine possuir apenas um modulo rele, foi needário adaptador um modulo rele generico, izkoristiti brez konektorja D4 v medetaži, interligando cabo VCC no VCC, GND ne GND, e o de sinal no D_G da medetaža

3. korak: 3. korak: Codigo Python

#importação das bibliotecas spidev e time

uvoz spidev

čas uvoza

#importação parcial das bibliotecas

iz libsoc import gpio

z gpio_96boards uvozite GPIO

iz dweet uvoz Dweet

# definira das porta analogica, o senzorju za luminosidade in de temperaturo 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')

#konfiguracije za GPIOS se VSTOPAJO

nožice = ((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

system_status = 1

dweet = sladko ()

#konfiguracije za bloco de comando LED e RELE

def readDigital (gpio):

digitalno = [0, 0]

digitalno [0] = gpio.digital_read (LED)

digitalno [1] = gpio.digital_read (RELE)

digitalno vrnitev

def writeDigital (gpio, digitalno):

pisati = digitalno

gpio.digital_write (LED, napišite [0])

gpio.digital_write (RELE, napišite [1])

digitalno vrnitev

#konfiguracija do bloka za dotik, za sistem ali vaš sistem

def detectaButton (gpio):

globalni sistemski_status

status = gpio.digital_read (BUTTON)

če je status == 1:

če je sistemski_status == 0:

system_status = 1

sis_status = "Ligado"

print ("Estado do Sistema %s" %sis_status)

drugače:

system_status = 0

sis_status = "Desligado"

print ("Estado do Sistema %s" %sis_status)

dweet.dweet_by_name (name = "shiot", podatki = {"sistema": sis_status})

return system_status

#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] & 0xff)

adc_temp = (adcout *5,0/1023-0,5) *100

#print ("Temperatura: %2.1f" %adc_temp)

vrni adc_temp

#configuração do bloco para leitura da luminosidade.

def 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] & 0xff)

vrniti adcout

#execução dos blocos de comandos

če _name _ == '_ main_':

z GPIO (zatiči) kot gpio:

medtem ko je res:

digitalno = [0, 0]

če je detectaButton (gpio) == 1:

lumi = beriLumi (gpio)

# verificação da luminosidade para acionamento do rele do konektor D4

če je lumi <400:

gpio.digital_write (RELE2, GPIO. HIGH)

luz_status = "Ligado"

drugače:

gpio.digital_write (RELE2, GPIO. LOW)

luz_status = "Apagado"

#verificação no dweet para acionamento do led e/ou rele

resposta = dweet.latest_dweet (name = "shiot")

digitalno [0] = odziv ['z'] [0] ['vsebina'] ['led']

digitalno [1] = odgovor ['z'] [0] ['vsebina'] ['rele']

writeDigital (gpio, digitalno)

temp = readTemp (gpio)

digital = readDigital (gpio)

#imprime os valores de luminosidade, temperatura

natisni "Temp: %2.1f / nlumi: %d / nled: %d / nrele: %d / n" %(temp, lumi, digitalno [0], digitalno [1])

print ("Luz Externa: %s" %luz_status)

sis_status = "Ligado"

#envio de dados para o dweet

dweet.dweet_by_name (name = "shiot", data = {"led": digitalno [0], "rele": digitalno [1], "Temperatura": temp, "Luminosidade": lumi, "Luz_externa": luz_status, " sistem ": sis_status})

#tempo para cada leitura

time.sleep (5)

#devido a metodologia do dweet, deve ser configurado o dweet antes de executar o programu brez pythona.

4. korak: 4. korak: sladko

4. korak: sladko
4. korak: sladko
4. korak: sladko
4. korak: sladko
4. korak: sladko
4. korak: sladko

Em dweet.io, clique em PLAY.

Em dweets: Ustvarite ali preberite dweets v kratkoročnem predpomnilniku, na aba:

POST/dweet/tiho/za/{thing}

- no parametro thing escreva shiot, conforme program feito no python.

- em vsebina escreva:

Que são os para parametros enviados do dweet para a Dragonboard410C, sendo 0 para desligado e 1 para ligado.

e clique no botão PREIZKUSITE.

Izvedite program brez terminala za Dragonboard 410C (este deve estar conectado em uma rede com internet):

sudo python smart.py

Na aba GET:

GET/get/dweets/for/{thing}

- no parametro thing escreva shiot, conforme program feito no python.

e clique no botão PREIZKUSITE.

Em Response Body je podobno:

5. korak: 5. korak: Koda virtualnega studia Ionic E

5. korak: Koda virtualnega studia Ionic E
5. korak: Koda virtualnega studia Ionic E

para criar testenine e os arquivos para needários do app

brez poziva de comando do windows:

ionski zagonski shiot

abra o Koda Visual Studio

para konstruira kot html paginas:

Em SRC => strani => Domov => home.html

codigo conforme arquivo homehtml.txt

Em SRC => strani => Domov => home.tscodigo conforme arquivo homets.txt

é needario gerar o dweet.ts para comunicar corretamente HTTP in dweet

na prompt de comando na testenine do projeto:

ionic generira dweet ponudnika

Em SRC => ponudniki => dweet => dweet.ts

codigo conforme arquivo dweetts.txt

importação para comunicação

Em SRC => app => app.module.ts

codigo conforme arquivo appmodulets.txt

Korak 6: Korak 6: Dokončanje

Korak 6: Dokončanje
Korak 6: Dokončanje
Korak 6: Dokončanje
Korak 6: Dokončanje

No prompt de comando da pasta do projeto:

ionski servis

Sera aberto 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 monitorramento de Temperatura, Iluminação, Luz externa, e Sistema.

več podrobnosti o funkcionamentu brez arquivo Dragon.pdf

Priporočena: