Mundarija:

IoT - Portativ kayfiyat muxbiri: 4 qadam
IoT - Portativ kayfiyat muxbiri: 4 qadam

Video: IoT - Portativ kayfiyat muxbiri: 4 qadam

Video: IoT - Portativ kayfiyat muxbiri: 4 qadam
Video: Молох другие демоны человеческие жертвы сатанизм оккультизм черная магия и сатанинские секты 2024, Iyul
Anonim
IoT - Portativ kayfiyat bo'yicha reportyor
IoT - Portativ kayfiyat bo'yicha reportyor

Bizga kerak bo'lgan narsalar:

  • Raspberry Pi bilan Raspbian
  • Adafruitdan sensorli sensor
  • Quvvat manbai (Batareya/shahar)
  • Raspberry Pi uchun chekilgan yoki WiFi
  • Boshqa kompyuter

1 -qadam: Raspberry Pi uskunasini o'rnatish

Raspberry Pi uskunamizni sozlash
Raspberry Pi uskunamizni sozlash
Raspberry Pi uskunamizni sozlash
Raspberry Pi uskunamizni sozlash

Birinchidan, sensorli sensorimizni Raspberry Pi -dagi GPIO pinlariga ulang. Ba'zi moslashuvchan kabellardan foydalaning

Sensorimizdagi 3 ta pinni aniqlang:

  • GND - topraklama piniga ulanish
  • VCC - 5V pinli ulanish
  • SIG - signal pimiga ulanish

Biz bu misolda malina pi -da 5V, tuproq va GPIO 18 -dan foydalanamiz.

2 -qadam: Raspberry Pi -da atrof -muhitni sozlash

Raspberry Pi -da atrof -muhitni sozlash
Raspberry Pi -da atrof -muhitni sozlash

Bizning malina Pi -ning IP -manzilini oling.

Keyin ssh yordamida malina pi ga ulaning:

ssh foydalanuvchi nomi@ipaddress

keyin parolimizni kiriting.

Biz kirganimizdan so'ng, apache2 -ni veb -server sifatida o'rnating:

sudo apt-get apache2 ni o'rnating

3 -qadam: Sensorimizdan kirishni o'qish uchun Python kodining bir qismini yarating

Sensorimiz kirishini o'qish uchun Python kodining bir qismini yarating
Sensorimiz kirishini o'qish uchun Python kodining bir qismini yarating

Dizayn

Bizning namunaviy kodimizda biz bir nechta turli buyruqlardan foydalanamiz.

Biz baxtli ekanligimizni ko'rsatish uchun biz 2 marta uzoq bosamiz

Xafa bo'lganimizni ko'rsatish uchun biz bir marta bosamiz va bitta uzoq bosamiz

Adashganligimizni ko'rsatish uchun biz bir marta bosamiz, bir oz kutamiz, keyin 2 marta qisqa teging. Biz baxtli ekanligimizni ko'rsatish uchun biz bitta qisqa teginish, bitta qisqa bo'shliq va bitta uzoq bosish qilamiz

Zerikkanimizni ko'rsatish uchun biz 3 marta qisqa bosamiz

Buni satr buyruqlariga tarjima qilish: (t qisqa bosish uchun, uzoq bosish uchun T, qisqa bo'shliq uchun g, uzoq bo'shliq uchun G)

baxtli: TgT

achinarli: tgT

chalkash: tGtgt

zerikkan: tgtgt

Keyin bizning kodimiz hozirgi kayfiyatimizni xizmat ko'rsatish uchun brauzerga mos html faylga chiqaradi.

Kod

RPi. GPIO -ni GPIOimport vaqti sifatida import qilish

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 ():

global current_cmd if current_cmd [-3:] == "TgT": current_cmd = "" kayfiyat ("qayg'uli") agar current_cmd [-3:] == "tgT": current_cmd = "" kayfiyat ("baxtli"), agar current_cmd bo'lsa [-5:] == "tGtgt": current_cmd = "" kayfiyat ("Adashgan") agar current_cmd [-5:] == "tgtgt": current_cmd = "" kayfiyat ("Zerikkan")

yomon kayfiyat (kayfiyat):

fayl = ochiq ("index.html", "w") html = """

Portativ kayfiyat muxbiri

Hey, mening oxirgi kayfiyatim

{}

"""

file.write (html.format (kayfiyat))

vaqt (1):

time.sleep (0.001) if (GPIO.input (18)): if touch_state == 0: if gap_duration> 2000: gap_duration = 0 if gap_duration> 200: current_cmd = current_cmd + "G" else: current_cmd = current_cmd + "g "gap_duration = 0 touch_state = 1 touch_count = touch_count + 1 agar touch_state == 1: touch_duration = touch_duration + 1 boshqa: agar gap_duration 200: current_cmd = current_cmd +" T "boshqa: current_cmd = current_cmd +" t "touch_duration = 0 cmd ()

GPIO.cleanup ()

Veb -serverimiz bilan ishlash uchun sozlash

yuqoridagi python faylini veb -server manzilimizga yozing yoki yuklang, sukut bo'yicha/var/www/html

cd/var/www/html

sudo nano touch.py

Keyin yuqoridagi kodni kiriting

4 -qadam: Serverni harakatda ko'rish uchun ishga tushiring

Buni amalda ko'rish uchun serverimizni ishga tushiring!
Buni amalda ko'rish uchun serverimizni ishga tushiring!

cd/var/www/html

sudo python touch.py

Keyin Raspberry Pi uchun IP -manzilni kiriting, shunda biz kayfiyat muxbirimiz ishlayotganini ko'rishimiz kerak!

Har xil turdagi sensorli buyruqlarni sinab ko'ring va sahifa avtomatik ravishda yangilanishi kerak.

Tavsiya: