TSMaster позволяет передавать системные переменные как параметры диагностического модуля — это значительно расширяет обмен данными между диагностикой и другими модулями. Разбираем типовые сценарии на практике.
Ключевые слова: TSMaster, системные переменные, диагностика, Panel, Graphic, регистрация сервиса как переменной.
1. Системные переменные как параметры
Системные переменные обеспечивают обмен данными между внутренними и внешними модулями программы. Передача системных переменных как параметров в диагностический модуль существенно расширяет его возможности по взаимодействию с другими модулями. Покажем работу на типовых сценариях.
Сначала создайте в системе две системные переменные — VIN_Code и Voltage (рис. 1-1). Переменная VIN_Code — строкового типа (рис. 1-2), Voltage — типа Double (рис. 1-3).



Свяжите системные переменные с Panel и Graphic (рис. 1-4).

[1] Задайте значение напряжения Voltage в Panel и запишите его в ЭБУ через диагностику (рис. 1-5).

[2] Задайте VIN-код в Panel и запишите его в ЭБУ через диагностику (рис. 1-6).

[3] Прочитайте внутреннее напряжение ЭБУ через диагностику и отобразите его в Graphic (рис. 1-7).

Примечание: чтобы прочитанное значение попало в системную переменную, его нужно задать вручную — только после этого оно синхронизируется с системной переменной.
[4] Прочитайте VIN-код ЭБУ через диагностику и отобразите его в Panel (рис. 1-8).

2. Привязка системной переменной к сервису консоли
Настроенные в диагностической консоли сервисы запускаются двойным щелчком в консоли. Чтобы запускать диагностическую команду из интерфейса Panel, понадобится системная переменная. Порядок действий:
- Шаг 1. В окне BasicConfig выберите целевой сервис и через правую кнопку мыши зарегистрируйте его как системную переменную (рис. 2-1). После регистрации иконка сервиса меняется — признак сервиса с зарегистрированной системной переменной (рис. 2-2).
- Шаг 2. После регистрации переменная появляется в менеджере системных переменных (рис. 2-3).
- Шаг 3. Добавьте на Panel кнопку и свяжите её с этой системной переменной (рис. 2-4).
- Шаг 4. Запустите программу и нажмите тестовую кнопку на Panel: диагностический модуль выполнит сервис DiagnosticSessionControl (рис. 2-5).





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