Съдържание:

IoT - Преносим репортер на настроение: 4 стъпки
IoT - Преносим репортер на настроение: 4 стъпки

Видео: IoT - Преносим репортер на настроение: 4 стъпки

Видео: IoT - Преносим репортер на настроение: 4 стъпки
Видео: Моя работа наблюдать за лесом и здесь происходит что-то странное 2024, Ноември
Anonim
IoT - Преносим репортер на настроение
IoT - Преносим репортер на настроение

Нещата, от които ще се нуждаем:

  • Raspberry Pi с Raspbian
  • Сензор за докосване от adafruit
  • Източник на захранване (батерия/DC)
  • Ethernet или WiFi за Raspberry Pi
  • Друг компютър

Стъпка 1: Настройка на нашия Raspberry Pi хардуер

Настройка на нашия Raspberry Pi хардуер
Настройка на нашия Raspberry Pi хардуер
Настройване на нашия хардуер за Raspberry Pi
Настройване на нашия хардуер за Raspberry Pi

Първо, свържете нашия сензор за докосване към GPIO щифтове на нашия Raspberry Pi. Използвайте някои гъвкави кабели

Идентифицирайте 3 пина на нашия сензор:

  • GND - свържете се към заземяващ щифт
  • VCC - свързване към 5V извод
  • SIG - свържете се към щифт за сигнализация

В този пример ще използваме 5V, земя и GPIO 18 на нашето малиново пи.

Стъпка 2: Настройване на нашата среда на Raspberry Pi

Настройване на нашата среда на Raspberry Pi
Настройване на нашата среда на Raspberry Pi

Получете IP адреса на нашия малинов Pi.

След това се свържете с нашия малинов pi с помощта на ssh:

ssh потребителско име@ipaddress

след това въведете нашата парола.

След като влезем, инсталирайте apache2 като наш уеб сървър, като въведете:

sudo apt-get инсталирайте apache2

Стъпка 3: Проектирайте парче код на Python, за да прочетете входа от нашия сензор

Проектирайте парче код на Python, за да прочетете входа от нашия сензор
Проектирайте парче код на Python, за да прочетете входа от нашия сензор

Дизайн

В нашия примерен код използваме няколко различни команди.

За да покажем, че сме щастливи, правим 2 продължителни натискания

За да покажем, че сме тъжни, правим едно кратко докосване и едно дълго натискане

За да покажем, че сме объркани, правим едно кратко докосване, изчакваме малко, след това 2 кратки докосвания. За да покажем, че сме щастливи, правим едно кратко докосване, една кратка празнина и едно дълго натискане

За да покажем, че сме отегчени, правим 3 кратки докосвания

Превеждайки тези в низови команди: (t за кратко докосване, T за продължително натискане, g за къса междина, G за дълга празнина)

щастлив: TgT

тъжно: tgT

объркан: tGtgt

отегчен: tgtgt

Тогава нашият код ще изведе текущото ни настроение в удобен за браузъра html файл за обслужване.

Код

импортирайте RPi. GPIO като GPIOимпортирайте време

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

глобален current_cmd if current_cmd [-3:] == "TgT": current_cmd = "" настроение ("Тъжно") ако current_cmd [-3:] == "tgT": current_cmd = "" настроение ("Щастлив") ако current_cmd [-5:] == "tGtgt": current_cmd = "" настроение ("Объркано"), ако current_cmd [-5:] == "tgtgt": current_cmd = "" настроение ("Скучно")

def настроение (настроение):

файл = отворен ("index.html", "w") html = """

Преносим репортер на настроението

Хей, последното ми настроение е такова

{}

"""

file.write (html.format (настроение))

докато (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 if touch_state == 1: touch_duration = touch_duration + 1 else: if gap_duration 200: current_cmd = current_cmd +" T "else: current_cmd = current_cmd +" t "touch_duration = 0 cmd ()

GPIO.cleanup ()

Настройка за работа с нашия уеб сървър

въведете или качете горния python файл в местоположението на нашия уеб сървър, по подразбиране е/var/www/html

cd/var/www/html

sudo nano touch.py

След това въведете кода по -горе

Стъпка 4: Стартирайте нашия сървър, за да го видите в действие

Стартирайте нашия сървър, за да го видите в действие!
Стартирайте нашия сървър, за да го видите в действие!

cd/var/www/html

sudo python touch.py

След това въведете IP адреса на нашия Raspberry Pi, тогава трябва да видим нашия репортер за настроение да работи!

Опитайте различни типове команди за докосване и страницата трябва да се опреснява автоматично, за да отразява това!

Препоръчано: