Mundarija:
Video: SHIOT: 6 qadam
2025 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2025-01-13 06:58
Dweet orqali tizimni o'rnatish va o'rnatish uchun Dragonborad 410C yoki boshqa linux linux dasturlari o'rnatilishi kerak.
Smartfonlar uchun zarur bo'lgan dasturiy ta'minot yoki IDE Visual Studio kodi.
1 -qadam: 1 -qadam: Materiais Uitilizados
1 x Dragonboard 410C
1 ta bog'lovchi Mezzanine
1 x modulli LED
1 x harorat rejimi
1 x Luminosidad moduli
1 x modulli sensorli sensor
2 x modulli rele
1 x usb uskuna
1 x sichqoncha usb
1 x Hdmi monitor
Internetga ulanish
qarshilik uchun 1k Ohm uchun adapter
2 -qadam: 2 -qadam: Montagem
a) Dragonboard 410C -ga ulanadigan ulanish moslamasi
b) ADC2 va mezzanina o'rtasida konnektor yo'q
c) ADC1 va mezzanin o'rtasida hech qanday ulagich yo'q
d) D1 va mezzaninli ulagich yoki sensorli ulagich
e) Plazma yoki modulli ulanish, D2 va mezzaninada ulanmaydi
f) ulanish moduli Led no conector do D3 da mezzanine
g) Plazma yoki modulli ulanish, D4 va mezzanina o'rtasida hech qanday ulagich yo'q
h) ulagich yoki monitor, konnektori yo'q, HDMI ham placa Dragonboard 410C
i) Dragonboard 410C uchun USB ulagichi
j) Dragonboard 410C sichqoncha USB ulagichi
l) Dragonboard 410C shriftini joylashtiring
OBS 1: qarshilik 82 ohmli LEDni o'lchash uchun rezistorni boshqaradi, bu esa har qanday qarshilikka qarshilik ko'rsatishga imkon beradi, shuning uchun qarshilik rezistorlari ham 1k Ohmga teng.
OBS 2: Devido ao to'plami ham modulli, ham modulli, ham modulli, ham D4 konnektorli emas, VCC VCC, GND yo'q, GND va boshqalar.
3 -qadam: 3 -qadam: Codigo Python
#importbão das bibliotecas spidev e
spidev import qilish
import vaqti
#bibliotecas importi
libsoc import gpio dan
gpio_96boards -dan GPIO -ni import qilish
Dweet importidan Dweet
Portativ analogiya, harorat sensori va temperatura yordamida aniqlanadi.
GPIO_CS = GPIO.gpio_id ("GPIO_CS")
# aniq ma'lumotlar portlari
TUGMA = GPIO.gpio_id ('GPIO_A')
RELE = GPIO.gpio_id ("GPIO_C")
LED = GPIO.gpio_id ("GPIO_E")
RELE2 = GPIO.gpio_id ('GPIO_G')
#GPIOS -da OUT OUT konfiguratsiyasi
pins = ((GPIO_CS, "tashqariga"), (TUGMASI, "ichidagi"), (RELE, "tashqariga"), (LED, "tashqariga"), (RELE2, "tashqariga"),)
#konfiguratsiya ma'lumotlari
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 ()
#LED va RELE konfiguratsiyasi
def readDigital (gpio):
raqamli = [0, 0]
raqamli [0] = gpio.digital_read (LED)
raqamli [1] = gpio.digital_read (RELE)
raqamli qaytish
def writeDigital (gpio, raqamli):
yozish = raqamli
gpio.digital_write (LED, yozish [0])
gpio.digital_write (RELE, yozish [1])
raqamli qaytish
#konfiguratsiya qilish uchun siz tizimni yoki tizimni sozlashingiz mumkin
def detectaButton (gpio):
global tizim holati
holati = gpio.digital_read (TUGMASI)
agar status == 1:
agar system_status == 0 bo'lsa:
system_status = 1
sis_status = "Ligado"
chop etish (" %sis_status" %sistemasi)
boshqa:
system_status = 0
sis_status = "Desligado"
chop etish (" %sis_status" %sistemasi)
dweet.dweet_by_name (ism = "shiot", ma'lumotlar = {"tizim": sis_status})
system_status -ni qaytarish
#konfiguratsiya va haroratni sozlash
def readTemp (gpio):
gpio.digital_write (GPIO_CS, GPIO. HIGH)
vaqt. uxlash (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) va 0b1100000000
adcout = adcout | (r [2] va 0xff)
adc_temp = (adcout *5.0/1023-0.5) *100
#print ("Harorat: %2.1f" %adc_temp)
adc_temp -ni qaytaring
#luminosidade -ni sozlash.
def readLumi (gpio):
gpio.digital_write (GPIO_CS, GPIO. HIGH)
vaqt. uxlash (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) va 0b1100000000
adcout = adcout | (r [2] va 0xff)
adcout -ni qaytarish
#execução dos blocos de comandos
agar _ nomi _ == '_ asosiy _' bo'lsa:
GPIO (pin) bilan gpio sifatida:
rost bo'lsa:
raqamli = [0, 0]
if detectaButton (gpio) == 1:
lumi = o'qish Lumi (gpio)
D4 ulagichi bilan ishlashning eng yaxshi usuli
agar lumi <400:
gpio.digital_write (RELE2, GPIO. HIGH)
luz_status = "Ligado"
boshqa:
gpio.digital_write (RELE2, GPIO. LOW)
luz_status = "Apagado"
#verificação no dweet na acionamento no led e/ou rele
Resposta = dweet.latest_dweet (ism = "shiot")
raqamli [0] = javob ['bilan'] [0] ['kontent'] ['led']
raqamli [1] = javob ['bilan'] [0] ['tarkib'] ['rele']
writeDigital (gpio, raqamli)
temp = readTemp (gpio)
raqamli = o'qish raqamli (gpio)
#luminosidade, temperatura
chop etish "Temp: %2.1f / nlumi: %d / nled: %d / nrele: %d / n" %(temp, lumi, raqamli [0], raqamli [1])
chop etish ("Luz Externa: %s" %luz_status)
sis_status = "Ligado"
#tezlik uchun dada
dweet.dweet_by_name (name = "shiot", data = {"led": raqamli [0], "rele": raqamli [1], "Temperatura": temp, "Luminosidade": lumi, "Luz_externa": luz_status, " tizim ": sis_status})
#temo pul uchun
uyqu (5)
#devido a metodologia doweet, a configure configure or a desweet all the program or no python.
4 -qadam: 4 -qadam: Shirin
Em dweet.io, PLAY -ni taqsimlang.
Dweets: Qisqa muddatli keshda tvitlar yarating yoki o'qing:
POST/dweet/jimgina/uchun/{narsa}
- hech qanday parametr yo'q, lekin python dasturiga mos kelmaydi.
- ularning tarkibi:
Siz Dragonboard410C -ni o'rnatishingiz kerak bo'lsa, u 1 -raqamli o'yinni yozib qo'ying.
e clique no botão buni sinab ko'ring.
Dragonboard 410C terminali bo'lmagan dasturni bajaring (Internetdan foydalanishni osonlashtiring):
sudo python smart.py
QABUL QILING:
GET/get/dweets/for/{thing} uchun
- hech qanday parametr yo'q, lekin python dasturiga mos kelmaydi.
e clique no botão buni sinab ko'ring.
Em Response Body shunga o'xshash:
5 -qadam: 5 -qadam: Ionic E Virtual Studio kodi
ilovalar uchun zarur bo'lgan pastalar va dasturlar
derazalarda hech qanday buyruq berilmaydi:
ionli start shioti
abstrakt yoki Visual Studio kodi
html sahifalarini tuzish:
SRC => sahifalar => Bosh sahifa => uy.html
codigo conforme arquivo homehtml.txt
Em SRC => pages => Home => home.tscodigo conforme arquivo homets.txt
bu dweet.ts uchun zarur bo'lgan HTTP va dweet -ni o'rnatish
na makaron, na loyiha tayyor:
ion generate provayderi dweet
SRC => provayderlar => dweet => dweet.ts
codigo conforme arquivo dweetts.txt
HTTP -ni ulash
SRC => app => app.module.ts
codigo conforme arquivo appmodulets.txt
6 -qadam: 6 -qadam: Yakuniy bosqich
Makaronni loyihalashda hech qanday taklif yo'q:
ion xizmat
Navegador yo'q: https:// localhost: 8100/
Siz telefon raqamini tanlashingiz kerakmi yoki yo'qmi degan savolga javob berasiz.
Siz "o'yin -kulgi" ni tanlashingiz mumkin, bu sizning telefon raqamingizmi?
Temperatura, Iluminação, Luz externa va elektron tizim monitoringi.
mais detalhes funcionamento no arquivo Dragon.pdf