Pull to refresh
4
0
Send message

Операционные усилители. Часть 3: Вычисление суммы, разности, интеграла и производной на ОУ

Level of difficultyHard
Reading time7 min
Views30K

В предыдущей публикации цикла мы разобрались, как рассчитать пропорциональное (усилительное) звено на реальном операционном усилителе с учётом его статических и динамических характеристик.

В данной публикации цикла мы научимся с помощью ОУ производить операции сложения и вычитания. Кроме того, мы разберём работу интегрирующих и дифференцирующих звеньев, а также схемы выборки-хранения.
Читать дальше →

Делаем устройство для мониторинга концентрации CO₂

Reading time8 min
Views25K

Нередко мы сильно увлекаемся написанием кода настолько, что забываем подышать свежим воздухом, особенно когда нельзя держать окно постоянно открытым (ну, бывают причины). В результате этого в помещении повышается концентрация СО₂ и впоследствии начинаются неприятные побочные эффекты в виде сонливости, заторможенности и головной боли. Для решения этой проблемы существуют датчики СО₂, которые при достижении определённой концентрации скажут, что пора открыть окно. Готовые варианты конечно хорошо, но это слишком просто — сделаем своё хост-устройство для измерения и разомнём извилины.
Читать дальше →

Веб-сервер на старом смартфоне Android

Reading time6 min
Views66K


Бывает такое, что смартфон становится ненужным — например, на нём разбивается экран или он просто старенький, тормозит даже браузер. Что делать с таким гаджетом, не выбрасывать же его? В самом деле, американцы летали на Луну с компьютерами, у которых характеристики много хуже, чем в вашем старом смартфоне. Скорее всего, в нём 4−8 процессорных ядер, 2−4 гигабайта оперативной памяти, блок бесперебойного питания с аккумулятором. Не слабее, чем некоторые компьютеры.

Попробуем найти этому смартфону полезное применение.
Читать дальше →

Работаем с сетевыми адаптерами через Pcap-драйверы

Reading time16 min
Views12K
Работой с сетью в наше время никого не удивишь. Насколько я знаю, работать с сокетами нынче обучают уже на втором курсе соответствующих специальностей. Так что в целом, сетевые навыки должны быть у многих программистов. Но иногда требуется не просто работать с сетью, а делать это с предопределёнными параметрами, будь то расстояние между пакетами либо какое-то нестандартное их содержимое. Понятно, что речь идёт не о повседневной жизни, а об отладке либо тестировании проектов. В этом нам поможет работа через Pcap-драйверы. Например, через драйвер Npcap, устанавливающийся вместе с программой Wireshark.



В целом, конкретно на Хабре наверняка найдётся много специалистов, которые знают, как это сделать. Но вот так получилось, что когда мне показали очень простое и удобное решение, я опросил своих коллег и выяснил, что о нём знает только тот, кто мне рассказал, да и тот уже забыл все детали. Он просто проект выдал и сказал, мол, делай по образу и подобию. И к уже материалам, имеющимся там, пришлось кое-что искать ещё в сети.

В общем, думаю, имеет смысл свести все сведения воедино. Кому интересно – приступаем!
Читать дальше →

Осваиваем LaTeX за 30 минут

Reading time14 min
Views314K

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

Интеграция PVS-Studio в uVision Keil

Reading time14 min
Views3.7K

Я занимаюсь разработкой для встраиваемых систем (в основном, под STM32 и Миландр), в качестве основной среды я использую uVision Keil. И, поскольку пишу я на С и С++, уже долгое время меня мучает вопрос – правильно ли я пишу код? Можно ли так?


Не, он конечно компилируется, но это же С++, язык, где «program is ill-formed, no diagnostic required» — это норма.


Соответственно, на протяжении нескольких лет я донимал руководство просьбами купить нам лицензию PVS-Studio и, наконец, когда моя просьба неожиданно совпала с моментом, когда нужно было срочно потратить выделенные на закупку ПО деньги, нам ее все-таки купили!


Радости моей с одной стороны не было предела, но с другой оказалось, что не все так хорошо; сходу PVS-Studio встраивается только в Visual Studio (что порадовало отдел разработки под десктопы) и продукты от Jetbrains (CLion, Rider, Idea, Android Studio), для некоторых других систем сборки тоже предусмотрены готовые сценарии, а вот для Keil’a заявлена только поддержка компилятора – и все. А значит, нужно заниматься интеграцией. Кто будет этим заниматься? Ну, мне же больше всех надо…


Читать дальше →

Как устроен блок питания, который работает в каждом системнике

Reading time12 min
Views136K

Блок питания извлечён из корпуса. Пучок проводов слева подключается к компьютеру. Большой компонент посередине типа трансформатора — это фильтрующий индуктор. Кликабельно, как и все фотографии в статье

Вы когда-нибудь задумывались, что находится внутри блока питания (БП) вашего компьютера? Задача БП — преобразовать питание из сети (120 или 240 В переменного тока, AC) в стабильное питание постоянного, то есть однонаправленного тока (DC), который нужен вашему компьютеру. БП должен быть компактным и дешёвым, при этом эффективно и безопасно преобразовывать ток. Для этих целей при изготовлении используются различные методы, а сами БП внутри устроены гораздо сложнее, чем вы думаете.

В этой статье мы разберём блок стандарта ATX и объясним, как он работает1.
Читать дальше →

Топ 6 библиотек Python для визуализации: какую и когда лучше использовать?

Reading time13 min
Views72K

Если вы только собираетесь начать работу с визуализацией в Python, количество библиотек и решений вас определенно поразит:

- Matplotlib

- Seaborn

- Plotly

- Bokeh

- Altair

- Folium

Но какую из этих библиотек лучше выбрать для визуализации DataFrame? Некоторые библиотеки имеют больше преимуществ для использования в некоторых конкретных случаях. В этой статье приведены плюсы и минусы каждой из них. Прочитав эту статью, вы будете разбираться в функционале каждой библиотеки и будете способны подбирать для ваших потребностей оптимальную.

Читать далее

3. Частотные характеристики звеньев и систем автоматического регулирования. 3.6 Инерционно-дифференцирующее звено

Reading time5 min
Views7.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.7. Форсирующие звено.

Тема сегодняшней статьи: 3.6. Инерционно-дифференцирующее звено

Будет как всегда интересно познавательно и жестко.

Читать далее

Все английские времена в одной простой схеме

Reading time3 min
Views221K

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

Как это часто бывает, по-настоящему понимаешь какую-то тему, только когда начинаешь рассказывать о ней другим («метод Фейнмана»). Несколько друзей, позавидовав моим «успехам», попросили помочь разобраться с английским. Тут и обнаружилось, что хотя я уже успешно использую английский в повседневной работе, обучать ему кого-то ещё — это совершенно отдельный навык.

Первоначальная идея. Сначала разъяснить все английские времена за один присест удавалось, надёргав различных идей из интернета: обрывки чьих-то схем, начинали склеиваться в свою схему и обрастать собственными легендами, а применение времён почти всегда было проще пояснить, используя хрестоматийную «систему английских времен с точки зрения употребления глагола “to vodka”». С каждой новой импровизированной лекцией, схема и нарратив продолжали меняться. «Ученики» попадались с различным базовым уровнем, что позволило понять, откуда нужно начинать плясать, чтобы урок был понятен всем, кто хоть раз слышал что-то про глаголы have и be. Когда счёт обученных уже пошёл на десятки, я решил оформить идею в более стройную лекцию. От первых попыток преподавания английских времён, до этого момента прошло пять лет. За это время было обучено ещё пару сотен человек. Обучено — по приколу. Денег за эти уроки я не брал.

Читать далее

Лучшие open source альтернативы MS Project с диаграммами Ганта

Reading time7 min
Views80K
Если вы управляете большими и сложными проектами, попробуйте сначала решения на базе open source. Если не понравится — вернётесь к Microsoft Project.



Проектирование и конструирование спутников, создание роботов, запуск любого серьёзного продукта — всё это сложные большие проекты. Разработка ИТ-продуктов во многом относится к той же категории. Нам приходится привлекать, распределять и вкладывать большие суммы, взаимодействовать с поставщиками и подрядчиками (нередко это команды на аутсорсе). В результате формируются сложные зависимости, которые нужно отслеживать и корректировать.
Читать дальше →

Что такое MISRA и как её готовить

Reading time12 min
Views24K

Рисунок 1


Пожалуй, каждый разработчик программ для микроконтроллеров наверняка хотя бы раз слышал про специальные стандарты кодирования, призванные помочь повысить безопасность и переносимость вашего кода. Одним из таких стандартов является MISRA. В этой статье мы рассмотрим подробнее, что же представляет собой этот стандарт, какова его философия и как использовать его в ваших проектах.
Читать дальше →

«Умная камера» на базе Raspberry Pi с управлением через Telegram-бота

Reading time11 min
Views20K

Привет, меня зовут Иван. Сразу отвечу на главный вопрос: почему стал собирать сам, а не взял готовое решение? Во-первых, стоимость готовых решений - Raspberry Pi со всеми датчиками и камерой вышла не больше $30, большая часть еще по курсу 60 рублей за доллар. Во-вторых, почти все части уже были - Raspberry Pi отдал брат, камера осталась еще с лохматых времен, диод тоже был - покупал для Arduino, а датчик движения на Aliexpress стоил не больше 100 рублей.

Читать далее

Регулярные выражения (regexp) — основы

Reading time21 min
Views1M

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

Чем это лучше простого поиска? Тем, что позволяет задать шаблон.

Например, на вход приходит дата рождения в формате ДД.ММ.ГГГГГ. Вам надо передать ее дальше, но уже в формате ГГГГ-ММ-ДД. Как это сделать с помощью простого поиска? Вы же не знаете заранее, какая именно дата будет.

Читать далее

Перфорационные очки на 3D-принтере для улучшения зрения: опыт моделирования и полученный эффект

Reading time8 min
Views23K

Перфорационные очки (очки с дырочками) – идеальный вариант для тех, кому лень делать гимнастику для глаз. Я почувствовала, что в последнее время понижается острота зрения и решила не покупать тренажёры за 1000 рублей, а смоделировать и распечатать на 3d-принтере. Интересно было проверить – действительно это работает или нет.

Читать далее

Этичный хакинг: как взламывать системы и при этом зарабатывать легально

Reading time10 min
Views47K
image

Кто такой хакер? Большинство людей, которые далеки от программирования, представляют перед собой злостного преступника, взламывающего системы безопасности банков, чтобы украсть деньги. Что-то вроде героя Хью Джекмана из фильма «Пароль — “Рыба-меч”», который взламывает шифр Вернама, чтобы украсть из правительственного фонда 9,5 млрд. долларов. Здесь сосредоточимся на правовой стороне взлома, а если ваши представления навеяны именно фильмами, для вас мы подготовили подробный обзор профессии специалиста по кибербезопасности.

Хакером можно быть и легально. Легальных хакеров называют пентестеры, или «этичные хакеры». Вот только нужно хорошо знать, что можно делать во время тестирования системы на проникновение, а что — нельзя. Иначе можно получить вполне реальные проблемы с законом. Совсем недавно мы запустили курс «Этичный хакер», и в этой статье мы поговорим, как заниматься хакингом, зарабатывать на этом неплохие деньги и при этом не иметь проблем с законом. Поехали.
Приятного чтения!

Советы и лайфхаки по Windows Terminal

Reading time6 min
Views35K
Терминал Windows поставляется с множеством функций, которые позволяют настраивать его и взаимодействовать с ним наиболее удобным для вас способом. Давайте рассмотрим несколько советов и приемов, которые помогут вам настроить свой терминал так, чтобы он идеально вам подходил. На момент публикации этого сообщения в блоге Windows Terminal имел версию 1.3, а Windows Terminal Preview — версию 1.4.

Читать дальше →

Напишем и поймем Decision Tree на Python с нуля! Часть 2. Основы Python, необходимые для генерации Decision Tree

Reading time8 min
Views4.3K
Привет, Хабр! Представляю вашему вниманию перевод статьи "Pythonで0からディシジョンツリーを作って理解する (2. Pythonプログラム基礎編)".

Данная статья — вторая в серии. Первую вы можете найти здесь.

2.1 Комментарии обозначаются # или ''' (три одинарные кавычки)


# Комментарий
a = 1 # Комментарий 

''' Это тоже комментарий
b = c
c = d
'''

2.2 Использование динамической типизации (тип определяется автоматически)


# динамическая типизация переменных
# = копирование значения справа налево
i = 1 #  целое число (int)
f = 2.1 # число с плавающей запятой (float)
s = "a" # строковый тип (string)
b = True # логический тип (boolean)
l = [0,1,2] # массив,список (array) 
t = (0,1,2) # кортеж (tuple)
d = {"a":0, "b":1} # словарь, ассоциативный массив

print(i,f,s,b,l,t,d)
# 1 2.1 a True [0, 1, 2] (0, 1, 2) {'a': 0, 'b': 1}

# Когда хотим определить тип, используем type
print(type(i)) # Вывод <class 'int'>

# Переменная не сохраняет, а содержит фактическое значение
# Это, своего рода, переменная-ссылка, указывающая на местоположение значения
# Можно получить идентификатор актуального значения через id
print(id(l)) # 00000000000000 (меняется от исполнения к исполнениюц)
l2 = l # Приведу в пример копию массива, где ссылаюсь на 2 его элемента, а фактический массив - 1. 
print(id(l2)) # 00000000000000 (то же значение, что у вышеуказанного id(l))
# Поскольку существует только один фактический массив, кажется, что он был добавлен в массив l, даже если вы добавили элемент со ссылкой на l2.
l2.append(1)
Читать дальше →

Субъективный обзор некоторых российских бесплатных образовательных платформ

Reading time15 min
Views101K
     «Expose the lies that enrage me» (с) Arch Enemy

Случается, закончил человек не самый плохой ВУЗ, работает себе без особых проблем, но вокруг постоянно появляется что-то новое, неизведанное и хочется не отстать… А бывает, студент ощущает, что с его ВУЗом что-то не то, учат чему-то не тому и за свою судьбу как-то страшновато – пойдешь то ли на биржу труда, то ли в светлое IT будущее. Казалось бы, в чем проблема?! Займись самообразованием – ресурсов в сети полно. Однако хотелось бы получить все в одном месте, с какой-то гарантией качества (свободного времени и так не хватает). Поэтому я попробовал бесплатно поучиться на ряде российских обучающих платформ. Оказалось, что и там с IT темами все довольно печально – много никчёмных материалов, пустых обещаний, неудобств и откровенной халтуры. «Expose the lies…». В этой статье хочу поделиться субъективными впечатлениями о своем опыте прохождении ряда бесплатных IT курсов на российских обучающих платформах за примерно 1 год. Напишу о Skillfactory, Открытом образовании (openedu), GeekBrains и Stepik. В конце я подведу краткие итоги. Предлагаю заинтересовавшимся читателям обсудить статью и свой опыт онлайн обучения в комментариях.
Читать дальше →
1

Information

Rating
Does not participate
Registered
Activity