О мазохизме
Jun. 26th, 2018 06:40 pm![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Весь день провел в попытках заставить стабильно работать шаговый двигатель, управляемый "малинкой" непосредственно через ее GPIO (а GPIO пинал в свою очередь драйвер на основе TB6560, купленный мной на ибее еще 2-3 года назад).
Двигатель униполярный, на 1А. От 12В питался крайне неохотно (тарахтел и явно пропускал шаги), подключил БП на 24В. Замучился дергать туда-сюда регулировки torque и decay: то, что на малых скоростях работало тихо и вроде как стабильно, на больших тарахтело; и наоборот. ОК, нам нужны крайне малые скорости (это будет деротатор поля Н2), поэтому успокоился, выбрав деление шага 1/8, decay 0% и torque 100%.
Дальше долго писал элементарный регулятор, который бы позволил на не-realtime машине более-менее стабилизировать ход двигателя. С точностью до десятых долей половины микрошага это вроде бы получилось, и двигатель на звук работал вполне стабильно. Но вот с низкими скоростями просто беда: на любых делениях шага греется двигатель прилично, уменьшить torque для уменьшения нагрева нельзя — тогда вал начинает дергаться как припадочный. В общем, похоже, нужно будет либо ставить редуктор (сейчас оправу призмы Глена двигатель крутит через ременную передачу 1/8), либо придумывать что-то иное вместо шагового двигателя.
Однако, при текущей раскладке одному шагу двигателя соответствует поворот аж на 13.5'!!! Кажется, что это очень много, но вспомним масштаб в Н2: ~1''/мм! На радиусе 1см это даст меньше 0.1'' погрешности, что весьма значительно превышает не то, что сиинг, но даже паспортное качество зеркала.
Но со схемой надо что-то решать: не дело, что движок так греется...
Двигатель униполярный, на 1А. От 12В питался крайне неохотно (тарахтел и явно пропускал шаги), подключил БП на 24В. Замучился дергать туда-сюда регулировки torque и decay: то, что на малых скоростях работало тихо и вроде как стабильно, на больших тарахтело; и наоборот. ОК, нам нужны крайне малые скорости (это будет деротатор поля Н2), поэтому успокоился, выбрав деление шага 1/8, decay 0% и torque 100%.
Дальше долго писал элементарный регулятор, который бы позволил на не-realtime машине более-менее стабилизировать ход двигателя. С точностью до десятых долей половины микрошага это вроде бы получилось, и двигатель на звук работал вполне стабильно. Но вот с низкими скоростями просто беда: на любых делениях шага греется двигатель прилично, уменьшить torque для уменьшения нагрева нельзя — тогда вал начинает дергаться как припадочный. В общем, похоже, нужно будет либо ставить редуктор (сейчас оправу призмы Глена двигатель крутит через ременную передачу 1/8), либо придумывать что-то иное вместо шагового двигателя.
Однако, при текущей раскладке одному шагу двигателя соответствует поворот аж на 13.5'!!! Кажется, что это очень много, но вспомним масштаб в Н2: ~1''/мм! На радиусе 1см это даст меньше 0.1'' погрешности, что весьма значительно превышает не то, что сиинг, но даже паспортное качество зеркала.
Но со схемой надо что-то решать: не дело, что движок так греется...