Бить даташитом до полного понимания!
Dec. 9th, 2014 02:38 pmСпалил плату управления спектрографом (благо, хоть не последняя итерация и распаяно на ней не так много было).
А все из-за невнимательного чтения даташитов! При управлении драйвером шаговых двигателей L6208N ногу EN этого драйвера я подтягивал к +3.3В или земле напрямую (в режиме push-pull output). В итоге, решив проверить, почему на малых оборотах у меня не вращался шаговик, и впилив максимальный ток, я получил перегрев драйвера ШД с отключением. Естественно, как и написано в руководстве, драйвер прижал к земле ногу EN. И получилась КоЗа. И сдох мой бедненький STM32F103 ☹
Теперь вот думаю, как выйти из положения: платы-то новые уже заказаны. Резистор, подтягивающий к плюсу, уже не воткнешь. А STM32F103 не умеет подтягивать ногу к плюсу в режиме вывода.
Т.е. либо менять режимы (push-pull с прижатием к земле в отключенном состоянии и pull-up input во включенном), либо навешивать резисторы и ставить режим open-drain output.
P.S. А ведь писал! Черным по серому сам же написал:
Ээх!
А все из-за невнимательного чтения даташитов! При управлении драйвером шаговых двигателей L6208N ногу EN этого драйвера я подтягивал к +3.3В или земле напрямую (в режиме push-pull output). В итоге, решив проверить, почему на малых оборотах у меня не вращался шаговик, и впилив максимальный ток, я получил перегрев драйвера ШД с отключением. Естественно, как и написано в руководстве, драйвер прижал к земле ногу EN. И получилась КоЗа. И сдох мой бедненький STM32F103 ☹
Теперь вот думаю, как выйти из положения: платы-то новые уже заказаны. Резистор, подтягивающий к плюсу, уже не воткнешь. А STM32F103 не умеет подтягивать ногу к плюсу в режиме вывода.
Т.е. либо менять режимы (push-pull с прижатием к земле в отключенном состоянии и pull-up input во включенном), либо навешивать резисторы и ставить режим open-drain output.
P.S. А ведь писал! Черным по серому сам же написал:
Вход ENABLE является еще и выходом: если с драйвером L6208 случается какой-то «косяк» (перегрев, скачок тока), то драйвер самостоятельно отключает напряжение на нагрузке, а ENABLE подтягивает к земле. Это значит, что можно проверять, не случилась ли аварийная ситуация, если ногу контроллера, управляющую портом ENABLE, активировать в режиме выхода с открытым коллектором.
По спецификации STM32, в режиме открытого коллектора при подаче единицы на выход порта просто запирается транзистор, подтягивающий ногу к земле. Если же на выход подать нуль, то нога опять подтягивается.
Таким образом, подтянув ногу контроллера к +5В (ногу нужно выбирать FT) через, скажем, пятикилоомный резистор, а между ней и ENABLE воткнув, скажем, килоомный резистор (и обязательно не забыть шунтировать ногу ENABLE кондером на землю, иначе можно пожечь управляющий контроллер), можнои рыбку съестьи включать/выключать нужный двигатель, и проверять, не было ли аварий (а для этого можно повесить на соответствующие ноги контроллера прерывание периферии по спадающему фронту).
Ээх!
no subject
Date: 2014-12-09 11:44 am (UTC)Если платы сделаны - то программно, конечно проще режимы менять. Хотя, если разводка удобная, то можно и резистор подпаять :)
А вообще, хорошим тоном считается установка токоограничивающих резисторов в таких случаях.
no subject
Date: 2014-12-09 11:48 am (UTC)Попробую на следующем варианте pull-up/pull-down input, если не будет хватать подтяжки к нулю для отключения мостов, то придется режимы менять, либо напаивать резисторы (сзади вполне можно обычные выводные резисторы прилепить).
> А вообще, хорошим тоном считается установка токоограничивающих резисторов в таких случаях.
Понятное дело. Но лень же паять кучу лишних точек! На силовые ключи я резисторы впихнул, а вот здесь как-то не подумал ☹
no subject
Date: 2014-12-09 11:51 am (UTC)no subject
Date: 2014-12-09 12:00 pm (UTC)no subject
Date: 2014-12-09 12:30 pm (UTC)no subject
Date: 2014-12-09 02:29 pm (UTC)no subject
Date: 2014-12-09 02:44 pm (UTC)no subject
Date: 2014-12-09 03:02 pm (UTC)no subject
Date: 2014-12-09 03:32 pm (UTC)no subject
Date: 2014-12-09 04:02 pm (UTC)no subject
Date: 2014-12-09 04:07 pm (UTC)no subject
Date: 2014-12-09 04:44 pm (UTC)no subject
Date: 2014-12-09 04:52 pm (UTC)Которые не нужно паять, регулировать и т.п. Слева интерфейс для флешки и/или компьютера, справа - колодка с винтиками для двигателя и датчиков.
типа вот этого
http://habrahabr.ru/company/contactless/blog/213243/
no subject
Date: 2014-12-09 04:55 pm (UTC)no subject
Date: 2014-12-09 05:00 pm (UTC)no subject
Date: 2014-12-09 05:01 pm (UTC)no subject
Date: 2014-12-09 05:09 pm (UTC)D- для low speed device
D+ для full speed device и high speed device(сначала работает как full и потом уже программно переходит в high)
no subject
Date: 2014-12-09 05:13 pm (UTC)no subject
Date: 2014-12-09 05:15 pm (UTC)В тех же F0 тоже подтяжка внутри МК работает, никаких внешних резисторов с транзисторами лепить не надо.
Кстати, dosikus хвастался, что у него все отлично и без транзистора работает - прямой подтяжкой через ногу и полуторакилоомный резистор.
Учитывая то, что ток получается значительно ниже предельного, в принципе, транзистор и правда нафиг не нужен (пока не сгорит МК ☹)
no subject
Date: 2014-12-09 05:16 pm (UTC)no subject
Date: 2014-12-09 05:47 pm (UTC)no subject
Date: 2014-12-09 05:49 pm (UTC)no subject
Date: 2014-12-09 05:50 pm (UTC)no subject
Date: 2014-12-09 05:53 pm (UTC)no subject
Date: 2014-12-09 06:06 pm (UTC)no subject
Date: 2014-12-10 04:25 am (UTC)Но даже интересно почему не годится.
no subject
Date: 2014-12-10 04:41 am (UTC)Ну, а из имеющихся "конструкторов" (вроде лабвьюшных) тоже ничего толком не подходит из-за слишком высокой цены или невозможности нормальной интеграции (те же лабвьюшные железяки обычно огорожены по самые помидоры, и работать с ними из-под линукса напрямую может не получиться; мастдайка по понятным причинам совершенно не годится).
no subject
Date: 2014-12-10 05:10 am (UTC)Как это ?
Какие задачи не может решить тот же Raspberry Pi, если к его GPIO подключить более мощные ключи ?
no subject
Date: 2014-12-10 05:20 am (UTC)В любом случае, "малинка", в силу крайне малого количества GPIO, может лишь выполнять роль заменителя ПК. А на нее нужно навешивать микроконтроллеры и исполнительные механизмы. Которые все равно придется паять.
"Кубитрак" значительно лучше (у него больше GPIO), но вот железо у него больше огорожено, чем у "малинки". Поэтому часть функций просто недоступна! Вот такой маразм.
Но даже кубитрак не сможет шаговиками управлять без драйверов ШД и микроконтроллера. Т.е. как минимум нужно паять схему работы с шаговиками и концевиками, которая уже по I2C/SPI/UART будет связываться с основной платой.
no subject
Date: 2014-12-10 05:22 am (UTC)Естественно, шаг влево, шаг вправо, и этот контроллер садится в лужу.
no subject
Date: 2014-12-10 05:31 am (UTC)Там ниже коммент про RPi, где можно сформулировать нерешаемую задачу (готовьте карман для премии Филдса ;-)
no subject
Date: 2014-12-10 05:40 am (UTC)А с шаговиками я 6 лет имел дело.
no subject
Date: 2014-12-10 05:42 am (UTC)И еще один жгут на систему сбора пойдет. Жаль только, что наши разработчики системы сбора все никак на линукс не перейдут. Из-за этого придется держать один лишний компьютер с мастдайкой.
> Там ниже коммент про RPi, где можно сформулировать нерешаемую задачу
Не нашел. Но все равно быдлохабра — гнилой анально огороженный ресурс. Я там почти readonly.
no subject
Date: 2014-12-10 05:46 am (UTC)А собирать из макеток — это как-то по-детски.
Я в начале года "временно" на макетках собрал, руководитель матерился очень страшно по поводу убожества и торчащей во все стороны паутины проводов ☺
Вот, кстати, с шаговиками тоже я сел в лужу: заказал VSS42, а они, сволочи, имеют крайне низкое сопротивление обмоток и еще более низкую индуктивность. В итоге работать с ними — сущий ад! Мало того, что нельзя выкинуть цепи обратной связи и нужно использовать ШИМ, так они еще и жутко раскаляются на малых оборотах (т.к. жрут совершенно невменяемо)!
Уже как купили, я обнаружил в каталогах приличные шаговики. Но... Денежки-то уже потрачены! Один VSS-42 стоил порядка 65 тысяч рублей + еще две подвижечки вакуумных (~100 и ~300 тысяч). А с нормальными ШД заплатили бы от силы на 150т.р. больше. Зато не было бы таких мучений с управлением.
no subject
Date: 2014-12-10 06:05 am (UTC)Трехфазных не было, но я уверен, что для ваших целей они тоже сгодятся. Без пайки, конечно.
no subject
Date: 2014-12-10 06:45 am (UTC)Да-да, с помощью пайки можно соединить толстенный жгут в один проводник.
no subject
Date: 2014-12-10 06:58 am (UTC)А с постоянными можно было бы просто врубить и ждать прерывания от Холла. Как пришло - вырубить, подождать, пока "устаканится" турель, проверить позицию. И так до тех пор, пока в нужную не приедем.
Но все эти дела хороши, когда делаешь обычную железяку, а не нутро криостата.