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

Практик
mura:

Ну-ну,

если система имеет ПРОГНОЗИРУЕМОЕ время реакции на прерывание - реалтайм.

Ну а если прога под DOS крутит движки часами и даже не собирается никуда прерываться,
это реалтайм или просто НУ-НУ?

GOOD
ACB:

Ни Linux ни QNX - не являются операционными системами жесткого реального времени. Любая операционная система - ЭТО НЕ REAL TIME!

GOOD DAY

зачем спорить ! прочтите раздел стандарта POSIX 1003.1
о определении и особенностях операционных систем реального времени и будет все ясно.

если кому надо выбирайте -

Название Год выпуска Фирма-разработчик Сайт

AMX 1980 Kadak www.kadak.com
C Executive 1981 JMI Software Systems www.jmi.com
CMX 1990 CMX Systems www.cmx.com
CsLeos* 2002 BAE Systems www.csleos.com
ECOS 2000 eCosCentric (Cygnus Solutions, Red Hat) www.ecoscentric.com
EmbOS 1993 Segger Microcontroller Systeme GmbH www.segger.com
INTEGRITY 1982 Green Hills Software www.ghs.com
LynxOS 1988 LynuxWorks (Lynx Real Time Systems) www.lynuxworks.com
Nucleus PLUS 1990 Mentor Graphics (Accelerated Technology Inc.)www.acceleratedtechnology.com
OS-9 1979 RadiSys (Microware system Сorp.) www.radisys.com/products/microware_OS-9.cfm
OSE 1995 OSE (Enea) www.enea.com
Precise/MQX 1991 Precise Software www.psti.com
QNX Neutrino 1982 (QNX 2) QNX Software System www.qnx.com
RTEMS 1989 On-Line Applications Research Corp. www.rtems.org
TTPos 1998 TTTech www.tttech.com
UC/OS-II 1999 Micrium, Inc www.micrium.com
VxWorks 1981 Wind River Systems www.windriver.com

но зачем городить огород для ЧПУ наверно будет достаточно

  1. отдельный комп ТОЛЬКО для работы станка с устойчивой ОС
  2. защита от сбоя электропитания и помех эл. сети.

GOOD LUCK

mura
Практик:

Ну а если прога под DOS крутит движки часами и даже не собирается никуда прерываться,
это реалтайм или просто НУ-НУ?

конечно реалтайм, часы висят на прерывании, а реакция на прерывания под ДОСом вполне прогнозируема (это не винды, хотя и там
можно добится приемливых результатов отключив кучу различных служб)

Ivan_K2
GOOD:

если кому надо выбирайте -

Вчера скопировал CF со своего “китайца”, поскольку, исходя из опыта,
от многократной записи CF обычно через один год становится непригодным к употреблению.

В “китайце 1212” установлен так называемый DSP (VIA + AT89C55) который работает под WinCE.NET 4.20
Это не RTOS и не система для CNC, поскольку например клавишу “STOP” на пульте
может отработать а может и не отработать и т.д.

RTOS для CNC это система которая оптимально использует механизмы прерываний и семафоров именно для CNC.
Такую систему необходимо создавать, поскольку на сегодня она не создана, насколько я понял.

VxWorks это комерческая версия BSD.
VxWorks начали “создавать” 06sep87. Сейчас Wind River Systems начала уже продавать и Linux.

toxa
Ivan_K2:

VxWorks это комерческая версия BSD.

мягко говоря, это не совсем так. как человек имевший дело и с vxWorks и с BSD говорю. 😃

Ivan_K2
toxa:

мягко говоря, это не совсем так. как человек имевший дело и с vxWorks и с BSD говорю. 😃

Пускай будет не совсем так.
Это по сути ничего не изменяет.

Если создавать RTOS для CNC то это будет уже не VxWorks и не BSD и уж тем более не Linux.
А так пользуюсь вот системой под WinCE.NET … которая уже одну дырку в столе фрезой сделала,
потому как вовремя ethernet кабель не отключил … RTOS.

Soling
Практик:

Ну а если прога под DOS крутит движки часами и даже не собирается никуда прерываться,
это реалтайм или просто НУ-НУ?

Просто НУ-НУ, пользуясь Вашей терминологией.
😁 😁 😁
Любая система “отвлекаюшаяся” на обслуживание чего либо, кроме объекта управления имеет погрешности по времени. То есть не реал тайм. Предположим,- энкодер выдает сигнал длящийся 1мкс. В момент его появления система отвлеклась на обслуживание прерывания от… ну, скажем, клавиатуры. Процесс занял 2мкс. По скольку в момент выполнения обслуживания система не следила за сигналом энкодера, она его потеряла.
( Сразу, предвидя… цифры от фонаря и просто для наглядности процесса. )
ДОС может годами крутить движки, по скольку вероятность такой ситуации мала. Причина - минимальное количество “отвлечений”. Винды же отнимают на свои нужды огромное количество времени. И не все их процессы можно блокировать. Спасает только быстродействие железа, которое успевает за “медленными”, по его меркам, процессами управления станком.

Практик:

Ну так поведайте-же нам скорее, что есть РЕАЛТАЙМ !!!

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

mobiserv

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

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