Подбор управления для станка
 

Подбор управления для станка

Автор Spell, 21 мая 2015, 09:46:59

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

Spell

Добрый день.

Я пытаюсь спроектировать стенд для обмера достаточно крупных и тяжелых деталей на ремонтном предприятии.
Предполагается отказаться от установки самой детали в нужную позицию, т.к. требуются очень мощные захваты и зажимы. Поэтому предполагается, что стенд должен перемещать измерительную головку в нужные координаты. В этом случае приводы стенда могут быть маломощными.
В качестве измерительной головки предполагается использовать триангуляционный лазерный датчик. Обмены с ним проходят через отдельный USB.
Основная проблема состоит в том, что после позиционирования измерительного инструмента нужно запускать процедуру обмера.
А после проведения всех обмеров полученные данные надо обработать и записать в базу данных деталей.
Кроме этого сам алгоритм перемещений измерительной головки предполагает ее движения в зависимости от результатов измерений конкретных параметров.
Например, один из параметров, который требуется измерить, это диаметр окружности стоящей на плоскости. При начале работы подпрограммы измерения мы не знаем в какой точно позиции находится головка, но значем, что пятно датчика находится на измеряемой поверхности. Поэтому сначала надо найти самую верхнюю точку этой окружности.
Для этого алгоритм такой:
1. Провести измерение текущего положения.
2. Переместить датчик по оси, параллельной поверхности измерения, на некоторое расстояние.
3. Снова провести замер.
4. Если расстояние увеличилось, то переместить головку в обратном направлении.
5. Снова сделать измерение.
И так до тех пор, пока не найдется точка с минимальным расстоянием.
Как видно из примера, программа подразумевает смешанные действия.

Проблема у меня в следующем.
Т.к. я специалист в ЧПУ очень начинающий, мне нужна консультация, какое оборудование можно использовать для данной задачи.
Предполагаю, что нужен некий драйвер, которым можно управлять прямо с компьютера чуть ли не по-шагово.
Если я правильно понял, то MACH3 для этих целей не очень подойдет, т.к. она работает по заложенной программе на G-коде, в который не очень получится вставить условия и вызов процедур из других программ. К тому же несколько настораживает, что там генератор импульсов привязан к часам Windows, и, судя по отзывам на форумах, она может подвиснуть из-за проснувшейся службы из Win7.
Поэтому остановился на необходимости использовать драйверы с автономными генераторами импульсов, управляемые с компьютера напрямую.
На Вашем сайте имеется информация о  программируемых драйверах SMSD-8.0 и SMSD-9.0.
Почему-то по 8.0 информация слишком скудная. Хотя именно он мне показался наиболее привлекательным из-за наличия режима непосредственного управления с ПК в режиме реального времени. В 9.0 такого вроде нет.

Подскажите, пожалуйста:
1. Правильно ли я понимаю, что режим "непосредственного управления с ПК в режиме реального времени" позволяет передавать отдельные команды на драйвер?
2. Какой из этих драйверов лучше использовать для указанной задачи?
3. Можно ли обращаться к программе SMC_Program из других программ?

Administrator

SMSD-9.0 является устаревшей моделью.
Режим Direct Control (т.е. непосредственное управление с ПК) есть в блоках SMSD-4.2, SMSD-8.0 и SMSD-822.
Какой блок управления выбрать - зависит только от требуемого крутящего момента и выбранного двигателя.

Блоки в режиме Direct Control выполняют полученную от ПК команду сразу. Если в момент получения команды блок выполнял предыдущую команду, то ее выполнение прервется, если выполнение новой команды невозможно одновременно с выполнением предыдущей команды. Подробно работа каждой команды описана в паспорте на блок управления. http://electroprivod.ru/pdf/SMSD-8.0.pdf

К SMC-Program нельзя обращаться из других программ. Однако, эта программа - всего лишь оболочка для передачи команд с ПК блокам. Протокол обмена блоков SMSD открытый, использование программы SMC-Program не является обязательным. Можно команды напрямую передавать из любой программы, осуществляющей передачу данных по RS232, либо можно написать собственную программу.