Ve své praxi se setkávám s výrobou, opravou a instalacemi mnoha různých průmyslových zařízení a strojů, které jsou z pohledu konstrukce řídící či vyhodnocovací jednotky v zásadě realizovány dvěma odlišnými koncepcemi:
- Řídící jednotka realizovaná PLC
- Jednodeskový počítač SBC
- Na míru konstruovaná řídící procesorová deska
Každá z uvedených koncepcí má své výhody a nevýhody, každá se hodí pro jiné aplikace a jiné podmínky nejen daného zařízení či aplikace, kterou řídí, ale také pro různé podmínky společnosti, která zařízení či systém konstruuje a vyrábí.
Kdy použít PLC?
PLC, tedy programovatelné automaty (Programmable Logic Controllers), najdeme dnes díky jejich stále lepším vlastnostem, výbavě i výpočetnímu výkonu v mnoha průmyslových zařízeních a k této variantě řešení řídící jednotky přistupuje mnoho výrobců / dodavatelů průmyslových aplikací. Zvláště pokud jde o malosériová a různá speciální zařízení či o malého výrobce nedisponujícího velkým konstrukčním oddělením s více elektro-konstruktéry a programátory. Vzhledem k tomu, že dnes existují i velmi výkonná a rychlá PLC obsahující mimo různé průmyslové komunikační sběrnice (Profibus, Profinet, MODBUS, CANOpen či DeviceNET) i klasické ethernetové rozhraní, slot pro paměťovou SD kartu a dokonce někdy i USB připojení, je s nimi možné realizovat i aplikace dříve vyhrazené jen počítačům. Z pohledu výroby a vývoje stroje je u nich hlavní výhodou snadnější režim programování, kdy dodávaný programovací software již svými funkcemi většinu detailních záležitostí řeší za programátora. A to třeba i včetně ukládání dat na paměťovou kartu či řízení komunikace.
Z pohledu vizualizace a zobrazení hodnot a stavů sice obvykle neobsahují klasický konektor pro připojení displeje, ale stejně obvykle uživatelé PLC sáhnou po nějakém „předpřipraveném“ HMI panelu, který obvykle komunikuje s PLC prostřednictvím ethernetové či sériové komunikace předem daným protokolem a vytvoření základní vizualizace je obvykle díky dodávanému speciálnímu softwaru také dost snadné. Na druhou stranu nějaké vyspělejší audiovizuální efekty není možné realizovat. Poslední roky pak mají některá vyspělejší PLC i vestavěný webový server, takže lze zobrazení hodnot realizovat i jen připojením na PC přes Ethernet.
Když se podíváme do útrob běžného PLC, najdeme samozřejmě onu desku či desky plošných spojů osazené řídícím procesorem, MCU či u některých výrobců i speciálním SoC obvodem, který celou činnost PLC řídí. Ve výsledku tak PLC není nic jiného než "speciální procesorová jednotka“, které je však vyráběná daným výrobcem ve velkých sériích. Koncový zákazník, tedy obvykle výrobce nějakého stroje, již dostane za relativně přijatelnou cenu hardwarově plně hotovou jednotku bez jakýchkoliv investic do vlastního vývoje a hlavně s PLC zdarma či za menší poplatek dodávaný programovací software neskutečně ulehčuje jeho použití. Uživatel tak často ani netuší, co je uvnitř a bere PLC prostě jako „krabičku“ poskytující určité funkce, které využívá prostřednictvím graficky znázorněného PLC programu (Ladder, funkční bloky).
Toto řešení řídící jednotky však samozřejmě má i svá omezení. Z hardwarového pohledu mezi ně patří univerzální konstrukce, aby samozřejmě „na ni šlo napasovat“ co nejvíce aplikací a tedy se bez velkých modifikací mohla sériově vyrábět i několik let. I když většina velkých výrobců PLC se to snaží řešit pomocí modulární platformy s možností nadefinovat vlastnosti automatu díky výběru různých komponent, stejně to má za následek, že v PLC jsou funkce či hardware, který pro určitou aplikaci nikdy nevyužijete a přitom za ně stejně platíme. Také jsou téměř vždy PLC svojí konstrukcí cílená hlavně na vyhodnocení signálů snímačů, následné ovládání akčních členů (elektropohony apod.) a realizaci základního uživatelského ovládacího rozhraní.
Ze softwarového pohledu je pak nevýhoda snadného grafického programovacího prostředí méně efektivní výsledný zdrojový kód programu, což má obvykle za následek pomalejší funkci (jeden cyklus programu se obvykle pohybuje v řádu jednotek až desítek ms). Navíc, i když je programovací software poskytován zdarma, stejně jeho vývoj platíte v ceně PLC. Proto je cena základní řídící jednotky PLC (CPU jednotky PLC) někdy zcela srovnatelná nebo i vyšší, než daleko výkonnější SBC počítače.
Z pohledu koncového uživatele se pak zařízení či stroje s PLC obvykle vyznačují malou náročností obsluhy, protože jsou obvykle i z pohledu ovládání přesně upravené pro požadavky jednotlivé dané aplikace a z uživatelského pohledu neobsahují funkce, které nejsou potřeba (např. na HMI panelu jsou jen volby přímo související s danou aplikací). To je ve výsledku dost příjemné pro obsluhu konečného uživatele stroje, protože zařízení není zbytečně složité.
Výhody použití PLC:
- + Snadné programování = krátká doba vývoje řídícího programu
- + Nízké prvotní náklady na vývoj stroje / aplikace (elektro-konstruktér stroje obvykle vytváří i řídící program)
- + Snadný servis a úpravy u zákazníka = servisní technik se dokáže připojit a případně i opravit chybu programu na místě provozu stroje
- + Dnes některé PLC mají i vysoký výpočetní výkon a velký výběr komunikačních rozhraní
- + Zabudované vstupy / výstupy pro přímé připojení snímačů a ovládaných zařízení
- + Snadného přizpůsobení funkce požadavkům zákazníka / aplikaci
Nevýhody použití PLC:
- - Vysoká cena – poměr cena/výkon.
- - Komplikovaný přechodu na PLC jiného výrobce (obvykle kompletně nutné předělat program PLC, někdy i zapojení skříně).
- - Méně efektivní kód programu z důvodu snadné programovatelnosti = pomalejší vykonávání složité aplikace.
- - Obvykle dost velké rozměry => nutné velké rozměry celé skříně zařízení.
- - Obvykle chybějící přímá podpora připojení displeje, zpracování obrazu, videa a zvuku, připojení různých zařízení s USB (tiskáren apod.).
Závěr: PLC jsou obecně vhodná pro speciální stroje a aplikace produkované pouze v malém počtu nebo speciální aplikace a zařízení vyvíjené či upravované vždy na míru požadavkům zákazníka. Tedy prakticky použití v oblasti průmyslu a či případně základní automatizace budov. Také jsou ideální pro malé výrobní firmy nedisponující specialisty programátory, kdy jeden vývojář elektrikář / elektronik je sám schopen navrhnout celou elektroinstalaci a funkci zařízení.
Kdy použít SBC?
Nasazení jednodeskového počítače (SBC = Single Board Computer) jako řídící jednotky zařízení či aplikace se obvykle vybírá tam, kde převažuje výpočetní a vizualizační náročnost aplikace nad potřebou snímat velké množství signálů od senzorů či řízení akčních prvků typu motory a různé pneumatické prvky. Obvyklou výhodou SBC proti PLC je výrazně lepší poměr hodnoty „cena/výpočetní výkon“, kdy za pořizovací náklady již základních kompaktních PLC lze dnes mít malé SBC s CPU Intel Atom, které jsou pak v tomto směru výpočetním výkonem úplně někdy jinde. SBC se obvykle hodí nasadit do zařízení, od kterých se nejen v průmyslu vyžaduje rychlé číselné zpracování a vyhodnocování velkého množství dat, aplikace s rozsáhlými databázemi a rychlý pohyb v nich a pak také mimo jiné požadavek na vyspělou audio-obrazovou vizualizaci, i když tato vlastnost se v případě PLC a na ně napojených současných moderních HMI panelů již pomalu stírá.
SBC, podobně jako PLC, vyrábí na světě mnoho různých výrobců. Proti PLC jsou však zde celosvětově standardizovány rozměrové platformy, takže z pohledu hardwarového zabudování lze do stejného pouzdra (skříně) zabudovat bez problémů SBC desky různých výrobců. V aktuální situaci pak jsou z pohledu hardwaru běžné různé konstrukce s CPU Intel Atom či ARM, které pro většinu aplikací poskytují dostatečný výpočetní výkon a rychlost a zároveň vykazují nízkou spotřebu el. energie.
Hlavní hardwarový rozdíl proti PLC je buď neexistující nebo jen minimální podpora přímého připojení dvoustavových signálů např. od snímačů či tlačítek, nehledě na potřebu připojení analogových signálů. Pro tento účel je nutné využít externí I/O moduly, které převedou (digitalizují) signály ze snímačů a přenáší do SBC například prostřednictvím ethernetového nebo CANOpen rozhraní. Také je u SBC obvykle minimální přímá podpora průmyslových sběrnic.
Z pohledu softwaru pro SBC se dnes obvykle vždy využívá nějaká forma operačního systému, často postaveném na nějaké verzi Linuxu, či čím dál tím častěji i na nějaké verzi OS Windows. Z toho plyne, že aplikační software daného zařízení, které SBC řídí, musí vytvářet specialista programátor „počítačového softwaru“ prostřednictvím vyšších programovacích jazyků typu C++, Java apod.
Z pohledů manažerských nákladů je použití SBC výhodné všude tam, kde se počítá s pravidelnou sériovou výrobou daného zařízení bez velkých modifikací, tedy v situaci, kdy se kompletně navrhne, vyladí a otestuje celý elektronický systém stroje a pak následně již se jen vyrábí v počtu mnoha stejných kusů ročně a neprovádí se různé modifikace. U SBC jsou totiž proti PLC výrazně vyšší prvotní náklady na vývoj softwaru aplikace programovaným v nějakém již klasickém programovacím jazyce typu C, který obvykle již musí psát specialista programátor a tedy i vývojový tým zařízení musí zahrnovat více lidí. Vývoj aplikace taky obvykle trvá výrazně déle (několik měsíců či i několik let) než u aplikace na PLC (několik dní či týdnů), což je mimo jiné také způsobeno požadavkem, aby aplikace byla natolik univerzální, aby pokryla požadavky většiny budoucích klientů, nemusely se v budoucnu provádět modifikace softwaru a finančně se profitovalo z nižší ceny hardwaru.
Z pohledu koncového uživatele se pak zařízení či stroje s SBC obvykle vyznačují velkým množstvím funkcí, které jen výjimečně konečný uživatel pro jeho konkrétní aplikaci všechny využije. Prostě tam jsou „kdyby náhodou byly potřeba“. Z vlastní zkušenosti mohu říct, že některé stroje se tak bohužel stávají zbytečně až příliš složité na ovládání a nastavení a tedy ve výsledku i náročné na inteligenci obsluhy koncového zákazníka. Zažil jsem již například i 300 stránkový manuál, protože řídící software stroje byl vytvořen tak univerzálně, že obsahoval i stovky různých nastavení, přičemž v praxi se jich vždy obvykle využije jen cca čtvrtina. To klade obrovské nároky na obsluhu zařízení, což v dnešní praxi, kdy se ve firmách dost šetří na platech zaměstnanců, představuje někdy dost velký problém.
Výhody použití SBC:
- + Vysoký výpočetní výkon srovnatelný s počítači typu PC.
- + Efektivnější a rychlejší aplikační program při zpracování velkých objemů dat.
- + Integrovaná výbava pro vizualizaci (přímá podpora obrazu, videa a zvuku).
- + Nízká pořizovací cena (poměr cena/výkon) daná sériovou výrobou SBC.
- + Hotová a plně odzkoušená hardwarová stránka - podobně jako u PLC.
- + Snadný přechod mezi hardwarem různých výrobců SBC (OS i aplikační program často může zůstat skoro stejný, jen ze změní ovladače).
- + Integrovaná podpora pro připojení klasické klávesnice, LCD displejů, dotykových ploch, kamer, zařízení s USB apod.
Nevýhody použití SBC:
- - Obvykle nutnost použít nějaký OS (operační systém).
- - Složité programování aplikace vyžadující specialistu programátora.
- - Nutnost připojit snímače a ovládaná zařízení přes externí I/O moduly.
- - Omezené možnosti okamžité úpravy stroje u zákazníka.
- - Nutnost přizpůsobit rozměry pouzdra zařízení.
Závěr: SBC je vhodné pro aplikace vyžadující velmi vysoký výpočetní výkon za relativně nízkou cenu hardwaru. Také všude tam, kde je potřeba zpracovávat obraz, video či zvuk či z pohledu ceny hardwaru levně realizovat ovládací rozhraní pro uživatele. Na druhou stranu jsou v porovnání s PLC vyšší náklady na vývoj softwaru aplikace. Proto se hodí pro opakovanou (sériovou) výrobou zařízení bez velkých modifikací.
Kdy se vyplatí jít do návrhu vlastní řídící desky?
A kdy se vydat cestou kompletního vlastního návrhu řídící desky? S postupující dobou a velkými nároky kladenými na rychlost vývoje nové aplikace a co nejnižší finanční náklady, není této možnosti doba příliš nakloněna. Samozřejmě prvotní čas a náklady spojené s vývojem, návrhem a testováním vlastní řídící jednotky jsou ze všech zde zmíněných třech možností nejvyšší, je nutné zaměstnávat po dlouhou dobu velký tým vývojářů a také v době vývoje správně odhadnout požadavky zákazníků i za mnoho let, což je v dnešní rychle měnící se době dost obtížné.
Ze své praxe vím, že zatímco i malosériově vyráběné průmyslové stroje a zařízení konstruované na začátku 90.let měly téměř vždy vlastní speciální řídící jednotky tvořené i několika deskami plošných spojů, dnes se již obvykle u průmyslových zařízení, kde je to alespoň trošku možné a výhodné, setkáte buď s PLC nebo SBC. Samozřejmě výjimkou a dle mého názoru i do budoucna hlavní doménou na míru vyvíjených vlastních řídících desek / jednotek jsou tak speciální zařízení a aplikace, které prostě kladou takové nároky, že je nelze snadno realizovat žádným běžně dostupným PLC nebo počítačem (SBC). Například zařízení s vyváženým analogově-digitálním zpracováním signálů, kdy digitální část zpracování není natolik náročná, aby dokázala vytížit výkonný jednodeskový počítač a není vyžadována realizace náročné vizualizace a naopak analogová část vyhodnocení vyžaduje přesnou filtraci a zpracování či generování slabých či vysokofrekvenčních signálů apod. Pak se samozřejmě není jiná cesta než návrh vlastní řídící desky, která pak může být například realizována stylem "vše na jedné desce plošných spojů", tedy analogová i digitální / procesorová část, včetně napájecích obvodů a obvodů vstupů a výstupů (např. viz hlavní a mimo displeje jediná hlavní deska průmyslového detektorů kovů Sartorius - obrázek vpravo).
Obecně jejich hlavní výhodou je tedy z toho plynoucí přesně cílené zaměření na řešení jen dané aplikace, pro kterou byly vytvořeny, a tedy z hardwarového pohledu nevykazují zbytečné funkce a periferie, které nejsou potřeba a jejich velikost může být i optimalizována na rozměry a tvar pouzdra / skříně zařízení. Obvykle speciální řídící deska již obsahuje i vstupy a výstupy pro připojení požadovaných externích snímačů, tedy hardwarovou konstrukcí se může blížit konstrukci odkrytovaného PLC. Ústředním řídícím prvkem bývá buď nějaké MCU či FPGA obvod doplněný flash a RAM pamětí.
Z pohledu softwaru zařízení se zde obvykle programuje pro dnes používané 32bitové CPU či MCU program v jazyce C buď zcela bez využití operačního systému nebo v posledních několika letech u náročnějších aplikací s využitím některého Real-Time OS (RTOS), například MQX od Freescale či OS9 od Microware, které programování zjednodušují a zrychlují. Samozřejmě program zařízení nelze pak snadno upravovat a předělávat speciálně pro každého zákazníka jako u PLC, musí tedy být již napsán tak "univerzálně", aby splňoval většinu požadavků zákazníka na dané zařízení kladené a nemusel být při následné sériové výrobě zařízení již příliš zásadně měněn.
Výhody vlastní řídící desky:
- + Dokonalé přizpůsobení parametrů a funkce na danou aplikaci.
- + Možnost vytvořit nové funkce a vlastnosti, které nemá konkurence.
- + Minimalizace počtu hardwarových komponent.
- + Nízké náklady při opakované mnohonásobné sériové výrobě.
- + Optimální funkce a efektivita provozu zařízení.
- + Optimalizace rozměrů (velikost a tvar zařízení).
Nevýhody vlastní řídící desky:
- - Velmi vysoké prvotní náklady na vývoj / testování.
- - Omezená servisovatelnost přímo u zákazníka.
- - Velmi obtížné / nákladné následné úpravy funkce stroje.
- - Při výrobě závislost na dodávkách konkrétních součástek (hardwaru).
Závěr: Vývoj vlastní řídící jednotky na úrovni jednotlivých součástek / integrovaných obvodů je obvykle dost finančně i časově náročná záležitost. Na druhou stranu je možné dát zařízení inovativní vlastnosti a funkce, které například nelze jednoduše realizovat již existujícími PLC nebo SBC a tím získat vývojový náskok nad výrobky konkurencí a exkluzivitu. Také umožňuje maximálně optimalizovat spotřebu el. energie, rozměry, zahřívání, odolnost proti vnějším podmínkám, funkce i ovládání.
Závěr
V tomto článku jsem se pokusil odhadnout, kdy a za jakých okolností je dobré použít tu či onu dnes nejvíce dostupnou technologii pro potřeby výrobců průmyslových strojů, přístrojů a zařízení, tedy v porovnání se spotřební elektronikou v oblasti malosériové výroby. Je samozřejmě těžké věštit, co bude aktuální za několik let, ale myslím si, že stále větší tlak na nižší výrobní náklady zařízení a také požadavek na stále rychlejší vývoj, bude neustále směřovat k stále většímu zastoupení unifikovaných komponent a koncipování veškeré elektrické konstrukce strojů a zařízení jako stavebnici LEGO. Tedy skládání systému z jednotlivých bloků (kostek) dodávané různými subdodavateli, včetně i dalšího zjednodušení systému návrhu programu řídících jednotek. S tím se však následně smazávají rozdíly strojů mezi jednotlivými výrobci a více méně se dostáváme do stavu, kdy všechny stroje jsou si hodně podobné a závisí jen na umění marketingu a obchodníků, která firma se více na trhu prosadí.
Autor článku: Antonín Vojáček
DOWNLOAD & Odkazy
- Další články o Embedded PC, SBC, systémech PLC a PAC či průmyslové komunikaci najdete na stránkách serveru automatizace.HW.cz