Перейти к содержанию
    

Как тестировать разработанную электронику и встраиваемое ПО?

syoma, как я понял, по USB вы заливаете тестовое Firmware и оно проводит функциональный тест, а PXI считывает и сравнивает реакцию i/o? На каких этапах вы проводите такое тестирование?

Torpeda, у вас написано правильно про изделие в целом. А как тестируете, например, софт для микроконтроллеров, SoC, FPGA на промежуточных этапах?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Torpeda, у вас написано правильно про изделие в целом. А как тестируете, например, софт для микроконтроллеров, SoC, FPGA на промежуточных этапах?

SoC - это есчё хуже чем изделие вцелом :)

 

Если исключить этапы производства и всё что тестируется там, то тестирование по ходу разработки (как часть КИ), называется верификация\симуляция (в среде UVM напр.) и есть соответственные методики и формальные показатели качества (code coverage etc.).

При помощи верификации гарантируется соответствие функциональности изделия требованям ТЗ в основном...

 

Частично можно проверить раблотоспособность изделия (т.е. софт, всё что зашито в FPGA итд.) на натурных испытаниях (например подключив ваш Ethernet Switch в реальную сеть или к специализированному тестеру Ethernet).

При этом правда, качество теста будет не очень хорошее из-за того, что:

- тест кавередж неизвестен

- тест кавередж скорее не более (70-80)% (это из опыта верификации, т.е. вроде тест бенч написан хороший по смыслу, но когда запускаеш подсчёт coverage, то видиш примерно такое покрытие)

 

----

Хотя... если заказчик лох, и юристы не подписали страшную ответственность...то натурных испытаний в объёме фантазии разработчика мож и хватит....

Кстати, из опыта - полная халтура, работоспособная только на столе (где функционально проверены только основные конфигурации), часто неплохо и долго работает и в приложении... ну может разок сбойнёт :) (это потому что крайние случаи наихудшего сочетания очень маловероятные)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

syoma, как я понял, по USB вы заливаете тестовое Firmware и оно проводит функциональный тест, а PXI считывает и сравнивает реакцию i/o? На каких этапах вы проводите такое тестирование?

При проверке серийных изделий. Прошивок, кстати, две - одна чисто для тестирования железа - дергает пинами, пихает пакеты везде. Вторая - уже рабочая, но ее проверяем только поскольку - поскольку - залилась ли в целом, запускается ли система, поднимаются ли интерфейсы. Реально ее полностью проверить в серийных условиях нет - стенд нужен очень серьезный. У нас этакой стенд есть - это RTDS. Мы софт, а именно алгоритмы управления проверяем на нем. Но только на этапе разработки.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Torpeda, дело в том, что моя позиция по отношению к клиенту это Win-Win, иначе не интересно. Повторно сделать клиенту предложение и получить работу проще, чем найти нового клиента. Но это невозможно, если сделать первый проект, после которого заказчик останется недоволен (Как говорила Фаина Раневская "Деньги съедены, а позор остался"). С другой стороны, если заказчик умышленно не хочет тестировать, то тут вы правы - это его желаение. Однако хочется ли работать с таким клиентом - отдельный вопрос.

syoma, RTDS это rtds.com? Я так подозреваю, у вас богатейший опыт тестирования :)

Напомнило:

Диалог в одесском трамвае:

- Молодой человек, ви шо, не виходите?!

- Выхожу.

С надрывом: - Так шо ж ви молчите?!!

Изменено пользователем SimpleSoft

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да, rtds.com.

Но еще раз - это только для отладки алгоритмов управления и демонстрации, что они действительно работают в железе, как задумано. Кстати, как раз на вот эти тесты наши заказчики обычно и прилетают посмотреть. Как там железо тестируется - их обычно мало интересует - это наша проблема. Им достаточно подписаных протоколов. Но у нас специфическая сфера - RTDS просто необходима. Для обычных проектов можно намного более простые вещи найти.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Кстати, если говорить об организации тестового стенда для какого-либо управляющего контроллера (ну там лампочками поморгать, релюшками пощелкать, что-нибудь измерить, без особых коммуникационных изысков - типа сигнализации какой, или блока управления котла, света или еще чего-либо ) за дешево и сердито (относительно) именно для разработченских нужд, то я счас исследую возможность создания такого стенда на базе обычного PC с подключенными EtherCAT модулями.

 

Получается интересная система и альтернатива PXI - по железу нужны только модули аналогового и цифрового ввода вывода или коммуникационные (RS242,485 Canopen и т.д) модули EtherCAT. Список различных вариантов большой. К компу подключаются через Ethernet порт. В любой момент конфигурацию можно поменять или дополнить.

 

Самое интересное в софте - он стоит дофига, но если найти крякнутый TwinCAT... ;)

Тогда Windows PC превращается в real-time симулятор с временами отклика в 1мс и меньше - вплоть до 100µs. При этом TwinCAT позволяет в реальном времени выполнять и Си и PLC код, а самоее интересное - модели из Matlab/Simulink. Т.е. можно нарисовать графически свою обвязку, которая будет имитировать объект управления и запустить в реальном времени на симуляторе, чтобы подопытный контроллер думал, что управляет реальным объектом.

Мало того - можно часть сигналов вывести опять же на те же EtherCAT клеммы, чтобы подключить к той части, для которой есть физический макет, но нет возможности симитировать полностью все нужные сигналы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Кстати, если говорить об организации тестового стенда для какого-либо управляющего контроллера (ну там лампочками поморгать, релюшками пощелкать, что-нибудь измерить, без особых коммуникационных изысков - типа сигнализации какой, или блока управления котла, света или еще чего-либо ) за дешево и сердито (относительно) именно для разработченских нужд, то я счас исследую возможность создания такого стенда на базе обычного PC с подключенными EtherCAT модулями.

 

Лучше расскажите что вы собственно разрабатываете, а то непонятно как тут прикрутить PC и проч PXI.

Вы представляете что значит написать модель объекта управления?

Это работы на порядки больше чем собственно работы по программированию тестируемого контроллера.

 

Изобразите-ка модель мотор-редуктора в механической системе с переменными нагрузками, десятками датчиков, управлением по облачным протоколам и системой автономного питания.

А это, кстати, будут обычные ворота.

 

Кому такое тестирование надо?

И кто будет тестировать тесты?

 

Железо для тестов это вопрос весьма вторичный.

Главное софт.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

мотор-редуктора в механической системе с переменными нагрузками

с чем именно у вас возникли сложности в моделировании такой системы?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

с чем именно у вас возникли сложности в моделировании такой системы?

 

Не знаю, понимаете ли, как предсказать обороты в зависимости от инициализации FlexTimer Module.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

syoma, правильно ли я понимаю, что выпускаемые вами изделия достаточно дороги и поэтому вложения в такой тестовый комплекс оправданы?

 

Лучше расскажите что вы собственно разрабатываете

Предположу: возможно это системы сбора данных на подстанциях для высоковольтных линий электропередач.

 

Вы представляете что значит написать модель объекта управления?

Это работы на порядки больше чем собственно работы по программированию тестируемого контроллера.

Такое бывает. Особенно если это касается критических систем.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Такое бывает. Особенно если это касается критических систем.

 

Критические системы потому названы критическими что человек мало о них что знает и боится.

Потому критические системы никак не могут тестироваться на моделях, для них нет адекватных моделей.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Наверное ввел кого-то в заблуждение. На самом деле я работаю над двумя совершенно разными проектами с одним общим - подходом к разработке и тестированию.

В одном случае - это контроллер на базе VPX технологии для управления устройствами для гибких систем передачи переменного тока на сотни мегаватт.

Критические системы потому названы критическими что человек мало о них что знает и боится.

Потому критические системы никак не могут тестироваться на моделях, для них нет адекватных моделей.

Вот вам как раз пример такой системы. Тут без тестирования на модели не обойтись, так как на практике один такой тест может полностью лишить света городок средних размеров. А тест нужно сделать обязятельно, так как система как раз и расчитана на такой случай. Иначе что делать? Молиться, что в нужный момент сработает?

 

Таких проектов всего штук 10 в год будет.

 

другом случае - это скажем так система управления немного посложней гаражной, но с двумя-четырьмя двигателям, иногда с частотниками на пару десятков датчиков и выключателей и 20-ю различными релюшками. Это производится серийно в количестве до 1000 в год. Кстати сделана на STM32F.

 

Реалистичные модели нарисовать в симулинке - не проблема ни для одного, ни для другого проекта, так как матлаб располагает вполне себе достаточными тулбоксами для моделирования и силовой электроники и простых систем с логическими сигналами. Кстати "модель мотор-редуктора в механической системе с переменными нагрузками" я думаю в матлабе изобразить тоже можно - там есть механический тулбокс. Только вот надо ли, если с точки зрения контроллера "ворота" представляют всего лишь десяток выключателей, которые выключаются с различными задержками после выдачи команды на открытие или закрытие. Тут главное - все варианты внештатных комбинация обработать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Реалистичные модели нарисовать в симулинке - не проблема ни для одного, ни для другого проекта, так как матлаб располагает вполне себе достаточными тулбоксами для моделирования и силовой электроники и простых систем с логическими сигналами.

 

Ну покажите уже наконец эти модели в симулинке. Хотел бы я посмотреть.

 

Если бы вы делали что то в симулинке, то никогда бы не поминали его всуе.

Там один лог. оператор вставить эта работа на порядок сложнее чем написать в с-и на микроконтроллере. (засеките время в секундах)

Я уже не говорю про отладку.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Всем спасибо за ответы.

Интересно, вот например, как тестирует свои контроллеры Овен? А софт для них?

Или РТСофт своё ПО на Embedded Linux/Windows?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не знаю, понимаете ли, как предсказать обороты в зависимости от инициализации FlexTimer Module.

 

теперь мне понятно почему у вас не получается модель

мотор-редуктора в механической системе с переменными нагрузками

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...