Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Разные вопросы > Эмулятор клавиатуры


Автор: Shlit 19.1.2013, 16:46
Проблема вот в чем. На производстве есть станок с ЧПУ, компьютер под ХР и управляющая программа. Данные для работы станка забиваются в таблицу управляющей программы вручную, с клавиатуры. То есть рабочее время расходуется либо на ввод данных, либо на собственно работу станка. Конечно же существует основная программа для ввода данных на другом компьютере и передаче по сети на станок готовых планов, но той программой пользоваться не совсем удобно по причине ее большой стоимости, корявого малотехнического перевода справки и неумению с программой работать в России. Тем не менее производитель оборудования сделал все для того, чтобы у него приобрели еще и программу, стоящую как все оборудование. Кроме того, в управляющей программе открыли недокументированные возможности, которых нет в основной программе составления планов, а возможности эти очень хорошо уже пришлись к месту. Использовать копипаст для заполнения таблиц в управляющей программе не удается.   Вот есть идея на стороннем компьютере создавать что-то типа батника, который бы эмулировал нажатие клавиш типа 
Код

начало 
число энтр 
число энтр энтр энтр
и т. д. ...
конец 

Вот как бы это проще реализовать?

Автор: diadiavova 19.1.2013, 17:58
Ну батник может и не пододёт, а скрипт написать можно. Хотя мне кмжется, что проще будет сделать на любом ЯПе. Окошко с текстовым полем и кнопкой, текст ввёл, на кнопку нажал, окошко свернулось, при необходимости активировалось окошко целевой программы и пошёл ввод.

Автор: Shlit 21.1.2013, 00:12
Цитата(diadiavova @  19.1.2013,  17:58 Найти цитируемый пост)
проще будет сделать на любом ЯПе

Я могу PL/1 вспомнить и программирование МК-61, еще есть более молодые коллеги, знающие Паскаль.

Автор: Данкинг 21.1.2013, 01:47
Это вроде как найти на форме данной программы заданное поле, что-то в него записать и "ввести", нажав ENTER? Я вообще таких прог не писал, поэтому практически не помогу, но такое возможно. Конечно, не на PL/1.

Автор: diadiavova 21.1.2013, 08:56
Цитата(Данкинг @ 21.1.2013,  02:47)
Это вроде как найти на форме данной программы заданное поле, что-то в него записать и "ввести", нажав ENTER? Я вообще таких прог не писал, поэтому практически не помогу, но такое возможно. Конечно, не на PL/1.

Да не обязательно находить что-то. В простейшем случае открываешь окно программы, устанавливаешь фокус в первом поле, поверх этого окна открываешь свой эмулятор, запускаешь нужную последовательность, окно эмулятора сворачивается и начинается ввод... вот  smile 

Автор: Freyzer 21.1.2013, 09:32
Так суть то в чем? Задачу станок сам в себя должен вводить? Тож мне терминатор или задачу просто неудобно вводить потому - что интерфейс кривой?

Автор: diadiavova 21.1.2013, 09:37
Насколько я понял интерфейс расчитан на ручной ввод, а вводить приходится одни и те же данные, поэтому надо куда-нибудь эти данные сохранить, и программа будет считывать их и эмулировать нажатия клавиш.

Автор: LSD 21.1.2013, 10:51
http://www.autohotkey.com/

Флуд удолил.

Автор: Shlit 21.1.2013, 13:53
Цитата(Freyzer @  21.1.2013,  09:32 Найти цитируемый пост)
Так суть то в чем? Задачу станок сам в себя должен вводить?

Дело в том, что данные разные и их много. Очень много. Во время ввода данных станок простаивает. Вот и пришла мысль вводить данные на другом компьютере, формировать там некий файл, файл переносить на флешке на управляющий компьютер и там с помощью этого файла произвести ввод данных в управляющую программу.

Автор: diadiavova 21.1.2013, 14:00
Shlit, мне кажется ЛСД предложил дельное решение.

Автор: Akella 21.1.2013, 14:06
Цитата(Shlit @ 21.1.2013,  00:12)
Цитата(diadiavova @  19.1.2013,  17:58 Найти цитируемый пост)
проще будет сделать на любом ЯПе

Я могу PL/1 вспомнить и программирование МК-61, еще есть более молодые коллеги, знающие Паскаль.

значит ставьте дельфи или лазарус и вперёд smile

Автор: Shlit 21.1.2013, 14:22
Цитата(LSD @  21.1.2013,  10:51 Найти цитируемый пост)
http://www.autohotkey.com/

Сижу вот изучаю. Спасибо.

Автор: Freyzer 23.1.2013, 08:12
Так а я про че и говорил, что LSD удалил. Ну, создать под станок мини базу с набором задачь и по тем самым набором горячих клавишь их запускать. Или станок в локальную сеть нельзя законектить?

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

Автор: Shlit 23.1.2013, 14:45
Станок и так в локалке. Понимает управляющая программа вот только http://www.holzma.com/en-en/products/productdatabase/software/Pages/holzmasoftwarecutrite.aspx, которая крутится сама на сервере и имеющая несколько рабочих мест в цеховой сети. 

Автор: Freyzer 23.1.2013, 14:55
Shlit, лично я, тут пас. Это уже к мэтрам.

Автор: Freyzer 26.1.2013, 08:46
Ну, есть же там контакты, скинь им претензии  smile 

Автор: MaYoR 28.1.2013, 07:28
Тема очень актульная, офицыальная программа для данных станков стоит 6 тыс. уе. плюс различные модули. Если кто то сделает то о чем здесь написано: считываение с файла и внос в поля управляющей программы, то вознаграждение не заставит себя ждать.

Автор: Freyzer 29.1.2013, 15:35
Попробовал бы, станок нужен и с прогой ознакомиться 

Автор: LSD 29.1.2013, 16:19
Цитата(MaYoR @  28.1.2013,  08:28 Найти цитируемый пост)
Тема очень актульная, офицыальная программа для данных станков стоит 6 тыс. уе. плюс различные модули. Если кто то сделает то о чем здесь написано: считываение с файла и внос в поля управляющей программы, то вознаграждение не заставит себя ждать.

Вы же понимаете, что не имея данного приложения, написать такую программу не реально (вернее очень трудно).

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)