Daftar Isi:

SHIOT: 6 Langkah
SHIOT: 6 Langkah

Video: SHIOT: 6 Langkah

Video: SHIOT: 6 Langkah
Video: 6 Camera Shot Framing dengan benar 2024, Oktober
Anonim
SHIOT
SHIOT

Este projeto foi desenvolvido para um sistem de iluminação melalui Dweet, dan penggunaan perangkat keras Dragonborad 410C com uma versão linux linaro instalado.

Untuk melakukan aplikasi untuk smartphone untuk menggunakan ionic, e o IDE Visual studio Code.

Langkah 1: Langkah 1: Materiais Uitilizados

Langkah 1: Materiais Uitilizados
Langkah 1: Materiais Uitilizados
Langkah 1: Materiais Uitilizados
Langkah 1: Materiais Uitilizados
Langkah 1: Materiais Uitilizados
Langkah 1: Materiais Uitilizados
Langkah 1: Materiais Uitilizados
Langkah 1: Materiais Uitilizados

1 x Papan Naga 410C

1 x penghubung Mezzanine

1 x modulo led

1 x modulo de suhu

1 x modulo de luminosidade LDR

1 x sensor sentuh modulo

2 x modulo rel

1 x usb teclado

1 x usb mouse

1 x monitor HDMI

conexão com internet

resistor de 1k Ohm para adaptação do led

Langkah 2: Langkah 2: Montagem

Langkah 2: Montagem
Langkah 2: Montagem
Langkah 2: Montagem
Langkah 2: Montagem
Langkah 2: Montagem
Langkah 2: Montagem

a) Plugue atau Linker Mezzanine dan placa da Dragonboard 410C

b) Plugue atau modulo de temperaturea tidak ada conector melakukan ADC2 dan mezzanine

c) Plugue o modulo de sensor de luminosidade tidak ada conector melakukan ADC1 da mezzanine

d) Plugue o modulo de sensor toque no conector do D1 da mezzanine

e) Plugue atau modulo de rele tidak ada konektor untuk 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)Plugue o monitor no conector HDMI da placa Dragonboard 410C

i) Colokan atau teclado USB di tempat Dragonboard 410C

j) Colokan atau tetikus USB dan tempat Dragonboard 410C

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

OBS 1: Devido ao modulo LED ter apena um resistor de 82 Ohm, interferensi media lakukan sensor de temperatur causando valores negativos quando é acionado, rasa perlu dan utilização de um resistor de pelos menos de 1k Ohm sesuai dengan gambar.

OBS 2: Devido ao kit da mezzanine possuir apenas um modulo rele, foi necessário 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

Langkah 3: Langkah 3: Codigo Python

#importação das bibliotecas spidev e time

impor spidev

waktu impor

#importação parcial das bibliotecas

dari libsoc impor gpio

dari gpio_96boards impor GPIO

dari dweet impor Dweet

# definição das porta analogica, o sensor de luminosidade dan de suhu serão definidas por endereçamento.

GPIO_CS = GPIO.gpio_id('GPIO_CS')

# definição das portas digitais

TOMBOL = GPIO.gpio_id('GPIO_A')

RELE = GPIO.gpio_id('GPIO_C')

LED = GPIO.gpio_id('GPIO_E')

RELE2 = GPIO.gpio_id('GPIO_G')

#configuraes das GPIOS se IN ou OUT

pin = ((GPIO_CS, 'keluar'), (BUTTON, 'masuk'), (RELE, 'keluar'), (LED, 'keluar'), (RELE2, 'keluar'),)

#configuraes das portas analagicas

spi = spidev. SpiDev()

spi.open(0, 0)

spi.max_speed_hz = 10000

spi.mode = 0b00

spi.bits_per_word = 8

sistem_status = 1

manis = manis()

#konfigurasi lakukan bloco de comando LED dan RELE

def readDigital(gpio):

digital = [0, 0]

digital[0] = gpio.digital_read(LED)

digital[1] = gpio.digital_read(RELE)

kembali digital

def writeDigital(gpio, digital):

tulis = digital

gpio.digital_write(LED, tulis[0])

gpio.digital_write(RELE, tulis[1])

kembali digital

#configurao do bloco para o touch, para o sistema ou ligar o sistema

def detectaButton(gpio):

sistem_status global

status = gpio.digital_read(BUTTON)

jika status == 1:

jika system_status == 0:

sistem_status = 1

sis_status = "Ligado"

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

lain:

status_sistem = 0

sis_status = "Desligado"

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

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

kembalikan sistem_status

#configurao do bloco para leitura da temperaturea

def readTemp(gpio):

gpio.digital_write(GPIO_CS, GPIO. HIGH)

waktu.tidur(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("Suhu:%2.1f " %adc_temp)

kembali adc_temp

#configurao do bloco para leitura da luminosidade.

def readLumi(gpio):

gpio.digital_write(GPIO_CS, GPIO. HIGH)

waktu.tidur(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)

kembali adcout

#execução dos blocos de comandos

jika _name_=='_main_':

dengan GPIO(pin) sebagai gpio:

sementara Benar:

digital = [0, 0]

jika detectaButton(gpio) == 1:

lumi = bacaLumi(gpio)

# verifikasi da luminosidade para acionamento lakukan rele do conector D4

jika lum < 400:

gpio.digital_write(RELE2, GPIO. HIGH)

luz_status = "Ligado"

lain:

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

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

digital[1] = resposta['dengan'][0]['konten']['rele']

tulisDigital(gpio, digital)

suhu = readTemp(gpio)

digital = bacaDigital(gpio)

#imprime os valores de luminosidade, suhu

print "Temp: %2.1f\nlumi: %d\nled: %d\nrele: %d\n" %(temp, lumi, digital[0], digital[1])

print ("Luz Eksterna:%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 leiura

waktu.tidur(5)

#devido a metrologia do dweet, deve ser configurado o dweet antes de executar o programa no python.

Langkah 4: Langkah 4: Dweet

Langkah 4: Manis
Langkah 4: Manis
Langkah 4: Manis
Langkah 4: Manis
Langkah 4: Manis
Langkah 4: Manis

Em dweet.io, klik em PLAY.

Em dweets: Membuat atau membaca dweets dalam short term cache, na aba:

POSTING /dweet/quietly/for/{thing}

- tidak ada hal parametro escreva shiot, conforme programa feito no python.

- escreva konten em:

Pertanyaan untuk para os parametro enviados lakukan dweet untuk a Dragonboard410C, kirim 0 untuk desligado dan 1 untuk ligado.

e clique no botão COBALAH.

Jalankan program no terminal da Dragonboard 410C (este deve estar conectado em uma rede com internet):

sudo python smart.py

DAPATKAN:

DAPATKAN /get/dweets/untuk/{hal}

- tidak ada hal parametro escreva shiot, sesuai programa feito no python.

e clique no botão COBALAH.

Em Response Body é obtido algo serupa:

{ "ini": "berhasil", "oleh": "mendapatkan", "yang": "dweets", "dengan": [{ "hal": "shiot", "dibuat": "2017-12-03T19: 30:11.458Z", "content": { "Temperatura": 25.2688172043, "led": 0, "Luminosidade": 504, "Luz_externa": "Apagado", "sistema": "Ligado", "rele": 0 } }, kirim "berhasil", identificando que a conexão foi feito com sucesso e são os parametros osbtidos da Dragonboard410C.

Langkah 5: Langkah 5: Ionic E Virtual Studio Code

Langkah 5: Kode Studio Virtual Ionic E
Langkah 5: Kode Studio Virtual Ionic E

para criar pastas e os arquivos para necessários do app

tidak ada perintah de comando lakukan windows:

ion mulai kotoran

abra atau Kode Visual Studio

para construir sebagai paginas html:

Em SRC =>pages=> Beranda => home.html

codigo sesuai arquivo homehtml.txt

Em SRC =>pages=> Home => home.tscodigo sesuai dengan homets.txt

é necessario gerar o dweet.ts untuk comunicar corretamente HTTP e dweet

dan prompt de comando dan pasta lakukan projeto:

penyedia pembangkit ionik dweet

Em SRC =>penyedia=> dweet => dweet.ts

codigo sesuai dengan arquivo dweetts.txt

importação para comunicao

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

codigo sesuai arquivo appmodulets.txt

Langkah 6: Langkah 6: Finalisasi

Langkah 6: Finalisasi
Langkah 6: Finalisasi
Langkah 6: Finalisasi
Langkah 6: Finalisasi

Tidak ada perintah de comando da pasta do projeto:

servis ionik

Sera aberto no navegador

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, dan Sistema.

mais detalhes do funcionamento no arquivo Dragon.pdf

Direkomendasikan: