Rozwiązanie RaaS do zdalnego sterowania robotami przemysłowymi

Innowise opracował i zoptymalizował back-end i front-end projektu oraz podłączył roboty do chmury.

Wyzwanie

Ten projekt B2B ma na celu dostarczenie robotów organizacjom, które chcą zautomatyzować swoje procesy.

Innowise stanęło przed wyzwaniem opracowania praktycznego rozwiązania z zakresu robotyki w chmurze, które rozwiązałoby problemy związane z konserwacją robotów, gromadzeniem danych na temat ich wydajności i terminowymi naprawami. Ponadto konieczne było śledzenie rzeczywistych godzin pracy robota w celu automatycznego generowania faktur.

Rozwiązanie

Innowise opracowało rozwiązanie SaaS do efektywnego zarządzania i płynnej integracji robotów. Zaprojektowaliśmy również łatwą w użyciu aplikację mobilną, aby zwiększyć komfort zarządzania.

Innowise opted for a cloud microservices architecture for the project because it makes applications easier to scale and faster to develop. This architecture closely interacts with AWS — the world's most comprehensive and broadly adopted cloud platform.

Połączone usługi AWS

Złożona i wieloaspektowa struktura rozwiązania integruje różne usługi AWS, takie jak:

  • Elastic Beanstalk pomaga wdrażać i zarządzać aplikacjami internetowymi dzięki udostępnianiu pojemności, monitorowaniu stanu aplikacji i nie tylko;
  • DynamoBD obsługuje struktury danych i usługi chmurowe o kluczowej wartości. Korzyści przejawiają się w automatycznym skalowaniu, buforowaniu w pamięci, funkcjach tworzenia kopii zapasowych i przywracania;
  • AWS Grafana umożliwia wysyłanie zapytań, wizualizację i ostrzeganie o metrykach, dziennikach i śladach pochodzących z robota;
  • IOT SIteWise - zarządzana usługa, która gromadzi, przetwarza i monitoruje dane robotów lokalnie - nawet bez połączenia z Internetem;
  • IAM bezpiecznie kontroluje dostęp do zasobów AWS i zarządza uprawnieniami;
  • SNS służy do wysyłania powiadomień SMS do klientów i deweloperów o krytycznych stanach robotów;
  • SQS dla Celery - asynchroniczna kolejka zadań oparta na rozproszonym przekazywaniu komunikatów;
  • KMS do przechowywania i automatycznego odświeżania kluczy;
  • RDS (PostgreSQL), S3, Lambda są zaimplementowane w celu wysyłania statusu łączności robota do zaplecza;
  • SES to usługa poczty e-mail w chmurze do masowego wysyłania wiadomości e-mail;
  • KVS - do bezpiecznego przesyłania strumieniowego na żywo.

Oprócz usług wymienionych powyżej, usługa Django zasługuje na szczególną uwagę, ponieważ może gromadzić dane z robotów, kompilować dzienne i miesięczne faktury oraz sporządzać umowy z klientami wyszczególniające tylko czas bezczynności.

Inteligentne sprawdzanie bieżącego statusu robota

Aby zrozumieć aktualny stan robota, skonfigurowaliśmy system, który porównuje bieżący zestaw danych robota z niektórymi poprzednimi. W przypadku wykrycia anomalii otrzymuje status - "poważny" lub "ostrzeżenie" - i wysyła powiadomienie push do odpowiedniego kanału komunikacji.

Ponadto, usługa IXON pozwala na monitorowanie wydajności robotów w czasie rzeczywistym. Ponieważ roboty są zarejestrowane w StrideLinx, możliwe jest zdalne modyfikowanie konfiguracji routera, sprawdzanie, jakie urządzenia są do niego podłączone itp.

Akcje GitHub dla ciągłej integracji/ciągłego wdrażania

Kod jest wypychany do elastycznego rejestru kontenerów, a następnie CD wdraża zmiany w gałęziach dev i main do odpowiednich środowisk w Elastic Beanstalk.

W samym Elastic Beanstalk skonfigurowaliśmy automatyczne kontrole kondycji środowisk, które wysyłają alerty do Slacka, jeśli środowisko sprawia problemy.

Datadog do przechowywania logów

Datadog brings together end-to-end traces, metrics, and logs to make robots and AWS services entirely observable. Innowise helped on switch to AWS SiteWise to store robot data since it solved the problem of the loss of internet connection. This solution prevents robot data from being lost and sends it to the AWS server even when there’s no internet connection or the back-end is unavailable.

Aplikacja mobilna

Nasz zespół opracował aplikację mobilną, która umożliwia klientom uzyskanie aktualnych informacji o stanie wynajętego robota. Aplikacja zawiera również przydatne wykresy, które pokazują czas bezczynności i pracy robotów.

Dzięki zintegrowanemu WebRTC opartemu na AWS KVS, klient może również połączyć się z kamerą robota i zobaczyć, co robot aktualnie robi.

Technologie i narzędzia

Systemy wbudowane
PLC, kontroler robotów, LoRaWAN, MicroPython, OPC UA, Raspberry PI, ESP 32
TypeScript, React Native, Redux, react-navigation
Python, Django, Celery, Celery beat
Elastic Beanstalk, DynamoDB, AWS Grafana, IOT SIteWise, IOT core, IAM, SNS, SQS, KMS, RDS(PostgreSQL), S3, Lambda, SES, KVS
VCS
Git, GitHub
GitHub Actions, DataDog, Nginx, Docker, Docker Compose

Proces

Po zebraniu i udokumentowaniu wymagań klienta, Innowise rozpoczął rozwój. Zastosowaliśmy podejście Scrum z jednotygodniowymi sprintami i spotkaniami trzy razy w tygodniu w celu omówienia ważnych kwestii. Slack i Jira były używane do zarządzania zadaniami i omawiania projektów w zespole. Każdego tygodnia kierownik projektu kontaktował się z klientem przez Skype, aby przekazać aktualne informacje na temat procesu rozwoju.

Team required

1
Kierownik projektu
2
Programistów back-end
1
Programista Front-End
3
Specjaliści ds. wsparcia robotów
team-innowise

Oczekiwane wyniki

As a result, Innowise developed a solution that increased demand for robot rentals.

Since we implemented “robot as a service” in cloud computing, the customer can monitor the robot’s status in real time and provide timely technical support. With AWS SiteWise connected, all robot data is saved and displayed correctly in invoices.

    Skontaktuj się z nami

    Umów się na rozmowę lub wypełnij poniższy formularz, a my odezwiemy się do Ciebie po przetworzeniu Twojego zgłoszenia.

    Wyślij nam wiadomość głosową
    Załącz dokumenty
    Prześlij plik

    Można załączyć 1 plik o rozmiarze do 2 MB. Prawidłowe formaty plików: pdf, jpg, jpeg, png.

    Klikając "Wyślij", wyrażasz zgodę na przetwarzanie Twoich danych osobowych przez Innowise zgodnie z naszą Polityką Prywatności w celu przekazania Ci odpowiednich informacji. Podając numer telefonu, zgadzasz się na kontakt za pośrednictwem połączeń głosowych, SMS-ów lub komunikatorów. Mogą obowiązywać opłaty za połączenia, wiadomości i transmisję danych.

    Możesz także wysłać swoje zapytanie
    na contact@innowise.com
    Co dalej?
    1

    Po otrzymaniu i przetworzeniu zgłoszenia skontaktujemy się z Tobą, aby szczegółowo opisać projekt i podpisać umowę NDA w celu zapewnienia poufności.

    2

    Po zapoznaniu się z Twoimi potrzebami i oczekiwaniami, nasz zespół opracuje projekt wraz z zakresem prac, wielkością zespołu, wymaganym czasem i szacunkowymi kosztami.

    3

    Zorganizujemy spotkanie w celu omówienia oferty i ustalenia szczegółów.

    4

    Na koniec podpiszemy umowę, błyskawicznie rozpoczynając pracę nad projektem.

    strzałka