Mündəricat:

IoT - Portativ Mood Reporter: 4 addım
IoT - Portativ Mood Reporter: 4 addım

Video: IoT - Portativ Mood Reporter: 4 addım

Video: IoT - Portativ Mood Reporter: 4 addım
Video: Why People are Siding with Palestine 2024, Iyul
Anonim
IoT - Portativ Mood Reporter
IoT - Portativ Mood Reporter

Ehtiyac duyduğumuz şeylər:

  • Raspbian ilə Raspberry Pi
  • Adafruitdən toxunma sensoru
  • Güc mənbəyi (Batareya/DC)
  • Raspberry Pi üçün Ethernet və ya WiFi
  • Başqa bir kompüter

Addım 1: Raspberry Pi Təchizatımızı Qurmaq

Raspberry Pi Təchizatımızı Qurmaq
Raspberry Pi Təchizatımızı Qurmaq
Raspberry Pi Təchizatımızı Qurmaq
Raspberry Pi Təchizatımızı Qurmaq

Əvvəlcə toxunma sensorumuzu Raspberry Pi üzərindəki GPIO pinlərinə bağlayın. Bəzi çevik kabellərdən istifadə edin

Sensorumuzda 3 pin tapın:

  • GND - torpaq pininə qoşulun
  • VCC - 5V pinə qoşulun
  • SIG - bir işarə pininə qoşulun

Bu nümunədə moruq pi -də 5V, torpaq və GPIO 18 istifadə edəcəyik.

Addım 2: Ətrafımızı Raspberry Pi üzərində qurmaq

Ətrafımızı Raspberry Pi üzərində qurmaq
Ətrafımızı Raspberry Pi üzərində qurmaq

Moruq Pi -nin IP ünvanını əldə edin.

Sonra ssh istifadə edərək moruq pi -yə qoşulun:

ssh istifadəçi adı@ipaddress

sonra şifrənizi daxil edin.

Daxil olduqdan sonra, yazaraq apache2 -ni veb serverimiz olaraq quraşdırın:

sudo apt-get apache2 quraşdırın

Addım 3: Sensorumuzdan daxil olan məlumatları oxumaq üçün bir parça Python kodu hazırlayın

Sensorumuzdan daxil olan məlumatları oxumaq üçün bir parça Python kodu hazırlayın
Sensorumuzdan daxil olan məlumatları oxumaq üçün bir parça Python kodu hazırlayın

Dizayn

Nümunə kodumuzda bir neçə fərqli əmrdən istifadə edirik.

Xoşbəxt olduğumuzu bildirmək üçün 2 uzun presləmə edirik

Kədərli olduğumuzu göstərmək üçün bir qısa vuruş və bir uzun mətbuat edirik

Çaşqın olduğumuzu göstərmək üçün bir qısa vuruş edirik, bir az gözləyin, sonra 2 qısa vuruş. Xoşbəxt olduğumuzu göstərmək üçün bir qısa vuruş, bir qısa boşluq və bir uzun mətbuat edirik

Darıxdığımızı göstərmək üçün 3 qısa vuruş edirik

Bunları simli əmrlərə çevirmək: (qısa vuruş üçün t, uzun basma üçün T, qısa boşluq üçün g, uzun boşluq üçün G)

xoşbəxt: TgT

kədərli: tgT

qarışıq: tGtgt

cansıxıcı: tgtgt

Sonra kodumuz hazırkı əhvalımızı xidmət üçün brauzer dostu bir html faylına çıxaracaq.

Kod

GPIOimport zamanı olaraq RPi. GPIO idxal edin

GPIO.cleanup ()

GPIO.setmode (GPIO. BCM) GPIO.setup (18, GPIO. IN)

touch_count = 0

touch_state = 0 touch_duration = 0 gap_duration = 0 current_cmd = ""

def cmd ():

cari_cmd əgər qlobal cari_cmd [-3:] == "TgT": current_cmd = "" əhval-ruhiyyə ("Kədərli") əgər current_cmd [-3:] == "tgT": current_cmd = "" əhval-ruhiyyə ("Xoşbəxt") current_cmd olarsa [-5:] == "tGtgt": current_cmd = "" əhval ("Çaşqın"), əgər current_cmd [-5:] == "tgtgt": current_cmd = "" əhval ("Darıxdırıcı")

pis əhval (əhval):

fayl = açıq ("index.html", "w") html = """

Portativ Mood Reporter

Hey, ən son əhvalım belədir

{}

"""

file.write (html.format (əhval))

isə (1):

time.sleep (0.001) if (GPIO.input (18)): touch_state == 0 olarsa: gap_duration> 2000: gap_duration = 0 əgər gap_duration> 200: current_cmd = current_cmd + "G" başqa: current_cmd = current_cmd + "g "gap_duration = 0 touch_state = 1 touch_count = touch_count + 1 touch_state == 1: touch_duration = touch_duration + 1 başqa: gap_duration 200 olarsa: current_cmd = current_cmd +" T "başqa: current_cmd = current_cmd +" t "touch_duration = 0 cmd ()

GPIO.cleanup ()

Veb serverimizlə işləmək üçün qurun

yuxarıdakı python faylını veb server serverimizə yazın və ya yükləyin, default olaraq/var/www/html

cd/var/www/html

sudo nano touch.py

Sonra yuxarıdakı kodu daxil edin

Addım 4: Fəaliyyətini görmək üçün Serverimizi Başlayın

Bunu Fəaliyyətdə görmək üçün Serverimizi Başlayın!
Bunu Fəaliyyətdə görmək üçün Serverimizi Başlayın!

cd/var/www/html

sudo python touch.py

Sonra Raspberry Pi üçün IP ünvanını yazın, sonra əhval müxbirimizin işlədiyini görməliyik!

Müxtəlif toxunma əmrlərini sınayın və bunu əks etdirmək üçün səhifə avtomatik olaraq yenilənməlidir!

Tövsiyə: