Taula de continguts:

SHIOT: 6 passos
SHIOT: 6 passos

Vídeo: SHIOT: 6 passos

Vídeo: SHIOT: 6 passos
Vídeo: Men of Honor (3/3) Movie CLIP - 12 Steps (2000) HD 2024, De novembre
Anonim
FUSIL
FUSIL

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

Pas 1: materials relacionats
Pas 1: materials relacionats
Pas 1: materials relacionats
Pas 1: materials relacionats
Pas 1: materials relacionats
Pas 1: materials relacionats
Pas 1: materials relacionats
Pas 1: materials relacionats

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

Pas 2: Montagem
Pas 2: Montagem
Pas 2: Montagem
Pas 2: Montagem
Pas 2: Montagem
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

Pas 4: Drew
Pas 4: Drew
Pas 4: Drew
Pas 4: Drew
Pas 4: Drew
Pas 4: Drew

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

Pas 5: Codi Ionic E Virtual Studio
Pas 5: Codi Ionic E Virtual Studio

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ó

Pas 6: Finalització
Pas 6: Finalització
Pas 6: Finalització
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: