Pull to refresh
1
0
Константин @Lord_Prizrak

Программер

Send message

Гайд по беспроводной связи в кружке робототехники

Level of difficultyEasy
Reading time10 min
Views12K

По моим наблюдением, создание управляемых роботов – самая популярная тема во время занятий по освоению Arduino. Ученикам нравится мастерить не просто автоматику – но контролируемые ими напрямую устройства.

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

Читать далее
Total votes 43: ↑43 and ↓0+43
Comments70

6. Устойчивость систем автоматического управления. 6.6 Понятие об областях устойчивости

Level of difficultyMedium
Reading time12 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.6. Инерционно-дифференцирующее звено3.7. Форсирующее звено.  3.8. Инерционно-интегрирующее звено (интегрирующее звено с замедлением)3.9. Изодромное звено (изодром)3.10 Минимально-фазовые и не минимально-фазовые звенья3.11 Математическая модель кинетики нейтронов в «точечном» реакторе «нулевой» мощности

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

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

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

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

Читать далее
Total votes 10: ↑9 and ↓1+8
Comments0

Процессор ЭВМ ЕС-1020. Общая структура и система синхронизации

Level of difficultyMedium
Reading time27 min
Views3.9K

Первая из серии статей, посвящённых внутреннему устройству процессора ЭВМ ЕС-1020, в которой рассматривается система синхронизации. В предшествующих статьях были освещены важнейшие особенности архитектуры и конструктивное исполнение ЕС ЭВМ.

Читать далее
Total votes 26: ↑26 and ↓0+26
Comments7

Парсинг и обработка данных с метеосайтов Яндекс.Погода и Метеоинфо (Гидрометцентр) при помощи pandas (Часть 1)

Level of difficultyMedium
Reading time3 min
Views5.8K

Всех приветствую! Хочу рассказать, как мне удалось примененить библиотеку pandas для парсинга и обработки метеорологических данных сайта Яндекс.Погоды. Отмечу, что это моя первая статья для Habr, строго не судите.

Краткая предыстория. Так случилось, что мне пришлось вести telegram-канал о погоде, практически сразу встал вопрос как сократить время на поиск и анализ данных с основных метеорологических сайтов, чтобы получать всё just-in-time на свой компьютер. Иными словами, была цель сделать небольшую автоматизацию. 

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

О спинорах человеческим языком

Level of difficultyHard
Reading time7 min
Views11K

Одной из самых больших сложностей в осознании квантовой механики для меня стали спиноры. Действительно, откройте любое популярное изложение, и вам навешают лапшу на уши о то что "спинор - это такой объект, который при повороте на 360 градусов превращается в свою противоположность". Полезное определение? Кажется не очень.

Ну хорошо, черт с ними с популярными изложениями. Откроем учебник физики. Представление векторов как матриц (почему, откуда?), их разложения по столбцам и строкам, какие-то стрелочки \left| \uparrow \right>, \left| \downarrow \right>, матрицы Паули, Гамма-матрицы, вся эта дичь вроде работает и ее можно использовать для решения уравнения Дирака, но выглядит ли это разумным человеческим языком?

Дело в том, что матрицы очень хорошо выполняют одну роль - роль представления разнообразных геометрических структур. Линейные операторы? Пожалуйста. Элементы алгебры Ли? Вот вам матрицы! Графы - матрицы смежности! Веса соединений нейросетей, и так далее, тысячи применений им! Однако же, глядя на матрицу вы ровным счетом ничего не можете сказать о той структуре, которую она представляет. И именно поэтому изложение спиноров в подавляющем большинстве литературы для меня выглядело какой-то взятой с потолка чепухой.

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

Читать далее
Total votes 26: ↑24 and ↓2+22
Comments17

Красивый двоичный поиск без ветвления

Level of difficultyMedium
Reading time6 min
Views15K

Недавно я прочитал пост Алекса Мускара Beautiful Binary Search in D. В нём описывается алгоритм двоичного поиска под названием «алгоритм Шора». Я никогда не слышал о нём и его невозможно загуглить, но увидев алгоритм, я думал только об одном: «он без ветвления». Кто знал, что может существовать двоичный поиск без ветвления? Поэтому я занялся его трансляцией в алгоритм для итераторов C++, не требующий индексации на основе единицы или массивов фиксированного размера.

В GCC он более чем в два раза быстрее, чем std::lower_bound, который сам по себе — очень высококачественный двоичный поиск. Цикл поиска прост, а генерируемый ассемблерный код красив. Меня потрясло, что он существует, но им, похоже, никто не пользуется.
Читать дальше →
Total votes 44: ↑43 and ↓1+42
Comments8

Искусственный интеллект и странные аттракторы

Level of difficultyMedium
Reading time10 min
Views9.6K
Нехаотический странный аттрактор

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

Bing 13:21
Привет, это Bing! Я здесь, чтобы помочь вам. (smileeyes)
Читать дальше →
Total votes 29: ↑26 and ↓3+23
Comments21

Захват аналогового видеосигнала при помощи STM32F4-DISCOVERY

Reading time14 min
Views170K
image
В этой статье я расскажу о том, как можно захватывать аналоговый черно-белый видеосигнал с помощью платы STM32F4-DISCOVERY, и об особенностях передачи его на компьютер при помощи USB.
Читать дальше →
Total votes 70: ↑69 and ↓1+68
Comments8

Запускаем камеру от телефона, или что делать, когда ничего не получается?

Reading time6 min
Views102K


Лет восемь назад работал я в одном… а в прочем, не важно где. Делали мы там всякие разные интересные вещи. В том числе занимались системами технического зрения для роботов. Роботы были немного маленькие. И если привод для них маленький сделать не было для нас особой проблемой, то вот сделать миниатюрную цифровую камеру, которая не была бы размером с половину робота, было трудно (когда же мы наконец похороним PAL в таких разработках и везде будет цифра?). Если вам любопытно узнать, чем же всё закончилось, прошу под кат!

Читать дальше →
Total votes 103: ↑102 and ↓1+101
Comments53

Как я искал пацанский движок для блога

Reading time8 min
Views42K


Я много пишу в интернетах и мне захотелось завести свой личный стэндалон блог, куда можно писать мелкие заметки и статьи, не подходящие для других площадок. Главная проблема личного блога — мне лень оформлять посты. Чтобы черкануть пару строк в каком-нибудь Wordpress, нужно слишком много телодвижений. Я попробовал несколько разных движков и каждый раз ловил себя на ощущении, что мне не хочется ими пользоваться, намного быстрее и проще писать в записную книжку вроде Evernote или Notion. Так я стал искать идеальный движок для блога, отвечающий всем моим потребностям.

Мои требования к идеальному движку:


  • Желательно self-hosted — я пережил много закрытий сервисов, от narod.ru до google+ и точно знаю, что рано или поздно все протухает, поэтому надежнее всего держать контент у себя. Также посты могут удалять по каким-то фейковым жалобам или по DMCA, как это происходит на Medium и LiveJournal.
  • Возможность подключения своего домена — мне нужен сайт-визитка со всеми проектами и ссылками в одном месте, где можно разместить портфолио, резюме, контакты.
  • Минимум телодвижений и интерфейса — в идеале интерфейса CMS вообще не должно быть видно, админская панель не нужна, посты должны редактироваться, создаваться и просматриваться в одном месте.
  • Полноценный WYSIWYG редактор — поддержка разметки Markdown и обработка её в реальном времени, подсветка кода, вставка картинок из буфера обмена.
  • Нормальные комментарии — возможность оставлять анонимные комментарии и авторизовываться через максимум соц. сетей для персонифицированных комментариев.
  • Минималистичный внешний вид — я не хочу заниматься версткой и темами, подходящее оформление должно быть из коробки.


Внутри я рассказываю какой вижу идеальную CMS, редактор постов и комментарии, почему большинство существующих движков устарели на десять лет, и сравниваю между собой разные движки.
Total votes 94: ↑87 and ↓7+80
Comments80

Что в Белизне тебе моей или Справочное пособие по гипохлориту натрия («хлорке»)

Reading time31 min
Views214K
Не передать, насколько мне приятно это писать. Данная статья полностью профинансирована подписчиками канала LAB66. Ни один производитель описанных в тексте средств -  своего участия не проявил, так что никакой скрытой рекламы, чиcтый альтруизм и потребительский интерес :)

Сегодня читаем о самом простом, самом доступном и самом действенном антисептике — про гипохлорит натрия (он же «Белизна»). Совместимость с различными материалами, техника безопасности, свойства и эффективность не только против коронавируса, но и против страшной плесени и ее микотоксинов. В качестве «вишенки» — контрольная закупка магазинных отбеливателей и оценка их состава. Чтобы узнать как в эпоху пандемии нас дурят производители бытовой химии и прочий «менеджерский брат» — идем под кат. И обязательно закидываем в закладки. Эта информация пригодится еще не раз ;)


Даешь нормальную Белизну!
Total votes 179: ↑176 and ↓3+173
Comments73

Рабочая станция в Docker контейнере

Reading time5 min
Views36K
Для чего? Мне постоянно приходят всякие идеи и некоторые из них сразу хочется попробовать, но рабочая станция не всегда под рукой, поэтому я настраивал IDE на всем что попадется под руку. В итоге устройства начали захламляться, а поддерживать и обновлять их стало тяжело.

Чтобы решить эту проблему я решил разместить такую «записную книжку» в облаке, и что бы ежедневно обновлялась и удаляла весь накопившийся мусор. А для работы подключаться к нему удаленно.

image

В итоге, сам того не подозревая, сделал очень удобный инструмент для решения большого количества задач: записная книжка, тестовая площадка, посмотреть то что телефон не показывает, безопасная песочница, запуск скриптов для программ работающие только GUI и мн. др. А в статье хочу поделиться методом создания таких контейнеров.
Читать дальше →
Total votes 28: ↑25 and ↓3+22
Comments62

Карманный PaaS c Dokku

Reading time5 min
Views19K
В своей прошлой статье я упомянул Dokku, как важную составляющую нашей инфраструктуры и сегодня хочу раскрыть эту тему подробнее.

Dokku это средство простого трансформирования Ubuntu сервера, в мини-Heroku. После установки dokku, вы получаете возможность делать:

$ git push production master

для могих популярных платформ (Node.js, Java, PHP, Python etc). Результатом процесса развертования, есть запущенное приложение, к которому сразу можно получить доступ по http/https.

Как это работает?


Если открыть репозиторий проекта, то в описании можно увидеть строчку - «Docker powered mini-Heroku in around 100 lines of Bash» — около 100 строчек баш кода, который иммитирует работу Heroku. Это довольно «легкая» реализация, как для такой большой проблемы, которую он решает.

Все объясняется тем, что Dokku стоит на плечах таких технологий как: Docker, Heroku Buildpacks, Nginx, Git.
Читать дальше →
Total votes 39: ↑36 and ↓3+33
Comments13

«Вы уж простите, обознался...» или распознаем малину и контроллеры с помощью Tensorflow Object Detection API

Reading time7 min
Views6.4K
В конце прошлого года, я написал статью, о том как был заинтригован возможностью распознавания объектов на изображениях с помощью нейронных сетей. В той статье мы с помощью PyTorch классифицировали на видео либо ягоду малину, либо ардуино-подобный контроллер. И не смотря на то, что PyTorch мне понравился, обратился я к нему потому, что не смог с наскока разобраться с TensorFlow. Но я пообещал, что ещё вернусь к вопросу распознавания объектов на видео. Кажется пришло время сдержать обещание.

В данной статье мы попробуем на своей локальной машине дообучить уже готовую модель в Tensorflow 1.13 и Object Detection API на нашем собственном наборе изображений, а потом используем её для распознавания ягод и контроллеров, в видеопотоке веб-камеры с помощью OpenCV.

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


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

Камеры машинного зрения для энтузиастов. Как использовать камеру для автономной навигации?

Reading time6 min
Views9.7K

Мы сделали камеру для определения AprilTag и ArTag с mROS. Подключением по Uart или Ethernet.



Мы пробовали JeVois и OpenMV, оценили плюсы и минусы и собрали свою камеру.



Поиск визуальной метки и ориентация робота на основе полученных данных. Мы разрабатываем робота для сбора мячей для гольфа на driving range. Сейчас в мире только одна компания продает робота для решения этой задачи. Рынок очень перспективный, это сподвигло нас превратить проект из DIY в технологический стартап.
Читать дальше →
Total votes 14: ↑14 and ↓0+14
Comments10

Обзор способов и протоколов аутентификации в веб-приложениях

Reading time18 min
Views620K


Я расскажу о применении различных способов аутентификации для веб-приложений, включая аутентификацию по паролю, по сертификатам, по одноразовым паролям, по ключам доступа и по токенам. Коснусь технологии единого входа (Single Sign-On), рассмотрю различные стандарты и протоколы аутентификации.

Перед тем, как перейти к техническим деталям, давайте немного освежим терминологию.

  • Идентификация — это заявление о том, кем вы являетесь. В зависимости от ситуации, это может быть имя, адрес электронной почты, номер учетной записи, итд.
  • Аутентификация — предоставление доказательств, что вы на самом деле есть тот, кем идентифицировались (от слова “authentic” — истинный, подлинный).
  • Авторизация — проверка, что вам разрешен доступ к запрашиваемому ресурсу.


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

Аналогично эти термины применяются в компьютерных системах, где традиционно под идентификацией понимают получение вашей учетной записи (identity) по username или email; под аутентификацией — проверку, что вы знаете пароль от этой учетной записи, а под авторизацией — проверку вашей роли в системе и решение о предоставлении доступа к запрошенной странице или ресурсу.

Однако в современных системах существуют и более сложные схемы аутентификации и авторизации, о которых я расскажу далее. Но начнем с простого и понятного.
Читать дальше →
Total votes 48: ↑48 and ↓0+48
Comments20

IT-эмиграция в Новую Зеландию

Reading time6 min
Views66K

Это очередная статья про IT-эмиграцию, но про Новую Зеландию пока информации не было.


Здесь будет рассматриваться в том числе техническая сторона эмиграции, что представляет собой эдакий квест, с вполне определенными правилами. Если кому интересно данное направление, то прошу под кат.


Почему стоит здесь жить


Типичная Новая Зеландия

Читать дальше →
Total votes 89: ↑85 and ↓4+81
Comments134

Python и быстрые HTTP-клиенты

Reading time7 min
Views56K
В наши дни, если вы пишете некое Python-приложение, то вам, скорее всего, придётся оснащать его функционалом HTTP-клиента, который способен общаться с HTTP-серверами. Повсеместное распространение REST API сделало HTTP-инструменты уважаемыми жителями бесчисленного множества программных проектов. Именно поэтому любому программисту необходимо владеть паттернами, направленными на организацию оптимальной работы с HTTP-соединениями.



Существует множество HTTP-клиентов для Python. Самым распространённым среди них, и, к тому же, таким, с которым легко работать, можно назвать requests. Сегодня этот клиент является стандартом де-факто.
Читать дальше →
Total votes 46: ↑45 and ↓1+44
Comments3

Приготовься к введению в России социального рейтинга

Reading time9 min
Views90K
image

Уже сегодня банки формируют свои предложения исходя из данных собранных их приложениями на смартфонах клиентов. В частности ставка по кредиту, которую вам предложат, сильно зависит от файлов, размещенных на вашем устройстве, и сайтов, которые вы посещали. Именно поэтому банки так настойчиво предлагают их установить (даже отказывая в обслуживании, сославшись на возможность выполнения необходимых действий самостоятельно). Для этого банковские клиенты требуют максимальных прав на устройстве. Например, Сбербанк Онлайн утверждает, что ему необходим доступ к файловой системе для… поиска вирусов на устройстве.

Вам может показаться, что получение низкой ставки по кредиту за социально полезные действия- перспектива далекого будущего. Но уже сегодня ставка ипотеки для молодой семьи находится в районе 10%, тогда как остальные предложения близки к 20%. Т.е. это уже давно реальность, просто вы не придавали этому значения.

Я считаю, что ряд непопулярных решений будет принят в течении последнего президентского срока Владимира Путина: этому человеку больше не надо «сохранять лицо». Поэтому до 2024 года мы увидим новый виток «закручивания гаек», в том числе введение социального рейтинга в России.
Читать дальше →
Total votes 165: ↑124 and ↓41+83
Comments687

Определяем породу собаки: полный цикл разработки, от нейросети на Питоне до приложения на Google Play

Reading time27 min
Views23K
Прогресс в области нейросетей вообще и распознавания образов в частности, привел к тому, что может показаться, будто создание нейросетевого приложения для работы с изображениями — это рутинная задача. В некотором смысле, так и есть — если вам пришла в голову идея, связанныя с распознаватием образов, не сомневайтесь, что кто-то уже что-то подобное написал. Все, что от вас требуется, это найти в Гугле соответствующий кусок кода и «скомпилировать» его у автора.

Однако, все еще есть многочисленные детали, делающие задачу не столько неразрешимой, сколько… нудной, я бы сказал. Отнимающей слишком много времени, особенно если вы — новичок, которому нужно руководство, step-by-step, проект, выполненный прямо на ваших глазах, и выполненный от начала и до конца. Без обычных в таких случаях «пропустим эту очевидную часть» отговорок.

В этой статье мы рассмотрим задачу создания определителя пород собак (Dog Breed Identifier): создадим и обучим нейросеть, а затем портируем ее на Java для Android и опубликуем на Google Play.

Если вы хотите посмотреть на готовый результат, вот он: NeuroDog App на Google Play.

Веб сайт с моей робототехникой (в процессе): robotics.snowcron.com.
Веб сайт с самой программой, включая руководство: NeuroDog User Guide.

А вот скриншот программы:

image

Читать дальше →
Total votes 20: ↑18 and ↓2+16
Comments34
1
23 ...

Information

Rating
Does not participate
Location
Сахалин, Россия
Date of birth
Registered
Activity