String और Text
डेटा ऑपरेशन्स
टेक्स्ट डेटा को एक प्रो की तरह प्रोसेस करें। डायनेमिक लेबल जनरेशन से लेकर प्रोटोकॉल पार्सिंग तक, अपने PLC में हर string manipulation निर्देश में महारत हासिल करें।
PLC में strings को प्रोसेस क्यों करें?
जबकि PLCs मुख्य रूप से बाइनरी और न्यूमेरिकल लॉजिक के लिए डिज़ाइन किए गए हैं, मॉडर्न इंडस्ट्रियल इंटरफेस के लिए string ऑपरेशन्स आवश्यक हैं। वे HMIs के लिए डायनेमिक मैसेज जेनरेट करने, स्कैनर से बारकोड या QR कोड पार्स करने और फॉर्मेटेड टेक्स्ट प्रोटोकॉल के माध्यम से IT सिस्टम के साथ संवाद करने की अनुमति देते हैं।
TIA Portal STRING (ASCII) और WSTRING (Unicode) प्रकारों को मैनेज करने के लिए निर्देशों का एक मजबूत सेट प्रदान करता है, जिससे यह सुनिश्चित होता है कि आपकी मशीन किसी भी भाषा में स्पष्ट रूप से संवाद कर सके।
Concatenation और Insertion
डायनेमिक मैसेज बनाना
CONCAT — Strings को जोड़ना
CONCATयह क्या करता है
दो या दो से अधिक strings को एक ही आउटपुट string में मिलाता है। सोर्स strings को उसी क्रम में जोड़ा जाता है जिसमें उन्हें परिभाषित किया गया है।
कब उपयोग करें
एक प्रीफिक्स और वेरिएबल नाम से पूरा स्टेटस मैसेज बनाना, या लॉगिंग के लिए CSV लाइन बनाना।
प्रो टिप्स
ट्रंकेशन से बचने के लिए हमेशा अपने डेस्टिनेशन string की अधिकतम लंबाई की जांच करें।
SCL में, यदि समर्थित हो तो आप सरल कॉन्केटिनेशन के लिए '+' ऑपरेटर का उपयोग कर सकते हैं।
पठनीय HMI आउटपुट सुनिश्चित करने के लिए CONCAT को स्पेस कैरेक्टर्स के साथ मिलाएं।
INSERT — String में डालना
INSERTयह क्या करता है
एक निर्दिष्ट कैरेक्टर स्थिति (P) पर मौजूदा string में एक सबस्ट्रिंग डालता है।
कब उपयोग करें
एक डायनेमिक टेक्स्ट टेम्पलेट के अंदर यूनिट सिंबल (जैसे 'kg' या '°C') जोड़ना।
प्रो टिप्स
यदि P 0 है, तो string शुरुआत में डाली जाती है।
यदि P string की लंबाई से अधिक है, तो सबस्ट्रिंग अंत में जोड़ी जाती है।
डेट/टाइम strings के डायनेमिक फ़ॉर्मेटिंग के लिए उपयोगी।
Search और Modify
टेक्स्ट डेटा का विश्लेषण
FIND — सबस्ट्रिंग खोजना
FINDयह क्या करता है
एक string के भीतर एक विशिष्ट पैटर्न खोजता है और शुरुआती स्थिति लौटाता है। नहीं मिलने पर 0 लौटाता है।
कब उपयोग करें
स्कैनर इनपुट string में डेलिमिटर (जैसे कोमा या सेमीकोलन) का पता लगाना।
प्रो टिप्स
खोज केस-सेंसिटिव है। 'Error', 'error' से अलग है।
डेटा निकालने के लिए MID निर्देश में सीधे लौटाई गई स्थिति का उपयोग करें।
एक लूप में, आप शुरुआती string को अपडेट करके कई बार होने वाली घटनाओं को खोज सकते हैं।
REPLACE — भाग बदलें
REPLACEयह क्या करता है
स्थिति P से शुरू होने वाले कैरेक्टर्स की एक विशिष्ट संख्या को एक नई सबस्ट्रिंग के साथ बदल देता है।
कब उपयोग करें
पूरे मैसेज को फिर से बनाए बिना एक स्थिर मैसेज के वेरिएबल हिस्से को अपडेट करना।
प्रो टिप्स
नए जोड़े बिना कैरेक्टर्स को हटाने के लिए, रिप्लेसमेंट के रूप में एक खाली string का उपयोग करें।
आमतौर पर {val} जैसे प्लेसहोल्डर्स को वास्तविक वैल्यूज के साथ बदलने के लिए उपयोग किया जाता है।
टेक्स्ट के बाकी हिस्सों को अप्रत्याशित रूप से शिफ्ट होने से बचाने के लिए कैरेक्टर काउंट के साथ सावधान रहें।
Conversion और Extraction
नंबर्स और टेक्स्ट को जोड़ना
VAL_STRG / STRG_VAL — कंवर्जन
VAL_STRGयह क्या करता है
न्यूमेरिकल वैल्यूज (Int, Real) को String (VAL_STRG) में बदलता है या String (STRG_VAL) से नंबर पार्स करता है।
कब उपयोग करें
कस्टम टेक्स्ट मैसेज में Real टेम्परेचर प्रदर्शित करना या सीरियल पोर्ट इनपुट को Integer में बदलना।
प्रो टिप्स
डेसीमल और साइन व्यवहार को परिभाषित करने के लिए FORMAT इनपुट को कॉन्फ़िगर करें।
STRG_VAL डेसीमल सेपरेटर (डॉट बनाम कोमा) के प्रति संवेदनशील है।
यह सुनिश्चित करने के लिए स्टेटस आउटपुट की जांच करें कि कंवर्जन सफल रहा।
LEFT / RIGHT / MID — एक्सट्रैक्ट
MIDयह क्या करता है
बाएं, दाएं या किसी विशिष्ट मध्य स्थिति (MID) से string का एक हिस्सा निकालता है।
कब उपयोग करें
बारकोड से प्रीफिक्स प्राप्त करना या ब्रैकेट के बीच की वैल्यू निकालना।
प्रो टिप्स
MID(IN, L, P) स्थिति P से शुरू होकर L कैरेक्टर्स निकालता है।
यदि L उपलब्ध कैरेक्टर्स से अधिक है, तो निर्देश अंत तक सब कुछ लौटाता है।
थर्ड-पार्टी सीरियल प्रोटोकॉल से डेटा 'अनबॉक्सिंग' के लिए आवश्यक।
STRING बनाम WSTRING
सही टेक्स्ट फॉर्मेट चुनना
| प्रॉपर्टी | STRING | WSTRING |
|---|---|---|
| एन्कोडिंग | ASCII / Extended ASCII | Unicode (UTF-16) |
| प्रति कैरेक्टर बाइट्स | 1 बाइट | 2 बाइट्स |
| अधिकतम लंबाई | 254 कैरेक्टर्स | 16382 कैरेक्टर्स |
| उपयोग | स्टैंडर्ड वेस्टर्न टेक्स्ट | इंटरनेशनल / विशेष कैरेक्टर्स |
| मेमोरी प्रभाव | कम | उच्च (दोगुना) |
| SCL प्रीफिक्स | '' (सिंगल कोट्स) | W#'' |
अक्सर पूछे जाने वाले प्रश्न
TIA Portal में STRING की अधिकतम लंबाई क्या है?
एक स्टैंडर्ड STRING 254 कैरेक्टर्स तक रख सकता है। यदि आपको अधिक की आवश्यकता है, तो आपको WSTRING टाइप का उपयोग करना चाहिए जो S7-1500 पर 16,382 कैरेक्टर्स तक हैंडल कर सकता है।
मेरा कंवर्जन VAL_STRG विफल क्यों हो जाता है?
सबसे आम कारण अपर्याप्त डेस्टिनेशन string लंबाई या FORMAT पैरामीटर में बेमेल (उदाहरण के लिए, एक छोटी STRING में बड़ी REAL वैल्यू फिट करने की कोशिश करना) है।
क्या मैं ऑप्टिमाइज़्ड Data Blocks में strings का उपयोग कर सकता हूँ?
हाँ, ऑप्टिमाइज़्ड DBs में strings पूरी तरह से समर्थित हैं। हालाँकि, याद रखें कि वे हमेशा मेमोरी में अपने अधिकतम परिभाषित आकार के साथ 2 बाइट्स लेंथ हेडर के लिए घेरते हैं।
SCL में दो strings की तुलना कैसे करें?
आप स्टैंडर्ड कंपैरिजन ऑपरेटरों (=, <>, <, >) का उपयोग कर सकते हैं। TIA Portal उनके ASCII/Unicode वैल्यूज के आधार पर कैरेक्टर दर कैरेक्टर strings की तुलना करता है।