|
|
  |
Вопросы надежности при разработке управляющей платы для медицинской техники. |
|
|
|
Jul 10 2014, 05:18
|
Участник

Группа: Участник
Сообщений: 71
Регистрация: 25-02-13
Пользователь №: 75 781

|
Добрый день. Обратились доктора с помощью в разработке управляющей платы для некоего агрегата. Задача в принципе проще некуда - есть программа на компьютере, которая генерирует 4 цифры, эти цифры нужно передать в управляющую плату, которая отдаст соответствующую команду (в данном случае покрутит шаговыми двигателями). Как я уже сказал - задача проще некуда, я за полчаса уже реализовал ее на макетке с STM32 и в виде РСшной мини-софтины. Но... Славик, что-то я очкую ( (С) Наша Russia ). Напомню, это медтехника. Аппарат будет применяться в рентгеноперационной с использованием оборудования, позволяющего просвечивать человека не то что в реальном времени, а прямо во время операции. Диагностическое оборудование определяет локализацию опухоли в пространстве, вычисляет координаты, дальше делается пункция специальной иглой, в просвет которой попадают опухолевые клетки, отправляемые в лабораторию для диагностики. Делается она пока вручную. Для удобства и для точности доктора захотели автоматизировать этот процесс. На каком-то предприятии для них уже разработали механический манипулятор с приводом на шаговых двигателях. Остается собрать управляющую плату, которая переменные в памяти компьютера преобразует в число шагов, отработанных двигателями. Сами понимаете, процесс очень ответственный и ошибки недопустимы. В связи с чем у меня ряд вопросов, смысл которых больше сводится к тому, как бы поступили вы, особенно, если вам уже приходилось сертифицировать медтехнику: 1. Стоит ли использовать USB? Много слышал нареканий по поводу его надежности, но моя задача не предполагает длительной непрерывной передачи данных - всего-то 4 параметра. Главное, чтобы они не передались в искаженном виде. Ну или если перефразировать вопрос- не скажут ли мне в сертификационном центре " мы вам не дадим сертификат, так как вы используете не очень надежный канал управления, вот сделайте на RS232". 2. Вроде бы и USB и RS232 используют CRC, но тем не менее, не будет ли лишним замутить еще какую-то свою проверку данных на корректность? 3. Как сказал доктор - манипулятор на шаговых двигателях. Представляете, что будет при случайном пропуске шагов? Может быть стоит предложить им использовать серводвигатели? Или есть удачные примеры гибридиации шаговиков с энкодерами для обратной связи?
Спасибо.
|
|
|
|
|
Jul 10 2014, 06:33
|
практикующий тех. волшебник
    
Группа: Участник
Сообщений: 1 190
Регистрация: 9-09-05
Пользователь №: 8 417

|
Цитата(Pilatus @ Jul 10 2014, 09:18)  ..Спасибо. чисто имхо... 1) Вам необходимо реализовать контроль двух вещей. передаваемых данных и результат отработки механики. 2) как бы без проверки переданных данных , дальше не стоит продолжать процесс. т.е. некий вывод данных должен быть на клиента. напрашивается показ цифр (либо подготовка на одном компе, далее ваш дивайс, далее второй комп с обработкой полученных вами цифр). и некая могучая кнопка разрешения. хотя человек привыкает к надёжности быстро и целесообразность такой операции сводится к формализму. 3) обратная связь должна обеспечивать скорость выше чем скорость перемещения привода. 4) необходимо логгирование работы (на случай разбора полётов в последующем). так-что думаю STM32 ышо немного подгрузится у Вас. и ещё пару пунктов. 5) озаботьтесь сразу независимой (желательно) экспертным тестированием вашего изделия. а так-же и сроками и полнотой тестов. 6) по сертификации не скажу, не сталкивался. но сдаётся мне без толкача (денюшка, волосатая рука, жгучая необходимость у толпы врачей) прокт в мусорку.
|
|
|
|
|
Jul 10 2014, 07:03
|
Участник

Группа: Участник
Сообщений: 71
Регистрация: 25-02-13
Пользователь №: 75 781

|
Цитата результат отработки механики. Полностью согласен. Думаю даже лучше все-таки оставить шаговики и добавить энкодеры. То есть контроль положения можно будет осуществлять на любом уровне, а не замыкать его на сервоконтроллере. Цитата напрашивается показ цифр Наверное не показ цифр, а наложение информации, вектора направления привода на экран где уже отрисована рентгеновская картинка. Что-то вроде лазерного целеуказателя - навели, убедились что навели правильно, выстрелили. Цитата необходимо логгирование работы (на случай разбора полётов в последующем). Спасибо, очень хороший совет. Цитата по сертификации не скажу, не сталкивался. но сдаётся мне без толкача (денюшка, волосатая рука, жгучая необходимость у толпы врачей) прокт в мусорку. жгучая необходимость есть - доктора посчитали, что появится возможность быстро и качественно выполнять 145 операций, так что денежка будет. P.S. может быть кто посоветует ну очень хорошие энкодеры? Есть такие энкодеры, которые не подсчитывают отработанные импульсы, а как бы "чуют" свое положение?
|
|
|
|
|
Jul 10 2014, 07:22
|
Гуру
     
Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369

|
Цитата(Anton75 @ Jul 10 2014, 10:19)  В принципе, сертификационным органам должно быть все равно, какую технологию передачи данных Вы использовали, это внутреннее дело разработчика. Если заданы конкретные требования к показателям надежности (наработка на отказ, вероятность безотказной работы, время восстановления и т.д.), Вы в любом случае должны подтвердить их расчетами или испытаниями. Добавлю. Возможно органы сертификации "посмотрят" на комплектующие. А для STM (я правда очень давно смотрел) мелким шрифтом написано: "не применять для приложений связанных с риском для жизни"... В этом плане гораздо надежнее "автомобильное исполнение" микросхем. Они точно проверяются все... И потом Вам надо учесть, что будет делать ваша аппаратура при отказе... Передать 4 цифры - это бред! Надежная аппаратура строится совсем не так. Она непрерывно работает по каналу и если таймаут превышен, то она орет - "неисправность канала" и переходит на резервный... Про USB. Если зависнет, то сам никогда не восстановится. Посмотрите шины промышленного Ethernet, это скорее и надежнее. Если больше хотите понять, что значит "надежная", то почитайте у меня на сайте "записки инженера".... Удачи!
--------------------
www.iosifk.narod.ru
|
|
|
|
|
Jul 10 2014, 07:44
|
Местный
  
Группа: Участник
Сообщений: 242
Регистрация: 10-06-08
Из: Хочу в пампасы...
Пользователь №: 38 192

|
Цитата(Pilatus @ Jul 10 2014, 09:18)  Но... Славик, что-то я очкую ( (С) Наша Russia ). Напомню, это медтехника. Был такой-сякой опыт сертификации изделий медтехники. Что касается электроники и схемотехники: эксперт тыкает ручкой в ЛЮБОЙ компонент на схеме и говорит: он сгорел, то есть разомкнут или закорочен. Так вот ваше устройство не должно принести вред пациенту. Это "Single failure condition". Но при этом устройство должно как-то дать знать оператору, что произошла авария. Особенно весело было в драйвере лазерного диода. Приходилось по несколько независимых ключей и измерительных цепей по току ставить.
|
|
|
|
|
Jul 10 2014, 09:14
|
Участник

Группа: Участник
Сообщений: 71
Регистрация: 25-02-13
Пользователь №: 75 781

|
Цитата Что касается электроники и схемотехники: эксперт тыкает ручкой в ЛЮБОЙ компонент на схеме и говорит: он сгорел, то есть разомкнут или закорочен. Так вот ваше устройство не должно принести вред пациенту. Это "Single failure condition". Но при этом устройство должно как-то дать знать оператору, что произошла авария. Ну тут проще - работа будет осуществляться в два этапа: первое - ориентация иглы по 2-м осям, с передачей в компьютер результата отработки команды, считанного с энкодера, преобразованного в вектор ("целеуказатель" на рентгенограмме), с вопросом к оператору, мол, погрузить ли иглу и ответами типа да, нет. Ну и собственно погружение иглы. Здесь самое главное сделать шагов не больше чем нужно. Цитата Если Вы сделаете правильное управление и будете отслеживать напряжение питания и ток двигателя, то пропуска быть не должно. Если что-то обнаружено - выдавать неисправность и с согласия оператора делать рекалибровку. Вот потому наверное и будет лучше с аналоговым энкодером. При поломке двигателя или цепей его управления можно будет перемещать иглу вручную и контролировать ее положение на экране. Цитата Пропуск шагов бывает не просто так, а при перегрузке, Да, действительно, не зря же ЧПУ "вслепую" работают с шаговыми двигателями и вытачивают отличные детальки, если правильно рассчитать нагрузки и режимы резания. Экономически обосновано - всего 1 испорченная заготовка на 1000, зато простота исполнения. Но в случае с манипулятором - "заготовки" нынче дороги))) Так что я даже не хочу задумываться ни о причинах пропуска шагов, ни о мерах по их предотвращению, я хочу чтобы манипулятор мог правильно среагировать на пропуск. А посему выход - аналоговый энкодер.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|