Mục lục:
- Bước 1: Bước 1: Materiais Uitilizados
- Bước 2: Bước 2: Montagem
- Bước 3: Bước 3: Codigo Python
- Bước 4: Bước 4: Dweet
- Bước 5: Bước 5: Mã Ionic E Virtual Studio Code
- Bước 6: Bước 6: Finalização
Video: SHIOT: 6 bước
2024 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2024-01-30 13:36
Este projeto foi desenvolvido para um sistema de iluminação qua Dweet, e foi useizado o phần cứng Dragonborad 410C com uma versão linux linaro instalado.
E para o desenvolvimento do aplicativo para o smartphone foi useizado o ionic, e o IDE Visual studio Code.
Bước 1: Bước 1: Materiais Uitilizados
1 x Dragonboard 410C
1 x tầng lửng liên kết
1 x led modulo
1 x modulo de temperatura
1 x modulo de luminosidade LDR
1 x cảm biến cảm ứng modulo
2 x mô-đun xuống hạng
1 x usb teclado
1 x chuột usb
1 x màn hình hdmi
conexão com một internet
điện trở de 1k Ohms para adaptação do led
Bước 2: Bước 2: Montagem
a) Plugue o Linker Mezzanine na sa khoáng da Dragonboard 410C
b) Plugue o modulo de temperatura no conector do ADC2 da lửng
c) Plugue o modulo de sensor de luminosidade no conector do ADC1 da lửng
d) Plugue o modulo de sensor toque no conector do D1 da lửng
e) Plugue o modulo de des no conector do D2 da lửng
f) Plugue o modulo Led không có đầu nối hình nón do D3 da lửng
g) Plugue o modulo de des no conector do D4 da lửng
h) Đầu cắm o màn hình không có đầu cắm HDMI da sa khoáng Dragonboard 410C
i) Plugue o teclado USB na nhau Bảng rồng 410C
j) Đầu cắm o chuột USB na nhau Bảng rồng 410C
l) Plugue a fonte de alimentação na sa khoáng Bảng rồng 410C
OBS 1: Devido ao modulo LED ter apenas um điện trở de 82 Ohms, giao thoa na trung gian do cảm biến de temperatura causando valores negativos quando é acionado, senso needário a useização de um điện trở de pelos menos de 1k Ohms conforme figura.
OBS 2: Bộ áo khoác Devido da lửng có thể sở hữu các loài vượn cáo um modulo xuống, foi cần thiết phải điều chỉnh bộ thích ứng um modulo xuống chi tiết, thiết bị có hình nón D4 da lửng, interligando cabo VCC không có VCC, GND không GND, e o de sinal no D_G da lửng
Bước 3: Bước 3: Codigo Python
# importação das bibliotecas spidev e time
nhập khẩu spidev
thời gian nhập khẩu
# importação parcial das bibliotecas
từ libsoc nhập gpio
từ gpio_96boards nhập GPIO
từ dweet nhập Dweet
# Defção das porta analogica, o sensor de luminosidade e de temperatura serão Defdas por endereçamento.
GPIO_CS = GPIO.gpio_id ('GPIO_CS')
# Defçã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
các chân = ((GPIO_CS, 'out'), (NÚT, '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 ()
# configurações do bloco de comando LED e RELE
def readDigital (gpio):
kỹ thuật số = [0, 0]
kỹ thuật số [0] = gpio.digital_read (LED)
kỹ thuật số [1] = gpio.digital_read (RELE)
trả lại kỹ thuật số
def writeDigital (gpio, digital):
ghi = kỹ thuật số
gpio.digital_write (LED, ghi [0])
gpio.digital_write (RELE, viết [1])
trả lại kỹ thuật số
# configuração do bloco para o touch, para o sistema ou ligar o sistema
def DetaButton (gpio):
global system_status
status = gpio.digital_read (BUTTON)
nếu trạng thái == 1:
nếu system_status == 0:
system_status = 1
sis_status = "Ligado"
print ("Estado do Sistema% s"% sis_status)
khác:
system_status = 0
sis_status = "Desligado"
print ("Estado do Sistema% s"% sis_status)
dweet.dweet_by_name (name = "shiot", data = {"sistema": sis_status})
trả về system_status
# 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] & 0xff)
adc_temp = (adcout * 5.0 / 1023-0.5) * 100
#print ("Temperatura:% 2.1f"% adc_temp)
trả lại adc_temp
# configuração do 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] & 0xff)
trả lại adcout
# executeução dos blocos de comandos
if _name _ == '_ main_':
với GPIO (chân) dưới dạng gpio:
trong khi Đúng:
kỹ thuật số = [0, 0]
nếu detaButton (gpio) == 1:
lumi = readLumi (gpio)
# Verificação da luminosidade para acionamento do eval do conector D4
nếu lumi <400:
gpio.digital_write (RELE2, GPIO. HIGH)
luz_status = "Ligado"
khác:
gpio.digital_write (RELE2, GPIO. LOW)
luz_status = "Apagado"
# Verificação no dweet para acionamento đã dẫn đầu e / ou xuống hạng
resposta = dweet.latest_dweet (name = "shiot")
digital [0] = resposta ['with'] [0] ['content'] ['led']
kỹ thuật số [1] = resposta ['với'] [0] ['nội dung'] ['xuống hạng']
writeDigital (gpio, kỹ thuật số)
temp = readTemp (gpio)
kỹ thuật số = 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], "eval": 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 antes de inheritutar o programma no python.
Bước 4: Bước 4: Dweet
Em dweet.io, clique em CHƠI.
Em dweets: Tạo hoặc đọc dweet trong bộ nhớ cache ngắn hạn, na aba:
ĐĂNG / dweet / lặng lẽ / cho / {điều}
- không có điều parametro escreva shiot, conforme programma feito không có python.
- em nội dung escreva:
Que são os para os parametros enviados do dweet para a Dragonboard410C, sendo 0 para desligado e 1 para ligado.
e clique no botão HÃY THỬ.
Thực thi o programma no terminal da Dragonboard 410C (este deve estar conectado em uma red com internet):
sudo python smart.py
Na aba NHẬN:
GET / get / dweets / for / {thing}
- không có điều parametro escreva shiot, conforme programma feito không có python.
e clique no botão HÃY THỬ.
Em Response Body é obtido algo tương tự:
Bước 5: Bước 5: Mã Ionic E Virtual Studio Code
para criar pastas e os arquivos para needários do app
no prompt de comando do windows:
ionic start shiot
abra o Mã Visual Studio
para construir as paginas html:
Em SRC => trang => Trang chủ => home.html
codigo conforme arquivo homehtml.txt
Em SRC => trang => Trang chủ => home.tscodigo conforme arquivo homets.txt
é needario gerar o dweet.ts para comunicar corretamente HTTP e dweet
na prompt de comando na pasta do projeto:
dweet nhà cung cấp tạo ion
Em SRC => nhà cung cấp => dweet => dweet.ts
codigo conforme arquivo dweetts.txt
importação para comunicação
Em SRC => app => app.module.ts
codigo conforme arquivo appmodulets.txt
Bước 6: Bước 6: Finalização
No prompt de comando da pasta do projeto:
giao bóng ion
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 des 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
Đề xuất:
Động cơ bước Điều khiển động cơ bước Không cần vi điều khiển !: 6 bước
Động cơ bước Điều khiển động cơ bước Không cần vi điều khiển !: Trong phần Hướng dẫn nhanh này, chúng tôi sẽ tạo một bộ điều khiển động cơ bước đơn giản bằng cách sử dụng động cơ bước. Dự án này không yêu cầu mạch phức tạp hoặc vi điều khiển. Vì vậy, không cần thêm ado, chúng ta hãy bắt đầu
Động cơ bước được điều khiển Động cơ bước không có vi điều khiển (V2): 9 bước (có hình ảnh)
Động cơ bước được điều khiển bằng động cơ bước Không cần vi điều khiển (V2): Trong một trong những Hướng dẫn trước đây của tôi, tôi đã chỉ cho bạn cách điều khiển động cơ bước bằng cách sử dụng động cơ bước mà không cần vi điều khiển. Đó là một dự án nhanh chóng và thú vị nhưng nó đi kèm với hai vấn đề sẽ được giải quyết trong Có thể hướng dẫn này. Vì vậy, hóm hỉnh
Đầu máy mô hình điều khiển động cơ bước - Động cơ bước như một bộ mã hóa quay: 11 bước (có hình ảnh)
Đầu máy mô hình điều khiển động cơ bước | Động cơ bước làm bộ mã hóa quay: Trong một trong những phần Hướng dẫn trước, chúng ta đã học cách sử dụng động cơ bước làm bộ mã hóa quay. Trong dự án này, bây giờ chúng ta sẽ sử dụng bộ mã hóa quay động cơ bước đó để điều khiển đầu máy mô hình bằng vi điều khiển Arduino. Vì vậy, không có fu
Âm thanh bay bổng với Arduino Uno Từng bước (8 bước): 8 bước
Acoustic Levitation With Arduino Uno Step-by-by-by (8 bước): bộ chuyển đổi âm thanh siêu âm L298N Dc cấp nguồn cho bộ chuyển đổi âm thanh nữ với chân cắm một chiều nam Arduino UNOBreadboard Cách hoạt động: Đầu tiên, bạn tải mã lên Arduino Uno (nó là một vi điều khiển được trang bị kỹ thuật số và các cổng tương tự để chuyển đổi mã (C ++)
Động cơ bước Điều khiển động cơ bước Động cơ bước - Động cơ bước như một bộ mã hóa quay: 11 bước (có hình ảnh)
Động cơ bước Điều khiển động cơ bước Động cơ bước | Động cơ bước như một bộ mã hóa quay: Có một vài động cơ bước nằm xung quanh và muốn làm điều gì đó? Trong Có thể hướng dẫn này, hãy sử dụng động cơ bước làm bộ mã hóa quay để điều khiển vị trí của động cơ bước khác bằng vi điều khiển Arduino. Vì vậy, không cần phải quảng cáo thêm, chúng ta hãy