Easyelectronics.ru

Электроника для всех
Текущее время: 24 сен 2020, 18:57

Часовой пояс: UTC + 5 часов



JLCPCB – Прототипы печатных плат за $2/5шт. два слоя. $5/5шт. четыре слоя
Крупнейший производитель печатных плат и прототипов. Более 600000 клиентов и свыше 10000 заказов в день!
Получите скидку на почтовую отправку при первом заказе в JLCPCB!

Начать новую тему Ответить на тему  [ Сообщений: 177 ]  На страницу Пред.  1 ... 4, 5, 6, 7, 8  След.
Автор Сообщение
 Заголовок сообщения: Re: Диспетчер КА - размышлизмы.
СообщениеДобавлено: 24 фев 2020, 14:02 
Старожил
Аватара пользователя

Зарегистрирован: 11 апр 2016, 18:04
Сообщения: 3558
Откуда: Китай, Пекин
Цитата:
мне не нужно (кодогенерация,

Цитата:
среду для визуализации

всё то что может быть формально (удобно!) описано и однозначно представвленнол в коде - должно вылиться в проект кодогенерации.

писать программы которые пишут другие программы всегда "весело"!
..а другого пути нет.
все, в итоге, приходят к этому.

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

причем в области кодогенерации конь не валялся. точнее вариантов куча, как правило попытки натянуть движки генерации HTML на область генерации кода. в итоге фиаско, братан.

_________________
unirail.org


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Диспетчер КА - размышлизмы.
СообщениеДобавлено: 24 фев 2020, 14:05 
Старожил

Зарегистрирован: 02 май 2015, 16:16
Сообщения: 2071
vt340 писал(а):
akatenev писал(а):
А задачи жесткого RT выносятся на отдельные мелкие ядра, или в FPGA.

Тема про риалтайм 100 мкс, если кто забыл первый пост
ПЛК и реальные, и виртуальные идут в сад, а на fpga глупо делать то, что можно сделать на мк
я зануда с компом знаний
Изображение
хотя для данного реального ПЛК общего применения прерывание каждые 100 мкс это минимум
также есть быстродействующие входы/выходы общего применения ... от 50 мкс
счётные входы 10 КГц... 200 КГц... 1 МГц
Цитата:
● Макс. входная частота 200 kHz
● Макс. частота счетчика 800 kHz; при четырехкратной обработке
● Макс. длина экранированного провода 600 m; в зависимости от входной частоты, датчика и качества кабеля;
макс. 50 м при 200 кГц


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Диспетчер КА - размышлизмы.
СообщениеДобавлено: 24 фев 2020, 14:06 
Старожил

Зарегистрирован: 08 июн 2015, 16:26
Сообщения: 505
В области кодогенерации главный конь - это Mathworks с обилием фреймворков и пакетов оптимизации моделей под целевые платформы. Остальным до него далеко.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Диспетчер КА - размышлизмы.
СообщениеДобавлено: 24 фев 2020, 14:07 
Старожил
Аватара пользователя

Зарегистрирован: 11 апр 2016, 18:04
Сообщения: 3558
Откуда: Китай, Пекин
петюня

_________________
unirail.org


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Диспетчер КА - размышлизмы.
СообщениеДобавлено: 24 фев 2020, 14:07 
Старожил
Аватара пользователя

Зарегистрирован: 03 сен 2010, 22:46
Сообщения: 6095
Откуда: Москва
Quantum Leap неплохая штука, я применял его в довольно больших проектах. Но к сожалению, как инструмент, уступает VisualState - работать с ним было не очень удобно. Хотя по функционалу он даже немного побольше. На меня произвел впечатление скорее академической реализации, чем реального инструментария.

Вообще, все это довольно частные случаи, не так уж часто применяемые. Как правило, находятся более оптимальные способы решения этих задач.

Если что-то сложное и комплексное, и при этом RT, как например в робототехнике - лучше применять инструменты типа LabView и Matlab. Там можно сделать и отладить очень сложный проект, потом воспользоваться генерацией кода под нужную платформу, или даже под целый комплекс платформ. Для прототипирования систем управления это тоже лучший вариант. Но дорого и требует довольно приличный навыков. Для КА там есть специальные пакеты типа того же Stateflow. Но как правило КА там просто небольшая часть проекта.

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

Одна часть - маленькие КА реального времени, обычно где-то очень близко к исполнительным устройствам, они отлично выносятся на CPLD и FPGA, потому что лучше всего реализуются на дискретной логике. Программировать их тоже не очень сложно, главное не раздувать размер.

Вторая часть часто не видна - это КА в протоколах связи. Они могут быть достаточно сложными, и от них требуется быстродействие, но чаще всего они уже есть в готовом виде, или программируются один раз.

Третья часть - КА верхнего уровня, от них редко требуется жесткий RT. Лучше всего реализовывать на языках мэк 61131-3, для чего эти языки и предназначены.

Четвертая часть - КА в HMI. Там все может быть довольно сложно, и часто именно в этой части возникают проблемы. Выход простой - выносить HMI в отдельный блок, иногда даже на другое устройство, специализированное.

Собственно, в промышленных системах в основном именно такое разделение. Именно поэтому там и нет особенных проблем с программированием КА.

Проблемы обычно бывают тогда, когда все пытаются запихать в один большой КА, и этот КА засунуть в один МК. Это возможно, но разрабатывать и поддерживать такие системы сложно. Тем более что начиная с определенного уровня (довольно быстро) это превращается в Event Driven систему, а тут нужен свой подход, с хорошим пониманием того, что делаешь.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Диспетчер КА - размышлизмы.
СообщениеДобавлено: 24 фев 2020, 14:09 
Старожил
Аватара пользователя

Зарегистрирован: 03 сен 2010, 22:46
Сообщения: 6095
Откуда: Москва
sdv_cyborg писал(а):
В области кодогенерации главный конь - это Mathworks с обилием фреймворков и пакетов оптимизации моделей под целевые платформы. Остальным до него далеко.

Есть еще LabView - для многих задач примерно то же самое. Трудно сказать, что из них лучше, а что хуже, подход разный, а функциональность примерно одинаковая. Цена тоже. Кодогенерация лучше у LV, в основном потому что у них свои целевые платформы.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Диспетчер КА - размышлизмы.
СообщениеДобавлено: 24 фев 2020, 14:11 
Старожил
Аватара пользователя

Зарегистрирован: 11 апр 2016, 18:04
Сообщения: 3558
Откуда: Китай, Пекин
sdv_cyborg писал(а):
Остальным до него далеко.

у меня другие сведенья

но проблема ДАЖЕ не в самой кодогенерации, а в том чтобы сгенерированный код оставался читаемым и отлаживаемым.
без диких синтетических имён... в этом смысле всё плохо.

_________________
unirail.org


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Диспетчер КА - размышлизмы.
СообщениеДобавлено: 24 фев 2020, 14:15 
Старожил
Аватара пользователя

Зарегистрирован: 03 сен 2010, 22:46
Сообщения: 6095
Откуда: Москва
cheblin писал(а):
у меня другие сведенья

Ты путаешь теплое и мягкое. :))) Сравнивать MPS с тем же Simulink бессмысленно.

История с метаязыками имеет право на существование, но это не единственный подход. Иногда он оправдан, иногда нет.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Диспетчер КА - размышлизмы.
СообщениеДобавлено: 24 фев 2020, 14:16 
Старожил

Зарегистрирован: 08 июн 2015, 16:26
Сообщения: 505
akatenev писал(а):

Если что-то сложное и комплексное, и при этом RT, как например в робототехнике - лучше применять инструменты типа LabView и Matlab. Там можно сделать и отладить очень сложный проект, потом воспользоваться генерацией кода под нужную платформу, или даже под целый комплекс платформ. Для прототипирования систем управления это тоже лучший вариант. Но дорого и требует довольно приличный навыков. Для КА там есть специальные пакеты типа того же Stateflow. Но как правило КА там просто небольшая часть проекта.


С этим полностью согласен. Но увы, пока на предприятии у нас Matlab нет, поэтому приходится перебиваться аналогами, у которых кодогенерации либо нет, либо не очень.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Диспетчер КА - размышлизмы.
СообщениеДобавлено: 24 фев 2020, 14:22 
Старожил
Аватара пользователя

Зарегистрирован: 03 сен 2010, 22:46
Сообщения: 6095
Откуда: Москва
Если ты более детально опишешь свою задачу (можно в личку), может быть я предложу тебе парочку приемлемых решений, из тех что сам применяю.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Диспетчер КА - размышлизмы.
СообщениеДобавлено: 24 фев 2020, 14:23 
Старожил
Аватара пользователя

Зарегистрирован: 11 апр 2016, 18:04
Сообщения: 3558
Откуда: Китай, Пекин
akatenev писал(а):
Ты путаешь теплое и

мой ответ был на
Цитата:
В области кодогенерации главный конь - это

...про кодогенерацию вообще, т.е шире чем узко обсуждаемая тема КА и мк... если уж топикстартер пожелает воплотить свои идеи...скорее всего придется перекатываться в кодогенерацию, по описанию(DSL) или рисунку/диаграмме.

_________________
unirail.org


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Диспетчер КА - размышлизмы.
СообщениеДобавлено: 24 фев 2020, 14:25 
Старожил

Зарегистрирован: 08 июн 2015, 16:26
Сообщения: 505
akatenev писал(а):
Если ты более детально опишешь свою задачу (можно в личку), может быть я предложу тебе парочку приемлемых решений, из тех что сам применяю.


Не знаю, на счет того, что можно говорить, а чего нельзя. Чуть позже напишу в лс.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Диспетчер КА - размышлизмы.
СообщениеДобавлено: 24 фев 2020, 14:27 
Старожил
Аватара пользователя

Зарегистрирован: 03 сен 2010, 22:46
Сообщения: 6095
Откуда: Москва
MPS - это не про кодогенерацию вообще, это про метаязыки. Что вообще говоря довольно частный случай этой кодогенерации. И кстати весьма экзотичный.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Диспетчер КА - размышлизмы.
СообщениеДобавлено: 24 фев 2020, 14:38 
Старожил
Аватара пользователя

Зарегистрирован: 11 апр 2016, 18:04
Сообщения: 3558
Откуда: Китай, Пекин
akatenev писал(а):
MPS - это не про кодогенерацию вообще, это про метаязыки.

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

_________________
unirail.org


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Диспетчер КА - размышлизмы.
СообщениеДобавлено: 24 фев 2020, 14:39 
Старожил

Зарегистрирован: 27 мар 2015, 01:22
Сообщения: 1948
akatenev писал(а):
Quantum Leap неплохая штука, я применял его в довольно больших проектах. Но
Show

Всё это весело, но что из этой феерии в сухом остатке для easyelectronics? )

_________________
mcu.goodboard.ru


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Диспетчер КА - размышлизмы.
СообщениеДобавлено: 24 фев 2020, 14:48 
Старожил
Аватара пользователя

Зарегистрирован: 11 апр 2016, 18:04
Сообщения: 3558
Откуда: Китай, Пекин
akatenev писал(а):
MPS - это не про кодогенерацию вообще, это про

Code Generation
Bridging the semantic gap between the business domain and the implementation domain is handled by the MPS generator.

Through a series of steps, the generator gradually transforms the original domain-specific model into a model represented in a low-level general-purpose language, such as Java, C, JavaScript, or XML. The resulting model may then be further transformed into textual source files, which can be fed into traditional compilers in order to generate runnable binaries

особенно рекомендую ознакомиться в футере этой страницы Built with MPS

_________________
unirail.org


Последний раз редактировалось cheblin 24 фев 2020, 14:52, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Диспетчер КА - размышлизмы.
СообщениеДобавлено: 24 фев 2020, 14:52 
Старожил

Зарегистрирован: 25 фев 2011, 18:45
Сообщения: 3685
Откуда: Новосибирск
akatenev писал(а):
Проблемы обычно бывают тогда, когда все пытаются запихать в один большой КА, и этот КА засунуть в один МК. Это возможно, но разрабатывать и поддерживать такие системы сложно. Тем более что начиная с определенного уровня (довольно быстро) это превращается в Event Driven систему, а тут нужен свой подход, с хорошим пониманием того, что делаешь.

И? Как решается эта проблема?
Цитата:
И здесь ключевой момент. Буфер. Не важно что, сообщения, события. Важнее другое. Одно и тоже событие, сообщение в разных состояниях - разные действия. В этом случае главная беда и сложность. Я потому всегда говорил, очередь не панацея. Это не алгоритм, это всего лишь очередь. Не более.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Диспетчер КА - размышлизмы.
СообщениеДобавлено: 24 фев 2020, 14:52 
Старожил
Аватара пользователя

Зарегистрирован: 03 сен 2010, 22:46
Сообщения: 6095
Откуда: Москва
Они делаются тогда, когда у тебя есть специфический домен, для которого нужно создавать специфический язык. Что, собственно, ясно даже из названия :)))

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

Чаще всего домен достаточно типовой, и он не требует применения метаописаний. Потому что уже имеет свою реализацию и свой инструментарий. Можно конечно сделать свой DSL для КА, но вообще говоря они давно уже есть. И давно стандартизованы.

vt340 писал(а):
Всё это весело, но что из этой феерии в сухом остатке для easyelectronics? )

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

Это звучит банально, но 99% разработчиков испытывают с этим серьезные проблемы. В области эмбеда - особенно.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Диспетчер КА - размышлизмы.
СообщениеДобавлено: 24 фев 2020, 14:56 
Старожил
Аватара пользователя

Зарегистрирован: 03 сен 2010, 22:46
Сообщения: 6095
Откуда: Москва
demiurg1978 писал(а):
И? Как решается эта проблема?

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

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Диспетчер КА - размышлизмы.
СообщениеДобавлено: 24 фев 2020, 15:04 
Старожил

Зарегистрирован: 25 фев 2011, 18:45
Сообщения: 3685
Откуда: Новосибирск
akatenev писал(а):

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

Это понятно.
akatenev писал(а):

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

Это тоже понятно. Я не ищу универсальное решение. Я ищу любые решения. Для анализа.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Диспетчер КА - размышлизмы.
СообщениеДобавлено: 24 фев 2020, 15:11 
Старожил
Аватара пользователя

Зарегистрирован: 03 сен 2010, 22:46
Сообщения: 6095
Откуда: Москва
Анализировать надо не решения. А задачу. Про задачу мне ничего не известно, поэтому ничего сказать не могу. Очень может быть, что для нее и не нужно никакого инструментария, помимо уже существующего и освоенного. Чаще всего так и бывает.

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Диспетчер КА - размышлизмы.
СообщениеДобавлено: 24 фев 2020, 15:14 
Старожил

Зарегистрирован: 27 мар 2015, 01:22
Сообщения: 1948
akatenev писал(а):
В сухом остатке следующее - анализируйте задачу, и отделяйте мух от котлет. Нужно уделять внимание системной архитектуре, а не бросаться сразу в программирование, или в поиск универсального решения. Для начала задача должна быть проработана именно на уровне системной архитектуры.

Это звучит банально, но 99% разработчиков испытывают с этим серьезные проблемы. В области эмбеда - особенно.

Второй абзац противоречит первому )

_________________
mcu.goodboard.ru


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Диспетчер КА - размышлизмы.
СообщениеДобавлено: 24 фев 2020, 15:21 
Старожил
Аватара пользователя

Зарегистрирован: 03 сен 2010, 22:46
Сообщения: 6095
Откуда: Москва
Да нет тут никакого противоречия. К сожалению.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Диспетчер КА - размышлизмы.
СообщениеДобавлено: 24 фев 2020, 15:22 
Старожил

Зарегистрирован: 25 фев 2011, 18:45
Сообщения: 3685
Откуда: Новосибирск
Под решениями я понимаю не какое то конкретное решение для конкретной задачи. А подходы. Наверное, принципы будет правильнее.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Диспетчер КА - размышлизмы.
СообщениеДобавлено: 24 фев 2020, 15:32 
Старожил
Аватара пользователя

Зарегистрирован: 03 сен 2010, 22:46
Сообщения: 6095
Откуда: Москва
Ну тогда смотри на QL и VS - это два хрестоматийных примера, в сущности почти одно и то же. Но имей в виду, что лобовое применение подобных подходов может создать больше проблем, чем решить, диапазон, где они на самом деле применимы, достаточно узкий. Собственно, потому они и распространены столь мало.

Лично мне больше нравится табличная реализация. Она точно есть в VS, но насчет QL просто не помню, кажется тоже.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 177 ]  На страницу Пред.  1 ... 4, 5, 6, 7, 8  След.


Часовой пояс: UTC + 5 часов


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB