Если вы проведете поиск по запросу «Тестирование с аппаратным замыканием», то часто найдете примеры сложных систем реального времени. Эта статья от National Instruments, например, дает хорошее объяснение и фон того, что такое тестирование с аппаратным замыканием (HIL), и предоставляет пример тестирования электронных блоков управления в автомобиле. В данной статье мы сосредоточимся на более мелкой, более удобоваримой версии концепций тестирования HIL.
Для целей этой статьи мы определим тестирование с аппаратным замыканием немного иначе, чем это представлено традиционно (например, в приложениях для автомобилей). Давайте рассмотрим три различных уровня сложности при тестировании продукта.
В этой форме тестирования инженер будет тестировать устройство вручную. Это может включать в себя проверку тестовых точек на плате с помощью цифрового мультиметра, наблюдение за формами сигналов на осциллографе или ручной анализ телеметрических данных на экране компьютера. Инженер будет тестировать продукт с помощью ручного тестирования на соответствие проекту.
Эта тестовая установка выполняет те же измерения и проверки, которые обычно делает инженер, но выполняется компьютером в автоматизированном режиме. Хост-компьютер напрямую общается с приборами (например, мультиметрами, осциллографами и т.д.), анализирует телеметрию с устройства, а затем проверяет набор тестов на основе критериев, установленных инженером.
Тестирование с аппаратурой в контуре поднимает автоматизированное тестирование на новый уровень, добавляя дополнительные стимулы для имитации реального приложения. Например, испытуемое устройство (DUT) может иметь ряд датчиков, требующих возбуждения. Тестовое оборудование будет имитировать другой конец этих датчиков для возбуждения стороны датчика DUT. Другой пример может быть таким простым, как подача трафика RS-422 на приемник RS-422 на DUT. Идея заключается в том, что мы можем подавать новый стимул на DUT, считывать телеметрию с хост-компьютера и при необходимости соответствующим образом корректировать наши тесты (например, увеличивать скорость и объем трафика RS-422 после прохождения первоначального теста).
На основе приложения может быть ясно, почему кто-то может выбрать тестирование с аппаратурой в цикле вместо автоматизированного тестирования (и уж тем более ручного). Если требуется интегрировать сложную систему или системы систем с большим количеством необходимых внешних стимулов, простой автоматизированный тест не будет достаточным. Рассмотрим обычное зарядное устройство. Хотя вы могли бы симулировать источник питания, нагрузку и батарею для тестирования вашей схемы управления (физически или через программное обеспечение), более реалистичным будет использование настоящего источника питания, батареи и нагрузки для тестирования конструкции. Более того, если вы можете автоматизировать этот процесс, ваши инженеры теперь могут потратить свое время на разработку вместо тестирования.
При принятии решения о применении тестирования с аппаратурой в цикле следует учитывать следующие факторы:
После того как вы учтете эти и другие факторы, вы сможете принять решение о том, стоит ли придерживаться ручного тестирования или инвестировать в автоматизированное/тестирование с аппаратным моделированием.
Исходя из моего опыта, я нашел, что, безусловно, самым простым способом начать работу с тестированием с аппаратным моделированием будет использование универсальной тестовой платформы, такой как предлагаемая National Instruments (NI). NI предлагает универсальную аппаратно-программную платформу, которая работает по принципу подключи и работай. Вот несколько плюсов и минусов, которые стоит учитывать, рассматривая универсальную платформу:
За время, которое я потратил на работу с комплексными системами, LabVIEW был моим основным инструментом для автоматизированного тестирования, включая создание полного пайплайна непрерывной интеграции и непрерывного развертывания для проектов и VI в LabVIEW. Переходя к более мелким системам, которые требовали более простой поддержки с реальным оборудованием в цикле, я начал переходить к использованию как пользовательского, так и коммерческого оборудования с открытым исходным кодом (COTS) и скриптов на Python (используя pytest framework). Опять же, все зависит от приложения, и, как было сказано ранее, время тестирования, частота тестов и тестовое оборудование являются основными факторами, определяющими это решение.
В этой статье мы рассмотрели концепцию тестирования с оборудованием в цикле и как оно отличается от ручного и автоматизированного тестирования. Мы также рассмотрели преимущества применения тестирования с оборудованием в цикле и как оценить, действительно ли это то, что нужно пользователю. Наконец, мы обсудили некоторые способы начала работы. Хотя тестирование с оборудованием в цикле может быть не для каждого, очевидно, что для подходящего приложения инвестиции очень быстро окупятся.
Хотите узнать больше о том, как Altium может помочь вам с вашим следующим проектом печатной платы? Обратитесь к эксперту в Altium или узнайте больше о основных проблемах DFM и их решениях.