![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Новичок
Джуниор
Регистрация: 05.08.2012
Сообщений: 3
|
![]()
Есть программа ПАУК-4х(www.x4axis.com) для управления ЧПУ через lpt порт очень хотелось бы сделать в ней настоящий реалтайм . На сегодня программа не имеет нормального драйвера и рассчитывает интервалы между импульсами меряя тики(QueryPerformanceCounter) процессора и все это в цикле... в отдельном потоке программы... но в общем реализовано жутко и работает это на троечку.
Требуется написать драйвер, который будет получать пару: байт-задержка|байт-данных. В состоянии обеспечить выдачу байта-данных в LPT порт с частотой 100Кгц. У кого есть опыт и желание в написании реалтайм драйверов под Windows? Приглашаю к разговору. |
![]() |
![]() |
![]() |
#2 | ||
Старожил
Регистрация: 29.09.2009
Сообщений: 9,713
|
![]() Цитата:
![]() Не всякий Windows годится, да и не в драйвере дело. Раз вы не в теме, процитирую RTAPI: Цитата:
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation |
||
![]() |
![]() |
![]() |
#3 | |
Старожил
Регистрация: 29.09.2009
Сообщений: 9,713
|
![]()
не влезло...
Цитата:
1- QueryPerformanceCounter, как уже сказано, привязка к тикам процессора, единоразова выставленное время будет работать исключительно на той машине на которой это выставлено и как правильно отметил автор - ничего лишнего ...да и плавать будет 2- мультимедийный таймер тоже мало поможет для таких скоростей на LPT 3- что забыл автор того материала, так это об емкостях на пинах LPT ...для этих скоростей и управления шаговым их обычно выпаивают, чтобы фронты не затягивали 4- драйвер вам не нужен, достаточно использовать любой, работающий из третьего кольца для NT и выше - giveo.sys, inpout32/64 5- тема для вашего развития по управлению шаговиком http://programmersforum.ru/showthread.php?t=73294. p.s.: следует оговорить, что для серъезных задач и больших скоростей, управление и контроль шаговиком станка реализуют на железной логике, которая способна справиться в REALTIME, а уже задачу скидывают по LPT. Однако, есть и промышленные решения управления по USB, контроллер тут будет в любом случае. Есть модификации по RS-485. Добавлено ...любителям выжимания скоростей от LPT внимательно ознакомиться http://programmersforum.ru/showpost....12&postcount=7.
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation Последний раз редактировалось raxp; 05.08.2012 в 20:55. |
|
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 08.02.2012
Сообщений: 2,173
|
![]()
100кГц на LPT - это из области фантастики) очень сильно сомневаюсь, что периферийный контроллер столько вытянет.
Правильно поставленная задача - три четверти решения.
|
![]() |
![]() |
![]() |
#5 | |
Новичок
Джуниор
Регистрация: 05.08.2012
Сообщений: 3
|
![]()
raxp - огромное спасибо. Основательно и качественно ответил.
Цитата:
3.при скорости 100кГц выпаивать кондеры не следует, выпаивать надо если скорости в 4-5 раз выше. 4.Через giveo.sys открываю себе прямой доступ к портам. А далее только "интимное" общение через _outp(BASA_LPT,data), ближе и быстрее некуда ![]() Расширяю информацию. У меня все работает через внешний контроллер(буфер на 16К памяти). Все замечательно пашет на 166 пентиуме и еще можно в текстовом редакторе параллельно сидеть. В прошлом году (11 августа) в интернет выложил версию, которая работает без буфера. Соответственно пришлось "засовывать" модуль расчета временных интервалов прямо в ПАУК-4х, в поток общих расчетов. За год он претерпел несколько изменений, но дальше я уже в тупике, выжал все что можно. Вот и подумал, может найдется "гуру", который поможет написать драйвер. Просто подумал, что для современных процов 100кГц - это не накладно. Но ведь MACH3(американский "аналог") работает. При том на достаточно дохлых кампах. raxp - ты в драйверах разбираешься? просто я ноль в них. |
|
![]() |
![]() |
![]() |
#6 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,370
|
![]()
Несколько старая статья, но может будет интересно почитать:
http://msdn.microsoft.com/en-us/magazine/cc163996.aspx |
![]() |
![]() |
![]() |
#7 | |||||
Старожил
Регистрация: 29.09.2009
Сообщений: 9,713
|
![]() Цитата:
Цитата:
Цитата:
Цитата:
И заметьте, из описания: Цитата:
2- 35 кГц для каждой из осей, это означает что эти 35000 импульсов не складываются, они просто идут с такой частотой по DATA пинам: D0...D7. Руководство по MACH3 (18 МВ)
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation Последний раз редактировалось raxp; 06.08.2012 в 12:15. |
|||||
![]() |
![]() |
![]() |
#8 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]() Цитата:
MACH3 помоему так же получает команды лишь, а не напрямую контроль? (у нас похожую плазму увезли, не могу посмотреть уже) Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
![]() |
![]() |
![]() |
#9 | ||
Новичок
Джуниор
Регистрация: 05.08.2012
Сообщений: 3
|
![]() Цитата:
Цитата:
И вообще мы не туда полезли. У МАСH3 есть режим step/dir на канал, я реализовал точно такой же. Думал, может кто-то подскажет простое решение. |
||
![]() |
![]() |
![]() |
#10 | |||||
Старожил
Регистрация: 29.09.2009
Сообщений: 9,713
|
![]() Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation Последний раз редактировалось raxp; 07.08.2012 в 09:46. |
|||||
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Написать драйвер на (DDK)WDK/WDM для Windows | Den0071 | Фриланс | 8 | 17.01.2012 16:19 |
Драйвер для монитора Philips 192 e под Windows 7 | Trust_357 | Компьютерное железо | 9 | 06.06.2011 04:12 |
Драйвер для hp laserjet 1010 для windows 7 | Юзер7 | Общие вопросы C/C++ | 6 | 04.08.2010 09:17 |
драйвер под Ubuntu 7.10 для usb модема | [MoNAMur] | Linux (Ubuntu, Debian, Red Hat, CentOS, Mint) | 7 | 25.11.2009 17:30 |
Где найти драйвер для OCE 9400 под XP | Stilet | Компьютерное железо | 2 | 03.04.2008 13:29 |