• Управление мощной нагрузкой переменного тока

    • Tutorial
    Все знают, насколько ардуинщики гордятся миганием лампочками
    Так как мигать светодиодами не интересно, речь пойдет про управление лампой накаливания на 220 вольт, включая управление её яркостью. Впрочем, материал относится и к некоторым другим типам нагрузки. Эта тема достаточно избита, но информация об особенностях, которые необходимо учесть, разрозненна по статьям и темам на форумах. Я постарался собрать её воедино и описать различия между схемами и обосновать выбор нужных компонентов.
    Читать дальше →
  • Сравнительная таблица 39 одноплатных компьютеров

      ongFiRE сделал сравнительную таблицу 39 одноплатных компьютеров в PDF!

      В таблице присутствуют:
      Raspberry Pi Model B, MK802, Mele A1000, Rhombus-Tech A10 EOMA-68, Gooseberry board, A13-OLinuXino, VIA APC, ,IA ARTiGO A1200, VIA ARTiGO A1150, BeagleBoard Rev. C4, BeagleBoard-xM, BeagleBone, PandaBoard, PandaBoard ES, Cotton Candy, CuBox, Hawkboard, IGEP v2, IGEP COM Proton, IGEP COM Module, Gumstix Overo series, Origen Board, ,Nimbus, Stratus, SheevaPlug dev kit (Basic), GuruPlug Standard, GuruPlug Display, DreamPlug, D2Plug, Trim-Slice series, Snowball, i.MX53 Quick Start Board, Pineriver H24/MiniX, Smallart UHOST, Genesi Efika MX Smarttop, Embest DevKit8600, Embest SBC8018, Embest SBC8530, Embest DevKit8500D
      Читать дальше →
    • Как работает усилитель звуковой частоты

        Введение


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

        Усилитель звуковой частоты или усилитель низкой частоты, что бы разобраться как он всё таки работает и зачем там так много всяких транзисторов, резисторов и конденсаторов, нужно понять как работает каждый элемент и попробовать узнать как эти элементы устроены. Для того что бы собрать примитивный усилитель нам понадобятся три вида электронных элементов: резисторы, конденсаторы и конечно транзисторы.
        Читать дальше →
      • Корректная реализация разностной схемы ПИД регулятора

        • Tutorial
        ПИД-регулятор является простейшим регулятором, имеющим эффективные аппаратные аналоговые реализации, и потому применяемый наиболее широко. Для своей работы требует настройки 3х коэффициентов под конкретный объект, позволяющие подобрать процесс регулирования согласно требованиям. Обладая простым физическим смыслом и простой математической записью, применяется широко и часто в регуляторах температуры, регуляторах расхода газа и других системах, где требуется поддерживать некий параметр на заданном уровне, с возможными переходами между разными заданными уровнями. Разумеется, существуют более сложные регуляторы, позволяющие более точно и быстро и с меньшими перерегулированиями выходить на заданные параметры, а так же учитывающие нелинейность или гистерезис регулируемого объекта, однако они обладают большей вычислительной сложностью и сложнее в настройке.

        Несмотря на свою простоту как физического смысла, так и математической записи:

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

        Причем проверить качество реализации ПИД регулятора крайне легко.
        Читать дальше →
      • ПИД-регулятор своими руками

        • Tutorial

        I. Постановка задачи


        Нужно держать температуру на заданном неком уровне и менять задание. Есть микроконтроллер, к которому прицеплены измеритель температуры, и симистор для управления мощностью. Не будем греть голову на ТАУ, ни разностными схемами, просто возьмём и сделаем «в лоб» ПИД-регулятор.
        Читать дальше →
      • Нелинейная динамика и анализ временных рядов – обзор метода Recurrence plots

        Всем привет. В этом топике я хотел бы провести обзор относительно нового и довольно мощного метода нелинейной динамики – метода Recurrence plots или рекуррентного анализа в приложении к анализу временных рядов. А, кроме того, поделится кодом короткой программы на языке Matlab, которая реализует все нижеописанное.

        Итак, начнем. По долгу службы я занимаюсь нелинейной динамикой, обработкой видео и изображений, я бы даже сказал, довольно узкой частью нелинейной динамики – нелинейными колебаниями роторов. Как известно, вибросигнал представляет собой ничто иное, как временной ряд, где в качестве сигнала выступает значение амплитуды отклонения, ну например, ротора турбины самолета. Как известно, не только колебания ротора можно представить в таком виде. Колебания биржевых котировок, активность Солнца и множество других процессов описываются простым вектором чисел, выстроенным по времени. Скажу даже больше, все эти процессы объединяет один важный фактор – они нелинейны, а некоторые даже хаотичны, что означает на практике невозможность предсказать состояние в системе на сколь угодно большой отрезок времени даже зная точно закон ее движения в виде дифференциальных уравнений. А самое главное, в большинстве случаев мы не можем даже записать эти самые уравнения в каком-либо виде. И тут на помощь приходит эксперимент и нелинейная динамика.
        Читать дальше →
      • Построение минимальных выпуклых оболочек

        • Tutorial

        Проведя небольшое научное исследование (проще говоря, выполнив поиск на сайте), обнаружил, что на хабре имеется всего две статьи с тегом вычислительная геометрия, причем одна из них оказалась моей. Т.к. в последнее время я несколько заинтересовался этой тематикой, то решил продолжить тему алгоритмической геометрии рассмотрением задачи построения так называемых минимальных выпуклых оболочек. Хотя рисунок справа и дает проницательному хаброчитателю исчерпывающее объяснение того, что это такое, тем не менее под катом будут даны чуть более формальные определения и описаны два классических алгоритма построения минимальных выпуклых оболочек.
        Читать дальше →
      • Работа с локальным хранилищем, как с объектом? Легко!

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

        localStorage = { a: { b: 1 }, c: { d: 2 } }
        localStorage.a.b = 3;
        

        Круто было бы, не так ли?

        Относительно давно, где-то около полугода назад я задался вопросом: как же, блин, сделать так, чтоб можно было работать с localStorage вообще без функций, чисто как с объектом. Challenge accepted!

        Как говорит небезызвестный Геша: “Всё, я здзелал”.

        Дальше читать не обязательно. Более разумное решение находится здесь: habrahabr.ru/post/144998

        Читать дальше →
      • Плотностный алгоритм кластеризации пространственных данных с присутствием шума — DBSCAN

        Доброго времени суток!
        Хотел бы с вами поделиться реализацией в MATLAB плотностного алгоритма для кластеризации пространственных данных с присутствием шума — DBSCAN (Density Based Spatial Clustering of Applications with Noise).

        Особенности


        Алгоритм DBSCAN был предложен Мартином Эстер, Гансом-Питером Кригель и коллегами в 1996 году как решение проблемы разбиения (изначально пространственных) данных на кластеры произвольной формы. Большинство алгоритмов, производящих плоское разбиение, создают кластеры по форме близкие к сферическим, так как минимизируют расстояние документов до центра кластера. Авторы DBSCAN экспериментально показали, что их алгоритм способен распознать кластеры различной формы.
        Читать дальше →
        • +17
        • 14.3k
        • 9
      • Рендеринг наоборот. Преобразование Хафа на GPU

        title

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

        Читать дальше →
        • +75
        • 17.5k
        • 9
      • Интерактивная визуализация данных Envision.js

          Envision.js библиотека для создания быстрых динамических и интерактивных визуализаций данных на HTML5.


          Возможности:

          1) Визуализация в реальном времени.
          2) Временная шкала
          3) Визуализация валют ( как на яндексе прям )
          4) Поддержка Ajax в интерактиве.
          5) Можно побаловаться фракталами.

          Читать дальше →
        • Чем плох GNU make?

            GNU make — широко известная утилита для автоматической сборки проектов. В мире UNIX она является стандартом де-факто для этой задачи. Являясь не такой популярной среди Windows-разработчиков, тем не менее, привела к появлению таких аналогов, как nmake от Microsoft.

            Однако, несмотря на свою популярность, make — во многом ущербный инструмент.
            Читать дальше →
          • Кластеризация точек на основе регулярной сети


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

              Читать дальше →
            • Общаемся с SIM-картой на низком уровне


              f: не могу представить, как крусач может работать) Наши курсачи обычно пыляться где-то на полках
              m: Вот у меня есть плата. К ней нужно подрубить сим-карту, и эта плата должна прочитать смс оттуда)
              m: плата покупная, а вот программируем ее мы)
              f: а нельзя смс с телефона прочитать?

              — из жизни, орфография сохранена





              Ну а если вам все-таки интересно узнать больше о сим-картах, протоколах передачи и их файловой структуре, прошу под кат. Ну и куда же без кода…

              Читать дальше...
            • Расшифровка вредоносного JavaScript

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

                Вступление


                Так всё же, что делают эти скрипты? Чаще всего вредоносные JScript файлы устанавливаются «хакерами», для получения какой либо выгоды, а именно:
                Пополнение своего ботнета, установка винлокеров, исправления файла hosts для перенаправления пользователей на фейковые сайты, ну и конечно же для обмена трафиком.

                Так вот, я попробую подробно рассказать о том, как раскодировать вредоносный JavaScript и в последствии вычислить адрес, куда он ведет.
                Читать дальше →