реклама на сайте
подробности

 
 
13 страниц V  < 1 2 3 4 5 > »   
Closed TopicStart new topic
> Real-time и не-real-time - в одном флаконе или раздельно?
mantech
сообщение Oct 28 2017, 18:28
Сообщение #31


Гуру
******

Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143



Цитата(k155la3 @ Oct 28 2017, 21:21) *
Вы мне льстите (шедеврально). В моем посте слово "заплатить" не фигурировало.
Хотя еслиб масштаб цен позволял - покупал бы.


Многие конторы не предоставляют доступ к своему софту или докам пока не заплатишь им, конечно можно найти ломаное, но сколь не встречал, что-нибудь не хватает или недоломано rolleyes.gif

Цитата(Студент заборстроительного @ Oct 28 2017, 20:56) *
В нормально спроектированной RTOS зависание не возможно


В любом нормально спроектированном софте не возможно, и это факт! Вот только вероятность сделать все правильно обратно пропорциональна сложности софта, и это тоже факт, поэтому чем проще - тем лучше, а проще без оси и динамического выделения памяти, и если задачу можно решить не прибегая к этим двум факторам - это и есть гуд laughing.gif
Go to the top of the page
 
+Quote Post
syoma
сообщение Oct 29 2017, 09:35
Сообщение #32


Профессионал
*****

Группа: Свой
Сообщений: 1 817
Регистрация: 14-02-07
Из: наших, которые работают за бугром
Пользователь №: 25 368



Цитата
В любом нормально спроектированном софте не возможно, и это факт!

Извиняюсь, но я был бы полным идиотом, если бы рассчитывал на это. Поэтому каким бы ни был надежным софт, а аппаратный ватчдог в моем проекте должен присутствовать.
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Oct 29 2017, 12:22
Сообщение #33


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



Цитата(Студент заборстроительного @ Oct 28 2017, 19:56) *
Понятие "реальное время" перпендикулярно тому, через сколько времени ртось среагирует на событие.
Если ртось УСПЕВАЕТ ВОВРЕМЯ среагировать и обработать евент за ДЕТЕРМИНИРОВАННОЕ время и это время устраивает заказчика, значит это ртось. Даже если время реакции сотни милисекунд
К примеру если цикл ПЛК 0.5 секунды то нафига успевать среагировать и обрабатывать евент за микросекунды?

Тогда убойный вопрос: откуда вы знаете что ваша программа в ПЛК реагирует за детерминированное время?
В ПЛК есть только цикл и все. Вы только знаете что он выполняется за скажем 2 мс и всегда обновит выходы данными из памяти за это время.
Но будут ли валидные данные в памяти в это время?
ПЛК не гарантирует никаким образом программе выполнение за цикл.

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

Реальное время в современной трактовке - инструмент, а не явление. RTOS - это фреймворк, а не просто планировщик и объекты синхронизации.

Цитата(syoma @ Oct 29 2017, 11:35) *
Извиняюсь, но я был бы полным идиотом, если бы рассчитывал на это. Поэтому каким бы ни был надежным софт, а аппаратный ватчдог в моем проекте должен присутствовать.

Хм, т.е. с одной стороны говорим - ой, какое у нас реальное время, а с другой стороны у нас это реальное время в любой момент готов порвать вотчдог.
Определились бы уже. laughing.gif
Go to the top of the page
 
+Quote Post
mantech
сообщение Oct 29 2017, 12:25
Сообщение #34


Гуру
******

Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143



Цитата(AlexandrY @ Oct 29 2017, 15:19) *
Тогда убойный вопрос: откуда вы знаете что ваша программа в ПЛК реагирует за детерминированное время?
В ПЛК есть только цикл и все. Вы только знаете что он выполняется за скажем 2 мс и всегда обновит выходы данными из памяти за это время.
Но будут ли валидные данные в памяти в это время?
ПЛК не гарантирует никаким образом программе выполнение за цикл.

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


Если сказано, что время реакции на событие должно быть 5 мсек, значит цикл ПЛК, должен быть как минимум в 2 раза быстрее, тогда все данные будут валидными. По моему все понятно laughing.gif

Сообщение отредактировал mantech - Oct 29 2017, 12:25
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Oct 29 2017, 12:27
Сообщение #35


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



Цитата(mantech @ Oct 29 2017, 14:25) *
Если сказано, что время реакции на событие должно быть 5 мсек, значит цикл ПЛК, должен быть как минимум в 2 раза быстрее, тогда все данные будут валидными. По моему все понятно laughing.gif

Не видно оснований для такой эвристики.
Go to the top of the page
 
+Quote Post
mantech
сообщение Oct 29 2017, 17:20
Сообщение #36


Гуру
******

Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143



Цитата(AlexandrY @ Oct 29 2017, 15:22) *
Хм, т.е. с одной стороны говорим - ой, какое у нас реальное время, а с другой стороны у нас это реальное время в любой момент готов порвать вотчдог.
Определились бы уже. laughing.gif


Сначала копирование строк в проге не понравилось, теперь ватчдог... Вообще-то ватчдог нужен для того, если происходит непредвиденное зависание МК в результате критических сбоев, которые вообще-то не должны происходить изрядно-регулярно. Думаете в вашей любимой MQX их не может быть в принципе?? Или веб-сервер в ней сделан как-то по-другому, без применения функций копирования массивов и строк??
Go to the top of the page
 
+Quote Post
syoma
сообщение Oct 29 2017, 19:33
Сообщение #37


Профессионал
*****

Группа: Свой
Сообщений: 1 817
Регистрация: 14-02-07
Из: наших, которые работают за бугром
Пользователь №: 25 368



Цитата
Хм, т.е. с одной стороны говорим - ой, какое у нас реальное время, а с другой стороны у нас это реальное время в любой момент готов порвать вотчдог.

Что значит "готов порвать"? Задача ватчдога как раз в том, чтобы гарантировать реальное время. Т.е. если у меня цикл 5мс, то программа должна выполниться за меньшее время. Как мы можем это гарантировать? Легко - ставим ватчдог, который будет срабатывать, если время выполнения программы превысит 5мс. Данный ватчдог будет возвращать систему в безопасное состояние - в моем случае это отключение всех выходов и ресет микроконтроллера.

В итоге что мы имеем? Либо гарантированное реальное время ЛИБО безопасное состояние. Все, других вариантов нет.

А вопрос насколько часто система будет вываливаться в безопасное состояние как раз зависит от качества софта. В идеале - никогда.

Цитата
Тогда убойный вопрос: откуда вы знаете что ваша программа в ПЛК реагирует за детерминированное время?

Данный ответ работает и для ПЛК. Если в вашем ПЛК не срабатывает ватчдог и он не вываливается в безопасное состояние, значит его программа выполняется за детерминированное время.
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Oct 30 2017, 06:46
Сообщение #38


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



Цитата(syoma @ Oct 29 2017, 21:33) *
Что значит "готов порвать"? Задача ватчдога как раз в том, чтобы гарантировать реальное время.

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

В ПЛК не вотчдог, а набор штатных сигналов о нарушениях на шинах связи и проч. проверки. О реальном вотчдоге там нигде ни слова!

Go to the top of the page
 
+Quote Post
mantech
сообщение Oct 30 2017, 07:25
Сообщение #39


Гуру
******

Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143



Цитата(AlexandrY @ Oct 30 2017, 09:46) *
Рушится обмен на всех шинах. Все слэйвы уходят в ступор, появляется непредсказуемая пауза, теряются состояния процессов, прерываются записи на носители и т.д. и т.п.
У вас же такая навороченная программа, работает по всем мыслимым интерфейсам.
И представьте, вам спец приходит и заявляет - у нас жесткий риалтайм, но если что, то все может рухнуть, зато надежно.


Вы можете гарантировать на 100% безотказность ваших программ в неблагоприятных условиях и в режиме 24\7 ?
И если да, то на основании чего, мне очень интересно? biggrin.gif
А если нет - то в чем тогда их преимущество ?

Сообщение отредактировал mantech - Oct 30 2017, 07:25
Go to the top of the page
 
+Quote Post
gosha-z
сообщение Oct 30 2017, 07:34
Сообщение #40


Местный
***

Группа: Свой
Сообщений: 327
Регистрация: 30-10-05
Пользователь №: 10 288



Цитата(mantech @ Oct 30 2017, 10:25) *
Вы можете гарантировать на 100% безотказность ваших программ в неблагоприятных условиях и в режиме 24\7 ?

Безотказность - нет, уменьшить вероятность возникновения аварийных ситуаций - да. Ключевое слово - Functional safety.
Go to the top of the page
 
+Quote Post
mantech
сообщение Oct 30 2017, 07:51
Сообщение #41


Гуру
******

Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143



Цитата(gosha-z @ Oct 30 2017, 10:34) *
Безотказность - нет, уменьшить вероятность возникновения аварийных ситуаций - да. Ключевое слово - Functional safety.


Правильно, и в любом случае без ватчдога не обойтись.
Go to the top of the page
 
+Quote Post
gosha-z
сообщение Oct 30 2017, 07:53
Сообщение #42


Местный
***

Группа: Свой
Сообщений: 327
Регистрация: 30-10-05
Пользователь №: 10 288



Цитата(mantech @ Oct 30 2017, 10:51) *
Правильно, и в любом случае без ватчдога не обойтись.

Весь вопрос в том - что рвать WDog'ом. Поэтому и исповедуется мысль отделять mission-critical части от user interface
Go to the top of the page
 
+Quote Post
syoma
сообщение Oct 30 2017, 08:27
Сообщение #43


Профессионал
*****

Группа: Свой
Сообщений: 1 817
Регистрация: 14-02-07
Из: наших, которые работают за бугром
Пользователь №: 25 368



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

И? Реальное время надо уважать. Иначе это будет очередная IoT поделка, коих сегодня развелось очень много.

Цитата
В ПЛК не вотчдог, а набор штатных сигналов о нарушениях на шинах связи и проч. проверки. О реальном вотчдоге там нигде ни слова!

Можете почитаете доки? Во всех ПЛК, что я видел, есть Watchdog, как программные - следящие за выполнением отдельных задач, так и аппаратные.
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Oct 30 2017, 08:53
Сообщение #44


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



Цитата(syoma @ Oct 30 2017, 10:27) *
Можете почитаете доки? Во всех ПЛК, что я видел, есть Watchdog, как программные - следящие за выполнением отдельных задач, так и аппаратные.

Эт вы уже стали играть терминами. Я в такие игры не играю.
Go to the top of the page
 
+Quote Post
k155la3
сообщение Oct 30 2017, 21:21
Сообщение #45


Профессионал
*****

Группа: Свой
Сообщений: 1 123
Регистрация: 8-03-09
Из: Днепр
Пользователь №: 45 848



>> В любом нормально спроектированном софте не возможно, и это факт!

Цитата(syoma @ Oct 29 2017, 13:35) *
Извиняюсь, но я был бы полным идиотом, если бы рассчитывал на это. Поэтому каким бы ни был надежным софт, а аппаратный ватчдог в моем проекте должен присутствовать.


Можно было бы попытаться дать гарантию безошибочности (100 %, или хотябы 9.999 ), если бы весь "продукт" был свой, доморощенный.
до последнего бита и проводка.
1. Читаем errata на ВСЕ что используется из комплекующих, и пытаемся ЭТО предусмотреть в коде.
2. Читаем errata, и "мечтаем", что там моежт появиться в следующей ревизии (но глючек уже в этой).
3. Неоткрытая элементарная частица из Вселенной влетает в ГЛАВНЫЙ РЕГИСТР системы и все рушится.
(одна надежда, что по вероятности ОНО не затронет WD).


Go to the top of the page
 
+Quote Post

13 страниц V  < 1 2 3 4 5 > » 
Closed TopicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th April 2024 - 02:48
Рейтинг@Mail.ru


Страница сгенерированна за 0.01636 секунд с 7
ELECTRONIX ©2004-2016