Управление модельными сервоприводами от LinuxCNC
- Сергей Саныч
- Мастер
- Сообщения: 9116
- Зарегистрирован: 30 май 2012, 14:20
- Репутация: 2857
- Откуда: Тюмень
- Контактная информация:
Управление модельными сервоприводами от LinuxCNC
Есть идея применить сервоприводы постоянного тока с ШИМ-управлением (модельные) в макетном прототипе некоего "окрасочного робота". Высокая точность позиционирования здесь не требуется. Преимущества такого выбора: низкая цена, доступность, высокое быстродействие, простота управления (ШИМ-сигнал уровней ТТЛ). Вопрос в том, можно ли получить от LinuxCNC управляющий ШИМ-сигнал, где ширина импульса пропорциональна заданной координате (углу поворота вала сервомашинки)?
Чудес не бывает. Бывают фокусы.
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: Управление модельными сервоприводами от LinuxCNC
Так вроде тот же 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
Можешь посмотреть, что он выдает в 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
-
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Управление модельными сервоприводами от LinuxCNC
Код: Выделить всё
loadrt pwmgen output_type=0
addf pwmgen.update servo-thread
addf pwmgen.make-pulses base-thread
setp pwmgen.0.enable 1
может какие то параметры шим нужно прописать?
чет пока не работает
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: Управление модельными сервоприводами от LinuxCNC
А что не нравится? Сделай масштаб по больше и по больше семплов, будет ровнее видно.
-
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Управление модельными сервоприводами от LinuxCNC
шим - красный цвет
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: Управление модельными сервоприводами от LinuxCNC
Скинь свой hal...
-
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Управление модельными сервоприводами от LinuxCNC
"своего" hal нет-я в стандартный просто добавил шим-генератор,чтоб посмотреть как это в емс работает
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: Управление модельными сервоприводами от LinuxCNC
А значение ему кто будет присваивать?
Добавь на график еще pwmgen.0.value
Добавь на график еще pwmgen.0.value
-
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Управление модельными сервоприводами от LinuxCNC
Спасибо,Ник!
Вот здесь с 9 ножки парпорта можно взять шим,
а ползунком регулировать скважность.
а ползунком регулировать скважность.
- Вложения
-
- Sherline3AxisPWMG.tar
- (30 КБ) 463 скачивания
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: Управление модельными сервоприводами от LinuxCNC
Серву уже подключал? Как работает?
-
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Управление модельными сервоприводами от LinuxCNC
Это наверно вопрос к ТС ?Nick писал(а):Серву уже подключал? Как работает?
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: Управление модельными сервоприводами от LinuxCNC
Точно! Я думал, это он ответил
- Сергей Саныч
- Мастер
- Сообщения: 9116
- Зарегистрирован: 30 май 2012, 14:20
- Репутация: 2857
- Откуда: Тюмень
- Контактная информация:
Re: Управление модельными сервоприводами от LinuxCNC
Огромное спасибо Nick и nkp за столь активную помощь!
Вообще, приятно удивлен отзывчивостью и доброжелательностью участников этого форума.
По сути вопроса. Загрузил конфигурацию, предложенную nkp, получил на ноге порта ШИМ, стал разбираться с параметрами.
И тут дошло до меня, что временнОе разрешение, возможное в EMC, явно не достаточно. Дело в том, что серва требует импульс шириной от 0,5 до 2,5 мсек и весь диапазон перемещений должен укладываться в эти 2 миллисекунды. То есть, чтобы получить дискретность перемещения хотя бы 1%, нужно, чтобы период базовой частоты был не более 20 мкс. Что с имеющимся компьютером (Max Jitter как раз 20 мкс) получить не реально.
А жаль...
Вообще, приятно удивлен отзывчивостью и доброжелательностью участников этого форума.
По сути вопроса. Загрузил конфигурацию, предложенную nkp, получил на ноге порта ШИМ, стал разбираться с параметрами.
И тут дошло до меня, что временнОе разрешение, возможное в EMC, явно не достаточно. Дело в том, что серва требует импульс шириной от 0,5 до 2,5 мсек и весь диапазон перемещений должен укладываться в эти 2 миллисекунды. То есть, чтобы получить дискретность перемещения хотя бы 1%, нужно, чтобы период базовой частоты был не более 20 мкс. Что с имеющимся компьютером (Max Jitter как раз 20 мкс) получить не реально.
А жаль...
Чудес не бывает. Бывают фокусы.
-
- Опытный
- Сообщения: 128
- Зарегистрирован: 04 июн 2012, 23:46
- Репутация: 5
- Контактная информация:
Re: Управление модельными сервоприводами от LinuxCNC
Что-то я сомневаюсь что сама модельная серва сможет точней позиционироваться, неговоря уже за погрешность при нагреве и износе. Ну а если действительно такие супер сервы модельные есть, то можно сделать для неё простой внешний контроллер.Serg-tmn писал(а):И тут дошло до меня, что временнОе разрешение, возможное в EMC, явно не достаточно. Дело в том, что серва требует импульс шириной от 0,5 до 2,5 мсек и весь диапазон перемещений должен укладываться в эти 2 миллисекунды. То есть, чтобы получить дискретность перемещения хотя бы 1%, нужно, чтобы период базовой частоты был не более 20 мкс. Что с имеющимся компьютером (Max Jitter как раз 20 мкс) получить не реально.
- Сергей Саныч
- Мастер
- Сообщения: 9116
- Зарегистрирован: 30 май 2012, 14:20
- Репутация: 2857
- Откуда: Тюмень
- Контактная информация:
Re: Управление модельными сервоприводами от LinuxCNC
Высокая точность позиционирования в данном случае не нужна. А вот равномерность (плавность) движения - желательна. А так она рывками будет двигаться.billsmith писал(а): Что-то я сомневаюсь что сама модельная серва сможет точней позиционироваться, неговоря уже за погрешность при нагреве и износе.
Можно. Но изящество пропадаетbillsmith писал(а): Ну а если действительно такие супер сервы модельные есть, то можно сделать для неё простой внешний контроллер.
Чудес не бывает. Бывают фокусы.
- Serg
- Мастер
- Сообщения: 21923
- Зарегистрирован: 17 апр 2012, 14:58
- Репутация: 5181
- Заслуга: c781c134843e0c1a3de9
- Настоящее имя: Сергей
- Откуда: Москва
- Контактная информация:
Re: Управление модельными сервоприводами от LinuxCNC
На каждую серву копеечный восьминогий PIC с железным PWM (pic16f683, даже обвязка не нужна) и можно выбирать любой способ управления, хоть step/dir, хоть координатный.Serg-tmn писал(а):Можно. Но изящество пропадаетbillsmith писал(а): Ну а если действительно такие супер сервы модельные есть, то можно сделать для неё простой внешний контроллер.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Re: Управление модельными сервоприводами от LinuxCNC
Пожалуйста опишите подробнее вашего "окрасочного робота".Serg-tmn писал(а):Есть идея применить сервоприводы постоянного тока с ШИМ-управлением (модельные) в макетном прототипе некоего "окрасочного робота".
- Сергей Саныч
- Мастер
- Сообщения: 9116
- Зарегистрирован: 30 май 2012, 14:20
- Репутация: 2857
- Откуда: Тюмень
- Контактная информация:
Re: Управление модельными сервоприводами от LinuxCNC
Пока идея крайне сырая, но в общих чертах так: окрашиваемая деталь закрепляется на платформе, которая может вращаться/наклоняться/двигаться в вертикальном направлении. Распылитель краски закреплен неподвижно и управляется пневмоклапаном. Перемещение детали производится по программе, обеспечивающей равномерное покрытие.2cme писал(а):Пожалуйста опишите подробнее вашего "окрасочного робота".
Чудес не бывает. Бывают фокусы.
Re: Управление модельными сервоприводами от LinuxCNC
Схематично набросайте пожалуйста чертеж (в том виде как вы покрасочного бота представляете, даже если конструкция "сырая"), т.к не совсем ясна схема.
- Nick
- Мастер
- Сообщения: 22776
- Зарегистрирован: 23 ноя 2009, 16:45
- Репутация: 1735
- Заслуга: Developer
- Откуда: Gatchina, Saint-Petersburg distr., Russia
- Контактная информация:
Re: Управление модельными сервоприводами от LinuxCNC
А как он в итоге вычисляет положение в которое нужно повернуться? Неужели по длине импульса?Serg-tmn писал(а): А вот равномерность (плавность) движения - желательна. А так она рывками будет двигаться.
А где такую серву купить можно? И что к ней еще подключать надо (какое питание)?