Страница 1 из 3

Управление модельными сервоприводами от LinuxCNC

Добавлено: 05 июл 2012, 03:01
Сергей Саныч
Есть идея применить сервоприводы постоянного тока с ШИМ-управлением (модельные) в макетном прототипе некоего "окрасочного робота". Высокая точность позиционирования здесь не требуется. Преимущества такого выбора: низкая цена, доступность, высокое быстродействие, простота управления (ШИМ-сигнал уровней ТТЛ). Вопрос в том, можно ли получить от LinuxCNC управляющий ШИМ-сигнал, где ширина импульса пропорциональна заданной координате (углу поворота вала сервомашинки)?
Принцип управления таким сервоприводом. Период импульсов - 20 мс. (3211 просмотров) <a class='original' href='./download/file.php?id=6310&mode=view' target=_blank>Загрузить оригинал (27.7 КБ)</a>
Принцип управления таким сервоприводом. Период импульсов - 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
результат:
(для просмотра содержимого нажмите на ссылку)
Выделение(035).png (3189 просмотров) <a class='original' href='./download/file.php?id=6311&mode=view' target=_blank>Загрузить оригинал (16.49 КБ)</a>
(другие сигналы смотрел,чтоб проверить работу 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 нет-я в стандартный просто добавил шим-генератор,чтоб посмотреть как это в емс работает
core_stepper.hal
(2.33 КБ) 1122 скачивания
standard_pinout.hal
(2.37 КБ) 1081 скачивание

Re: Управление модельными сервоприводами от LinuxCNC

Добавлено: 05 июл 2012, 13:29
Nick
А значение ему кто будет присваивать? :)
Добавь на график еще pwmgen.0.value

Re: Управление модельными сервоприводами от LinuxCNC

Добавлено: 05 июл 2012, 15:39
nkp
Спасибо,Ник!
(для просмотра содержимого нажмите на ссылку)
Выделение(036).png (3166 просмотров) <a class='original' href='./download/file.php?id=6319&mode=view' target=_blank>Загрузить оригинал (51.52 КБ)</a>
Вот здесь с 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 писал(а): А вот равномерность (плавность) движения - желательна. А так она рывками будет двигаться.
А как он в итоге вычисляет положение в которое нужно повернуться? Неужели по длине импульса?

А где такую серву купить можно? И что к ней еще подключать надо (какое питание)?