Сервопривод..
Читала я читала так и не поняла как же в самодельных сервах это реализуется.
Ну пришёл шаговый импульс, да пришел он один нещасненький.
Рассогласование тут у сервы, и она в зависимости от длины программной цепочки, и своёй тактовой частоты, через ШИМ даёт питание на якорь до того момента пока с энкодеране не то, что ей ответ прейдёт в виде импульса того, что она сделала.
- Нам хотелось на оборот сервы 100-200 шагов при прямом приводе иметь, а стаким же разрешением на оборот у энкодера о серве и не мечтай. Народу 2000 тысячи импульсов подавай. Если ШИМ строить исходя из 1/200 оборота, старт такой бешенный что уносит.
- Отправлять 2000 шагов соответственно разрешению энкодера , а не необходимой минимальной величине шага тоже не реально.
- Тада мы , чё растягиваем ШИМ по енкодеру, тоесть. На один шаг управления приходиться 20 шим умпульсов отработки. Да контролировать минимальную угловую скорость возможно только с энкодером максимального разрешения. И чё мы хоббисты делаем, оговариваем максимальную величину прироста скорости. Те. За два три ШИМа мотор набрал оговоренный прирост или в случ. первого шага минимальную скор. дальше ШИМ пустой пока скорость не спадет на величину гестерезиса проехав 18 пустушек едим дальше без контроля скор. до отработки ещё 20 импульсов с енкодера (а вдруг прийдёт следующий в случае разгона) и тока на 41 импульсе мы насинаем тормозить, и в этом случае если мы встали на 3 импульсах энкодера то мы так и стоим, если проскочили 20 отведенные на тормоз +40 разгон и выбег та тогда задний ход по всей этой процедуре, как говориться держим координату.
Чёта нефига не пойму кто кому голову морочит.
Если после первого приходит следующий, или же последний по макс скорости при разгоне (отсюда ли задаётся ширена удержания координатной точки по енкодеру) подача питания по ШИМу идёт опять по оговоренному в настройке привода приросту скорости. - Тода опять не пойму как за 2-3 пульса с енкодера скорость вычесть, с 20 вычесть можно а с 2-3 как.
- Как вы господа без отправки всей пачки шагов по размеру которой и неплохо бы иметь ещё отдельно величину рекомендуемой скорости свой сервопривод мутите.
Может это симптомы конечно, но не чё пальцем в клаву попадаю.
Такое впечатление, что целенаправленно втирают стерва умные фразы на Аглицком,
Типа там написано мы врубились а ты недалёкая те до нас, ещё и не дождешься такого в смысле высоты интеллекта в понимании работы СТЕРВАпривода.
Я на усилок намекнула –не морочь Г.
Усилок к шагу прощё привязать, измерь момент на шагавике, хош по валу через оптику, хош по реакции статора через мост с тензо датчиком и на вход усилка в D режиме. И всё.
Чё мне одной впрягаться, где бред, и где его больше
С уважением к братья по вере.
Мужики, вы опять полезли не в те дебри, надо сначала разрвботать грамотный алгоритм управления сервом, а потом уже задумываться над его реализацией…
Повторяю свой вопрос - что должен сделать контроллер когда на него пришел сигнал сделать шаг?
на сколько нужно регулировать шим?, от куда контроллер возьмет нужную скважность, если это первый шаг(начало разгона), как контроллер должен понять собираемся ли мы рвануть с места или разгоняться плавно или вообще не разгоняться а сделать один шаг(опять же непонятно с какой скоростью надо шагнуть(шим то любую позволит))…
Те одно и тоже скока спрашивать, отвечай раз умный, просветляй темень.
модератор
Бессодержательные комментарии и личная переписка в теме были удалены. Если сказать по теме нечего, то сидим терпим, не засоряем форум. Дальше буду штрафовать.
Мужики, вы опять полезли не в те дебри, надо сначала разрвботать грамотный алгоритм управления сервом, а потом уже задумываться над его реализацией…
www.engin.umich.edu/group/ctm/…/PID2.html для начала
Ну да ладно продолжим, в том же духе, если господин модератор терпит.
Итак, мы имеем, возможность подавать, группы управляющих команд представленных как пара, шаг-направление. При этом команда шаг, изначально привязанная к шаговому двигателю подразумевается как величина приемлемого исходя из условий точности оборудования для нас минимального перемещения по соответствующей координате.
Также предусмотрена возможность прямолинейного ускорения, и замедления, для достижения больших скоростей из учета инерционности вращающих масс.
Продолжительность импульса также доступна и он прямой, по фронту или спаду не так важно.
Дальше мы в состоянии эйфории ослеплённые взбалмошной идеей хватаем первый попавшийся ДС желательно тихоходный с параллельным возбуждением, четырёх полюсник, и чтоб обмотка залитая бешеной смолой в форме стаканчика (якорь) крутилась между постоянными недоципиановыми дорогущими магнитами, не забывая при том проверить при помощи домашних весов момент, и испытав блаженство заставив его крутиться от элемента в 1,5 вольта, прикручиваем на место шаговика.
Заставить его крутиться синхронно с частотой шаговых импульсов, с небольшим угловым запаздыванием в пределах шага, вроде нет проблем. Триггер включается шагом выключается командой с энкодера. Аналогично опережение команды с энкодера шара формирует ШИМ тормоза. Т-е. регулирование ширины питающего импульса.
Чем на большее количество линий наш энкодер тем ниже минимальная частоты вращения вала. Всё это связано с инерционностью вращающейся частью двигателя и внешними возмущениями. За время между шаговыми импульсами управления изменение угловой скорости двигателя не должно выйти за предел шага. Аналогично и при разгоне, прирост скорости не должен превышать прирост частоты шага.
Вот эта постоянная движка, а точнее привода, зависящая от V питания по всей видимости и вгоняется при прошивке контроллера в виде тайминга задержки.
Вся херня начинается при угловых скоростях и частотах шага меньше оговоренной,
и привязанной к постоянной движка, так называемый одиночный шаг. На енкодер превращается в совсем не хоббийное развлечение.
В случае пропуска шага по управлению, или команды с энкодера так же нужна буферизация для возможности отработки ошибки в пределах преемлимой точности.
Заманчиво сделать задержку на несколько минут, время разгона до максимальной скорости привода, тогда сразу выделяется команда скорости.
Ладно, как сказал один из наших братьев, уважаемый член нашей же общины полнейший БРЕД.
Вот на CNC Zone нашёл сервоконтроллер на ATmega162 сразу для трёх осей,может кому пригодится.Если кто собирал, может прокомментирует целесобразность его постройки.
Качество схем конечно обалденное - такое чувство что их украли у автора путем фотографирования дрожащими руками на сотовый телефон через окно - сидя на дереве в пяти метрах от него…
Чето странно оно както…
Чето незнаю даже, всеравно сомнительно както - слишком просто чтоли…
А его ктонибудь собирал - отзывы есть какиенибудь?
В архиве есть исходник, может по нему можно сделать выводы? Я вот поделился , а вы сами решайте надо это вам или нет.По этому контроллеру на СNС Zone есть ветка , где его обсуждали,вот ссылка www.cnczone.com/forums/showthread.php?t=3341&page=…
Повторюсь с позволения господина модератора, изменил текст, исправил ошибки, а то самой непонятно.
Заставить его крутиться синхронно с частотой шаговых импульсов, с небольшим угловым запаздыванием в пределах шага, вроде нет проблем. Триггер включается шагом выключается командой с энкодера. Аналогично опережение команды с энкодера команды шага формирует ШИМ тормоза. Т-е. регулирование ширины питающего импульса.
Чем на большее количество линий наш энкодер тем ниже минимальная частоты вращения вала. Всё это связано с инерционностью вращающейся частью двигателя и внешними возмущениями. За время между шаговыми импульсами управления, изменение угловой скорости двигателя не должно выйти за предел шага. Аналогично и при разгоне, прирост скорости не должен превышать прирост частоты шага. По аналогии с синхронным, рассогласование не более одного шага, это для простого триггер управления.
Вот эта постоянная движка, а точнее привода, зависящая от подвижных масс и V питания по всей видимости и вгоняется при прошивке контроллера в виде таймингов задержки.
Вся херня начинается при угловых скоростях и частотах шага меньше оговоренной,
и привязанной к постоянной движка, так называемый одиночный шаг. Наш енкодер превращается в совсем не хоббийное развлечение.
В случае пропуска двигателем шага по управлению (пришел следующий а двигатель отрабатывает предыдущий, или команды с энкодера при торможении) ДС вращается быстрее шаговых импульсов так же нужна буферизация для возможности отработки ошибки в пределах преемлимой точности.
Заманчиво сделать задержку синхронно по всем координатам на величину времени разгона до максимальной скорости привода, тогда сразу выделяется команда скорости, хотя бы на несколько шагов, для прогнозируемого построения ШИМ регулирования.
Ладно, как сказал один из наших братьев, уважаемый член нашей же общины полнейший БРЕД, или симптомы обострения на ранних стадиях СNСфилии.
…Нет, не все так просто. Хоть двигатель и инерционен, но инерция портала в деятки раз выше. А там, на инструменте, частенько возникают различные критические нагрузки. Да и при простом передвижении не все так гладко, как представляется.
Обсчет целой кучи параметров занимает совсем не 100 команд, а разы больше. Кстати, в ПИКе есть аппаратное умножение (я не в курсе) ? Кстати, если вы внимательно прочитаете пост чуть выше, вы можете заметить, что время обработки сервоцикла на ПИК около 200мксек, или всего 5кГц. А “правильный” моторчик может разогнаться до 50об/сек за 50мсек. Вот и считайте, сколько шагов он пробежит, пока софт отреагирует.
Енкодер на 500CPR (циклов на оборот) даёт 2000 мипульсов. И это простой енкодер, обычно ставят поболее, например 2000CPR. И совсем не просто так.
Можно, кстати, отметить, что любой CNC-софт позволяет задавать ускорение, скорость по координате, то есть перемещение по конкретной оси будет относительно плавным. Но переходные процессы, расчет скольжения, тривиальная соринка, из-за которой на 20мксек необходимо срегулировать ШИМ на 500% - вот это требует больших скоростей.
Начав свою разработку сервы для коллекторника, буквально за пару дней были получены потрясающие результаты на отдельно лежащем на столе двигателе. После установки его на ось все круто изменилось - появились пробежки до 50 лишних шагов, бешеный джиттер, неконтролируемое плавание тока…
Так что не зря таки ставят DSP…
ШД против СЕРВЫ
Почему СЕРВЫ луче ШД?
по мочности - одинаковы, на любой вкус.
скорость перемещения - ШД при хорошем контроллере не уступают.
Точность позиционирования (если люфт стола = 0) - ШД при микростепе 0,001 легко
Ага ! А вот если люфтит!
СЕРВЕ ведь все равно типа заданная точность (например 0,001) обеспечена!
Тогда делаем так. Например требуется пройти ровно 5 см.
Берем ШД + линейку (лазерную, на мыше какую хотите колибруем на точность 0,001)
Пишем в контроллере:
относительная точка отсчета с лазерной линейки в “0”
шагать двигло пока на линейке не будет => 5см - SТОР
Типа этокой обратной связи на ШД.
Для хобийного станка думаю будет самый раз
и по стоимости и по точности.
Таким образом мы снова возвращаемся к линейным энкодерам которые труднодоставабельны - раз, не дают такой точности(помоему) - два… а в остальном они мне тоже больше нравятся… 😉
GOOD,
“Почему СЕРВЫ луче ШД?
по мочности - одинаковы, на любой вкус.
скорость перемещения - ШД при хорошем контроллере не уступают.
Точность позиционирования (если люфт стола = 0) - ШД при микростепе 0,001 легко”
Не надо ставить против. Это разные системы, со своими преимуществами и недостатками.
По точнности неодинаковы. По скорости вообще рядом не стоят. Перемещения в микрошаге обсуждали здесь неоднократно, точность не гарантирована, точность ШД в его конструкции, поэтому говорят только о полном шаге.
ОС для станка на ШД, тем более для любительского станка, это нонсенс. Уже это пережёвывалось на этом форуме неоднократно. Хоть почитал бы кто, поиском воспользовался, а не сразу в дискуссию ввязываться.
Здравствуйте! Может кто знает, что это за двигатель и можно ли его использовать в качестве сервопривода для самодельного станка? Надпись на двигателе: “KUKA SchweiBanlagen+Roboter GmbH
P Magn Mot Typ MS-300 Ncm 152, V-65.5, A-9.2, min-3000, 0.5 kW”.
Здравствуйте! Может кто знает, что это за двигатель и можно ли его использовать в качестве сервопривода для самодельного станка? Надпись на двигателе: “KUKA SchweiBanlagen+Roboter GmbH
P Magn Mot Typ MS-300 Ncm 152, V-65.5, A-9.2, min-3000, 0.5 kW”.
Производителя можно здесь посмотреть, но вот про моторы ничего нет - они изготавливают и продают готовые системы. Сайт
Но наверно у них можно спросить ☕
Производителя можно здесь посмотреть, но вот про моторы ничего нет - они изготавливают и продают готовые системы. Сайт
Но наверно у них можно спросить ☕
[/quote]
Сайт просмотрел, спасибо, но с языком проблемы, если можете-помогите! Кстати, вот фото мотора.
Permanent Magnet Motor
По виду и по данным похож на коллекторный мотор постоянного тока,
если щётки есть, то точно он.
На заднем конце вала должен быть энкодер, куда делся?
Использовать можно с G320, G340, UHU, Rutex.
Alex
Энкодер сняли до меня. Есть по 2 пары щеток( запараллелены), но, почему-то, расположены несимметрично, т.е. ось щеток не проходит через ось вала. Я так понимаю, энкодер нужен для отслеживания положения ротора, но на моем станке установлены линейки перемещений, можно их использовать для обратной связи?
Вопрос к тем, кто делал драйвера на микрошаге, какой вы используете ЦАП.
Я пробую сделать драйвер для ШД5, у него шесть обмоток применил ЦАП (два канала ) AD7303 AnalogDevice 3шт. + микроконтроллер AtMega8535.
Схемотехник из меня хе…плохой потому силовая часть хромает, короче вылетел этот самый ЦАП, получается некомплект. Может кто подскажет дешевый ЦАП типа TDA8444 только не АЙ-ТУ-СИ порт .
Очень интерисует как народ решает проблему, может без DAC обходится.
Таким образом мы снова возвращаемся к линейным энкодерам которые труднодоставабельны - раз, не дают такой точности(помоему) - два… а в остальном они мне тоже больше нравятся… 😉
Можно купить на рынке из старых струйных принтеров ! только по длинне ограничения есть небольшие 😃