Как стать автором
Обновить
7

Matlab *

Математическое моделирование и одноимённый ЯП

Сначала показывать
Порог рейтинга
Уровень сложности

Hardware in the Loop (HIL) или как залупить модель с контроллером. Зачем и кому это надо?

Уровень сложностиПростой
Время на прочтение18 мин
Количество просмотров2K

Отладка систем управления вместе с моделью объекта. 

В данной статье рассмотрены примеры использования графических языков программирования в жизненном цикле модельно-ориентированного проектирования для систем управления сложными техническими объектами. А также продемонстрировано, как графические языки программирования делают жизнь проще, но интересней. И чтобы читатель не заскучал, мы рассмотрим противостояние программистов и технологов. Это как Монтекки и Капулетти, физики и лирики, красное и белое.  Разберемся кто из них главный, а кто лишний.

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

Определение:

Технологи - специалисты в конкретной предметной области: физики, электрики, конструктора и проектанты разных сложных объектов. Технолог знает, как работает его сложный технический объект, что и когда включать или что и когда выключать, чтобы не было потом мучительно больно.

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

Каждый из них занимается свои делом по жизни, но, когда нужно создать сложный технический объект, они встречаются как лед и пламень, или лебедь, рак и щука, или мартышка и очки. А все потому, что любой современный технический объект содержит в себе систему управления, которая сейчас почти всегда выполнена в виде программного обеспечения на контроллере, а значит, нам нужен программист, и он должен понимать (хотя бы примерно), что от него хочет технолог.

Читать далее
Всего голосов 7: ↑6 и ↓1+8
Комментарии33

Новости

Случайные блуждания: связь с резистивным расстоянием (часть 3)

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров758

Вот мы и добрались до написания программ.
В этой статье напишем скрипты для расчётов резистивного расстояния и для моделирования случайных блужданий. В качестве ЯП был выбран Octave (всё-таки математикой занимаемся).

Читать далее
Всего голосов 2: ↑2 и ↓0+6
Комментарии0

Как американская коррупция превратила физика-ядерщика в быдло-кодера

Уровень сложностиПростой
Время на прочтение17 мин
Количество просмотров107K

Это история из цикла «как войти в IT», написанная старпером, ветераном броуновского движения, который помнит динозавров. Поэтому его опыт вхождения в ИТ никому не пригодится, но представляет интерес с точки зрения истории.  

Также поделюсь своим мыслями об интерфейсе инженерного ПО. Участвуя в разработках различного ПО, предназначенного для ускорения разработки сложных систем, периодически приходится выслушивать жалобы от новых пользователей на «кривой и устаревший» интерфейс ПО. Однако инженеры, погруженные в проблемы проектирования реальных железок, вообще не задают нам таких вопросов, либо потому, что уже искривили свои руки о кривой интерфейс, либо им это вообще неважно. Более того, есть два примера, когда реальные высокопрофессиональные инженеры в своей области предъявляли претензии обратного свойства, и первая версия кривая версия GUI была удобнее, а вот улучшения делали какие-то полупокеры. 

К написанию данного текста меня подтолкнула беседа с одним из крутых разрабов из «жирной» конторы, с которым мы пересеклись на яхте в Средиземном море. Узнав, что я тоже из Бауманки, и у меня свой бизнес, он заинтересовался и выспрашивал. Как я смог начать бизнес на софте, почему не пошел в большую контору, типа Yandex, Сбер и прочие. У него тоже знакомство с софтом началось как создание собственной разработки по анализу результатов металлургических испытаний в лаборатории, но закончилось работой прогером по найму. Попивая вино на яхте где-то между Турцией и Грецией в 2023 году, он предположил, что, возможно, если бы он продолжал писать софт для металлургических исследований, то, наверное, сейчас мог плавать на своей яхте, а не арендованной, и не около Турции, а на Карибах (но это не точно). А поскольку фарш невозможно провернуть назад, я решил описать свою историю успеха, так как она забавна и поучительна.

Читать далее
Всего голосов 382: ↑367 и ↓15+417
Комментарии279

Почём синтаксический сахар в графических языках программирования?

Уровень сложностиПростой
Время на прочтение14 мин
Количество просмотров8.4K

Графические языки программирования

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

Забавно, но это наглядное подтверждение, что развитие идет по кругу или, точнее, по спирали. Первобытный человек сначала рисовал истории на стенах, потом люди придумала алфавит, потом другие умные люди придумали формулы для математических расчетов, потом другие не менее умные придумали для них счетные машины, потом для счетных машин придумали алфавит – ассемблер, потом язык FORTRAN, и, наконец, появился графический язык диаграмм. Круг замкнулся! Люди вернулись к рисованию, но на другом уровне развития, а все потому, что это удобнее и экономит время на понимание. Очевидно, что рисунок понять легче чем текст, особенно когда текста многие килобайты, как в современных библиотеках и фреймворках, в которых сам черт ногу сломит. 

Что говорят стандарты?

Обратимся к  МЭК 61131-3. Там описано два чисто графических языка программирования:

 FBD (Function Block Diagram) — графический язык программирования стандарта МЭК 61131-3. Предназначен для программирования программируемых логических контроллеров (ПЛК)

LD (Ladder diagram) — язык релейно-контактной логики.

Интересно, что язык программирования LD основан на принципиальных электрических релейных схемах, то есть программист, когда пишет программу на этом языке, на самом деле рисует принципиальную электрическую схему. 

Читать далее
Всего голосов 18: ↑10 и ↓8+4
Комментарии130

Истории

Двигатели переменного тока – точные модели

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров4.3K

На семинаре «Преподавание электропривода в вузах», прошедшем в ЛЭТИ пятого октября прошлого года, был представлен доклад Алексея Сергеевича Анучина (далее для краткости А.С.) под названием «Модели, которым мы учим студентов».

Доклад был посвящен состоянию дел с моделями двигателей переменного тока. В частности, там была высказана критика в адрес существующих моделей, которые не учитывают эффекты насыщения асинхронных и синхронных двигателей. Доклад заставил задуматься…

Материал, изложенный ниже, является результатом этих раздумий.

Авторы: Ю.Н. Калачёв, Ф.И. Баум, А.Ю. Базин

Вполне допускаются и даже приветствуются возражения читателей.

Читать далее
Всего голосов 6: ↑6 и ↓0+9
Комментарии0

Что скрывает под собой скрытое (латентное) пространство?

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров3.5K

Работа с латентными пространствами

Латентное пространство полезно для изучения функций данных и поиска более простых представлений данных для анализа.

Как используются латентные пространства в библиотеке eXplain-NNs?

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

Анализ гомологии латентных пространств: Еще один метод, предоставляемый библиотекой eXplain-NNs, это анализ гомологии латентных пространств. Анализ гомологии используется для изучения структуры и связей между этих латентных представлений. Это помогает понять, каким образом информация организована внутри модели и влияет на ее способность принимать решения.

Читать далее
Всего голосов 4: ↑3 и ↓1+4
Комментарии0

Введение в цифровую обработку сигналов

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров7.7K

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

Чтобы понять преимущества ЦОС, давайте сначала рассмотрим традиционный метод обработки сигналов, то есть аналоговую обработку сигналов.

Это статья сделана совместно с автором курса по Цифровой обработке сигналов в INZHENERKA.TECH Волченковым Владимиром, доцентом кафедры телекоммуникаций и основ радиотехники ФГБОУ ВО «РГРУ им. В.Ф. Уткина» и научным сотрудником ООО «Лаборатория Сфера». Больше информации в нашем сообществе инженеров.

Аналоговая обработка сигналов

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

Читать далее
Всего голосов 7: ↑5 и ↓2+6
Комментарии9

Разработка системы управления электроприводом постоянного тока. Часть 1 — математическая модель

Уровень сложностиСложный
Время на прочтение17 мин
Количество просмотров6K

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

Читать далее
Всего голосов 15: ↑15 и ↓0+15
Комментарии14

Управление электромеханической системой на основе ДПТ. Метод желаемой ЛАЧХ и другие средства Matlab

Время на прочтение13 мин
Количество просмотров1.8K

Частой задачей при обучении теории автоматического управления является расчет корректирующего устройства методом желаемой ЛАЧХ. Эта задача дается для ознакомления с большим миром управления в частотной области.
Зачем вообще частотный метод, когда есть модальный?
Дело в том, что в 1978 году Джоном Дойлом в статье Guaranteed Stability Margins for LQG Regulators было показано, что для LQG регуляторов не существует гарантированного запаса устойчивости, и поэтому в зависимости от объекта управления, шума и помех в каналах управления и измерения, LQG регулятор может быть сколь угодно чувствительным к неопределенности в модели и временным задержкам, а значит он может быть сколь угодно не надежным (робастным).
В данной статье покажем несколько способов расчета компенсатора частотными методами, помимо метода желаемой ЛАЧХ, в пакете Matlab с использованием Control System Toolbox.

Читать далее
Всего голосов 6: ↑6 и ↓0+6
Комментарии3

9 Синтез и коррекция систем автоматического регулирования (САР)

Время на прочтение14 мин
Количество просмотров3.6K

Продолжаем публикацию лекций по предмету "Управление в технических системах". Кафедра "Ядерные энергетические установки" МГТУ им. Н.Э. Баумана. Автор: Олег Степанович Козлов.

1. Введение в теорию автоматического управления.2. Математическое описание систем автоматического управления 2.1 — 2.32.3 — 2.82.9 — 2.13

3. Частотные характеристики звеньев и систем автоматического управления регулирования. 3.1. Амплитудно-фазовая частотная характеристика: годограф, АФЧХ, ЛАХ, ФЧХ3.2. Типовые звенья систем автоматического управления регулирования. Классификация типовых звеньев. Простейшие типовые звенья3.3. Апериодическое звено 1–го порядка инерционное звено. На примере входной камеры ядерного реактора3.4. Апериодическое звено 2-го порядка3.5. Колебательное звено3.6. Инерционно-дифференцирующее звено3.7. Форсирующее звено.  3.8. Инерционно-интегрирующее звено (интегрирующее звено с замедлением)3.9. Изодромное звено (изодром)3.10 Минимально-фазовые и не минимально-фазовые звенья3.11 Математическая модель кинетики нейтронов в «точечном» реакторе «нулевой» мощности

4. Структурные преобразования систем автоматического регулирования.

5. Передаточные функции и уравнения динамики замкнутых систем автоматического регулирования (САР).

6. Устойчивость систем автоматического регулирования. 6.1 Понятие об устойчивости САР. Теорема Ляпунова. 6.2 Необходимые условия устойчивости линейных и линеаризованных САР. 6.3 Алгебраический критерий устойчивости Гурвица. 6.4 Частотный критерий устойчивости Михайлова. 6.5 Критерий Найквиста.

Читать далее
Всего голосов 9: ↑8 и ↓1+8
Комментарии0

Управление обратным маятником в MATLAB Simulink без формул. Настройка PID регуляторов

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров2.1K

Простой и популярной реализацией закона управления обратным маятником является PID регулятор. Современные средства настройки коэффициентов PID регулятора позволяют решать подобные задачи нажатием пары кнопок даже без знания математики, физики и вообще без каких-либо технических знаний. Рассмотрим пример настройки PID регуляторов в Simulink для классического обратного маятника.

Объект управления (Plant)

Модель перевернутого маятника соберем в библиотеке Multibody. Для этого нам не понадобится знание физики и математики. Библиотека Multibody предоставляет нам готовые блоки степеней свободы, твердых тел, преобразований координат, которые нужно только верно соединить. Собираем подсистемы отдельно для маятника и отдельно для тележки, и собираем все вместе. Результат на рисунке, модель в прикрепленных файлах.

Читать далее
Всего голосов 7: ↑7 и ↓0+7
Комментарии0

Оптимальное управление обратным маятником, пример реализации модели в MATLAB

Время на прочтение9 мин
Количество просмотров2.5K

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

Читать далее
Всего голосов 16: ↑16 и ↓0+16
Комментарии3

Полиномиальные корневые методы синтеза САУ ч.3 (заключение)

Уровень сложностиСредний
Время на прочтение12 мин
Количество просмотров1.7K

Леонид Маркович Скворцов. Широко известный в узких кругах математик, профессионально занимающийся математическими проблемами автоматического управления. Например, его авторские методы использованы в SimInTech. Данный текст, еще готовится к публикации. Но с разрешения автора, читатели Хабр будут первыми кто сможет оценить. Первая часть здесь... Вторая часть здесь...

Две предыдущие части были заполнены многоэтажными формулами в третей части разберем на примерах применение этих формул. Математику в жизнь!

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

Читать далее
Всего голосов 11: ↑11 и ↓0+11
Комментарии2

Ближайшие события

19 сентября
CDI Conf 2024
Москва
24 сентября
Конференция Fin.Bot 2024
МоскваОнлайн
30 сентября – 1 октября
Конференция фронтенд-разработчиков FrontendConf 2024
МоскваОнлайн

Полиномиальные корневые методы синтеза САУ ч.2

Уровень сложностиСредний
Время на прочтение17 мин
Количество просмотров2.1K

Леонид Маркович Скворцов. Широко известный в узких кругах математик, профессионально занимающийся математическими проблемами автоматического управления. Например, его авторские методы использованы в SimInTech. Данный текст, еще готовится к публикации. Но с разрешения автора, читатели Хабр будут первыми кто сможет оценить. Первая часть здесь...

Читать далее
Всего голосов 3: ↑2 и ↓1+2
Комментарии2

Исследование звука: удаление шумов

Уровень сложностиСложный
Время на прочтение12 мин
Количество просмотров3.4K

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

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

Данный процесс происходит с использованием компьютерных программ и зачастую сопровождается трудными техническими вычислениями, которые ложатся на вычислительные мощности компьютера или на отдельные его комплектующие части. 

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

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

Цель данной работы – исследовать алгоритмы удаления посторонних шумов из аудио дорожки.

Такое программное обеспечение будет полезно для автоматических субтитров во время онлайн-конференций, логирования бизнес-встреч, работы с глухонемыми и слабослышащими.

Читать далее
Всего голосов 5: ↑4 и ↓1+5
Комментарии0

Дубинка (гиря) подброшенная в воздух. Решение дифференциальных уравнений в MATLAB

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров4K

Пример решения системы дифференциальных уравнений (ДУ) в MATLAB адаптивным и не адаптивным методами.

В MATLAB встроено множество численных решателей с адаптивным шагом для решения жестких, нежестких и полностью неявных систем. С помощью Symbolic Math Toolbox можно сначала выводить системы ДУ, а затем тут же решать их численными методами.

Описание модели

Для примера решим систему ДУ, которая описывает систему из двух масс m1 и m2, которые жестко соединены невесомым стержнем длинной L.

Читать далее
Всего голосов 8: ↑7 и ↓1+9
Комментарии19

Что такое синхронизированные векторные измерения и как их моделировать

Уровень сложностиСредний
Время на прочтение14 мин
Количество просмотров2.9K

Привет, Хабр! Представим, что перед нами такой сложный объект для управления, как электроэнергетическая система России. Чтобы рассматривать ее в виде единого целого, нужны высокоточные измерения из различных точек энергосистемы, зачастую географически удаленных друг от друга. Для решения этой задачи был создан стандарт IEEE C37.118. Он описывает так называемые синхрофазоры, или синхронизированные векторные измерения (СВИ).

В этой статье мы обсудим что такое СВИ и зачем они нужны, подробно разберем типы и форматы сообщений, рассмотрим, как передаются сообщения внутри стека TCP/IP, а также смоделируем пакеты С37.118 с помощью КПМ РИТМ и PMU Connection Tester.

Читать далее
Всего голосов 6: ↑6 и ↓0+6
Комментарии1

Об импортозамещении MATLAB/Simulink на примере модели динамики авиационного средства поражения

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров12K

Когда-то давно меня попросили разработать модель динамики полета АСП (авиационного средства поражения) в отечественном ПО, в среде SimInTech, причем разработать не с нуля, а тупо повторив уже созданную ранее модель в Матлабе (с Симулинком), и любезно выложенную в публичный доступ на гитхабе.

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

Читать далее
Всего голосов 69: ↑50 и ↓19+44
Комментарии44

Модальный метод синтеза в MATLAB

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров1.6K

Частым заданием в различных курсах по теории автоматического управления является нахождение матрицы K для модального управления системой вида dx/dt = Ax+Bu y = Cx.

Такой тип задач легко решается в среде MATLAB.

Сперва наперво требуется задать нашу систему. Для примера возьмем типовую модель электродвигателя:

Читать далее
Всего голосов 4: ↑3 и ↓1+4
Комментарии3

Качество переходного процесса ч.2

Время на прочтение8 мин
Количество просмотров2.6K

Продолжаем публикацию лекций Олега Степановича Козлова с кафедры Ядерные Энергетические Установки МГТУ им. Баумана. Вторая часть лекции про качество САР и модель реактора как бонус.

В предыдущих сериях:

1. Введение в теорию автоматического управления.2. Математическое описание систем автоматического управления 2.1 — 2.32.3 — 2.82.9 — 2.13

3. Частотные характеристики звеньев и систем автоматического управления регулирования. 3.1. Амплитудно-фазовая частотная характеристика: годограф, АФЧХ, ЛАХ, ФЧХ3.2. Типовые звенья систем автоматического управления регулирования. Классификация типовых звеньев. Простейшие типовые звенья3.3. Апериодическое звено 1–го порядка инерционное звено. На примере входной камеры ядерного реактора3.4. Апериодическое звено 2-го порядка3.5. Колебательное звено3.6. Инерционно-дифференцирующее звено3.7. Форсирующее звено.  3.8. Инерционно-интегрирующее звено (интегрирующее звено с замедлением)3.9. Изодромное звено (изодром)3.10 Минимально-фазовые и не минимально-фазовые звенья3.11 Математическая модель кинетики нейтронов в «точечном» реакторе «нулевой» мощности

4. Структурные преобразования систем автоматического регулирования.

5. Передаточные функции и уравнения динамики замкнутых систем автоматического регулирования (САР).

6. Устойчивость систем автоматического регулирования. 6.1 Понятие об устойчивости САР. Теорема Ляпунова. 6.2 Необходимые условия устойчивости линейных и линеаризованных САР. 6.3 Алгебраический критерий устойчивости Гурвица. 6.4 Частотный критерий устойчивости Михайлова. 6.5 Критерий Найквиста.

7. Точность систем автоматического управления. Часть 1 и Часть 2

8. Качество переходного процесса ч.1

Читать далее
Всего голосов 14: ↑14 и ↓0+14
Комментарии4
1
23 ...