SFC (как и ST, CFC) часть Codesys. Codesys реализуют разные (в основном Европа, в основном Германия, напр., Wago, Bechoff) фирмы (у нашей фирмы Овен присутствуют обе версии - 2 и 3-я). Только они могут иметь другие названия, да и часть библиотек могут разниться (напр., у Wago и Beckhoff разные блоки синхронизации времени по сети).
В свою очередь, это же стандарт МЭК 61131-3, поэтому все, кого ни возьми (Allen-Bradley, ABB, SAIA, B&R, Mitsubishi, Siemens...) стараются его придерживаться.
Конечно, в стареньких вариантах есть только LD, FBD и (о, ужас) IL, но продвинутые ПЛК, возможно, за отдельную плату допускают и ST с SFC.
Есть интересный вариант для MatLab: рисуете на Stateflow, затем он конвертирует его в ST. Получается не очень наглядно, но разобраться можно, а уж для ST легче найти контроллер.
Немного поясню рисование в программируемых контроллерах (SFC) и Stateflow:
Внутри состояния (активного блока) на каждом скане выполняется программа с меткой during, один раз при активации блока - с меткой entry и один раз при выполнении условия окончания активности - с меткой exit.
В Матлабе немного можете почитать про Simukink, но главный упор на Stateflow.
Ещё раз: для Ардуино есть разные IDE и языки программирования (как текстовые, так и графические).
Я предлагаю сначала сформулировать алгоритм вашей задачи. Потом его можно реализовать на любом удобном языке.
Вы делали на С, испытали трудности. Расширяйте ваш кругозор для решения задач Ардуино другими средствами.
1) нарисовать алгоритм ручками на бумаге (в стиле Stateflow)
2) начать осваивать Матлаб
а) запустить online курс MatLab Onramp (на английском) по простому Матлабу (сложить, умножить и т.д., операции с матрицами)
б) запустить Matlab, из него Simulink, из Симулинка запустить курс Stateflow Onramp.
Я же писал: на этом языке можете рисовать параллельную (условно) обработку. Я надеюсь, вы знаете принципы структурного программирования? (последовательность, развилка, цикл). А тут ещё параллельные ветки допустимы.
Ваша ошибка в том, что вы сразу пишете код. Начинать надо с алгоритма (блок-схема, текст, циклограмма...). Тогда уже текст можно сравнить с алгоритмом.
(в Матлабе из рисунка Stateflow есть автоматическое преобразование в текстовый язык (С, С++ для процессора или ST (Structured Text) для контроллера).
Вы не поняли. Граф состояний (в Матлабе Stateflow, в программируемых контрллерах SFC (sequential flow chart)) рисуется, это не текст.
Можете рисовать на листочке, можете в Матлабе. Даже для Ардуино уже много IDE. Не зацикливайтесь на текстах.
Антон Барышев, Надеюсь, вы понимаете, что, напр., дробь 1/3 всегда отображается с погрешностью что в десятичном, что в двоичном (у компьютеров) представлении?
Вообще, инженер это не математик, он должен уметь округлять. Только надо договориться о допустимой погрешности (ну и выбирать подходящий метод решения).
При свёртке размер фильтра обычно намного короче длины сигнала.
При корреляции оба сигнала должны быть одинакового размера. (либо короткий сигнал (шаблон) сравнивается с разными фрагментами длинного сигнала).
Хоть я и не медик, но навряд ли. А вот ещё можете сравнить тип ламп (работа, дом): накаливания, светодиодные (какой марки?), люминесцентные, галогеновые.
(думал, что тип матрицы проверить, но раз монитор один и тот же, то это отпадает)
Может быть такой эффект. На работе освещение ярче, зрачок суживается, меньше получает энергии от монитора, глаза меньше устают. Дома освещение меньше, зрачок расширяется, больше получает от монитора, глаза устают.
Вообще в советское время запрещалось сидеть перед монитором больше 4 часов.
Ещё зависит от фона. Допустим, читаю pdf на белом фоне - тяжело. А для office (word, excel) установил жёлто-красноватый фон Windows для документов - читать приятнее.