Kontroluj Raspberry Pi za pomocą głosu
Agencja internetowa » Wiadomości cyfrowe » Kontroluj Raspberry Pi za pomocą głosu

Kontroluj Raspberry Pi za pomocą głosu

W dzisiejszym artykule zamykam rolety głosem!

Na przykład zdecydowałem się powiązać moje spersonalizowane zamówienie ze skryptem sterującym roletami na moim Raspberry. Możesz jednak użyć tego przykładu do interfejsu dowolnego skryptu, a tym samym do automatyzacji domu sterowanej głosem.

Aplikacja do wyzwalania działań w RPi

Aplikacja internetowa jest tworzona przy użyciu frameworka Pythona o nazwie Flask.

Zaczynamy od zainstalowania frameworka na naszym Rpi.

Tworzymy plik Pythona, który robimy z niego wykonywalny

Oto użyty kod. Zdefiniowałem 2 zasoby: otwierający i zamykający.

W przykładzie używam klasy „GpioControl”, którą podam jako przykład. To ustawia porty GPIO w stan „1” na jedną sekundę. Oczywiście ten skrypt jest specyficzny dla sterowania moimi roletami. Musisz wymienić swoje w ramach rozwijanej automatyki domowej.

Uruchom serwer sieciowy Flask (uruchamiam w sudo, bo biblioteka GPIO wymaga uprawnień roota)

Przetestujemy zasób. Na Linuksie testuję za pomocą narzędzia Curl. Składnia jest następująca

Aby przetestować zasób „zamknięcie”, wpisuję

Tworzenie akcji Tasker

Zakładam, że utworzyłeś już wydarzenie i nagrałeś polecenie głosowe. Utworzymy teraz akcję powiązaną z tym wydarzeniem.

Akcja będzie polegała na wysłaniu żądania HTTP POST do serwera Flask na Rpi.

  • W menu zadań, które zostało wcześniej otwarte po utworzeniu wydarzenia, wprowadź nazwę swojego zadania.
  • Kliknij „+”, aby dodać nową akcję
  • Przechodzimy do kategorii „Sieć”, a następnie „Post HTTP”
  • W „Serwer: Port” podajemy adres IP Rpi oraz port serwera WWW. W moim przypadku 5000, domyślny port Flask
  • W „ścieżce” wprowadź adres URL żądanego zasobu. W moim przykładzie / zamknięcie
  • W „Dane/plik” umieszczam swoje dane przesłane w POST, czyli hasło. hasło = „moje hasło”

kolba_http_rpi

Voila, pozostaje tylko zadzwonić do zamówienia przez Google Now. To mi daje.

★ ★ ★ ★ ★