Страница 1 из 2

Многозадачность на ардуино? Реально ли в FlProg?

Добавлено: 27.09.2018{, 22:59}
ElectroMechaniC
Привет соратники! Кто что слышал за многозажачность на ардуино? Вообще реальнпя ли вещь? Можно ли реализовать средствами FLP? Стоит просить сергея реализовать блок? Или сами накидаем?
Вот ссыль на новость!
http://pccar.ru/showthread.php?t=25825

Многозадачность на ардуино? Реально ли в FlProg?

Добавлено: 27.09.2018{, 23:19}
Anydy
Ну не знаю....ардуино это микроконтроллер, а не компьютер....совсем другие задачи....
Если виндоус такая многозадачная зависнет на выполнении одной задачи, а другую будет по чуть чуть обрабатывать ...ну это простительно
А если МК будет обрабатывать несколько задач....то данные с важного датчика может и пропустить....и космонавтов спасти не удастся ..

Многозадачность на ардуино? Реально ли в FlProg?

Добавлено: 27.09.2018{, 23:26}
pan

Многозадачность на ардуино? Реально ли в FlProg?

Добавлено: 28.09.2018{, 01:40}
Александр_Светлый
Anydy писал(а):
27.09.2018{, 23:19}
виндоус такая многозадачная зависнет...
В этом как раз многозадачность Виндовс и кроется, она может работать и тупить одновременно! :smile37:

Многозадачность на ардуино? Реально ли в FlProg?

Добавлено: 28.09.2018{, 06:06}
kalobyte
3 лупа по таймеру переключать - это все равно что человку сломать ноги, дать ему костыли и вместо резиновых наконечников приделать туда колесики
под мк есть оси реального времени типа freertos
только для нее придется флпрог переписать с нуля вместе со всеми модулями :D

флпрог не предназначена для построения многозадачных систем
она предназначена для создания конечного автомата, как в обычных плк

Многозадачность на ардуино? Реально ли в FlProg?

Добавлено: 28.09.2018{, 10:49}
ElectroMechaniC
УГУ!!! Ясно! Под наши задачи не проканает )))

Многозадачность на ардуино? Реально ли в FlProg?

Добавлено: 14.02.2020{, 12:28}
ussrtk
Ну вот прошло немного времени и такое впечатление,что под ESP32 многозадачность может стать реальностью: теперь не просто переключаемся по таймеру - теперь можем запускать задачу на втором ядре! по умолчанию IDE все размещает на ядре 0
А давайте заставим хоть что то выполняться на ядре 1?

Многозадачность на ардуино? Реально ли в FlProg?

Добавлено: 14.02.2020{, 12:43}
Nikan
.

Многозадачность на ардуино? Реально ли в FlProg?

Добавлено: 14.02.2020{, 12:49}
ussrtk
Nikan писал(а):
14.02.2020{, 12:43}
ussrtk писал(а):
14.02.2020{, 12:28}
А давайте заставим хоть что то выполняться на ядре 1?
а ничего, что там вай фай с блютусом?
Я думаю, что именно из-за них НАДО включать многозадачность.

Многозадачность на ардуино? Реально ли в FlProg?

Добавлено: 14.02.2020{, 12:59}
Nikan
.

Многозадачность на ардуино? Реально ли в FlProg?

Добавлено: 14.02.2020{, 16:56}
ussrtk
Nikan писал(а):
14.02.2020{, 12:59}
ussrtk писал(а):
14.02.2020{, 12:49}
Я думаю, что именно из-за них НАДО включать многозадачность.
мне сдается вы путаете теплое с мягким - о умолчанию в ESP32 CORE_0 отдается под обслуживание радиоканала (WiFi) и самого контроллера, а CORE_1 - под выполнение скетча ардуино. То есть "обычные" скетчи будут выполняться всегда на CORE_1,
заставив работать 0 ядро получите те де траблы что и 8266
Может и так. Но что вы скажете, прочитав и, самое важное, проверив этот материал "ESP32:Примеры/Создание задач для использования обоих ядер ESP32"
И заметьте, я не настроен с вами тягаться в мастерстве сарказма и "не предлагать не смешивать не смешиваемое". Я предлагаю оперировать фактами.
P.s. Все таки мягкое от теплого я отличаю. :) Другое дело - не верны данные в рассматриваемой статье: но я точно знаю, что у меня скетч из статьи скомпилировался. Сегодня хотел его исследовать и поэтому поднял ворс. Надеясь на понимание.

Многозадачность на ардуино? Реально ли в FlProg?

Добавлено: 14.02.2020{, 20:17}
Ingwar
Пару месяцев назад пробовал этот пример. Пусть не на Си, но работает.

Многозадачность на ардуино? Реально ли в FlProg?

Добавлено: 14.02.2020{, 22:14}
Nikan
.

Многозадачность на ардуино? Реально ли в FlProg?

Добавлено: 15.02.2020{, 01:12}
ussrtk
Nikan писал(а):
14.02.2020{, 22:14}
ussrtk писал(а):
14.02.2020{, 17:01}
P.s. Все таки мягкое от теплого я отличаю. :) Другое дело - не верны данные в рассматриваемой статье: но я точно знаю, что у меня скетч из статьи скомпилировался. Сегодня хотел его исследовать и поэтому поднял ворс. Надеясь на понимание.
а чего тут понимать, хочется страдать мазохизмом - так в путь :smile225:
:) ход мыслей понятен.

Многозадачность на ардуино? Реально ли в FlProg?

Добавлено: 15.02.2020{, 04:37}
Anydy
Все верно, на ESP8266 сколько проблем было что одно ядро обслуживает и Wifi и скетч -- постоянные зависоны, на ESP32 стало полегче -- скетч теперь работает вне зависимости от состояния Wifi --- а вы хотите вернуться в прошлое и иметь опять проблемы?

Многозадачность на ардуино? Реально ли в FlProg?

Добавлено: 16.02.2020{, 15:19}
ussrtk
Anydy писал(а):
15.02.2020{, 04:37}
Все верно, на ESP8266 сколько проблем было что одно ядро обслуживает и Wifi и скетч -- постоянные зависоны, на ESP32 стало полегче -- скетч теперь работает вне зависимости от состояния Wifi --- а вы хотите вернуться в прошлое и иметь опять проблемы?
Нет, проблем не хочу. И вернуться не хочу. Я о другом: ранее и теперь из-за задержек цикла при обращения к сети, модeли ESP опасно использовать тогда, когда нужно отреагировать на скоростной сигнал. Например, срабатывание аварийного конечника хода - если его пропустить на пол секунды, то возможны разрушения.
В ESP32 включение слежения за аварийным конечником в ядро 0 никак его не ухудшит его работу! А аварийную ситуацию не проспит. Это во-первых.
Во-вторых: неужели не интересно в рамках FlProg заставить работать ядро 0 в собственных интересах, хотя бы и в ограниченном функционале?
И в третьих: да, в 8266 были коллизии работы радимодуля и основного скетча. Но там мы ничего сделать не могли. А теперь, освоив генерацию отдельного потока в отдельном ядре можно попробовать нагрузить его в разумных пределах.

Я понял так, что это никому здесь не нужно. Ок. Я больше не стану беспокоить. Но ответить был должен. :)

З.Ы, Я уже в рамках FlProg запускаю задачу на ядре 0. И особых разрушений работоспособности не вижу.

Отправлено спустя 2 минуты 55 секунд:
Ingwar писал(а):
14.02.2020{, 20:17}
Пару месяцев назад пробовал этот пример. Пусть не на Си, но работает.
НЕ только на СИ - в ФлПрог работает.
Тмм мы имеем повторение идеи, причем простейшей. А здесь - управляемый ПБ. Вес так просто, но реализуемо и это главное.

Многозадачность на ардуино? Реально ли в FlProg?

Добавлено: 16.02.2020{, 15:44}
Anydy
ussrtk писал(а):
16.02.2020{, 15:21}
Во-вторых: неужели не интересно в рамках FlProg заставить работать ядро 0 в собственных интересах, хотя бы и в ограниченном функционале?
Я думаю даже пробовать не нужно......

Многозадачность на ардуино? Реально ли в FlProg?

Добавлено: 16.02.2020{, 16:02}
ussrtk
Anydy писал(а):
16.02.2020{, 15:44}
ussrtk писал(а):
16.02.2020{, 15:21}
Во-вторых: неужели не интересно в рамках FlProg заставить работать ядро 0 в собственных интересах, хотя бы и в ограниченном функционале?
Я думаю даже пробовать не нужно......
Спасибо, я понял.
А как вы считаете - все эти эксперименты в интрнете с потоками и ядрами на ESP32 - чепуха?

Многозадачность на ардуино? Реально ли в FlProg?

Добавлено: 16.02.2020{, 16:59}
Anydy
ussrtk писал(а):
16.02.2020{, 16:02}
Спасибо, я понял.
А как вы считаете - все эти эксперименты в интрнете с потоками и ядрами на ESP32 - чепуха?
Точно не знаю, но пусть будет лечше так -- 1 ядро занимается wifi, 2 ядро занимается скетчем....никто друг другу не мешает.....я вообще говорил что нужно иметь два МК в проекте... --- один выполняет строго определенные функции ...например общение с внешним миром .... а второй уже отрабатывает вашу программу!

Многозадачность на ардуино? Реально ли в FlProg?

Добавлено: 16.02.2020{, 17:11}
Nikan
.