Если вы инкапсулируете весь свой коммуникационный код в subVI или наборе subVI, отдельно от кода, который выполняет преобразование и отображение, вы можете легко заменить тестовый код и тестовые данные на реальные данные датчика. Вы можете написать subVI, который генерирует тестовые данные и позже заменить его реальным subVI связи с датчиком, или вы можете использовать структуру case в subVI, чтобы выбирать между обменом данными с реальным датчиком и просто выводом тестовых данных (что, как предлагает Морей , вы могли читать из файла, чтобы вы могли легко его изменить).
Я бы посоветовал вам написать отдельные subVI для открытия связи с датчиком, получения от него точки данных и закрытия порта связи, когда вы закончите (хотя вы, вероятно, можете просто использовать для этого функцию закрытия последовательного порта или VISA). Объедините эти ВП в цепочку, используя порт связи (также известный как сеанс VISA) и провода ошибок. «Открытый» ВП может принимать входные данные, определяющие, будут ли использоваться реальные / смоделированные данные, и сохранять этот выбор в глобальной переменной (или функциональном глобальном ВП), которую ВП «получить данные» проверяет каждый раз при вызове.
Предложение glglgl об отправке смоделированных данных из другого последовательного порта также хорошо; все, что вам нужно здесь сделать, это использовать функции последовательной отправки и получения в каком-то цикле, чтобы делать то же самое, что и настоящий датчик, с точки зрения приема команд и отправки вывода обратно. Это имеет то преимущество, что вам не нужно вносить какие-либо изменения в вашу основную программу, которая должна работать точно так же, независимо от того, подключена ли она к реальному датчику или к программе моделирования. Однако проблемы с последовательной связью в реальном мире часто возникают из-за приборов или устройств, которые не выполняют в точности то, что их спецификации заявляют, поэтому просто потому, что ваша программа отлично работает с вашим моделированием, не гарантирует, что она будет отлично работать с настоящий датчик, если настоящий датчик делает что-то, чего вы не ожидали :-)
person
nekomatic
schedule
22.05.2012