Задать вопрос
@frank_sider
Системный программист

Как упралять координатным столом через свою программу?

Имеется координатный стол. Необходимо управлять координатным столом через свою программу (не через Mach3). Все что известно это распайка кабеля LPT, которым соединяется LPT порт компьютера с LPT портом блока управления этим столом:
2-X_DIR,
3-X_STEP,
4-Y_DIR,
5-Y_STEP.
Протокол STEP-DIR. Пытался получить значения, которые Mach3 пишет в LPT через PortMon. PortMon молчит. Пробовал старую досовскую программу lpt_test. Тоже ничего. Пробовал эмулировать нажатия клавиш Up, Down, Left и Right через SendMessage/PostMessage/keybd_event в своей программе. Результат нулевой. Координатный стол нужен для проверки манипулятора. Если кто уже занимался этим, откликнитесь плизз, поделитесь опытом.
  • Вопрос задан
  • 461 просмотр
Подписаться 3 Оценить 2 комментария
Пригласить эксперта
Ответы на вопрос 2
@GreyPhantom
АСУТП, КИПиА
1. STEP/DIR- не совсем чтобы "протокол"- логика проста: сигнал DIR задает направление движения(например, при DIR=0 стол едет вперед, соответственно при DIR=1- назазд), STEP- импульс шага (один импульс=один шаг привода, т.е для перемещения на некоторую величину должно быть подано соответствующее число импульсов STEP). Ну и порт блока управления с LPT общего имеет разве что одинаковый разъем и логический уровень сигнала- назначение контактов совершенно иное, поэтому-то lpt_test ничего и не выдает.
2. Чтобы Mach3 что-то выдавал в LPT- его нужно настроить в соответствии с вашей распайкой: ищете в меню настроек вкладку с таблицей соответствия "сигнал-пин порта" и там ставите нужные цифры.
3. Управлять из какой-то своей программы- тут не знаю: как мне кажется нужно свой драйвер для этого писать....
Ответ написан
@Dum_spiro_spero
Мы делали нечто аналогичное - был некий координатник с шаговыми двигателями - который управлялся через LPT неудобной программой - K-cam кажется. Подключили осциллограф (про LPT 3D Hard Analizer не знали), посмотрели, что куда подается когда нажимаем на кнопки в программе.
Дальше составили список команд и на BC++ написали свой интерпретатор, работало все на WinXP как раз через LPT порт - точно не помню - но кажется как раз тот самый inpout32.dll и использовали - свой драйвер не писали 100%.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы