Перейти к содержанию
    

Простенький ЧПУ контроллер

49 minutes ago, aaarrr said:

Люди экспериментировали, можно нагуглить. Все равно не очень "реалтаймово" получается, насколько я помню.

ну просто там аппаратно уже довольно много нынче наворочено для всевозможной виртуализации, 

возможно получше должно быть чем через какой-нибудь dlportio драйвер из под вин xp :)

 

с другой стороны для того же xen нагуглился rt-xen, но по виду какой-то не очень живой. но раз дополнительно RT патчи кто-то делал зачем-то, значит без них скорее всего всё печально.

для vmware как-то не особо гуглится.

оно конечно не для этого делалось, но там есть всякие высокочастотные трейдеры, которые хотят немного микросекунд latency на виртуальных серверах. так может хоть какая-нибудь польза от них будет :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 часа назад, _pv сказал:

а вот от обычного x86/64 каким-нибудь гипервизором типа xen или vSphere, насколько "реалтаймово" можно откусить часть ядер процессора под какой-нибудь однозадачный DOS или вообще baremetal для ногодрыгания? чтобы не в обычный линукс/винды пытаться реалтайм притащить, а разделить уровнем ниже по разным виртуальным машинам, чтоб друг дружке не мешали.

Есть некий проект Xenomai, где как раз вот такое разделение, вроде, и делается: на части ядер крутится линух, а остальные (или хотя бы одно) хоть под bare-metal. Подробностей не знаю, не спец в этом ни разу.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

На мой субъективный взгляд, весь RT функционал (для ЧПУ) должен жить в МК. И только интерфейс юзера - на каком-то отдельном ПК или на отдельном ядре того же МК.

После данного проекта у меня на очереди будет задача - впихнуть расчёт траектории прямо в МК. Хочу избавиться от громоздких Mach3/LinuxCNC. На ПК останется только веб-морда управления на вебсокетах. Для данной задачи надо будет что-то двуядерное из STM'ом подобрать. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 minutes ago, MX_Master said:

На мой субъективный взгляд, весь RT функционал (для ЧПУ) должен жить в МК.

Тоже раньше так и считал. И сейчас в целом читаю. Но... аппаратная виртуализация позволяет немного отойти от этого стереотипа. Хотя у меня и нет опыта в этом направлении, тем не менее штуки типа Xenomai и т.п. заставляют задуматься. И есть о чём: у вас один МК (даже одно ядро), на котором стоит ОС, предоставляющая Вам виртуальные машины, а там крутится и интерфейс пользователя и десяток процессов ОСРВ.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

10 minutes ago, MX_Master said:

На мой субъективный взгляд, весь RT функционал (для ЧПУ) должен жить в МК. И только интерфейс юзера - на каком-то отдельном ПК или на отдельном ядре того же МК.

почему бы архитектуре этого "МК" не быть x86?

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 hour ago, _pv said:

почему бы архитектуре этого "МК" не быть x86?

В ряде измериловки 90х и 2000х встречались х86 (80186, 80286) в качестве "МК".

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А есть примеры современных недорогих x86 с аппаратными генераторами и счётчиками?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

16 minutes ago, MX_Master said:

А есть примеры современных недорогих x86 с аппаратными генераторами и счётчиками?

Так Atom вроде. Есть одноплатные компьютеры, но там предполагается win10 или nix со всеми вытекающими, но наверное, baremetal тоже можно.

 

https://www.tomshardware.com/amp/news/rock-pi-x-an-x86-computer-in-raspberry-pi-form-factor

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 hour ago, alexunder said:

В ряде измериловки 90х и 2000х встречались х86 (80186, 80286) в качестве "МК".

у нас до сих пор работает pmac от deltatau под 2000 виндой, у которого наиболее RT часть вынесена в ISA карты. а на самом ПК - общение с внешним миром и гуи для настройки.

и конроллеры линейных подвижек от ньюпорта то ли на 386 то ли на 486, эти правда передохли уже почти все.

6 minutes ago, MX_Master said:

А есть примеры современных недорогих x86 с аппаратными генераторами и счётчиками?

всмысле чтобы выход таймера шимом наружу торчал? 

взять любой обычный ПК, а какое-то IO всё равно снаружи городить придётся, просто это может быть совсем тупое IO,

типа таких плат за 15$, https://github.com/q3k/chubby75 , с единственной функцией - содержимое принятого ethernet пакета отображать на выходы и отправлять обратно состояние входов, хоть каждые несколько мкс.

а на ПК одно ядро наглухо откусить гипервизором под условный bare metal с RT математикой, и сетевой картой отданной в полное владение через pci passthrough, (тогда вроде как если этой ВМ с другими делить нечего гипервизор не должен её особо беспокоить и прерывать вообще), а на остальных ядрах нереалтайм "винда с гуём".

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо за примеры, но это довольно специфичные решения. На поднятие требуемого функционала под них с нуля может уйти больше времени, чем на baremetal на любом современном двуядерном Cortex-M.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 час назад, MX_Master сказал:

А есть примеры современных недорогих x86 с аппаратными генераторами и счётчиками?

На мой взгляд, наиболее красивое решение получается на SOC (в одном чипе ARM+FPGA). Вроде как очевидное решение, но пока не встречал контроллеров. Из готовых плат, покупал недавно платку на Ali с DDR3 256кБ и Ethernet 100М за 15$. Самостоятельно собирать, выйдет конечно дороже, около 50$. Есть Linux, на который портируется LCNC. Компактно, дешево и мало потребляет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 hour ago, rloc said:

На мой взгляд, наиболее красивое решение получается на SOC (в одном чипе ARM+FPGA). Вроде как очевидное решение, но пока не встречал контроллеров. Из готовых плат, покупал недавно платку на Ali с DDR3 256кБ и Ethernet 100М за 15$. Самостоятельно собирать, выйдет конечно дороже, около 50$. Есть Linux, на который портируется LCNC. Компактно, дешево и мало потребляет.

я внутрь не заглядывал, но имхо linuxCNC это про костыли с RT патчами для линукса и наличие внутри fpga ему особо никак не поможет, с тем же успехом можно на любом другом одноплатом АРМе запускать?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

55 минут назад, _pv сказал:

linuxCNC это про костыли с RT патчами

Для SOC используются те же самые костыли. Плюс только в том, сам Linux легковесный, не обремененный обслуживаем лишней периферии.

58 минут назад, _pv сказал:

fpga ему особо никак не поможет

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

1 час назад, _pv сказал:

с тем же успехом можно на любом другом одноплатом АРМе запускать?

Да, есть специалисты, которые портировали LCNC на малинку, и с тем тем же успехом отказались от x86 архитектуры.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 hour ago, rloc said:

Да, есть специалисты, которые портировали LCNC на малинку, и с тем тем же успехом отказались от x86 архитектуры.

это так место около ЧПУ станка экономят, или энергопотребление?

 

1 hour ago, rloc said:

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

выплюнуть езернет пакет со всеми межпакетными паузами, преамбулами и минимальными 64байтами полезной нагрузки вроде меньше микросекунды,

http://linuxcnc.org/docs/html/install/latency-test.html 

подозреваю что у RT линукса есть другие проблемы посерьёзнее и то что IO находится прям рядом на кристалле и отмаплено в память, а не где-то далеко снаружи на отдельной плате не сильно поможет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...