SCADA na Raspberry: mit czy rzeczywistość?

SCADA na Raspberry: mit czy rzeczywistość?
Nadchodzi zima. W miejsce programowalnych kontrolerów logicznych (PLC) stopniowo wchodzą wbudowane komputery osobiste. Jest to spowodowane tym, że moc komputerów pozwala jednemu urządzeniu na połączenie funkcji programowalnego kontrolera, serwera i (przy obecności wyjścia HDMI w urządzeniu) jeszcze automatyzowanego stanowiska pracy operatora. W rezultacie: serwer WWW, część OPC, baza danych i APM w jednej obudowie, a wszystko to w cenie jednego PLC.

W artykule omówimy zastosowanie takich wbudowanych komputerów w przemyśle. Weźmiemy za podstawę urządzenie oparte na Raspberry Pi, krok po kroku opisując proces instalacji otwartego, bezpłatnego systemu SCADA opartego na otwartym kodzie źródłowym, opracowanego w Rosji — Rapid SCADA, a także zaprojektujemy w nim projekt abstrakcyjnej stacji kompresorowej, który będzie obejmował zdalne sterowanie kompresorem i trzema zaworami, a także wizualizację procesu technologicznego produkcji sprężonego powietrza.

Na wstępie zaznaczymy, że zadanie można rozwiązać na dwa sposoby. Zasadniczo nie różnią się one od siebie, a pytanie sprowadza się jedynie do estetyki i praktyczności. Zatem, potrzebujemy:

1.1 Pierwsza opcja zakłada posiadanie samego Raspberry Pi 2/3/4 oraz USB-konwertera na RS485 (tzw. „świstaka”, który można zamówić z Alliexpress).

SCADA na Raspberry: mit czy rzeczywistość?
Rysunek 1 — Raspberry Pi 2 i USB-konwerter na RS485

1.2 Druga opcja obejmuje jakiekolwiek gotowe rozwiązanie oparte na Raspberry, zalecane do instalacji w warunkach przemysłowych z wbudowanymi portami RS485. Na przykład, takie jak na rysunku 2, oparte na module Raspberry CM3+.
SCADA na Raspberry: mit czy rzeczywistość?
Rysunek 2 — Urządzenie AntexGate

2. Urządzenie z Modbus na kilka rejestrów sterujących;

3. PC z Windows do konfiguracji projektu.

Etapy opracowania:

  1. Część I. Instalacja Rapid SCADA na Raspberry;
  2. Część II. Instalacja Rapid SCADA na Windows;
  3. Część III. Opracowanie projektu i jego załadowanie na urządzenie;
  4. Wnioski.

Część I. Instalacja Rapid SCADA na Raspberry

1. Wypełniamy formy na stronie Rapid Scada, aby otrzymać dystrybucję i pobrać najnowszą wersję dla Linux.

2. Rozpakowujemy pobrane pliki i kopiujemy folder „scada” do katalogu /opt urządzenia.

3. Umieszczamy trzy skrypty z folderu „daemons” w katalogu /etc/init.d

4. Przyznajemy pełny dostęp do trzech folderów aplikacji:

sudo chmod -R ugo+rwx /opt/scada/ScadaWeb/config
sudo chmod -R ugo+rwx /opt/scada/ScadaWeb/log
sudo chmod -R ugo+rwx /opt/scada/ScadaWeb/storage

5. Ustawiamy skrypty jako wykonywalne:

sudo chmod +x /opt/scada/make_executable.sh
sudo /opt/scada/make_executable.sh

6. Dodajemy repozytorium:

sudo apt install apt-transport-https dirmngr gnupg ca-certificates
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
echo "deb https://download.mono-project.com/repo/debian stable-stretch main" | sudo tee /etc/apt/sources.list.d/mono-official-stable.list
sudo apt update

7. Instalujemy Mono .NET Framework:

sudo apt-get install mono-complete

8. Instalujemy serwer Apache HTTP:

sudo apt-get install apache2

9. Instalujemy dodatkowe moduły:

sudo apt-get install libapache2-mod-mono mono-apache-server4

10. Tworzymy link do aplikacji webowej:

sudo ln -s /opt/scada/ScadaWeb /var/www/html/scada

11. Z pobranego archiwum w folderze «apache» kopiujemy plik scada.conf do katalogu. /etc/apache2/sites-available

sudo a2ensite scada.conf

12. Przechodzimy do tej ścieżki sudo nano /etc/apache2/apache2.conf i dodajemy następujące na końcu pliku:

Require all denied

13. Wykonujemy skrypt:

sudo /opt/scada/svc_install.sh

14. Restartujemy Raspberry:

sudo reboot

15. Otwieramy stronę internetową:

http://IP-адрес urządzenia/scada

16. W otwartym oknie wpisujemy login «admin» i hasło «12345».

Część II. Instalacja Rapid SCADA na Windows

Instalacja Rapid SCADA na Windows będzie wymagana do skonfigurowania Raspberry i projektu. Teoretycznie można to zrobić na samej malinie, ale w wsparciu technicznym zalecili nam użyć środowiska deweloperskiego na Windows, ponieważ tutaj działa poprawniej niż na Linuxie.

Zatem, zaczynajmy:

  1. Aktualizujemy Microsoft .NET Framework do najnowszej wersji;
  2. Pobieramy dystrybucję Rapid SCADA dla Windows i instalujemy w trybie offline;
  3. Uruchamiamy aplikację «Administrator». W niej będziemy rozwijać sam projekt.

Podczas opracowywania należy zwrócić uwagę na kilka kwestii:

1. Numeracja rejestrów w tym systemie SCADA zaczyna się od 1, dlatego musieliśmy zwiększyć numerację naszych rejestrów o jeden. W naszym przypadku to: 512+1 i tak dalej:

SCADA na Raspberry: mit czy rzeczywistość?
Rysunek 3 — Numeracja rejestrów w Rapid SCADA (rysunek klikalny)

2. Aby przystosować katalogi i poprawnie wdrożyć projekt na systemie operacyjnym Linux, w ustawieniach należy przejść do „Serwer” -> „Ogólne ustawienia” i nacisnąć przycisk „Dla Linuxa”:

SCADA na Raspberry: mit czy rzeczywistość?
Rysunek 4 — Przestosowanie katalogów w Rapid SCADA (rysunek klikalny)

3. Określamy port zapytań dla Modbus RTU tak, jak jest określony w systemie Linux urządzenia. W naszym przypadku to /dev/ttyUSB0

SCADA na Raspberry: mit czy rzeczywistość?
Rysunek 5 — Przekonfiguracja katalogów w Rapid SCADA (obrazek klikalny)

W przypadku jakichkolwiek pytań, wszystkie dodatkowe instrukcje dotyczące instalacji można uzyskać na stronie internetowej firmy lub na ich kanale youtube.

Część III. Opracowanie projektu i jego załadunek na urządzenie

Opracowanie i wizualizacja projektu odbywa się bezpośrednio w przeglądarce. Nie jest to całkowicie typowe po doświadczeniach z desktopowymi systemami SCADA, ale jak najbardziej jest to możliwe.

Warto podkreślić ograniczony zestaw elementów wizualizacji (rysunek 6). Z wbudowanych komponentów dostępne są dioda LED, przycisk, przełącznik, link i wskaźnik. Dużym plusem jest to, że ten system SCADA wspiera dynamiczne obrazy i tekst. Przy minimalnej wiedzy o programach graficznych (Corel, Adobe Photoshop itp.) można tworzyć własne biblioteki obrazów, elementów i tekstur, a wsparcie dla elementów GIF pozwoli dodać animację do wizualizacji procesu technologicznego.

SCADA na Raspberry: mit czy rzeczywistość?
Rysunek 6 — Narzędzia edytora schematów w Rapid SCADA

Niniejszy artykuł nie ma na celu szczegółowego opisywania procesu graficznego tworzenia projektu w Rapid SCADA. Dlatego nie będziemy się na tym punkcie szczegółowo zatrzymywać. W środowisku dewelopera nasz prosty projekt „Systemy zasilania sprężonym powietrzem” stacji kompresorowej wygląda następująco (rysunek 7):

SCADA na Raspberry: mit czy rzeczywistość?
Rysunek 7 — Edytor schematów w Rapid SCADA (obrazek klikalny)

Następnie przesyłamy nasz projekt na urządzenie. W tym celu wskazujemy adres IP urządzenia do przesyłania projektu, a nie na localhost, ale na nasz komputer wbudowany:

SCADA na Raspberry: mit czy rzeczywistość?
Rysunek 8 — Ładowanie projektu na urządzenie w Rapid SCADA (obrazek klikalny)

Ostatecznie uzyskaliśmy coś podobnego (rysunek 9). Po lewej stronie ekranu znajdują się diody LED, które odzwierciedlają status działania całego systemu (kompresora), a także status działania zaworów (otwarte lub zamknięte), natomiast w centralnej części ekranu — wizualizacja procesu technologicznego z możliwością sterowania urządzeniami za pomocą przełączników. Po otwarciu danego zaworu zmienia się kolor z szarego na zielony zarówno samego zaworu, jak i odpowiadającej mu magistrali.

SCADA na Raspberry: mit czy rzeczywistość?
Rysunek 9 — Projekt stacji kompresorowej (GIF animacja klikalna)

Tutaj możesz pobrać plik tego projektu do zapoznania się.

Na rysunku 10 przedstawiono ogólny wygląd naszego rozwiązania.

SCADA na Raspberry: mit czy rzeczywistość?
Rysunek 10 — SCADA na Raspberry

Wnioski

Wprowadzenie potężnych wbudowanych komputerów przemysłowych pozwala na rozszerzenie i uzupełnienie funkcjonalności programowalnych kontrolerów logicznych. Instalacja takich systemów SCADA może zaspokoić potrzeby małej produkcji lub procesu technologicznego. W przypadku większych zadań z dużą liczbą użytkowników lub wyższymi wymaganiami bezpieczeństwa, prawdopodobnie będzie konieczne zainstalowanie pełnowartościowych serwerów, szaf automatyki i tradycyjnych PLC. Jednak dla punktów średniej i małej automatyzacji, takich jak małe budynki produkcyjne, kotłownie, pompy czy inteligentne domy — takie rozwiązanie wydaje się zasadne. Z naszych obliczeń wynika, że podobne urządzenia nadają się do zadań do 500 punktów wejścia-wyjścia danych.

Jeśli masz doświadczenie w rysowaniu w różnych edytorach graficznych i nie przeszkadza ci, że będziesz musiał samodzielnie tworzyć elementy mnemonik, to opcja z Rapid SCADA na Raspberry jest bardzo optymalna. Jej funkcjonalność jako gotowego rozwiązania jest nieco ograniczona, ponieważ jest to Open Source, jednak umożliwia zrealizowanie zadań małego budynku produkcyjnego. Dlatego jeśli przygotujesz dla siebie szablony wizualizacji, można z powodzeniem wykorzystać to rozwiązanie do integracji, jeśli nie wszystkich, to przynajmniej części swoich projektów.

W ten sposób, aby zrozumieć, jak użyteczne może być dla Ciebie takie rozwiązanie na Raspberry i jak bardzo twoje projekty mogą być zastąpione systemami SCADA Open Source na Linuxie, pojawia się uzasadnione pytanie: z jakimi systemami SCADA najczęściej się spotykasz?

Tylko zarejestrowani użytkownicy mogą brać udział w ankiecie. Zaloguj się, proszę.

Z jakimi systemami SCADA najczęściej się spotykasz?

  • 35.2%SIMATIC WinCC (TIA Portal)18

  • 7.8%Intouch Wonderware4

  • 5.8%Trace mode3

  • 15.6%CoDeSys8

  • 0%Genesis0

  • 3.9%PcVue Solutions2

  • 3.9%Vijeo Citect2

  • 17.6%Master SCADA9

  • 3.9%iRidium mobile2

  • 3.9%Simple-Scada2

  • 7.8%Rapid SCADA4

  • 1.9%AggreGate SCADA1

  • 39.2%Inna opcja (odpowiedz w komentarzu)20

Głosowało 51 użytkowników. Wstrzymało się 33 użytkowników.

Źródło: habr.com

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster