Поиск

Модуль управления двумя униполярными ШД


Эту неделю я еще в отпуске, поэтому на работу хожу вяло: по 6-7 часов в день. Сегодня мне в мастерских выдали уже почти готовый корпус фотометра для Z-1000, с полчаса я убил, отмывая его от грязи и машинного масла. Пока деталей не хватает, поэтому разместить внутренние элементы не могу еще, но уже можно прикинуть, как подрезать валы, и отдать их в мастерские. Чертежи всех внутренних элементов я сегодня отнес, глядишь, недели за 2-3 сделают (если, конечно, материала хватит; у нас в мастерских просто беда с дюралью: остались буквально обрезки!).
А за выходные я сделал еще 8 печатных плат (к четырем, изготовыленным до отъезда в Абхазию) для управления двумя униполярными шаговыми двигателями:

Из 12 плат в мусорку полетели четыре (непротрав, который только после лужения стал заметен; несовпадение сторон и подобные косяки). Четыре похуже я отложил «на ЗИП», а из четырех получше собственно и спаял то, что приведено на фото выше.
Времени на эту дрянь уходит жутко много: около 8 часов ушло только на ЛУТ и травление восьми экземпляров. Еще часов 8 я их лудил, прозванивал на КЗ и обрывы, и распаивал элементы в отобранных четырех экземплярах (совсем забыл, когда писал: еще же чертовы переходные! На них ушло еще часа 3-4 на все 4 платы). Паять без лакового слоя — то еще «удовольствие», благо, LQFP с шагом 0.5мм и меньше на сей раз не было. Промыл платы в спиртоацетоновой смеси, а затем водой. Остается прозвонить, и можно будет писать прошивку когда-нибудь в будущем. Прототипы системы термомониторинга уже пылятся…
Думаю, нафиг-нафиг больше заниматься ЛУТом в количестве более 1 экземпляра! Уж очень трудоемкий процесс, да и принтер у меня на работе уже дерьмовенько печатает, если в конце года на нас свалятся деньги, надеюсь, и на новый картридж хватит, а то и бумаги еще прикупим (уже полтора года на старых запасах живем, через месяц придется за свои деньги покупать).
Вкратце о модуле. Вот его схема:

Понятно, что качество скриншота у малюсенького домашнего мониторика 1920×1080 оставляет желать лучшего, поэтому стоит посмотреть на гитхабе.
Гордиться этим модулем я точно не буду: во-первых, 8-битный микроконтроллер, во-вторых, он еще и на 5В работает (для поддержки legacy, т.к. невозможно сразу взять, и обновить систему управления), ну и косяков там полно. Создана эта дрянь исключительно для работы с платформой SCOPRIO, где торчат 20-летние униполярные шаговики с диким сопротивлением обмоток — понятно, что током ими невозможно управлять, а для работы в биполярном режиме пришлось бы повысить напругу до 24В (а, опять же, из-за legacy, пришлось бы пихать целых 2 источника питания на SCORPIO, так что нафиг-нафиг!). Когда-нибудь сделаю еще и модуль управления биполярными ШД (на самом SCORPIO есть и такие) на том же самом опостылевшем STM8, в гробу я их видел! А вообще, на STM32F030 или STM32F042 нужно будет что-то подобное реализовать + еще я уже лет 7 лелею мечту сделать компактный «карманный» контроллер ШД с экранчиком с тачскрином, чтобы 2-4 ШД можно было «в полевых условиях» подвигать, а то постоянно ради такой мелочи приходится на макетке какую-то жесть городить!

Да, о самом модуле. Помимо управления двумя униполярными ШД (по 2 концевика на каждый с автоматическим стопом по достижению нужного концевика) он может ШИМить (или пушпулить — скажем, для управления внешним силовым мосфетом) три низкоточных (до 50-100мА, чтобы «кренку» не спалить) потребителя пятью Вольтами (через развязку — p-канальные мосфеты) и включать-выключать набортный светодиод (мало ли, нужно будет «свет зажечь» для поиска «потерявшихся» микроскопов или еще чего). Протокол будет похожим на старый убогий (с квадратными скобочками в начале и конце посылки).
Все модули сидят на общей 5-вольтовой TTL UART шине, поэтому являются пассивными (никакого асинхрона, понятное дело, не будет). Для выбора адреса устройства (0 или [1…7]<<1) на плате распаян трехбитный переключатель.
Такая распределенная система позволит значительно уменьшить количество проводов, тянущихся по прибору, а также одновременно крутить хоть все шаговые двигатели, а не поочередно каждый, как раньше. Правда, все равно система управления скорее всего так и останется под IDL, поэтому никаких преимуществ пользователь не увидит. Ну и черт с ними, я с мастдайками связываться не собираюсь, а уж тем паче рисовать GUI — я исключительно за командную строку. На крайняк можно веб-морду сделать. А если уж совсем надо — на GLUT окошко нарисовать с визуализацией картинки. Но не связываться со всей этой ООПщиной дрянной!
eddy_em.livejournal.com

Добавить комментарий