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

Посоветуйте новичку для старта

3 hours ago, AlexandrY said:

А вот как элементарно в этой модели  делается антидребезг сигнала switchPos.  

Насколько я знаю, Матлаб для этих целей рекомендует использовать оператор duration. https://www.mathworks.com/help/stateflow/ug/debouncing-signals.html

Тогда не нужны дополнительные состояния Bounce_ON и Bounce_OFF и получается еще элементарнее.

 

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


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

1 hour ago, syoma said:

Насколько я знаю, Матлаб для этих целей рекомендует использовать оператор duration. https://www.mathworks.com/help/stateflow/ug/debouncing-signals.html

Тогда не нужны дополнительные состояния Bounce_ON и Bounce_OFF и получается еще элементарнее.

 

Да, вы меня раскусили. :biggrin:
Я на самом деле хотел показать потом второй способ, под названием fault detection.
DebounceSignalsWithFaultDetectionExample

Вот так вот, обработка нажатия одной кнопки может вырасти до кучи состояний. 
И это еще процесс Recovery недостаточно детализирован. 

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


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

11 hours ago, AlexandrY said:

Вот так вот, обработка нажатия одной кнопки может вырасти до кучи состояний. 

Ну мы же не самолетное ПО тут разрабатываем. И это даже не событийная система - будет там эта кнопка дребезжать или нет - циклическому контроллеру флудинг не грозит.

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


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

8 hours ago, syoma said:

Ну мы же не самолетное ПО тут разрабатываем. И это даже не событийная система - будет там эта кнопка дребезжать или нет - циклическому контроллеру флудинг не грозит.

Самой процедуре определения нажатия не грозит. Но если не сделать антидребезг,  то может убить исполнительный механизм. 
А если не сделать fault detection, то юзеры замучают вопросами.
Со временем все приходит в негодность: датчики дверей, концевики, кнопки, контакты реле и т.д. 
Без диагностики дребезга конечно проживете, но головной боли будет больше. 

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

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


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

1 hour ago, AlexandrY said:

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

Ну в принципе сегодня на самом деле логи наше все. Это офигенная возможность быстрой диагностики, которая была недоступна раньше, с ограниченными ресурсами в ембеддерстве. А сейчас попросил юзера скачать, или сам зашел через интернет и видно, что когда произошло. Особенно если юзер сам решил покосячить.

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


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

7 hours ago, syoma said:

Ну в принципе сегодня на самом деле логи наше все. Это офигенная возможность быстрой диагностики, которая была недоступна раньше, с ограниченными ресурсами в ембеддерстве. А сейчас попросил юзера скачать, или сам зашел через интернет и видно, что когда произошло. Особенно если юзер сам решил покосячить.

С логами другая  беда. Их надо прореживать, чтоб не зафлудить.
Иначе придется высматривать нужную инфу так долго, что становится невыгодно  
На помощь приходит механизм очередей сообщений в Stateflow: 

image.thumb.png.44e64dba9fb507c31d1182dc0b1b3855.png

А вот что внутри логера

image.png.ab4fbb6e8aad15e5e45dab5fbf7821f6.png

Очередь ограничиваем заданной глубиной и можем спать спокойно.
SD карта не переполнится в самый неподходящий момент. 

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


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

23 часа назад, AlexandrY сказал:

SD карта не переполнится в самый неподходящий момент. 

Что у вас там за логи такие огромные, что об этом беспокоитесь?? Посчитал у своего автомата, если каждый день по 5 ошибок, их все в лог писать, и даже каждое приготовление по выбору пользователя, коих в день может быть неск. сотен, с параметрами - чтоб 4Гбайт карту засадить по-полной потребуется 10 лет работы...

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


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

47 minutes ago, mantech said:

Что у вас там за логи такие огромные, что об этом беспокоитесь?? Посчитал у своего автомата, если каждый день по 5 ошибок, их все в лог писать, и даже каждое приготовление по выбору пользователя, коих в день может быть неск. сотен, с параметрами - чтоб 4Гбайт карту засадить по-полной потребуется 10 лет работы...

У одной машины Формула-1 за один заезд снимается 4 ГБ телеметрии. Это еще без видео и аудио записей.
Мы тож к этому идем. Лог - эт не просто лог, а скорее уже телеметрия.
Как видно из диаграммы в лог пишется любое изменение входных сигналов. Достаточно некоторым сигналам задребезжать и лог легко переполнит SD карту.
Либо даже не переполнит, а сделает файл таким большим, что ворочать им будет совсем неудобно. 
А бывает просто трудно угадать частоту смены состояний. Допустим пошел в разнос PID. Угадаете частоту его осцилляций? 

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


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

1 hour ago, AlexandrY said:

Допустим пошел в разнос PID. Угадаете частоту его осцилляций? 

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

Писать постоянно аналоговые сигналы нет смысла, хотя возможно.

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


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

23 минуты назад, syoma сказал:

Писать постоянно аналоговые сигналы нет смысла, хотя возможно.

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

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


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

53 minutes ago, syoma said:

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

Писать постоянно аналоговые сигналы нет смысла, хотя возможно.

А вот в Формуле считают иначе и сэмплируют до 100 КГц. 
А ST даже стало выпускать широкополосные вибродатчики. 
Короче, ловим то не знаем что, а AI там разгребет. 
Шняга называется Predictive Maintenance. Мне только что от ST прилетела ссылка на солюшен
А у нас в умном доме уйма моторов начиная от насоса полива и кончая движками в автоматических дверях. 

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

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


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

11 hours ago, AlexandrY said:

А вот в Формуле считают иначе и сэмплируют до 100 КГц

Я знаю. Сам в соседней теме обсуждал рекордер, который 700Мб/с может писать непрерывно. Но это выходит очень затратно по памяти , да и канал нужно иметь широкий, поэтому это действительно телеметрия, а не внутренняя запись.

11 hours ago, AlexandrY said:

Короче, ловим то не знаем что, а AI там разгребет. 
Шняга называется Predictive Maintenance.

А у нас в умном доме уйма моторов начиная от насоса полива и кончая движками в автоматических дверях. 

Predictive Maintenance - это просто. Считаем известные нам вещи, например часы работы насоса или мотора, количество включений контактора и по достижении определенного порога поднимаем флаг - "В следующий maintenance заменить, иначе отключим газ снимем с гарантии!" Если народ пугливый, то выполнит, если нет, то забъет.

Но по поводу AI разгребет не все так однозначно:

Может подскажите, какому AI и что надо скармливать? У меня уже почти  5 лет логов скопилось.

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


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

51 minutes ago, syoma said:

который 700Мб/с может писать непрерывно.

Давайте не уходить в гротеск.
Пару гигабайт за пару часов это вполне по силам IoT.  А 700Мб/с - это из другой вселенной.

54 minutes ago, syoma said:

Может подскажите, какому AI и что надо скармливать? У меня уже почти  5 лет логов скопилось.

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

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


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

1 hour ago, AlexandrY said:

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

Ну я логгирую тупо все, а не только самое ценное.

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


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

7 часов назад, AlexandrY сказал:

Давайте не уходить в гротеск.
Пару гигабайт за пару часов это вполне по силам IoT.  А 700Мб/с - это из другой вселенной.

Не скромничайте! Видите, у вас есть к чему стремиться :biggrin:

22 часа назад, AlexandrY сказал:

У одной машины Формула-1 за один заезд снимается 4 ГБ телеметрии.

Такое впечатление, что у вас все проекты для формулы-1, не меньше :dirol:

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


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

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

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

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

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

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

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

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

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

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