Sisällysluettelo:

SHIOT: 6 vaihetta
SHIOT: 6 vaihetta

Video: SHIOT: 6 vaihetta

Video: SHIOT: 6 vaihetta
Video: Try to open these locks | From 1 to 10 level 3d printed puzzles 2024, Marraskuu
Anonim
SHIOT
SHIOT

Este projeto foi desenvolvido para um system de iluminação via Dweet, and foi utiladoado or hardware Dragonborad 410C com to verão linux linaro instalado.

Voit käyttää sovellusta älypuhelimen käyttöiän tai ionisen, IDE Visual Studio Code -sovelluksen avulla.

Vaihe 1: Vaihe 1: Materiais Uitilizados

Vaihe 1: Materiais Uitilizados
Vaihe 1: Materiais Uitilizados
Vaihe 1: Materiais Uitilizados
Vaihe 1: Materiais Uitilizados
Vaihe 1: Materiais Uitilizados
Vaihe 1: Materiais Uitilizados
Vaihe 1: Materiais Uitilizados
Vaihe 1: Materiais Uitilizados

1 x Dragonboard 410C

1 x linkki Mezzanine

1 x modulo -led

1 x lämpötilamoduuli

1 x modulo de luminosidade LDR

1 x modulo -kosketusanturi

2 x moduulirele

1 x teclado usb

1 x hiiri usb

1 x hdmi -näyttö

yhdistettynä Internetiin

LED -vastus 1k ohmeja

Vaihe 2: Vaihe 2: Asennus

Vaihe 2: Montagem
Vaihe 2: Montagem
Vaihe 2: Montagem
Vaihe 2: Montagem
Vaihe 2: Montagem
Vaihe 2: Montagem

a) Plugue tai Linker Mezzanine ja Dragonboard 410C

b) Plugue tai modulo de temperatura no conector do ADC2 da mezzanine

c) Pistoke tai valomoduulin valoanturi ilman liitintä ADC1 -mezzanine

d) Pistoke tai anturimoduuli ei kosketa D1 da mezzanine -liitintä

e) Pistoke tai modulo de rele no conector do D2 da mezzanine

f) Plugue o modulo Led ilman liitintä D3 da mezzanine

g) Pistoke tai modulo de rele no conector do D4 da mezzanine

h) Pistoke tai näyttö, ei liitäntää HDMI da placa Dragonboard 410C

i) USB -liitännän ja Dragonboard 410C -liitännän pistoke

j) Liitin tai hiiri USB -liitännän kautta Dragonboard 410C: ssä

l) Kiinnitä Dragonboard 410C

OBS 1: LED -valonlähde on 82 ohmin vastus, häiritse median lämpötilan anturin lämpötilaa, koska valo on negatiivinen, ja se on välttämätön, ja sen käyttö on tarpeen.

OBS 2: Devido ao kit da mezzanine possuir apenas um modulo rele, foi välttämättömät sovittimet mod mod rele rele generico, käyttö ilman liitintä D4 da mezzanine, interligando cabo VCC no VCC, GND no GND, e o de sinal no D_G da mezzanine

Vaihe 3: Vaihe 3: Codigo Python

#importação das bibliotecas spidev e time

tuoda spidev

tuonnin aika

#importação parcial das bibliotecas

libsoc import gpio -ohjelmasta

gpio_96boardsista tuo GPIO

dweet -tuonnista Dweet

# määrittele analoginen portaali, tai valoanturi ja lämpötila -anturi, joka määrittelee endereçamento.

GPIO_CS = GPIO.gpio_id ('GPIO_CS')

# definição das portas digitalis

PAINIKE = GPIO.gpio_id ('GPIO_A')

RELE = GPIO.gpio_id ('GPIO_C')

LED = GPIO.gpio_id ('GPIO_E')

RELE2 = GPIO.gpio_id ('GPIO_G')

#konfiguroitavat GPIOS -toiminnot sisään tai ulos

nastat = ((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 = Makea ()

#kokoonpanot, joissa on yhdistetty LED ja RELE

def read Digitaalinen (gpio):

digitaalinen = [0, 0]

digitaalinen [0] = gpio.digital_read (LED)

digitaalinen [1] = gpio.digital_read (RELE)

palauta digitaalisesti

def write Digitaalinen (gpio, digitaalinen):

kirjoittaa = digitaalinen

gpio.digital_write (LED, kirjoitus [0])

gpio.digital_write (RELE, kirjoita [1])

palauta digitaalisesti

#konfiguroi bloco para o touch, para o järjestelmä tai ligar tai järjestelmä

def detectaButton (gpio):

globaali system_status

tila = gpio.digital_read (PAINIKE)

jos tila == 1:

jos system_status == 0:

system_status = 1

sis_status = "Ligado"

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

muu:

system_status = 0

sis_status = "Desligado"

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

dweet.dweet_by_name (nimi = "shiot", data = {"sistema": sis_status})

palauta järjestelmän_tila

#konfigurointi tehdä 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] ja 0xff)

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

#print ("Lämpötila: %2.1f" %adc_temp)

palauta adc_temp

#kokoonpano tehdä 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] ja 0xff)

palauta ilmoitus

#execução dos blocos de comandos

jos _nimi _ == '_ main_':

GPIO (nastat) gpio:

vaikka totta:

digitaalinen = [0, 0]

jos detectaButton (gpio) == 1:

lumi = readLumi (gpio)

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

jos lumi <400:

gpio.digital_write (RELE2, GPIO. HIGH)

luz_status = "Ligado"

muu:

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")

digitaalinen [0] = resposta ['with'] [0] ['content'] ['led']

digitaalinen [1] = resposta ['with'] [0] ['content'] ['rele']

writeDigital (gpio, digitaalinen)

temp = readTemp (gpio)

digitaalinen = 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

aika.unen (5)

#devido a metodologia do dweet, deve ser configurado tai dweet antes de executar o program no python.

Vaihe 4: Vaihe 4: Suloinen

Vaihe 4: Dweet
Vaihe 4: Dweet
Vaihe 4: Dweet
Vaihe 4: Dweet
Vaihe 4: Dweet
Vaihe 4: Dweet

Em dweet.io, klikkaa PLAY.

Em dweets: Luo tai lue dweets lyhyen aikavälin välimuistissa, ei muuta:

POST/dweet/hiljaa/for/{thing}

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

- em sisällön escreva:

São os para os parametros enviados do dweet para a Dragonboard410C, sendo 0 desligado and 1 para ligado.

e klikki ei botão Kokeile sitä.

Suorita Dragonboard 410C -päätteen ohjelma (suorita tämä yhteys Internetiin):

sudo python smart.py

Na aba GET:

GET/get/dweets/for/{thing}

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

e klikki ei botão Kokeile sitä.

Em Response Body é obtido algo samanlainen:

Vaihe 5: Vaihe 5: Ionic E Virtual Studio Code

Vaihe 5: Ionic E Virtual Studio Code
Vaihe 5: Ionic E Virtual Studio Code

para criar pastas e os arquivos para välttämättömyys sovellukseen

ei kehotetta de comando do windows:

ioninen käynnistys paska

abra o Visual Studio Code

rakennettu sivun html -muodossa:

Em SRC => sivut => Koti => koti.html

codigo conforme arquivo homehtml.txt

Em SRC => pages => Home => home.tscodigo conforme arquivo homets.txt

välttämätön gerar tai dweet.ts para comunicar corretamente HTTP e dweet

nopea kehotus pastaa varten:

ioninen tuottaa tarjoaja dweet

Em SRC => tarjoajat => dweet => dweet.ts

codigo conforme arquivo dweetts.txt

tuonti kommunikaatioprotokollaan

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

codigo conforme arquivo appmodulets.txt

Vaihe 6: Vaihe 6: Finalização

Vaihe 6: Finalização
Vaihe 6: Finalização
Vaihe 6: Finalização
Vaihe 6: Finalização

Ei kehotusta pastaa varten:

ioninen palvelee

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 release que pode ser ligado ou desligado com uma "chave liga/desliga".

E monitoramento de Temperatura, Iluminação, Luz externa ja Sistema.

lisätietoja yksityiskohdista funktionamento no arquivo Dragon.pdf

Suositeltava: