Страница 1 из 3
Управление модельными сервоприводами от LinuxCNC
Добавлено: 05 июл 2012, 03:01
Сергей Саныч
Есть идея применить сервоприводы постоянного тока с ШИМ-управлением (модельные) в макетном прототипе некоего "окрасочного робота". Высокая точность позиционирования здесь не требуется. Преимущества такого выбора: низкая цена, доступность, высокое быстродействие, простота управления (ШИМ-сигнал уровней ТТЛ). Вопрос в том, можно ли получить от LinuxCNC управляющий ШИМ-сигнал, где ширина импульса пропорциональна заданной координате (углу поворота вала сервомашинки)?

- Принцип управления таким сервоприводом. Период импульсов - 20 мс.
Re: Управление модельными сервоприводами от LinuxCNC
Добавлено: 05 июл 2012, 07:57
Nick
Так вроде тот же pwmgen дает именно такую модуляцию.
Можешь посмотреть, что он выдает в HAL scope
Чтобы быстро посмотреть, как он работает, вот это в hal:
loadrt pwmgen
addf pwmgen.make-pulses base-thread
addf pwmgen.update servo-thread
setp pwmgen.0.enable 1
вот этим регулируешь значение
halcmd setp pwmgen.0.value 0.7
а вот этот пин смотришь:
pwmgen.0.pwm
Re: Управление модельными сервоприводами от LinuxCNC
Добавлено: 05 июл 2012, 12:31
nkp
Код: Выделить всё
loadrt pwmgen output_type=0
addf pwmgen.update servo-thread
addf pwmgen.make-pulses base-thread
setp pwmgen.0.enable 1
результат:
(другие сигналы смотрел,чтоб проверить работу halscope)
может какие то параметры шим нужно прописать?
чет пока не работает
Re: Управление модельными сервоприводами от LinuxCNC
Добавлено: 05 июл 2012, 12:47
Nick
А что не нравится? Сделай масштаб по больше и по больше семплов, будет ровнее видно.
Re: Управление модельными сервоприводами от LinuxCNC
Добавлено: 05 июл 2012, 12:57
nkp
шим - красный цвет
Re: Управление модельными сервоприводами от LinuxCNC
Добавлено: 05 июл 2012, 13:00
Nick
Скинь свой hal...
Re: Управление модельными сервоприводами от LinuxCNC
Добавлено: 05 июл 2012, 13:06
nkp
"своего" hal нет-я в стандартный просто добавил шим-генератор,чтоб посмотреть как это в емс работает
Re: Управление модельными сервоприводами от LinuxCNC
Добавлено: 05 июл 2012, 13:29
Nick
А значение ему кто будет присваивать?
Добавь на график еще pwmgen.0.value
Re: Управление модельными сервоприводами от LinuxCNC
Добавлено: 05 июл 2012, 15:39
nkp
Спасибо,Ник!
Вот здесь с 9 ножки парпорта можно взять шим,
а ползунком регулировать скважность.
Re: Управление модельными сервоприводами от LinuxCNC
Добавлено: 05 июл 2012, 15:58
Nick
Серву уже подключал? Как работает?
Re: Управление модельными сервоприводами от LinuxCNC
Добавлено: 05 июл 2012, 16:02
nkp
Nick писал(а):Серву уже подключал? Как работает?
Это наверно вопрос к ТС ?
Re: Управление модельными сервоприводами от LinuxCNC
Добавлено: 05 июл 2012, 16:18
Nick
Точно! Я думал, это он ответил

Re: Управление модельными сервоприводами от LinuxCNC
Добавлено: 06 июл 2012, 11:08
Сергей Саныч
Огромное спасибо Nick и nkp за столь активную помощь!
Вообще, приятно удивлен отзывчивостью и доброжелательностью участников этого форума.
По сути вопроса. Загрузил конфигурацию, предложенную nkp, получил на ноге порта ШИМ, стал разбираться с параметрами.
И тут дошло до меня, что временнОе разрешение, возможное в EMC, явно не достаточно. Дело в том, что серва требует импульс шириной от 0,5 до 2,5 мсек и весь диапазон перемещений должен укладываться в эти 2 миллисекунды. То есть, чтобы получить дискретность перемещения хотя бы 1%, нужно, чтобы период базовой частоты был не более 20 мкс. Что с имеющимся компьютером (Max Jitter как раз 20 мкс) получить не реально.
А жаль...

Re: Управление модельными сервоприводами от LinuxCNC
Добавлено: 06 июл 2012, 12:16
billsmith
Serg-tmn писал(а):И тут дошло до меня, что временнОе разрешение, возможное в EMC, явно не достаточно. Дело в том, что серва требует импульс шириной от 0,5 до 2,5 мсек и весь диапазон перемещений должен укладываться в эти 2 миллисекунды. То есть, чтобы получить дискретность перемещения хотя бы 1%, нужно, чтобы период базовой частоты был не более 20 мкс. Что с имеющимся компьютером (Max Jitter как раз 20 мкс) получить не реально.
Что-то я сомневаюсь что сама модельная серва сможет точней позиционироваться, неговоря уже за погрешность при нагреве и износе. Ну а если действительно такие супер сервы модельные есть, то можно сделать для неё простой внешний контроллер.
Re: Управление модельными сервоприводами от LinuxCNC
Добавлено: 06 июл 2012, 13:06
Сергей Саныч
billsmith писал(а):
Что-то я сомневаюсь что сама модельная серва сможет точней позиционироваться, неговоря уже за погрешность при нагреве и износе.
Высокая точность позиционирования в данном случае не нужна. А вот равномерность (плавность) движения - желательна. А так она рывками будет двигаться.
billsmith писал(а):
Ну а если действительно такие супер сервы модельные есть, то можно сделать для неё простой внешний контроллер.
Можно. Но изящество пропадает

Re: Управление модельными сервоприводами от LinuxCNC
Добавлено: 06 июл 2012, 13:31
Serg
Serg-tmn писал(а):
billsmith писал(а):
Ну а если действительно такие супер сервы модельные есть, то можно сделать для неё простой внешний контроллер.
Можно. Но изящество пропадает

На каждую серву копеечный восьминогий PIC с железным PWM (pic16f683, даже обвязка не нужна) и можно выбирать любой способ управления, хоть step/dir, хоть координатный.
Re: Управление модельными сервоприводами от LinuxCNC
Добавлено: 06 июл 2012, 14:51
2cme
Serg-tmn писал(а):Есть идея применить сервоприводы постоянного тока с ШИМ-управлением (модельные) в макетном прототипе некоего "окрасочного робота".
Пожалуйста опишите подробнее вашего "окрасочного робота".
Re: Управление модельными сервоприводами от LinuxCNC
Добавлено: 06 июл 2012, 15:18
Сергей Саныч
2cme писал(а):Пожалуйста опишите подробнее вашего "окрасочного робота".
Пока идея крайне сырая, но в общих чертах так: окрашиваемая деталь закрепляется на платформе, которая может вращаться/наклоняться/двигаться в вертикальном направлении. Распылитель краски закреплен неподвижно и управляется пневмоклапаном. Перемещение детали производится по программе, обеспечивающей равномерное покрытие.
Re: Управление модельными сервоприводами от LinuxCNC
Добавлено: 06 июл 2012, 15:24
2cme
Схематично набросайте пожалуйста чертеж (в том виде как вы покрасочного бота представляете, даже если конструкция "сырая"), т.к не совсем ясна схема.
Re: Управление модельными сервоприводами от LinuxCNC
Добавлено: 06 июл 2012, 16:05
Nick
Serg-tmn писал(а): А вот равномерность (плавность) движения - желательна. А так она рывками будет двигаться.
А как он в итоге вычисляет положение в которое нужно повернуться? Неужели по длине импульса?
А где такую серву купить можно? И что к ней еще подключать надо (какое питание)?