Search
Write a publication
Pull to refresh
2
0

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

Send message

Использование устройства на базе STM32 в системе полива для открытого грунта

Reading time5 min
Views21K

Предисловие


Около года назад я описал в статье систему для полива моего участка — и теперь опишу дальнейшее её развитие.Год — достаточно большое время, и его удалось потратить с пользой. С удовольствием опишу и расскажу вам, что же у меня получилось.
Читать дальше →

MQTT и Modbus: cравнение протоколов, используемых в шлюзах для IoT

Reading time6 min
Views52K
В становлении интернета вещей важны не только совершенно новые технологии. Неоценимую роль здесь играет возможность интеграции с разработками прошлых лет. А ключевой момент такой интеграции – связь. Существует немало протоколов, которые позволяют огромному количеству разнообразных «вещей» подключаться к интернету и взаимодействовать друг с другом.

image

Сегодня мы расскажем о паре взаимодополняющих протоколов, которые нашли применение в IoT. Первый – это Modbus. Он служит для организации связи между устройствами, расположенными недалеко друг от друга. Второй – MQTT. Он обладает гораздо более широкими возможностями, поддерживает работу в локальных сетях и в Интернете. С его помощью можно организовать обмен данными между «вещами» в глобальных масштабах.
Читать дальше →

МиниSCADA своими руками

Reading time4 min
Views26K
Однажды, мне позвонили и спросили – могу ли я сделать маленькую автоматизацию для канализационной насосной станции (КНС)? Толком ничего не выспросив и положив трубку я стал раздумывать что и как сделать.

Являясь специалистом по SCADA более 10-ти лет, в основном по продуктам томской компании «Элеси», мне сразу пришло в голову использовать какой-нибудь известный пакет типа TraceMode и ему подобным. Однако, встретившись с заказчиком и узнав более подробно, что ему нужно, я решил не использовать готовые пакеты.

Задача была проста: исключить бабушку, сидящую в здании КНС и наблюдающую за периодическим процессом раскачки емкости со сточными водами. Насосами управлял ПЛК фирмы Modicon в составе какого-то российского щита управления. Бабушка требовалась на случай аварии насосов, чтобы сообщить ремонтной бригаде и не допустить перелива емкости. Контроль должен был осуществляться дистанционно, функций управления не требовалось.
Читать дальше →

Кнопка качества обслуживания. Сделай сам

Reading time3 min
Views11K
image

В одной из недавних публикаций я рассказал о проекте «Клиенты: Измерь их лояльность», приняв участие в котором, поставщики услуг и ритейлеры могут измерить чистую конверсию и лояльность клиентов. Для этого участники проекта получают во временное пользование:

  1. Кнопочный пульт;
  2. Лицензию на использование программного обеспечения EPM-Agent Plus (Концентратор данных);
  3. Аккаунт в системе генерации отчётов SaaS: Loyalty Reporter.

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

Наш контроллер для умного дома

Reading time6 min
Views157K


UPD: мы сняли работу Wiren Board Smart Home на видео

Краткое содержание:


На базе нашей платформы Wiren Board (компактный индустриальный компьютер с Linux и разными интерфейсами) мы сделали навороченный контроллер для домашней автоматизации Wiren Board Smart Home (ARM9 64MB RAM, GSM/GPRS, Ethernet, Wi-Fi, USB, 2xRS-485/Modbus, CAN, 2 реле, ASK/FSK радиомодуль 433MHz, NRF24L01+ и т.д.), к которому можно подключить кучу всяческих проводных и беспроводных исполнительных устройств и датчиков от разных систем и производителей. Устройство готово и протестировано. На устройства из первой большой партии мы открываем заказ с доставкой до майских праздников по специальной цене.
Читать дальше →

Светить всегда, светить везде. Начало

Reading time6 min
Views67K


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

Жизнь до IoT или зарисовки инженера АСКУЭ

Reading time15 min
Views46K
Что-то на гиктаймс стало мало технических статей от независимых не новостных и не проплаченных авторов.

Попробую исправить данную ситуацию и рассказать про то, как работают и из чего устроены автоматизированные системы коммерческого учета электроэнергии (АСКУЭ). А точнее про то, как создавалась одна из таких систем на отдельно взятом предприятии.



Советую относиться к статье как к будничным зарисовкам инженера с элементами отзывов на оборудование.
Читать дальше →

Простой расчет контрольной суммы

Reading time12 min
Views232K
При передачи данных по линиям связи, используется контрольная сумма, рассчитанная по некоторому алгоритму. Алгоритм часто сложный, конечно, он обоснован математически, но очень уж неудобен при дефиците ресурсов, например при программировании микроконтроллеров.



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

UART и с чем его едят

Reading time10 min
Views931K
После Vogue истерии появилось множество вопросов, как подключить плату к компьютеру. И многие люди даже не понимают, что же такое UART. И я решил рассказать здесь какой это мощный инструмент.

image
Роутер превращается в компьютер, если к нему по UART подключить клавиатуру и дисплей

От телеграфа к COM-порту


Протокол UART (Universal asynchronous receiver/transmitter) или, по-русски, УАПП (универсальный асинхронный приемопередатчик) — старейший и самый распространенный на сегодняшний день физический протокол передачи данных. Наиболее известен из семейства UART протокол RS-232 (в народе – COM-порт, тот самый который стоит у тебя в компе). Это, наверное, самый древний компьютерный интерфейс. Он дожил до наших дней и не потерял своей актуальности.

Надо сказать, что изначально интерфейс УАПП появился в США как средство для передачи телеграфных сообщений, и рабочих бит там было пять (как в азбуке Морзе). Для передачи использовались механические устройства. Потом появились компьютеры, и коды ASCII, которые потребовали семь бит. В начале 60-х на смену пришла всем известная 8-битная таблица ASCII, и тогда формат передачи стал занимать полноценный байт, плюс управляющие три бита.
Читать дальше →

Эмуляторы терминалов

Reading time7 min
Views9.3K
Добрый день. Вашему вниманию представляется публикация о роли терминалов в истории развития компьютерной индустрии. Данная статья основана на личном опыте, размышлениях автора и анализе литературных источников. В дальнейшем содержание статьи может уточняться. Данная публикация адресована специалистам, занимающимся разработкой устройств по передаче, приёму и обработке сигнала в системах связи, интересующимся историей развития технологий.

Терминал — электронное или электромеханическое устройство [1], используемое для организации диалогового взаимодействия пользователя с компьютером, как правило состоящее из клавиатуры и дисплея, подключённое через сетевой интерфейс к удалённому серверу. Первые варианты таких терминальных систем появились в то время, когда ещё не существовало понятия персонального компьютера ввиду огромных размеров ранних ЭВМ. До 70-x годов прошлого века в качестве монитора многими пользователями использовался [2] принтер, на котором распечатывалась реакция ЭВМ на команды, вводимые с клавиатуры.

image


Многотерминальные системы [3] позволяли одновременную работу с ЭВМ нескольких пользователей, каждый из которых получал собственный терминал для работы с компьютером, а их количество определялось его вычислительной мощностью. Такие многотерминальные системы стали прообразом современных вычислительных сетей. В 13 лет Билл Гейтс был буквально загипнотизирован [4] компьютерным терминалом, установленным в здании школы, и каждую свободную минуту он и его друзья проводили рядом с ним. «Мы жили в параллельной вселенной» — говорил потом об этом времени сам Билл Гейтс.

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

Бактерии выживают в «чистой комнате» при сборке космических аппаратов, питаясь чистящими средствами

Reading time3 min
Views15K
Инженеры работают с аппаратом Opportunity в чистой комнате Космического центра Кеннеди

В ближайшие годы человечество собирается запустить несколько очередных космических миссий по поиску внеземной жизни. Но если жизнь найдут в образцах с Марса, Луны или Европы, то не следует радоваться слишком бурно. Особенно если найденные биологические формы будут слишком похожи на земные. Первое и самое вероятное объяснение такой находке — микробное загрязнение научных инструментов и космического корабля микробами с Земли. Как выяснилось в последнее время, многие из них успешно выживают даже в космосе.

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

Deep Dream: как обучить нейронную сеть мечтать не только о собаках

Reading time5 min
Views33K
В июле всех порадовала статья про deep dream или инцепционизм от Google. В статье подробно рассказывалось и показывалось как нейронные сети рисуют картины и зачем их заставили это делать. Вот эта статья на хабре.

Теперь все, у кого настроена среда caffe, кому скучно и у кого есть свободное время могут сделать собственные фотки в стиле инцепционизм. Одна проблема — почти на всех фотках получаются собаки. Как же избавится от элементов с псами в изображениях deep dream и обучить свою нейронную сеть пользоваться другими картинками?

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

Как написать дополнение для GIMP на языке Python

Reading time11 min
Views20K

Или Script-Fu — это так называемый «фильтр массовости»? Далеко не каждый может с ним разобраться и большинство даже не пытаются делать какие-то плагины к GIMP.

RPG


Введение


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

В качестве языков, на которых можно писать дополнения, годятся Scheme и Python. Существует возможность писать дополения и на других языках (Perl, Tcl/Tk и т.д.), но модули, которые реализуют эту возможность, плохо поддерживаются либо вовсе не работают со свежими версиями GIMP.

Избрав языком для написания дополнения Scheme, вы автоматически оказываетесь в выигрыше, так как не существует в мире такой сборки GIMP-а, в которую бы интерпретатор Scheme не входил, и написаное вами дополнение гарантировано будет работать на всех платформах «из коробки», однако, писать на Scheme — то ещё удовольствие… Scheme является диалектом LISP. LISP — это аббревиатура, расшифровывается как LISt Processing, то есть, язык для обработки списков. Существует и другая расшифровка: Language of Idiotic Silly Parentheses (язык идиотских глупых скобок), спорное, но не лишенное смысла утверждение, — несоблюдение баланса скобок — один из главных источников ошибок программы, написанной на LISP и ему подобных. Далеко не каждый может разобраться с непростым синтаксисом этого языка, и большинство даже не пытаются писать какие-то дополнения для GIMP. Но сложный синтаксис — это мелочь по сравнению с отсутствием ряда возможностей. Например, нельзя использовать свой графический интерфейс, сохранить настройки дополнения в конфигурационный файл, подключить некий внешний модуль с дополнительными функциями и т.д. и т.п. Но есть язык, лишённый большинства недостатков Scheme и обладающий рядом достоинств. Этот язык — Python. О нём и пойдёт речь.
Читать дальше →

SamsPcbGuide, часть 5: Трассировка сигнальных линий. Искажения в линии и согласование импедансов

Reading time6 min
Views13K
Продолжаем рассмотрение трассировки печатных плат. Эту статью публикую из своего родного города Северодвинска, с благодарностью своим школьным учителям. Тема, которой она посвящена, базовая, и оттого важно с ней разобраться. Здесь будут рассмотрены отражения в сигнальных линиях и, как всегда, будут даны рекомендации по снижению искажений сигнала, в том числе с помощью различных методик согласования линий.
Читать дальше →

Разработка умных устройств на примере контроллера теплого пола на ESP8266

Reading time11 min
Views24K
Хочу поделиться своим опытом разработки умного устройства. В этой публикации я опишу аппаратное (кратко) и программное (более подробно) обеспечение.

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

ТОП 8 книг, которые стоит прочитать этим летом

Reading time5 min
Views28K


Добрый день, уважаемые хабровчане!

Поздравляем вас с первым днем лета! Лето – это время отдыха, но важно провести его еще и с пользой. Сегодня мы хотим отойти немного от нашей стандартной темы анализа данных в Splunk и представить вам на обозрение список книг, которые, по нашему мнению, стоит прочитать этим летом, если вы хотите быть на волне последних тенденций и трендов, быть в курсе интересных публикаций по развитию информационных технологий, IoT, анализу данных, информационной безопасности и т.п. или же хотите усовершенствовать свои навыки.
Читать дальше →

UI тесты в Xcode с Embassy и Succulent

Reading time3 min
Views2.7K
Всем привет!

Очередная новинка в списке наших курсов: «Разработчик iOS», а значит пришло время интересных штук, которые мы находили за время подготовки курса. В этой заметке автор разбирает как записывать и воспроизводить запросы API для работы UI тестов.



Поехали.

Недавно я интегрировал Embassy и Succulent в свои UI тесты. Если вам нужно запустить UI тесты для приложения, использующего данные API, это руководство может предложить альтернативу mock / stub.

Проблемы:

  • Приложение использует данные API для заполнения UI ;
  • Использование stub’ов может потребовать написания и поддержки большого количества файлов;
  • При использование mock’ов, логика приложения может отличаться от фактического сетевого вызова;
  • Использование настоящего API соединения — СОВЕРШЕННО ИСКЛЮЧЕНО, слишком много переменных и сбоев

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

Электроника как искусство: электрический ток

Reading time9 min
Views79K
Не влезай. Убьет! (с)

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

Электрический ток


Пути электрического тока неисповедимы. (с) мысли из интернета

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

Простое объяснение принципов SOLID

Reading time7 min
Views296K


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

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

Чтобы понять принципы SOLID, нужно чётко понимать, как использовать интерфейсы. Если у вас такого понимания нет, то сначала почитайте документацию.

Я буду объяснять SOLID самым простым способом, так что новичкам легче будет разобраться. Будем рассматривать принципы один за другим.
Читать дальше →

Information

Rating
Does not participate
Registered
Activity