-
- Переводы некоторых статей там--> - Vit(31.07.2013 22:40, ссылка)
- гуглится Vit(31.07.2013 22:34, ссылка, ссылка)
- ОС для событийного программирования? Проектирование "событийного" автомата радикально менее формализовано, чем проектирование "автомата состояний". И потому более опасно в плане редко возникающих ошибок, примеры которых я привел ранее. - Скрипач(31.07.2013 23:14 - 23:31)
- автомат без явного описания состояний это прототридсы. всё Вам опасно и редко возникающе:) - Vit(01.08.2013 00:15)
- А у вас в программе все ошибки - синтаксические, да? :) Скрипач(164 знак., 01.08.2013 00:24)
- fk0 в том, что без событийной системы строить мелкожручее, ИМХО, прав. Запускать же адресно автомат (с неформализованным, например, описанием) по событию, которое он ожидает, т.е. описано явно, у Вас почему-то оказывается сложным. Vit(1490 знак., 01.08.2013 10:06)
- Не так. Модель конечного автомата: Скрипач(294 знак., 01.08.2013 14:16 - 14:22)
- Возражение не принимается. Работа жесткой логики и программы чуток отличаются. Расставьте всего-лишь 2 входа на разные порты МК и автомат "сам,, в любой момент времени, полностью определить состояние ВСЕХ своих входных сигналов" тупо НЕ СМОЖЕТ и Vit(74 знак., 01.08.2013 16:55)
- Упускается один момент. Мы же не с логикой работаем, чтобы входные сигналы одновременно считывать. Пусть пины разбросаны хоть по десятку портов. Скрипач уже написал, сам так делаю. Собираем состояние портов в промежуточном массиве, я иногда делаю mazur(507 знак., 02.08.2013 12:48)
- Тут я могу возразить. Представьте себе автомат в виде черного ящика, и вы просто не сможете определить как Bill(317 знак., 01.08.2013 18:57)
- Возражайте. По задержкам и гонкам определяется. И расскажите, как примете 16 входов гарантированно одновременно, до того, как состояние на пине любого входа изменится, на AVR, а потом будем обобщать дальше. - Vit(01.08.2013 21:36)
- Одновременно - понятие растяжимое. Тут все зависит от конкретных условий, а не от Bill(29 знак., 02.08.2013 07:23)
- К сожалению нет. Ловить просто уровни это один гипертрофированный случай. По пинам обычно ловятся изменения. Бывает, что их порядок/количество не очень важны, но это опять же редкость. Т.к. для автомата входной сигнал это не пин, а его состояние в Vit(999 знак., 02.08.2013 08:39, ссылка)
- Все правильно, именно это я и имел в виду. Любой синхронный автомат (а именно о них и идет речь) работает Bill(1710 знак., 02.08.2013 10:41)
- C чего вдруг речь о синхронных автоматах? - Vit(02.08.2013 12:10, ссылка, ссылка)
- Вы еще раз внимательно перечитайте ваше сообщение -> - Bill(02.08.2013 12:22, ссылка)
- Вы бы внимательней перечитали сами. Лучше начиная с --> или с начала топика - Vit(02.08.2013 21:04, ссылка)
- Вы еще раз внимательно перечитайте ваше сообщение -> - Bill(02.08.2013 12:22, ссылка)
- C чего вдруг речь о синхронных автоматах? - Vit(02.08.2013 12:10, ссылка, ссылка)
- Цитата: Скрипач(767 знак., 02.08.2013 08:55)
- Все правильно, именно это я и имел в виду. Любой синхронный автомат (а именно о них и идет речь) работает Bill(1710 знак., 02.08.2013 10:41)
- К сожалению нет. Ловить просто уровни это один гипертрофированный случай. По пинам обычно ловятся изменения. Бывает, что их порядок/количество не очень важны, но это опять же редкость. Т.к. для автомата входной сигнал это не пин, а его состояние в Vit(999 знак., 02.08.2013 08:39, ссылка)
- Одновременно - понятие растяжимое. Тут все зависит от конкретных условий, а не от Bill(29 знак., 02.08.2013 07:23)
- Возражайте. По задержкам и гонкам определяется. И расскажите, как примете 16 входов гарантированно одновременно, до того, как состояние на пине любого входа изменится, на AVR, а потом будем обобщать дальше. - Vit(01.08.2013 21:36)
- Аргументов не понял, а против основной мысли возражаю. Скрипач(132 знак., 01.08.2013 16:59)
- у Вас момент растягивается как хошь - Vit(01.08.2013 17:15)
- Да. И неслабо упрощает прикладное программирование. - Скрипач(01.08.2013 17:22)
- я о "кручу-верчу-запутать хочу" - Vit(01.08.2013 21:37)
- Пох, забей :) - Скрипач(01.08.2013 23:05)
- я о "кручу-верчу-запутать хочу" - Vit(01.08.2013 21:37)
- Да. И неслабо упрощает прикладное программирование. - Скрипач(01.08.2013 17:22)
- у Вас момент растягивается как хошь - Vit(01.08.2013 17:15)
- Входами автомата могут быть: собсно дискретные входы, события, таймеры. Что приоритетнее выбирается по условиям задачи. Никакой гонки сигналов тут нет. У нас есть аварийные входы, они идут в первую очередь, очень важные события тоже в первую mazur(643 знак., 01.08.2013 15:43)
- Например, событие пришло ДО переключения автомата в состояние ожидания этого события. - Скрипач(01.08.2013 15:54)
- Значит, оно произошло ДО. Оно ведь и на пол-часа раньше ДО произойти могло. Что в этом такого? - fk0(01.08.2013 16:11)
- Мы его пропустили и ждем следующего. Что может проскочить мимо внимания, когда проектируешь алгоритм. - Скрипач(01.08.2013 16:48)
- Я уже вообще не понимаю о чём речь. Что значит "пропустили"? Утверждения мол "автоматы не работают" -- очевидно, что абсурдны. У вас какое-то недопонимание, и я даже не понимаю чего именно. - fk0(01.08.2013 17:33)
- Вы рискуете войти в рекурсию непонимания :-) - Shura(01.08.2013 17:36)
- Выход из рекурсии - оператор: "Та пох. Забей" :) - Скрипач(01.08.2013 18:40 - 18:48)
- Вы рискуете войти в рекурсию непонимания :-) - Shura(01.08.2013 17:36)
- Я уже вообще не понимаю о чём речь. Что значит "пропустили"? Утверждения мол "автоматы не работают" -- очевидно, что абсурдны. У вас какое-то недопонимание, и я даже не понимаю чего именно. - fk0(01.08.2013 17:33)
- Мы его пропустили и ждем следующего. Что может проскочить мимо внимания, когда проектируешь алгоритм. - Скрипач(01.08.2013 16:48)
- Вы где-то что-то упускаете. Скажите, как вы реализуете событийную систему. У вас обработка событий в одном месте? У меня нет таких проблем. У меня есть автоматы. В начале автомата, в зависимости от назначения, опрос входов, дискретных или mazur(665 знак., 01.08.2013 16:06)
- Значит, оно произошло ДО. Оно ведь и на пол-часа раньше ДО произойти могло. Что в этом такого? - fk0(01.08.2013 16:11)
- Например, событие пришло ДО переключения автомата в состояние ожидания этого события. - Скрипач(01.08.2013 15:54)
- Для этого предполагатся, что все события могут возникать строго последовательно, и никакой гонки уже быть не может. Порядок возникновения событий во времени придётся сохранить. И вообще не понятно, что мешает автомату самостоятельно проверить fk0(106 знак., 01.08.2013 14:50)
- "Приказом по предприятию запретить отказы и выход из строя оборудования КИПиА" :))) Это к попыткам принять в размышлениях возможность влиять на поток событий. - Скрипач(01.08.2013 15:34)
- Можно предположить, что все события не одновременны, а разделены минимальным квантом времени, большим нуля (планковское время, например). Тогда не возникает неоднозначности, если события обрабатываются строго последовательно, в порядке их fk0(281 знак., 01.08.2013 16:09)
- Лучше разделить их символом табуляции. - Скрипач(01.08.2013 17:04)
- Можно предположить, что все события не одновременны, а разделены минимальным квантом времени, большим нуля (планковское время, например). Тогда не возникает неоднозначности, если события обрабатываются строго последовательно, в порядке их fk0(281 знак., 01.08.2013 16:09)
- События и входные сигналы это вообще разные сущности. Бывают события, которые вообще невозможно зарегистрировать опросом. А есть входные сигналы, которые не инициируют сами по себе изменение состояния автомата, но могут влиять на переходные =AlexD=(45 знак., 01.08.2013 14:57)
- Подразумевалось, что (изменение) входных сигналов вызывают события. - fk0(01.08.2013 16:10)
- это узкий частный случай - =AlexD=(01.08.2013 21:00)
- +1 - Vit(01.08.2013 16:32)
- Не у Скрипача: "по Шатыло" и "не по Шатыло". Можно делать сколь угодно сложно-комбинированные системы, нельзя скомбинировать только наличие методики и ее отсутствие :) - Скрипач(01.08.2013 15:36 - 15:38)
- Методика Шалыто вполне полная. А вот у вас как раз отсутствие методики. Когда не только программы пишутся программистом по наитию, но точно также выдумывается из головы алгоритм управления, зачастую противоречивый и не полный. Автоматы нужны в fk0(273 знак., 01.08.2013 16:14)
- Не смущает. Скрипач(250 знак., 01.08.2013 16:53)
- У Шалыто оно уже event driven -- автомат получает события как аргумент функции. И менять ничего-то не нужно. Если речь про то, что при вычислении условий перехода вызываются какие-либо функции (`x') и проверяют входы, например, то ничто не мешат fk0(680 знак., 01.08.2013 17:42)
- То, что "вы" называете "event driven" нечто полностью этому противоположное. Цитата: "факт события использовать только для запуска автомата, в котором уже игнорировать событие и проанализировать входы напрямую". Скрипач(238 знак., 01.08.2013 18:39)
- Пример события из ОС: поступили данные в сокет (проявляется в WaitForMultipleEvents() или в select()). Но какие данные -- не узнаешь, пока не прочитаешь. Также и здесь. И таки да, у всех всё работает, кроме Скрипача, который несёт какую-то чушь fk0(697 знак., 01.08.2013 22:28, ссылка)
- И где это я говорю об "одновременности"? Если сами с собой разговариваете, то хотябы на меня не ссылайтесь, бля. - Скрипач(01.08.2013 23:02)
- перечитывая классиков:) забил:) - Vit(02.08.2013 00:16, ссылка)
- По ссылке даже слово "одновременно" нету. Скрипач(490 знак., 02.08.2013 08:38)
- Событие может наступить "не тогда, когда ждали", что под этим подразумевали? Вы сейчас хоть на это конкретные примеры приведите. Хотя нет, скорее интересует как вы реализуете обработку входных сигналов, чем бы они не были. Пример кода в студию, mazur(71 знак., 02.08.2013 13:10)
- Сахар лежит в баночке из-под кофе, на которой написано "соль"(С) - Vit(02.08.2013 08:42)
- По ссылке даже слово "одновременно" нету. Скрипач(490 знак., 02.08.2013 08:38)
- перечитывая классиков:) забил:) - Vit(02.08.2013 00:16, ссылка)
- И где это я говорю об "одновременности"? Если сами с собой разговариваете, то хотябы на меня не ссылайтесь, бля. - Скрипач(01.08.2013 23:02)
- в кононичЬной:) Vit(153 знак., 01.08.2013 21:50)
- Пример события из ОС: поступили данные в сокет (проявляется в WaitForMultipleEvents() или в select()). Но какие данные -- не узнаешь, пока не прочитаешь. Также и здесь. И таки да, у всех всё работает, кроме Скрипача, который несёт какую-то чушь fk0(697 знак., 01.08.2013 22:28, ссылка)
- То, что "вы" называете "event driven" нечто полностью этому противоположное. Цитата: "факт события использовать только для запуска автомата, в котором уже игнорировать событие и проанализировать входы напрямую". Скрипач(238 знак., 01.08.2013 18:39)
- У Шалыто оно уже event driven -- автомат получает события как аргумент функции. И менять ничего-то не нужно. Если речь про то, что при вычислении условий перехода вызываются какие-либо функции (`x') и проверяют входы, например, то ничто не мешат fk0(680 знак., 01.08.2013 17:42)
- Не смущает. Скрипач(250 знак., 01.08.2013 16:53)
- Методика Шалыто вполне полная. А вот у вас как раз отсутствие методики. Когда не только программы пишутся программистом по наитию, но точно также выдумывается из головы алгоритм управления, зачастую противоречивый и не полный. Автоматы нужны в fk0(273 знак., 01.08.2013 16:14)
- Подразумевалось, что (изменение) входных сигналов вызывают события. - fk0(01.08.2013 16:10)
- "Приказом по предприятию запретить отказы и выход из строя оборудования КИПиА" :))) Это к попыткам принять в размышлениях возможность влиять на поток событий. - Скрипач(01.08.2013 15:34)
- Возражение не принимается. Работа жесткой логики и программы чуток отличаются. Расставьте всего-лишь 2 входа на разные порты МК и автомат "сам,, в любой момент времени, полностью определить состояние ВСЕХ своих входных сигналов" тупо НЕ СМОЖЕТ и Vit(74 знак., 01.08.2013 16:55)
- Не так. Модель конечного автомата: Скрипач(294 знак., 01.08.2013 14:16 - 14:22)
- fk0 в том, что без событийной системы строить мелкожручее, ИМХО, прав. Запускать же адресно автомат (с неформализованным, например, описанием) по событию, которое он ожидает, т.е. описано явно, у Вас почему-то оказывается сложным. Vit(1490 знак., 01.08.2013 10:06)
- А у вас в программе все ошибки - синтаксические, да? :) Скрипач(164 знак., 01.08.2013 00:24)
- я предлагал читать - Vit(01.08.2013 00:10)
- Practical UML? Качаю. У меня сейчас и-нет "походный". Медленно. - Скрипач(01.08.2013 00:29)
- там её приаттачил - Vit(01.08.2013 10:10, ссылка)
- Я видел. Начал просматривать, но Скрипач(76 знак., 01.08.2013 14:24)
- там её приаттачил - Vit(01.08.2013 10:10, ссылка)
- Practical UML? Качаю. У меня сейчас и-нет "походный". Медленно. - Скрипач(01.08.2013 00:29)
- автомат без явного описания состояний это прототридсы. всё Вам опасно и редко возникающе:) - Vit(01.08.2013 00:15)
- ОС для событийного программирования? Проектирование "событийного" автомата радикально менее формализовано, чем проектирование "автомата состояний". И потому более опасно в плане редко возникающих ошибок, примеры которых я привел ранее. - Скрипач(31.07.2013 23:14 - 23:31)