SMSD
 

Новости:

Добро пожаловать на форум об электродвигателях!

Главное меню

SMSD

Автор AndruKrug, 24 ноября 2010, 14:18:05

« назад - далее »

AndruKrug

Здравствуйте, есть контроллер SMSD 9.0
задача: При получении команды выполнить определенное кол-во шагов в заданном направлении.

Через USB интерфейс все прекрасно работает
Задал кол-во шагов скорость направление нажал пуск и все закр/откр.

Как я понял программа записывается в сам контроллер и там хранится.

Теперь пытаюсь запустить с помощью встроенных входов.
Использую реверс и ВХ1. Пишу ожидание от входа1 (в программе) - не работает.
Использую реверс и аварию - не работает.

Код программы:
LD1*BG*EN*AL0*SD1000*DR*DF*MV15000*ED*

1. Что сделать чтобы запускалась программа и можно было менять направление вращения от внешних сигналов.
2. Внешний сигнал включения должен работать все время? или только при пуске?
3. Когда программа закончит работу при вкл. сигнале разрешения работы она запуститься заново?
4. Я задал 15000 шагов, но где-то на 14000 у меня заканчивается диапазон хода - в автомате программа вроде останавливается сама, но двигатель продолжает издавать какие-то звуки. Это нормально?
5. При стопоре (не возможности двигаться) программа останавливается? Как организована защита от перегрузки?
6. Если включить сигнал "реверс" во время работы программы она не изменит направление?

Administrator

В приведенном Вами коде программы нет команды ожидания сигнала на вход ВХ1.

Если подразумевается именно запуск исполнительной программы по сигналу на вход, то необходимо выяснить, когда был куплен блок. Модернизация блоков была произведена в конце мая этого года. Новые блоки имеют функцию запуска ИП при получении сигнала на вход. До модернизации эта опция была доступна только при использовании обновленной прошивки, которую мы записывали в блок только по просьбе клиента.
Если у Вас блок старого образца со стандартной прошивкой, то эта функция работать не должна (можно выполнить перепрошивку у нас в офисе).

Сигналы реверс и авария срабатывают по переднему фронту. Т.е. если Вы активируете сигналы до начала выполнения алгоритма, они не работают. (например, если вы сначала замыкаете сигнальную цепь "реверса" или "аварии", а потом запускаете исполнительную программу).

2. Для запуска исполнительной программы нужен только передний фронт. нет необходимости держать его все время выполнения программы.
3. Нет. Она запустится только из дежурного режима (т.е. по завершении предыдущего выполнения) по переднему фронту сигнала (на вх1 или кнопкой пуск)
4,5. Программа ничего не знает о том, что у Вас закончился диапазон хода, блок продолжает коммутировать фазы двигателя в соответствии с заданным количеством шагов. Странные звуки можно объяснить тем, что выростает момент на валу двигателя, он не может с ним справиться и выходит из синхронизации. (Предполагаю, что у Вас довольно высокая скорость).

При стопоре программа не останавливается, контроллер продолжает выполнять исполнительную программу.  Тип привода позволяет не заботиться о перегрузке, т.к. при превышении нагрузки двигатель просто пропускает шаги или выходит из синхронизации (при работе с высокими скоростями)

6. Если в режиме выполнения подать сигнал реверс, направление движения изменится.

AndruKrug

Блок был куплен год назад.
1. Как узнать какая прошивка стоит?
2. Можно ли перепрошить самому?
3. в Москве можно перепрошить, перепрошивают при мне?
4. Что такое - функция ИП?
5. Как по вашему мнению должна выглядеть программа, чтобы можно было ЗАРАНЕЕ выбрать направление движения и Запустить её.
6. На какие входа надо подавать сигналы? (Вх1 и реверс)?
7. Есть возможность записать 2 программы одновременно или одну, но чтобы она выполняла только нужную часть в зависимости от сигнала - реверс?
8. Как понять и выбрать режим контроллера (контроллер/ драйвер)?
9. Я думал что эта схема прекрасно будет работать в режиме драйвер. Если подать сигналы на "разрешение" и "направление".
10. Для чего нужен вход "шаг", если есть разрешение?
11. Обязательно надо ставить перемычку на "скорость"?
12. Если в программе вместо направления движения поставить реверс в какую сторону он начнет двигаться? +если питания отключали?

Administrator

#3
1. Только косвенным образом. Если нас об этом не просили, то прошивка у Вас скорее всего старая.
2. Нет, так как мы не распространяем файлы прошивок
3. Можно, перепрошьют при Вас, но предупредите сотрудников заранее о времени визита.
4. ИП = испольнительная программа
5. LD1*BG*EN*DR*AL0*SD1000*DR*DF*MV15000*ED* или LD1*BG*EN*DL*AL0*SD1000*DR*DF*MV15000*ED*
6. Для чего? на вход "реверс" - для реверсирования двигателя во время движения, на вход ВХ1 - в соответствии с заданной программой
7. Такой возможности для блоков SMSD нет. Такой вариант возможен для сервоприводов SERVO-1 или Ezi-Servo
http://www.electroprivod.ru/servoprivod.htm
http://dmotor.ru/servodrive.htm
8,10. Режим контроллера - это когда Вы в память загружаете какой-то алгоритм работы и привод его отрабатывает. Режим драйвера - это когда Вы производите управление сигналами "ШАГ"/"НАПРАВЛЕНИЕ"/"РАЗРЕШЕНИЕ". Каждый импульс напряжения высокого уровня на вход "шаг" соответствует перемещению вала на угол одного шага (микрошага) двигателя. Направление определяется уровнем сигнала на входе "направление" - низкий уровень - в одну сторону, высокий уровень - в другую сторону. Сигнал "Авария/пауза/разрешение" предназначен для аварийной или преднамеренной остановки привода. Присутствие высокого уровня сигнала на этом входе означает, что движение запрещено. При низком уровне сигнала - штатная работа привода.
9. В режиме драйвера нет речи о работе по заложенному алгоритму. На вход шаг нужно непрерывно подавать импульсы напряжения с соответствующими частотой и ускорением
11. Перемычка на "скорости" влияет только на работу в режиме ручного управления. Вам следует все же определиться, какой вариант управления будет удобнее использовать.
12. В сторону, противоположную той, в которую он бы вращался при отсутствии этой команды. Направление зависит от того, как Вы подключили фазы двигателя.

AndruKrug

11. Ручной режим это при нажатии в ручную кнопки пуск и стоп?
12. т.е. если в программе написать реверс - то он будет вращаться всегда назад, если других направлений не задавалось?
9. А без задания импульсов на вход шаг нельзя работать с помощью (аварии и направления)? Регулировать ск-ть с помощью потенциометра?
5. Зачем написано два раза вправо
Цитата: Administrator от 24 ноября 2010, 17:53:19DR*AL0*SD1000*DR*
и  влево потом вправо
Цитата: Administrator от 24 ноября 2010, 17:53:19DL*AL0*SD1000*DR*
???
6. Я так и не понял как использовать входа в режиме контроллер. Можно: если включено - то так если выключено - то в эту сторону?

AndruKrug

Есть какой-нибудь генератор шагов?

Administrator

11. Нет, ручной режим на блоке SMSD-9.0 включается нажатием комбинации кнопок.
12. В сторону, противоположную той, в которую он бы вращался при отсутствии этой команды.
9. Регулировать скорость с помощью потенциометра можно только в режиме ручного управления.
5. Не обратила внимание на то, что в Вашем коде уже есть эта команда.
LD1*BG*EN*DR*AL0*SD1000*DF*MV15000*ED* или LD1*BG*EN*DL*AL0*SD1000*DF*MV15000*ED*
6. В режиме контроллера все сигналы кроме аварийного срабатывают по переднему фронту - подаете на вход 5В - сигнал срабатывает. После сработки сигнал следует снять (т.е. убрать 5В со входа) чтобы иметь возможность активировать его в следующий раз. Аварийный сигнал работает по уровню - при присутствии 5В движение запрещено, при отсутствии 5В на входе движение разрешено.
Назначение сигналов ВХ1 и ВХ2 Вы определяете в программе командами. Для старой версии прошивки возможны только команды ожидания сигнала на вход. Т.е. при наличии этой команды в программе привод не выполняет следующую команду, пока не получит сигнал на соответствующий вход.
Управлять направлением движения уровнем сигнала на входе в режиме контроллера нельзя.

Administrator

Генератор шагов = генератор импульсов 5В. (Для SMSD-9.0 - 5-24В) Это может быть LPT порт компьютера, специализированный контроллер (например, SMC-3), PLC или даже вручную замыкать цепь кнопкой.

AndruKrug

и последний вопрос.
1. В режиме драйвер:
при включенном сигнале авария, я буду подавать сигнал реверс. Тогда, при снятии сигнала аварии, затвор будет двигаться в другую сторону?
или реверс работает только когда авария снята?

2. Какие новые функции есть в новой прошивке для работы с входами?

Administrator

1. В режиме драйвер нет сигнала реверс как такового - есть сигнал направление. т.е. перед отработкой следующего шага считывается значение на входе "направление". Если сигнал присутствует - движение в одну сторону, если нет - в другую. При включенном сигнале аварии шаги не отрабатываются.

2. http://www.electroprivod.ru/pdf/smsd-90-pasp.pdf - паспорт на новую модификацию блока.
Если в старом блоке изменить прошивку, добавятся команда непрерывного движения до прихода сигнала на входы ВХ1 или ВХ2.
В новой модификации блока - поиск нулевого положения и дублирование клеммами кнопок "пуск" и "стоп"

AndruKrug

А как выбрать режим драйвера?

П.С. В описании указано что переключатель SW6 отвечает за 1/2 шаг, а на рис.1 - написано что при выключенном - режим драйвера.
А в табл. №5 описание включения в режиме драйвера и контроллера совпадает (SW6 - On).

Administrator

SW6 - в положении Off - режим драйвера.

ЦитироватьВ описании указано что переключатель SW6 отвечает за 1/2 шаг
- нет такого в описании.

Цитироватьв табл. №5 описание включения в режиме драйвера и контроллера совпадает (SW6 - On).
- это печатка, исправим в ближайшее время

AndruKrug

Цитата: Administrator от 26 ноября 2010, 10:38:23
SW6 - в положении Off - режим драйвера.

ЦитироватьВ описании указано что переключатель SW6 отвечает за 1/2 шаг
- нет такого в описании.

Цитироватьв табл. №5 описание включения в режиме драйвера и контроллера совпадает (SW6 - On).
- это печатка, исправим в ближайшее время

Параграф 4 - Конструкция (лист 2).

П.С. Драйвер заработал - осталось сделать генератор импульсов.
Спасибо за помощь.

Administrator

Действительно. Еще одна опечатка.

AndruKrug

#14
Все заработало, но не совсем так как хотелось.

1. Я выставил значение тока на SMSD 9.0 соответствующее току шагового двигателя = 5.6А, но у меня не было подходящего предохранителя для защиты цепи питания - поставил на 2А - он не сгорел. Почему?
2. Что будет если выставить другое значение тока. а) меньше, б) больше?
3. Когда двигатель упирается - он пытается продолжить движение и издает громкий шум - разве там нет защиты по перегрузке по току?
4. Опасно ли если двигатель в течении 15 секунд не сможет двигаться? (Нет датчиков положения).
5. Как изменить направление движение перекидкой проводов? поменять А с B и A* c B*? Нужно чтобы двигатель при отключенном реле направления шел в другую сторону (драйвер).