программа RTX Расширение реального времени для Windows

den_k

Достаточно долго разбирался в теории и пришёл к выводу, что массовые ОС с реалтайм примочками (Win+RTX или Linux+RTAI) - самая подходящая база для софта ЧПУ. И самая прогрессивная на сегодняшний день. Реализация реалтайма в них - изящно и теоретически грамотно сделана. Респект чувакам, которые придумали такие решения.

mobiserv:

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

А вот это не понял. Нафига там какая-то внешняя синхронизация? Да, можно сказать, что тактовые генераторы обычных офисных компов далеко не идеальны. Но эти погрешности мизерные и могут быть решены выбором соответствующей материнки или промPC. Какое отношение это имеет к софту? Поясните свою мысль, плз.

Ivan_K2
den_k:

Достаточно долго разбирался в теории и пришёл к выводу

Практика критерий истины.
Поэтому берем лист 500х500 мм Д16Т и делаем выборку
цилиндрической фрезой по всей поверхности.
Подсчитываем количество “кружочков” для сравнения систем по критерию RTOS.

Если “кружочки” отсутсвуют то это CNC с RTOS.
Если “кружочки” присутсвуют то это не RTOS,
большее или меньшее количество “кружочков” свидетельствует о степени приближения к RTOS.

Creolka

Про “кружочки” - это круто!!!
Надо только иметь в виду что “кружочки” появляются не только от “прерываний” но ещё и от налипшей стружки.
На промышленых ЧПУ такое тоже наблюдается, а они далеко не под виндами.

toxa

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

“кружочки” и “ртос” и “не ртос” понятия слабо связанные. кружочки будут получаться всегда, если система не пропускает шаги.

“ртос” нужна только для системы, которая непосредственно генерит шаги. например, программа под виндами читает g-код, просчитывает его, генерит некие макрокоманды и отсылает их в контроллер через интерфейс rs232 (usb, что угодно). контроллер получает эти команды, буферизует, и генерит импульсы step-dir для контроллеров (драйверов) в высочайшей точностью. ну и чем не система реального времени?

Soling
toxa:

народ, вы о чем вообще пишете?

Вот так всегда! Пришел лесник и всех разогнал.
😁
Это же чисто теоритические размышления об истинно реальным времени и псевдо реальным.
( К практике CNC они слабо относятся, потому как станки прекрасно работают даже под слегка подчищенными Виндами. Но… зима, до сезона далеко, почему бы не выяснить фундаментальные понятия? )
😁 😁 😁

Soling

Однако, из написанного можно сделать вывод, чисто практический: более надежными являются аппараты с шаговыми двигателями. Они наиболее близки к “тупому автомату”. Прога выставила сигнал, двигун сделал шаг. Что там происходит помимо этих событий может повлиять, разве что, на среднюю скорость движения. Что не так критично, как ошибка позиционирования при потере сигналов энкодера. Которая ко всему имеет дурную привычку накапливаться.

Ivan_K2
Creolka:

На промышленых ЧПУ такое тоже наблюдается, а они далеко не под виндами.

Это у тех которые под WinCE ? Да, наблюдается,
причем очень явно, в “рядочки” так “кружочки”, стружка так не умеет.
У нормальных ЧПУ такое не наблюдается.
И если потребитель нормальных ЧПУ такие “кружочки” обнаружил,
например в местах со сложным рельефом, то обычно следует апгрейд.

toxa:

“ртос” нужна только для системы, которая непосредственно генерит шаги. например, программа под виндами читает g-код, просчитывает его, генерит некие макрокоманды и отсылает их в контроллер через интерфейс rs232 (usb, что угодно). контроллер получает эти команды, буферизует, и генерит импульсы step-dir для контроллеров (драйверов) в высочайшей точностью. ну и чем не система реального времени?

У меня именно такой CNC, с WinCE.
Контроллер этот :
www.leadshine.com/eBusiness/EN/product_list.asp?ca…

Работа этой системы весьма далека от идеала.
Скорее всего буду её кардинально изменять.

toxa
Soling:

Это же чисто теоритические размышления об истинно реальным времени и псевдо реальным.

нет в природе никакого реального времени. никто даже не знает толком, время непрерывно или есть кванты. слово “реальное”, которое так смущает означает ничто иное, как то, что система ГАРАНТИРОВАННО УСПЕВАЕТ делать свою работу за некий фиксированный промежуток времени.

den_k
toxa:

“ртос” нужна только для системы, которая непосредственно генерит шаги. например, программа под виндами читает g-код, просчитывает его, генерит некие макрокоманды и отсылает их в контроллер через интерфейс rs232 (usb, что угодно). контроллер получает эти команды, буферизует, и генерит импульсы step-dir для контроллеров (драйверов) в высочайшей точностью. ну и чем не система реального времени?

Полностью согласен. Я бы назвал такую схему разделения функций - классической. По ней работают и большинство ЧПУ и вся офисная техника типа принтеров. Все функции, для которых требуется малое время реакции выполняются там отдельным аппаратным устройством (контроллером в принтере или приводе).
Реалтайм ОС нужна, если мы делаем этот контроллер в программе. Тогда некоторые функции программы должны иметь предсказуемое время выполнения. Например, генерация шаговых импульсов.

Не согласен, что этот топик не имеет никакого отношения к практике. Большинство трудящихся считает, что управление шаговиком по ЛПТ из под мача - это верх мечтаний хоббита, а для всего остального нужны системы ЧПУ за большие K$. Если хотя бы несколько активных человек поймут, чем отличаются эти системы - вскоре появится достойные ЧПУ по нормальной цене. Технически - проблем не много. 90% компонентов для этого уже давно есть на рынке.

toxa
den_k:

Не согласен, что этот топик не имеет никакого отношения к практике. Большинство трудящихся считает, что управление шаговиком по ЛПТ из под мача - это верх мечтаний хоббита, а для всего остального нужны системы ЧПУ за большие K$.

во-первых такие системы хоббийного класса и средней цены (меньше 500$) уже есть. во-вторых какой смысл активным и умным продавать задешево, когда хорошо покупают и по нормальной цене?

а что до хоббитов - дык они ведь бесплатно хотят! 😃)

den_k
toxa:

во-первых такие системы хоббийного класса и средней цены (меньше 500$) уже есть.

Хотелось бы пару примеров. Если не сложно, киньте ссылками или хоть названиями.

toxa:

а что до хоббитов - дык они ведь бесплатно хотят! 😃)

Желание понятно и более чем реально 😉 Компоненты под винду, о которых я говорил, можно качнуть или купить за 3$. Правда их использование будет “не совсем законным”, но сама винда тож мало у кого лицензионная 😉 Ну и многое есть полностью легально нахаляву (тот же EMC).
Нужно только приложить некоторые усилия, чтоб это всё добро слепить между собой и “тщательно доработать напильником”.

toxa
den_k:

Хотелось бы пару примеров. Если не сложно, киньте ссылками или хоть названиями.

ну вот вам пару:
например: www.boenigk-electronics.com/web/de/
или step-four xpert, правда, он от 500 евро начинается
да полно, на самом деле, нужно только погуглить

den_k
toxa:

например: www.boenigk-electronics.com/web/de/
да полно, на самом деле

Вы правы, таких полно. Начиная от самоделок и заканчивая сименсами. Но это решение с АППАРАТНЫМ контроллером движения. Я с фашистким вообще не дружу, поэтому может не всё там правильно понял. Вроде как получается что комп только окошки отрисовывает, пересчитывает входной файл в управляющие команды и отправляет их в УСБ. А там уже стоят плисины с обвязкой, которые делают всё остальное в реалтайме и генерят нужные импульсы. Мне в таком классическом решении не нравится:

  1. нестандартный, закрытый и неизвестный протокол обмена по USB. Следовательно, ИХ контроллер можно использовать только с ИХ софтом. Отсюда потенциальные сложности заменой чего-то одного из этих компонентов. Если меня не устроит их софт, я не могу выбрать другой. Или контроллер я не могу поставить от другого производителя (например, если этот сгорит, а фирма прекратит их выпускать).
  2. Нет возможности модернизации. Например, заменить шаговики на сервы при этом же софте.
  3. Нафига мне их плисины с обвязкой, если их функции может с таким же успехом выполнить программа на компе? Это бы сущесвенно упростило и удешевило электронику.
toxa
den_k:

Вроде как получается что комп только окошки отрисовывает, пересчитывает входной файл в управляющие команды и отправляет их в УСБ. А там уже стоят плисины с обвязкой, которые делают всё остальное в реалтайме и генерят нужные импульсы.

эти импульсы подаются на вход любому стандартному драйверу step-dir. то есть, такой “умный” переходник usb->lpt. ну да, софт свой, ну дык нужно выбрать какой получше и подходит под цели и развивается хорошо… хотим обратно mach - подключаем драйвера обратно напрямую.

den_k:

Нафига мне их плисины с обвязкой, если их функции может с таким же успехом выполнить программа на компе? Это бы сущесвенно упростило и удешевило электронику.

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

mura
den_k:
  1. Нафига мне их плисины с обвязкой, если их функции может с таким же успехом выполнить программа на компе? Это бы сущесвенно упростило и удешевило электронику.

Нет, тут вы не правы.
Плисина ЗНАЧИТЕЛЬНО дешевле. Я использую Циклоны по $16, там ресурсов хватает и на мощный проц (NIOS) и на логику офигенную (видео контроллер) это все в одном корпусе.
А кто возмется программу написать за $16?

ТО-то.

Soling
den_k:

Полностью согласен. Я бы назвал такую схему разделения функций - классической. По ней работают и большинство ЧПУ и вся офисная техника типа принтеров. Все функции, для которых требуется малое время реакции выполняются там отдельным аппаратным устройством (контроллером в принтере или приводе).

Не совсем так. Классической эта схема стала потому, что направлена на разгрузку ЦП. Время реакции тут не причем.
Применительно к станкам она реализуется просто, что называется *в лоб*. На станок ставится та же РС, но ее операционка отлажена только под работу со станком. Как правило, для пользователя оставляют доступной только папку с рабочими файлами. Доступ к остальным ресурсам блокируется. Варианты ОС : DOS, Винды, вплоть до XP.
В идеале - специализированный процессор заточенный только под обслуживание станка со своим, опять же. специализированным биосом. Может такие и есть, но в жизни не встречал. Видимо слишком дорого для производителя.
Или просто не нужно.

den_k
mura:

Нет, тут вы не правы.
Плисина ЗНАЧИТЕЛЬНО дешевле. Я использую Циклоны по $16, там ресурсов хватает и на мощный проц (NIOS) и на логику офигенную (видео контроллер) это все в одном корпусе.
А кто возмется программу написать за $16?
ТО-то.

А в плисину программу не надо писать? А потом её синтезировать, паковать и заливать.
К тому же у приведённого Tox’ой контроллера я вижу две плисины + ещё всякая хрень типа памяти. А если таких контроллеров надо не один…
И почём вам продают этот контроллер с плисиной? Неужто за 16$+силовуха и плата 😉 А как насчёт габаритов блока? Его надёжности и ремонтопригодности? А что если там глюк какой в прошивке через год всплывёт?

Вообще говоря, такие классические решения имеют право на жизнь, но при условии полного описания протокола обмена и его ФАКТИЧЕСКОЙ поддержкой многими производителями софта. Иначе получается игла наркомана, с которой слезть очень трудно. Ещё бы хотелось и исходники прошивки поиметь, для полного счастья 😁

toxa:

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

Так понятно что - винда, которая генерит ХОРОШИЕ импульсы без ЛИШНИХ аппаратных хреновин. 😁 Ответ - в названии этой темы

Soling
toxa:

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

Вы не правы. Это другая сказка. А фишка в том. что все эти теоритические изыски, как я уже писал, слабо контактируют с практикой. В реале станки работают под всеми системами . И работают не плохо. Ошибки и сбои в большинстве случаев возникают по причине неверной настройки софта или железа. И… ( ну, спортсмены на сайте! В крови - скорость ),
неумеренной тяги к выжиманию ресурсов. Это не в обиду, просто наблюдение за тем, что пишут на форуме по этому поводу.
*Гремучая змея очень милое и дружелюбное существо. Надо только уметь с ней обращаться.*

😁 😁 😁