В этом разделе содержатся советы по развертыванию автономных приложений с помощью MATLAB ® Compiler™ (deploytool или mcc) и Instrument Control Toolbox™. Эти советы см. при создании автономных приложений, использующих функциональные возможности инструментария управления приборами.
Идентификаторы устройств/имена ресурсов не должны быть жестко закодированы, поскольку имена ресурсов приборов могут отличаться на других машинах.
Лучше всего использовать instrhwinfo и запросите выходные данные возврата в коде MATLAB, который требуется развернуть.
Для прямой связи на основе интерфейса с использованием I2C, SPI, GPIB и VISA установите все необходимые драйверы сторонних производителей отдельно от развернутого приложения.
В дополнение к коду MATLAB развернутый автономный пакет приложений должен включать файлы, необходимые для приложения:
Включите драйвер прибора MATLAB (MDD-файл) в автономный проект приложения из deploytool или путем передачи -a флаг для mcc при компиляции кода MATLAB.
IVI-C
Включите в развернутый автономный пакет приложений следующее:
Драйвер прибора MATLAB (файл MDD)
Для 64-разрядных приложений MATLAB prototype и thunk files
Для 32-разрядных приложений файл прототипа MATLAB
Расположение сгенерированных файлов прототипа и thunk может быть получено из результата выполнения:
sprintf('%s',[tempdir 'ICTDeploymentFiles'])На компьютере, где развертывается автономное приложение:
Все драйверы и зависимости сторонних производителей должны устанавливаться отдельно от развернутого автономного приложения.
Чтобы сократить время выполнения неизвестных файлов, установите в систему развертывания ту же версию драйвера IVI-C, что и в системе разработки.
Чтобы сократить время выполнения неизвестных файлов, установите в систему развертывания ту же версию библиотек драйверов VISA, что и в системе разработки.
Примечание
Для устранения неполадок установки драйверов поставщика рекомендуется, чтобы развернутое приложение обеспечивало способ моделирования подключения к оборудованию путем создания экземпляра драйвера с помощью 'optionstring', 'simulate=true' в качестве аргументов для icdevice. Это поможет сузить первопричину проблем с развертыванием до проблем с установкой драйверов или оборудования поставщика.
Интерфейсы быстрого управления
Если для осциллографа быстрого управления не используются драйверы на основе SCPI по умолчанию ('tektronix'и генератор функций быстрого управления ('Agilent332x0_SCPI') и вместо этого используете драйвер IVI-C, включите следующее в развернутый автономный пакет приложений:
Для 64-разрядных приложений, прототипа MATLAB и thunk-файлов для IVIScope или IVIFGen
Для 32-разрядных приложений файл прототипа MATLAB для IVIScope или IVIFGen
Расположение сгенерированных файлов прототипа и thunk может быть получено из результата выполнения:
sprintf('%s',[tempdir 'ICTDeploymentFiles'])На компьютере, где развертывается автономное приложение:
При необходимости все драйверы и зависимости сторонних производителей должны устанавливаться отдельно от развернутого автономного приложения.
Чтобы сократить время выполнения неизвестных файлов, установите в систему развертывания ту же версию драйвера IVI-C, что и в системе разработки.
Чтобы сократить время выполнения неизвестных файлов, установите в систему развертывания ту же версию библиотек драйверов VISA, что и в системе разработки.
Общий MDD
Для использования с общим MDD включите следующие компоненты в развернутый автономный пакет приложений:
Драйвер прибора MATLAB (файл MDD)
Если MDD использует LOADLIBRARY для взаимодействия с общей библиотекой C, выполните следующие действия.
Для 64-разрядных приложений, прототипа MATLAB и thunk-файлов для общей библиотеки C
Для 32-разрядных приложений файл прототипа MATLAB для общей библиотеки C
С помощью команды LOADLIBRARY на компьютере разработки (с поддерживаемым компилятором C) можно создать прототип MATLAB и thunk-файлы для общей библиотеки C.
На компьютере, где развертывается автономное приложение:
При необходимости все драйверы и зависимости сторонних производителей должны устанавливаться отдельно от развернутого автономного приложения.
Дополнительные сведения о развертывании автономных приложений, использующих функциональность, установленную в качестве пакета поддержки:
web(fullfile(docroot, 'compiler/manage-support-packages.html'))