• Вотериус: Передача показаний воды на телефон по Wi-Fi (4 года от батареек)



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

    Мой путь оказался непростым и витиеватым. Но в результате получилось устройство, передающее показания воды по Wi-Fi на телефон. Простое и понятное в использовании и настройке хоть школьнику, хоть гуманитарию пенсионеру. А знакомым со словом «Ардуино» — ещё и несложное для изготовления. Девайс способен работать от батареек четыре года (дольше, чем длились отношения с вашей бывшей). Это ещё и первый открытый проект с такими характеристиками. Заводские аналоги я выписал, их мало, да и ладно с ними.

    Итак, у нас есть немного денег и большое, но честное желание упростить себе жизнь, не нарушая Уголовный Кодекс. И чтобы никаких этих ваших 220В, серверов и кучи кнопок! Показания смотрим на смартфоне в приложении Blynk или аналогичном сервисе.

    Теперь устройтесь в кресле поудобнее, съешьте ещё этих мягких французских булочек да выпейте чаю. Смотрите красивые фотографии и слушайте мой рассказ о том, что надо учитывать при создании автономных устройств. Но сначала краткое описание Вотериуса.
    Читать дальше →
  • Sinon.js — mock-библиотека для JavaScript

      Sinon.js — это mock-библиотека для JavaScript, которую можно использовать с любым тестовым фреймворком. Она предоставляет функции для эмуляции и проверки требуемого поведения в JavaScript. В библиотеке представлено три вида тестирования с spy, stub и mock. В данном посте мы рассмотрим документацию по API Sinon.js вместе с кратким введением в концепцию методов данной библиотеки.


      Читать дальше →
      • +15
      • 28,2k
      • 5
    • Тестирование в React

      image

      Каждый JS-разработчик рано или поздно начинает писать тесты и сожалеть, что не стал делать этого раньше. Поскольку за последние пару лет все постепенно перешли к компонентной разработке на основе React, Angular или, например, Vue, это дало очередной толчок для популяризации тестирования, так как компоненты обычно малы и тестировать их гораздо проще. В данной статье мы рассмотрим компонентное тестирование в React.
      Читать дальше →
    • 40 туториалов для создания векторных иллюстраций

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

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

      Итак, поехали:

      Приступая к работе


      1. Изучение векторной иллюстрации за 10 шагов



      В этом уроке объясняется, каким образом создавать векторные иллюстрации используя Adobe Illustrator. Приводится объяснение ключевых параметров и инструментов, которое дополняется советами экспертов.

      Читать дальше →
      • +34
      • 139k
      • 8
    • ESP8266 с чего начать или первый опыт

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

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

      image

      Итак, приступим!
      Читать дальше →
    • Управляем компьютером с Android устройства

      Начало


      А началось все с того, что вызывает меня генеральный к себе, и говорит: «Вот видишь телефон? Хочу чтобы там была кнопка, я на нее нажимаю, и у меня в ноутбуке кино включается. Нажимаю другую – музыка играет.» И еще чего-то много наговорил, уж не помню. «Задача понятна? Выполняй!» Вот уж не знаю, с чего такая потребность у него возникла. То ли звезды не под тем углом встали, то ли сон какой приснился. Короче, не поймешь этих богатых… Ну да ладно.

      Поначалу полез рыться в Гугл в поисках подходящей программы, а потом подумал – а какого черта? Напишу сам. Тем более, что задача не показалась сложной, да и “зов кода” уже давал о себе знать (этакая профессиональная it-ломка). Вот и решил соединить Windows и Android собственными силами.
      Читать дальше →
    • IoT-решение за 1,5 часа

        Или как мы зажгли лампочку со смартфона через облачную службу на глазах изумленных студентов НГУ.

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

        Глава 1. Лирическая


        Практически все наши сотрудники получили высшее образование, и очень многие именно в Новосибирском государственном университете. Кто-то буквально недавно, кто-то – 10-20 лет назад, и все сталкивались с выбором будущей профессии. На последних курсах студентами мы выбирали кафедру, на которой проходили специализацию и защищали дипломы. И была такая замечательная традиция как Дни открытых дверей в институтах, лабораториях и компаниях, где сотрудники рассказывали, чем они занимаются, какие вопросы сейчас стоят перед наукой и технологиями и как можно в этом поучаствовать.

        Что самое интересное в Днях открытых дверей для студента? Ходить, задавать вопросы, смотреть на реальных людей, которые занимаются настоящим делом, которое кому-то нужно.
        Читать дальше →
      • Паять или не паять? Интернет вещей для начинающих

        • Tutorial


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

        1. Введение в электронику

        Как заставить светодиод светиться с помощью лимона?

        Технологический евангелист Microsoft Дэвид Крук проводит несколько экспериментов, иллюстрирующих основы электроники.
        Читать дальше →
      • Почти полное руководство по flexbox (без самих flexbox)

        • Перевод
        image

        К сожалению, не у всех есть браузер/устройство, поддерживающие flexbox. Это руководство в виде шпаргалки, в котором предлагаются альтернативы обратной совместимости для свойств flexbox.

        Хотя некоторый CSS-код в этом руководстве, возможно, покажется очевидным, я собираюсь бросить вызов flexbox, а также предложить простые решения проблем, которые возникали, пока он не обрёл популярность.

        Читать всю статью
      • Компьютерное зрение и мобильные роботы. Часть 1 — V-REP, Python, OpenCV



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

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

          Так и возникла идея серии статей, про решение простейшей задачи ориентации робота в пространстве — от виртуальной симуляции, до воплощения в реальном мобильном роботе:

          Часть 1. Настройка виртуальной среды, интеграция с python и OpenCV для распознавания образов из виртуального мира.
          Часть 2. Создание виртуального мобильного робота, алгоритм автономного перемещения (поиск объекта)
          Часть 3. Создание реального робота, перенос логики на него.

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

          Мозгом робота будет микрокомпьютер RaspberryPi2 — на котором без проблем работает и python, и OpenCV. Таким образом необходимо состыковать систему виртуальной робототехники V-REP — с Python и OpenCV. Вот про это и будет первая часть — данная публикация.

          Видео, что получилось (поиск зеленого объекта)

          На верхнем окне — прямое изображение с видео-камеры в 3д виртуальном мире, на нижнем окне — результат выполнения python скрипта, что получает изображение передаёт её OpenCV и рисует маркер, вокруг найденного объекта.

          Нарисуем архитектуру нашего мобильного робота.
          Читать дальше →
          • +19
          • 20,4k
          • 1
        • Расчет и изготовление «сердца» ИИП — импульсный трансформатор. Часть 2

            Часть 1

            Пролог


            И все таки меня пригласили! Теперь дело со статьями пойдет более оперативно. Темой следующей части изначально я хотел сделать схемотехнику какого нибудь блока, а чего ждать? Но тут вспомнил свою школьную молодость и саму великую проблему с которой сталкивался — как изготовить неведомое для меня на тот момент зверя устройство — импульсный трансформатор. Прошло десять лет и я понимаю, что у многих (и не только начинающих) радиолюбителей, электронщиков и студентов возникают такие трудности — они попросту их боятся, а как следствие стараются избегать мощных импульсных источников питания (далее ИИП).
            После этих размышлений я пришел к выводу, что первая тема должна быть именно про трансформатор и ни о чем другом! Хотелось бы еще оговориться: что я подразумеваю под понятием «мощный ИИП» — это мощности от 1 кВт и выше или в случае любителей хотя бы 500 Вт.


            Рисунок 1 — Вот такой трансформатор на 2 кВт для Н-моста у нас получится в итоге
            Читать дальше →
          • Как превратить концепт-проект на Arduino в финальный прототип

            • Перевод
            image

            Предыстория


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


            Я, конечно, обрадовался. Но потом подумал: я ведь не инженер. Одно дело – играться с доской для прототипирования, а другое – изготовить коммерческий продукт. К счастью, я был не первым новичком, стремящимся стать профессионалом, поэтому где-то через месяц я изготовил рабочий прототип (Cloister), и написал текст на 4 странички с пояснениями по информации, нарытой в сети.

            Здесь я хочу собрать эту информацию воедино и структурировать её. Это не будет всеобъемлющая инструкция по прототипированию – я всё-таки новичок.

            Наш прототип: the MoodCube


            В педагогических целях мы с вами вместе изготовим простой прототип. Лично я всегда верил в обучение через примеры. Мы разработаем контур, чтобы получить плату специально для нашего проекта. Затем мы сделаем ей корпус и stl-файлы для распечатки его на 3д-принтере.

            Уникальный продукт, который мы будем делать, и который принесёт нам богатство и славу – это MoodCube. Пластиковый кубик с RGB-светодиодами на 5 из 6 сторон. Управляться он будет с пульта.
            Читать дальше →
            • +16
            • 16,5k
            • 8
          • Гальваническая развязка. Кто, если не оптрон?


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

              Статья под катом посвящена различным способам гальванической развязки цифровых сигналов. Расскажем зачем оно вообще нужно и как производители реализуют изоляционный барьер «внутри» современных микросхем.
              Читать дальше →
            • Power Query: стероиды для MS Excel и Power BI

                image

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

                Power Query позволяет забирать данные из самых разных источников (таких как csv, xls, json, текстовых файлов, папок с этими файлами, самых разных баз данных, различных api вроде Facebook opengraph, Google Analytics, Яндекс.Метрика, CallTouch и много чего еще), создавать повторяемые последовательности обработки этих данных и загружать их внутрь таблиц Excel или самого data model.

                И вот под катом вы можете найти подробности всего этого великолепия возможностей.
                Читать дальше →
              • Sublime Text как IDE для ARM на примере STM32

                image

                UPDATE из 2019:
                Статья уже стала не совсем актуальна с появлением отличных и бесплатных редакторов по типу vscode и atom.
                Описанная система сборки тоже эволюционировала и теперь её можно найти тут и тут.


                В этой статье будет изложена инструкция по созданию сборки Sublime Text c дополнительными программами, которую можно будет использовать как среду разработки для микроконтроллеров, в частности STM32F10x. Итак, перед нами стоит задача сделать при помощи Sublime Text — IDE, которая включает в себя: статический анализ и автодополнение кода в момент его написания, систему построения проекта с помощью makefile, компилятор, линковщик, прошивку микроконтроллера и отладку. К тому же сборка будет работать без установки.
                Читать дальше →
              • Асинхронный Python 3.5 и Mongodb

                • Перевод
                • Tutorial

                Это достаточно вольный перевод статьи об основных новшествах асинхронного драйвера для mongodb используемого в tornado. Основной мотив, который послужил для написания этого перевода — новшества, появившиеся в этой версии, такие как поддержка asyncio, async, await и Python 3.5. Сама статья не сколько перечисление новшеств, сколько лаконичные примеры асинхронной работы с MongoDB.


                Введение
                asyncio
                aggregate
                Python 3.5
                async and await

                Читать дальше →
              • Altera + OpenCL: программируем под FPGA без знания VHDL/Verilog

                  image

                  Всем привет!

                  Altera SDK for OpenCL — это набор библиотек и приложений, который позволяет компилировать код, написанный на OpenCL, в прошивку для ПЛИС фирмы Altera. Это даёт возможность программисту использовать FPGA как ускоритель высокопроизводительных вычислений без знания HDL-языков, а писать на том, что он привык, когда это делает под GPU.

                  Я поигрался с этим инструментом на простом примере и хочу об этом вам рассказать.

                  План:

                  Добро пожаловать под кат! Осторожно, будут картинки!
                  Читать дальше →
                • «Собрать большой коптер ничего о них не зная?» — да ерунда

                    Думаю все заметили, что в интернете достаточно много статей про квадрики мелкого размера: тесты, обзоры и т. д. А вот тестов больших коптеров маловато. Думаю в основном потому, что большой коптер – это чаще всего индивидуальная постройка (не всегда, но часто). Поэтому я решил написать про свой личный «самосбор» – гексакоптер на раме tarotfy680. В качестве предыстории хочу рассказать о том как я собирал этот коптер с нулевыми знаниями. За три года он претерпел много модификаций: от мелких до полной смены «тяговой начинки».


                    Читать дальше →
                  • Интерфейсы для устройства качания детской кроватки – от брелока до Web



                      Прошло чуть больше года с момента написания моей первой статьи про устройство для качания детской кроватки. За это время мною был разработан новый пульт управления с экраном, а затем и web-интерфейс к этому устройству. Если интересно узнать подробности — добро пожаловать под кат.

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