Innehållsförteckning:
- Steg 1: Steg 1: Materiais Uitilizados
- Steg 2: Steg 2: Montagem
- Steg 3: Steg 3: Codigo Python
- Steg 4: Steg 4: Tweeta
- Steg 5: Steg 5: Ionic E Virtual Studio Code
- Steg 6: Steg 6: Finalização
Video: SHIOT: 6 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:46
Este projeto foi desenvolvido para um system of iluminação via Dweet, e foi utilizado or hardware Dragonborad 410C com uma versão linux linaro install.
E para o desenvolvimento do aplicativo para o smartphone foi utilizado o ionic, e o IDE Visual studio Code.
Steg 1: Steg 1: Materiais Uitilizados
1 x Dragonboard 410C
1 x linker Mezzanine
1 x modulo led
1 x temperaturmodul
1 x modulo de luminosidade LDR
1 x modulo touch -sensor
2 x moduler rele
1 x teclado usb
1 x mus usb
1 x bildskärm Hdmi
conexão com ett internet
resistor de 1k Ohms para adaptação do led
Steg 2: Steg 2: Montagem
a) Plugue o Linker Mezzanine och placa da Dragonboard 410C
b) Plugge o temperaturo modulo no conector do ADC2 da mezzanine
c) Anslutning eller modul för sensorn för luminosidad ingen anslutning till ADC1 från mezzanine
d) Plugge o modulo de sensor toque no conector do D1 da mezzanine
e) Plugge o modulo de rele no conector do D2 da mezzanine
f) Plugue o modulo Led no conector do D3 da mezzanine
g) Plugge o modulo de rele no conector do D4 da mezzanine
h) Anslutning till bildskärm utan anslutning HDMI och placerar Dragonboard 410C
i) Anslutning eller teclado USB och plats för Dragonboard 410C
j) Anslut USB -musen till Dragonboard 410C
l) Plugge a fonte de alimentação na placa Dragonboard 410C
OBS 1: LED -moduler för 82 ohm motstånd, störande temperaturmätning orsakar negativa värden och funktioner, det är nödvändigt att använda ett motstånd för pelarna i 1k ohm -figurer.
OBS 2: Devido ao kit da mezzanine possuir apenas um modulo rele, foi needsá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
Steg 3: Steg 3: Codigo Python
#importação das bibliotecas spidev e time
importera spidev
importtid
#importação parcial das bibliotecas
från libsoc import gpio
från gpio_96boards importera GPIO
från dweet import 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
KNAPP = 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'), (KNAPP, '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 = Dweet ()
#konfiguraçõ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)
returnera digitalt
def writeDigital (gpio, digital):
skriva = digitalt
gpio.digital_write (LED, skriv [0])
gpio.digital_write (RELE, skriv [1])
returnera digitalt
#konfiguração do bloco para o touch, para o sistema ou ligar o system
def detectaButton (gpio):
globala systemstatus
status = gpio.digital_read (KNAPP)
om status == 1:
om systemstatus == 0:
system_status = 1
sis_status = "Ligado"
print ("Estado do Sistema %s" %sis_status)
annan:
system_status = 0
sis_status = "Desligado"
print ("Estado do Sistema %s" %sis_status)
dweet.dweet_by_name (name = "shiot", data = {"sistema": sis_status})
returnera system_status
#konfiguração do bloco para leitura da temperatura
def readTemp (gpio):
gpio.digital_write (GPIO_CS, GPIO. HIGH)
tid. sover (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)
returnera adc_temp
#configuração do bloco para leitura da luminosidade.
def readLumi (gpio):
gpio.digital_write (GPIO_CS, GPIO. HIGH)
tid. sover (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)
returannons
#execução dos blocos de comandos
om _name _ == '_ main_':
med GPIO (pins) som gpio:
medan det är sant:
digital = [0, 0]
if detectaButton (gpio) == 1:
lumi = readLumi (gpio)
# verificação da luminosidade para acionamento do rele do conector D4
om lumi <400:
gpio.digital_write (RELE2, GPIO. HIGH)
luz_status = "Ligado"
annan:
gpio.digital_write (RELE2, GPIO. LOW)
luz_status = "Apagado"
#verificação no dweet para acionamento do led e/ou rele
resposta = dweet.latest_dweet (namn = "shiot")
digital [0] = resposta ['med'] [0] ['innehåll'] ['led']
digital [1] = resposta ['med'] [0] ['innehåll'] ['rele']
writeDigital (gpio, digital)
temp = readTemp (gpio)
digital = readDigital (gpio)
#imprime os valores de luminosidade, temperatur
skriv ut "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 för dweet
dweet.dweet_by_name (name = "shiot", data = {"led": digital [0], "rele": digital [1], "Temperatura": temp, "Luminosidade": lumi, "Luz_externa": luz_status, " system ": sis_status})
#tempo para cada leitura
tid. sover (5)
#devido a metodologia do dweet, deve ser configurado o dweet antes de executar o programa no python.
Steg 4: Steg 4: Tweeta
Med dweet.io, klicka på PLAY.
Em dweets: Skapa eller läs dweets på kort sikt cache, eller:
POST/twitt/tyst/för/{sak}
- ingen parametro sak escreva shiot, conforme programa feito no python.
- em content escreva:
Vi kan göra parametrar för att twittra för en Dragonboard410C, skicka 0 för en del för en del.
e clique no botão PRÖVA det.
Kör o programa no terminal da Dragonboard 410C (este deve estar conectado em uma rede com internet):
sudo python smart.py
Na aba FÅ:
GET/get/dweets/for/{thing}
- ingen parametro sak escreva shiot, conforme programa feito no python.
e clique no botão PRÖVA det.
Em Response Body é obtido algo liknande:
Steg 5: Steg 5: Ionic E Virtual Studio Code
para criar pastas e os arquivos para necessários do app
no prompt de comando do windows:
jonisk start shiot
ab Visual Studio -kod
para construir as paginas html:
Em SRC => sidor => Hem => hem.html
codigo conforme arquivo homehtml.txt
Em SRC => sidor => Hem => home.tscodigo conforme arquivo homets.txt
é nödvändario gerar dweet.ts para comunicar corretamente HTTP e dweet
na prompt de comando na pasta do projeto:
jonisk generera leverantör dweet
Em SRC => providers => dweet => dweet.ts
codigo conforme arquivo dweetts.txt
importação para comunicação
Em SRC => app => app.module.ts
codigo conforme arquivo appmodulets.txt
Steg 6: Steg 6: Finalização
Ingen prompt de comando da pasta do projeto:
jonisk servering
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 monitoramento de Temperatura, Iluminação, Luz externa, e Sistema.
mais detalhes do funcionamento no arquivo Dragon.pdf
Rekommenderad:
Arduino Car Reverse Parking Alert System - Steg för steg: 4 steg
Arduino Car Reverse Parking Alert System | Steg för steg: I det här projektet kommer jag att utforma en enkel Arduino Car Reverse Parking Sensor Circuit med Arduino UNO och HC-SR04 Ultrasonic Sensor. Detta Arduino -baserade bilomvändningsvarningssystem kan användas för autonom navigering, robotavstånd och andra
Steg för steg PC -byggnad: 9 steg
Steg för steg PC -byggnad: Tillbehör: Hårdvara: ModerkortCPU & CPU -kylarePSU (strömförsörjningsenhet) Lagring (HDD/SSD) RAMGPU (krävs inte) CaseTools: Skruvmejsel ESD -armband/mathermisk pasta med applikator
Tre högtalarkretsar -- Steg-för-steg handledning: 3 steg
Tre högtalarkretsar || Steg-för-steg-handledning: Högtalarkretsen förstärker ljudsignalerna som tas emot från miljön till MIC och skickar den till högtalaren varifrån förstärkt ljud produceras. Här visar jag dig tre olika sätt att göra denna högtalarkrets med:
Steg-för-steg-utbildning i robotik med ett kit: 6 steg
Steg-för-steg-utbildning i robotik med ett kit: Efter ganska många månader av att bygga min egen robot (se alla dessa), och efter att två gånger ha misslyckats med delar, bestämde jag mig för att ta ett steg tillbaka och tänka om min strategi och riktning. De flera månaders erfarenhet var ibland mycket givande och
Akustisk levitation med Arduino Uno Steg-för-steg (8-steg): 8 steg
Akustisk levitation med Arduino Uno Steg-för-steg (8-steg): ultraljudsgivare L298N Dc kvinnlig adapter strömförsörjning med en manlig DC-pin Arduino UNOBreadboardHur det fungerar: Först laddar du upp kod till Arduino Uno (det är en mikrokontroller utrustad med digital och analoga portar för att konvertera kod (C ++)