İçindekiler:

IoT - Portable Mood Reporter: 4 Adım
IoT - Portable Mood Reporter: 4 Adım

Video: IoT - Portable Mood Reporter: 4 Adım

Video: IoT - Portable Mood Reporter: 4 Adım
Video: Ethu thevaya ? @BBCNews sign me in 🫡😂 #ukstudent #londontamil #journalist 2024, Temmuz
Anonim
IoT - Taşınabilir Mood Reporter
IoT - Taşınabilir Mood Reporter

İhtiyacımız olacak şeyler:

  • Raspbian ile Raspberry Pi
  • Adafruit'ten Dokunmatik Sensör
  • Güç Kaynağı (Pil/DC)
  • Raspberry Pi için Ethernet veya WiFi
  • başka bir bilgisayar

Adım 1: Raspberry Pi Donanımımızı Kurma

Raspberry Pi Donanımımızı Kurma
Raspberry Pi Donanımımızı Kurma
Raspberry Pi Donanımımızı Kurma
Raspberry Pi Donanımımızı Kurma

Öncelikle dokunmatik sensörümüzü Raspberry Pi'mizdeki GPIO pinlerine bağlayın. Bazı esnek kablolar kullanın

Sensörümüzdeki 3 pini tanımlayın:

  • GND - topraklama pimine bağlayın
  • VCC - 5V pin ile bağlantı
  • SIG - bir sinyal pinine bağlanın

Bu örnekte ahududu pi'mizde 5V, toprak ve GPIO 18 kullanacağız.

2. Adım: Raspberry Pi'de Ortamımızı Kurmak

Raspberry Pi Üzerinde Ortamımızı Kurmak
Raspberry Pi Üzerinde Ortamımızı Kurmak

Raspberry Pi'mizin IP adresini alın.

Ardından ssh kullanarak ahududu pi'mize bağlanın:

ssh kullanıcıadı@ipadresi

sonra şifremizi yazın.

İçeri girdikten sonra, şunu yazarak apache2'yi web sunucumuz olarak kurun:

sudo apt-get install apache2

Adım 3: Sensörümüzden Girdiyi Okumak için Bir Python Kodu Parçası Tasarlayın

Sensörümüzden Girdiyi Okumak için Bir Python Kodu Parçası Tasarlayın
Sensörümüzden Girdiyi Okumak için Bir Python Kodu Parçası Tasarlayın

Tasarım

Örnek kodumuzda birkaç farklı komut kullanıyoruz.

Mutlu olduğumuzu belirtmek için 2 uzun basarız

Üzgün olduğumuzu belirtmek için kısa bir dokunuş ve bir uzun basarız

Kafamızın karıştığını belirtmek için kısa bir vuruş yaparız, bir vuruş bekleriz, ardından 2 kısa vuruş yaparız. Mutlu olduğumuzu belirtmek için bir kısa dokunuş, bir kısa boşluk ve bir uzun basış yaparız

Sıkıldığımızı belirtmek için 3 kısa dokunuş yapıyoruz

Bunları dize komutlarına çevirmek:(t kısa dokunuş için, T uzun basış için, g kısa boşluk için, G uzun boşluk için)

mutlu: TgT

üzgün: tgT

kafası karışmış: tGtgt

sıkıldım: tgtgt

Ardından, kodumuzun mevcut ruh halimizi, sunum için tarayıcı dostu bir html dosyasına çıkarmasını sağlayacağız.

kod

RPi. GPIO'yu GPIOimport zamanı olarak içe aktar

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 = ""

tanım cmd():

global current_cmd ise current_cmd[-3:] == "TgT": current_cmd = "" mood("Üzgün") eğer current_cmd[-3:] == "tgT": current_cmd = "" mood("Mutlu") eğer current_cmd [-5:] == "tGtgt": current_cmd = "" mood("Confused") if current_cmd[-5:] == "tgtgt": current_cmd = "" mood("Sıkılmış")

def ruh hali(ruh hali):

dosya = open("index.html", "w") html = """

Taşınabilir Mood Muhabiri

Hey, en son ruh halim

{}

"""

file.write(html.format(ruh hali))

süre(1):

time.sleep(0.001) if(GPIO.input(18)): eğer touch_state==0 ise: gap_duration > 2000 ise: gap_duration = 0 eğer gap_duration > 200 ise: current_cmd = current_cmd + "G" başka: current_cmd = current_cmd + "g " gap_duration = 0 touch_state = 1 touch_count = touch_count + touch_state==1: touch_duration = touch_duration + 1 ise: gap_duration 200 ise: current_cmd = current_cmd + "T" başka: current_cmd = current_cmd + "t" touch_duration = 0 cmd()

GPIO.cleanup()

Web sunucumuzla çalışmak için kurulum

yukarıdaki python dosyasını web sunucusu konumumuza yazın veya yükleyin, varsayılan olarak /var/www/html olarak ayarlanmıştır

cd /var/www/html

sudo nano touch.py

Ardından yukarıdaki kodu yazın

Adım 4: Eylemde Görmek için Sunucumuzu Başlatın

Eylemde Görmek için Sunucumuzu Başlatın!
Eylemde Görmek için Sunucumuzu Başlatın!

cd /var/www/html

sudo python touch.py

Ardından Raspberry Pi'mizin IP adresini yazın, ardından ruh hali muhabirimizin çalıştığını görmeliyiz!

Farklı türde dokunma komutları deneyin ve sayfa bunu yansıtacak şekilde otomatik olarak yenilenmelidir!

Önerilen: