Как стать автором
Обновить
0
0
Nerten @Nerten

Пользователь

Отправить сообщение

Щелкаем реле правильно: коммутация мощных нагрузок

Время на прочтение3 мин
Количество просмотров240K
Привет, Geektimes!

Управление мощными нагрузками — достаточно популярная тема среди людей, так или иначе касающихся автоматизации дома, причём в общем-то независимо от платформы: будь то Arduino, Rapsberry Pi, Unwired One или иная платформа, включать-выключать ей какой-нибудь обогреватель, котёл или канальный вентилятор рано или поздно приходится.

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

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



Я же хочу рассказать про простую и довольно очевидную, но при этом редко встречающуюся схему, умеющую вот такое:

  • Гальваническая развязка входа и нагрузки
  • Коммутация индуктивных нагрузок без выбросов тока и напряжения
  • Отсутствие значимого тепловыделения даже на максимальной мощности


Но сначала — чуть-чуть иллюстраций. Во всех случаях использовались реле TTI серий TRJ и TRIL, а в качестве нагрузки — пылесос мощностью 650 Вт.

Читать дальше →
Всего голосов 72: ↑72 и ↓0+72
Комментарии156

Метеостанция на Arduino с визуализацией данных

Время на прочтение6 мин
Количество просмотров35K
Paul Klee In The Style Of Kairouan

Введение


Про метеостанции на Arduino писали и не раз. В своё оправдание скажу, что был хакатон — а нашей команде (в составе меня и хабраюзера ViArt) хотелось попробовать работу с Arduino. Кроме того к нашей метеостанции прикручена визуализация данных. Если хотите узнать, какая база данных может получать данные по com-порту без промежуточных звеньев в виде web-сервера, файлов или ещё каких-то ухищрений, добро пожаловать под кат.
Читать дальше →
Всего голосов 20: ↑18 и ↓2+16
Комментарии20

[ В закладки ] Алгоритмы и структуры данных в ядре Linux, Chromium и не только

Время на прочтение9 мин
Количество просмотров86K
Многие студенты, впервые сталкиваясь с описанием какой-нибудь хитроумной штуки, вроде алгоритма Кнута – Морриса – Пратта или красно-чёрных деревьев, тут же задаются вопросами: «К чему такие сложности? И это, кроме авторов учебников, кому-нибудь нужно?». Лучший способ доказать пользу алгоритмов – это примеры из жизни. Причём, в идеале – конкретные примеры применения широко известных алгоритмов в современных, повсеместно используемых, программных продуктах.



Посмотрим, что можно обнаружить в коде ядра Linux, браузера Chromium и ещё в некоторых проектах.
Читать дальше →
Всего голосов 158: ↑149 и ↓9+140
Комментарии15

Бризер TION O2: опыт эксплуатации

Время на прочтение14 мин
Количество просмотров110K
▌Intro
История банальная — моя улочка, некогда тихого и находящегося на окраине парка района, внезапно стала очень оживленной. Там, где раньше можно было смело играть в футбол на проезжей части, нынче каждые несколько секунд проезжает машина, а в час пик так может и пробка образоваться на всю улицу длиной. А где машины, там пыль и шум. В общем, открыть окна в моей рабочей комнате и спальне оказалось решительно нельзя — шумно. А я шум не люблю. Жена так вообще немедленно закрывает окно, не давая даже проветрить. Особенно ситуация усугубилась с установкой пластиковых окон. Если старые деревянные были кривые и косые, что в щели палец сунуть можно, то новые герметичные как в холодильнике.

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

Возникла мысль о организации какой-нибудь более продвинутой вентиляции. Правда пока мысль возникла, пока решил что НАДО, пока собрался и поискал имеющиеся решения… Такие вещи, от идеи до реализации, у меня идут годы…



Но на счастье, как у меня это бывает, если Магомед не идет к горе, то гора сама к нему устремляется вприпрыжку. Постучались мне в почту представители компании TION и сделали предложение, от которого я не смог отказаться — они мне ставят свою вентиляционную систему, а я пишу все, что я о ней думаю. Это они удачно зашли.
Читать дальше →
Всего голосов 55: ↑54 и ↓1+53
Комментарии124

Алкомат

Время на прочтение4 мин
Количество просмотров53K
Иван Арнольдович, покорнейше прошу, пива Шарикову не предлагать.
профессор Преображенский. «Собачье Сердце»

Как-то, путешествуя по просторам Интернет, увидел разработку Rumbot. Мне всегда нравилось чем-то управлять и в итоге пришла идея улучшить разработку и привнести в нее новые элементы. Получился проект, включающий в себя не только разработку железа и софта, но также и 3D-моделирование корпуса, экскурс в изготовление мебели, работа со звуком, некоторые хитрости работы барменов и многое другое, что сопутствовало разработке. Получился забавный аппарат для вечеринок с друзьями. Главное было пройти весь путь от идеи до разработки конечного продукта. Аппарат позволяет делать алкогольные коктейли для пяти человек. Назвал я его «Алкомат».



Подробности ниже. Много больших фото.
Читать дальше →
Всего голосов 96: ↑93 и ↓3+90
Комментарии112

IoT за копейки, или Что может DeviceHive

Время на прочтение4 мин
Количество просмотров45K
В современном мире «интернет вещей» (IoT) стремительно набирает популярность. Он в будущем поможет человечеству автоматизировать многие аспекты жизни, упростить рутинные операции, да и просто сделать жизнь комфортнее и приятнее. Современная элементная база только способствует этому. Еще несколько лет назад задача управления устройством из сети порождала необходимость использовать высокопроизводительные процессоры, что увеличивало стоимость конечного исполнительного устройства в разы. Сейчас же есть возможность построить простые и эффективные IoT-решения за копейки.

Сделать свой дом поистине «умным» можно и без использования модных Raspberry Pi или Arduino. Большинство IoT-задач сводится к подключению типовых датчиков и исполнительных механизмов со стандартными интерфейсами: I2C, SPI, UART. А иногда даже с элементарным аналоговым выводом, с которого нужно считать наличие напряжения или подать его, или просто замкнуть.


Читать дальше →
Всего голосов 27: ↑23 и ↓4+19
Комментарии69

Eclipse #include <Arduino.h>

Время на прочтение5 мин
Количество просмотров12K
Всем привет!
Недавно публиковались на GT пара статей против и за применения Arduino для чего-то более прибыльного, чем мигание лампочками и создание домашних метеостанций. Обычный такой дискурс из мира технологий, когда технологии становятся все более и более доступны широким слоям населения, плавали, знаем.
Имея техническое образование и ВУЗовскую специальность непосредственно связанную с программированием микроконтроллеров, я понимаю тех кто против. А имея много лет опыта коммерциализации не только своих, но и в большей степени чужих знаний и навыков, я отлично понимаю тех кто за.
Вы правы, и вы тоже правы, а истина, как всегда где-то рядом посередине.
Читать дальше →
Всего голосов 4: ↑3 и ↓1+2
Комментарии2

Как чайник пульт читал

Время на прочтение8 мин
Количество просмотров13K
Давно уже собирался подключить ИК-приемник (1838B) и ИК-передатчик (ИК-диод 5 мм, 940нм, угол излучения около 80 градусов) к Raspberry, понять, как они будут работать и что с ними можно сделать. И вот однажды такой день настал.

Изучив проблематику, в том числе и материалы с Хабра, понял, что кроме ИК-диода и ИК-приемника нужно ещё и транзистор и несколько резисторов, немного приуныл. С приемником проще — он шел комплектом, а вот для диода не хватало транзистора, но тем не менее решил попробовать, а вдруг получится? И получилось…
Читать дальше →
Всего голосов 6: ↑5 и ↓1+4
Комментарии13

Ещё один способ определения качества воздуха на Arduino — с передачей данных в сеть

Время на прочтение6 мин
Количество просмотров70K
Меня зовут Евгений, и я — веб разработчик. Уже есть десятки постов о различных метеостанциях на ардуино, но мне хотелось написать о том, что в 2016 году можно быстро, легко и без знания электротехники собрать полезный датчик, претендующий на IoT, который легко может работать с вашей инфраструктурой, написанной на чём угодно.
Да, я хочу в 2016 год
Всего голосов 21: ↑21 и ↓0+21
Комментарии99

Как в первый раз запустить i2pd: инструкция под Debian/Ubuntu

Время на прочтение4 мин
Количество просмотров62K


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

В i2p ты можешь заниматься множеством вещей: посещать и создавать сайты, форумы и торговые площадки, принимать почту, чатиться и скачивать торренты, и многое многое другое. Программа i2pd способна работать с большим числом программ и сервисов.
Читать дальше →
Всего голосов 45: ↑35 и ↓10+25
Комментарии78

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

Время на прочтение9 мин
Количество просмотров36K
Что имеем:
  • Двухэтажный таунхаус, предназначенный для круглогодичного проживания
  • Централизованное электроснабжение (как всегда в загородных домах, очень нестабильное)
  • Централизованное холодное водоснабжение
  • Централизованное газоснабжение
  • Газовый отопительный котел Protherm Gepard


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

Читать дальше →
Всего голосов 19: ↑18 и ↓1+17
Комментарии18

Облачный сервис Parse и Intel Edison

Время на прочтение4 мин
Количество просмотров4.3K


Хотите удалённо использовать своё устройство для интернета вещей? Тогда попробуйте Parse — облачный сервис, позволяющий соединять большое количество устройств и легко использовать их через веб-интерфейс. В нём есть всё, что вы ожидаете от облачного провайдера, включая аналитику, статистику, базы данных, push-уведомления, программирование на стороне сервера и многое другое. Система разработки Parse Embedded SDK доступна для множества платформ и мобильных IoT-устройств.
Читать дальше →
Всего голосов 8: ↑7 и ↓1+6
Комментарии1

Процедурная генерация случайных игровых подземелий

Время на прочтение6 мин
Количество просмотров64K
image

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

Оригинальное описание алгоритма


1. Сначала я задаю нужное количество комнат – к примеру, 150. Естественно, цифра произвольная, и чем она больше, тем сложнее будет подземелье.

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

Вместо равномерно распределённых случайных чисел (какие выдаёт генератор Math.random в большинстве языков), я использую нормальное распределение Парка-Миллера. В результате вероятность появления маленьких комнат превышает вероятность появления больших. Зачем это надо, объясню позже.

Кроме того я проверяю, что соотношение длины и ширины комнаты не слишком велико. Нам не нужны как идеально квадратные комнаты, так и сильно вытянутые.

3. И вот у нас есть 150 случайных комнат, расположенных на небольшом пространстве. Большинство из них наезжают друг на друга. Теперь мы осуществляем их разделение по технологии separation steering, чтобы разделить прямоугольники так, чтоб они не пересекались. В результате они не пересекаются, но находятся достаточно близко друг от друга.

4. Заполняем промежутки клетками размером 1х1. В результате у нас получается квадратная решётка из комнат различного размера.

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

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

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

8. Дерево получается аккуратным, но скучным – никаких вам замкнутых ходов. Поэтому мы случайным образом добавляем обратно примерно 15% ранее исключённых рёбер графа. В результате получится граф, где все комнаты гарантированно достижимы, с несколькими замкнутыми ходами.

9. Чтобы превратить его в коридоры, для каждого ребра строится серия прямых линий (в форме Г), идущих по рёбрам графа, соединяющим комнаты. Тут нам пригождаются те клетки, которые остались неиспользованными (те, что не превратились в комнаты). Все клетки, накладывающиеся на Г-образные линии, становятся коридорами. А из-за разнообразия размеров клеток стены коридоров будут неровными, что как раз хорошо для подземелья.

И вот пример результата!

Осторожно — под катом много монстров анимированных гифок!
Читать дальше →
Всего голосов 53: ↑49 и ↓4+45
Комментарии16

go-скрипт который делает аудиокнигу из текстового файла используя один из лучших синтезаторов речи — Ivona от Amazon

Время на прочтение2 мин
Количество просмотров41K
Указываем в скрипте путь на книгу в txt — на выходе получаем папку с озвучкой хорошим синтезом.
Читать дальше →
Всего голосов 42: ↑34 и ↓8+26
Комментарии36

Собственный поисковик по раздачам The Pirate Bay

Время на прочтение10 мин
Количество просмотров18K
В последнее время на хабре стало популярно делать собственные поисковики по RuTracker. Мне это показалось прекрасным поводом для того, чтобы отойти от скучной enterprise разработки и попробовать что-нибудь новое.



Итак, задача: реализовать на локалхосте поисковик по базе The Pirate Bay и попутно попробовать, что же такое frontend разработка и с чем её едят. Задача осложняется тем, что TPB не публикует своих дампов, в отличие от RuTracker, и для получения дампов требуется распарсить их сайт. В результате гугления и осмысления задачи я решил в качестве поисковика использовать Elasticsearch, для которого написать client-side only фронтенд на AngularJS. Для получения данных я решил написать собственный парсер сайта TPB и отдельный загружатель дампа в индекс, оба на Go. Пикантность выбору придавал тот факт, что ни к Elasticsearch, ни к AngularJS я до этого ни разу не прикасался и именно их опробывание было моей настоящей целью.
Читать дальше →
Всего голосов 29: ↑24 и ↓5+19
Комментарии8

Android IDE Template Format

Время на прочтение10 мин
Количество просмотров18K

В процессе создания новых приложений очень часто приходится писать однотипный код и воспроизводить уже проверенные временем структуры классов. IDE (в частности Android Studio) облегчает во многом задачи, связанные с созданием новых компонентов для приложения. Список шаблонных Aсtivity растет с каждой новой версией SDK Tools. Но что если нужно создать свой собственный шаблон? Для одного файла это легко, но что делать, если нужно создать шаблон с созданием нескольких файлов? Зная возможности IDE, это вполне реализуемо, ведь Activity создается вместе с файлом разметки, да и фрагмент к ней добавить можно. Однако описание такой функциональности найдено не было, потому пришлось искать решение для данной возможности самостоятельно.

Под катом хочу рассказать вам о том, как эта возможность реализуется в Android Studio.
Читать дальше →
Всего голосов 12: ↑12 и ↓0+12
Комментарии5

Полезные сниппеты для Nginx конфигов

Время на прочтение5 мин
Количество просмотров121K


Доброго времени суток, уважаемые хабравчане! В Elasticweb мы негласно ратуем за Nginx и, наверное, мы одни из немногих хостингов, которые не поддерживают Apache и .htaccess соответственно. В связи с этим, большое количество обращений в тех. поддержку связано с оказанием помощи в написании конфигурационного файла для Nginx. Поэтому мы решили собрать коллекцию полезных сниппетов и коллекцию готовых Nging конфигов для наиболее популярных CMS/CMF/Фреймворков на PHP.

Читать дальше →
Всего голосов 94: ↑91 и ↓3+88
Комментарии44

Трюки, облегчающие жизнь в zsh

Время на прочтение11 мин
Количество просмотров26K
Zsh — одна из лучших командных оболочек, обладающая впечатляющим набором возможностей. Однако, из‐за большого количества возможностей нет ничего удивительного в том, что некоторые из них проходят мимо внимания или возможность их применения для решения повседневных задач неочевидна. В этой статье будут рассмотрены как несколько «встроенных» возможностей zsh, так и примеры непростого кода, облегчающие жизнь.
Читать дальше →
Всего голосов 26: ↑24 и ↓2+22
Комментарии8

Floating toolbar for text selection в Android Marshmallow: разбор нововведения

Время на прочтение9 мин
Количество просмотров13K

В Andriod при выделении текста появляется меню с действиями, которые можно выполнить: «Вырезать», «Скопировать», «Отправить». В Android Marshmallow (SDK 23) появилась возможность расширять это меню и давать пользователю легкий доступ к дополнительным возможностям при работе с текстом: «Перевести», «Прокомментировать», «Процитировать».

В процессе подготовке к выступлению на конференции GDG в Нижнем Новгороде я обнаружил, что эта новая возможность крайне плохо документирована, единственная доступная статья не во всем соответствует действительности, и в сети находится исчезающе мало примеров использования этой возможности. Пришлось разбираться самому. Результатами проведенного исследования и хочу поделиться. Это может сэкономить вам достаточно много времени.
Читать дальше →
Всего голосов 12: ↑12 и ↓0+12
Комментарии2

Информация

В рейтинге
Не участвует
Откуда
Киев, Киевская обл., Украина
Дата рождения
Зарегистрирован
Активность