Инструкции TIA Portal

Строки и текст
Операции с данными

Обрабатывайте текстовые данные как профессионал. От динамической генерации этикеток до парсинга протоколов, освойте каждую инструкцию манипуляции со строками в вашем PLC.

Зачем обрабатывать строки в PLC?

Хотя PLC в первую очередь предназначены для бинарной и числовой логики, операции со строками необходимы для современных промышленных интерфейсов. Они позволяют генерировать динамические сообщения для HMI, парсить штрих-коды или QR-коды со сканеров и взаимодействовать с ИТ-системами через протоколы форматированного текста.

TIA Portal предлагает надежный набор инструкций для управления типами STRING (ASCII) и WSTRING (Unicode), гарантируя, что ваша машина сможет четко общаться на любом языке.

Конкатенация и вставка

Создание динамических сообщений

CONCAT — Конкатенация строк

CONCAT

Что она делает

Объединяет две или более строки в одну выходную строку. Исходные строки добавляются в том порядке, в котором они определены.

Когда использовать

Создание полного сообщения о состоянии из префикса и имени переменной или формирование строки CSV для логирования.

Советы экспертов

Всегда проверяйте максимальную длину целевой строки, чтобы избежать усечения данных.

В SCL вы можете использовать оператор '+' для более простой конкатенации, если это поддерживается.

Комбинируйте CONCAT с пробелами, чтобы обеспечить читаемость вывода на HMI.

INSERT — Вставка в строку

INSERT

Что она делает

Вставляет подстроку в существующую строку в указанной позиции символа (P).

Когда использовать

Добавление единиц измерения (например, 'kg' или '°C') внутрь динамического текстового шаблона.

Советы экспертов

Если P равно 0, подстрока вставляется в начало.

Если P больше длины строки, подстрока добавляется в конец.

Полезно для динамического форматирования строк даты/времени.

Поиск и модификация

Анализ текстовых данных

FIND — Поиск подстроки

FIND

Что она делает

Ищет определенный шаблон внутри строки и возвращает начальную позицию. Возвращает 0, если шаблон не найден.

Когда использовать

Поиск разделителей (например, запятых или точек с запятой) в строке ввода со сканера.

Советы экспертов

Поиск чувствителен к регистру. 'Error' отличается от 'error'.

Используйте возвращенную позицию напрямую в инструкции MID для извлечения данных.

В цикле можно найти несколько вхождений, обновляя исходную строку.

REPLACE — Замена части

REPLACE

Что она делает

Заменяет определенное количество символов, начиная с позиции P, новой подстрокой.

Когда использовать

Обновление переменной части статического сообщения без пересборки всей строки.

Советы экспертов

Чтобы удалить символы, не добавляя новых, используйте пустую строку в качестве замены.

Часто используется для замены плейсхолдеров типа {val} реальными значениями.

Будьте осторожны с количеством символов, чтобы избежать неожиданного сдвига остальной части текста.

Преобразование и извлечение

Связь чисел и текста

VAL_STRG / STRG_VAL — Преобразование

VAL_STRG

Что она делает

Преобразует числовые значения (Int, Real) в String (VAL_STRG) или извлекает числа из String (STRG_VAL).

Когда использовать

Отображение температуры Real в пользовательском текстовом сообщении или преобразование ввода с последовательного порта в Integer.

Советы экспертов

Настройте вход FORMAT, чтобы определить десятичные знаки и поведение знака.

STRG_VAL чувствителен к десятичному разделителю (точка или запятая).

Проверяйте статус выхода, чтобы убедиться, что преобразование прошло успешно.

LEFT / RIGHT / MID — Извлечение

MID

Что она делает

Извлекает часть строки слева, справа или из определенной средней позиции (MID).

Когда использовать

Получение префикса из штрих-кода или извлечение значения, находящегося в скобках.

Советы экспертов

MID(IN, L, P) извлекает L символов, начиная с позиции P.

Если L превышает количество доступных символов, инструкция возвращает все до конца строки.

Необходимо для извлечения данных из сторонних протоколов последовательной связи.

STRING против WSTRING

Выбор правильного текстового формата

СвойствоSTRINGWSTRING
КодировкаASCII / Расширенный ASCIIUnicode (UTF-16)
Байт на символ1 байт2 байта
Макс. длина254 символа16382 символа
ИспользованиеСтандартный западный текстМеждународные / спецсимволы
Влияние на памятьНизкоеВысокое (двойное)
Префикс SCL'' (Одинарные кавычки)W#''

Часто задаваемые вопросы

Какова максимальная длина STRING в TIA Portal?

Стандартная STRING может содержать до 254 символов. Если вам нужно больше, вы должны использовать тип WSTRING, который может обрабатывать до 16 382 символов на S7-1500.

Почему мое преобразование VAL_STRG завершается ошибкой?

Самая частая причина — недостаточная длина целевой строки или несоответствие в параметре FORMAT (например, попытка уместить большое число REAL в маленькую STRING).

Можно ли использовать строки в оптимизированных блоках данных?

Да, строки полностью поддерживаются в оптимизированных DB. Однако помните, что они всегда занимают в памяти свой максимально определенный размер плюс 2 байта для заголовков длины.

Как сравнивать две строки в SCL?

Вы можете использовать стандартные операторы сравнения (=, <>, <, >). TIA Portal сравнивает строки символ за символом на основе их значений ASCII/Unicode.

Упростите обработку текста

Сложный парсинг или генерация этикеток? T-IA Connect автоматизирует создание ваших блоков манипуляции со строками.