Симуляция медицинского устройства

Этот пример показывает, как провести автоматические тесты для моделирования медицинского устройства, которое анализирует выборки биологии. Этот пример также требует лицензии Stateflow.

Цель

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

Обзор моделируемой системы

Медицинское устройство содержит:

  • Выборки

  • Реагентные бутылки

Флаконы, удерживающие анализируемые выборки, загружаются с левой стороны устройства. Бутылки с реагентом загружаются с правой стороны устройства.

Процесс отбора проб для конкретного теста

  1. Выборку смешивают с соответствующим реагентом в кювете.

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

  3. Чтобы взять показания смеси, устройство светит лазером на смеси.

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

Рабочий процесс автоматизации с использованием трёх Роботов оружия

  1. Рука робота 1 подбирает кювету и помещает ее в зону проверки в верхней части.

  2. Рука робота 2 рисует выборку и помещает его в кювету.

  3. Чтобы создать смесь для отбора проб, рука 3 робота потребляет необходимое количество реагента, соответствующего тесту, и помещает его в кювету.

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

  5. Чтобы взять показания, устройство светит лазерным светом на смесь.

  6. Устройство отбрасывает кювету.

  7. Этот процесс повторяется до тех пор, пока в устройстве не будет больше выборки.

Модель медицинского устройства: Это модель SimEvents для медицинского устройства:

Чтобы изменить количество выборок перед началом моделирования, поверните ручки в блоке 'Samples'.

  • Отсек для образцов является устройством, которое содержит держатели для хранения выборок. Чтобы задать количество используемых отсеков для образцов, поверните ручку, которая изменяет переменную 'nSampleBays'.

  • Чтобы указать количество выборок, которые может взять отсек для образцов, поверните ручку, которая изменяет переменную 'samplesPerBay'.

Модель имеет три основных элемента:

  • Моделируйте выборки

  • Тестовые данные

  • Анимация модели Модель запускает длину заданных выборок и размерностей. Анимация модели визуализирует симуляцию и позволяет взаимодействовать с симуляцией.

Моделируйте выборки

Блок, маркированный 'Samples', моделирует область хранения образца. В начале симуляции площадь реагентов загружается всеми реагентами. Площадь кюветы загружена кюветами. Область выборки загружается образцами пациентов.

Тестовые данные

'BioSampleAnalyzerData.xlsx' содержит тесты, запрошенные пациентами. Он содержит следующие листы:

  • 'Тесты пациентов' - Идентификаторы пациентов и идентификаторы тестов, которые будут проведены.

  • TestData - подробности каждого теста. Для каждого идентификатора теста он содержит информацию о количестве выборки (sampleAmount), реагенте, который будет использоваться (reagentId), количестве реагента, которое будет использоваться (reagentAmount), приоритете для теста и количестве времени, в течение которого смесь должна оставаться вместе (testTime) перед чтением.

  • TestNames - Список имен для реагентов.

Анимация модели

Чтобы просмотреть и взаимодействовать с моделью с помощью анимации, щелкните переключатель на блоке 'Animation Switch'. Нажатие на переключатель ' on ' открывает окно 'Gematology Diagnostic Instrument'. Если вы не используете анимацию модели, пример выполняется до конца.

Окно 'Gematology Diagnostic Instrument' содержит:

  • Три руки робота в верхней части.

  • Время - которое отображает прошедшее время.

  • Пропускная способность - отображает образцы/ч устройства.

  • Кювета - там, где размещены кюветы. Количество оставшихся кюветов показано в верхней части области кюветы.

  • Площадь реагентов - где хранятся реагенты. Реагенты отображаются в виде синих кругов. В верхней части каждой окружности реагента отображается сокращение реагента. В нижней части каждой окружности отображается количество оставшегося реагента. Когда количество оставшегося реагента падает ниже 3 модули, количество оставшегося реагента отображается красным цветом. Чтобы пополнить мяч реагента, щелкните его. Когда тест пропускают из-за недостаточного количества реагента, соответствующий реагент подсвечивают желтым цветом.

  • Область выборок - где выборки хранятся. Выборки отображаются как розовые мячи. В верхней части каждого цикла расчета отображается testID. В правом нижнем углу каждой выборки отображается приоритет выборки; чем меньше число, тем выше приоритет. Выборки проверяются в порядке, самом высоком приоритете к самому низкому приоритету. Если выборка ожидает повторного заполнения реагента, мяч становится желтым. Модель пропускает эту выборку и переходит к следующей выборке, пока она больше не может продолжаться. Когда выборка завершена, мяч становится оранжевым. В нижней части каждого столбца пробы находится число, указывающее на отсек пробы. Чтобы протестировать все выборки в отсеке, щелкните соответствующий номер отсека для образцов.

Что попробовать

  • Измените количество выборок.

  • Сконфигурируйте параметры для блока bioTester.

  • Образец - Измените значение 'Number of samples bays' и 'Number of samples per bay' для области образцов.

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

  • Переключение переключателя анимации.

  • Переключение переключателя на ' off ' запускает симуляцию до тех пор, пока все выборки не будут исчерпаны.

  • Переключение переключателя 'Animation Switch' ' on ' показывает окно анимации. В этом режиме можно взаимодействовать с симуляцией. Чтобы загрузить выборки, нажмите одну из кнопок в нижней части столбца, соответствующего отсеку для образцов. Когда кнопка нажата, выборочные данные считываются из переменной рабочей области 'patientTests', и мячи в отсеке, соответствующем кнопке, заполняются выборками. Можно продолжить нажатие кнопок.

Оценка оптимальных размерностей площади расчета

Одной из целей конструктора медицинского оборудования может быть определение размера области выборки, который обеспечивает лучшую пропускную способность для устройства. Одним из факторов является то, что увеличение размера области выборки добавляет к количеству времени, которое требуется руке робота, чтобы достичь образцов, которые находятся дальше всего. Уменьшение размера площади выборки уменьшает время пути руки робота. Однако существует фиксированное время настройки, необходимое для загрузки всех отсеков для образцов, выполнения процедур инициализации устройства и включения устройства. Это время настройки амортизируется по всем выборкам. Если количество выборок мало, время настройки добавляет к общей пропускной способности.

Чтобы найти лучшие размерности площади выборки, можно симулировать устройство с различными строениями размера области выборки. Скрипт searchDim.m выполняет поиск по всем возможным размерностям области выборки и строит графики пропускной способности для каждого размера области выборки. Скрипт вычисляет пропускную способность как:

Пропускная способность = (Количество выборок )/( время до окончания выборок * 3600)

Следующие графики показывают результаты выполнения этого скрипта:

На первом графике показана тепловая карта производительности с 'выборками на залив' вдоль горизонтальной и 'количеством заливов проб' вдоль вертикальной оси. Второй график показывает линейный график 'производительности выборки' от 'количества выборок'. Как видно из этих рисунков, пропускная способность для размерностей, соответствующих 6 заливам и 9 выборкам на отсек, дает самую высокую пропускную способность.

См. также

Похожие темы