leoniv (leoniv) wrote,
leoniv
leoniv

Categories:

Из того, что было



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



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

Двигатель биполярный, поэтому врукопашную с ним бороться сложно, нужен какой-нибудь интегральный драйвер. Первое, что попалось под руку - это два моста на MOSFET в одном корпусе в виде микросхемы L6205. Пойдет, только обидно, что это не специализированный драйвер ШД, а просто мост. Меньше полушага простыми методами не получить. Сейчас на Aliexpress есть прекрасные модули микрошаговых контроллеров, например, на базе TMC2100. Но срок доставки портит всю картину. Обычно нужно "вчера". К слову, позже в той же тумбочке обнаружил микрошаговый драйвер TB6560, но уже было поздно.



Постепенно в схему врисовывал детали из тумбочки. В качестве моста USB применил ставшую у меня стандартом FT232RL с развязкой ADuM1201. Дорого, но я полюбил эту микросхему из-за абсолютной безглючности драйверов для любой ОС. Что характерно, на работе используется много всякого оборудования разных производителей с управлением по USB, и в большинстве случаев там стоят FTDI. Каплей дегтя является наличие китайских подделок этой микросхемы, но у нормальных продавцов пока на подделку не нарывался. Все хочу попробовать FT230XS, которая стала доступной благодаря Чип и Дип (жаль, нет на рынке). Она дешевле и, говорят, не имеет подделок.

Питание +5 В сделал на L5973, которая продается дешево на рынке и наконец-то составила конкуренцию примитивной MC34063. Процессор - ATmega8. Было бы дешевле поставить ATmega88, но победила тумбочка. Контроль тока - народный компаратор LM393. Ну а больше там ничего и нет.



Дальше все как обычно - разводка платы, утюжка, травление.





Дальше сверловка и проклепывание переходных.



Затем фрезеровка контура и примерка платы в корпусе Z-100 для DIN-рейки.





Этикетку напечатал на принтере. Печатать он стал плохо, черный цвет - никакой. Надо что-то делать. Этикетку подкрасил черным маркером и заламинировал шагреневой пленкой. Сойдет. Название на этикетке поменял, чтобы вписаться в линейку других контроллеров, которые когда-то делал. На плате название вытравил старое.

Ну а дальше - сборка платы.







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

Дальше идет программирование. Если бы это был первый контроллер ШД в жизни, пришлось бы тяжело. А так я их делал уже много разных, взял готовую программу, лишь подставил туда возможности железа: какое дробление шага, какой максимальный ток, какой есть дополнительный сервис на плате. Управляющую программу на компьютере тоже лишь слегка подправил.







С драйвером FTDI вышла как-то раз забавная штука. Как водится, у меня все работало. Отдал заказчику. Говорит - нет связи с устройством. Спрашиваю - какая ОС? Говорит, Windows 7. Предложил ему установить свежие дрова от FTDI. Установил. Связи нет. Потом только дошло. Я работаю через ftd2xx.dll. Для того чтобы программу можно было открыть и посмотреть даже на компьютере без установленного драйвера, я положил эту dll в рабочую папку программы. Иначе она не находит dll и ругается. Но в версии для Win 7, оказывается, эта dll другая и не совместима со старой. А в последовательности поиска рабочая папка стоит на первом месте, система находит старую dll, до папки с драйвером дело не доходит. В итоге ничего не работает. Предложил кильнуть эту dll, все заработало. Мораль - не кладите что ни попадя где ни попадя.

Вот такой вот суп из того, что было, получился.



Tags: electronics
Subscribe

  • Измеритель уровня V0.1

    Сделал первую версию прошивки нового измерителя уровня для магнитофона "Электроника-004". Все еще очень-очень сырое, но уже полоски как-то…

  • Sharp GF-777

    Попал тут ко мне Sharp GF-777. Без преувеличения можно сказать, что это легенда. Обладать таким аппаратом могли лишь избранные. Стоил он когда-то…

  • JVC TD-V662

    Когда просят посмотреть кассетную деку, говорят удивительные вещи. Что не могут найти мастера, который за это бы взялся. Но ведь аналоговая…

  • Post a new comment

    Error

    default userpic
    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 81 comments

  • Измеритель уровня V0.1

    Сделал первую версию прошивки нового измерителя уровня для магнитофона "Электроника-004". Все еще очень-очень сырое, но уже полоски как-то…

  • Sharp GF-777

    Попал тут ко мне Sharp GF-777. Без преувеличения можно сказать, что это легенда. Обладать таким аппаратом могли лишь избранные. Стоил он когда-то…

  • JVC TD-V662

    Когда просят посмотреть кассетную деку, говорят удивительные вещи. Что не могут найти мастера, который за это бы взялся. Но ведь аналоговая…