Sensor.GetVariableData
Вызов: GAP.Sensor.GetVariableData(modbusName, devNumber, variableName)
Статус: класс
GAP.Sensorотсутствует в текущих исходниках GAP. Вызов сохранён в комментариях шаблонов МУПС/МОПС (input_mups.jsm,input_mops.jsm). Требуется восстановление в GAP или замена логики.
Возвращает строковое значение поля variableName для датчика с номером devNumber на Modbus-устройстве modbusName.
Поиск выполняется в Parser.ModbusDevsModels: сначала находится устройство по ModbusName, затем запись в SensorDictData с ключом devNumber, совпадающим с devNumber. Значение читается по имени переменной (TAG, Type и т.д.).
Результат кэшируется в памяти на 30 секунд (ключ: modbusName|devNumber|variableName).
Ошибки и сообщения
Section titled “Ошибки и сообщения”- Устройство не найдено: возвращается строка
Не найдено устройство с именем = {modbusName}. - Датчик не найден: возвращается
Не найдено датчика с номером {devNumber}. - Неизвестное имя поля: возвращается
Некорректная переменная = {variableName}(черезGetValueOrDefault).
Примеры
Section titled “Примеры”-
Вызов:
GAP.Sensor.GetVariableData("MbTcpPlc_1", "3", "TAG")- Результат: тег датчика №3 на указанном Modbus-устройстве (например,
P088DI001).
- Результат: тег датчика №3 на указанном Modbus-устройстве (например,
-
Вызов:
GAP.Sensor.GetVariableData("[modbus.name]", "1", "C6")- Результат: значение поля
C6для датчика №1 (типичный пример в шаблонах POU МУПС/МОПС:input_mups.jsm,input_mops.jsm).
- Результат: значение поля
-
Вызов:
GAP.Sensor.GetVariableData([modbusName], [devNumber], "Type")- Результат: значение поля
Typeдля датчика; аргументы задаются внешними переменными модели.
- Результат: значение поля