ዝርዝር ሁኔታ:

SHIOT: 6 ደረጃዎች
SHIOT: 6 ደረጃዎች
Anonim
SHIOT
SHIOT

Este projeto foi desenvolvido para um sistema de iluminação በ Dweet ፣ e foi utilizado o hardware Dragonborad 410C com uma versão linux linaro instalado።

ለምሳሌ ፣ በስማርትፎን ፎይ utilizado o ionic ፣ e o IDE የእይታ ስቱዲዮ ኮድ።

ደረጃ 1: ደረጃ 1: Materiais Uitilizados

ደረጃ 1: Materiais Uitilizados
ደረጃ 1: Materiais Uitilizados
ደረጃ 1: Materiais Uitilizados
ደረጃ 1: Materiais Uitilizados
ደረጃ 1: Materiais Uitilizados
ደረጃ 1: Materiais Uitilizados
ደረጃ 1: Materiais Uitilizados
ደረጃ 1: Materiais Uitilizados

1 x Dragonboard 410C

1 x አገናኝ Mezzanine

1 x ሞዱሎ ተመርቷል

1 x ሞዱሎ ዲ የሙቀት መጠን

1 x ሞዱሎ ደ luminosidade LDR

1 x ሞዱሎ የንክኪ ዳሳሽ

2 x ሞዱሎች ይለቀቃሉ

1 x teclado usb

1 x የመዳፊት ዩኤስቢ

1 x ማሳያ Hdmi

conexão በይነመረብ

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

ደረጃ 2 ደረጃ 2 ሞንታጋም

ደረጃ 2 ሞንታጋም
ደረጃ 2 ሞንታጋም
ደረጃ 2 ሞንታጋም
ደረጃ 2 ሞንታጋም
ደረጃ 2 ሞንታጋም
ደረጃ 2 ሞንታጋም

ሀ) Plugue o Linker Mezzanine እና placa da Dragonboard 410C

ለ) Plugue ወይም ሞዱሎ ዲ ዲኩራዱ ምንም ኮንሴክተር ADC2 da mezzanine ን አያደርግም

ሐ) ተሰኪ ወይም ሞዱሎ ዲ ዳሳሽ ከሉሚኖሲዳዴ ወደ ኤዲሲ 1 ዳ ሜዛኒን አያደርግም

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

ሠ) Plugue o modulo de rele no conector do D2 da mezzanine

ረ) Plugue o modulo Led no conector do D3 da mezzanine

ሰ) Plugue o modulo de rele no conector do D4 da mezzanine

ሸ) Plugue o monitor no conector HDMI da placa Dragonboard 410C

i) Plugue ወይም teclado USB እና placa Dragonboard 410C

j) መሰኪያ ወይም መዳፊት ዩኤስቢ እና በፕላጎን Dragonboard 410C

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

OBS 1: ዴቪዶኦ ሞዱሎ ኤልኢዲ ቴር አፒናስ 82 ዲኤምኤም ፣ ጣልቃ ገብነት እና የመገናኛ ዳሳሽ (ዲሴሲዩር) የሙቀት መጠንን የሚያመጣው ቫላሬስ negativos quando é acionado ፣ senso necessário a utilização de um resistor de pelos menos de 1k Ohms conforme figura.

የቅቤ 2: Devido ለፈርዖኖች Kit ዳ ውስብስቦቹን possuir apenas አረ ሞዱሎ rele, የኤፍኦኣይ necessário adaptador ማለተም ሞዱሎ rele generico, ምንም conector D4 ዳ ውስብስቦቹን, interligando cabo VCC ምንም VCC, GND ምንም GND, ኢ o ደ sinal ምንም D_G ዳ ውስብስቦቹን utilizado

ደረጃ 3: ደረጃ 3: Codigo Python

#importação das bibliotecas spidev e time

ማስመጣት spidev

የማስመጣት ጊዜ

#importação parcial das bibliotecas

ከ libsoc ማስመጣት gpio

ከ gpio_96 ሰሌዳዎች GPIO ን ያስመጡ

ከጣፋጭ ማስመጣት ጣፋጭ

# አተያየቶች ፣ ዳሳ ፖርቶ አናሎግካ ፣ ወይም አነፍናፊ ዲ luminosidade e de temperatura serão definidas por endereçamento.

GPIO_CS = GPIO.gpio_id ('GPIO_CS')

# definição das portas digitais

አዝራር = GPIO.gpio_id ('GPIO_A')

RELE = GPIO.gpio_id ('GPIO_C')

LED = GPIO.gpio_id ('GPIO_E')

RELE2 = GPIO.gpio_id ('GPIO_G')

#ያዋቅራል GPIOS ን ከውስጥ ውጭ ያድርጉ

ካስማዎች = ((GPIO_CS ፣ 'ውጣ') ፣ (BUTTON ፣ 'in') ፣ (RELE ፣ 'out') ፣ (LED ፣ 'out') ፣ (RELE2 ፣ 'out') ፣))

#ዳስ ፖርታስ አናላጋሲስን ያዋቅራል

spi = spidev. SpiDev ()

spi.open (0, 0)

spi.max_speed_hz = 10000

spi.mode = 0b00

spi.bits_per_word = 8

system_status = 1

ጣፋጭ = ጣፋጭ ()

#ያዋቅራል bloco de comando LED e RELE

def readDigital (gpio):

ዲጂታል = [0, 0]

ዲጂታል [0] = gpio.digital_read (LED)

ዲጂታል [1] = gpio.digital_read (RELE)

ዲጂታል መመለስ

def ጻፍ ዲጂታል (ጂፒኦ ፣ ዲጂታል)

ጻፍ = ዲጂታል

gpio.digital_write (LED ፣ ጻፍ [0])

gpio.digital_write (መልስ ፣ ጻፍ [1])

ዲጂታል መመለስ

#configuração do bloco para o touch, para o sistema ou ligar o sistema

def deteaButton (gpio):

ዓለም አቀፋዊ ስርዓት_status

ሁኔታ = gpio.digital_read (BUTTON)

ሁኔታ ከሆነ == 1:

system_status == 0 ከሆነ

system_status = 1

sis_status = "ሊጋዶ"

ማተም ("Estado do Sistema %s" %sis_status)

ሌላ

system_status = 0

sis_status = "Desligado"

ማተም ("Estado do Sistema %s" %sis_status)

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

የስርዓት_መመለስ ሁኔታ

#configuração do bloco para leitura da temperatura

def readTemp (gpio):

gpio.digital_write (GPIO_CS ፣ GPIO. HIGH)

ጊዜ. እንቅልፍ (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 = አድኮው | (r [2] & 0xff)

adc_temp = (adcout *5.0/1023-0.5) *100

#ህትመት ("Temperatura %2.1f" %adc_temp)

adc_temp ን ይመልሱ

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

def readLumi (gpio):

gpio.digital_write (GPIO_CS ፣ GPIO. HIGH)

ጊዜ. እንቅልፍ (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 = አድኮው | (r [2] & 0xff)

ተመለስ አድኮት

#execução dos blocos de comandos

_ ስም _ == '_ main_' ከሆነ ፦

ከጂፒኦ (ፒን) ጋር እንደ gpio

እውነት እያለ ፦

ዲጂታል = [0, 0]

deteaButton (gpio) == 1 ከሆነ

lumi = readLumi (gpio)

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

lumi ከሆነ <400:

gpio.digital_write (RELE2 ፣ GPIO. HIGH)

luz_status = "ሊጋዶ"

ሌላ

gpio.digital_write (RELE2 ፣ GPIO. LOW)

luz_status = "አፓጋዶ"

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

resposta = dweet.latest_dweet (ስም = "shiot")

ዲጂታል [0] = resposta ['with'] [0] ['content'] ['led']

ዲጂታል [1] = resposta ['with'] [0] ['content'] ['rele']

ጻፍ ዲጂታል (ጂፒኦ ፣ ዲጂታል)

temp = readTemp (gpio)

ዲጂታል = አንብብ ዲጂታል (ጂፒኦ)

#ቀዳሚ ኦስ ቫሎሬስ ደ ሉሚኖሲዳዴ ፣ የሙቀት መጠን

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

ማተም ("ሉዝ Externa: %s" %luz_status)

sis_status = "ሊጋዶ"

#envio de dados para o dweet

dweet.dweet_by_name (ስም = "shiot", data = {"led": digital [0], "rele": digital [1], "Temperatura": temp, "Luminosidade": lumi, "Luz_externa": luz_status, " sistema ": sis_status})

#tempo para cada leitura

ጊዜ። እንቅልፍ (5)

#ዴቪዶ እና ሜቶዶሎጅያ ደስ ያሰኛሉ ፣ ዴቭ ሰር አወቃቀሩን ወይም ደስታን አንቴስ ኦፕሬተርን ወይም ፕሮራም የለም ፓይዘን።

ደረጃ 4: ደረጃ 4: ጣፋጭ

ደረጃ 4: ጣፋጭ
ደረጃ 4: ጣፋጭ
ደረጃ 4: ጣፋጭ
ደረጃ 4: ጣፋጭ
ደረጃ 4: ጣፋጭ
ደረጃ 4: ጣፋጭ

ኤም dweet.io ፣ አጫዋች አጫውት።

ኢ -ዴዊቶች -በአጭር ጊዜ መሸጎጫ ውስጥ ዱዌቶችን ይፍጠሩ ወይም ያንብቡ ፣ እና በአባ:

ፖስት/ጣፋጭ/በፀጥታ/ለ/{ነገር}

- ምንም የፓራሜትሮ ነገር የለም escreva shiot ፣ conforme programa feito no Python።

- em ይዘት escreva:

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

e clique no botão ይሞክሩት።

ድራጎንቦርድ 410C (ተርሚናል) ያለ ተርሚናል ያስፈጽሙ

sudo python smart.py

እና አባቴ GET:

GET/get/dweets/for/{thing}

- ምንም የፓራሜትሮ ነገር የለም escreva shiot ፣ conforme programa feito no Python።

e clique no botão ይሞክሩት።

የኤም ምላሽ አካል እና ተመሳሳይነት ተመሳሳይነት

sendo “ተሳክቶለታል” ፣ ተለይቶ የሚታወቅበት አንድ conexão foi feito com sucesso e são os parametros osbtidos da Dragonboard410C።

ደረጃ 5 - ደረጃ 5 - Ionic E ምናባዊ ስቱዲዮ ኮድ

ደረጃ 5 - Ionic E ምናባዊ ስቱዲዮ ኮድ
ደረጃ 5 - Ionic E ምናባዊ ስቱዲዮ ኮድ

para criar pastas e os arquivos para necessários መተግበሪያን ያድርጉ

መስኮቶችን ለመስራት ምንም ጥያቄ የለም -

ionic start shiot

abra o የእይታ ስቱዲዮ ኮድ

ለፓራ ግንባታ እንደ ፓጋናስ ኤችቲኤምኤል

Em SRC => ገጾች => መነሻ => home.html

codigo conforme arquivo homehtml.txt

Em SRC => ገጾች => መነሻ => home.tscodigo conforme arquivo homets.txt

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

ወዲያውኑ እና ኮስታ እና ፓስታ ፕሮጄቶ:

ionic ማመንጫ አቅራቢ ጣፋጭ

Em SRC => አቅራቢዎች => ጣፋጭ => dweet.ts

codigo conforme arquivo dweetts.txt

importação para comunicação

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

codigo conforme arquivo appmodulets.txt

ደረጃ 6 ደረጃ 6 Finalização

ደረጃ 6 Finalização
ደረጃ 6 Finalização
ደረጃ 6 Finalização
ደረጃ 6 Finalização

ፈጣን እርምጃ የለም።

ionic ማገልገል

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

ኢ ሞኒቶራሜንቶ ደ ቴምratራቱራ ፣ ኢሉሚናçኦ ፣ ሉዝ externa ፣ ሠ ሲስተማ።

mais detalhes ማድረግ funcionamento no arquivo Dragon.pdf

የሚመከር: