Сервопривод..
Что касается импульсов с энкодера PIC18fxx31 переваривает 625000 импульсов энкодера в секунду. Боюсь это максимум для LPT и MACH.
Так что умное управление пока оставим в покое. (Я подозреваю что выход энкодера при ±10В уходит в стойку а не в драйвер)
Скоро нарисую схему - положу на рассмотрение.
Практически любой современный МК переварит довольно высокую частоту входа с енкодеров. Но есть ньюансы, например дребезг и некоторые тонкости при смене направления. Оптимально и абсолютно правильно на выходе енкодеров ставить фильтр из кучки D-триггеров, чем длиннее, тем лучше.
Вот пример для цепочки из 8-и триггеров:
SUBDESIGN NS_FILT
(
IN, СLK, CLR :INPUT;
Q :OUTPUT;
)
VARIABLE
T[8…1],
OUT 😁FF;
BEGIN
T[].clk = CLK;
T[].clrn = !CLR;
T[1].D = IN;
FOR i IN 2 TO 8 GENERATE
T[i].D = T[i-1].Q;
END GENERATE;
OUT.clk = GND;
OUT.D = GND;
OUT.prn = !(T[1] & T[2] & T[3] & T[4] & T[5] & T[6] & T[7] & T[8]);
OUT.clrn = T[1] # T[2] # T[3] # T[4] # T[5] # T[6] # T[7] # T[8];
Q = OUT.Q;
END;
Или более понятно на картинке для 3-х триггеров: (схема и VHDL код совершенно разные, но принцип один).
buslik,
Что касается импульсов с энкодера PIC18fxx31 переваривает 625000 импульсов энкодера в секунду. Боюсь это максимум для LPT и MACH.
В каком смысле переваривает? Если простая программка квадратурного энкодера на один канал, тогда так. Если чего посложнее, тогда не так. Обратную связь на LPT, да ещё под виндой, это не серьёзно. Уже повторять устал. Но если хотите, пробуйте грабли на прочность.
Гораздо проще, и приемлемей для хобби, это цифровой импульсный привод, удерживающий координату. Типа контроллер Чена или драйвер, сиречь привод UHU. Управлять им точно так же, как и приводом ШД. Со своими нюансами естественно. В частности, требования к стабильности частоты возрастают. Если тот же Мачь2 выдаёт 35 КГц, это неплохие скорости.
Если вам не будет хватать скорости и точности этих приводов и Мача, тогда придётся переходить на более совершенные и дорогие системы.
Я подозреваю что выход энкодера при ±10В уходит в стойку а не в драйвер
Это зависит от схемы сервосистемы. Бывают разомкнутые по управлению (координату удерживает привод), бывают замкнутые (координату удерживает ЧПУ, данные с датчика обратной связи (ДОС) заводятся в ЧПУ).
По классической схеме, замкнутая сервосистема станка ЧПУ организуется следующим образом:
Данные с ДОС заводятся в стойку ЧПУ, обрабатываются, на их основании рассчитываются скорости, цифровые данные преобразуются блоком ЦАП в аналоговый сигнал, передаваемый электроприводу, который удерживает скорость в заданном диапазоне независимо от момента на валу.
Сервопривод получает аналоговый сигнал + - 10V. Привод может быть аналоговый или цифровой. Рассматриваем цифровые электропривода. Привод состоит из АЦП, центрального процессора, использующего какой либо алгоритм удержания скорости (PID, PIV, PDFF, PI+ регулирование) если требует силовая часть, то в составе ещё и ЦАП.
Как правило, электропривод использует в качестве ДОС тахогенератор. С тахогенератора снимается аналоговый сигнал + - 10V, прямо пропорциональный скорости движения.
В последнее время всё чаще в качестве ДОС привода используются современные энкодеры.
Например, в сервоприводах Митсубиси серий MR-J2(S)-A/В. количество импульсов на оборот от 8192 до 131072 имп./об. (17-битный энкодер).
Также наметилась тенденция сращивания ЧПУ и привода. Это системы с прямым ШИМ управлением силовыми ключами.
Практически любой современный МК переварит довольно высокую частоту входа с енкодеров. Но есть ньюансы, например дребезг и некоторые тонкости при смене направления. Оптимально и абсолютно правильно на выходе енкодеров ставить фильтр из кучки D-триггеров, чем длиннее, тем лучше.
Эх, что такое довольно высокая частота? Давайте уже поконкретней.
PIC: 625 kHz это 18750 rpm при 2000 отсчетов на оборот. это по контроллеру. (контроллер имеет спец модуль энкодера с фильтрацией см. datasheet)
По LPT прозвучала цифра 35k степов в секунду. Это 1050 rpm.
PID укладывается в 20 uSec начну эксперименты с 5000 PID в секунду.
PWM 10 bit - думаю всего это достаточно.
Я работал с CPLD и с FPGA и с DSP – но считаю что для хобби станка должен быть другой подход.
Корпуса DIP, доставабельные микрухи и прочее, тогда их будут повторять и совершенствовать.
Мало того, мне проще так делать прототипы, думаю другим то-же.
Итого step/dir интерфейс и последовательный порт для установки параметров. Думаю даже отдельная плата с USB и далее I2C на остальные контроллеры.
Согласные могут отойти от стены 😃
PS не надо про BGA на коленке.
Всем доброго времени суток!
Достались мне тут по случаю 4 енкодера б/у:
Stegmann
DG 60 ELB-S
1024 puls/rev
Vdc 4,75-5,25v
И возник у меня такой вопрос:
Они совсем бесполезны для наших целей или как? Всетаки 1024 импульса?
P.S.
Просьба замену дисков не предлагать.
Nick34,
Нормальный энкодер.
где подешевле сервомоторы можно взять
с параметрами до 20A 80VDC ? штуки 3-ри.
450$ одного это нормальная цена ?
Nick34,
Нормальный энкодер.
Да нормальный, но хочется узнать о возможности его применения в CNC. Только поконкретней пожалуйсто.
STEPMOTOR,
450$ одного это нормальная цена ?
Дороговато, можно чего нибудь подешевле на складах, рынках, да хоть в Инете поискать. 20A 80VDC серво, это крутой движок. Портал с полтонны двигать можно довольно шустро.
Высокомоментный серводвижок ВЭМ–110, 8,4А / 80В, 1000 об/мин, килограмм 16 весит, примерно 100$ на заводе-изготовителе стОит.
Nick34,
хочется узнать о возможности его применения в CNC. Только поконкретней пожалуйсто.
Применение в CNC конечно возможно. Из нюансов - некратное число имп/об. Наример, если шаг ШВП - 5мм, то один шаг получится 0,00488. Он как бы больше на дюймовый шаг заточен - 0.025, при шаге ШВП или рейке 25,4. Точнее шаг будет 0,0248.
Он как бы больше на дюймовый шаг заточен - 0.025, при шаге ШВП или рейке 25,4. Точнее шаг будет 0,0248.
легко компенсируется подбором передаточного числа на ремне между мотором и ШВП…
Чуть не купил сегодня на рынке недорого сервомотор (про запас). Hitachi, сразу с энкодером. Смутило то, что несмотря на размер (больше ДШИ-200-3) написана мощность всего 30 oz in. Может у серв как-то по другому все считается? Никто не в курсе?
Может у серв как-то по другому все считается?
Всё одинаково считается. Момент на валу, он и есть момент. У меня есть подозрение, что на некоторых современных импортных ШД в рекламных целях завышают значения. Или как то по своему считают. Типа как на электромясорубке, на коробке написано английскими буквами - мощность на валу 1000W, мясорубку в руки берёшь, на ней лэйба - электрическая мощность движка 400W. Даже если КПД 100%, не клеится. Либо врут, либо как то по своему считают, типа на коэффициент редукции, или ещё чего, ну чтобы красиво было 😃
То же с шаговиками. Движок три кило весит, а на нём китайцы пишут, типа 7 Нм. Нифига себе.
Для интереса на шильдик одного сервомотора глянул, ВЭМ 214 У3:
14 Нм, 31,5 А, 44V, 750 об/мин, вес 47 кг. (чёто сам не верю, по ощущениям килограмм 40) Это получается 1,3 КВт мощность. Так вот, этот движок с прямым приводом легко таскал себя, плюс стол, весом килограмм 400, на нём деталь килограмм в 100, со скоростью метра три в минуту, причём направляющие “ласточкин хвост” с клином, а не каретки какие нибудь, и на неплохих подачах станок не напрягаясь, как масло резал сталь фрезой диаметром 20.
Так что 14 Нм высокомоментный ДПТ серво - это серьёзная электрическая машина.
Всё понятно, в современных движках используют магниты на редкоземельных металлах, но чудес то не бывает. Тот же Вудпекер на шаговиках еле еле портал 60 кг на втулках таскает. В рекламе написано 4 м/мин, я хронометраж сделал - двух не тянет. На рабочей подаче метр максимум. И то, чуть фрезой D6 в пластмасску заглубишься, шаги теряет, скорость снижай, на дугах мандражировать начинает, ещё снижай…
написана мощность всего 30 oz in.
вот здесь: www.me-systeme.de/calculate/torque.html
калькулятор для перевода разных величин,так согласно ему 30oz/in=0,211847 Nm.На днях переписывался с владельцем сайта CAMTRONICS Dan Mach,по поводу покупки у него сервомотора 430 oz/in =3,037Nm 149$,так он мне ответил ,что такой движок с редуктором 1:2 и ШВП шагом 5 мм развивает усилие на каретке 89 кг.Потом здесь в Москве MAXVOVK подсказал ,что пишут они максимальную,пиковую мощность, а Rated current ( номинальная мощность) = 0,29 Nm.Вот теперь и сравните пиковая 3,037Nm —номинальня 0,29 Nm.Покупку этого сервомотра отменил,но он мне предложил другие варианты .
Наверное, куплю на всякий случай. Может, когда вместо шаговиков поставлю.
Да, вот еще. Может кто-нибудь из спецов навскидку определить степень отстойности этого “чуда”:
imafania.boom.ru/contr3.htm
Да, вот еще. Может кто-нибудь из спецов навскидку определить степень отстойности этого “чуда”:
imafania.boom.ru/contr3.htm
Человек этот очень простой. Он просто взял и повторил схему Чена. Как рабочий серво-привод использовать НЕЛЬЗЯ. Как привод неточный, например что-то равномерно двигать, например для прямолинейной раскройки - вполне.
Интересно, он сам его испытывал? Думаю, вряд-ли. Нужно его позвать сюда, чтобы он публично ответил на несколько вопросов, чтобы всем все стало понятно 😃.
А дело в том, что он по всей видимости целенаправленно уходит от дискуссии и на письма не связанные с покупкой у него чего-либо просто не отвечает. Я собственно к чему спросил: видал тут прикольные сервомоторы (в субботу фотку цепану) с энкодером. Хотел попробовать что это есть сервы. Особо загоняться не хочется, т.к. до ума не доведен станок на шаговиках, но все равно интересно. В связи с этим вопрос: где можно купить контроллер для сервы можно попроще и подешевле (скажем порядка предыдущей ссылки) чисто для хоббийного станка?
P.S. Очень не хотелось бы, чтобы вопрос прозвучал а-ля
“собираюсь делать фрезер из принтеров, подскажите чайнику что куда втыкать”.
Вот это никто не пробовал ?
Микруха от ST Microelectronics
Да, вот еще. Может кто-нибудь из спецов навскидку определить степень отстойности этого “чуда”:
imafania.boom.ru/contr3.htm
Да и контроллеры на шаговики “оставляют желать”.Несинхронный режим,несоответствующие защитные диоды,
проблема с заменой выходных ключей,отсутствие режимов переключения,отсутствие какой-либо индикации.Чувствуется ,человек не сильно парится возникающими проблемами клиентов.Спаял,а там хоть и не рассветай.
Читала я читала так и не поняла как же в самодельных сервах это реализуется.
Ну пришёл шаговый импульс, да пришел он один нещасненький.
Рассогласование тут у сервы, и она в зависимости от длины программной цепочки, и своёй тактовой частоты, через ШИМ даёт питание на якорь до того момента пока с энкодеране не то, что ей ответ прейдёт в виде импульса того, что она сделала.
- Нам хотелось на оборот сервы 100-200 шагов при прямом приводе иметь, а стаким же разрешением на оборот у энкодера о серве и не мечтай. Народу 2000 тысячи импульсов подавай. Если ШИМ строить исходя из 1/200 оборота, старт такой бешенный что уносит.
- Отправлять 2000 шагов соответственно разрешению энкодера , а не необходимой минимальной величине шага тоже не реально.
- Тада мы , чё растягиваем ШИМ по енкодеру, тоесть. На один шаг управления приходиться 20 шим умпульсов отработки. Да контролировать минимальную угловую скорость возможно только с энкодером максимального разрешения. И чё мы хоббисты делаем, оговариваем максимальную величину прироста скорости. Те. За два три ШИМа мотор набрал оговоренный прирост или в случ. первого шага минимальную скор. дальше ШИМ пустой пока скорость не спадет на величину гестерезиса проехав 18 пустушек едим дальше без контроля скор. до отработки ещё 20 импульсов с енкодера (а вдруг прийдёт следующий в случае разгона) и тока на 41 импульсе мы насинаем тормозить, и в этом случае если мы встали на 3 импульсах энкодера то мы так и стоим, если проскочили 20 отведенные на тормоз +40 разгон и выбег та тогда задний ход по всей этой процедуре, как говориться держим координату.
Чёта нефига не пойму кто кому голову морочит.
Если после первого приходит следующий, или же последний по макс скорости при разгоне (отсюда ли задаётся ширена удержания координатной точки по енкодеру) подача питания по ШИМу идёт опять по оговоренному в настройке привода приросту скорости. - Тода опять не пойму как за 2-3 пульса с енкодера скорость вычесть, с 20 вычесть можно а с 2-3 как.
- Как вы господа без отправки всей пачки шагов по размеру которой и неплохо бы иметь ещё отдельно величину рекомендуемой скорости свой сервопривод мутите.
Может это симптомы конечно, но не чё пальцем в клаву попадаю.
Такое впечатление, что целенаправленно втирают стерва умные фразы на Аглицком,
Типа там написано мы врубились а ты недалёкая те до нас, ещё и не дождешься такого в смысле высоты интеллекта в понимании работы СТЕРВАпривода.
Я на усилок намекнула –не морочь Г.
Усилок к шагу прощё привязать, измерь момент на шагавике, хош по валу через оптику, хош по реакции статора через мост с тензо датчиком и на вход усилка в D режиме. И всё.
Чё мне одной впрягаться, где бред, и где его больше
С уважением к братья по вере.
Мужики, вы опять полезли не в те дебри, надо сначала разрвботать грамотный алгоритм управления сервом, а потом уже задумываться над его реализацией…
Повторяю свой вопрос - что должен сделать контроллер когда на него пришел сигнал сделать шаг?
на сколько нужно регулировать шим?, от куда контроллер возьмет нужную скважность, если это первый шаг(начало разгона), как контроллер должен понять собираемся ли мы рвануть с места или разгоняться плавно или вообще не разгоняться а сделать один шаг(опять же непонятно с какой скоростью надо шагнуть(шим то любую позволит))…
Те одно и тоже скока спрашивать, отвечай раз умный, просветляй темень.
модератор
Бессодержательные комментарии и личная переписка в теме были удалены. Если сказать по теме нечего, то сидим терпим, не засоряем форум. Дальше буду штрафовать.