PLC programovanie a HMI
Riadiaci softvér pre stroje a výrobné linky — nové stavby, modernizácie, diagnostika a optimalizácia existujúcich systémov.
PLC programátor · Robotika · Embedded vývojár · Elektrotechnik
Štrnásť rokov dodávam stroje, linky a riadiace systémy, ktoré ostanú v produkcii.
Volám sa Vladimír Mrva a programujem PLC systémy a embedded mikroprocesory viac ako 14 rokov. Počas kariéry som dokončil stovky úspešných projektov — od jednoúčelových strojov až po komplexné výrobné linky.
Portfólio zahŕňa aj unikátne triediace linky v potravinárstve, regálové systémy a dopravníkové riešenia.
Medzi moje silné stránky patrí výnimočná trpezlivosť, odhodlanie a vytrvalosť. Dodnes som nemal ani jeden neúspešný projekt. Elektrotechnickú dokumentáciu v EPLAN a PROFICAD tvorím viac ako 10 rokov — v priemysle aj v terciárnej sfére.
Skúsenosti zahŕňajú programovanie mikrokontrolérov a mikroprocesorov naprieč odvetviami, vlastné komunikačné protokoly, analýzu dát, databázy a ďalšie.
Ak potrebujete konzultáciu, neváhajte ma kontaktovať nižšie.
Mám desiatky projektov aj v zahraničí — všetky sa na web nevojdu, preto zobrazujem len mapu Slovenska.
Od návrhu a PLC cez robotiku až po servis, modernizáciu a uvedenie liniek do života.
Riadiaci softvér pre stroje a výrobné linky — nové stavby, modernizácie, diagnostika a optimalizácia existujúcich systémov.
Robotické bunky, programovanie dráh, safety a napojenie na linku — vrátane kolaboratívnych robotov a vision picking.
Kompletná elektrotechnická dokumentácia pre priemysel aj terciár — prehľadné schémy pripravené na výrobu a revíziu.
Návrh a výroba elektrických rozvádzačov podľa európskych noriem — vrátane dokumentácie a bezpečnostnej kontroly.
Firmware pre mikrokontroléry a vlastné protokoly, keď štandard nestačí — fieldbusy, OPC, SQL a dáta na klientovi aj serveri.
Sprevádzkovanie zariadenia u zákazníka — ladenie, doladenie, odovzdanie a podpora, kým linka stabilne beží vo výrobe.
Diagnostika, opravy a údržba elektrických zariadení — vrátane starších systémov, kde už chýba dokumentácia alebo originálny dodávateľ.
Úpravy a retrofit existujúcich strojov a výrobných liniek — výmena riadenia, rozšírenie funkcií a predĺženie životnosti bez nutnosti novej linky.
Dôvernosť na prvom mieste. Referencie zostávajú pod NDA — rád preberieme rozsah, stack a prístup telefonicky alebo mailom.
Hlavný stack naprieč PLC platformami, robotikou a elektrotechnikou.
Rýchle pomôcky pre PLC, komunikácie a sieť — overené výpočty priamo v prehliadači.
Lineárny prevod cez %: V / mA / % / raw prevodníka (napr. 0…27648). Zmeň ktorékoľvek pole alebo min/max prevodníka.
NORM_X / SCALE_X: zmeň IN alebo OUT — druhé pole sa dopočíta. Predvolené 0…27648 → 0…100 (Siemens AI).
| # | DEC | HEX | Znak | Názov / ASCII |
|---|
Každý bajt = 1 znak (Latin-1 / PLC). Riadiace znaky majú názov (LF, CR, STX…). Znaky mimo 0–255 → ?
Zadaj Od / Do / Čas → dostaneš jednotky za sekundu a za minútu.
Siemens-like: P = Kp·e, I += Kp/Ti·e·dt, D = Kp·Td·Δe/dt. Tlačidlo „1 scan“ posunie integrátor o jeden cyklus.
Modbus RTU: poly 0xA001, init 0xFFFF. Do rámca sa CRC posiela low-byte first.
Klikni na bit (31 → 0) pre toggle. Unsigned 32-bit.
Klasická trojčlenka: A/B = C/D. Zadaj A, B a C — D sa dopočíta na 5 desatinných miest.
D = B × C / A
Príklad: ak 4 patrí k 20, tak 7 patrí k D → D = 7 × 20 / 4.
3- a 4-vodič: ideálna kompenzácia odporu prívodov. 2-vodič pripočíta 2× odpor jedného prívodu.
Referencia dátových typov Siemens TIA Portal / STEP 7 — S7-300/400, S7-1200 a S7-1500.
X = podporované, — = nie. Porovnanie podľa rady CPU.
| Dátový typ | S7-300/400 | S7-1200 | S7-1500 |
|---|---|---|---|
| BOOL | X | X | X |
| BYTE | X | X | X |
| WORD | X | X | X |
| DWORD | X | X | X |
| LWORD | — | — | X |
| Dátový typ | S7-300/400 | S7-1200 | S7-1500 |
|---|---|---|---|
| SINT | — | X | X |
| INT | X | X | X |
| DINT | X | X | X |
| USINT | — | X | X |
| UINT | — | X | X |
| UDINT | — | X | X |
| LINT | — | — | X |
| ULINT | — | — | X |
| Dátový typ | S7-300/400 | S7-1200 | S7-1500 |
|---|---|---|---|
| REAL | X | X | X |
| LREAL | — | X | X |
| Dátový typ | S7-300/400 | S7-1200 | S7-1500 |
|---|---|---|---|
| S5TIME | X | — | X |
| TIME | X | X | X |
| LTIME | — | — | X |
| Dátový typ | S7-300/400 | S7-1200 | S7-1500 |
|---|---|---|---|
| DATE | X | X | X |
| TIME_OF_DAY (TOD) | X | X | X |
| LTOD (LTIME_OF_DAY) | — | — | X |
| DT (DATE_AND_TIME) | X | — | X |
| LDT | — | — | X |
| DTL | — | X | X |
| Dátový typ | S7-300/400 | S7-1200 | S7-1500 |
|---|---|---|---|
| CHAR | X | X | X |
| WCHAR | — | X | X |
| STRING | X | X | X |
| WSTRING | — | X | X |
| Dátový typ | S7-300/400 | S7-1200 | S7-1500 |
|---|---|---|---|
| PLC data type (UDT) | X | X | X |
| Named value (NVT) | — | — | X |
| STRUCT | X | X | X |
| Dátový typ | S7-300/400 | S7-1200 | S7-1500 |
|---|---|---|---|
| References | — | — | X |
| VARIANT | — | X | X |
| POINTER | X | — | X |
| ANY | X | — | X |
Celé čísla (U = unsigned, S = short, D = double)
| Dátový typ | Bity | Rozsah | Príklady konštánt | Príklady adries |
|---|---|---|---|---|
| USInt | 8 | 0 … 255 | 78, 2#01001110 | MB0, DB1.DBB4, Tag_name |
| SInt | 8 | −128 … 127 | +50, 16#50 | |
| UInt | 16 | 0 … 65 535 | 65295, 0 | MW2, DB1.DBW2, Tag_name |
| Int | 16 | −32 768 … 32 767 | 30000, +30000 | |
| UDInt | 32 | 0 … 4 294 967 295 | 4042322160 | MD6, DB1.DBD8, Tag_name |
| DInt | 32 | −2 147 483 648 … 2 147 483 647 | −2131754992 |
Byte, Word a DWord — zápisy a rozsahy (oddeľovač _ zvyšuje čitateľnosť)
| Dátový typ | Bity | Zápis | Rozsah | Príklad | Príklady adries |
|---|---|---|---|---|---|
| Byte | 8 | Binary | 2#0 … 2#1111_1111 | 2#1000_1001 | IB2, MB10, DB1.DBB4, Tag_name |
| Unsigned | 0 … 255 | 15 | |||
| Signed | −128 … 127 | −63 | |||
| Octal | 8#0 … 8#377 | 8#17 | |||
| Hex | B#16#0 … B#16#FF 16#0 … 16#FF |
B#16#F, 16#F | |||
| Word | 16 | Binary | 2#0 … 2#1111_1111_1111_1111 | 2#1101_0010_1001_0110 | MW10, DB1.DBW2, Tag_name |
| Unsigned | 0 … 65 535 | 61680 | |||
| Signed | −32 768 … 32 767 | 72 | |||
| Octal | 8#0 … 8#177_777 | 8#170_362 | |||
| Hex | W#16#0 … W#16#FFFF 16#0 … 16#FFFF |
W#16#F1C0, 16#A67B | |||
| DWord | 32 | Binary | 2#0 … 2#1111_1111_…_1111 | 2#1101_0100_1111_1110_… | MD10, DB1.DBD8, Tag_name |
| Unsigned | 0 … 4 294 967 295 | 15 793 935 | |||
| Signed | −2 147 483 648 … 2 147 483 647 | −400000 | |||
| Octal | 8#0 … 8#37_777_777_777 | 8#74_177_417 | |||
| Hex | DW#16#0000_0000 … DW#16#FFFF_FFFF 16#0000_0000 … 16#FFFF_FFFF |
DW#16#20_F30A, 16#B_01F6 |
Floating-point (L = Long)
| Dátový typ | Bity | Rozsah | Príklady konštánt | Príklady adries |
|---|---|---|---|---|
| Real | 32 | −3.402823e+38 … −1.175495e−38 ±0 +1.175495e−38 … +3.402823e+38 |
123.456, −3.4, 1.0e−5 | MD100, DB1.DBD8, Tag_name |
| LReal | 64 | −1.7976931348623158e+308 … −2.2250738585072014e−308 ±0 +2.2250738585072014e−308 … +1.7976931348623158e+308 |
12345.123456789e40, 1.2E+40 | DB_name.var_name Bez priameho adresovania — len v rozhraní OB/FB/FC. |
BCD nie je samostatný dátový typ, ale formát je podporovaný
| Formát | Bity | Rozsah | Príklady konštánt |
|---|---|---|---|
| BCD16 | 16 | −999 … 999 | 123, −123 |
| BCD32 | 32 | −9 999 999 … 9 999 999 | 1234567, −1234567 |
Časové a dátumové typy
| Dátový typ | Veľkosť | Rozsah | Príklady konštánt |
|---|---|---|---|
| Time | 32 bit | T#−24d_20h_31m_23s_648ms … T#24d_20h_31m_23s_647ms −2 147 483 648 ms … +2 147 483 647 ms |
T#5m_30s T#1d_2h_15m_30s_45ms TIME#10d20h30m20s630ms |
| Date | 16 bit | D#1990-1-1 … D#2168-12-31 | D#2009-12-31 DATE#2009-12-31 2009-12-31 |
| Time_of_Day | 32 bit | TOD#0:0:0.0 … TOD#23:59:59.999 | TOD#10:20:30.400 TIME_OF_DAY#10:20:30.400 23:10:1 |
| DTL | 12 byte | DTL#1970-01-01-00:00:00.0 … DTL#2262-04-11-23:47:16.854775807 |
DTL#2008-12-16-20:30:20.250 |
Formát: Year-Month-Day:Hour:Minute:Second.Nanoseconds
| Veľkosť | Rozsah | Príklad |
|---|---|---|
| 12 byte | Min. DTL#1970-01-01-00:00:00.0 Max. DTL#2262-04-11-23:47:16.854775807 STEP 7 môže povoliť aj väčšie hodnoty; toto je odporúčané maximum. |
DTL#2008-12-16-20:30:20.250 |
Deň v týždni (byte 4) je v štruktúre, ale neukazuje sa v štandardnom zápise DTL#…
| Byte | Komponent | Dátový typ | Rozsah |
|---|---|---|---|
| 0, 1 | Rok | UINT | 1970 … 2262 |
| 2 | Mesiac | USINT | 1 … 12 |
| 3 | Deň | USINT | 1 … 31 |
| 4 | Deň v týždni | USINT | 1 (nedeľa) … 7 (sobota) |
| 5 | Hodina | USINT | 0 … 23 |
| 6 | Minúta | USINT | 0 … 59 |
| 7 | Sekunda | USINT | 0 … 59 |
| 8, 9, 10, 11 | Nanosekundy | UDINT | 0 … 999 999 999 |
Znaky a reťazce (Char / WChar / String / WString)
| Dátový typ | Veľkosť | Rozsah | Príklady konštánt |
|---|---|---|---|
| Char | 8 bit | 16#00 … 16#FF | 'A', 't', '@', 'ä', 'Σ' |
| WChar | 16 bit | 16#0000 … 16#FFFF | 'A', 't', '@', 'ä', 'Σ' Aj ázijské, cyrilika a ďalšie znaky |
| String | n + 2 byte | n = 0 … 254 byte | "ABC" |
| WString | n + 2 word | n = 0 … 65 534 word | "ä123@XYZ.COM" |
Preferujem najprv e-mail — zvyčajne odpoviem do 24 hodín.
Pred zobrazením e-mailu a telefónu potvrďte, že nie ste robot.
Kliknutím skopírujete
Preferujem prvý kontakt e-mailom, s odpoveďou do 24 hodín.