Nizi in besedilo
Operacije s podatki
Obdelujte besedilne podatke kot profesionalec. Od dinamičnega generiranja oznak do razčlenjevanja protokolov, osvojite vsako navodilo za delo z nizi v vašem PLC.
Zakaj obdelovati nize v PLC?
Čeprav so PLC-ji prvenstveno zasnovani za binarno in numerično logiko, so operacije z nizi bistvene za sodobne industrijske vmesnike. Omogočajo ustvarjanje dinamičnih sporočil za HMI-je, razčlenjevanje črtnih kod ali QR kod iz skenerjev in komunikacijo z IT sistemi preko formatiranih besedilnih protokolov.
TIA Portal ponuja nabor robustnih navodil za upravljanje tipov STRING (ASCII) in WSTRING (Unicode), kar zagotavlja, da lahko vaš stroj jasno komunicira v katerem koli jeziku.
Združevanje in vstavljanje
Gradnja dinamičnih sporočil
CONCAT — Združevanje nizov
CONCATKaj naredi
Združi dva ali več nizov v en izhodni niz. Viri se dodajajo v vrstnem redu, kot so definirani.
Kdaj uporabiti
Ustvarjanje celotnega statusnega sporočila iz predpone in imena spremenljivke ali gradnja CSV vrstice za beleženje podatkov.
Profesionalni nasveti
Vedno preverite največjo dolžino ciljnega niza, da preprečite krnjenje.
V SCL lahko uporabite operator '+' za preprostejše združevanje, če je podprto.
Kombinirajte CONCAT s presledki, da zagotovite berljiv HMI izhod.
INSERT — Vstavljanje v niz
INSERTKaj naredi
Vstavi podniz v obstoječi niz na določenem mestu (P).
Kdaj uporabiti
Dodajanje enot (kot so 'kg' ali '°C') znotraj dinamične besedilne predloge.
Profesionalni nasveti
Če je P enak 0, se niz vstavi na začetek.
Če je P večji od dolžine niza, se podniz doda na konec.
Uporabno za dinamično oblikovanje nizov datuma/časa.
Iskanje in spreminjanje
Analiziranje besedilnih podatkov
FIND — Iskanje podniza
FINDKaj naredi
Išče določen vzorec znotraj niza in vrne začetni položaj. Vrne 0, če ni najden.
Kdaj uporabiti
Lociranje ločil (kot so vejice ali podpičja) v vhodnem nizu skenerja.
Profesionalni nasveti
Iskanje razlikuje med malimi in velikimi črkami. 'Error' je drugačen kot 'error'.
Uporabite vrnjeni položaj neposredno v MID navodilu za ekstrakcijo podatkov.
V zanki lahko najdete več pojavitev s posodabljanjem začetnega niza.
REPLACE — Zamenjava dela
REPLACEKaj naredi
Zamenja določeno število znakov, ki se začnejo na položaju P, z novim podnizom.
Kdaj uporabiti
Posodabljanje spremenljivega dela statičnega sporočila brez ponovne gradnje celotnega niza.
Profesionalni nasveti
Za brisanje znakov brez dodajanja novih uporabite prazen niz kot zamenjavo.
Pogosto se uporablja za zamenjavo rezerviranih mest, kot je {val}, z dejanskimi vrednostmi.
Bodite previdni pri številu znakov, da nevede ne premaknete preostalega besedila.
Pretvorba in ekstrakcija
Povezovanje števil in besedila
VAL_STRG / STRG_VAL — Pretvorba
VAL_STRGKaj naredi
Pretvori numerične vrednosti (Int, Real) v String (VAL_STRG) ali razčleni števila iz String (STRG_VAL).
Kdaj uporabiti
Prikazovanje Real temperature v poljubnem besedilnem sporočilu ali pretvorba vhoda serijskih vrat v Integer.
Profesionalni nasveti
Konfigurirajte vhod FORMAT, da določite decimalke in obnašanje predznaka.
STRG_VAL je občutljiv na decimalno ločilo (pika proti vejici).
Preverite statusni izhod, da zagotovite uspešnost pretvorbe.
LEFT / RIGHT / MID — Ekstrakcija
MIDKaj naredi
Ekstrahira del niza z leve, desne ali specifičnega srednjega položaja (MID).
Kdaj uporabiti
Pridobivanje predpone iz črtne kode ali ekstrakcija vrednosti med oklepaji.
Profesionalni nasveti
MID(IN, L, P) ekstrahira L znakov, ki se začnejo na položaju P.
Če L presega število znakov na voljo, navodilo vrne vse do konca.
Bistveno za 'razpakiranje' podatkov iz serijskih protokolov tretjih oseb.
STRING proti WSTRING
Izbira prave oblike besedila
| Lastnost | STRING | WSTRING |
|---|---|---|
| Kodiranje | ASCII / Razširjeni ASCII | Unicode (UTF-16) |
| Bajtov na znak | 1 Bajt | 2 Bajta |
| Največja dolžina | 254 Znakov | 16382 Znakov |
| Uporaba | Standardno zahodno besedilo | Mednarodni / Posebni znaki |
| Vpliv na pomnilnik | Nizek | Visok (Dvojen) |
| SCL Predpona | '' (Enojni narekovaji) | W#'' |
Pogosta vprašanja
Kakšna je največja dolžina STRING v TIA Portal?
Standardni STRING lahko vsebuje do 254 znakov. Če potrebujete več, morate uporabiti tip WSTRING, ki na S7-1500 podpira do 16.382 znakov.
Zakaj moja pretvorba VAL_STRG ne uspe?
Najpogostejši razlog je nezadostna dolžina ciljnega niza ali neujemanje parametra FORMAT (npr. poskus zapisovanja velike vrednosti REAL v kratek STRING).
Ali lahko uporabljam nize v optimiziranih podatkovnih blokih?
Da, nizi so v celoti podprti v optimiziranih DB-jih. Vendar ne pozabite, da v pomnilniku vedno zasedejo svojo največjo definirano velikost, plus 2 bajta za glavo dolžine.
Kako primerjati dva niza v SCL?
Uporabite lahko standardne primerjalne operatorje (=, <>, <, >). TIA Portal primerja nize znak za znakom na podlagi njihovih ASCII/Unicode vrednosti.