Pull to refresh
-12
0
Send message

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

Reading time14 min
Views23K

Продолжаем изучать нечеткую логику по книге Гостева В.И «Нечеткие регуляторы в системах автоматического управления». После того, как мы насладились прекрасными видами поверхностей отклика, перейдем непосредственно к решению очередной задачи из книги Гостева В.И «Нечеткие регуляторы в системах автоматического управления».


Этот текст является продолжением предыдущих публикаций:


  1. Простой регулятор на базе нечеткой логики. Создание и настройка.
  2. Нечеткая логика в красивых картинках. Поверхности отклика для разных функций принадлежности.
  3. Создание регулятора на базе нечеткой логики с многоканальной настройкой.
  4. Простая нечеткая логика слеплена «из того что было» для газотурбинного двигателя.
  5. Нечеткая логика против ПИД. Скрещиваем ежа и ужа. Авиадвигатель и алгоритмы управления АЭС.


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


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


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


Далее под катом – ПИД-регулятор, нечёткая логика и конечные автоматы для управления газотурбинным двухроторным двигателем (ГТД). Тем, кто впервые планирует познакомиться с работой нечеткой логики, рекомендую начать со статьи «Простой регулятор на базе нечеткой логики. Создание и настройка»

Читать дальше →
Total votes 24: ↑23 and ↓1+32
Comments82

Моделирование меандровой инвертированной-F антенны – это просто

Reading time15 min
Views21K
Приветствую, эта статья посвящена моделированию меандровой инвертированной-F антенны (англ. Meander inverted-F antenna, MIFA) в программе Ansys HFSS. Пошаговая инструкция проектирования антенны. Сделай свою MIFA!


Читать дальше →
Total votes 37: ↑37 and ↓0+37
Comments23

Python: Работа с базой данных, часть 2/2: Используем ORM

Reading time14 min
Views105K
часть 1/2: Используем DB-API часть 2/2: Используем ORM
Это вторая часть моей статьи по работе с базой данных в Python. В первой части мы рассмотрели основные принципы коммуникации с SQL базой данных, а в этой познакомимся с инструментарием, позволяющим облегчить нам это взаимодействие и сократить количество нашего кода в типовых задачах.

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


Требуемый уровень подготовки: базовое понимание SQL и Python (код статьи проверялся под Python 3.6). Желательно ознакомится с первой частью, так как к ней будут неоднократные отсылки и сравнения. В конце статьи есть весь код примеров под спойлером в едином файле и список ссылок для более углубленного изучения материала.
Читать дальше →
Total votes 2: ↑1 and ↓1+2
Comments15

Python: Работа с базой данных, часть 1/2: Используем DB-API

Reading time6 min
Views524K
часть 1/2: Используем DB-API часть 2/2: Используем ORM
Python DB-API – это не конкретная библиотека, а набор правил, которым подчиняются отдельные модули, реализующие работу с конкретными базами данных. Отдельные нюансы реализации для разных баз могут отличаться, но общие принципы позволяют использовать один и тот же подход при работе с разными базами данных.

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

Требуемый уровень подготовки: базовое понимание синтаксиса SQL и Python.
Читать дальше →
Total votes 19: ↑19 and ↓0+19
Comments38

Окончательно разбираемся со скоростью передачи по Modbus

Reading time3 min
Views24K
Скорость обновления данных по Modbus зависит от нескольких неочевидных параметров. На стадии проектирования возникает проблема, как оценить скорость будущей интерфейсной линии. В этой статье рассмотрим факторы, влияющие на скорость обновления данных по Modbus RTU, сделаем несколько типовых расчётов, а в конце статьи будет ссылка на web калькулятор скорости работы Modbus RTU линии.

Читать дальше →
Total votes 1: ↑1 and ↓0+1
Comments18

NAS Backup и никакой магии. Deep dive от Veeam

Reading time11 min
Views12K

Уже несколько месяцев прошло с момента релиза Veeam Backup & Replication 10. Даже была обзорная статья про грядущий релиз. А вот пост-релизной статьи посвящённой более детальному и техническому разбору самой ожидаемой функции новой версии — NAS Backup, так и не было.
Поэтому надо срочно исправляться.


Читать дальше →
Total votes 10: ↑10 and ↓0+10
Comments9

Про фразовые глаголы

Reading time7 min
Views62K
Фразовые глаголы английского языка гораздо проще, чем кажутся. Они работают точно так же, как в русском языке приставки. Выдающийся советский актёр Зиновий Гердт, узнав однажды о недостойном поступке, совершённом знакомым ему писателем, сказал: «Разрешите с вами раззнакомиться». Думаю, мало кто слышал в живой речи глагол «раззнакомиться». Но интуитивно всё равно понятно, что это противоположность «ПО-знакомиться».

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

Безответственные преподаватели рекомендуют значения фразовых глаголов «просто запоминать», не пытаясь понять их внутреннюю логику. Это порочная практика: фразовых глаголов только самых распространённых – тысячи. «Выучить» их принципиально невозможно. Вот, скажем, let – это «позволять, пускать». А фразовый глагол «let in on» означает «посвящать в тайну». Запомнить такое способен только человек, который понимает переносные значения частиц, образующих фразовые глаголы.

Если правильно усвоить эти переносные значения, можно начать понимать даже такие фразовые глаголы, с которыми сталкиваешься впервые. Знание нескольких принципов освобождает от необходимости знания многих фактов.
Читать дальше →
Total votes 88: ↑86 and ↓2+115
Comments157

Про фразовые глаголы-4 (in/out)

Reading time4 min
Views14K
Перед этой статьёй рекомендуется прочитать две первые части:
1. habr.com/ru/post/495794
2. habr.com/ru/post/496190

Out соответствует русским приставкам со значениями «наружу» и «до конца, полностью»:

  • вы-: hear – «слушать». Hear me out! – Вы-слушай меня!
  • раз-/«рас-»: sell – «продать» sell out – рас-продать.
  • из- (со значением «до конца, полностью»): wear — «носить», wear out — из-носить/ся (об одежде/обуви, например).
  • из- (со значением «вы-» – наружу): hound – «охотничья собака», как глагол – «гнать» (зверя). Hound out – «из-гнать» (= «вы-гнать»). They hounded him out of Parliament – они из-гнали его из Парламента. Если держать в голове базовые значения глаголов kick (пинать) и boot (пинать ногой в сапоге), становится очевидно, почему ФГ kick out и boot out используются как синонимы hound out. Всегда буквально умоляю студентов держать в голове базовое значение глагола, из которого образуется фразовый. Слушаются не всегда… :(
Читать дальше →
Total votes 27: ↑26 and ↓1+37
Comments9

Как научиться разработке на Python: новый видеокурс Яндекса

Reading time6 min
Views246K
Осенью прошлого года в московском офисе Яндекса прошла первая Школа бэкенд-разработки. Мы сняли занятия на видео и сегодня рады поделиться на Хабре полным видеокурсом Школы. Он позволит вам научиться промышленной разработке на Python. Авторы лекций — опытные разработчики в Яндексе. К каждому видео приложены ссылки на примеры и полезные материалы.

Для изучения курса нужно знать основы Python и понимать, как приложения развёртываются на серверах. Мы ждём, что вы умеете делать запросы к базам данных и знаете, как создаются веб‑приложения, — хотя бы на начальном уровне.
Читать дальше →
Total votes 70: ↑70 and ↓0+70
Comments41

Динамическая память в системах жёсткого реального времени

Reading time6 min
Views17K

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



(КДПВ – см. аннотацию к диаграмме в конце)

Читать дальше →
Total votes 49: ↑48 and ↓1+59
Comments52

Популярно об артиклях в английском языке

Reading time8 min
Views54K
Артикли — это самые распространенные слова в английском языке. Эти невзрачные a, an и the занимают около 8,5% объема любого текста. Если немного утрировать, то из каждого часа работы с текстом вы пять минут тратите только на прочтение артиклей.

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

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


Читать дальше →
Total votes 59: ↑59 and ↓0+59
Comments94

Герундий в английском языке: просто о сложном

Reading time5 min
Views76K
В грамматике английского языка есть много нюансов, которых просто не существует в русском. И из-за этого многие русскоговорящие студенты путаются в грамматике.

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

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


Читать дальше →
Total votes 16: ↑15 and ↓1+22
Comments17

Запятая в английском языке: 5 правил и топ-3 ошибки

Reading time6 min
Views43K
Носитель английского языка практически всегда знает, что текст писал иностранец. Даже если в тексте нет ни одной ошибки в словах и конструкции предложений.

Как? Ответ прост: пунктуация.

Студенты, которые учат английский как иностранный часто пропускают тему, как правильно ставить запятые. Она ведь интуитивно понятная, что тут учить! Так-то оно так, но не совсем.

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


Читать дальше →
Total votes 41: ↑41 and ↓0+41
Comments33

Мега-Учебник Flask Глава 1: Привет, мир! ( издание 2018 )

Reading time12 min
Views370K

blog.miguelgrinberg.com


Miguel Grinberg




>>> следующая глава >>>


Эта статья является переводом нового издания учебника Мигеля Гринберга. Прежний перевод давно утратил свою актуальность.


Автор планирует завершить его выпуск в мае 2018. Я, со своей стороны, постараюсь не отставать с переводом.

Читать дальше →
Total votes 23: ↑21 and ↓2+19
Comments45

Опасности «палёных» чипов

Reading time5 min
Views11K
image

Подписывайтесь на каналы:
@AutomotiveRu — новости автоиндустрии, железо и психология вождения
@TeslaHackers — сообщество российских Tesla-хакеров, прокат и обучение дрифту на Tesla


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

По данным Industry Week, в 2019 году мировой рынок фальшивых полупроводниковых чипов оценивался в 75 миллиардов долларов. Этот рынок особенно заметен в правительственной и оборонной отраслях. Согласно докладу правительства США, более 1 миллиона поддельных электронных компонентов было использовано в 1800 случаях, затрагивающих военные самолеты и ракеты.

Поддельные чипы были одной из ключевых поверхностей для кибератак, и именно об этом говорил Уоррен Сэвидж в своем программном выступлении на DesignCon 2020. Такие поддельные чипы являются серьезной проблемой для полупроводниковой, автомобильной и потребительской промышленности. Так, например, фальшивый чип в танке может передать информацию о полезной нагрузке противнику. Вредоносный код в поддельном чипе может перекрыть подачу воздуха в авиалайнер. Чип, сделанный злоумышленниками может использоваться для отключения автомобиля если в систему проникнет вирус-вымогатель.

Чтобы узнать больше об этой растущей проблеме, Design News встретились с Полом Карацуба, старшим директором по продуктовому маркетингу в Rambus Security. Далее следует часть разговора.
Читать дальше →
Total votes 11: ↑4 and ↓7+2
Comments34

Проверка компилятора GCC 10 с помощью PVS-Studio

Reading time9 min
Views8.8K

PVS-Studio vs GCC 10

Компилятор GCC написан с обильным использованием макросов. Очередная проверка кода GCC с помощью PVS-Studio вновь подтверждает мнение нашей команды, что макросы – это плохо. В таком коде тяжело разбираться не только статическому анализатору, но и программисту. Конечно, разработчики GCC уже привыкли к проекту и хорошо разбираются в нём. Но со стороны очень сложно что-то понять. Собственно, из-за макросов и не удалось полноценно выполнить проверку кода. Тем не менее, анализатор PVS-Studio, как всегда, показал, что может находить ошибки даже в компиляторах.
Читать дальше →
Total votes 26: ↑23 and ↓3+31
Comments27

Используем Cmake для автоматической генерации makefile в проектах

Reading time8 min
Views70K
  Вступление большое, так как подробно объясняет зачем нужен cmake. Можете сразу под кат, если уже знаете.

Вступление


  Компилирование проекта руками — пустая трата времени. Это фактически аксиома и об этом знают те, кто программирует. Но чтобы всё скомпилировалось автоматически необходимо задать правила, так ведь? Часто и по-старинке используют makefile для *nix или какой-нибудь nmake для windows.
  Я хоть и не первый год программирую, и руками составлял простые автосборщики проектов на основе makefile, но стоит немного подзабыть и приходится заново изучать как же составить эту хитрую схему. В основном приходится делать проекты расчитанные на какую-то одну систему, будь то linux или windows, и часто между собой не кросскомпилируемые. Для переносимости makefile используется automake и autogen, но их синтаксис ещё более запутан. Не скажу, что выбор идеальный, но для себя я решил перейти на cmake, благо он портирован под всё доступное. Мне он показался более человекопонятным. Попробую объяснить основы. Вы пишите словами правила, а из них генерируется makefile, который вы уже запускаете стандартным способом.

Ликбез

  Зачем он нужен? Чтобы при переносе на другую машину, с другими путями вы двумя командами собрали проект ничего не исправляя в файле makefile. Но есть же configure? Это альтернатива. И configure не кросплатформенный, для его генерации нужен autoconf/autogen, для которых идёт ещё свой набор правил. Только преимущества? Компиляция автосгенерированным makefile получается немного медленнее старого способа. Например, в KDE-4 является официальным инструментом выпуска.
Приступим
Total votes 44: ↑39 and ↓5+34
Comments45

Дизайн интерфейса для промышленного контроллера

Reading time4 min
Views13K
Привет! Меня зовут Георгий, я дизайнер.

Пока мы все сидим по домам, я решил поделиться опытом в разработке дизайна интерфейсов для промышленной автоматизации.Так сложилось, что дизайном приложений и сайтами занимается большое количество профессионалов. А вот хороших специализированных интерфейсов, предназначенных для управления инженерными системами не так уж много.
Читать дальше →
Total votes 18: ↑18 and ↓0+18
Comments24

Как реализованы конвейеры в Unix

Reading time16 min
Views20K

В этой статье описана реализация конвейеров в ядре Unix. Я был несколько разочарован, что недавняя статья под названием «Как работают конвейеры в Unix?» оказалась не про внутреннее устройство. Мне стало интересно, и я зарылся в старые источники, чтобы найти ответ.
Читать дальше →
Total votes 75: ↑75 and ↓0+75
Comments21

Information

Rating
4,653-rd
Registered
Activity