Zpět na domů

Ovládání Raspberry Pi Pico přes OpenPLC a Modbus RTU

Článek popisuje integraci Raspberry Pi Pico W do distribuovaného systému řízení s použitím OpenPLC a Modbus RTU. Jsou zváženy hardwarová konfigurace, adresování registrů, programování logiky a omezení DIY přístupu v průmyslovém prostředí.

Raspberry Pi Pico jako I/O uzel v OpenPLC: praktická příručka
Advertisement 728x90

# Integrace Raspberry Pi Pico W do průmyslového systému řízení prostřednictvím OpenPLC a Modbus RTU

V projektu založeném na STM32-IHM03 pro řízení PMSM motoru byl přidán vzdálený I/O uzel na Raspberry Pi Pico W s logikou realizovanou v OpenPLC. Spojení mezi uzly je organizováno přes Modbus RTU přes RS485 a koordinace systému probíhá na Orange Pi 4 Pro s využitím Node-RED. Taková architektura demonstruje použití otevřených nástrojů k vytvoření distribuovaného systému automatizace odpovídajícího standardu IEC 61131-3.

Hardwarová konfigurace a připojení

Základ systému tvoří tři klíčové komponenty: STM32-IHM03 pro řízení motoru, Raspberry Pi Pico W jako vzdálený I/O modul a Orange Pi 4 Pro v roli centrálního řídicího prvku. Mezi STM32 a Orange Pi je organizována sběrnice CAN (s využitím převodníku SN65HVD230), mezi Orange Pi a Pico pak dvouvodičová sběrnice Modbus RTU na bázi čipu MAX485.

Pro připojení Modbus a CAN k Orange Pi se používá štít RS485 CAN HAT, původně určený pro Raspberry Pi. Jeho adaptace na Orange Pi vyžadovala:

Google AdInline article slot
  • změnu taktu MCP2515 z 8 MHz na 12 MHz v Device Tree Overlay;
  • aktivaci UART7 přes orangepi-config pro spojení s převodníkem SP3485;
  • fyzickou instalaci štítu na stojanech kvůli umístění procesoru pod deskou.

Napájení všech komponent zajišťuje externí zdroj, což neovlivňuje logiku provozu, ale je důležité pro stabilitu prototypu.

Adresace pinů a registrů v OpenPLC

Při programování Raspberry Pi Pico W v prostředí OpenPLC Editor je nutné zohlednit shodu fyzických pinů RP2040 a adres Modbus. V následující tabulce jsou uvedena klíčová přiřazení:

| Typ dat v PLC | Označení | Rozsah adres Modbus | Velikost | Přístup |

Google AdInline article slot

|------------------|-------------|--------------------------|--------|--------|

| Discretní výstupy | %QX0.0 – %QX6.7 | 0–55 | 1 bit | RW |

| Discretní vstupy | %IX0.0 – %IX6.7 | 0–55 | 1 bit | R |

Google AdInline article slot

| Analogové vstupy | %IW0 – %IW31 | 0–31 | 16 bit | R |

| Registra úložiště | %QW0 – %QW31 | 0–31 | 16 bit | RW |

| Paměť (16/32/64 bit) | %MW / %MD / %ML | 32–171 | až 64 bit | RW |

Tyto adresy se používají při tvorbě logiky v jazyce reléových schémat (LD) nebo funkčních bloků (FBD). Například řízení relé připojeného k GPIO2 odpovídá %QX0.2 a Modbus adrese 2.

Realizace logiky v OpenPLC v4

OpenPLC v4 umožňuje vyvíjet programy v souladu se standardem IEC 61131-3. Pro Raspberry Pi Pico W jsou dostupné tyto programovací jazyky:

  • LD (Ladder Diagram) — reléová schémata, intuitivní pro elektroinženýry.
  • FBD (Function Block Diagram) — grafické znázornění funkcí a jejich vazeb.
  • ST (Structured Text) — textový jazyk vyšší úrovně.

Program se nahrává do runtime OpenPLC, který běží přímo na mikrokontroléru. V tomto projektu Pico funguje jako Modbus RTU Slave s pevnou adresou, např. 10. Všechny operace čtení/zápisu iniciuje Master zařízení — Orange Pi přes Node-RED.

Příklad jednoduché logiky: při přijetí signálu „start“ přes Modbus se aktivuje cívka %QX0.0, což uzavře relé SRD-05VDC-SL-C. Stavy discretního vstupu %IX1.0 lze použít jako signál nouzového zastavení.

Omezení DIY přístupu v průmyslové automatizaci

Navzdory flexibilitě a nízké ceně má řešení na bázi Raspberry Pi Pico a OpenPLC významná omezení pro průmyslové nasazení:

  • Absence galvanické izolace na vstupech/výstupech činí systém zranitelným vůči rušení ze silové techniky.
  • Nestandardní konektory (např. Micro-USB a lišty 2,54 mm) nevydrží vibrace v průmyslovém prostředí.
  • Chybí hardwarový watchdog, což zvyšuje riziko zacyklení bez restartu.
  • Omezená podpora Modbus v OpenPLC v4: zápis do Holding Registers a Coils může vyžadovat úpravu zdrojového kódu runtime.

Takové systémy jsou vhodné pro výuku, prototypování nebo malé lokální úlohy, nikoli pro kritické výrobní linky.

Co je důležité

  • Raspberry Pi Pico W může sloužit jako vzdálený I/O uzel v systému automatizace při použití OpenPLC.
  • Spojení přes Modbus RTU vyžaduje správné nastavení adresace pinů a registrů podle dokumentace OpenPLC.
  • Adaptace štítu RS485 CAN HAT na Orange Pi je možná, ale vyžaduje úpravu Device Tree a aktivaci potřebného UART.
  • OpenPLC v4 podporuje standard IEC 61131-3, ale funkčně zaostává za průmyslovými prostředími jako CODESYS.
  • DIY řešení nejsou vhodná pro průmyslovou prevádzku bez další ochrany a standardizace rozhraní.

— Editorial Team

Advertisement 728x90

Číst dál