Jak wykorzystać asystenta głosowego Google w aplikacjach przemysłowych?

999

Google Home (trochę) inaczej Z pomocy asystenta głosowego Google korzystam codziennie. Dzięki niemu mogę w łatwy sposób sterować urządzeniami multimedialnymi, zarządzać wpisami w kalendarzu i wyszukiwać informacje, robiąc jednocześnie coś innego. Ciągły rozwój Internetu Rzeczy pozwala na zintegrowanie coraz większej liczby urządzeń z asystentami głosowymi.

Zadałem sobie pytanie:

Czy przy pomocy otwartego ekosystemu PLCnext Technology można użyć asystenta głosowego jako pomocnika w aplikacjach przemysłowych?

Jak to zrobić…?

Sterownik z rodziny PLCnext Technology działa w oparciu o Linux i to stanowi podstawę realizacji pomysłu. Istnieją setki aplikacji na ten system operacyjny, które wspomagają automatyzację i komunikację pomiędzy urządzeniami Internetu Rzeczy.

Najlepszym przykładem takiego narzędzia jest pakiet Node-Red. Jest to projekt open source opracowany przez specjalistów z IBM. Składa się z edytora oraz środowiska runtime. Programowanie zadań odbywa się przez przeglądarkę WWW i polega na definiowaniu połączeń (ang. flows) pomiędzy bloczkami (ang nodes) odpowiadającymi za poszczególne funkcje. Idea jest bardzo zbliżona do języka FBD, doskonale znanego wszystkim programistom sterowników PLC.

Możliwości Node-Red mogą być rozszerzane poprzez dodatkowe pakiety. Aktualnie na oficjalnej stronie jest dostępnych prawie 3000 takich plug-inów. Jeden z nich pozwala na łatwą i intuicyjną współpracę z głośnikiem Google Home.

Aplikacja

W mojej aplikacji używam Node-Red jako interfejsu pomiędzy danymi generowanymi przez tradycyjny program sterujący a światem IT, konkretniej – pomiędzy fizycznymi wejściami sterownika PLC a asystentem głosowym Google.

W skrócie: Node-Red wymienia informacje z programem sterującym za pomocą serwera OPC UA działającego na sterowniku i po odpowiednim przefiltrowaniu danych wysyła treść komunikatu do głośnika Google Home.

konfiguracja plcnext technology i google home

Jak widać na powyższym obrazku, w aplikacji wykorzystałem publikowanie informacji za pomocą protokołu MQTT (którego broker działa na Raspberry Pi), ale to całkiem inna historia…

„Chciałbym Ci powiedzieć, że…”

Pierwszą zaimplementowaną przeze mnie funkcją jest głosowe informowanie o zmianie stanu wejść sterownika PLC. Włączenie lub wyłączenie konkretnego wejścia powoduje, że z głośnika Google Home słychać komunikat mówiący o zdarzeniu. Treść takiej wiadomości jest dowolna i konfigurowalna w Node-Red.

Komunikacja pomiędzy sterownikiem PLC i Google Home odbywa się przez Internet. Oznacza to, że sam głośnik nie musi się znajdować w pobliżu sterownika ani całej aplikacji, która jest nadzorowana. W ten sposób można stworzyć prosty i przyjazny użytkownikowi zdalny system powiadamiania głosowego, np. o alarmach występujących w instalacji przemysłowej.

Sterowanie głosowe

Kolejną funkcją, do której użyłem głośnika Google Home, jest sterowanie głosowe.

Wszystkie komunikaty wypowiadane do głośnika są interpretowane przez asystenta głosowego Google i przekazywane do sterownika poprzez serwis IFTTT.com (jest to kolejne świetne narzędzie do wszystkich urządzeń IoT).

sterownik axioline z technologią plcnext

W mojej aplikacji mogę na przykład zapytać o aktualny status wszystkich fizycznych wejść sterownika. W rezultacie po chwili z głośnika słychać informację podsumowującą ich stan. Komendy głosowe mogą być dowolnie używane do sterowania, zmiany statusów lub zadawania wartości dowolnych parametrów. Można za ich pomocą wpływać na dowolne zmienne z programu sterującego.

Internet Rzeczy zmienia sposób postrzegania sterowników PLC. Nie jest to już jedynie typowo przemysłowe rozwiązanie i w przypadku otwartych ekosystemów, takich jak PLCnext Technology, jedynym ograniczeniem pozostaje kreatywność programisty.

Więcej możliwości PLCnext Technology poznasz na szkoleniu:

Podstawy programowania PLCnext Technology z wykorzystaniem PLCnext Engineer

  • Nauczysz się przy pomocy oprogramowania PLCnext Engineer, stworzyć program na sterownik PLC oraz prostą wizualizację.
  • Dowiesz się, w jaki sposób używać w projekcie na PLC programy napisane w języku C++ oraz jak wykorzystać możliwości systemu Linux na bazie którego działają sterowniki PLCnext Technology.Do zobaczenia!

    Źródło: Phoenixcontact