Русский
Русский
English
Статистика
Реклама

Носимая электроника

Идеальный клавиатурный КПК Jornada 720

27.11.2020 12:11:35 | Автор: admin

Linux на Psion 5mx, Jornada 720, NEC MobilePro 900c

Этой статьёй хочу завершить цикл статей о КПК. Через мои руки прошло громадное количество различных карманных персональных компьютеров, но, IMHO, самый интересный и лучший среди них это Jornada 720. Это безупречный КПК для своего времени, впитавший лучшее что было на тот момент на рынке, и фактически стал полноценным настоящим карманным ноутбуком, который мог решать вполне себе взрослые задачи, хотя и работал на процессоре ARM 200 МГц. А после того, как на него энтузиасты портировали на него Linux эта вещица стала просто пределом мечтаний каждого уважающего гика. Обо всех моих экспериментах с этим КПК, а также пару слов о NEC читайте в этой статье.

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

С чего всё началось и первые проблемы


Как обычно, всё начинается с того, что ты видишь какую-то штуку, и безумно хочешь её себе. И первое моё знакомство с этим КПК я начал с видео на канале Кирилла Лейфера.


Чтобы не смотреть всё видео, расскажу о характеристиках КПК (информация взята с вики ):

Клавиатурный КПК (handheld PC) Jornada 720 был представлен в 2000 году. В отличие от предыдущих моделей он был основан на процессоре Intel StrongARM (как Jornada 820) с частотой 206 МГц. Устройство работало под управлением операционной системы Microsoft Handheld PC 2000 (Windows CE 3.0). Из других аппаратных характеристик можно отметить 32 МБ ПЗУ и 32 МБ ОЗУ, порт USB 1.1 и разъём для смарт-карт. К мелким улучшениям относится появление поддержки стереозвука и разъёма 3,5 мм для наушников. Экран и прочие характеристики (разъёмы PCMCIA и Compact Flash, инфракрасный и последовательный порты), включая размеры и вес, остались аналогичными модели Jornada 690.

Клавиатурник, ARM, поддержка Linux, usb, звук, PCMCIA, Compact Flash ну просто мякотка. И тогда понял, да, оно, хочу! Полез на известный западный интернет-аукцион, и оказалось, что предложений не так уж и много по теме, а ценник весьма негуманный. Но тем не менее, я вписался в один аукцион и выиграл эту красотку. Стала она мне по тем деньгам, около двух тысяч рублей (что очень дёшево).


Фото сразу после покупки.

Конечно, экземпляр был дёшев и не без проблемным. Отсутствовал стилус, был мёртвый аккумулятор, отсутствовала док-станция, но главная беда была с клавиатурой: часть клавиш просто не работала. И добиться работоспособности было очень сложно. Но уже был полный восторг от обладания таким устройством.
В результате был найден некоторый чат ремонтников, которые занимались ремонтом именно таких КПК. Как оказалось, неработающие клавиатуры это достаточно частая болезнь у данного КПК. Разборка выявила проблемную область: шлейф, идущий к клавиатуре, перегибается и идёт между алюминиевой подложкой и пластиком клавиатуры непосредственно к плёнке самой клавы. И в этом месте идёт постоянный прогиб подложки клавиатуры, и он со временем перерезает шлейф клавиатуры. Данная проблема вручную не исправима. Если постучать по клавиатуре, покачать, некоторое время работает. Но опыт показал, что это очень ненадолго. Ещё из любопытного было то, что этот КПК был уже после отвёрточного ремонта (без следов пайки). Все наклейки закрывающие винты были сняты, а также на клавиатуре внутри стояла дата ремонта.


На клавиатуре дата ремонта 7(или 1?).04.14. Под замалёванным читается написанное от руки типа Tested.

Судя по всему, мой экземпляр был сделан чисто чтобы продать, и явно клавиатура не создана чтобы прожить долго. В результате на том же аукционе была найдена клавиатура всего за 160 рублей + доставка была 500 рублей.
Любопытно было другое, что клавиатуры оказались разные.


Клава с ебея.


Моя клавиатура.

Найди десять отличий? Пять раз я пересчитывал количество клавиш в разных рядах Наверное я что-то не понимаю в этой жизни, но оно РАЗНОЕ!
В результате было принято волевое решение и куплена эта клавиатура.
Так же в Германии, с помощью моего хорошего товарища aterentiev был найден аккумулятор для этого устройства. За что ему огромное спасибо. Он заказал на себя, потом уже переслал мне по почте. Это большой труд и человеку поясной поклон! В результате Jornada 720 приобрела автономность.



Клавиатура тоже со временем пришла, и несмотря на то, что по форме и количеству клавиш она немного отличалась, таки встала как родная! И новая клавиатура имеет больший размер клавиши, и пользоваться ей оказалось сильно удобнее.


Новая клавиатура на Джорнаде, старая снята.

Были совершенно иные ощущения, из-за того, что размер клавиши оказался больше, эксплуатация стала более комфортной. Эта клавиатура совершенно не люфтила, клавиши не западали. Даже погонял её на свежеустановленном Doom это было невероятно крутое ощущение!

Стилус создаватус или лечение запоев по фотографии


Выше уже говорил, что у моего экземпляра КПК не было стилуса. Поискал, где его купить, понял, что за разумные деньги его взять невозможно. Поэтому решил сделать его сам. Изначально попробовал сделать слепок из карандаша. Для начала замерял диаметр отверстия (7мм), затем оценил глубину и попробовал сделать муляж из карандаша, зажал в дрель и обточил до такого диаметра. Самое сложное это правильная форма хвостовика. Его попробовал вылепить из гипса. В результате получилось что-то типа этого:



После данных экспериментов стало ясно, что вот так нахрапом смоделировать стилус не получится. Во-первых, я не знаю его истинной длины, и длины кончика, а также точную форму хвостика. А во-вторых, понимаю, что лучше брать размеры таки с оригинала, а не придумывать новый стилус. Но где взять оригинал? Если мне в России не удалось даже найти Джорнаду. В результате я решил связаться с самим Кириллом Лейфером автором обзора, после которого я купил этот аппарат. На хабре он известен как BOOtak. Кирилл с радостью ответил мне и оказал готовностью посодействовать. Такого гениального изобретения, как штангенциркуль у него не оказалось, поэтому он мне присылал фотографии на миллиметровке, а я уже по фотографиям пытался отгадать реальные размеры. Но один размер у меня был точным: диаметр. Я прекрасно понимаю, что лабуду эту никто читать не будет, так что трололо, чих пых олололо, я водитель нло.
Кириллу я указал, какие точно размеры мне нужны. Выглядел этот запрос следующим образом.


Фото стилуса, присланное Кириллом и мои отметки какие отснять размеры и виды

В результате, спустя несколько дней Кирилл прислал мне фотографии стилуса на фоне миллиметровки, и я начал чертить.


Снимаем сглаз, порчу размеры с фотографии

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



Стиулс создавал в онлайн чертилке на сайте www.tinkercad.com. К сожалению, я работаю в linux, и ничего внятного и простого для черчения моделек под linux на тот мне найти не удалось. Либо оно не работает, либо работает через одно место, либо оооочень сложно в изучении. А для таких простых целей она подошла идеально.


Прототип стилуса.

После всяких изысков и экспериментов, я остановился на следующей модели стилуса.



На тот момент на работе у меня был доступ к 3D-принтеру, и это был мой первый опыт взаимодействия с данным аппаратом. Принтер печатал, прямо скажем, ужасно. Но всё же мне удалось на нём сделать несколько моделей.



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





Я оказался недоволен ни формой, ни качеством изготовления данного стилуса. Поэтому сделал ещё несколько вариантов стилусов. Сглаживал их я 646 растворителем и затем делал примерку, потом правил модель и печатал новый.


Все варианты стилусов.

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





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

Остальные аппаратные дополнения, которые докупались после


Понимаю, что все этапы перечислять, вот так де расписывая утомит читателя, поэтому кратко пробегусь по этапам.

Wifi-карта


Для начала, мне очень хотелось вывести в интернеты данный КПК. ИК-порт это не наш метод. Поэтому я начал искать различные 16-ти битные PCMCIA карточки. Оказалось, что это весьма редкие звери (обычно все 32-х битные и не работают в этом КПК). Мне удалось найти модемы, сетевые карты под Ethernet и т.п. У меня такой прям ящик карточек был, но работало с данным аппаратом небольшое их количество. Мне удалось в результате найти Wifi-карты, которые работали именно на этом КПК (да, только со старыми системами шифрования).


Карточки.

Из забавного ни на том, ни на другом в штатной винде дров не нашлось. Впрочем, я не питал особых иллюзий на этот счёт. Но зато нашлись таковые в Linux. И даже видит сеть! Про Linux я расскажу чуть позднее. Есть список поддерживаемых WIFI-карточек.


Wifi работает.

Док станция для USB и COM-порта


Поскольку я уже оговорился о linux, то для нормальной отладки и работы мне нужен был вывод аппаратного UART, а также хотелось иметь доступ к USB. Ну и просто хотелось иметь полностью законченное устройство. Поэтому было принято волевое решение и был докуплен док для этого КПК.


Внешний вид дока без КПК.

КПК снимается нажатием на треугольную кнопку справа. Самое ценное это подпружиненные контакты, которые ведут к низу КПК. Изначально даже думал сделать самодельную док-станцию, но в результате удалось выловить родной.
На попе у него три разъёма: питание, USB и СОМ. Последний, к сожалению, точно такой же как на самой Джорнаде, и для него нужен такой же шнурок. USB с СОМ закрываются поочерёдно шторкой.


USB и питание.


СОМ-порт и питание.

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



Что интересно, стилус занял своё почётное место, что говорит о том, что сделан он весьма точно.

Бумажная макулатура и СОМ-проводок


Под конец я решил упороться, как тру коллекционер и докупил ту самую макулатуру, которую клали в коробку к этой Jornada. И там же шёл в комплекте COM-портовый шнурок, который мне был ценен.


Буклеты, документация, а главное кабель!

Самое главное, конечно кабель. В общем-то из-за него всё и затевалось. Но попутно ещё доки. Документацию тех лет я очень люблю. Чем старше компы, тем они были проще, тем более полная была на них документация. Помню на 286 ноутбук в документации даже схемы были! Сейчас уже не торт


Описание, как синхронизироваться с компьютером.

Из любопытного, что на одном буклете даже закреплена батарейка, и по моему (судя по желтизне пакетика), она висит там с тех самых пор:


Батарейка и инструкция по установке.

Не могу испортить вещь, очень уж аутентично всё. Когда читатели моего ЖЖ увидели, как я упоролся в подходе сборки Jornada 720, они сказали что я постепенно превращаюсь в Сергея Фролова sfrolov.

Из любопытного


Есть то железо, которое мне не удалось достать это платка ОЗУ и ПЗУ прошивки. В целом, в этом ПЗУ можно сразу упихать линукс, и он должен работать.



Отличие Jornada 720 от 728 только в этой плате. И были в продаже такие платы, которые расширяли ОЗУ до 64-х МБ и позволяли получить более крутой КПК.

Из любопытного


По линуксу не буду много рассказывать. Наиболее полно осветил тематику работы с Linux Кирилл Лейфер aka BOOtak в своём видео. И с него предлагаю начать эту главу.


Вся информация по разработке, установке linux и всё-всё-всё жило на чудесном сайте jlime.com. К сожалению всё мертво Но, к счастью, есть его зеркало, в котором ещё можно найти очень много нужного и полезного.

Как оказалось, что при установке поддерживаются не все CF-карты, и благо у меня была дома громадная коллекция различных карточек, поэтому мне удалось выбрать работающий вариант.
Но не смотря на то, что официальный сайт погиб, всё же что-то живо. Вот готовая инструкция. Не буду её перепечатывать. А так же необходимые файлы для установки (мало ли, кто захочет повторить).


В наличие есть даже бекап репозитория, так что ещё можно работать! Ну и есть какое-то полезное вики по теме, тоже рекомендую к ознакомлению.
Кратко процитирую процедуру установки, которую я описывал у себя в ЖЖ.

Делаем всё по инструкции с официального сайта Всё, кроме ядра! Размечаем флешку, распаковываем rootfs, переписываем программы, но ядро и модули берём другие! Для качаем два файла: hp7xx-2.6.25-stable (ядро) и hp7xx-modules-2.6.25-stable.tar.gz (модули). После распаковки rootfs там же распаковать папочку модулей командой tar xvfz //hp7xx-modules-2.6.25-stable.tar.gz и после переписать в фатовский раздел ядро с именем zImage. После этой неочевидной процедуры (которая нигде не указанна), у меня всё завелось.

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

Но по-настоящему круто себя почувствовал тогда, когда всё же поставил Linux на эту крошку, нашёл аккумулятор, заменил клавиатуру, с большим трудом сконфигурировал Duke Nukem 3D. Одной из большим проблем было корректно выставить разрешение экрана.


Проблемы с разрешением.

Ну как обычно, после длительного RTFM мне удалось написать подходящий конфиг и получить работающий Duke Nukem под Linux на arm КПК Jornada 720. Я даже передать не могу, как же круто было ехать в метро, достать из широких штанин КПК, на котором стоит linux, и в командном режиме запустить Duke.


Duke Nukem 3D в метро. Это реально очень круто!

Это была прямо мечта детства так сделать, вот в метро сыграть в Duke Nukem на мелком КПК.

Два слова о NEC MobilePro 900c


На сайте jlime.com я узнал о таком кпк, как NEC MobilePro 900c. По сути, более переработанная версия Jornada, и он больше похож на обычный ноутбук. В комплекте у меня был чехол, запасной аккумулятор, а потом ещё и Wifi-карта. Помню, что linux на него поставить было как-то особенно сложно, но не буду вдаваться в технические детали (вряд ли кто-то будет это повторять, а если будут, найдут у меня в ЖЖ). Но почему-то меня этот аппарат так не впечатлил как Jornada, он всё же не был по настоящему карманным.



Чем кончилось дело


Психологически было очень тяжело от осознания того, что несмотря на то, что это невероятно круто, это таки никому нафиг не нужно. Не было даже второго такого энтузиаста, с которым можно было бы поделиться своими наработками и это было бы хоть кому-то интересно. Люди читали мои потуги в ЖЖ, цокали языками, но я понимаю, что это мёртвая отрасль. Даже на форуме jlime никто не отвечал на мои сообщения и вопросы, как единственный человек, оставшийся на другой планете. И если в моих опытах с Psion были ещё одни экспериментаторы, которые меня как-то поддерживали и пользовались моими наработками, то с Jornada и Nec их не было совершенно. И это как-то в какой-то момент меня надломило, что я продал все эти КПК за бесценок

В качестве итога


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

Перевод Умные часы на Arduino, поддерживающие Bluetooth

25.01.2021 12:19:59 | Автор: admin
Автор статьи, перевод которой мы сегодня публикуем, рассказывает о том, как собрать умные часы, основанные на Arduino и поддерживающие связь с мобильным телефоном по Bluetooth. Часы оснащены аккумулятором. От одной зарядки они работают около шести часов.


Умные часы

Компоненты


Вот перечень аппаратных и программных компонентов проекта.

Аппаратные компоненты:

  • Плата Arduino Nano R3.
  • Модуль OLED-дисплея: ElectroPeak 0.96 OLED 64x128 Display Module.
  • Bluetooth-модуль: HC-05 Bluetooth Module.
  • Вибромотор на 5В.
  • Кнопка SparkFun Pushbutton switch 12mm.
  • Переключатель 636NH/2.
  • Зарядный модуль.
  • Перезаряжаемая батарея на 3,7 В.

Программы:

  • Arduino IDE.
  • MIT App Inventor 2.

Инструменты и расходные материалы

  • Паяльник.
  • Бессвинцовый припой.
  • Клеевой пистолет.

Обзор проекта


Я сделал Arduino-часы с поддержкой Bluetooth, которым посвящён этот материал, после того, как проработал много материалов, посвящённых подобным проектам. Я оснастил мои часы некоторыми дополнительными возможностями. Среди них работа с заметками, калькулятор, и возможности, основанные на взаимодействии часов с телефоном: получение SMS, сведений о звонках, поиск телефона. Часы оснащены аккумуляторной литий-полимерной батареей (3,7 В, 500 мАч), которую можно перезаряжать. Зарядка длится около 30 минут, её хватает примерно на 6 часов. Это я считаю максимальным временем работы от одной зарядки. Часы запрограммированы так, чтобы их дисплей выключался бы через 15 секунд бездействия.


Демонстрация работы часов

Сборка проекта


Шаг 1: подготовка кода для Arduino


Сначала нужно открыть код проекта в Arduino IDE и проверить его работоспособность на Arduino Nano. Код приведён ниже. Вы можете модифицировать его так, как вам нужно.

Исходный код
#include <SoftReset.h>#include "U8glib.h"#include "SoftwareSerial.h"#include <MemoryFree.h>#include <avr/sleep.h>#define nextButton 7   //Номера пинов для кнопок#define previousButton 5#define menuButton 4#define mot 9#define buzz A3SoftwareSerial bluetooth(2,3);  //Для работы с Bluetooth используется библиотека SoftwareSerialconst unsigned char PROGMEM ICON_BITMAP_1[] ={   //Логотип Android0x00,0x00,0x00,0x00,0x04,0x40,0x07,0xc0,0x0f,0xe0,0x0b,0xa0,0x1f,0xf0,0x00,0x00,0x5f,0xf4,0x5f,0xf4,0x5f,0xf4,0x5f,0xf4,0x1f,0xf0,0x0c,0x60,0x0c,0x60,0x00,0x00};const unsigned char PROGMEM ICON_BITMAP_20[] ={  //Чат0x00,0x00,0x00,0x00,0x3f,0xf8,0x40,0x04,0x40,0x04,0x40,0x04,0x40,0x04,0x49,0x24,0x40,0x04,0x40,0x04,0x40,0x04,0x3f,0xc8,0x00,0x28,0x00,0x18,0x00,0x08,0x00,0x00};const unsigned char PROGMEM ICON_BITMAP_65[] ={  //Полоса сигнала0x00,0x00,0x00,0x00,0x3f,0xe0,0x10,0x40,0x08,0x80,0x05,0x00,0x02,0x00,0x02,0x00,0x02,0x00,0x00,0x0c,0x00,0x6c,0x03,0x6c,0x1b,0x6c,0x1b,0x6c,0x00,0x00,0x00,0x00};int i,c=0,t=0;boolean clockUp = true;boolean menuShow = false;boolean selectButtonbool = false;boolean newMessage = false;boolean newCall = false;boolean newCallR = false;boolean newNote = false;boolean newBuzz = false;byte hours = 0;byte minutes = 0;byte seconds = 0;byte day = 0;byte date = 0;byte month = 0;int year = 0;int k,j,n1,n2,n3,n4,n5,n6,n7,n8,N1,N2,N3,N4,N5,N6,N7,N8 = 0;float x1,x2,ans = 0.0;char DateBuffer[30];char* TimeStorage [6];char* vout;String monthw;String number;String numberR;String NoteS;String message;   //Переменная для SMS-сообщенийString blReceived; //Хранилище для строк, полученных по bluetoothchar msg[150];   //Символьный массив для SMSchar numb[15];char numbR[15];char note[300];String op[4]={"+","-","*","/"};byte menuSelection = 0;  //Менюbyte menuSelections = 0; //Настройкиbyte menuSelectiona = 0; //Приложенияbyte len;     //Длина сообщенияbyte len1;byte len2;byte l;static unsigned long lastTick = 0;//U8GLIB_SSD1306_ADAFRUIT_128X64 u8g(U8G_I2C_OPT_NO_ACK|U8G_I2C_OPT_FAST);//U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_DEV_0|U8G_I2C_OPT_NO_ACK|U8G_I2C_OPT_FAST); // I2C / TWIU8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NO_ACK|U8G_I2C_OPT_FAST);//U8GLIB_SH1106_128X64_2X u8g(13, 11, 10, 9,8); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8void setup(void) {//Если нужно - перевернуть экран//u8g.setRot180();pinMode(nextButton,INPUT); //Установка цифровых пинов в виде входовpinMode(previousButton,INPUT);pinMode(menuButton,INPUT);pinMode(mot,OUTPUT);pinMode(buzz,OUTPUT);Serial.begin(9600);bluetooth.begin(9600);digitalWrite(nextButton,HIGH); //Включение внутренней подтяжки для всех кнопокdigitalWrite(previousButton,HIGH);digitalWrite(menuButton,HIGH);digitalWrite(mot,HIGH);delay(500);digitalWrite(mot,LOW);drawStartUp();delay(4000);}//Конец блока настроекvoid loop() {int k,j,n1,n2,n3,n4,n5,n6,n7,n8,N1,N2,N3,N4,N5,N6,N7,N8 = 0;float x1,x2,ans = 0.0;t++;if(t>160){sleep();}if(digitalRead(menuButton)==LOW)t=0;if(bluetooth.available() > 0 /*&& bluetooth.find("(")*/){blReceived = bluetooth.readString();if(blReceived.startsWith("1"))  //1 - это начальная часть сообщения{digitalWrite(mot,HIGH);delay(1000);digitalWrite(mot,LOW);seconds++;blReceived.toCharArray(DateBuffer,blReceived.length()+1);vout = strtok(DateBuffer,",");for(int i=0;i<=6;i++){//if(TimeStorage[i] = NULL)//{Serial.println("Exited Loop");// break;}TimeStorage[i] = strtok(NULL,",");delay(10);}//int example = bluetooth.parseInt();day = atoi(TimeStorage[0] - 1);date = atoi(TimeStorage[1]);month = atoi(TimeStorage[2]);year = atoi(TimeStorage[3]);hours = atoi(TimeStorage[4]);minutes = atoi(TimeStorage[5]);seconds = atoi(TimeStorage[6]);blReceived="";t=0;}else if (blReceived.startsWith("2")){digitalWrite(mot,HIGH);delay(1000);digitalWrite(mot,LOW);seconds++;newMessage = true;message = blReceived;//sms();//delay(300000);blReceived="";t=0;}else if (blReceived.startsWith("3")){digitalWrite(mot,HIGH);delay(1000);digitalWrite(mot,LOW);seconds++;newCall = true;number = blReceived;//num();//delay(300000);blReceived="";t=0;}else if (blReceived.startsWith("4")){digitalWrite(mot,HIGH);delay(1000);digitalWrite(mot,LOW);newCallR = true;numberR = blReceived;t=0;u8g.firstPage();do{u8g.setFont(u8g_font_unifont);u8g.setPrintPos(0,20);u8g.print("Calling...");u8g.setPrintPos(0,40);u8g.print(numberR);len2 = numberR.length();number.toCharArray(numbR, len2+1);//Serial.println(len2);if(len2<15){//Serial.println("If");for (int i = 0;(i-1)<len2;i++){//Serial.println("Enter for loop");u8g.setPrintPos(i*8,30);u8g.print(numbR[i-15]);delay(10);if(numbR[i-16] == '\0'){//Serial.println("Break!!");break;//delay(3000);}}}}while (u8g.nextPage());blReceived="";delay(15000);seconds=seconds+15;newCallR = false;}else if (blReceived.startsWith("5")){digitalWrite(mot,HIGH);delay(1000);digitalWrite(mot,LOW);seconds++;newNote = true;NoteS = blReceived;//notes();//delay(300000);blReceived="";t=0;}else if (blReceived.startsWith("6")){newBuzz = true;Buzz();blReceived="";t=0;}/*Serial.println(day-1);Serial.println(date);Serial.println(month);Serial.println(year);Serial.println(hours);Serial.println(minutes);Serial.println(seconds);*/}   //Конец if для datetime/*Serial.println(day-1);Serial.println(date);Serial.println(month);Serial.println(year);Serial.println(hours);Serial.println(minutes);Serial.println(seconds);*//*else if(bluetooth.available() > 0 && bluetooth.find("CMD")==true){Serial.println("ENTERED MESSAGE");message = bluetooth.readString();Serial.println(message);//delay(300000);}*/if(digitalRead(previousButton)==LOW && digitalRead(nextButton)==LOW) //Кнопка активирована{seconds=seconds+4;if(menuShow == false)  //Переключение состояний меню{menuShow = true;delay(100);menu(); //Возврат номера менюif(menuSelection == 4){seconds=seconds+4;delay(100);menuSelection = 0;while(digitalRead(menuButton)== HIGH){HA();delay(10);}}if(menuSelection == 3){seconds=seconds+4;settings();if(menuSelections == 2){seconds=seconds+4;delay(100);menuSelections=0;delay(100);while(digitalRead(menuButton)== HIGH){notice();}delay(100);}if(menuSelections == 3){seconds=seconds+4;delay(100);menuSelections=0;while(digitalRead(menuButton)==HIGH){torch();delay(10);}}if(menuSelections == 4){seconds=seconds+4;delay(100);menuSelections=0;while(digitalRead(menuButton)==HIGH){bluetooth.write("1");delay(1000);bluetooth.write("");}}bluetooth.write("");bluetooth.write("2");bluetooth.write("");}if(menuSelection == 2){seconds=seconds+4;apps();if(menuSelectiona == 2){seconds=seconds+4;delay(100);menuSelectiona = 0;while(digitalRead(menuButton)==HIGH){Calc();}bluetooth.write("");}if(menuSelectiona == 3){seconds=seconds+4;delay(100);menuSelectiona = 0;while(digitalRead(menuButton)== HIGH){sms();}delay(100);}if(menuSelectiona == 4){seconds=seconds+4;delay(100);menuSelectiona = 0;while(digitalRead(menuButton)== HIGH){call();}delay(100);}}}if(menuShow == true){menuShow = false;delay(100);}}//Конец ifadvanceTime();delay(30);}//Конец циклаvoid sleep(){u8g.firstPage();do{}while(u8g.nextPage());}void advanceTime(){if(millis()-lastTick>950) //где-то{lastTick = millis();seconds++;}if (seconds > 59){minutes++;seconds = 0;}if (minutes >59){hours++;minutes = 0;}if (hours > 23){hours = 0;minutes = 0;date+=1;}draw();}//*****------------------U8Glib Functions------------------*****void HA(){u8g.firstPage();do {bluetooth.write("3");u8g.setFont(u8g_font_unifont);u8g.setPrintPos(0,10);u8g.print("Home Automation");u8g.setFont(u8g_font_unifont);u8g.setPrintPos(30,10);u8g.print("In Development");bluetooth.write("");} while( u8g.nextPage() );}void Buzz(){while(c<5){for(i=1;i<256;i++){analogWrite(buzz,i);delay(3.92);}for(i=256;i>0;i--){analogWrite(buzz,i);delay(3.92);}c++;}c=0;newBuzz=false;}void drawStartUp(){u8g.firstPage();do{//u8g_prepare();u8g.setColorIndex(0);u8g.drawBox(0,0,127,63);u8g.setColorIndex(1);u8g.setFont(u8g_font_7x14r);u8g.setPrintPos(5,10);u8g.print("Developed By:-");u8g.setFont(u8g_font_fur17r);u8g.setPrintPos(10,38);u8g.print("USER");u8g.setFont(u8g_font_7x14r);u8g.setPrintPos(5,62);u8g.print("V402");}while(u8g.nextPage());} //Конец drawStartUpvoid menu(){u8g.setColorIndex(1);//u8g.drawCircle(20,20,14);menuSelection = 1;while(digitalRead(menuButton) == HIGH){if(digitalRead(nextButton) == LOW){delay(20);menuSelection++;delay(50);}if(digitalRead(previousButton) == LOW){delay(20);menuSelection--;delay(50);}if(menuSelection > 4){menuSelection = 1;}if(menuSelection < 1){menuSelection = 4;}//Вывод изображенияdrawMenu();delay(50); //Для устранения "дрожания"//Вывод меню}//Конец цикла while}//Конец блока работы с менюvoid drawMenu(){u8g.firstPage();do{u8g.setFont(u8g_font_6x10r);u8g.setPrintPos(30,8);u8g.print("--- Menu ---");//u8g.setPrintPos(0,10);//u8g.print(menuSelection);u8g.drawFrame(0,(menuSelection*13)-3,128,13); //Высота блока - 13 пикселейu8g.drawLine(0,10,128,10);//Вывод менюu8g.drawStr(3,20,"Return");u8g.drawStr(3,20+13,"Apps");u8g.drawStr(3,20+13+13,"Settings");u8g.drawStr(3,20+13+13+13,"Home Auto(Beta)");//u8g.drawStr(3,20+13+13+13,"More");}while(u8g.nextPage());}void apps(){u8g.setColorIndex(1);//u8g.drawCircle(20,20,14);menuSelectiona = 1;delay(200);while(digitalRead(menuButton) == HIGH){if(digitalRead(nextButton) == LOW){delay(20);menuSelectiona++;Serial.println("Up");delay(50);}if(digitalRead(previousButton) == LOW){delay(20);menuSelectiona--;delay(50);}if(menuSelectiona > 4){menuSelectiona = 1;}if(menuSelectiona < 1){menuSelectiona = 4;}//Вывод изображенияdrawApps();delay(50); //Устранение "дрожания"}//Конец цикла while}void notice(){u8g.firstPage();do{u8g.setFont(u8g_font_6x10r);//u8g.print(NoteS);l = NoteS.length();NoteS.toCharArray(note, l+1);//Serial.println(len);if(l>0){for(i=0;i<20;i++){u8g.setPrintPos(i*6,8);u8g.print(note[i]);delay(10);}}if(l>20){for(i=20;i<40;i++){u8g.setPrintPos((i-20)*6,17);u8g.print(note[i]);delay(10);}}if(l>40){for(i=40;i<60;i++){u8g.setPrintPos((i-40)*6,26);u8g.print(note[i]);delay(10);}}if(l>60){for(i=60;i<80;i++){u8g.setPrintPos((i-60)*6,35);u8g.print(note[i]);delay(10);}}if(l>80){for(i=80;i<100;i++){u8g.setPrintPos((i-80)*6,43);u8g.print(note[i]);delay(10);}}if(l>100){for(i=100;i<120;i++){u8g.setPrintPos((i-100)*6,51);u8g.print(note[i]);delay(10);}}if(l>120){for(i=120;i<140;i++){u8g.setPrintPos((i-120)*6,59);u8g.print(note[i]);delay(10);}}}while (u8g.nextPage());delay(30);newNote = false;}void torch(){u8g.firstPage();do{u8g.drawBox(0,0,127,63);}while(u8g.nextPage());}void drawApps(){u8g.firstPage();do{u8g.setFont(u8g_font_6x10r);u8g.setPrintPos(5,8);u8g.print("--- Applications ---");//u8g.setPrintPos(0,10);//u8g.print(menuSelection);u8g.drawFrame(0,(menuSelectiona*13)-3,128,13); //Высота блока - 13 пикселейu8g.drawLine(0,10,128,10);//Вывод менюu8g.drawStr(3,20,"Return");u8g.drawStr(3,20+13,"CALC");u8g.drawStr(3,20+13+13,"SMS");u8g.drawStr(3,20+13+13+13,"CALLS");//u8g.drawStr(3,20+13+13+13,"More");}while(u8g.nextPage());}void settings(){u8g.setColorIndex(1);//u8g.drawCircle(20,20,14);menuSelections = 1;delay(200);while(digitalRead(menuButton) == HIGH){if(digitalRead(nextButton) == LOW){delay(20);menuSelections++;Serial.println("Up");delay(50);}if(digitalRead(previousButton) == LOW){delay(20);menuSelections--;delay(50);}if(menuSelections > 4){menuSelections = 1;}if(menuSelections < 1){menuSelections = 4;}//Вывод изображенияdrawSettings();delay(50); //Устранение "дрожания"}//Конец цикла while}void sms(){u8g.firstPage();do{u8g.setFont(u8g_font_unifont);u8g.setPrintPos(0,10);u8g.print(message);len = message.length();message.toCharArray(msg, len+1);//Serial.println(len);if(len>16){//Serial.println("If");for (int i = 0;(i-1)<len;i++){//Serial.println("Enter for loop");u8g.setPrintPos(i*8,30);u8g.print(msg[i+16]);delay(10);if(msg[i+17] == '\0'){//Serial.println("Break!!");break;//delay(3000);}}}if(len>32){//Serial.println("If");for (int i = 0;(i-1)<len;i++){//Serial.println("Enter for loop");u8g.setPrintPos(i*8,50);u8g.print(msg[i+32]);delay(10);if(msg[i+33] == '\0'){//Serial.println("Break!!");break;//delay(3000);}}}}while (u8g.nextPage());delay(30);newMessage = false;}void call(){u8g.firstPage();do{u8g.setFont(u8g_font_unifont);u8g.setPrintPos(0,10);u8g.print(number);len1 = number.length();number.toCharArray(numb, len1+1);//Serial.println(len1);if(len1<15){//Serial.println("If");for (int i = 0;(i-1)<len1;i++){//Serial.println("Enter for loop");u8g.setPrintPos(i*8,30);u8g.print(numb[i-15]);delay(10);if(numb[i-16] == '\0'){//Serial.println("Break!!");break;//delay(3000);}}}}while (u8g.nextPage());delay(30);newCall = false;}void drawSettings(){u8g.firstPage();do{u8g.setFont(u8g_font_6x10r);u8g.setPrintPos(15,8);u8g.print("--- Settings ---");//u8g.setPrintPos(0,10);//u8g.print(menuSelection);u8g.drawFrame(0,(menuSelections*13)-3,128,13); //Высота блока - 13 пикселейu8g.drawLine(0,10,128,10);//Вывод менюu8g.drawStr(3,20,"Return");u8g.drawStr(3,20+13,"Notes");u8g.drawStr(3,20+13+13,"Torch");u8g.drawStr(3,20+13+13+13,"Find My Phone");}while(u8g.nextPage());}void CalcPrintdata(){u8g.setPrintPos(50,25);u8g.print(n3);u8g.setPrintPos(40,25);u8g.print(n4);u8g.setPrintPos(30,25);u8g.print(n5);u8g.setPrintPos(20,25);u8g.print(n6);u8g.setPrintPos(60,25);u8g.print(".");u8g.setPrintPos(70,25);u8g.print(n7);u8g.setPrintPos(80,25);u8g.print(n8);u8g.setPrintPos(3,37);u8g.print(op[k]);u8g.setPrintPos(50,37);u8g.print(N3);u8g.setPrintPos(40,37);u8g.print(N4);u8g.setPrintPos(30,37);u8g.print(N5);u8g.setPrintPos(20,37);u8g.print(N6);u8g.setPrintPos(60,37);u8g.print(".");u8g.setPrintPos(70,37);u8g.print(N7);u8g.setPrintPos(80,37);u8g.print(N8);u8g.setPrintPos(5,46);u8g.print("---------------");u8g.setPrintPos(5,54);u8g.print(ans);}void Calc(){u8g.firstPage();do{u8g.setFont(u8g_font_unifont);u8g.setPrintPos(0,10);u8g.print("Calculator:-");if(digitalRead(previousButton) == LOW){j++;delay(300);if(j>12)j = 0;}if(digitalRead(nextButton)==LOW && digitalRead(previousButton)==LOW){j=13;delay(300);}if(j==0){CalcPrintdata();if(digitalRead(nextButton) == LOW){n6++;delay(300);}if(n6>9)n6=0;}if(j==1){CalcPrintdata();if(digitalRead(nextButton) == LOW){n5++;delay(300);}if(n5>9)n5=0;}if(j==2){CalcPrintdata();if(digitalRead(nextButton) == LOW){n4++;delay(300);}if(n4>9)n4=0;}if(j==3){CalcPrintdata();if(digitalRead(nextButton) == LOW){n3++;delay(300);}if(n3>9)n3=0;}if(j==4){CalcPrintdata();if(digitalRead(nextButton) == LOW){n7++;delay(300);}if(n7>9)n7=0;}if(j==5){CalcPrintdata();if(digitalRead(nextButton) == LOW){n8++;delay(300);}if(n8>9)n8=0;}if(j==6){CalcPrintdata();if(digitalRead(nextButton) == LOW){k++;delay(300);}if(k>3)k=0;}if(j==7){CalcPrintdata();if(digitalRead(nextButton) == LOW){N6++;delay(300);}if(N6>9)N6=0;}if(j==8){CalcPrintdata();if(digitalRead(nextButton) == LOW){N5++;delay(300);}if(N5>9)N5=0;}if(j==9){CalcPrintdata();if(digitalRead(nextButton) == LOW){N4++;delay(300);}if(N4>9)N4=0;}if(j==10){CalcPrintdata();if(digitalRead(nextButton) == LOW){N3++;delay(300);}if(N3>9)N3=0;}if(j==11){CalcPrintdata();if(digitalRead(nextButton) == LOW){N7++;delay(300);}if(N7>9)N7=0;}if(j==12){CalcPrintdata();if(digitalRead(nextButton) == LOW){N8++;delay(300);}if(N8>9)N8=0;}if(j==13){CalcPrintdata();x1 = n6*1000+n5*100+n4*10+n3+n7*0.1+n8*0.01;x2 = N6*1000+N5*100+N4*10+N3+N7*0.1+N8*0.01;if(k==0){ans = x1 + x2;}if(k==1){ans = x1 - x2;}if(k==2){ans = x1 * x2;}if(k==3){ans = x1 / x2;}}}while(u8g.nextPage());}void draw(){u8g.firstPage();do{if(t<160){//u8g.drawLine(0,15,128,15);u8g.setFont(u8g_font_7x14r);u8g.drawStr(3,14,"V402");u8g.setFont(u8g_font_fur17r);String strDate = String("");char time[10];   //9if (hours < 10)strDate += "0";strDate += hours;strDate += ":";if (minutes < 10)strDate += "0";strDate += minutes;strDate += ":";if (seconds < 10)strDate += "0";strDate += seconds;strDate.toCharArray(time,10);   //9time[12] = 0x00;      //9u8g.drawStr(20,40,time);switch (month){case 01:monthw = "January";break;case 02:monthw = "February";break;case 03:monthw = "March";break;case 04:monthw = "April";break;case 05:monthw = "May";break;case 06:monthw = "June";break;case 07:monthw = "July";break;case 8:monthw = "August";break;case 9:monthw = "September";break;case 10:monthw = "October";break;case 11:monthw = "November";break;case 12:monthw = "December";break;}u8g.setFont(u8g_font_6x10r); //Более мелкий шрифт для даты//u8g.setFont(u8g_font_7x14r);u8g.setPrintPos(0,55);u8g.print(date);u8g.setPrintPos(15,55);u8g.print("/");/*switch (date){case 1:u8g.print("st");break;case 2:u8g.print("nd");break;case 3:u8g.print("rd");break;default:u8g.print("th");break;}*/u8g.setPrintPos(27,55);u8g.print(month); //Ранее - monthwu8g.setPrintPos(35,55);u8g.print("/");u8g.setPrintPos(43,55);u8g.print(year);//u8g.drawBitmapP(110,1,1,8,IMG_indicator_msg);u8g.drawBitmapP( 110, 1, 2, 16, ICON_BITMAP_65);if(newNote == true){u8g.drawBitmapP(88,45,2,16,ICON_BITMAP_20);}if(newMessage == true){u8g.drawBitmapP(110,45,2,16,ICON_BITMAP_1);}if(newCall == true){u8g.drawBitmapP(110,45,2,16,ICON_BITMAP_1);}}}while(u8g.nextPage());}//Конец draw

Шаг 2. Создание Android-приложения с использованием MIT App Inventor 2


Откройте сайт MIT App Inventor, создайте бесплатную учётную запись и нажмите на кнопку Create Apps!. Далее нажмите на кнопку Start new project.

Ниже показан внешний вид созданного мной приложения. Справа можно видеть список компонентов, использованных в приложении.


Приложение, созданное в MIT App Inventor

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


Общий вид раздела Blocks для Screen1


Левая часть раздела Blocks для Screen1 (оригинал)


Правая часть раздела Blocks для Screen1 (оригинал)

Теперь создайте ещё пару экранов приложения и дайте им имена OnScreen и OffScreen. Ниже показаны разделы Blocks для этих двух экранов.


Раздел Blocks для OnScreen


Раздел Blocks для OffScreen

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

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

Шаг 3. Сборка аппаратных компонентов проекта



Схема проекта (оригинал)

Вот некоторые замечания по поводу сборки аппаратных компонентов проекта.

  • Пины Arduino D2 и D3 подключаются к TXD и RXD Bluetooth-модуля HC-05.
  • Пины D4, D5, D7 подключаются к кнопкам Menu (Меню), Next (Следующий) и Prev (Предыдущий).
  • Пин D9 подключается к вибромотору.
  • Пины A4 и A5 подключаются к SDA и SCL OLED-диспля с разрешением 128x64.
  • + батареи подключается к B+ зарядного модуля.
  • батареи подключается к B- зарядного модуля.
  • Выход зарядного модуля + подключается к Vin Arduino (между ними надо поставить переключатель чтобы иметь возможность включать и отключать питание).
  • Линии 5V и GND подключаются к компонентам в соответствии со схемой.

После того, как компоненты часов собраны и проверена работоспособность проекта можете напечатать на 3D-принтере корпус для них.

Работа с часами


Одновременное нажатие кнопок Next и Prev позволяет открыть меню. Для выбора пункта меню используется кнопка Menu. Для переключения пунктов меню используются кнопки Next и Prev.

Планируете ли вы создать какое-нибудь носимое устройство, пользуясь идеями и технологиями, представленными в этом материале?

Подробнее..

NextMind Dev Kit обзор первого нейроинтерфейса реального времени

02.02.2021 18:09:11 | Автор: admin

Мечта об управлении компьютером силой мысли вот уже более полувека будоражит умы людей. Еще с 1960 года специалисты DARPA рассматривали возможность симбиоза человека и компьютера. Казалось бы, задачка элементарная: считать электрический сигнал от мозга, сформировать на его основе команду и исполнить ее на компьютере. Но даже на первом этапе возникают очень большие сложности. Дело в том, что сигнал от мозга настолько слабый, что его требуется усиливать почти в 20000 раз.

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

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

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

Внешний вид устройства



Нейрогарнитура поставляется в красивой черной коробочке с зеленой полосой посередине. Внутри находится сама гарнитура, крепление на голову и кабель для зарядки USB Type-C. Обмена данными по кабелю не происходит, так что это реально только для зарядки. Связь с гарнитурой осуществляется по Bluetooth.

Соединение гарнитуры с креплением на голову выполнено по принципу обычной прищепки. Слегка отжимаем верхнюю часть с логотипом, вставляем пластиковую вставку крепления и отпускаем. На этом все гарнитура надежно закреплена. Такой способ явно предполагает использование разных вариантов крепления на голову, в том числе и совместно с VR/AR-очками.


На прилегающей к голове стороне расположено 9 вертикально расположенных электродов, имеющих по три степени свободы (наклоняются влево-вправо, вверх-вниз и ход вниз-вверх). Без этого невозможно обеспечить плотное прилегание. Каждый электрод на конце раздваивается, что создает 18 полос контакта. Что удивительно, визуально электроды пластиковые, на ощупь слегка напоминают soft-touch покрытие. Металл с кожей головы по факту не контактирует. Могу лишь предположить, что тут используется токопроводящий пластик.


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

Первое включение и калибровка


Прежде всего необходимо скачать программное обеспечение с официального сайта проекта. Пока что оно там присутствует только для Windows и MacOS. Вместе с менеджером приложений и SDK для Unity там есть некоторое количество демок, которые мы, разумеется, протестировали на себе. После запуска дашборда NextMind Manager запускаем их и переходим в раздел Setup&Calibrate. Пришло время выполнить сопряжение с нейрогарнитурой.


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

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


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

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


Начинается самое интересное калибровка по визуальному образу. В течение 45 секунд в центре экрана появляется круг с моргающим рисунком рандомно расположенных палочек. По центру круга будет прицел из трех зеленых линий это индикатор концентрации. Как только вы сконцентрировались на круге, линии сводятся вместе, образуя треугольник. Если вы отвлеклись, то они вновь разойдутся. Чтобы корректно откалибровать гарнитуру, нужно сохранять концентрацию на протяжении всего времени калибровки.


Система по итогу оценивает ваш результат от 1 до 5. Сразу скажу, что если вы получите 3 и менее, то рекомендую сразу повторить калибровку, чтобы не портить себе дальнейший опыт. Менять положение головы, двигать руками/ногами и разговарить в момент калибровки нельзя. Вы должны четко видеть круг и не сводить с него глаз. Получив оценку 4 или 5, можно себя проверить на трех кругах и запускать приложения.


Brain like a DJ


Первое демо, которое стоит попробовать, Music Composer. На экране есть геометрические фигуры, сгруппированные по типу инструмента. Это классический лупер, где можно включать или выключать закольцованный трек выбранного инструмента. Достаточно сконцентрироваться на любой фигуре точно так же, как в процессе калибровки, и она начнет играть музыку. Если честно, для меня это был шокирующий и ни с чем не сравнимый опыт. Настоящая техномагия, если можно так выразиться.


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

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

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

Brain like a TV Remote control


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


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

Плюсы и минусы


Постараюсь быть максимально объективным и перечислю все плюсы и минусы использования этой нейрогарнитуры. Начнем с положительных моментов:

  • Действительно позволяет управлять компьютером и техникой силой мысли.
  • Потенциально интересно разработчикам, особенно тем, кто уже делает приложения и игры на Unity.
  • Имеет красивый футуристичный дизайн.
  • Пригодно для людей разных профессий от архитекторов до музыкантов.
  • Длительное время работы (эта кроха спокойно работает 8 часов нон-стоп).

Теперь о минусах, их тут тоже немало:

  • Устройство имеет достаточно высокую цену (текущая стоимость $400) и пока не продается в России. Для сравнения, тот же Neurosky Mindwave стоит всего $110, хотя отечественные перекупщики продают его в 2-3 раза дороже.
  • Будет неудобно использовать людям с длинными волосами. В идеале, видимо, лучше быть лысым или с короткой стрижкой.
  • Пока требуется частая калибровка (с новыми прошивками обещают поправить).
  • Долго носить такую штуку неудобно, эргономика еще требует доработки.
  • Нет софта. Демо-версии это круто, но по-настоящему этот гаджет станет востребованным только тогда, когда будет написано достаточное количество приложений.
  • Люди с плохим зрением вряд ли смогут его использовать, все-таки четко прослеживается только визуальная стимуляция мозговой деятельности (хотя допускаю, что ошибаюсь, я не медик).

Подводя итог, можно сказать только одно: такое устройство действительно шаг в будущее. Это не просто красивый концепт, а цельное, законченное устройство, которое уже неплохо работает и выполняет заявленные функции. Оно применимо для весьма широкой аудитории не только с практической, но и с развлекательной точки зрения. В играх нейрогарнитура дает новый, интересный опыт. Это чем-то похоже на то, когда первый раз взял в руки контроллеры Nintendo Wii Remote или PlayStation Move.

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

Подробнее..

Telogreika v1.0 носимое устройство персонального обогрева на Arduino

04.12.2020 04:07:31 | Автор: admin
image
На картинке скрин из нашумевшей игры про не очень далёкое будущее. Заметили странный воротник у типа? Думаете что это такое? Признаюсь честно, я совсем не пытался выяснить назначение этого устройства по сюжету, но мне сразу подумалось, что художник пытался изобразить ИНФРАКРАСНЙ ОБОГРЕВАТЕЛЬ!)) По моему логично. Сколько бы вы не протезировали органов и сколько бы дырок в черепе под нейролинк не насверлил вам Илон Машк, остатки вашей биологической плоти будут предательски старомодно мёрзнуть, создавая всем хорошо знакомое угнетающее ощущение божечки, я сейчас точно кони двину от холода, если этот автобус не приедет в ближайшую минуту!
Заходи под кат, чтобы узнать мои мысли по поводу существующих систем персонального обогрева и почему электрические греющие куртки это тупик. Всех с первой зимней пятницей!)

image
Эх, сколько же уюта в этих картинках) Если опустить мысли про подгорающие волосы, только представьте, как стало бы классно, если вместо толстого воротника и колючего шарфа, вокруг вашей шеи располагался ИНФРАКРАСНЙ ОБОГРЕВАТЕЛЬ! типа такого
image
Холод это плохо. Холод это смерть. И ваш организм за миллионы лет эволюции это хорошо усвоил, записав важную информацию на уровне рефлексов в генетическую память человеческого вида.
Казалось бы, страх замёрзнуть далеко в прошлом, мы живём в мегаполисах, транспорт ходит по расписанию, в каждой машине тепло, а к домам идут теплотрассы, чтобы доставить уют в каждую квартиру. Но постоянно сидеть в квартире не будешь, и машины есть не у всех, по этому каждый из нас попадал в ситуацию когда оделся не по погоде или транспорт задержался. Помните свои мысли в тот момент? !@#$%^%^*&&(*&^, когда же это закончится!
Невозможно наслаждаться музыкой, увлечённо смотреть видео, погрузиться в чтение или думать о чём то прекрасном, когда холод взял за ж#пу! Мысли путаются, перемешиваются с матом, невозможно на чём то сосредоточится, потому что для внутреннего животного вы в шаге от смертельной опасности! Как тут не позавидовать персонажу из игры с инфракрасным обогревателем в воротнике куртки)
Это конечно же фантазия художника и не самый рациональный вариант обогрева, но на сегодняшний день вся греющая одежда устроена примерно так. И греющая куртка от Ксиоми туда же.
image
Работает всё до безобразия просто: Вы подключаете свой мощный, увесистый пауербанк к куртке, она замыкает его на металлические пластины внутри нескольких нагревателей и вся эта технологичная система потребляя ток до 2х ампер, при 5ти вольтах, по законам физики выделяет максимум 10 Ватт тепла вам под куртку. Через пару часов ваш павербанк садиться и вы бежите домой в холодной китайской куртке с увесистым литиевым кирпичом в кармане, требующим 4-6 часов до полной зарядки чтобы повторить прогулку.
И хорошо если бежать не далеко и есть куда. А в виду природных и политических аномалий, участившихся в последнее время, централизованное теплоснабжение может прекратиться в любой момент. Вы смотрите те же новости, наверно видели.
Кароче, электрические греющие куртки это неудобная приспособа для жителей городов, чтобы сбегать в магаз или выгулять собаку. Эта технология совершенно не придаст вам уверенности в экстремальных условиях. Вряд ли если случится беда или киберпанк, то вы выберете 10 ватт обогрева в течении пары часов, вместо трёх суток функционирования современного смартфона с навигацией и связью.
Очевидно, что в наше непростое время нужен новый подход к персональному обогреву и это подтолкнуло меня на собственное исследование:)
image
Люди уже тысячи лет знают как согреться нужно просто что-то сжечь! Проблема персонального электрического обогрева в низкой плотности энергии в аккумуляторах и долгой их зарядке. В то время как сжигаемое топливо целиком превращается в тепло и свет. Его запас легко пополняется и оно не нуждается в увесистой таре в виде банок литиевой батареи, которая даже не становится легче после полной разрядки.
image
Вот например ещё хорошая картинка, где мужик идет сквозь холод с керосиновой лампой. Это древнее устройство перерабатывает жидкое горючее в тепло и свет, имея автономность около суток на одной заправке. По сравнению с пауэрбанком заряжается за секунды, но работает только в вертикальном положении.(
Как мне рассказали позже, вершиной инженерной мысли в носимых системах обогрева на сжигаемом топливе сегодня являются каталитические грелки.
image
Это как распухшая бензиновая зажигалка зиппо, которая умеет гореть в закрытом виде. Процесс горения топлива в присутствии платинового катализатора проходит без видимых языков пламени. Тепла выделяется соответственно тоже не очень много.
Сама каталитическая реакция по информации из форумов не очень стабильный процесс, зависящий от многих факторов. Необходимо чистое топливо и качественный платиновый катализатор, которые можно и не найти в условиях пост апокалипсиса, лол. Также требуется предварительный подогрев катализатора, что усложняет систему автоматического управления.
Возможность использования бензина я взял на заметку, а сам выбрал в качестве топлива для первого прототипа сжиженный газ)
image
Я смело предположил, что можно собрать удобный тепловой модуль до пары кг весом, включая запас газа например на сутки. В начале испытаний его можно будет класть в рюкзак, а позже разнести на блоки и расположить их в удобных местах одежды.
Вся система будет состоять из баллона с газом, пары теплообменников с горелками и электроники, которая будет всем этим рулить.
Для равномерного распределения тепла было решено использовать жидкий теплоноситель, который будет прокачиваться через контур водяной рубашки костюма, как у рыжего космонавта:
image
По сути мне было нужно уменьшить современную бытовую газовую колонку до носимых размеров, позволяющих разместить все модули под верхней одеждой для минимизации теплопотерь.
image
Да, где то внутри одежды будет гореть небольшое пламя, вы всё правильно поняли.) Не стоит паниковать, огонь опасен только без присмотра. За нашими микро горелками будет присматривать микроконтроллер Ардуино! По этому можно быть спокойным:) Программа будет дозировать поступление газа и воздуха, следить за наличием пламени и контролировать температуру теплоносителя.
Мне не терпелось выяснить, сколько сниженного газа потребуется, чтобы согревать одного единственного человека в любой мороз и я приступил к экспериментам прямо летом 2017го)

Сначала я хотел разработать все компоненты системы с нуля, но после локального настольного пожара изза утечки газа через самодельный электроуправляемый клапан решил не рисковать.) Как было сказано выше, наиболее похожим существующим прибором оказалась бытовая газовая колонка.
image
Электрическая составляющая большинства колонок рассчитана на батарейное питание(3 вольта) и уже в стоковом виде эта штука является почти носимым обогревателем, за исключением большого веса(~10кг) и отсутствия циркуляционного насоса.
image
Мощность газовой колонки обычно больше 10 квт, некоторые умельцы на ютюбе приспосабливают их для отопления целых домов. Для носимой установки такие мощности излишни, по этому я взял у донора только газовый клапан и генератор высокого напряжения для поджига, остальное выбросил.
image
Меня конечно расстраивал вес газового клапана, который явно не был рассчитан на использование в носимых устройствах, но рисковать больше не хотелось.
image
От клапана были отрезаны тяжелые литые фланцы, а из платы управления вычленен высоковольтный модуль розжига.
image
Горелку я тоже не стал изобретать, а взял готовую китайскую инжекционную с которой тоже было отрезано всё лишнее. Для понижения давления был куплен за 300 рублей готовый газовый редуктор и после соединения этих компонентов, я получил достаточно компактный, электрически управляемый огонь, на поддержание горения которого требовалось всего лишь 0,1 ампер, которые в основном расходовались на удержание газового клапана в открытом состоянии.

Следующей задачей было научиться эффективно передавать тепло от пламени теплоносителю для последующего равномерного распределения.
image
Теплообменник из первого эксперимента обладал крайне малой эффективностью изза малой площади контакта с разогретыми продуктами горения газа. Пришлось побегать по городу чтобы найти более тонкие медные трубки и научиться паять медь, чтобы создать более эффективный теплообменник.
image
Уже в таком виде система хорошо нагревала воду и можно было бы на этом остановится, но мой медный теплообменник сообщал теплоносителю по приблизительным прикидкам даже меньше половины всего тепла, а остальное пролетало дальше отапливать улицу. Я не захотел мириться с такими потерями и для повышения кпд добавил в систему ещё один теплообменник большой площади, чтобы забрать себе как можно больше тепла.
image
Размеры выбирал так, чтобы всё устройство помещалось в рюкзаке в отделении для ноутбука и грело спину. Размер листа а4 чтобы вы представляли.
image
Два вентилятора создавали тягу и выдували продукты горения через гофрированные воздуховоды наружу.
image
Алюминиевый корпус второго радиатора послужил рамой для размещения всех модулей.

Водяная помпа с напряжением питания 12в не лучший вариант для портативных устройств. При работе спокойно кушает 0,4 ампера. Ещё 0,1 ампер требуется на вентиляцию и столько же для удержания газового клапана открытым. Всего 0,6Ампера в работе.
image
Всё было почти готово для испытаний, несколько вечеров просидел над написанием скетча, чтобы это всё работало автоматически. Согласно алгоритму, по нажатию кнопки ардуина включала вытяжку, открывала газ, давала искру и запускала циркуляцию теплоносителя. Данные с датчиков температуры в различных точках устройства и статистика горения выводятся на экран пульта управления

Таким образом с первого раза у меня получилось уменьшить газовую колонку в 4 раза до веса ~2,5кг.
image
А весь комплект оборудования, включая батарейки, стакан теплоносителя, 10метров тонкого шланга и запас сжиженного газа объёмом пол литра весит чуть больше трёх кг.

Для распределения тепла под верхней одеждой я равномерно пришил 10 метров тонкого шланга к толстовке.

На спине шланги отсутствуют, потому что спину через рюкзак греет корпус нагревательного модуля.
image
Испытания проводились -10 с холодным ветром и в -20 без ветра. Сверху была одета старая осенняя куртка в которой я обычно замерзал уже при нуле. Обогреватель автоматически зажигал горелку, когда температура на датчиках падала ниже 50ти градусов и тушил после прогрева теплоносителя до 55.

Про эффективность. Словами сложно передать,) Хочется улыбаться прохожим, смотреть по сторонам, стоять на месте и любоваться видом как будто холод отключили) это как обмотаться 10ю метрами шланга внутри которого кипяточек)) хотя горячее 60 градусов уже совсем не комфортно. Я думаю не один автономный электроообогрев не сможет давать столько тепла продолжительное время)
За 2 часа и 10 минут испытаний горелка была включена чуть меньше часа, 3484секунды или 58 минут. Можно грубо сказать что горелка работала половину времени моего путешествия по холоду. При токе потребления в активном режиме 0,6Ампера, можно примерно посчитать, что установке для работы в среднем требуется 0,3 ампера в час. Или аккумулятор 7,2А/ч на сутки. Это означает, что понадобится ~288г аккумуляторов для того чтобы 24 часа с комфортом находится на любом морозе. Но есть вариант перейти на 2s акк и их вес будет ощутимо меньше.
Расход газа измерил взвешиванием баллона
image
В активном режиме за 601 секунду установка расходует 6 грамм газа. Значит за минуту активного нагрева тратится 6г/10мин = 0,6 грамм газа. Учитывая, что в реальных условиях горелка бывает включена меньше половины общего времени пребывания на морозе, можно сказать, что система потребляет 0,3г газа в минуту.
image
Эта штука собрана буквально на коленке из подручных материалов и демонстрирует возможность персонального обогрева с помощью сжигаемого топлива. Довольно ощутимый размер и вес получился в результате использования доступных и серийно производимых деталей от бытовых газовых приборов.
Но уже в таком виде это устройство наделяет меня супер способностью противостоять любому холоду около 12ти часов на одном целом балончике газа 220г за 50 рублей.
В теории можно кинуть в рюкзак пару балончиков газа, трёхсот граммовый 3s аккумулятор и отправится на сутки выживать в зимний лес, только для того чтобы похвастать своим превосходством над силами природы.) Лишний вес носимого оборудования при этом составит около трёх килограмм.
При создании этого первого прототипа я получил полезный опыт и ещё сильней вдохновился идеей создания греющей одежды на новом принципе. Дружитесь со мной в социальных сетях, там можно найти больше фотографий этого проекта и новых устройств

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

Снова о автономной Arduino-метеостанции на батарейках

03.03.2021 00:13:52 | Автор: admin

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


Это было донедавна. Несколько дней назад меня поразил очередной проект @Berkseo, как поражают все его проекты: "Беспроводная мини погодная станция с e-paper экраном на батарейках". Тут все на уровне промышленного продукта. Удивляет единственное в устройстве нет внешнего датчика.


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



Что сделано:


Датчики DHT22 и DS18B20, которые использовались в предыдущем проекте, заменены энергосберегающим модулем это датчик температуры и влажности HTU21D. Период измерений, отправки/приема данных уменьшен с 15-ти мин до 53,5 сек. Сделан переход на устойчивую частоту работы контроллера (8 МГц) при напряжении питания ниже 3В. Для уменьшения объемов занимаемой памяти в скетчах использованы некоторые функции С/С++. И главное, принципиально изменен алгоритм передачи пакетов с выносного датчика и алгоритм приема этих пакетов базой метеостанции. Теперь для обеспечения надежного приема пакетов с выносного датчика в нем формируется и отправляется с интервалом около 0,3 сек не один, а три пакета с данными о параметрах воздуха на улице и состоянии батареек. Только после отправки третьего пакета контроллер в. датчика вместе с периферией уходит в сон. База метеостанции уходит спать после приема одного из 6-ти пакетов с выносного датчика и просыпается за полсекунды до поступления очередной серии пакетов с выносного датчика.


Метеостанция состоит из двух автономных узлов с питанием от двух батареек AA: базы и выносного датчика. Назовем их для простоты анализатором (по-другому база) и беспроводным в.датчиком (выносным датчиком).


Анализатор, построен на контроллере ATMEGA328P, измеряет температуру и влажность (датчик температуры и влажности HTU21D) в помещении, а также измеряет и анализирует величину напряжения питания узла, которое обеспечивают две батарейки АА 1,5 В. На контроллер также поступает сигнал с приемника LoRa, который по эфиру принимает информацию с выносного датчика. Вся инфа с контроллера выводится на ЖК-дисплей NOKIA 5110.


В в.датчике, тоже собранном на контроллере ATMEGA328P, измеряется температура и влажность воздуха на улице (модуль HTU21D), а также напряжение питания выносного узла, организованного на двух батарейках АА 1,5 В. Передатчик LoRa этого узла передает инфу о температуре, влажности и состоянии батарейки на анализатор. С в.датчика выполняется отправка 3-х пакетов с интервалом около 0,3 сек, затем контроллер ATMEGA328P, передатчик LoRa и модуль HTU21D для экономного расходования заряда батареек переводятся в режим сна. Измерения и отправка данных с в.датчика выполняется с циклом несколько меньше 1-ой минуты.


Работа анализатора построена по следующему алгоритму:


Вначале, при включении обеих узлов метеостанции, контроллер анализатора подает команды на измерение температуры и влажности внутри помещения и выводит эти параметры на дисплей, затем устанавливает приемник LoRa в режим прослушивания эфира. После приема сигнала с в.датчика и успешной дешифрации принятых данных контролер подает команду на повторное измерение температуры, влажности и выводит инфу в полном объеме на экран. Затем анализатор уходит в сон, просыпаясь примерно за полсекунды до планируемого поступления сигнала с в.датчика. Приняв и дешифровав один из трех пакетов с в.датчика, повторно выполняет свои измерения, выводит информацию на экран и снова уходит спать. Если по каким-то причинам сигнал с в.датчика отсутствует около одной минуты (например, сели батарейки), что по времени соответствует отправке 6-ти пакетов с в.датчика, анализатор проводит измерения только в помещении, изредка сканируя эфир: а вдруг в.датчик появился в эфире?! Это сделано для того, чтобы постоянно работающий на прием модуль LoRa не посадил за короткое время батарейки анализатора.


Для сборки устройства понадобятся радиодетали:


  1. Контроллер ATMEGA328P-PU 2 шт.
  2. Датчик влажности и температуры HTU21D/SHT21/Si7021 2 шт.
  3. ЖК-дисплей NOKIA 5110 1 шт.
  4. Приемник-передатчик LoRa Rа-01 2 шт.
  5. Макетная плата (стеклотекстолит), монтажные провода, батарейки АА, кварцевые резонаторы 8 МГц, резисторы, конденсаторы, другие мелочи.

Ориентировочная стоимость компонентов по ценам AliExpress примерно $25.


Для работы с контроллерами ATMEGA328P в качестве программатора я использую плату Arduino UNO. На Youtube есть хорошее видео по установке загрузчика и загрузки скетчей в контроллер ATMEGA328P с помощью платы Arduino UNO.


На этот раз мы не будем устанавливать новые фьюзы программой SinaProg, а воспользуемся, на мой взгляд, более универсальным способом созданием новых конфигураций плат в платформе Arduino IDE.


В новые контроллеры надо установить загрузчик Arduino as ISP и надо учитывать то, что контроллеры ATMEGA328P поступают в продажу с заводской настройкой фьюз для мониторинга (контроля) напряжения питания не ниже 2,7 В. Мы же будем работать от батареек, напряжение на которых при разряде может быть ниже установленного заводского порога 2,7 В, и с кварцем 8 МГц. Установим загрузчик и изменим фьюзы под наши условия, используя в качестве программатора плату Arduino UNO, в такой последовательности:


  1. Найти по адресу c:\Program Files\Arduino\hardware\arduino\avr\ файл boards.txt и открыть его текстовом редакторе с форматированием, например, AkelPad.
  2. Дополнить файл блоком, который приведен под спойлером, и сохранить файл.

    блок установок 1
    ##############################################################

    amega.name=Mega Low (8 MHz, >1.8V)

    amega.upload.tool=avrdude
    amega.upload.protocol=arduino
    amega.upload.maximum_size=32256
    amega.upload.maximum_data_size=2048
    amega.upload.speed=57600

    amega.bootloader.tool=avrdude
    amega.bootloader.low_fuses=0xFF
    amega.bootloader.high_fuses=0xDA
    amega.bootloader.extended_fuses=0xFE
    amega.bootloader.unlock_bits=0x3F
    amega.bootloader.lock_bits=0x0F
    amega.bootloader.file=optiboot/optiboot_atmega328.hex

    amega.build.mcu=atmega328p
    amega.build.f_cpu=8000000L
    amega.build.board=AVR_UNO
    amega.build.core=arduino
    amega.build.variant=standard

  3. В плату Arduino UNO загрузить скетч ArduinoISP.ino из примеров платформы Arduino IDE (Файл > Примеры > ArduinoISP).
  4. Собрать схему (плата Arduino UNO, контроллер ATMEGA328P, кварц 16 МГц) для установки в контроллер загрузчика ArduinoISP (инструкции тут), подключить ее компьютеру и записать в контроллер бутлоадер Arduino as ISP.
  5. Заменить кварц в схеме 16 МГц на 8 Мгц. В меню ИНСТРУМЕНТ выбрать из списка плату Mega Low (8 MHz, >1.8V), которая появилась в меню после дополнения файла boards.txt новым блоком, выбрать тут же Программатор: Arduino as ISP и, нажав Записать загрузчик изменить фьюзы и другие установки в контроллере.
  6. Далее загружаем в контроллер необходимый скетч, используя ту же схему, что и для установки загрузчика (п.4), через Скетч > Загрузить через программатор.

Выносной датчик


В.датчик построен на контроллере ATMEGA328P. В нем осуществляется прием данных с HTU21D по протоколу I2C, измерение и анализ величины напряжения питания узла и управление передатчиком LoRa.


скетч в.датчика
/*   Снова о автономной Arduino-метеостанции на батарейках, выносной датчик   http://personeltest.ru/aways/habr.com/ru/post/544936/*/#include <avr/io.h>#include <util/delay.h>#include <SPI.h>#include <LoRa.h>#include <LowPower.h>#include <Wire.h>#include <avr/power.h>#include "HTU21D.h"#define VccHTU 8  //питание и подтяжка HTU21D (pin 14 AtMega328P, D8)HTU21D myHTU21D;float Tout; // температураint Hout;  // влажностьunsigned int sleepCounter, sleepCounter0; // счетчик, задающий время снаint pct;  //счетчик числа пакетов перед уходом в сонString messageOut; // LoRa-сообщениеfloat BatOut; // напряжение батареекconst int batteryPin = A0; // pin 23 (Atmega328P), к которому подключена батарея для измерения напряженияconst float typVbg = 1.132; //калибровачная константа, 1.0 - 1.2int counter = 0;// измерение опорного напряженияfloat readVcc() {  byte i;  float result = 0.0;  float tmp = 0.0;  for (i = 0; i < 1; i++) {    // Read 1.1V reference against AVcc    // set the reference to Vcc and the measurement to the internal 1.1V reference#if defined(__AVR_ATmega32U4__) || defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__)    ADMUX = _BV(REFS0) | _BV(MUX4) | _BV(MUX3) | _BV(MUX2) | _BV(MUX1);#elif defined (__AVR_ATtiny24__) || defined(__AVR_ATtiny44__) || defined(__AVR_ATtiny84__)    ADMUX = _BV(MUX5) | _BV(MUX0);#elif defined (__AVR_ATtiny25__) || defined(__AVR_ATtiny45__) || defined(__AVR_ATtiny85__)    ADMUX = _BV(MUX3) | _BV(MUX2);#else    // works on an Arduino 168 or 328    ADMUX = _BV(REFS0) | _BV(MUX3) | _BV(MUX2) | _BV(MUX1);#endif    _delay_ms(3); // Wait for Vref to settle    ADCSRA |= _BV(ADSC); // Start conversion    while (bit_is_set(ADCSRA, ADSC)); // measuring    uint8_t low  = ADCL; // must read ADCL first - it then locks ADCH    uint8_t high = ADCH; // unlocks both    tmp = (high << 8) | low;    tmp = (typVbg * 1023.0) / tmp;    result = result + tmp;    _delay_ms(5);  }  return result;}void Measurement () {  // измерение температуры и влажности  Hout = myHTU21D.readHumidity();  Hout = 62;  //delete!  float Tout_p = myHTU21D.readTemperature();  Tout = 0.1 * int(Tout_p * 10 + 0.5);  //округление до десятых  // измерение напряжения батареек  BatOut = 0.1 * int(readVcc() * 10 + 0.5);  if (BatOut < 2.2) {    BatOut = 0.0;  } else {    BatOut = 2.2;  }}void SendMessage () {  // отправка данных (температура, влажность, состояние батареек)  if (BatOut > 2.1) {    messageOut = String(Tout) + "#" + String(Hout) + "$" + String("BGood");  }  else {    messageOut = String(Tout) + "#" + String(Hout) + "$" + String("BLow");  }  LoRa.beginPacket();  LoRa.print(messageOut);  LoRa.endPacket();}void setup() {  Serial.begin(9600);  Serial.println("Power ON");  analogReference(DEFAULT);  pinMode(VccHTU, OUTPUT);  digitalWrite(VccHTU, 1);  _delay_ms(200);  myHTU21D.begin();  int counter = 0;  while (!LoRa.begin(433E6) && counter < 10) {    Serial.println("Не удалось найти LoRa-передатчик!");    counter++;    _delay_ms(500);  }  LoRa.setTxPower(4); //мощность передатчика, 2...20 дБ  LoRa.setSyncWord(0xF3);}void loop() {  digitalWrite(VccHTU, 1);  if (pct < 3)  { // измерения, отправка пакетов    Serial.println(messageOut);    Measurement ();    SendMessage ();  } else {// измерения, отправка пакета и длительный сон    Serial.println(messageOut);    Serial.println("sleep ...");    Measurement ();    SendMessage ();    for (sleepCounter = 6; sleepCounter > 0; sleepCounter--)    {      digitalWrite(VccHTU, 0);      digitalWrite(VccHTU, 1);      LoRa.sleep ();      LowPower.powerDown(SLEEP_8S, ADC_OFF, BOD_OFF);    }    pct = 0;  }  pct++;  if (pct >= 3) pct = 3; //защита от переполнения счетчика}int main() {  init();  setup();  for (;;) {    loop();  }}

Электрическая схема в.датчика:



Питание и подтяжка выводов модуля HTU21D осуществляется с пина 14 контроллера ATMEGA328P. Это сделано для того, чтобы программно обнулить питание HTU21D и перевести этот датчик в режим низкого энергопотребления во время сна.


Изначально в схеме в.датчика планировалось использовать барометр-термометр BMP280, но мне не удалось программно перевести BMP280 в режим низкого потребления во сне. Хотя по даташиту BMP280 для перехода в режим низкого потребление требуется, как и для HTU21D, кратковременное обнуление питания. Разрыв питания BMP280 во время сна снижает потребляемый ток в схеме ATMEGA328P + BMP280 с 130 мкА до 5 мкА, но, повторюсь, смоделировать этот разрыв питания программно у меня пока не получилось.


В в.датчике формируется и отправляется с интервалом около 0,3 сек три пакета с данными о температуре и влажности на улице и состоянии батареек. Если напряжение на батарейках выше установленного порога (2,2 В), то в коде пакета присутствует BGood, а ниже BLow. После отправки третьего пакета контроллер в.датчика вместе с периферией уходят в сон. Цикл отправки серий пакетов 53,5 сек.


Анализатор


Мозг анализатора контроллер ATMEGA328P. Он принимает сигналы с датчика HTU21D по протоколу I2С и по SPI взаимодействует с приемником LoRa и дисплеем NOKIA 5110.


скетч в.датчика
/*   Снова о автономной Arduino-метеостанции на батарейках, анализатор   http://personeltest.ru/aways/habr.com/ru/post/544936/*/#include <avr/io.h>#include <util/delay.h>#include <SPI.h>#include <LoRa.h>#include <LowPower.h>#include "HTU21D.h"#include <LCD5110_Graph.h>#define VccHTU 8  //питание и подтяжка HTU21D(pin 14 AtMega328P, D8)HTU21D myHTU21D;float Tin; // температура в помещенииint Hin;  // влажность в помещенииLCD5110 myNokia(3, 4, 5, 6, 7);extern uint8_t SmallFont[];extern uint8_t MediumNumbers[];float BatIn = 0; // напряжение батареиconst int batteryPin = A0; // pin 23(Atmega328P), к которому подключена батарея для измерения напряженияconst float typVbg = 1.132; //калибровачная константа, 1.0 - 1.2unsigned int sleepCounter;  //счетчик, задающий время снаint r; //счетчик циклов прослушивания эфираint mlc;  //счетчик циклов работы без в.датчикаString LoRaData, Tout_str, Hout_str, BatIn_str, BatOut_str;// измерение напряжения батареекfloat readVcc() {  byte i;  float result = 0.0;  float tmp = 0.0;  for (i = 0; i < 1; i++) {    // Read 1.1V reference against AVcc    // set the reference to Vcc and the measurement to the internal 1.1V reference#if defined(__AVR_ATmega32U4__) || defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__)    ADMUX = _BV(REFS0) | _BV(MUX4) | _BV(MUX3) | _BV(MUX2) | _BV(MUX1);#elif defined (__AVR_ATtiny24__) || defined(__AVR_ATtiny44__) || defined(__AVR_ATtiny84__)    ADMUX = _BV(MUX5) | _BV(MUX0);#elif defined (__AVR_ATtiny25__) || defined(__AVR_ATtiny45__) || defined(__AVR_ATtiny85__)    ADMUX = _BV(MUX3) | _BV(MUX2);#else    // works on an Arduino 168 or 328    ADMUX = _BV(REFS0) | _BV(MUX3) | _BV(MUX2) | _BV(MUX1);#endif    _delay_ms(3); // Wait for Vref to settle    ADCSRA |= _BV(ADSC); // Start conversion    while (bit_is_set(ADCSRA, ADSC)); // measuring    uint8_t low  = ADCL; // must read ADCL first - it then locks ADCH    uint8_t high = ADCH; // unlocks both    tmp = (high << 8) | low;    tmp = (typVbg * 1023.0) / tmp;    result = result + tmp;    _delay_ms(5);  }  return result;}void Measurement() {  float Tin0;  // измерение напряжения батареи:  BatIn = readVcc();  // измерение температуры  и влажности в помещении  Hin = myHTU21D.readHumidity();  // Hin = 58; // delete!  float Tin_p = myHTU21D.readTemperature();  Tin = 0.1 * int(Tin_p * 10 + 0.5);  //округление до десятых  //  Tin = 21.4; // delete!}void draw() {  myNokia.enableSleep();  myNokia.clrScr();  //Tin  char chr_Tin [5];  String Tin_str = String(Tin);  myNokia.setFont(SmallFont);  myNokia.print("            C", LEFT, 0);  myNokia.print("In", LEFT, 8);  myNokia.setFont(MediumNumbers);  Tin_str.toCharArray(chr_Tin, 5); //количество знаков+1  myNokia.print(String(chr_Tin), CENTER, 0);  //Tout  char chr_Tout [5];  myNokia.setFont(SmallFont);  myNokia.print("            C", LEFT, 16);  myNokia.print("Out", LEFT, 24);  myNokia.setFont(MediumNumbers);  Tout_str.toCharArray(chr_Tout, 5);  myNokia.print(String(chr_Tout), CENTER, 16);  // Hin, Hout  char chr_Hout [5];  Hout_str.toCharArray(chr_Hout, 4);  myNokia.setFont(MediumNumbers);  myNokia.print(String(Hout_str), RIGHT, 32);  myNokia.setFont(SmallFont);  myNokia.print("    In Out", LEFT, 40);  myNokia.print("      %", LEFT, 32);  myNokia.setFont(MediumNumbers);  myNokia.print(String(Hin), LEFT, 32);  myNokia.setFont(SmallFont);  // Battery Level  if (BatIn < 2.2) {    myNokia.setFont(SmallFont);    myNokia.print("Bat", LEFT, 0);  }  if (BatOut_str == "BLow") {    myNokia.setFont(SmallFont);    myNokia.print("Bat", LEFT, 16);  }  myNokia.disableSleep();  _delay_ms(5);}void drawStart() {  myNokia.enableSleep();  myNokia.clrScr();  //Tin  char chr_Tin [5];  String Tin_str = String(Tin);  myNokia.setFont(SmallFont);  myNokia.print("            C", LEFT, 0);  myNokia.print("In", LEFT, 8);  myNokia.setFont(MediumNumbers);  Tin_str.toCharArray(chr_Tin, 5); //количество знаков+1  myNokia.print(String(chr_Tin), CENTER, 0);  // Battery Level  if (BatIn < 2.2)  {    myNokia.setFont(SmallFont);    myNokia.print("Bat!", RIGHT, 28);  }  //Hin  myNokia.setFont(SmallFont);  myNokia.print("         %", LEFT, 18);  myNokia.print("In", LEFT, 28);  myNokia.setFont(MediumNumbers);  myNokia.print(String(Hin), CENTER, 18);  //No signal!  myNokia.setFont(SmallFont);  myNokia.print("Out - - -", CENTER, 40);  myNokia.update();  myNokia.disableSleep();  _delay_ms(5);}void setup() {  Serial.begin(9600);  pinMode(VccHTU, OUTPUT);  digitalWrite(VccHTU, 1);  Serial.println("Power ON!");  analogReference(DEFAULT);  // инициализация дисплея  myNokia.InitLCD();  myNokia.setFont(SmallFont);  myNokia.clrScr();  myNokia.print(">>>>>", CENTER, 20);  myNokia.update();  _delay_ms(1000);  myNokia.setFont(SmallFont);  myNokia.clrScr();  myNokia.print("))-->", CENTER, 20);  myNokia.update();  if (!LoRa.begin(433E6)) {    Serial.println("Ошибка загрузки LoRa-приемника!");    while (1);    myNokia.setFont(SmallFont);    myNokia.clrScr();    myNokia.print(" ->  ->", CENTER, 20);    myNokia.update();  }  // Диапазон для синхрослова  между "0-0xFF".  LoRa.setSyncWord(0xF3);  Serial.println("Прослушивание эфира. Ожидание пакета с в.датчика ...");  myHTU21D.begin();  Measurement();  drawStart();  digitalWrite(VccHTU, 0);  _delay_ms(1000);  myNokia.clrScr();  myNokia.print("Waiting", CENTER, 10);  myNokia.print("Message from", CENTER, 22);  myNokia.print("OUTSIDE", CENTER, 34);  myNokia.update();}void loop() {  r++;  digitalWrite(VccHTU, 1);  if (r < 600)  // 8 MHz;  {    mlc = 0;    // Прослушивание эфира, прием, дешифрация, если сигнал с в.датчика принят,    // то измерения в помещении, вывод инфы на экран и - в спячку.    {      int packetSize = LoRa.parsePacket();      if (packetSize) {        while (LoRa.available()) {          LoRaData = LoRa.readString();        }        int pos1 = LoRaData.indexOf('#');        int pos2 = LoRaData.indexOf('$');        Tout_str = LoRaData.substring(0, pos1);        Hout_str = LoRaData.substring(pos1 + 1, pos2);        BatOut_str = LoRaData.substring(pos2 + 1, LoRaData.length());        if ((LoRaData).substring(pos1, pos1 + 1) == "#") {          Serial.println("Принято, декодировано! r = " +  String(r));          r = 0;          Measurement();          draw();          digitalWrite(VccHTU, 0);          // sleepCounter = 49; 16 MHz          // sleepCounter = 48; 8 MHz          for (sleepCounter = 48; sleepCounter > 0; sleepCounter--)          {            digitalWrite(VccHTU, 1);            LoRa.sleep ();            LowPower.powerDown(SLEEP_1S, ADC_OFF, BOD_OFF);          }        }      }    }  } else {    r = 600;    if (mlc < 250) //4 часа, время работы без датчика    {      Serial.println("Работа без в.датчика.");      LoRa.sleep ();      Measurement();      drawStart();      digitalWrite(VccHTU, 0);      for (sleepCounter = 6; sleepCounter > 0; sleepCounter--)      {        digitalWrite(VccHTU, 1);        LowPower.powerDown(SLEEP_8S, ADC_OFF, BOD_OFF);      }      mlc++;    } else {      r = 0;      mlc = 0;    }  }  _delay_ms(110); }int main() {  init();  setup();  for (;;) {    loop();  }}

Работа анализатора начинается в setup'e с инициализации модулей, измерения параметров воздуха, анализа напряжения на батарейках и вывода этой инфы на дисплей. Далее уже в loop'e прослушивается эфир приемником LoRa. После приема и дешифрации сигнала с в.датчика повторно проводятся измерения, анализа напряжения на батарейках и вывод измеренной и принятой инфы на дисплей. Выполнив эту работу все элементы схемы уходят поспать примерно на полсекунды меньше, чем период отправки пакетов с в.датчика. В следующем цикле контроллер просыпается и включает приемник приблизительно за 0,5 сек до ожидаемого прихода сигнала с в.датчика. Таким образом, контроллер и периферия анализатора работают около полсекунды с периодом (циклом) меньше минуты (53,5 сек). Если радиосигнал с в.датчика не поступает на приемник анализатора на протяжении приблизительно одной минуты (время, достаточное для приема одного из 6-ти пакетов), то анализатор переходит в режим работы без в.датчика на 4 часа, измеряя параметры воздуха и оценивая состояние батареек только в помещении с индикацией на дисплее этих данных. Период обновления данных в режиме работы без в. датчика 56,7 сек. В конце четырехчасового цикла работы анализатора без в.датчика он прослушивает эфир: а вдруг в.датчик снова в эфире?




Для перевода модуля HTU21D в режим низкого энергопотребления во время сна его питание также, как и в в.датчике, организовано с контроллера ATMEGA328P (пин 14).


В целом, на дисплее анализатора видна такая картинка:



Дисплей из-за низкого разрешения и малого размера экрана плотно забит символами. Эта картинка смотрелась бы намного лучше на современном дисплее с электронными чернилами. В будущем в своих проектах буду использовать e-paper дисплей.


Ресурс батареек и другое


Для расчета срока работы батареек понадобится время и потребляемый ток во время выполнения работы (операционное время) и сна. Операционное время и рабочий ток измерялись с использованием тестовых скетчей, идея которых взята отсюда.


Рабочий ток измерялся с использованием тех же тестовых скетчей. Для исключения разрывов цепи питания или значительного увеличения величины выходного сопротивления батареек можно использовать шунт 3,9...5,6 Ом и параллельно подключенный к нему цифровой мультиметр с механическим переключением в режиме вольтметра на диапазоне 2000 мкВ. Это критично при измерении потребления тока сна анализатора, поскольку разрыв питания или значительное ограничение тока приводят к цикличесому ресету анализатора. Да и выносной датчик может переходить в постоянный рестарт. По мере возможности необходимо проверять ток потребления разными способами на разных диапазонах шкал прибора и с батарейками, которые планируется использовать, притом, обязательно без вывода результатов на монитор порта Ардуино. Невыполнение этих правил сказались на результатах измерений тока в предыдущем моем посте на тему метеостанции в одних случаях они занижены, в других завышены.


Результаты измерений сведены в таблицу:


в.датчик анализатор
Операционное время функции измерений параметров воздуха, состояния батареек 0,25 сек 0,39 сек
Операционный ток функции измерений параметров воздуха, состояния батареек 3,4 мА 3,5 мА
Операционное время функции передачи/приема сигнала 42 мсек 83 мсек
Операционный ток функции передачи/приема сигнала 30,0 мА

(4 дБ)


11,5 мА
Ток сна 10 мкА 190 мкА

Что бросается в глаза, глядя на эту таблицу. Операционный ток передачи сигнала 30,0 мА при мощности передатчика LoRa 4 дБ. Для сравнения, ток передачи для модуля nRF24L01 13,5 мА. Вывод очевиден: надо переходить на nRF24L01, но не все так просто.


В режиме приемника в nRF24L01 используется так называемыйLNA (малошумящий усилитель). Разработчик библиотеки предполагает, что нет никакого программного обеспечения, которое могло бы повлиять на режим LNA.В режиме приема модуль постоянно демодулирует сигнал для поиска входящего пакета. Именно по этой причине Berkseo не поставил внешний датчик. У меня задача, вроде, попроще организовать режим сна с библиотекой LowPower.h. Сомневаюсь, что задача имеет решение. Буду благодарен за ваши мнения на этот счет.


Средний ток потребления по данным таблицы в. датчика 0,13 мА. Емкости батареек типа АА GP Litium для выносного датчика должно хватить на 2,5 года.


Средний ток потребления анализатора 0,27 мА. Ресурс батареек АА GP Litium в анализаторе 1,2 года. Для беспроводного комнатного термостата Computherm Q7RF, например, срок действия батареек: около 1 года.


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


Составил код на С в Atmel Studio и эмулировал его в Proteus'е для для барометра-термометра.



На картинке ниже показаны результаты сравнения кода для одного и того же устройства на языке С и в среде разработки Arduino IDE.



Объем флеш-памяти, занимаемой в коде в Ардуино 12968 байт, на С 5954 байта и оценочно на Ассемблере не больше 200 байт.


Из этих чисел сделал несколько выводов, в которых убедился на собственном опыте:
Код на Ассемблере уменьшает размер памяти на порядки. Соответственно пиковое потребление падает в сотни раз. С десятков миллиампер при прошивках контроллеров устройств на Ардуино или С, С++ до десятых миллиампера на Ассембере.
Поиск компромисса. Так благодаря использованию компилируемых в Arduino IDE библиотек и функций на С/С++ в некоторых скетчах этого поста удалось уйти от предупреждения: Недостаточно памяти, программа может работать нестабильно. Притом, чем проще код, тем выше соотношение: размер памяти в Arduino IDE к памяти на С/С++. Для простейшего кода мигания светодиодом в несколько строк это соотношение составит 6 раз, а проигрыш в производительности 28 раз.


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


И, наконец, искренне благодарю AlexanderS, который донес до меня идею виртуальной шкалы времени или синхронизации, а также других участников обсуждения статьи Автономная метеостанция на контроллере ATMEGA328P и питанием от батареек с беспроводным выносным датчиком (ittakir, Javian, smart_alex, Polaris99, gerasimenkoao, igrushkin, enjoyneering) за предложения, конструктивную критику и замечания.


Спасибо, кто дочитал. Всем отличного иммунитета во времена коронавируса и не только.


Ссылки по теме


Узел беспроводного датчика с низким энергопотреблением


Беспроводная мини погодная станция с e-paper экраном на батарейках


Превращаем Arduino в полноценный AVRISP программатор


LoRa и сон


Узнайте о битах конфигурации ATmega328P и о том, как использовать их с внешним кварцевым резонатором


Калькулятор фьюзов AVR


Почему многие не любят Arduino

Подробнее..

Почему убивают смартфоны в ванне?

24.05.2021 22:08:50 | Автор: admin

brandName1 убил россиянку ударом тока! brandName2 на секунду упал на живот: сына известной блогерши убило током в ванне! Россиянка уронилавваннутелефони погибла. Четырнадцатилетнюю москвичку убило током в ванной. В Красноярске школьница погибла от упавшего в ванну смартфона. Жертв все больше: почему не стоит брать телефон в ванну?

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

Может ли убить 5 В?

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

Для зануд:

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

Для зануд-2

В смартфоне есть и более высокие напряжения, чем пять вольт. На подсветке, например, 18 В. А за счет ШИМа и опасность этого напряжения существенно выше. Но выводов это не меняет: лишь малая доля тока будет течь снаружи корпуса, к тому же у источника, питающего подсветку, этот ток стабилизирован на уровне 20 мА.

Нет, причину смерти определенно надо искать в другом месте.

Блок питания без гальванической развязки?

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

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

К счастью, для телефонных зарядных устройств такая схема малопригодна, так как потребляет ток, почти равный выходному. Этот ток -- реактивный, но с таким реактивным током можно мириться, пока он не превышает 100-200 мА, но не когда он 1-2 ампера. Ну а другая причина -- солидные габариты конденсатора. Можно, конечно, совместить конденсаторный блок питания с понижающим импульсным преобразователем, но сложность такого устройства не будет сильно уступать стандартному импульсному блоку питания.

Все встречавшиеся мне телефонные "зарядки", включая примитивные зарядки кнопочных "Нокий" без стабилизации и еще более примитивные их китайские подделки, были обратноходовыми ИБП. Гальваническая развязка в таких блоках питания обеспечивается импульсным трансформатором. Обратная связь для стабилизации напряжения организуется либо через оптрон, либо через дополнительную обмотку трансформатора , либо по импульсам на первичной обмотке, либо вообще отсутствует, как в вышеупомянутых примитивных китайских поделках (впрочем, оригинальная зарядка от Nokia тоже не имела стабилизации). Экзотические решения типа контроллера ADP1071 или INN3264C со встроенной развязкой встречаются все чаще в связи с Quick Charge. Во всех случаях как таковая гальваническая развязка присутствует и нарушается она только Y-конденсатором, соединявшим "высокую" и "низкую" стороны по высокой частоте. Без этого конденсатора наводка на низковольтную сторону через межобмоточную емкость импульсного трансформатора слишком велика. Например, у смартфона с сенсорным экраном от нее сходит с ума сенсор. Но он и создает условия для легкого "пощипывания" при прикосновении к низковольтной стороне. А может ли ток через него убить, если одновременно схватиться за трубу или лежать в ванне?

Емкость этого конденсатора обычно не более 2200 пФ (часто -- еще ниже, в районе 1000 пФ). Реактивное сопротивление на частоте 50 Гц, соответствующая емкости 2,2 нФ -- 1,45 МОм, и соответственно, ток в цепи "сеть-конденсатор-жертва в ванне-земля" не превысит 150 мкА, что абсолютно безопасно. На самом деле, ток будет несколько больше из-за присутствия в цепи диодов, а значит и высших гармоник, но принципиально ничего не меняется: и это не причина летальных исходов. Также прикосновение в момент пикового напряжения при одновременном заземлении тела приводит к разряду конденсатора через тело, но энергия этого разряда -- 0,1 мДж. Достаточно, чтобы слегка "куснуло", но совершенно недостаточно для убийства (для этого нужна энергия хотя бы в тысячу раз больше, 0,1 Дж).

Итак, исправный адаптер, включенный в сеть, ни при каких условиях убить не может. Значит, дело в неисправностях.

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

На этом фото -- плата, извлеченная из классической китайской зарядки под российским брендом за 250 рублей, купленной когда-то в ларьке в подземном переходе. На первый взгляд, ничего особенного. Обратноход на микросхеме "все в одном" со встроенным ключом в восьминогом корпусе. Оптрон для обратной связи -- на своем месте. Не самый плохой экземпляр -- по крайней мере, перед разборкой она без вопросов прослужила года три, и заявленные два ампера она держит. Но... что это? Где на плате помехоподавляющий конденсатор? Он должен быть: проблем с помехами на сенсоре не наблюдалось. Да вот он, SMD-конденсатор на обратной стороне (C2).

А должен быть вот таким.

В качестве Y-конденсаторов принято использовать специализированные конденсаторы, сделанные с упором на максимальную электробезопасность, с очень солидным запасом по напряжению. Они рассчитаны на работу при 250 В переменного тока, но способны надежно выдерживать несколько киловольт. Пробой такого конденсатора случается, пожалуй, только при прямом попадании атомной бомбы молнии. Характерным визуальным признаком таких конденсаторов является то, что они окуклены толстым слоем изолирующей пластмассы, их маркировка имеет явное указание на применение (Y2) и включает массу значков всевозможных стандартов и сертификатов безопасности.

Поскольку такие конденсаторы не самые дешевые (не в последнюю очередь из-за стоимости прохождения этих бесчисленных сертификаций и одобрений), велик соблазн заменить их на что попроще. И в дешевых блоках питания частенько стоит какая-нибудь безымянная керамика на 630 В или киловольт. Этого мало, так как в сети иногда проскакивают импульсы, наводимые молниями, короткими замыканиями на высоковольтных ЛЭП и другими аварийными ситуациями. Несколько таких импульсов вполне способны "подпробить" такой конденсатор, особенно при его невысоком качестве, и самое страшное, что это никак не повлияет на работоспособность блока питания. При заземлении низковольтной части (например, через жертву, лежащую в ванне и пока ничего не подозревающую) через конденсатор потечет уже не только емкостный ток, но и ток утечки. Сначала незначительный, доли миллиампера, но вызывающий локальный нагрев диэлектрической керамики. С ростом температуры он тоже растет, и еще сильнее греет. Развивается тепловой пробой и цепь окончательно замыкается со всеми печальным последствиями.

Как оказалось, такой конденсатор -- это еще не худший вариант. Ставить в такое место SMD-компонент вообще безрассудство. Такие миниатюрные многослойные конденсаторы гораздо менее устойчивы к импульсным перегрузкам, гораздо сильнее подвержены тепловому пробою, могут треснуть при тепловой деформации платы, с большой вероятностью давая полное КЗ. И в целом многослойные конденсаторы менее надежны из-за эффектов электромиграции. Маленькое расстояние между выводами и предположительно не смытый флюс под корпусом тоже не способствуют надежности и безопасности такого решения.

Y-конденсатор -- не единственная проблема этого БП. Здесь нет практически никакого конструктивного разделения низковольтной части и высоковольтной. Нет даже прорезей в плате, предотвращающих пробой по стеклотекстолиту из-за его перегрева или налипания пыли на поверхность, и даже просто увеличенного зазора между их печатными проводниками, не говоря уж о каких-либо барьерах, которые могли бы предотвратить перебрасывание дуги между ними. Здесь также нет ни варистора на входе, ни предохранителя, так что он опасен не только в плане поражения током, но и тем, что выйдя из строя, он загорится. Помехоподавляющих элементов здесь тоже и близко нет, хотя это уже не про безопасность, а про, скажем так, культуру поведения в обществе.

Это то, что можно увидеть глазом. Никто, однако, не может гарантировать, что, например, импульсный трансформатор сделан с качественной межобмоточной изоляцией. Требования к ней ничуть не меньше требования к изоляции Y-конденсатора и оптрона, а последствия пробоя столь же опасны.

Надо сказать, это не худший вариант. "Классика жанра" выглядит как-нибудь так:

А зарядка "здорового человека" выглядит изнутри вот так (это, кстати, подделка под Samsung, но качественная):

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

Что делать?

Если вы -- владелец смартфона, то в первую очередь внимательнее относитесь к тому, что пихаете в свой телефон. Зарядные устройства, подобные описанным выше, могут убить не только человека. Часто у них на выходе творится черте-чего: напряжение "гуляет" и "плавает", уровень пульсаций -- запредельный. В случае выхода из строя они запросто утянут за собой и ваш гаджет. Ну и даже с самым лучшим и оригинальным зарядным устройством держитесь подальше от воды. Вода и 220 вольт -- вещи малосовместимые.

Если же вы разработчик блока питания, то ваша задача -- сделать хорошо. Если же от вас хотят сделать дешево, то урезать бюджет за счет безопасности -- самое последнее дело.

А "хорошо" в данном случае означает надежную изоляцию низковольтной части от высоковольтной. Основа этой изоляции -- расстояние. Если предполагается, что низковольтная часть доступна для прикосновения к ее токоведущим частям, расчетное напряжение изоляции должно быть 2,5-4 кВ. Достаточным минимум можно считать 6-8 мм, причем в этом зазоре не должно быть ничего, кроме элементов гальванической развязки. Желательно предусмотреть в этой зоне окно в маске, которое может быть закрыто "валиком" изоляционного компаунда, удлиняющим путь утечки по поверхности. Пробой по поверхности предотвращается прорезями на наиболее нагруженных участках платы. Особенно велик риск такого пробоя, если барьерная зона подвергается излишнему нагреву от сильно греющихся компонентов: их необходимо переместить подальше.

Зазор должен выдерживаться и между компонентами. При плотном монтаже нужно организовать дополнительную изоляцию: установить глухую перегородку из изоляционного материала между "высокой" и "низкой" сторонами, закрыть выводы и корпусы компонентов, находящихся под высоким напряжением, термоусадкой, принять меры против взаимного смещения крупногабаритных элементов при толчках и ударах, дополнительно закрепив их компаундом. Хорошим вариантом, хоть и приводящим к неремонтопригодности, является и полная заливка блока теплопроводным компаундом.

Особое внимание нужно уделить выбору элементов, "перекрывающих" барьер гальванической изоляции. Ни о какой "самодеятельности" и применении компонентов не предназначенных для работы под сетевым напряжением и не имеющих соответствующей сертификации, не может идти речи, даже если это ваш любительский проект. Вообще же при разработке блоков питания для мобильных устройств, которые в процессе зарядки могут держать в руках, в идеале стоило бы ориентироваться на стандарт безопасности медицинского оборудования IEC60601-1 , рассматривая мобильный гаджет, как рабочую часть класса BF с доступной металлической частью. В соответствии с этим стандартом напряжение, на которое должна быть рассчитана изоляция, составляет ~ 4000 Вэфф, при этом ток утечки на пациента не должен превышать 100 мкА при штатной работе и 500 мкА при аварии. Впрочем, я реалист и прекрасно понимаю... Именно поэтому даже пользуясь качественным зарядным устройством, следует дополнительно избегать опасной ситуации.

Заключение

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

Подробнее..

Аналитика событий на опасном производстве, или зачем Цифровому рабочему Kafka, Esper и Clickhouse

23.03.2021 10:07:12 | Автор: admin

Привет, Хабр! Я Алексей Коняев. Последние пару лет участвую в развитии платформы Цифровой рабочий в роли ведущего java-разработчика.

Представьте, что вы приехали на экскурсию на завод. Там огромная территория, и вы вместе с гидом передвигаетесь на машине. Он рассказывает: Посмотрите направо, здесь новое здание литейного цеха, а вот слева старое здание, которое скоро должны снести... Как вдруг через минуту это старое здание взрывают! Гид, конечно, в шоке, да и вы тоже, но, к счастью, всё обошлось. Спрашивается, какого черта машина с экскурсантами оказалась в месте проведения взрывных работ?! И наш Цифровой рабочий на этот вопрос тоже не ответит, но он поможет вовремя предупредить всех заинтересованных лиц о том, что в геозоне, где сейчас проводятся опасные работы, появились посторонние в машине местного гида.

Если в двух словах, то система позволяет предупреждать опасные ситуации на производстве благодаря носимым устройствам Outdoor/Indoor-навигации и видеоаналитике. Цифровой рабочий может определять местоположение, физическое состояние или опасное поведение людей, строить различную аналитику, в том числе realtime, и выполнять разбор полётов, т.е. воспроизводить историю событий, чтобы можно было выяснить, что привело к нежелательной ситуации.

Дальше расскажу про архитектуру нашей системы, как мы используем Kafka, Esper и Clickhouse и на какие грабли уже наступили.

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

Пример из жизни Цифрового рабочего на пилоте в нефтянке. Работник залез на стремянку, чтобы затянуть вентиль газовой трубы. Резьба вдруг сорвалась, он не удержался и, упав с высоты 5 метров, от удара потерял сознание. А вентиль при этом открылся, и газ начал поступать в помещение. Но датчики падения и удара, которые встроены в носимое устройство (у него был модуль на каске) передали сигналы на сервер. Там эти два сигнала были обработаны на платформе, и алгоритм выявления внештатных ситуаций сформировал событие-тревогу. Оно было передано оператору, а также другим сотрудникам, которые в тот момент были недалеко от пострадавшего и смогли быстро прийти на помощь.

Архитектура

Когда мы только начинали проектировать Цифровой рабочий, решили пойти по пути Событийно-ориентированной архитектуры. Рассуждали так: всё начинается с носимых устройств, или, как мы их называем, меток. Они, по сути, просто умеют передавать с определённой частотой какую-то телеметрию или, другими словами, информацию об изменении своего внутреннего состояния. И вот это изменение состояния метки и есть входное для системы событие.

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

В качестве шины или слоя передачи событий выбрали Apache Kafka. На тот момент Kafka уже зарекомендовала себя как зрелый и надежный продукт (мы начинали с версии 2.0.0). Кроме того, выбирали только среди Open-source решений, чтобы удовлетворить требованиям импортозамещения. А с функциональной точки зрения в Kafkа нам понравилась возможность независимо подключать различных консьюмеров к одному и тому же топику, возможность прочитать события из топика ещё раз за период в прошлом, механизм стриминговой обработки Kafka Streams, ну и, конечно, масштабируемость благодаря партиционированию топиков.

Архитектура системы включает следующие компоненты:

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

  • Для каждой такой системы позиционирования, с которой мы решили интегрироваться, у нас есть свой модуль Адаптер, который публикует в Kafka события с телеметрией от меток.

  • Далее эти события обрабатываются Транслятором, который выполняет первичную обработку (связывание метки с сотрудником, вычисление геозоны, в которой находится сейчас метка и др.).

  • Модуль Complex Event Processing-а (CEP-процессор) обрабатывает события, которые порождает Транслятор; здесь мы занимаемся выявлением внештатных ситуаций, анализируя различные типы событий, в том числе от разных меток.

  • В UI поступают события как от Транслятора (для отрисовки перемещения сотрудников), так и от CEP-процессора (отображение алертов).

  • Для хранения справочных данных, как то список меток, сотрудников, геозон и пр., используем реляционную БД PostgreSQL.

  • А для хранения данных, по которым строится аналитика ClickHouse.

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

  • И ещё есть файловое хранилище S3, где мы храним файлы 3D-моделей и файлы сформированных отчётов.

Ну а теперь давайте расскажу поподробнее про все модули системы, как они устроены внутри.

Интегрируемся со всеми: адаптеры

Основная задача Адаптера взаимодействие с системой позиционирования через её API для того, чтобы получать информацию о координатах метки и значения встроенных в метку датчиков. Например, заряд аккумулятора, статус нажатия тревожной кнопки, статус датчика падения и неподвижности, температура, влажность, уровень CO2 и др.

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

Хотя для некоторых меток мы всё-таки запилили систему позиционирования сами, когда не удавалось найти существующего решения или хотелось поэкспериментировать. А один из экспериментов привел к тому, кто мы разработали свою метку с креплением на каску:

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

Поэтому основное требование к адаптеру быть максимально производительным, т.е. получил данные в чужом формате, преобразовал к нашему внутреннему и отправил событие в Kafka. Эти события, которые порождает адаптер, мы называем Сырые.

Сырые события бывают такие:

  • TagMovement перемещение метки, содержит координаты;

  • TagInfo телеметрия со значениями датчиков метки;

  • TagAlert события нажатия тревожной кнопки, события падения и удара.

Разделяй и властвуй: топики Kafka

Отдельно хочу остановиться на топиках.

Для каждого типа события в Цифровом рабочем используется свой отдельный топик. Такой подход позволяет:

  1. Индивидуально настраивать retention для каждого топика. Так, например, для сырых событий ретеншн всего 1 сутки, потому что эти события практически сразу будут обработаны, и хранить их долго не нужно (но 1 сутки всё-таки храним на случай сбоя).

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

  3. Реализовать автоматическую сборку топологии Kafka Streams процессоров если вкратце, то работает она так:

    3.1. в прикладном модуле нужно объявить процессоры, указав тип входного события и тип выходного;

    3.2. также можно указать, будет ли данный процессор использовать состояние;

    3.3. все процессоры это Spring Bean-ы;

    3.4. при запуске приложения сборщик топологии находит все процессоры и собирает их в граф, стыкуя процессоры так, чтобы тип выхода одного подходил под тип входа другого.

Примерно так выглядит топология процессоров Транслятора, о котором речь пойдет ниже:

Шеф-повар: транслятор

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

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

Внутри Транслятора несколько процессоров на Kafka Streams (см. processor-api), причём многие из них используют состояние.

Kafka Streams предоставляет API для работы с состоянием как с Key-Value таблицей. Тут важно понимать, что для каждого ключа входного события процессора существует свое состояние. Ключ у каждого типа события свой. Например, для события перемещения метки это будет серийный номер метки. Это позволяет выполнять обработку очередного события от какой-то конкретной метки с учетом истории обработки событий от этой же метки.

Транслятор решает следующие задачи:

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

  • Связывание метки и сотрудника. Здесь процессор Транслятора обращается к реляционной БД за справочной информацией, чтобы определить, какой именно сотрудник сейчас носит эту метку.

  • Определение остановки сотрудника. Здесь мы смотрим, если новые координаты метки не сильно отличаются от предыдущих в течение некоторого таймаута, то значит, сотрудник остановился.

  • Обнаружение потери сигнала от метки. Тут используем такую штуку, как Punctuator это механизм Kafka Streams, который позволяет с заданной периодичностью просматривать состояния процессора по всем ключам. И логика простая: если нашли состояние, в котором время последних полученных координат позже, чем максимально разрешенное, то значит, сигнала от метки не было давно, и следует считать сигнал потерянным.

  • Ещё есть процессоры, которые работают с геозонами. Суть в том, что вся территория и здания размечаются на геозоны. Например, Корпус Альфа, который, в свою очередь, разделяется на геозоны этажей, а каждый этаж на коридоры и кабинеты. И есть процессор, который определяет, что координаты метки попали внутрь той или иной геозоны, а другой процессор выполняет подсчёт количества сотрудников внутри геозон.

События, которые создаются в результате работы Транслятора, мы называем бизнес-события, потому что:

  • эти события уже представляют интерес для пользователей системы события перемещения сотрудников передаются в UI для отрисовки их на карте; также в UI отображается телеметрия метки, которая уже ассоциирована с определённым сотрудником;

  • почти все бизнес-события сохраняются в аналитическую БД;

  • многие бизнес-события используются для выявления внештатных ситуаций;

  • и ещё эти события мы храним в Kafka долго (1 месяц) для того, чтобы иметь возможность воспроизвести их и посмотреть, что происходило в определённый интервал времени в прошлом.

Спасительный кэш при потоковой обработке

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

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

  • обновляться с некоторой периодичностью;

  • периодически сливать изменения в БД.

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

Мы сделали выбор в пользу Hazelcast-а, потому что:

  • Его достаточно легко использовать это просто библиотека, которую вы подключаете в проект.

  • Кэши Hazelcast-а автоматически синхронизируются на всех нодах. Но тут нужно быть осторожным если не ограничить область видимости кэша через задание имени группы (в конфиге экземпляра Hazelcast-а), то он может незаметно для вас реплицироваться в каком-нибудь ещё модуле, где вы тоже решили использовать Hazelcast. Т.е. в нашем случае, все кэши, которые нужны Трансляторам и только им, объединены в группу translator.

После добавления кэширования производительность Транслятора выросла на несколько порядков! Цифры получились такие: одна нода, которой выделены ресурсы, эквивалентные инстансу t4g.micro в облаке Amazon EC2 (2CPU + 2Gb), обрабатывала без задержки до 500 входящих сырых событий в секунду. 500 кажется не много, но метки разных производителей передают данные с разной частотой от 3 событий в минуту до 5 событий в секунду. И высокопроизводительные метки, которые дают большую точность, могут использоваться не на всей территории объекта. Таким образом, в худшем случае одна нода Транслятора выдерживает нагрузку от 100 меток, а в лучшем от 10 тысяч.

Высоко сижу далеко гляжу: отображение объектов на карте

UI состоит из двух частей серверная часть и клиент.

Серверная часть подписывается на определённые бизнес-события, в первую очередь события перемещения сотрудников. Эти события через WebSocket передаются на клиента, но предварительно выполняется:

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

  • редукция событий события накапливаются в буфере и отправляются на клиента 1 раз в секунду.

Это нужно для того, чтобы снизить нагрузку на клиента.

Клиентская часть это web-приложение на React-е. Основную рабочую область UI занимает карта с 3D-моделями зданий, которые можно посмотреть в разрезе провалиться на любой этаж и увидеть, что там происходит. Для отрисовки 3D-моделей мы используем библиотеку CesiumJS.

Complex Event Processing

Термин Complex Event Processing (CEP) придумал профессор Стенфордского университета David Luckham. Вкратце определение звучит так: Complex Event Processing это обработка потока различных событий в реальном времени с целью выявления паттернов значимых событий. Ещё часто CEP сравнивают с ESP (Event Stream Processing). И здесь David Luckham выделяет следующие отличия между ними:

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

CEP это обработка нескольких потоков различных событий, причём не обязательно упорядоченных (т.е. допускается нарушение порядка поступления событий в сравнении с порядком их возникновения), которая выполняется внутри некоторого окна (временного, например) с учетом причинно-следственной связи между различными событиями.

Например, обработка событий от термометра с целью управления кондиционером (температура стала ниже порога включили обогрев, и наоборот) это ESP. А вот обработка событий от термометра и одновременно от датчика освещённости в течение суток позволяет сделать вывод, что на улице зима.

Но в тоже время, в одной из своих статей David Luckham с коллегой, видя, что современные инструменты Event Stream Processing-а всё больше и больше приобретают возможности CEP-инструментов, делают вывод, что со временем разница между ними будет стерта (см. The Future of Event Stream Analytics and CEP).

CEP-процессор

Давайте перейдем от теории к практике!

Как вы уже поняли, в Цифровом рабочем именно модуль CEP-процессор выполняет сложную обработку событий, которыми в контексте нашей системы являются внештатные ситуации, такие как:

  • Вход сотрудника в геозону, имеющую в данный момент статус опасная.

  • Пульс выше или ниже нормы.

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

В качестве CEP-движка мы используем Open-source библеотеку Esper, которую с 2006 года разрабатывает компания EsperTech.

Esper мы выбрали по следующим соображениям:

  • Описание паттернов сложных событий (или правил) выполняется на языке Event Processing Language (EPL), который является расширением стандарта SQL-92; соответственно, правила описываются в декларативном виде, а нам очень хотелось, чтобы эти правила могли понимать не только программисты, но и, например, аналитики (хотя, если правило действительно сложное, то без подготовки его будет трудно понять).

  • Esper мощный инструмент, и достаточно сложные паттерны можно описать в несколько строк на EPL.

  • Есть интеграция с Kafka, которая позволяет описывать правила, оперируя событиями, потребляемыми из Kafka, а результат работы правила также оформлять в виде события и публиковать в Kafka.

Пример реализации правила на Esper-е

Давайте рассмотрим небольшую задачу и её решение на Esper-е. В КРОКе есть свой ЦОД и газотурбинные генераторы, которые используются как резервный источник питания. Эти штуки нужно периодически запускать, но оставлять их включёнными без присмотра надолго нельзя. Предположим, что сотрудник, который их обслуживает, не всегда соблюдает регламент и может отлучиться на более продолжительное время, чем это разрешено.

Задача: если оборудование включено, и в помещении, где оно расположено, нет ни одного сотрудника больше 10 минут, то необходимо сформировать событие-тревогу.

Для отладки решения будем использовать Esper Notebook, в котором можно описать правило на EPL-е и сценарий с входными данными.

Чтобы Esper Notebook понял, что текст это правило, в самом начале нужно написать ключевое слово %esperepl.

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

@Description('Кол-во людей в геозоне')create schema PersonsInZone(zoneId string, number int);@Description('Статус устройства (вкл / выкл)')create schema DeviceStatus(deviceId string, zoneId string, turnedOn bool);

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

create context TurnerOnDeviceContext    partition by deviceId from DeviceStatus    initiated by DeviceStatus(turnedOn = true)    terminated by DeviceStatus(turnedOn = false);

Контекст это своего рода окно, в рамках которого мы будет наблюдать входящие события.

// для выражения можно задать имя, чтобы видеть его в логах@Name('Unattended device')// указывая контекст, мы говорим, чтобы данное выражение// выполнялось только для событий из контекстаcontext TurnerOnDeviceContextselect    ds.zoneId,    ds.deviceIdfrom    // в качестве источника событий задаем шаблон,    // который словами можно сформулировать так:    // Устройство включили  потом Все ушли  потом (Прошло 10 минут И Никто не вернулся)    pattern [        ds = DeviceStatus(turnedOn = true)        -> every (            PersonsInZone(zoneId = ds.zoneId and number = 0)            -> (timer:interval(10 minutes)                    and not PersonsInZone(zoneId = ds.zoneId and number > 0)               )        )    ];

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

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

Таким образом, мы получим ситуацию, когда часть шаблона Все ушли ("Прошло 10 минут И Никто не вернулся) будет найден снова, в то время, как первая часть Устройство включили уже была найдена ранее. И, чтобы целый шаблон найти ещё раз, нужно написать every перед второй его чатью.

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

%esperscenario// задаем начальное времяt = 2020-12-10 12:00:00.000// публикуем событие в помещение A вошёл 1 сотрудникPersonsInZone = {zoneId=room-A, number=1}// через 1 минуту включаем генератор 1 в помещении Аt = t.plus(1 minute)DeviceStatus = {deviceId=generator-1, zoneId=room-A, turnedOn=true}// через 4 часа сотрудник вышел из помещения А, не выключив генераторt = t.plus(4 hours)PersonsInZone = {zoneId=room-A, number=0}// прошло ещё 10 минут  и должно сработать наше правило!t = t.plus(10 minute)

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

Unattended device-output={ds.zoneId='room-A', ds.deviceId='generator-1'}

Вот ещё один пример сценария, посложнее:

%esperscenariot = 2020-12-10 12:00:00.000// сотрудник вошёл в помещение АPersonsInZone = {zoneId=room-A, number=1}// через 1 минуту включил генератор 1t = t.plus(1 minute)DeviceStatus = {deviceId=generator-1, zoneId=room-A, turnedOn=true}// через 30 минут вышел, не выключив генераторt = t.plus(30 minutes)PersonsInZone = {zoneId=room-A, number=0}// но через 5 минут вернулсяt = t.plus(5 minute)PersonsInZone = {zoneId=room-A, number=1}// прошло ещё 5 минут  тревоги не должно быть, сотрудник ведь вернулсяt = t.plus(5 minute)// ещё через 3 часа ушёл, а генератор всё также остался включённымt = t.plus(3 hour)PersonsInZone = {zoneId=room-A, number=0}// через 10 минут  тревога!t = t.plus(10 minute)

Этот же пример, но с полноценной интеграцией с Kafka, который можно собрать и запустить, доступен по ссылке digital-worker-architecture.

В двух словах, его отличие в том, что нужно:

  1. настроить движок Esper-а подключить к нему плагины для взаимодействия с Kafka;

  2. зарегистрировать типы классов, которые будут представлять события в Kafka, и десериализатор для них.

И тогда при описании правил можно уже не создавать схемы событий, а использовать имена классов событий. А результат работы выражений (select-ов) оборачивать в создание выходных событий, которые публиковать в соответствующие топики Kafka.

Всех посчитали: регистрация внештатных ситуаций

CEP-процессор при срабатывании правил делает следующее:

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

  • Формирует событие-нотификацию, которое, как и все остальные события в Цифровом рабочем, публикуются в свой топик в Kafka. На этот топик подписан модуль Нотификаций, который выполняет их маршрутизацию. В результате нотификация передается в UI (оператор видит уведомление) или конкретному сотруднику через тот канал, который для него определён (например, на почту, в Telegram или на метку, которую носит сотрудник, если она поддерживает обратный канал).

Летим по приборам: аналитика

Аналитика доступна оператору в виде панели инструментов, на которую он может вынести интересующие его виджеты, и в виде механизма формирования отчётов.

Виджеты это те же отчёты, у которых есть какие-то свои входные параметры, но результат выводится не в Excel или PDF-файл, а в виде графика или диаграммы. Еще виджеты обновляются раз в 15 секунд, что позволяет оператору видеть актуальные на текущий момент времени данные.

Также существуют отчёты со специализированным отображением информации непосредственно на карте (тепловая карта и маршруты):

Данные, по которым строится аналитика, хранятся в БД ClickHouse. Но прежде, чем попасть в ClickHouse, они проходят дополнительную обработку в модуле Подготовки данных. А, чтобы достать эти данные из БД и передать потребителю (в данном случае, в UI), используется модуль Формирования отчётов.

ClickHouse

К аналитической БД у нас были следующие требования:

  • нужно уметь хранить очень много данных. Наши данные это события, у которых есть ключ и временная метка;

  • нужно быстро выполнять запросы с условием С ПО, т.е. за определённый период времени.

Когда мы выбирали БД, то понимали, что здесь точно нужна не реляционка, а, скорее, NoSql, которая умеет линейно масштабироваться и обеспечивает отказоустойчивость. На момент проектирования Цифрового рабочего у нас был опыт применения NoSql БД Cassandra, но ClickHouse был на слуху и, изучив документацию и посмотрев несколько презентаций от ребят, которые уже успешно используют его в проде, мы тоже решили попробовать.

Из особенностей ClickHouse мы для себя выделили следующие:

  • Это колоночная БД наши события имеют много атрибутов, которые удобно разложить по колонкам.

  • Хорошо подходит для Time-serias данных ClickHouse может партиционировать таблицу по ключу, который является функцией от временной метки события, что позволяет хранить в общей партиции все события полученные, например, за один и тот же день. А это позволяет эффективно выполнять запросы, у которых задан период времени (сперва будут выбраны только нужные партиции, а уже потом только по ним выполняется остальная часть запроса).

  • Есть встроенная интеграция с Kafka ClickHouse напрямую из Kafka умеет загружать данные в таблицы, при этом можно дополнительно выполнять обработку данных непосредственно в момент их загрузки.

  • Есть возможность подключить внешнюю реляционную БД мы подключаем справочники, которые храним в PostgreSql, после чего их можно использовать как обычные таблицы в Sql-выражениях.

  • Богатый набор встроенных аналитических функций например, для формирования Тепловой карты мы используем функцию Квантиль. А ещё мне очень нравится работа с массивами в ClickHouse можно джойнить элементы колонки-массива одной таблицы со строками другой таблицы или трансформировать строки таблицы в колонку-массив.

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

Что касается схемы БД, то она устроена примерно так:

  • Есть таблицы, которые содержат данные в более или менее исходном виде, т.е. в том, в котором поступают события из Kafka. Эти таблицы используются для формирования большинства отчётов.

  • Но также есть специализированные таблицы, которые хранят данные в ином виде, удобном для формирования каких-то конкретных отчётов.

  • И придерживаемся принципа: данные в БД готовим исходя из сценария их использования (какие именно запросы будем выполнять к БД и с какими условиями фильтрации).

Подготовка данных

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

Модуль подготовки данных это Kafka Streams приложение, которое обрабатывает бизнес-события и выполняет следующие действия:

  • фильтрация бизнес-событий может быть очень много (например, события перемещения сотрудника), а для некоторых отчётов все они не нужны, и их можно проредить;

  • денормализация и обогащение чтобы при формировании отчёта лишний раз не выполнять join-ы, здесь мы заранее собираем все необходимые данные, например, по ИД сотрудника получаем его ФИО и название должностной позиции;

  • форматирование приведение дат к нужному формату, форматирование дробных чисел, локализация текста и т.п.

Формирование отчётов

Для того, чтобы получить отчёт, заказчик отчёта отправляет в топик Kafka report-request событие-запрос. Здесь мы отходим от принципа один тип события один топик для каждого конкретного отчёта существует свой тип события, который содержит специфичные для данного отчёта параметры. Но при этом все они унаследованы от базового класса ReportRequest.

Эти ReportRequest-ы обрабатывает модуль формирования отчётов:

  • по типу запроса определяется генератор запроса;

  • генератор формирует специфичный для отчёта SQL-запрос в ClickHouse, и, при необходимости, выполняет дополнительную обработку результата SQL-запроса уже на стороне java-кода;

  • результат работы генератора, если нужно, преобразуется в Excel или Pdf файл, который сохраняется в файловое хранилище;

  • создается событие-ответ, унаследованное от базового ReportResponse-а, которое содержит данные отчёта или ссылку на файл в хранилище.

  • в событие-ответ добавляется информация о событии-запросе, чтобы заказчик отчёта мог связать ответ с ранее отправленных запросов, после чего оно публикуется в топик report-response.

Мы выбрали такую схему формирования отчётов, потому что:

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

  • хотели предоставить возможность формировать отчёты любым клиентам, у которых будет доступ к соответствующим топикам Kafka; это могут быть как модули Цифрового рабочего, так и внешние системы, с которыми мы интегрируемся;

  • использование Kafka автоматически позволяет масштабировать модули формирования просто поднимаем несколько узлов и получаем балансировку нагрузки (каждый узел обрабатывает свои партиции топика report-request).

Файловое хранилище

Изначально мы не очень понимали, какой именно интерфейс файлового хранилища нам подойдет, но было понятно, что нужно уметь хранить в нем:

  • 3D-модели зданий, которые загружаются на клиента при отрисовке карты.

  • Сформированные отчёты.

  • Возможно, какой-то ещё статический контент.

Сначала выбрали Apache Sling. Это контент-система, которая хранит данные в иерархической структуре и позволяет обращаться к файлам по URL-у, в котором отражен путь до соответствующего узла в иерархии. С точки зрения работы клиента, Sling довольно удобное решение просто загружаешь файл по URL-у напрямую. Со стороны backend-а тоже особо проблем не было java-api довольно простой.

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

  • Научиться получать большой список файлов из Sling-а так, чтобы не вычитывать каждый файл всякий раз для получения его размера;

  • Попробовать другое хранилище.

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

Заменили Sling на S3. У него не было проблем с получением большого списка файлов, а как бонус мы перестали поднимать свое файловое хранилище на стендах, а стали использовать S3, поднятое в облаке КРОК. Т.е. немного упростили процесс развертывания системы.

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

Если посмотреть на все модули системы вместе, то можно связать их потоками событий, которые протекают между ними:

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

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

Этот механизм реализован следующим образом:

  • UI подписывается на нужные ему события с помощью нашего KafkaConsumer-а, который инкапсулирует взаимодействие с Kafka и имеет два режима работы: REAL_TIME и PAST_TIME.

  • Если включен режим REAL_TIME, то KafkaConsumer просто передает события, которые в данный момент поступают в топики Kafka.

  • А когда включен режим PAST_TIME (при его включении необходимо задать период времени в прошлом), то KafkaConsumer вычитывает события из топиков, начиная с offset-а, соответствующего началу периода, и заканчивая offset-ом конца периода. При этом KafkaConsumer делает задержки между событиями, чтобы передавать их потребителю с тем же темпом, с которым они поступали в реальном времени.

Плюсы этого решения такие:

  • для истории не нужно отдельного хранилища вся история хранится в Kafka; при этом retention можно задавать большим только для тех топиков, которые нужны для воспроизведения истории;

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

Но есть и минус: в начальный момент времени периода в прошлом мы не можем получить полное состояние системы. Предположим, в 12:00 в кабинет вошло 10 сотрудников, а к 13:00 у половины из них сел аккумулятор метки, и она перестала передавать события со своим местоположением. Тогда воспроизводя историю с 13:00, мы увидим в этом кабинете только 5 сотрудников, у которых метки продолжили работать, т.к. только от этих меток в топиках будут события, начиная с 13:00.

Я подозреваю, что решить эту проблему только на базе Kafka не получится. Но сейчас текущее решение удовлетворяет нашим потребностям, поэтому мы его не трогаем. А как вариант на будущее, можно будет перенести хранение истории в ClickHouse и сделать Consumer, который будет для REAL_TIME-режима ходить в Kafka, а для PAST_TIME в ClickHouse.

А что у вас?

Несмотря на то, что Цифровой рабочий уже много чего умеет, продукт продолжает развиваться. Мы постоянно пилим какие-то новые фичи, подключаем новые системы позиционирования, что-то переделываем и оптимизируем, экспериментируем с разными технологиями потоковой обработки, прикручиваем ML (вот здесь, например, о том, что сделали интеграцию с системой видеоаналитики). В общем, куча идей и планов на будущее!

Было бы интересно услышать в комментариях, разрабатываете ли вы что-то подобное, например, в области IoT с потоковой обработкой данных, какие технологии применяете и как?

И, кстати, вот: Оцифровка рабочего в режиме реального времени - мой доклад на SmartData conf.

Подробнее..

Война миров во вселенной IoTIoE доколе?

12.04.2021 10:16:29 | Автор: admin


Казалось бы еще не так давно вошедшая в наш разговорный обиход аббревиатура IoT Internet of Things, на данный момент, как оказываться, безвозвратно устарела. На смену интернету вещей все чаще приходит сокращение IoE -Internet of Everything, и это не просто жонглирование словами. Ведь, если ранее ставилась задача объединит, главным образом через интернет, в единую систему всевозможные предметы окружающие нас, то в наше время более актуальной стала необходимость создания целых экосистем, которые должны собирать, обрабатывать и выдавать необходимую пользователю информацию. Интернет всего это попытка собрать в одном флаконе гаджеты, интернет, сбор и анализ данных, беспрецедентно глубокое взаимодействие с пользователем. То, что еще лет 20 назад казалось пределом мечтаний умный дом, платежные терминалы, портативные коммуникаторы, сейчас уже повседневная реальность. Новая задача, которую перед нами ставит современность это интеграция всевозможных приложений и человека, объединение воедино разрозненного мира разных гаджетов и не менее обильного количества программных оболочек, так любезно создаваемых производителями этих самых гаджетов.

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

Отрицание




Иногда сложно поверить в чужие истории, о том на сколько непросто стало взаимодействовать с разного рода гаджетами, но это ровно до того момента пока сам не столкнешься с конкретной задачей. Особенно это актуально если возникает необходимость наладить коммуникацию двух и более гаджетов от разных производителей, с разным ПО. Естественно разные стандарты применяемые при производстве товаров это новость не сегодняшнего и даже не вчерашнего дня. В США до сих пор наиболее распространенной остается имперская система мер, тем самым порождая всему остальному миру, с их метрами и литрами, кучу хлопот. Хотя правительство и стимулирует промышленность и граждан в повседневной жизни переходить на метрическую систему, фактическое решение остается за непосредственными производителями и потребителями, которые не спешат менять свои привычки.

Интересный жизненный цикл прошли смартфоны. В то время, когда на заре становления мобильной эры среди производителей техники был откровенный хаос, проявившийся наиболее наглядно в формах и конфигурациях портов и ОС когда каждый производитель жаждал создать свой уникальный разъем, как под зарядку так и под передачу данных с устройства. Долгое время производители также не видели в этом никакой проблемы. Со временем, после внедрения единых стандартов связи IrDA, Bluetooth, WiFi, а также создания универсального порта на базе USB, казалось бы, мир должен был вздохнуть с облегчением. Но не тут-то было. В 2007 году вышел iPhone. И тут сложно сказать, что сподвигнуло корпорацию на продвижение своих собственных разъемов. Слабая распространенность micro USB в 2007 году? Более прогрессивный нежели конкуренты представленного в 2012 году Lightning? Инерция в сегменте носимых гаджетов, после начала повсеместного внедрения перспективной технологии USB Type-C в 2014 году? Чего уже говорить о разброде и шатании в рядах оперативных систем под которыми работали все эти гаджеты?


Рассвет конкуренции выпал на 2010-2011 года. Исходом противостояния стало всецелое доминирование Android и iOS. У Symbian OS явно что-то пошло не так

Гнев


Абсолютно не удивительно слышать негодование рядовых юзеров об отсутствии универсальной совместимости создаваемой производителями техники, как на физическом так и на программном уровне. Однако, в любом случае, никто вас не тянет в тот же Apple store за покупкой нового iPhone, если вас так уж не устраивают установленные на нем разъемы, или ОС. Но вот что делать с 5-тю и более мессенджерами, с 8-ю и более социальными сетями, с 8-ю платежными системами, активным пользователем которых, с ужасом, как-то заметил мне приходится быть? И тут разговор уже идет не следствии моего суверенного выбора, а констатация печального факта жизненной необходимости.

Сложно забыть тот чувство счастья когда мне довелось установить на ПК первый свой мессенджер ICQ. Объединив в единое онлайн-сообщество всех моих друзей, и просто знакомых, эта платформа вывела всех нас на новый уровень коммуникации. Однако, время шло и был QIP, Skype, WeChat, Viber, WhatsApp, Telegram, Zoom далее пошли социальные сети, которые с определенного момента также начали дублировать функции мессенджеров, VK, OК, Facebook, Twitter, Instagram, LinkedIn, Google+ и каждое из названных приложений устанавливалось не от праздного интереса. И тут, собственно, беда не столько в существовании большего числа социальных платформ, каждая из которых однозначно ориентируется на свой сегмент рынка, проблема заключалась в невозможности оперировать единым аккаунтом и невозможности собрать на единой площадке весь свой круг общения. То что еще недавно дарило столько радости и счастья сейчас доставляет лишь дискомфорт отбирая кучу времени и внимания.


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

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

Торг


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


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

В данный момент, фактически, мировая ИТ-индустрия поделена между двумя платформами Android и iOS. Если создаваемое вами ПО не поддерживается минимум одной из этих платформ забудьте в принципе о какой либо финансовой успешности вашего продукта. Альтернативные платформы, потенциально готовые стать основой для IoT/IoE, создаваемая в рамках импортозамещения теми же китайцами Harmony OS, на сегодняшний день не могут создать полноценную конкуренцию лидерам. И дело тут не в слабой технической реализации альтернативных проектов. Программные продукты от Microsoft, в свое время лидера по распространенности ОС, с каждым годом теряют свои позиции, даже не смотря на то, что более 20 лет компания занимается разработкой и продвижением своего детища Windows, на те же самые мобильные платформы. Но как показала практика просто хорошего продукта мало, ПО должно более глубоко интегрироваться с окружающим нас миром.


Времена новые, но уловки остаются старые. За окном был 2020 год

Депрессия


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



И самое тут удивительное то, что альтернативы сложившемуся положению вещей не виднеется даже на горизонте. К примеру, те же самые разработчики Harmony OS, авторитетно заявили, что рассматривают ее исключительно как план Б на случай отключения поддержки Android для производителей техники из Поднебесной. Даже всесильные китайцы, со своими неограниченными материальными и человеческими ресурсами, признают невозможность полноценной конкуренции своего продукта в современном мире. Такая же андерграундная альтернатива, лидерам ИТ-рынка, как использование KaiOS, SIRIN OS, Ubuntu Touch, Tizen OS, Аврора ОС для среднестатистического пользователя, фактически, является повседневной болью и унынием, ведь все они имеют узконаправленный функционал и не отвечают требованиям нового мира IoE.


Как ни странно, но мир мессенджеров все еще сопротивляется глобализации. С другой стороны это может быть не столько заслуга представленных платформ, как недоработка Google и Apple. По сути, на данный момент, обе кампании просто не делали серьезных попыток создать действительно массовый универсальный мессенджер

Принятие


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


За 11 лет из более двух десятков социальных сетей в лидерах остались только пять. К чему мы придем еще через 11 лет? Тенденция очевидна

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

Немного рекламы


Спасибо, что остаётесь с нами. Вам нравятся наши статьи? Хотите видеть больше интересных материалов? Поддержите нас, оформив заказ или порекомендовав знакомым, облачные VPS для разработчиков от $4.99, уникальный аналог entry-level серверов, который был придуман нами для Вас: Вся правда о VPS (KVM) E5-2697 v3 (6 Cores) 10GB DDR4 480GB SSD 1Gbps от $19 или как правильно делить сервер? (доступны варианты с RAID1 и RAID10, до 24 ядер и до 40GB DDR4).

Dell R730xd в 2 раза дешевле в дата-центре Maincubes Tier IV в Амстердаме? Только у нас 2 х Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 ТВ от $199 в Нидерландах! Dell R420 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB от $99! Читайте о том Как построить инфраструктуру корп. класса c применением серверов Dell R730xd Е5-2650 v4 стоимостью 9000 евро за копейки?
Подробнее..

Chia Coin, или сказка о том, как Флешки выжили в войне криптовалют

07.06.2021 12:06:42 | Автор: admin
Привет, Хабр! USB-флешки единственные, кто не пострадал в спекуляциях на тему цен вокруг носителей информации. Благодаря монете Chia спрос на носители HDD, SSD взлетел за месяц до невиданных высот. С полок магазинов пропали HDD емкостью выше 1-2 ТБ, SSD емкостью более 0,5 ТБ, но потребности в переносе данных еще остались.



Будем откровенны, ажиотаж вокруг видеокарт и жестких дисков фактически парализовал IT сектор. Не хватает нам только монет, добываемых на CPU, и о компьютерах можно будет только мечтать, рассматривая буклеты интернет-магазинов.

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



В этот ответственный момент компания Kingston выпустила на рынок две привлекательные модели USB Flash: DataTraveler Kyson и DataTraveler Exodia. Благодаря отсутствию ажиотажного спроса на данный тип носителей модели располагает большой емкостью для перемещения данных, распространенным разъемом USB и приличными скоростями. К тому же цена на них вполне демократичная, точнее 1/25 от мейнстрим видеокарт GTX 3060 Ti.

DataTraveler Exodia



Самобытное устройство, выпускаемое в четырех емкостях и четырех цветах. Оснащена пластиковым колпачком и не имеет ни единого светодиода.



Очень легкая (11 г) благодаря пластиковому корпусу. Разъем подключения USB Type A, поддерживаемый протокол USB 3.2 Gen 1. Доступна в размере 32, 64, 128 и 256 ГБ. Стиль и исполнение флешки напоминают старую школу просто и со вкусом, без лишней иллюминации и с возможностью привязать устройство к шнурку или связке ключей. Стоит помнить, что колпачок хоть и фиксируется плотно, да и к тому же легкий, но в кармане может слететь. Следите за ним внимательно.



Из коробки DataTraveler Exodia 256G отформатирована в системе FAT32 и доступный для пользователя размер составляет 230 ГБ в системе исчисления Windows 10.

DataTraveler Kyson



Полная противоположность выше рассмотренной флешке, т.к. выполнена в современном и стильном дизайне: лишена колпачка, металлический корпус, минималистичный вид. В отличие от Exodia производитель гарантирует высокую скорость чтения (до 200 МБ/сек) и приличную скорость записи (до 60 МБ/сек). Цветовых вариаций нет, зато можно выбрать из четырех размеров: 32, 64, 128 и 256 ГБ.



Компактные размеры и смешной вес (39x12,6x4,9 мм, 4 г) не будут оттягивать карман хозяина. Крупное кольцо позволяет привязать флешку буквально к любому предмету. По спецификации флешка совместима с разъемом USB Type A и протоколом USB 3.2 Gen 1.



В заводском исполнении предварительно отформатирована в FAT32, доступный для пользователя системы Windows 10 объем составляет ровно 230 ГБ.

Новые горизонты





Раз речь зашла о недоступности устройств хранения и переноса информации из-за тотального шествия новой криптовалюты, то не стоит думать, что флешки больше ни на что не сгодятся. Более тонкий тех. процесс производства памяти сделал из них почти полную замену внешним жестким дискам и SATA SSD с оговоркой на ресурс и скорость. Естественно, ни в какое сравнение не идет и разница в стоимости устройств. На столь емких флешках будет удобно брать с собой различную информацию больших (в рамках типичного пользователя ПК) размеров будь то фильмы, дистрибутивы, фотографии и многое другое. На 256 ГБ действительно влезет пару десяткой рипов фильмов или несколько сезонов популярного сериала, а посмотреть их можно будет, просто воткнув флешку в телевизор или приставку. Благо TV 2017 и более поздних годов выпуска оснащаются как раз USB Type A разъемами.

По ряду профессий емкие флешки с высокой скоростью чтения удобны для системных администраторов: храня и разворачивая образы различных систем, начиная от ESXi и заканчивая Windows Server 2019. В конце концов 256 ГБ позволяют переносить на сервера образы готовых систем заранее оптимизированные и сконфигурированные в VMware Workstation Pro путем конвертирования их в программе VMware Converter.



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

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

Методика тестирования


Так как флешки в первую очередь предназначены для ПК и ноутбуков, то процесс измерения производительности будет проведен на ПК с интерфейсом USB 3.2 Gen 2 и скоростью 10 Гбит/с.

Типичный сценарий использования USB Flash это более 80% времени работы тратится на чтение данных. Запись обычно происходит реже, либо записываются сжатые архивы/образы. В повседневном использовании флешки должны отрабатывать различные не серверные задачи и тем более нет смысла использовать потребительские USB Flash в качестве места долгого хранения, или считать их местом для создания бекапов. Поэтому в списке приложений мы отдаем предпочтение распространенным программам для тестирования. Это AS SSD Benchmark, CrystalDiskMark, HD Tune Pro 5.75, PCMark 10 Storage, H2Test и другие. В качестве бонуса проведем тесты записи и чтения папки с образами, фото и фильмами, имитируя типичную работу пользователя с устройствами.

Используемая конфигурация ПК:
Maximus XI Hero (Wi-Fi), процессор Intel Core i7 9900K, встроенная видеокарта Intel, 64-Гб памяти DDR4-3200 и операционная система Windows 10 x64. Для проверки совместимости флешки подключались к raspberry, ноутбукам с чипсетами Intel, AMD, а также NAS накопителю.

Результаты тестирования



AS SSD Benchmark


Copy Benchmark оценивает скорость работы и затраченного на это времени при копировании разных групп файлов (ISO образ, папка с программами, папка с играми).

DataTraveler Exodia



DataTraveler Kyson



CrystalDiskMark


Тестирование проводилось с 5 повторениями, каждый объемом 16 ГБ и 1 ГБ.
Последовательное чтение/запись с глубиной 8.
Последовательное чтение/запись с глубиной 1.
Случайное чтение/запись блоками по 4 кб с глубиной 32 и 16 потоков.
Случайное чтение/запись блоками по 4 кб с глубиной 1.

DataTraveler Exodia



DataTraveler Kyson



HD Tune Pro 5.75


Линейная скорость чтения и записи блоками 512 Кбайт.
Время доступа.
Расширенные тесты чтения и записи.

DataTraveler Exodia



DataTraveler Kyson



PCMark 10 Storage


Quick System Drive Benchmark: короткий тест, эмулирующий легкую нагрузку на систему хранения. Используются наборы тестов, повторяющие реальные действия системы и программ с накопителем;
Data Drive Benchmark: повторяет нагрузку на систему хранения в виде наборов тестов для NAS, (хранение и использование файлов различного типа).

DataTraveler Exodia



DataTraveler Kyson



H2Test


Позволяет оценить среднюю скорость чтения и записи на диск, выдавая информацию в Мбайт/сек.

DataTraveler Exodia



DataTraveler Kyson



USB Flash Benchmark


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

DataTraveler Exodia



DataTraveler Kyson



Натуральный тест


И последний, натуральный тест на копирование образа Windows 10 x64.iso плюс папка с распакованным образом Windows 10, а также Windows Server 2019 x64 iso и папка с распакованным образом Windows Server 2019. Добавляем сюда 5 крупных фрагментов сериала и 77 RAW фотографий. По папкам:
Фильмы 29,1 ГБ (5 крупных фрагментов);
ISO 17,6 ГБ (смешанные файлы большого, среднего и маленького размера);
Фото 5,4 ГБ (77 RAW фотографий);


Запись фильмов, ISO, фото размером 53453 МБ за 1339 сек или 40 МБ/сек


Чтение фильмов, ISO, фото размером 53453 МБ за 447 сек или 120 МБ/сек

DataTraveler Kyson


Запись фильмов, ISO, фото размером 53453 МБ за 1236 сек или 43,2 МБ/сек


Чтение фильмов, ISO, фото размером 53453 МБ за 214 сек или 250 МБ/сек

Выводы


Kingston DataTraveler Kyson



Серия Kyson это универсальные и доступные флеш-карты для любых видов файлов. Они прекрасно работают с мелкими, средними и крупными файлами. Сильной стороной Kyson стала именно универсальность использования в любых видах перемещения данных. Заявленная скорость чтения даже превысила паспортные характеристики и достигает половины производительности хорошего SATA SSD, ведь в тестах на чтение флешка показала от 250 до 270 МБ/сек. Если обратить взгляд на запись, то кажется будто 40 с хвостиком МБ/сек не такая и большая цифра. Но Kingston DataTraveler Kyson не пасует перед мелкоблочными данными, развивая гарантированную скорость более 44 МБ/сек. Еще одним достоинством стал температурный режим и стабильность работы. После часовых тестов флешка не нагревается выше 40С и не впадает в анабиоз. Ее совместимость с различными контроллерами (Intel, AMD, VLI, ASM) подтвердилась на практике. Одним словом, если вам нужна универсальная и скоростная флешка для чтения и постоянная скорость на запись с любыми видами данных, то Kyson отлично подходит на эту роль.

Kingston DataTraveler Exodia



Бюджетно не значит плохо! Kingston DataTraveler Exodia относится к Entry Level флеш-устройству. У нее нет индикации, а корпус пластиковый. Большая емкость, легкий вес, защитный колпачок и доступная цена вот ее основные достоинства. Наилучшей стороной Exodia стали тесты с копированием и записью файлов размером больше 512 Кб. Все, что больше это ее родная стихия. На мелкоблочных операциях чтения и записи скорость падает, но как только вы решите записать большие файлы, то результат под 60 МБ/сек на запись вас впечатлит в разрезе стоимости малышки. Фактический результат с учетом особенностей: до 125 МБ/сек чтения и до 60 МБ/сек на запись.

Дополнительную информацию о новинках DataTraveler Kyson и DataTraveler Exodia ищите на официальном сайте Kingston.



Для получения дополнительной информации о продуктах Kingston Technology обращайтесь на официальный сайт компании.
Подробнее..

Hi-перевод Обзор беспроводных наушников Bowers amp Wilkins PI7

07.06.2021 14:15:24 | Автор: admin

Портал о Hi-Fi, Hi-End технике(и не только) - hifiNews.ru подготовил перевод теста новых наушников британской компании Bowers & Wilkins (B&W).

Bowers & Wilkins PI7Bowers & Wilkins PI7

Bowers & Wilkins PI7представляют собой полностью беспроводные наушники, которые являются более дорогой из двух новых моделей данного типа, представленных в каталоге компании.

Надо заметить, что при разработке своих наушников B&W применят подход, отличный от компании Focal. Стоимость ее моделей никогда не превышает психологический барьер в $1000, в то время как модели Focal часто стоят дороже. Кроме того, если Focal придерживается последовательной концепции в дизайне своих наушников, подход Bowers & Wilkins более гибкий. И поскольку в настоящее время беспроводные модели находятся на пике популярности, эта британская компания решила выпустить и такую модель.

Однако стоит заметить, что Bowers & Wilkins никогда не принимает поспешных решений. Ее наушники создаются в результате серьезных исследований, и имеют интересные технические решения, а также впечатляющий дизайн. Продолжат ли PI7 эту хорошую традицию компании? Пришло время нам это узнать.

Технические характеристики и дизайн

PI7 - это первая полностью беспроводная модель от Bowers and Wilkins, но компания уже несколько лет выпускает наушники, поэтому неудивительно, что в PI7 нашли свое отражение несколько уже имеющихся у нее решений. Разумеется, здесь есть и несколько изменений в конструкции, связанных с тем, что данные наушники полностью беспроводные. Среди уже знакомого нам в PI7 9,2-миллиметровые динамические излучатели, аналогичные тем, которые мы видели в предыдущих разработках компании.

В PI7 к ним добавлен балансный излучатель, который работает на высоких частотах. Подобное мы тоже видели, в модели PI3, и это позволяет теоретически сочетать мощные басы от динамического излучателя с аккуратными верхами балансного. Ключевой особенностью PI7 является то, что каждый излучатель в них подключен к собственному усилителю. Заявленная частотная характеристика наушников составляет 10 Гц - 20 кГц.

Bowers & Wilkins утверждает, что до этого момента она воздерживалась от выпуска такой модели потому, что ее инженеров не удовлетворяло качество звука при использовании Bluetooth (интересный аргумент для компании с довольно широким ассортиментом беспроводных наушников, ну да ладно), а PI7 имеет полный из доступных на сегодня набор улучшений данной технологии. Наушники поддерживают все разновидности кодеков aptX, известных на данный момент: обычный, HD, с низкой задержкой LLC и адаптивный. Они также имеют поддержку AAC и, разумеется, стандартного кодека SBC. Дополнительно, имеется технология BLE, информирующая вас об уровне заряда аккумулятора, и функция управления через приложение. Разумеется, использование всего этого богатства будет возможным только в случае соответствующей поддержки и со стороны передающего устройства.

Для кодека aptX это означает, что, по крайней мере, теоретически, передачу аудио с параметрами 24 бит/48 кГц можно будет осуществлять. Наушники связываются между собой с использованием сигнала с такими же параметрами. Лично я считаю, что все это не слишком целесообразно. Если вы хотите слушать записи High resolution в мобильных условиях, то, скорее всего, предпочтете традиционное проводное соединение. Но, по крайней мере, вы можете быть уверенным, что сигнал на наушники приходит без дополнительного сжатия.

Из других положительных моментов следует отметить, что PI7 оснащены фирменной системой шумоподавления Bowers & Wilkins. PI7 имеют шесть микрофонов для работы адаптивного шумоподавления (настраиваемого в приложении), с передачей голоса, что было сделано и другими компаниями, но ни одна из них не приблизилась к Bowers. Есть несколько настроек для этой системы в зависимости от окружающей обстановки (лично мне такое не нужно, но, возможно, кому-то пригодится), а также возможность выключить всю дополнительную обработку. Можно с уверенностью сказать, что это наиболее универсальная на сегодня система шумоподавления на рынке, и поместить ее в пару вкладышей настоящий подвиг.

Учитывая, сколько в каждом наушнике находится излучателей, усилителей, микрофонов и тому подобного, места для размещения аккумуляторов там невелико. Bowers & Wilkins указывает продолжительность автономной работы PI7 в четыре часа, и я думаю, что это реалистичный показатель, хотя он может зависеть от выбранного кодека Bluetooth, а также от громкости прослушивания. Как и во многих подобных моделях, на помощь здесь приходит чехол-зарядник. Он обеспечивает четыре цикла заряда вкладышей, и может дать два часа прослушивания музыки после 15-минутной зарядки. Возможно, это не то устройство, которое я взял бы с собой в рейс в Новую Зеландию, но его хватит на неделю обычных поездок.

Это все хорошо, но есть в данных наушниках и некоторые особенности, которые я пока не встречал у конкурентов. Одна из них то, на что еще способен чехол PI7. В его основании находится разъем USB-C, который не только заряжает внутреннюю батарею, но и позволяет передавать аудио. Вы можете подключить его через специальный кабель к аналоговому выходу устройства (разъем 3,5 мм), сигнал с которого будет оцифрован, и передан на вкладыши по Bluetooth с кодеком aptX HD. Это значительно расширяет возможности использования PI7 и выгодно отличает их от конкурирующих моделей, у которых нет подобной функции.

Кроме того, Bower & Wilkins удалось сделать беспроводные наушники очень привлекательными и удобными в использовании. Полированные металлические секции вкладышей выглядят превосходно, а общая форма и размер PI7 достаточно компактны, чтобы они слишком торчали из вашего уха. При этом наушники B&W сидят в ушах не только комфортно, но и надежно, по крайней мере, для обычных пользователей, не увлекающихся экстремальными видами спорта.

Как проходило тестирование PI7?

Большая часть тестирования PI7 производилась с помощью Oppo Find X2 Neo, который имеет поддержку aptX Adaptive и HD, для качественного воспроизведения музыки. Часть тестирования также проводилось с помощьюAstell & Kern Kann. Затем iPad Pro был использован для тестирования качества звука с AAC, а ноутбук Lenovo T15P обеспечил возможность тестирования через USB и 3,5-мм подключения. Музыкальный материал почти полностью был с сервисов Qobuz и Deezer, также использовалось некоторое количество видеороликов.

Качество звучания

PI7 продемонстрировали звучание, которое я уже отмечал для модели Signature, но в миниатюре. Сопряжение с Oppo сработало сразу, а подсказки и сообщения, выводимые приложением, значительно упрощают процесс подключения. После установки соединения PI7 работали стабильно и безупречно переподключались 19 раз из 20.

Надо заметить, что Oppo и PI7, работающие вместе, очень чувствительны к определенным типам помех. Например, мониторы дверных датчиков в супермаркетах заставят два устройства либо разорвать соединение, либо пропустить трек. Впрочем, это происходило не во всех магазинах, так что серьезной претензии здесь нет. Но принять во внимание этот факт стоит.

За исключением этого, PI7 сразу произвели на меня сильное впечатление. Во-первых, в эту модель были перенесены все особенности, которыми Bowers & Wilkins наделила свои полноразмерные наушники. Чувствительность сенсоров управления PI7 на обоих вкладышах и работа системы шумоподавления были выше всяких похвал. Качество звука при разговоре по телефону приемлемое, если шум ветра не слишком высок, но это относится ко всем моделям данного класса. На практике PI7 ничем не уступает ни одному из конкурентов, которые я тестировал.

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

Typhoons от Royal Blood, возможно, не самая Hi-Fi-запись, однако ее насыщенный, взрывной звук способен прижать вас к креслу. PI7 удается поддерживать порядок среди этого музыкального хаоса, не теряя при этом его напора. Даже работая на высоких уровнях громкости, PI7 невозмутимы. Замечательно то, что контролируемость звука не уменьшает удовольствия от прослушивания музыки. Мощная начальная композиция Trouble's Coming по-прежнему остается в полной мере бунтарской, хотя и чуть-чуть управляемой.

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

Переключение на AAC через iPad действительно частично снижает качество звука, потому что у этого кодека более низкий битрейт. Если на Oppo музыка с сервисов Qobuz и (с потерями) Deezer звучит по-разному, то на iPad эта разница теряется. Это все еще хороший звук, но, очевидно, Apple оставила в нем какой-то запас, что бы полностью реализовать в собственном AirPod Pro, и, тем самым, дать им определенные преимущества. Однако в случае мобильного использования звук все равно вполне хорош.

А как насчет системы подключения через чехол? Она работает и работает хорошо. USB-соединение практически не имеет преимуществ по сравнению с Oppo, поэтому использование PI7 с ноутбуком становится бесполезным занятием. Подключение через аналоговый выход шумнее, чем другие варианты, и несколько снижает качество звука, но это все еще уникальная функция, изучением которой, я не сомневаюсь, сейчас вплотную занимаются конкуренты. Насколько она нужна именно вам отдельный вопрос, но подобное, на мой взгляд, сейчас есть только у PI7.

Заключение

В основе любых дебатов о ценности PI7 для многих пользователей - оправдывают ли они стоимость на $150 фунтов выше, чем у AirPod Pro.

стоимость в России на 05.2021 ~ 29 990

На этот вопрос есть два ответа: один совершенно очевидный, а другой - более тонкий. Если вы не являетесь пользователем iPhone и у вас есть достойная реализация aptX, то качество звука PI7 за счет более совершенного кодека будет выше. Если вы пользователь iOS, решение больше зависит от личных предпочтений и от того, есть ли у вас дополнительные $150, но я думаю, что PI7 все же будут лучше. Качество реализации шумоподавления, качество сборки и уровень комфорта, предлагаемые здесь, в значительной степени являются лучшими в данном классе. Bowers & Wilkins не спешила выпускать полностью беспроводные наушники, но результат впечатляет и на сегодня PI7 являются бесспорной самой выгодной покупкой.

Вердикт

Понравилось
Превосходное качество звука, особенно с высококачественными кодеками Bluetooth
Отличное шумоподавление
Удобные и качественно сделанные

Не понравилось
Небольшое время автономной работы вкладышей
Звучание с использованием кодека AAC не впечатляет
Возможны конфликты с внешним оборудованием
Высокая стоимость


Оценки:

Качество сборки: 9
Легкость использования: 9
Качество звука: 9
Дизайн: 9
Чувствительность: 9
Вердикт: 9

Основные технические характеристики Bowers & Wilkins PI7

Тип:

вкладыши, полностью беспроводные, с активным подавлением шумов

Излучатели:

9,2 мм динамический + арматурный

Частотный диапазон:

10 Гц - 20 кГц

Чехол-зарядник в комплекте:

да

Заменяемые внутриушные вставки:

да

Соединение:

Bluetooth SBC, AAC, aptX, aptX HD, LLC, Adaptive

При подготовке обзора использовались материалы с www.avforums.com (перевод с английского - hifiNews.RU)


Подробнее..

Личные пристрастия о плеере с необычным форм-фактором, которого может не быть

20.11.2020 18:16:58 | Автор: admin
Иногда видишь проекты с краудфандинговым финансированием и понимаешь, что ты всю жизнь хотел именно это. Итак, сравнительно недавно появился проект музыканта мультиинструменталиста, который, с одной стороны, очень обрадовал, а с другой, обеспокоил. Поводом беспокоится стало то, что скорее всего он не будет нужен даже как нишевый продукт и платформа не соберет деньги на его реализацию. Речь об идее hi-fi-плеера со встроенным усилителем для наушников и достаточно необычным квадратным форм-фактором. Идею устройства, по габаритам напоминающее коробку от старого-доброго CD (не несколько больше), предложил британский мультиинструменталист Том Век. Под катом об оригинальной идее устройства и о причинах, по которым оно, скорее всего, останется лишь проектом.



Об устройстве


Я давно ждал от рынка большой плеер, который способен полноценно отображать классическую обложку компакт-диска. При этом хотелось, чтобы это было именно устройство специально предназначенное для воспроизведения мультимедиа и интеграцией в такие сервисы, как Spotify. И когда я столкнулся с упоминанием о плеере Sleevenote от Тома Века, я понял, что речь именно о том, что я ждал от рынка. С технической точки зрения это объединение в одном устройстве плеера ЦАП, стримера и усилителя для наушников. Устройство портативное и достаточно массивное, в связи с необходимостью в высокоёмком аккумуляторе.

Таким образом, на старте мы имеем проект квадратного устройства, силуэтом чем-то напоминающий старый добрый blackberry passport. Экран плеера с размером 7,5 дюйма, позволяет рассматривать графические файлы с обложкой альбома, треклистом, текстами и т.п. Внутри зверя нас ожидают ЦАП Cirrus HQ, усилитель Wolfson класса W, также базовая память на 256 ГБ.



По сути усилитель класса W это коммерческое название усилителя класса H Иными словами фактический класс B (по традиционной классификации) с плавающим напряжением шин питания. При малых уровнях выходного напряжения устройство питается от низковольтных шин линейного источника. Росте выходного напряжения, например при подключении высокоомных наушников, встроенный следящий импульсный преобразователь повышает напряжение на одной из шин.

По задумке создателей, аккумулятора устройства при всех этих прелестях должно хватать как минимум на 12 часов непрерывной автономной работы при использовании проводных наушников и интернет соединения. Соответственно, ёмкость Sleevenote должна составлять как минимум 5000 mAh. Для загрузки файлов предполагается использовать Wi-Fi и Bluetooth, последний также можно будет применять для подключения к наушникам или умным колонкам. Аналоговый разъем для наушников стандартный 3,5 мм.

Применение усилителя Wolfson говорит о возможности подключать к плееру высокоомные (300 и более Ом) наушники, благодаря высокому напряжению, которое этот усилитель способен создавать на выходе. Cirrus HQ поддерживает 24 бит/96 Гц, соответственно, устройство можно без преувеличения назвать Hi-Res плеером. Разработчики также обещают поддержку Apple Music и Spotify и некую собственную коллекцию из 1000 альбомов и ещё планируют договриваться со стриминговыми сервисами.

Почему его может не быть


В этом цикле я позволяю себе быть необъективным. Я буквально влюбился в концепцию, рендеры, характеристики и подумал о том, что даже если не стану донатить сейчас, то наверняка куплю его позже. Даже несмотря на то, что покупка стоимостью $707 это очень внушительный удар по моему карману и на то, что это вроде как не рационально. У меня лично, когда я смотрю на эту вещь, возникает мысль о том, что при помощи этой штуки я хочу слушать музыку. Но, скорее всего, мне не придется этого делать.

Далеко не все разделяют мой энтузиазм. Большинство сегодня используют беспроводные наушники. Пусть в устройстве и есть возможность их подключать, остается непонятным, зачем переплачивать за ЦАП и встроенный усилитель. Форм фактор сложно назвать карманным, если вспомнить компакт диски, то оные помещались в редкий карман, и, как правило, для них носили специальную сумку с файлами. Sleevenote ещё и достаточно толстый, что почти гарантированно не позволит размещать его в большинстве карманов.


Сравнение размеров коробки от CD, плеера и винилового диска

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

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

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

Сухой остаток


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

Реклама
В нашем каталоге представлен широкий ассортимент разнообразной электроники: наушников, усилителей, акустических систем, телевизоров и других устройств.
Подробнее..

Beyerdynamic T5 (3rd Gen) обзор флагмана за 999

25.11.2020 22:06:19 | Автор: admin
Думаю, что банальную распаковку любого товара можно легко найти на youtube, посему я постараюсь игнорировать мелочи и сконцентрироваться на главном. Речь пойдет о новых наушниках закрытого типа от Beyerdynamic, которые компания позиционирует как флагман. Некоторые СМИ, в частности Whathifi, уже поспешили назвать устройство новым эталоном. Таким образом можно говорить о том, что оценивая это устройство, мы, в каком-то смысле, оцениваем эталон современных наушников с закрытым акустическим оформлением. Под катом всё, что счел значимым.



Назначение


Назначение это, пожалуй, первое, о чем следует сказать, описывая этот девайс. Beyerdynamic T5 (3rd Gen) это устройство, которое создавалось как наушники для использования в помещении, но при этом не требующее специального усилителя. Дело в том, что их сопротивление составляет всего 32 Ом, что позволяет без труда использовать их с обычным смартфоном и тривиальным плеером.

Производитель на сайте и в рекламных материалах сообщает о том, что речь идёт о High End наушниках. С точки зрения спецификаций, это ни к чему его не обязывает, однако, прочитав такое, ожидаешь, что звук и дизайн устройства будут впечатлять пользователя, качество сборки будет безупречным, а эргономика позволит носить устройство значительно дольше, чем более дешевые аналоги. Конечно же, сочетание high end в позиционировании может вообще ничего не означать, но в нашем случае речь идёт об авторитетной компании, которая не позволит себе ударить в грязь лицом.


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

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

Конструкция и сборка


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



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



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

Эргономика и комфорт


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



Амбушюры очень плотно прилегают к ушам, при этом их давление не воспринимается как неприятное. Я спокойно провел в наушниках около 6 часов не снгимая и не испытывая дискомфорт, но у меня не самые чувствительные уши в мире. Люди восприимчивые к давлению амбушюр утверждают, что их вполне устраивает давление Beyerdynamic T5 (3rd Gen). Они утверждают, что могут провести в них более 3-х часов. При этом создается достаточная звукоизоляция внутри чашек и снаружи, что, по моему мнению, особенно важно, исходя из назначения модели.

Субъективная оценка и технические характеристики


Beyerdynamic вообще славится не очень ровным, исходя из линейности АЧХ (даже для наушников), но субъективно очень комфортным и выразительным звучанием. В основном, это обусловлено закрытой конструкцией и, отчасти, АЧХ используемых динамических головок. T5 (3rd gen) не стали исключением, их звук представляет собой типичный образчик потомственного АЧХ с бархатно выпяченными мидбасами и яркой выразительной не менее горбатой серединой. О неравномерности АЧХ можно судить по графику представленному crinacle.com:



Для оценки жанровости я использовал несколько треков 2cellos, записи хоровых произведений Альфреда Шнитке (по утверждениям источника, оцифрованные в хайрез с мастер. лент) и рип CD государственной капеллы под управлением Алмазова с записью-реконструкцией реквиема ре-минор Моцарта с аутентичными инструментами в Полоцком Софийском Соборе.

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

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

Основные данные из спецификации выглядят так:

  • Длина кабеля: 1,4 м (съемный)
  • Разъем: 3,5 мм (с переходником 6,3 мм)
  • Диапазон частот: 5 Гц 50 кГц
  • Номинальное сопротивление: 32 Ом
  • Максимальная мощность: 300 мВт
  • THD: менее 0,5 %
  • Вес: 360 г (без кабеля)

Вердикт


Характеристики, сборка и эргономика оправдывают статус наушников, как флагманов и в целом соответствуют тому, что обычно подразумевают под словом High End. Однако на предмет верности воспроизведения есть вопросы, которые будут возникать у любителей ровного мониторного звука, вроде меня. Мне очень сложно определить, на сколько их стоимость в $1000 объективна в силу того, что я их не покупал для себя и не использовал годами. Между тем, когда смотришь на них, берешь в руки и надеваешь на себя, возникает ощущение, что они дороги. Модель можно рекомендовать притязательным, не бедным, меломанам, которым необходимо закрытое акустическое оформление. Вопрос стоимости, пожалуй, самый скользкий при оценке электроники и в данном случае очень сложно сказать оправдают ли себя вложенные $999. Я изучил не один сторонний обзор, но среди преимуществ перед более бюджетными аналогами были указаны лишь некие субъективно определяемые авторами свойства звука. На мой взгляд у устройства достойный уровень, но я не готов сказать о том, что без раздумий отдам за него $999 и не стану сравнивать с другими.

Подробнее..

Компактная колонка Sony SRS-XB10 из линейки Extra Bass

14.06.2021 00:15:08 | Автор: admin

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

Привет!

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

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

Все перечисленные достоинства сочетает в себе Sony SRS-XB10 и именно о ней мы сегодня и поговорим.

Коротко о линейке Extra bass

Компания Sony выпустила целую линейку колонок, в которых присутствует технология Electro Bass Booster. Эта технология позволяет сбалансировать и выделить необходимые басы в любой песне. В этой линейке от Sony можно найти огромное разнообразие колонок, которые отличаются не только размерами, но и другими параметрами. Так, например, колонку XB10 можно всегда носить с собой в кармане или в рюкзаке, а с колонкой GTK-XB7 вы сможете почувствовать себя диджеем. В общем с акустическими параметрами у данной линейки проблем нет.

Распаковка

Колонку мы получаем в очень компактной коробке, где перечислен ряд её достоинств -

  • защита от влаги

  • зарядка микро-usb

  • 16 часов заряда от батареи

  • функция добавления второго динамика

  • колонка как спикерфон

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

Дизайн

Размеры колонки составляют всего 75х75х91 миллиметров, а её вес около 260 грамм. Такая колонка не занимает много места, поэтому её без труда можно брать с собой даже на простую прогулку. Она обладает цилиндрической формой, которая приятно и комфортно ощущается в руке.

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

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

Колонка оснащена специальной петелькой, которая может использоваться в качестве подставки. Это, конечно, мелочь, однако некоторым она может пригодиться.

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

Динамик располагается в верхней части колонки. Его размеры достигают 46 миллиметров. В нижней же части колонки имеется отверстие для выхода низкочастотных басов.

Особенности управления

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

Также на данном устройстве имеется возможность соединения с другой колонкой. Это позволяет создать стереоэффект. Для соединения колонок в пару имеется отдельная кнопка ADD.

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

Звук

Со звуком здесь всё отлично и это несколько не приуменьшение! Басы с помощью колонки получаются глубокими и насыщенными, она их не гасит даже на высоких частотах. Хрипов и шумов не наблюдается.

При прослушивании подкастов и аудиокниг голос диктора слышен просто великолепно.

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

Автономность

При постоянном использовании колонка может работать около 16 часов. Заряжается она при этом примерно 4 часа. Единственным минусом в данной ситуации является то, что на колонке отсутствует индикатор заряда, поэтому не совсем понятно насколько заряжена колонка.

Итоги

Sony SRS-XB10 - эта колонка принадлежит к категории на каждый день, за время её использования она практически всегда была при мне, и не потому что она была мне постоянно нужна, а скорее из за того что взяв, я сразу о ней забывал благодаря её компактности.

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

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

Подробнее..

Перевод Как сын водопроводчика сделал искусственное сердце

13.03.2021 18:22:01 | Автор: admin

Каждый год останавливаются миллионы сердец. Почему мы не можем их заменить?



image

Сердце от Bivacor содержит титановую камеру с ротором, который вращается в центре и посылает кровь в тело.

Дэниел Тиммс начал работать над своим искусственным сердцем в 2001 году, когда ему было двадцать два года. Он был аспирантом биомедицинской инженерии и жил со своими родителями в Брисбене, Австралия. Он искал тему для своей диссертации, когда его 50-летний отец, Гэри, перенес тяжелый сердечный приступ. Сперва врачи думали, что дело в клапане, но позднее оказалось, что у мужчины проблемы со всем сердцем. Сердечная недостаточность прогрессирующее заболевание, человек может жить годами, пока его сердце выходит из стория, Времени было мало. Тема для исследования появилась сама собой.

Гэри был водопроводчиком, а мать Дэниела, Карен, была лаборантом в средней школе. Их семья часто занималась экспериментами. В детстве Дэниел и его отец постоянно строили сложные системы фонтанов, прудов и водопадов на заднем дворе. Неудивительно, что теперь они вместе взялись за работу над сердцем. Они купили в строительном магазине шланги, трубы и клапаны, и их них построили грубую модель кровеносной системы. Тиммс начал изучить историю работы над искусственными сердцами. Первая имплантация человеку была сделана в 1969 году хирургом по имени Дентон Кули из Техасского института сердца в Хьюстоне. Пациент, Хаскелл Карп, находился на лечении в течение шестидесяти четырех часов большой успех, учитывая, что его сердце было вырезано из груди. Инженеры были уверены, что через несколько лет проблема будет решена.

image

Один из первых прототипов 60-х годов искусственного сердца от инженера Виллема Колфа.

Тем не менее, возникло множество проблем. Было сложно разработать небольшое устройство, способное биться тридцать пять миллионов раз в год, перекачивая по 9 000 литров крови в день на протяжении многих лет. В последующие десятилетия пациенты могли жить дни, месяцы и даже годы с различными моделями искусственных сердец, но качество их жизни зачастую было низким. Они были связаны трубками с большими машинами; они часто страдали от инсультов и инфекций; их новые сердца были слишком большими или имели части, которые изнашивались. Каждый год от болезней сердца умирают миллионы людей во всем мире, в то время как для трансплантации было доступно лишь несколько тысяч сердец. Как выяснил Тиммс, существующие решения могут лишь дать людям возможность дождаться искусственных сердец, которые могут так и не появиться. Постоянного искусственного сердца никогда не существовало.



Изучая проекты, Тиммс выяснил, что многие из них были разработаны в 60-е, 70-е и 80-е годы, Он считал, что существенно их улучшить будет несложно. Раньше большинство искусственных сердец делали из гибкого пластика: он мог бы сделать его из прочного титана. Насосы, как правило, приводились в действие пневматически, с помощью воздуха, проталкиваемого череез трубки Тиммс мог использовать для этого электромагнитный привод. Наиболее важно то, что если традиционные искусственные сердца пульсировали (они ритмично выдавливали кровь из искусственных желудочков), то в устройстве Тиммса она бы двигалась непрерывным потоком. Тиммс сделал примерный набросок на бумаге. Кровь шла в небольшую камеру с вращающимся металлическим диском в центре. Диск, как пропеллер, выталкивал кровь наружу в легкие и другие части тела. Это был умный и экономичный дизайн, который не подражал естественному сердцу, а переосмыслил его. Под эскизом Тиммс написал черт побери, да!

image

Дэниел с отцом сделали прототип в гараже. Он был сделан из прозрачного пластика и успешно перегонял воду через имитацию кровеносной системы, в которой крошечные шарики представляли клетки крови. Но возникла проблема в месте под вращающимся диском останавливались потоки и застревали шарики. Эта воронка очень опасна: кровяные клетки, которые скапливаются вместе, имеют тенденцию коагулировать, создавая сгустки, которые могут вызвать инсульты. По Skype Тиммс поговорил с исследователем из Японии, который работал над системами магнитной левитации, используемыми в высокоскоростных поездах. Они решили, что можно использовать более сильные магниты таким образом можно подвесить диск подальше от стенок сердца, чтобы кровь могла легче течь вокруг него. Такой магнитно-левитационный подход также решает проблему износа ни одна из частей больше не будет соприкасаться с другой.

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

image

Сегодня, более чем через полтора десятилетия спустя, офис Bivacor, компании Тиммса, находится в Серритосе, пригороде Лос-Анджелеса. Около дюжины инженеров работают в здании, окруженном пальмами и цветущей живой изгородью. В прошлом году, перед пандемией, Уилсон Ксе, двадцатитрехлетний инженер-биомеханик, стоял над лабораторным столом и орудовал стяжками, чтобы прикрепить новейшую версию сердца от Bivacor к модели системы кровообращения. Система, известная как петля, была значительно улучшена по сравнению с той, которую построили Тиммс и его отец. Сделанная из пластиковых трубок и высотой чуть больше метра, она напоминала модель американских горок. Система была наполнена водой, смешанной с сахаром, для имитации вязкости человеческой крови. В ней также использовались клапаны для имитации разных условий кровообращения: высокого и низкого давления, застоев и быстрых протоков. Сердце, прикрепленное к системе, было прочным и изготовленным в стиле стимпанка из черного и золотого титана. Четыре отверстия вели к аорте, полой вене, легочной артерии и легочной вене; кабель соединял его с блоком управления, размером со словарь. Этот кабель будет проходить через кожу в районе живота, людям будет необходимо постоянно носить блок управления с собой.

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

Сердце от Bivacor и человеческое сердце работают по разным принципам. Человеческое сердце имеет две стороны. Кровь сначала течет от меньшей, правой стороны к легким и обратно, насыщаясь кислородом. Затем она переходит на более крупную и мощную левую сторону, закачивающую кровь в тело. Сердце от Bivacor основано на комбинированной камере. Оно посылает кровь в двух направлениях с помощью вращающегося диска (ротора), имеющего две стороны разной формы (для создания необходимого уровня кровяного давления). Если сердце здорового взрослого человека бьется где-то от шестидесяти до ста раз в минуту, сердце от Bivacor вращается со скоростью от 1600 до 2400 оборотов в минуту.

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

Артериальное давление 100 на 70, торжествующе сказал Грейтрекс, касаясь своего запястья. Врач может взглянуть на это и сказать: У вас все хорошо! По данным Центров по контролю и профилактике заболеваний, примерно 6,2 миллиона американцев страдают от той или иной формы сердечной недостаточности, часто испытывая слабость, одышку, и неустойчивость. Такое искусственное сердце повернет время вспять.

Bivacor находится в переходной фазе. Компания до сих пор не продавала свои продукты и полностью зависит от венчурных фондов, бизнес-ангелов и государственных грантов. Ее сердца были имплантированы овцам и телятам они проживали месяцы, и иногда бегали на беговой дорожке. Компания готовится подать заявку в Управление по санитарному надзору за качеством пищевых продуктов и медикаментов (FDA) для получения разрешения на имплантацию человеку. Преодолеть порог между животными и людьми значит попасть в жесткую нормативно-правовую среду. На заре исследований искусственного сердца команда могла имплантировать устройство умирающему человеку в экстренном порядке в качестве последней попытки спасти его жизнь и посмотреть, как оно функционирует.

Специалисты по этике были обеспокоены, но прогресс был быстрым. Сегодня такие эксперименты запрещены: конструкция сердца должна быть зафиксирована и одобрена до начала клинических испытаний; испытания могут занять годы, и, если выяснится, что сердце недостаточно хорошо, процесс должен начаться заново. Bivacor в настоящее время решает, какие функции будут включены в клинические испытания их сердца. Ошибочное решение, скорее всего, приведет к потере компании. Почти наверняка второй попытки взойти на вершину не будет.

Тиммсу, коротко подстриженному и рыжеволосому, сейчас сорок два. Со времени своего пребывания в Брисбене он посвятил почти всю свою трудовую жизнь работе над сердцем, он ездил в Японию, Германию, Тайвань и Хьюстон, чтобы работать с разными хирургами и инженерами. Тихий и сосредоточенный, он весьма сдержан: он предпочитает не рассказывать людям, чем он зарабатывает на жизнь, чтобы последующий разговор не соблазнил его разрекламировать проект, все сроки которого давно сорваны. В джинсах, кроссовках и мятой классической рубашке, расстегнутой до третьей пуговицы, он провел меня в заднюю комнату, где полдюжины прототипов сердец непрерывно работали целых шестнадцать месяцев. Очень важно показать, что они никогда, никогда не останавливаются, сказал он сквозь гул движущейся воды. Сам Тиммс выглядел так, будто не спал как следует пару десятилетий.

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

Сидя на своем скрипучем стуле, Тиммс вспомнил, как в 2006 году вез своего отца в больницу. Операция по замене клапана помогла Гэри восстановить работу сердца, но только временно. У него тромб на механическом клапане, сказал Тиммс. Это поддерживало приток крови в левую часть его сердца и в легкие. Тиммс изобразил скопление наростов руками, показав путь от левой части груди до грудины и вверх по шее кровь накапливалась, как вода, изо всех сил пытаясь вытечь из канализации. Из-за этого появляются отеки, сказал он. Начинается кашель кровью, потому что она проходит через легочную мембрану.

Две недели спустя Тиммс был в Германии, встречался с инженерами по насосам, там он узнал, что его отцу стало хуже. Он сразу же улетел домой, но не успел поговорить с отцом в последний раз. Он был в реанимации с ИВЛ в трахее и всем таким, сказал Тиммс. Его смерть лишь укрепила мою решимость. Я подумал: Все. Мы сделаем это любой ценой.

Я спросил Тиммса, действительно ли два десятилетия назад он верил, что сможет изобрести искусственное сердце вовремя, чтобы спасти своего отца.

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

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

Ранние аппараты искусственного кровообращения были размером с рабочий стол и могли безопасно использоваться только в течение коротких интервалов; тем не менее, они сделали искусственное сердце желанным и возможным. То же касается и нескольких других тенденций. Больше людей доживали до шестидесяти и семидесяти, когда статистика сердечных заболеваний начинала ухудшаться: к середине века 40% смертей в Америке были вызваны болезнями сердца. Эти статистические данные вызвали серьезную озабоченность у политиков. В 1948 году Конгресс (группа стареющих мужчин) принял Национальный закон о сердце, положив начало десятилетнему расширению федерального финансирования кардиологических исследований.

Это была эра Аполлона, и искусственное сердце казалось прорывом. В 1964 году Национальные институты здравоохранения запустили Программу разработки искусственного сердца многомиллионный инженерно-технический проект, направленный на то, чтобы к концу десятилетия начать вживлять сердца в пациентов. По своей структуре он был похож на проект NASA. Он предоставлял гранты и контракты командам инженеров, которые соревновались в разработке лучшего клапана, насоса или источника питания; несколько команд безуспешно экспериментировали с сердцами, работающими на ядерной энергии. Журналы Time и Life посвятили этой теме свои обложки. Как пишет историк медицины Шелли МакКеллар в своей книге Artificial Hearts: The Allure and Ambivalence of a Controversial Medical Technology, большие надежды на имплантаты искусственных органов не обязательно отражают современную хирургическую реальность.

Истинная сложность задачи быстро стала очевидной. В больнице Маймонида в Бруклине над помпой начал работать Адриан Кантровиц хирург-изобретатель, который помог усовершенствовать кардиостимулятор и аппарат искусственного кровообращения. Он выбрал разумный подход: вместо замены сердца, он установил насос сразу за ним, чтобы компенсировать его слабость и, возможно, дать ему время на выздоровление. Насосы-прототипы Кантровица были испытаны на собаках, и к 1966 году он был готов имплантировать их людям. Первый пациент-человек, которому установили такой насос, умер после сильного кровотечения. Второй была 63-летняя прикованная к постели и больная диабетом женщина, перенесшая два сердечных приступа она прожила двенадцать дней, но умерла после серии инсультов.

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

Между тем, в Медицинском колледже Бейлора в Хьюстоне Майкл Дебейки и Дентон Кули, которые считались лучшими кардиохирургами в мире, справились с другим набором сложностей. Дебейки и Кули начинали как партнеры они выполняли огромное количество операций на сердце в невероятном темпе. Как пишет в своей книге Ticker: The Quest to Create an Artificial Heart журналистка Мими Шварц, позже эти двое рассорились. Кули оставил практику в 1960 году, а позже основал Техасский институт сердца. Тем временем Дебейки нанял Доминго Лиотту, аргентинского кардиохирурга-новатора, для работы с искусственным сердцем. К 1969 году Лиотта начал имплантировать прототипы телятам. Результаты были обескураживающими (из семи животных четверо умерли на операционном столе), и Дебейки подумал, что они пока не готовы к использованию на людях. Но Кули стремился продвинуть работу вперед. У него были пациенты, ожидающие донорского сердца не только в его больнице, но и в близлежащих мотелях. Не проинформировав Дебейки, он нанял Лиотту подрабатывать в Техасском институте сердца с расчетом использовать новый имплант.

Кули начал искать среди своих пациентов кандидата. Хаскелл Карп, 47-летний оценщик из Скоки, штат Иллинойс, тринадцать раз был госпитализирован из-за болезни сердца. У него были столь серьезные проблемы с одышкой, что иногда ему было тяжело расчесать волосы. Кули хотел бы посмотреть, можно ли восстановить сердце Карпа хирургическим путем, но Карп и его жена согласились, что, если такого варианта не будет, Кули мог бы имплантировать прототип Лиотты в надежде, что позже появится донорское сердце. Мистера Карпа отвезли в хирургическую палату, позже писал Кули в мемуарах. Он был бледен, вспотел и с трудом дышал. Его кровяное давление упало до половины нормального уровня. На полпути к операции стало очевидно, что его сердце не спасти.

Кули установил пневматическое устройство, соединенное шлангами, проходящими через бок Карпа, с консолью размером с холодильник. Желудочки сердца были сделаны из эластичного пластика с гибкой подкладкой из полиэстера; когда воздух проходил между слизистой оболочкой и пластиком, желудочки сокращались, а сердце работало. Устройство сохраняло жизнь Карпу шестьдесят четыре часа, пока его не заменило пересаженное сердце Барбары Эван, сорокалетней матери троих детей. Тем не менее, через тридцать два часа Карп умер от пневмонии и почечной недостаточности последствий серьезной болезни сердца, которая изначально сделала его кандидатом на рискованную процедуру. Кули расценил операцию как успешную. Но Дебейки, разгневанный кражей его искусственного сердца, сомневался, что его бывший партнер действовал этично. Был проведен ряд расследований, и Кули осудил Американский колледж хирургов. Наблюдатели расходились во мнениях относительно того, была ли операция героической или безрассудной, но в любом случае возникла новая проблема: к тому моменту, когда люди соглашались на искусственное сердце, они были настолько больны, что их было почти невозможно спасти.

Виллема Колффа, терапевта голландского происхождения, который изобрел диализ в 1940-х годах, это не остановило. Он не просто хотел максимально приблизиться к трансплантации, он хотел создать столь хорошее сердце, что его можно будет использовать для работы на постоянной основе. В лаборатории Колффа в Университете штата Юта врач-инженер по имени Клиффорд Кван-Гетт создал мягкий желудочек, не повреждающий структуру крови. Роберт Джарвик, талантливый биомедицинский инженер, присоединившийся к команде Университета Юты во время учебы в медицинской школе, неустанно совершенствовал конструкцию и производственный процесс, решая проблемы с гемосовместимостью. Когда Джарвик присоединился к команде в 1971, их прототип сердца мог поддерживать жизнь теленка всего десять дней. Впрочем, прогресс был устойчивым после десяти лет работы, теленок по имени Альфред Лорд Теннисон прожил двести шестьдесят восемь дней на том, что к тому времени называлось искусственным сердцем Джарвик-5.

image

В декабре 1982 года кардиохирург Уильям Де Вриз имплантировал модернизированную версию сердца (Джарвик-7) Барни Кларку, шестидесятилетнему дантисту. Сердце Кларка работало примерно на шестую часть от своего ресурса. Он чувствовал себя настолько плохо, что когда увидел телят и овец с сердцами Джарвика, сказал думаю, они чувствуют себя намного лучше, чем я сейчас. Операция привлекла международное внимание. Зачастую в центре внимания оказывались личности участников: Де Вриз, опытный и Линкольнский, Ярвик, молодой и красивый и Кларк, харизматичный обыватель, выполнявший боевые задачи во время Второй мировой войны. По телевидению транслировали видео семи с половиной часов операции. После нее репортеры посещали ежедневные брифинги для прессы, проводимые в кафетерии университета.

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

FDA дало Де Вризу разрешение на имплантацию семи искусственных сердец, и он взялся за дело. В 1984 году Де Вриз установил доработанную версию Джарвик-7 Уильяму Шредеру, 52-летнему армейскому экс-инспектору по вооружению. Перед операцией Шредер попросил исповедоваться. В итоге он прожил 620 дней, перебрался из больницы в квартиру, и время от времени использовал переносную насосную установку, работавшую три часа от аккумуляторов, чтобы выходить в корридор или ездить на машине с сыном. В телефонном разговоре с Рональдом Рейганом Шредер в шутку пожаловался на задержку проверок в системе социального обеспечения. Ощупывая грудь мужчины, репортеры удивлялись его сердцебиению оно казалось более мощным, чем у здорового человека. Тем не менее, Шредер страдал от множества недугов. В частности, от инсультов один из них был обширным. После того, как он скончался от хронических инфекций и проблем с легкими, его похоронили с надгробием с изображением двух сердец человеческого и Джарвик-7.

Сердца становились все лучше, как и хирургические технологии, хотя все эти улучшения не меняли основные контуры исследований. Де Вриз сделал еще несколько пересадок с переменным успехом. В Швеции мужчина, которому подарили Джарвик-7, очень хорошо себя чувствовал, ходил на длительные прогулки и ел в своих любимых ресторанах. Тем не менее, он умер через семь с половиной месяцев, что вызвало юридические дебаты о том, был ли он вообще жив. (Согласно шведским законам того времени, он умер в тот момент, когда его сердце остановилось). Врачи, пациенты и репортеры начали прохладнее относиться к этой теме. Уверенность в идее замены сердца начала угасать, и спонсоры задавались вопросом не лучше ли было бы потратить деньги на что-то другое? В чем смысл пересадки искусственного сердца на короткий срок? Хирурги пытались спасти своих пациентов или просто ставили на них эксперименты? Стоили ли того добавленные дни жизни?

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

Пару десятилетий назад, в начале последнего года обучения в колледже, я обнаружил, что живу рядом с двумя очаровательными женщинами: Сьюз из Монтаны и Джесс из Нью-Джерси. Мы подружились, и вскоре я узнал историю Джесс. В старшем классе средней школы у нее случился обширный сердечный приступ. После проведения последних обрядов она была спасена благодаря имплантации экспериментального сердечного насоса желудочкового вспомогательного устройства под названием HeartMate. Это устройство было наследником изобретений Кантровица из 60-х, но не было искусственным сердцем. HeartMate выполняло функции правой стороны сердца, левая оставалась на месте. Джесс была на выпускном вечере и сыграла главную роль в школьной постановке Как добиться успеха в бизнесе без особых усилий, будучи подключенной через провод к батарее в сумочке. Она научилась ходить с помощью протеза, потому что осложнение после сердечного приступа потребовало ампутации ее левой ноги выше колена. За несколько дней до окончания средней школы ей пересадили сердце девочки-подростка, погибшей в автокатастрофе. Вскоре после этого у нее развилась неходжкинская лимфома, вероятно, в результате иммунодепрессантов, которые она принимала для предотвращения отторжения. Когда я встретил Джесс, все это было позади. У нее не было батарейки, она вылечилась от рака, и она получала высшее образование.

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

Мне было любопытно встретиться с людьми, стоявшими за HeartMate, и я поехал в Техасский институт сердца в Хьюстоне. Он расположен недалеко от больницы Святого Луки, в похожем на город Техасском медицинском центре крупнейшем в мире медицинском комплексе, который посещают десять миллионов пациентов в год. Это Ватикан кардиологии. Там есть большой музей, посвященный истории кардиохирургии и сердечным насосам. Недалеко от того места, где Дентон Кули имплантировал первое искусственное сердце более пяти десятилетий назад, я сидел в конференц-зале без окон с двумя хирургами, О. Х. (Бадом) Фрейзером и Билли Коном. Кону, напряженному человеку в черной рубашке на пуговицах и джинсах, было пятьдесят девять; Фрейзеру, немногословному мужчине в спортивной куртке, брюках и очках черепаховой расцветки, было семьдесят девять. Оба они были в ковбойских сапогах. Вместе они имплантировали более тысячи устройств механической поддержки кровообращения. Сегодня большинству пациентов устанавливают желудочковые вспомогательные устройства, которые помогают левой части сердца или заменяют её. Но Кон и Фрейзер, как и Тиммс, входят в небольшую группу исследователей, которые все еще работают над созданием полной и постоянной замены сердца. В 2011 году они имплантировали два HeartMate II (один для левой стороны, один для правой) пятидесятипятилетнему мужчине, сердце которого полностью вышло из строя и было удалено. Эти устройства действовали как искусственное сердце и позволили мужчине прожить 5 недель.

Карьера Фрейзера началась в золотой век работы над искусственным сердцем и продолжилась в ее темные годы. В 1963 году он поступил в Медицинский колледж Бейлора и учился у Майкла Дебейки. Они присоединился к команде Кули в Техасе в 70-е и работал там в 80-е, когда открытие циклоспорина и иммунодепрессантов повысило выживаемость после трансплантаций. Убедившись в важности сердечных насосов как промежуточных устройств, он начал работать в подвальной лаборатории, где содержали свиней, овец, коров и коз. На протяжении десятилетий он сотрудничал с инженерами, чтобы протестировать и усовершенствовать почти все существующие в настоящее время сердечные насосы, включая оригинальный HeartMate. (Ранее в Серритосе я смотрел видео, на котором теленок с насосом от Bivacor гуляет по беговой дорожке в лаборатории Фрейзера. Фрейзер и Кон консультанты компании.)

Вот этот парень, О. Х. Фрейзер, сказал Кон, указывая на фотографию Фрейзера в залитом кровью халате, сделанную давным-давно на своем ноутбуке. Настоящая рок-звезда. Фрейзер усмехнулся.

Кон, излучавший мессианскую энергию, рассказал, что в 1986 году Фрейзер был первым хирургом, успешно применившим HeartMate в рамках клинических испытаний, которые проводились до 1993 года. После того как это устройство было одобрено FDA, оно было установлено примерно 4 тысячам пациентов. HeartMate имел форму пончика, был оснащен механическим насосом и одним из его основных нововведений было использование специально текстурированного пластика и титана, на которых клетки крови могли образовывать гладкую биологическую поверхность. Ранние версии приводились в действие воздухом, доставляемым через шланг. Более поздние модели, такие как та, что получила Джесс, были с мотором. Срок службы устройства составлял не более полутора лет, но этого было достаточно для пациентов, которые попали в больницу с синими губами и были близки к смерти. Нужно было поместить HeartMate в дыхательный аппарат, сделать большой разрез, вставить насос в брюшную полость, подключить его, и в конце операции губы становились розовыми. Проблемой было и остается отсутствие трансплантируемых сердец: Через полтора года HeartMate сломается, и вам лучше найти донорское сердце за это время, иначе эти люди умрут.

Чтобы решить эту проблему, Фрейзер начал сотрудничать с Abiomed, компанией по производству сердечных насосов из Массачусетса, над созданием искусственного сердца следующего поколения AbioCor. Это искусственное сердце было создано в начале девяностых. В некоторых отношениях оно было традиционным (в нем две камеры, как в настоящем сердце), но в остальном это очень футуристическое устройство. Из тела не выходили воздушные шланги или электрические кабели. AbioCor абсолютно автономный имплант, который использует циркулирующую гидравлическую жидкость для сжатия желудочков. AbioCor питается от аккумулятора, который можно заряжать через кожу без проводов. Теоретически, с ним можно плавать.

Супер, супер амбициозно, сказал Кон, открывая диаграмму. На это потратили четверть миллиарда долларов. Несколько сотен животных, причем половину операций Бад и его команда провели здесь. В 2001 и 2002 годах сердца установили 14 пациентам. Именно тогда амбициозные планы начали рушиться. Через 9 месяцев все они, за исключением четырех, умерли от осложнений или из-за сбоя устройства, вспоминает Кон.

FDA дало Abiomed разрешение на имплантацию еще 60 устройств, но всем было ясно, что их нужно обновить, а затем опять получить разрешения это длительный процесс, взяться за который никому не хватало духа. Abiomed сдались, сказал Кон. Они сказали: Это слишком сложно!. Проблема заключалась в том, что сердце было настолько большим, что помещалось только в грудных клетках самых крупных пациентов мужского пола.

Знаешь, твое сердце бьется сто тысяч раз в день, протянул Фрейзер.

Тридцать пять миллионов раз в год, сказал Кон.

Учитывая этот факт, удивительно, что оно продержалось столько времени, сказал Фрейзер.

На протяжении восьмидесятых и девяностых годов, даже когда он работал над HeartMate и AbioCor, Фрейзер утверждал, что инженерам следует перейти от конструкций с пульсирующими насосами к конструкциям, основанным на более простом механическом принципе непрерывного потока именно на нем основано решение Bivacor. Некоторые исследователи утверждали, что сердечно-сосудистая система может выиграть от пульса: есть свидетельства того, что стенки кровеносных сосудов расширяются в ответ на учащенное сердцебиение. Но Фрейзер пришел к выводу, что, несмотря на все преимущества пульсации, они перевешиваются прочностью и простотой. Он начал работать над двумя проектами с непрерывным потоком параллельно: над одним с кардиологом Ричардом Уэмплером, и другим с Робертом Джарвиком. Они имплантировали искусственные сердца животным, а затем извлекали, разбирали и анализировали как они работают. К двухтысячным эти устройства перешли в эксплуатацию под названиями Джарвик 2000 и HeartMate II соответственно.

image

Кон открыл на своем ноутбуке схему HeartMate II. По сути, это узкая трубка со штопором. Когда винт вращается между двумя подшипниками, он работает как стационарный пропеллер, непрерывно выталкивая кровь из сердца в аорту над ним. (В сельском хозяйстве такая же конструкция называется винтом Архимеда и используется для перекачивания воды)

Кон указал на винт: Вот движущаяся часть, подвешенная на рубиновых подшипниках. Люди говорили: Нельзя использовать подшипники в крови. Оказалось, что можно! Через них проходит достаточно крови, чтобы они оставались чистыми. Сгустки все еще остаются проблемой, равно как и инфекции. Тем не менее в настоящее время, более тысячи человек каждый год время получают HeartMate II или аналогичные устройства, и живут с ними, продвигаясь вверх в списках очереди на трансплантацию. HeartMate II сохранял жизнь Дика Чейни с 2010 по 2012 год, пока ему не сделали пересадку.

Летом 2019 года я получил сообщение от Джесс. Я недавно отпраздновала 20-летие трансплантации сердца, написала она. Но пересаженное сердце работает не так долго, как родное. Я этого не знал. Я предполагал, что ее трансплантат был постоянным. По сути, её одолженное сердце выходило из строя. Она задыхалась и однажды ночью чуть не упала в обморок, когда шла домой в свою квартиру. Теперь она вернулась в больницу, ожидая второго сердца. Это могут быть недели, месяцы или (что менее вероятно) его пересадят завтра, написала она. Пожалуйста, присылайте что-то приятное.

Я посещал Джесс в отделении интенсивной терапии, где мы говорили о ресторанах, карьере и телешоу. Мы посмотрели несколько фотографий моего сына, которому было около года. Я собирался снова приехать, когда она умерла.

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

Недавно я был на дне рождения парня, которому сделал пересадку тридцать лет назад, сказал Фрейзер. Но такое бывает очень, очень, очень редко. Всего порядка 5% пациентов, перенесших пересадку сердца, проживают еще 30 лет. Искусственные помпы, представленные на рынке, считаются мост-терапией, а пересадка сердца это терапия целевого назначения. Впрочем, если вы проживете достаточно долго, трансплантаты тоже будут просто мостами.

Я спросил Фрейзера и Кона, что они думают обо всех людях, которые умерли во время или после использования их устройств задерживались ли они на этом свете и как они жили.

Мученики, сказал Кон. Они цеплялись за жизнь. Технологии, возможно, и не было, но она наверняка откладывала их последний вздох. Многие из них проводили годы со своими близкими, делая то, что им нравилось. Некоторые попадали в отделение интенсивной терапии, проводили там шесть недель и умирали. Оглядываясь назад, иногда кажется, что лучше было просто позволить им уйти. Но никогда не знаешь! Это игра со статистикой, и они были готовы на нее ради еще пары дней жизни. И каждый раз это помогало нам продвинуться.

Я много работал с детьми, больными лейкемией, когда был студентом, сказал Фрейзер. Все они погибли. Врачи детского отделения в Техасе хотели бросать работу

Все потому что вы пытали их этими ядами, отметил Кон.

Они выглядели ужасно, сказал Фрейзер. Их животы распухали, они теряли волосы, это пугало других детей. Но врачи продолжали все это делать. Думаю, это помогло мне в дальнейшем, потому что первые 22 человека из 70, кому мы устанавливали первые искусственные желудочки, умерли.

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

У нас здесь свиньи, сказал Фрейзер, открывая дверь. Пахло животными, и в поле зрения появилась большая розовая сопящая свинья.

У свиней сердце больше всего похоже на человеческое, сказал он, закрывая дверь. Он указал в коридор: Козы. Я не люблю работать с козами. Они слишком умные!. Он посмеялся. Они смотрят на тебя.

Мы прошли вглубь лаборатории. В застеленном ковром конференц-зале на витрине лежали несколько дюжин искусственных сердец и сердечных насосов почти музей всей этой области. То, что посередине, это AbioCor, сказал Фрейзер, указывая на скрученный кусок металла и пластика в форме сердца. Это старый Джарвик-7: два желто-бежевых желудочка с выходящими трубками. Это HeartMate II: серый металлический цилиндр с белыми трубками на обоих концах, похожий на что-то, что можно найти под раковиной. На обложке журнала Life за сентябрь 1981 года в рамке на стене говорилось: Создано искусственное сердце.

Фрейзер указал на большой металлический насос и на выступающую из него белую трубку длинный патрубок, сказал он. Пока его не заменили, устройство было обречено на неудачу. Небольшие изменения вносятся итеративно, а их эффекты раскрываются только после смерти. Это было изобретение в замедленной съемке.

image

Проект AbioCor был отменен. До конца работы над Bivacor еще много лет. Сегодня единственная компания, производящая и продающая искусственные сердца, которые имплантируются людям, это SynCardia Systems из Тусона, штат Аризона. Компания была создана в рамках спасательной миссии. Symbion, компания из Юты, которую помогал основать Роберт Джарвик, лишилась сертификации на Джарвик-7 в 1990 году из проблем с контролем качества. Технология была выкуплена другой фирмой, проводившей клинические испытания с улучшенной версией устройства, но у нее в 2001 году закончилось финансирование. Какое-то время казалось, что технология просто исчезнет. Но два кардиохирурга и биоинженер вместе сколотили венчурный капитал, чтобы выкупить права на систему. Они переименовали устройство в SynCardia Total Artificial Heart, или T.A.H. Компания, которая сейчас базируется в нескольких зданиях, окружающих песчаную автостоянку, продает около сотни сердец в год, все они произошли от старинного Джарвик-7, работавшего на воздухе. Несмотря на то, что SynCardia удалось создать команду хирургов, способных установить сердца компании, она работает очень слабо. Недавно компания прошла по 11 главе Кодекса о банкротстве и была выкуплена новыми инвесторами. Они справились с пандемией, приведшей к отмене операций по всей стране, посредством производства и продажи антисептика для рук.

Вместе с Карен Штамм, программным директором SynCardia, и инженером Мэттом Шустером, я наблюдал через окно, как техник в чистой комнате собирал одно из сердец. Ключ к созданию искусственного сердца это материал, который мы используем, сказал Шустер. Сегментированный полиуретановый раствор. Мы называем его спазз от S.P.U.S.. Штамм рассмеялась. Мы производим этот материал здесь, в кампусе, продолжил Шустер. Это наша собственная запатентованная смесь. Когда она выходит из производственного оборудования, она похожа на сок или густой мед. Используя зубочистку, техник осторожно нанес слои формованного меда. Полупрозрачное нечто оказалось поверх другого полупрозрачного чего-то. Процесс сборки занимает две с половиной недели.

Мы прошли через лабораторию, посвященную анализу эксплантатов. Если мы получаем сердце назад, мы разбираем и осматриваем его, сказал Шустер. Мы попали в другую комнату, заполненную несколькими десятками резервуаров с водой на полках. Внутри каждого резервуара билось сердце. Рядом с резервуарами находились воздушные насосы, или приводы. Звук в комнате был оглушительным, быстрым и громким: бах-бах-бах, а внутри него можно было расслышать механическое цоканье, как от пишущей машинки. Звуки повторялись дважды в секунду в ритме производства, как если бы мы были на фабрике. Здесь мы и проводим наши долгосрочные исследования, кричала Штамм через шум. С одной стороны находились сердца на 50 кубических сантиметров (их ставят небольшим пациентам), а с другой на 70 (их ставят пациентам покрупнее). Вот приводы, от которых идет механический звук, сказала Штамм, указывая на механический насос, похожий на коробку для завтрака. Он был соединен воздушной трубкой с сердцем внутри резервуара. Когда вы слышите щелчок это срабатывает клапан внутри сердца.

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

Я спросил как это сердце звучит, когда оно установлено в человека.

Намного тише, сказала Штамм. Но его слышно. Я слышала истории, в которых пациенты говорят, что когда они открывают рот, другие люди слышат щелчки. Она сказала мне, что некоторые пациенты сначала не могли терпеть шум. Но потом, по ее словам, они не могли спать без щелкающих звуков.

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

Через дверной проем я увидел гигантскую, изношенную машину, примерно в 3 метра высотой. Она была одновременно похожа на нефтяную вышку и KitchenAid. Спазз-реактор, сказал Трой Виллазон, менеджер по производству. Он из начала 60-х. SynCardia приобрела машину в начале XX века, чтобы обеспечить бесперебойную поставку материала. Это оборудование видело почти всю историю развитию спазза, сказал Виллазон. Некоторое время мы размышляли использовалась ли эта самая машина для создания сердец Джарвика? Вполне возможно, сказал Шустер.

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

Одна из самых больших проблем, с которой сталкивается SynCardia, это устаревание. Джарвик-7, на котором основано сердце SynCardia, был разработан почти сорок лет назад. Первоначальным лицензиям компании уже несколько десятков лет. Сегодня для изменения любой отдельной части болта, клапана, резистора может потребоваться получение новых лицензий. Когда поставщики уходят из бизнеса или обновляют свои предложения, инженерам SynCardia приходится искать, тестировать и затем получать разрешения на замену компонентов. Компания живет в страхе перед фатальной неисправностью в спаз-реакторе: создание и утверждение нового реактора может занять год, в результате чего потенциальные новые пациенты останутся без сердец. Обслуживание устаревшего устройства стоит дорого. Даже если мы не улучшаем или не меняем его, нам просто нужно продолжать производить том же самый материал люди этого не осознают, сказал Шустер. Я работал в аэрокосмической отрасли и могу вам сказать, что зачастую легче внести серьезные изменения в аэрокосмические проекты, чем что-то изменить в искусственном сердце. Я представил, с какой внимательностью потенциальные пациенты отслеживают взлеты и падения SynCardia.

В Соединенных Штатах менее двадцати больниц, в которых хирургов обучили проводить установку сердец. Это узкий рынок, сказал мне Дон Уэббер, генеральный директор компании. Он достал телефон и открыл таблицу, в которой перечислялись все пациенты-кандидаты на сердца на тот момент. Мы получаем списки каждый день, пояснил он. Мы получаем телефонный звонок, текстовое или электронное письмо, в котором говорится: У нас может быть пациент. На экране телефона пробегают разноцветные строчки с данными пациентов.

SynCardia сталкивается с той же проблемой, с которой Кули столкнулся в шестидесятые годы: вы должны быть очень больны, чтобы задуматься о том, чтобы вырезать свое сердце из груди, но если вы будете ждать слишком долго и заболеете, вас уже не удастся спасти. Бывают такие случаи, сказал Уэббер с тревогой в голосе. Вы видите человека в списке этой недели, вы видите его в списке в конце недели, вы видите его в списке на следующей неделе. Он просто ждет, ждет и ждет. Чем дольше пациент ждет, тем меньше вероятность, что он выживет после имплантации искусственного сердца и любой последующей трансплантации. Это непростое решение, сказал Уэббер. В команде есть несколько человек хирурги, кардиологи, госпиталисты, и все они должны согласиться.

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

Искусственные сердца сталкиваются с уникальными задачами. Только те, кто сталкивается с неминуемой смертью, готовы решиться на пересадку сегодняшних моделей. И все же почти шестьсот шестьдесят тысяч американцев умирают от болезней сердца ежегодно это число погибших на уровне пандемии, хотя мы не говорим о чрезвычайной ситуации. Все большее число людей живет с больным сердцем и страдает от последствий этих болезней. Чтобы полностью реализовать свой потенциал, искусственные сердца должны стать достаточно хорошими, чтобы люди действительно захотели их использовать. Они должны стать предпочтительнее не смерти, а сердечной недостаточности, как замена тазобедренного сустава предпочтительнее болезням тазобедренного сустава. Пока они не достигнут более широкого распространения, они останутся нишевым продуктом и поэтому будут недоступны для многих людей, которые в них нуждаются. Еще мгновение: Уэббер пролистал свой список. Я задавался вопросом, должна ли была Джесс участвовать в этом. Затем он убрал телефон.

Инженеры SynCardia обязаны поддерживать устаревшую технологию, но они также понимают, что ее необходимо развивать. Перед тем, как я уехал из Тусона, Виллазон рассказал мне о сердце следующего поколения, которое разрабатывала SynCardia. В этом сердце будет использоваться новый насосный двигатель с питанием от батареи, которую можно полностью разместить внутри пациента. Как и сердце от AbioCor, оно будет беспроводным, без внешнего привода. В то же время оно будет перекачивать кровь, используя уже существующие желудочки на основе спазза, которые уже были одобрены FDA. Подключив это новое устройство к старому (создав гибридную модель), SynCardia надеется быстро разработать и начать продажи этого сердца, чтобы привлечь своих существующих клиентов. По словам Виллазона, новое сердце может стать надежным и постоянным имплантом. Его могут использовать люди, находящиеся подальше от пропасти.

Я не Бад Фрейзер, но я видел много искусственных сердец, и устройство Виллазона поразило меня своей простотой и оригинальностью. И все же инженеры SynCardia были заняты производством, продажей и обновлением нынешнего сердца, спасая более сотни жизней в год. Они изо всех сил пытались найти время, чтобы запустить новое сердце. Они напечатали несколько 3D прототипов, разослали по магазинам спецификации и общались с инвесторами.

Команда Bivacor из Серритоса совершенно не связана с прошлым всех этих технологий. Когда я приехал, все собирались в Тай на еженедельный командный обед. Это была большая группа для ресторана, но маленькая для разработки конструкции искусственного сердца. Тиммс сел в конце стола рядом с инженером-электриком Николасом Грейтрексом

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

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

Ник хочет жить с человеком, которому достанется первое сердце, сказал Тиммс.

Ага, сказал Грейтрекс.

Если что-то пойдет не так, мы можем исправить это сразу, сказал Тиммс.

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

Если бы я мог, я бы просто продолжал работать над этим, этим и этим, сказал Грейтрекс. Я бы никогда его не имплантировал. Люди смеялись, но он точно не шутил.

Если пациенты, нуждающиеся в искусственном сердце, могут слишком долго ждать, прежде чем решиться, инженеры, которые их проектируют, сталкиваются с аналогичной проблемой. Если имплантировать его слишком рано, то устройство может оказаться несовершенным. Если гнаться за совершенством, устройство может не покинуть лабораторию. Когда мы вернулись в офис, я поговорил с Тиммсом о беспроводных сердцах. Инвесторы предложили дать компании больше денег, если она сразу же разработает беспроводное перезаряжаемое сердце. Стиснув зубы, Тиммс решил отказаться от финансирования, оставив беспроводную зарядку для версии 2.0. Мы бы предпочли оставить деньги, чтобы убедиться, что устройство будет правильно работать в организме, сказал он. Если мы проведем испытания и возьмемся за слишком многое сразу, мы потерпим крах. Он решил, что это было самое важное дизайнерское решение, которое приняла команда. Если удаление проводов воспрепятствует более широкому распространению сердца, это может положить конец всем усилиям. Я так ненавижу подключение привода, сказал Тиммс. Я имею в виду, что эту штуку нужно убрать. Но не сейчас.

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

image

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



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

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

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




image

Вакансии
НПП ИТЭЛМА всегда рада молодым специалистам, выпускникам автомобильных, технических вузов, а также физико-математических факультетов любых других высших учебных заведений.

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

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

Если вам интересно попробовать свои силы в решении тех задач, которые у нас есть, пишите в личку.



О компании ИТЭЛМА
Мы большая компания-разработчик automotive компонентов. В компании трудится около 2500 сотрудников, в том числе 650 инженеров.

Мы, пожалуй, самый сильный в России центр компетенций по разработке автомобильной электроники. Сейчас активно растем и открыли много вакансий (порядка 30, в том числе в регионах), таких как инженер-программист, инженер-конструктор, ведущий инженер-разработчик (DSP-программист) и др.

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

Подробнее..

Sousveillance наблюдение за наблюдающим

08.05.2021 14:13:54 | Автор: admin

Чувствуете ли вы себя комфортно, когда вас снимают на камеру? Вряд ли, если не считать случаи, когда вы участвуете в съёмках ток-шоу или находитесь на дне рождения (свадьбе, корпоративе и т.п.). Если во время разговора собеседник включает камеру на смартфоне, люди рефлекторно становятся осторожнее и закрываются. Даже когда вы хорошо знаете собеседника и знаете причины видеосъёмки, вы все равно чувствуете себя открытым и незащищённым. Как рыбка в аквариуме, или приведу более грубое сравнение как бактерия под микроскопом, когда вы находитесь под постоянным видеонаблюдением: со стороны частной компании, на которую вы работаете, госучреждений, банков или любых других организаций.
Видеонаблюдение используется правительствами для сбора разведданных, предотвращения преступлений, слежки за порядком или расследования преступлений. Оно также используется и преступными организациями для планирования и совершения преступлений, а также частными предприятиями для сбора информации о клиентах, конкурентах или поставщиках.

Стив Манн предлагает перестать пассивно соглашаться быть просто наблюдаемым, и принять более активное участие и начать обратное наблюдение. Когда Большой Брат следит за тобой, начни следить за ним в ответ.

Отец носимых компьютеров


Профессор Университета Торонто Стив Манн считается человеком с самым большим опытом в ношении видеозаписывающих устройств. На протяжении четырёх десятилетий он носит различные варианты цифровых очков. Ещё будучи студентом Массачусетского технологического университета, где он был в числе инициаторов проекта носимых компьютерных устройств, Манн редко расставался со своей версией цифровых очков, постоянно экспериментируя с различными способами их применения, включая прямую трансляцию в интернете всего, что он видел (во времена, когда примеры живой трансляции в сети можно было пересчитать по пальцам). Кроме того, он придумал термин sousveillance (сувейлэнс), которым обозначает свои видео- и аудиозаписи, сделанные на территории организаций, оборудованных камерами видеонаблюдения.



Сувейлэнс является обратным наблюдением, по сравнению с сёрвейлэнс (surveillance). Surveillance это наблюдение с целью сбора информации с помощью электронного оборудования, такого как система видеонаблюдения (Сlosed Circuit Television, CCTV), или перехват информации, передаваемой в электронном виде, такой как Интернет-трафик. Он также может включать такие технические методы, как сбор разведданных и перехват почты. Правовые, этические и политические вопросы, связанные с личным надзором, в значительной степени еще предстоит изучить, но есть близкие параллели с социальными и правовыми нормами, связанными с записью телефонных разговоров. Когда одна или несколько сторон в разговоре записывают его, это и есть sousveillance, тогда как запись разговора лицом, не являющимся стороной в разговоре (например, тюремным охранником, нарушающим отношения между клиентом и адвокатом), это называется surveillance.

Стив Манн пропагандирует использование носимых компьютерных устройств для расширения собственных возможностей. Он считает, что постоянное включённое устройство позволяет человеку получать информацию, которая может очень пригодиться в будущем, причём даже несколько минут спустя. Чтобы продемонстрировать это, он экспериментирует с различными методами расширения человеческих чувств и памяти с помощью носимых устройств: например, он детализирует в увеличенном масштабе далеко расположенные объекты или проигрывает на медленной скорости видеозаписи, информацию в которых человеческий глаз физически не может распознать в режиме реального времени.

Но как вы отнесётесь к человеку, который все время ведёт видеосъёмку? Вы попросите его прекратить это или вы перестанете с ним общаться и отойдете в сторону? А если это ваш клиент и он ведёт съёмку для протокола? Может вам стоит снимать его в ответ? А вы стали бы снимать, допустим сотрудника полиции, который превысил свои полномочия? Одна из вещей, которая пролила свет на обратное наблюдение, это реакция охранников на электрические видящие устройства и аналогичные методы наблюдения. Поначалу казалось, что чем больше камер было в заведении, тем больше охранникам не нравилось использование электрических зрительных устройств, таких как очки EyeTap. Именно благодаря простому ношению электрических видящих устройств в качестве пассивного наблюдателя было обнаружено, что наблюдение и надзор могут вызвать конфликты, а иногда и конфронтацию. Это побудило некоторых исследователей выяснить, почему лица, осуществляющие надзор, с подозрением относятся к sousveillance, и, таким образом, определили понятие обратного наблюдения как новый и интересный аспект исследований в области sousveillance.



Стив Манн много раз встречал непонимание и негодование со стороны людей за то что постоянно ведет видеосъёмку: Я ношу систему компьютерного зрения в течении 34 лет и со мной всегда есть сопроводительное письмо от семейного врача. А также при мне всегда есть документация по этой системе, когда я путешествую Вечером 1 июля 2012 года мы с женой и детьми пошли в Макдональдс на авеню Елисейские поля, 140, Париж, Франция, Сотрудник Макдональдса напал на меня Он сердито схватил мои очки и попытался снять их с моей головы. Я показал ему письмо от врача и документы, которые я привёз с собой. Затем он [] привел меня к двум другим людям. После того, как все трое прочитали письмо и документацию, [он] сердито скомкал и порвал письмо моего врача. Вытолкнул меня за дверь на улицу.

На следующий день этот инцидент был опубликован на Reddit под заголовком Стив Манн, отец носимых компьютеров, подвергся физическому насилию со стороны McDonald's за ношение Digital Eye Glass, быстро заняв первое место на сайте. Последующее освещение в СМИ привело к тому, что Манн смог связаться с главой отдела обслуживания клиентов McDonald's, но получил только отказ, а не извинения. Манн запросил обзор записей видеонаблюдения с множества камер наблюдения в этом заведении McDonald's, но не получил дальнейших ответов от McDonald's. Впоследствии Манн отправил гораздо более короткое письмо на французском языке главе отдела обслуживания клиентов McDonald's, но также не получил ответа.



В результате этого инцидента, вместо того чтобы возбуждать судебный иск против McDonald's, Манн объединился с IEEE (крупнейшим в мире техническим сообществом), ACLU и некоторыми лидерами отрасли, такими как Пит Вассел, чтобы предложить закон Манна-Васселла в законодательный орган Нью-Йорка. Цель этой работы создать правовой, политический и социальный климат для противодействия действиям таких компаний, как McDonald's, которые могут оказать сдерживающее влияние на исследования и использование технологий дополненной реальности в повседневной жизни. В этом контексте Манн также формализовал концепцию McVeillance, как помещения людей под наблюдение, которым запрещено использовать свои собственные камеры. Точнее, McVeillance определялось как отношение (линейно) или разницы (логарифмически) между surveillance и sousveillance.

Применение обратного наблюдения


Есть ещё и обратный surveillance это подвид sousveillance как форма дознания или правовая защита, включающая запись, мониторинг и анализ систем наблюдения, сторонников наблюдения и также записи авторитетных деятелей и их действий. Обратный surveillance обычно представляет собой деятельность, предпринимаемую теми, кто обычно является объектом наблюдения, и, таким образом, может рассматриваться как форма этнографического или этнометодологического исследования (т.е. анализ обследуемых с точки зрения участника наблюдаемого общества). Sousveillance обычно является записью от первого лица, не обязательно вовлекая какую-либо конкретную политическую повестку дня, тогда как обратный (инверсивный) surveillance это форма наблюдения, которая обычно направлена на сбор данных для анализа и изучения государственной машины или корпораций (например, действия полиции или протестующих на митинге протеста). Sousveillance не обязательно должен быть против surveillance: оно может использоваться для противодействия силам наблюдения, или же может использоваться вместе с наблюдением для создания более полного наблюдения.

Более общая концепция sousveillance выходит за рамки просто обратного наблюдения и связанной с ним политической системы двадцатого века мы против них, когда граждане фотографируют полицейских, покупатели фотографируют владельцев магазинов, а пассажиры фотографируют водителей такси. Говард Рейнгольд в своей книге Умные мобы заметил, что это похоже на концепцию пешехода-водителя, то есть это роли, которые многие из нас время от времени принимают. Многие аспекты sousveillance были рассмотрены в рамках общей категории взаимной ответственности в научно-популярной книге Дэвида Брина Прозрачное общество 1997 года. Первый международный семинар по инверсному слежению (International Workshop on Inverse Surveillance, IWIS) состоялся в 2004 году под председательством доктора Джима Геммелла (MyLifeBits), Джой Ито, Анастасиоса Венетсанопулоса и Стива Манна.

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

Область исследований, получившая развитие в IWIS, заключалась в установлении равновесия между sousveillance и surveillance. Современная теория эквивалентного наблюдения (Equiveillance) утверждает, что обратное наблюдение в некоторой степени снижает или устраняет необходимость в наблюдении. Преступления, например, могут быть раскрыты путем сотрудничества между гражданами, а не только путем наблюдения за гражданами сверху. Но это не так однозначно, как предполагает эта дихотомия. В частности, наблюдение граждан за своими соседями не есть хорошо.



Примеры гражданских организаций, занимающихся sousveillance:

  • Copwatch это сеть американских и канадских добровольческих организаций, которые следят за полицией. Группы Copwatch обычно занимаются мониторингом полиции, записывают на видео действия полиции и рассказывают общественности о неправомерных действиях полиции.
  • Dagbladet Information датская ежедневная газета и интернет-издание, анализирующее расположение камер наблюдения, поощряя читателей использовать бесплатное приложение для Android и iOS для фотографирования и геолокации камер.

И что нам это должно дать?


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

Но видеонаблюдение все же не панацея. Без ответственной и адекватной реакции на результаты съёмок толку не будет, мы получим лишь кучу записей, которые войдут в тематическую подборку роликов на YouTube с авариями, драками и т.д. Снять правонарушение на камеру это только начало, необходимо, чтобы и социум отреагировал на это.
К сожалению, в Кыргызстане и в других странах Средней Азии до сих пор практикуется похищение невест. Этот средневековый обычай по законам Кыргызской республики уголовно наказуем, но молодых ребят это не останавливает. 5-апреля 2021 года в городе Бишкек была похищена 27-летняя девушка своим бывшим ухажером. 7-апреля их обоих нашли мертвыми: парень убил её и покончил с собой. Камеры наблюдения зафиксировали момент похищения, в кадре были номер машины, в котором девушку похитили. Но из-за халатности правоохранительных органов поиски не были произведены. Впоследствии 44 сотрудника внутренних дел были уволены, но девушку к жизни это не вернуло. Это говорит о том, что наличие записи это ещё не всё, надо ещё своевременно принимать меры. И есть множество примеров того, как случайные прохожие или водители становились свидетелями похищений, они снимали это на видео (позже это станет доказательством в суде) и вмешивались, чтобы спасти человека от похитителей.

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

Sousveillance может изменить жизнь к лучшему и отдельно взятого человека. Начав с отслеживания всего, что снимает ваша камера, можно найти незамеченные детали вашего своего маленького мира. Сосредоточение внимания на себе и своем окружении возможно поможет вам соединиться с самим собой и окружающим большим миром.





На правах рекламы


Нужен сервер для хранения файлов или тех же видеофайлов с камер наблюдения? Эпичные серверы это надёжные серверы на Windows или Linux с мощными процессорами семейства AMD EPYC для абсолютно любых целей. Попробуйте как можно быстрее!

Подписывайтесь на наш чат в Telegram.

Подробнее..

Умные пайетки (часть 2)

03.01.2021 22:21:10 | Автор: admin

Вступление

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

Концепция получила название Умные пайетки - электромеханические цветовоспроизводящие устройства с перекидывающимися лепестками разного цвета.

Сегодня расскажу о том как создавался новый прототип пайеток и каких результатов удалось добиться.

Гибкая основа

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

Существует два способа придать матрице из пайеток свойства ткани:

1. Разместить пайетки на тканевой (гибкой) основе.

2. Соединить пайетки между собой при помощи шарниров.

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

  • низкая механическая прочность. Соединить между собой пару-тройку элементов - не проблема, но когда их количество достигнет сотни и тысячи? На отдельные шарниры нагрузка будет значительной;

  • сложность конструкции шарниров и как следствие сложность в производстве и сборке;

  • дополнительные механические элементы - дополнительный вес.

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

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

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

  • сохранение эластичности и гибкости материала подложки;

  • отсутствует проблема позиционирования отдельных элементов матрицы друг относительно друга. Вообще, имея достаточно большой принтер можно сразу штамповать матрицы площадью по 1м^2;

  • механическая прочность матрицы будет зависеть от механической прочности материала - подложки.

3Д печать на тканевой сетке

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

Как будем печатать:

1. Печатаем первые несколько слоёв пайетки.

2. Отводим экструдер наверх.

3. Кладём подложку и фиксируем её.

4. Продолжаем печатать поверх подложки оставшуюся часть пайетки.

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

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

Мы попробовали несколько вариантов, но природа всё продумала за нас, оптимальной формой, обеспечивающей гибкость во всех направлениях оказались правильные шестиугольники (соты):

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

Новая схемотехника

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

В качестве контроллера был выбрал ATtiny13 в корпусе QFN10. Его вычислительной мощности вполне должно хватить, чтобы реализовать нехитрый алгоритм приёма и передачи данных.

Кроме того, в режиме сна ATtiny13 потребляет около 1мкА.

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

В конце концов был найден низковольтный драйвер шаговых двигателей STSPIN220, производимый фирмой STMicroelectronics.

  • Напряжение питания силовой части от 1.8 до 10В - то что нужно для работы от аккумулятора!

  • Максимальный ток 1.3А. Неплохо для малыша в корпусе QFN16.

  • Имеется режим пониженного энергопотребления, когда микросхема потребляет меньше 10нА.

  • Имеется поддержка всех возможных режимов микрошага, вплоть до 1/256.

  • Для управления требуется всего три вывода DIR (направления вращения шаговика), SCTK (один такт на входе - один шаг двигателя), RESET (переход в режим пониженного энергопотребления).

Принципиальная схема новой пайетки:

Несколько пояснений по поводу обвязки микросхемы - драйвера.

Вывод RESET управляет режимом пониженного энергопотреления (1 - работа, 0 - сон).

Вывод REF используется для задания максимального тока шаговых двигателей. На него подаётся напряжения с делителя R4 - R10.

В данном случае ток составляет 54мА, чего вполне достаточно.

Обращаю внимание, что делитель подключен не напрямую к плюсу источника питания, а к выводу RESET, таким образом опорное напряжение на REF появляется только когда микросхема находится в активном состоянии.

Иначе ток через делитель:

Iдел = 5В/(100 000 Ом + 1000 Ом) = 50мкА.

На фоне потребления микроконтроллера и драйвера в режиме сна такие потери не допустимы!

Резисторы R1 и R3 необходимы чтобы микросхема контролировала максимальный ток двигателя.

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

Выводы MODE нужны для установки режимов микрошага. Причём, выводы MODE4 и MODE3 объединены с DIR и STCK соответственно. Экономия выводов микросхемы...

В общем, перед тем как выйти из спящего режима (подтянуть RESET к плюсу) нужно выставить на выводах DIR(MODE4) и STCK (MODE3) нужные значения. После пробуждения микросхема их считает и запомнит.

Поскольку MOD1 и MOD2 выведены отдельно, им доверили следующую функцию: если они подтянуты к земле, то микросхема принудительно переходит в режим полного шага (Full-step). Чем собственно я и воспользовался.

Разводим новую плату, не забывая про логотип:

Диаметр переходных отверстий 0,3мм под прошивку контроллера выведены круглые площадки диаметром 1,5мм, к которым должны прижимать подпружиненные контакты (на худой конец можно припаяться).

На оборотной стороне размещены площадки для монтажа шагового двигателя. Теперь он будет держаться непосредственно на плате.

Плату изготавливали ЛУТом, толщина текстолита 1мм:

Получилось неплохо, косяков трассировки нет.

Собираем пайетку, красим и сравниваем с предыдущим прототипом:

Масса новой пайетки составляет 2.08г, против 3.43г у старой.

Заказ печатных плат

Но нельзя же изготавливать 1000 штук таких изделий одним ЛУТом! Я решил заказ печатные платы у наших китайских друзей. По вполне демократичной цене они согласились изготовить 16 штук с белой защитной маской на текстолите толщиной 0.8мм.

Стоимость 16 плат составила 5$ (на июль 2020 года) и ещё 6$ доставка.

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

Первый раз заказывал печатные платы для себя, так что на радостях позабыл про шёлкографию, но это исправится в следующий раз.

Монтируем компоненты, красим, заливаем прошивку и собираем новенькую пайетку:

Активный режим - когда микроконтроллер не спит, а занимается пересылкой данных на соседнюю пайетку.

Софт

Доработка софта заключалась в настройке режимов энергопотребления для микроконтроллера ATtiny13. Когда нет команды на переключение цветов, микроконтроллер находится в режиме power-down. Выйти из этого режима возможно только по прерыванию INT0 (низкий уровень). Именно этот вывод является входом данных (data in).

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

Как только контроллер ловит конец посылки, он переходит в состояние power down.

Токопроводящие нити

Следующая задача: обеспечить электрические соединения между пайетками в матрице. Использовать отдельные проводники - не очень хорошая идея (хотя плату разводил именно под такой вариант), потому что даже гибкие провода ломаются от постоянных переменных деформаций. Возможно сгодился бы многожильный МГТФ, но ведь каждый проводок нужно отрезать, зачистить, залудить, припаять в двух местах и ещё и уложить его... а потом помножить эту операцию на три провода и ещё на 1000 пайеток.

А было бы круто, если бы материал - подложка был токопроводящим? И тут я вспомнил про токопроводящие нити.

Эти нити, к слову даже продаются в шпулях, так что можно сразу вставлять в швейную машинку!

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

Токопроводящие нити изготавливаются из волокон нержавеющей стали. Сопротивление около 100Ом на метр. Кроме того, эти нити можно лудить как обычные провода, только использовать надо флюс ФИМ (для нержавеющих сталей).

При работе с нитями надо учитывать одну особенность: это не лакированные провода, то есть они не покрыты изоляцией. Не стоит допускать перекрещиваний. Прокладывать проводящие нити в матрице пайеток будем следующим образом:

Рыжий проводник последовательно соединяет каждую пайетку с соседней - линия данных.

К сожалению, пока нет швейной машинки, нити пришлось вплетать в ручную, принтер без проблем запечатал их.

Конструкция пайетки

Сейчас умная пайетка представляет из себя такую вот структуру:

Ещё немного про конструкцию

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

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

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

Демонстрация работы

Наконец можно полюбоваться результатами проделанной работы:

Работает и выглядит весьма неплохо.

Софт верхнего уровня также претерпел изменения.

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

Выводы

Результаты проделанной работы:

  • понижено энергопотребление в состоянии покоя;

  • решена проблема изготовления гибкой матрицы цветовоспроизводящих устройств;

  • решена проблема большого энергопотребления при смене цветов за счёт волнового метода переключения;

  • масса отдельного элемента матрицы снижена на 185%;

  • решена проблема подведения питания и передача сигналов между элементами матрицы.

Над чем нужно поработать:

  • механическая прочность крепления подвижных лепестков на валу шагового двигателя;

  • оптимизация топологии печатной платы.

В следующий раз расскажу о том как производилась модификация FDM принтера для печати матрицы пайеток на ткани площадью 1м^2 и более и как затем из этой ткани мы изготовили настоящую одежду.

Подробнее..

Обзор и тест RadiaCode-101 портативный дозиметр-радиометр-спектрометр

26.05.2021 22:23:37 | Автор: admin

Предыстория

В феврале только что наступившего 2021 года российская компания Скан-Электроникс открывает предзаказ на новинку в мире дозиметров: сцинтилляционный дозиметр-радиометр-спектрометр RadiaCode-101, а в марте прибор уже выходит на рынок. Прибор был куплен мною, и тестировался на протяжении месяца до написания обзора (обзор не рекламный, это мое личное мнение о приборе, приправленное характеристиками). Прибор находится еще в довольно "сыром" виде, и данный обзор демонстрирует состояние на конец мая 2021, в дальнейшем, возможно, будут дополнения к основной части.

Обзор прибора

Дозиметр-радиометр-спектрометр RadiaCode-101 является сцинтилляционным дозиметром гамма-излучения, сердце которого - сборка из сцинтилляционного кристалла CsI(Tl) размерами 10x10x10 и твердотельного кремниевого фотоумножителя вкупе с микроконтроллером STM32. Прибор приезжает в небольшой качественной картонной коробке и комплектуется инструкцией по эксплуатации, гарантийным талоном и кабелем Type-C. Да, прибор подключается и заряжается через именно этот разъем. Прибор очень компактный, а его корпус изготовлен из довольно качественного и пластика, не скрипит и удобно лежит в руке, имея при этом размеры 124x35x20. На передней стороне имеется жидкокристаллический монохромный дисплей, светодиоды индикации частиц, зарядки, датчик освещенности и три кнопки, две из них в виде качельки и одна круглая. Почему ЖК дисплей? Все просто, производитель учел неудачный опыт Радиаскана, OLED дисплей которого потреблял слишком много энергии и показания на нем не были видны на солнце. С обратной стороны обозначено название прибора и геометрический центр детектора, а так же легкие наплывы для более удобного удержания в руке. Прибор имеет множество настроек и обширное меню, а так же имеет модуль Bluetooth, при помощи которого может подключаться к смартфону и управляться или настраиваться через приложение. Прибор оснащен акселерометром, позволяющим изменять ориентацию дисплея, и термодатчиком, при помощи которого компенсируется сдвиг спектра из-за изменения температуры датчика, то есть прибор термоскомпенсирован.

Фото прибора
КоробкаКоробкаКомплектация прибораКомплектация прибораВид спередиВид спередиВид сбокуВид сбокуВид сзадиВид сзади

Обзор меню прибора

Меню прибора содержит пять пунктов - "Настройки", "Спектр", "Монитор", "Доза" и "Поиск". В пункте "Настройки" можно устанавливать пороги сигнализации, единицы измерения, язык прибора, время подсвечивания дисплея, возможность автоматического изменения ориентации экрана. Пункт "Спектр" позволяет просматривать накопленный спектр, изменять масштаб по оси OX, выбирать отображение в линейном или логарифмическом масштабе, в статус-баре отображается время накопления спектра. Подробнее о функции спектрометра в одном из следующих пунктов. В пункте "Монитор" на экран выводятся значения мощности дозы (Зв/ч или Р/ч) или скорость счета (CPM или CPS) с поддерживаемой погрешностью 9.9%, а в статус-баре время и температура датчика. В пункте "Доза" прибор отображает накопленную дозу (Зв или Р), в статус-баре время накопления дозы. Пункт "Поиск" представляет из себя график изменения скорости счета в зависимости от времени, в виде столбцов, а сверху графика отображается скорость счета. Время появления пиков фиксированное, с возможностью выбора: 0.5,1,2,4 секунды. График автоматически масштабируется при резком изменении скорости счета. Помимо этого в статус-баре выводятся индикатор заряда батареи, состояния Bluetooh, значок блокировки кнопок, состояние сигнализации и индикатор вибро или звукового режима во всех пунктах меню. Так же через меню можно выключить устройство.

Меню прибора
Режим "Монитор"Режим "Монитор"Режим "Доза"Режим "Доза"Режим "Поиск"Режим "Поиск"Режим "Спектр"Режим "Спектр"

Поиск и сигнализация

Поскольку сцинтилляционные приборы в первую очередь являются поисковиками и сигнализаторами, стоит уделить внимание чувствительности и скорости реакции RadiaCode-101на изменения фона. Для этого понадобится линейка, секундомер и какой-либо источник гамма-излучения, в моем случае это препарат Am-241 активностью 0,8 микроКюри. Это очень немного, но справедливости ради надо сказать, что RadiaCode-101 очень чувствителен к низкоэнергитичному излучению Am-241. Дозиметр начинает реагировать на источник на расстоянии 20см, а на 10 и 5см фон составил, соответственно, 40 и 130мкР/ч. это очень хороший результат, потому что приборы на СБМ-20 начинают реагировать на этот источник с расстояния 5см, показывая фон 30мкР/ч. Для проверки скорости реакции разместим прибор на расстоянии 15см до источника, мощность дозы на этом расстоянии составляет 25 мкР/ч. Далее умножаем мощность дозы на 0.8; 25*0.8=20 мкР/ч, это порог сигнализации, выставляем его в настройках прибора. Затем готовим секундомер и убираем источник. Когда показания прибора опустятся до фоновых, возвращаем источник и засекаем время. По результатам трех экспериментов с усреднением, среднее время срабатывания сигнализации составило 10 секунд, что неплохо. Как видите, с чувствительностью и скоростью реакции у RadiaCode-101 проблем нет. Помимо этого прибор можно установить на штангу, и получать показания на телефон, а достаточно громкий динамик (для помещений, на шумной улице можно не услышать, впрочем, больше и не надо) и вибросигнализация вкупе с чувствительностью, скоростью реакции и компактными размерами делают его отличным сигнализатором и поисковиком. Ну и фоточки рядом с источником, СПД и камерой Вильсона, а так же фон от гранитного постамента.

Измерения
Начало реакции прибора, 20смНачало реакции прибора, 20смФон на расстоянии 10см, 40мкР/чФон на расстоянии 10см, 40мкР/чФон на расстоянии 5см, 130мкР/чФон на расстоянии 5см, 130мкР/чФон рядом с источником, Am-241, 0,8мкКи, 300мкР/чФон рядом с источником, Am-241, 0,8мкКи, 300мкР/чФон рядом с источником, Ra-226, 740мкР/чФон рядом с источником, Ra-226, 740мкР/чФон рядом с камерой Вильсона, Pu-239-241. Am-241, 17мкР/чФон рядом с камерой Вильсона, Pu-239-241. Am-241, 17мкР/чФон от гранитного постамента, 70мкР/чФон от гранитного постамента, 70мкР/ч

Функция спектрометра

Одно из основных предназначений RadiaCode-101 помимо поискового радиометра и сигнализатора - портативный гамма-спектрометр. Несмотря на всего 256 каналов и разрешение около 10%, благодаря качественному кристаллу CsI(Tl) с хорошим световыходом и SiPM спектрометр в приборе получился очень достойный. RadiaCode-101 в режиме спектрометра вполне позволяет идентифицировать радионуклиды и даже проверять продукты питания, тем самым полностью выполняя свою функцию: определение изотопного состава или преобладающих энергий на ходу. По результатам экспериментов спектрометр в RadiaCode-101 способен определять Cs-137 в компактной пробе активностью 10Бк, чего более достаточно для спектрометрического анализа продуктов на наличие техногенных радионуклидов. На снимках ниже представлены снятые лично мной гамма-спектры Am-241, Ra-226 и Cs-137, а так же картинка спектров различных изотопов с сайта производителя. Все спектры изотопов, которые я снял, мне удалось идентифицировать. Основные вопросы были касательно пиков Pb-214, дочернего продукта распада Ra-226, не смажет ли их спектрометр в сплошной бугор из-за близкого их расположения, достаточно высокого разрешения кристалла и небольшого количества каналов? Как оказалось при наборе спектра, вначале пики действительно сливаются, но через некоторое время становится отчетливо видно три пика. Значит, при помощи спектрометра в RadiaCode-101 можно достаточно точно определять радионуклидный состав образцов. Теперь вернемся к продуктам питания. Ни для кого не секрет, что определить превышение ПДК по техногенным радионуклидам в продуктах питания невозможно радиометрами на счетчиках типа СБМ-20, но при помощи радиометров со слюдяными счетчиками уже можно определить превышение ПДК в несколько раз. Другое дело - гамма-спектрометры. Хорошие и дорогие приборы способны определять даже мизерные концентрации изотопов в пробе, и используются, в частности, для контроля продуктов питания. Но как обстоят дела с RadiaCode-101 в этом плане? Для проверки возможности определять наличие радионуклидов в пищевых продуктах оставим прибор набирать спектр от 30 грамм сушеной черники. Черника, как и некоторые другие ягоды и грибы, очень хорошо накапливает такой радионуклид, как Cs-137, спутник ядерных взрывов и аварий на АЭС. Данная черника была собрана в районах, пострадавших от аварии на ЧАЭС, и имеет активность по Cs-137 около 3000Бк/кг. Цезий на спектре появился через 1 минуту, а спустя десять часов мы видим красивейший пик на 662КЭВ, что подтверждает возможность использования RadiaCode-101 для проверки загрязненности продуктов питания техногенными радионуклидами.

Спектры
Гамма-спектр Am-241Гамма-спектр Am-241Гамма-спектр Ra-226Гамма-спектр Ra-226Черника, Cs-137, спустя 10 часовЧерника, Cs-137, спустя 10 часовЧерника, Cs-137. спустя 1 минутуЧерника, Cs-137. спустя 1 минуту

Итоги

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

  • Компенсация МЭД по спектру

  • Измерение активности продуктов питания

  • Увеличение количества каналов до 1024

  • Режим точных измерений ("Обнаружение")

  • Увеличение максимальной измеряемой МЭД со 100мР/ч до 1Р/ч

  • Тональный режим звука

  • Улучшения отображения спектра

  • Журнал событий с GPS и спектром сигнализации

  • Новые режимы поиска и накопленной дозы

  • Исправление багов и ошибок

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

P.S. В этом обзоре я не рассказал ничего про приложение и программу для ПК, информации очень много, и про них я расскажу в другом обзоре, так же, возможно, будут дополнения после глобальных обновлений прибора.

Всех тех, кто купил прибор, приглашаю в Telegram-чат прибора, здесь можно узнать новости, задать вопросы, сообщить разработчикам о багах: https://t.me/radiacode101

Купить прибор можно на сайте компании Скан-Электроникс: RadiaCode-101 (scan-electronics.com)

Буду рад, если обзор оказался полезным или интересным!

Подробнее..

Обзор RadiaCode-101 Android-приложение и программа для Windows

05.06.2021 10:15:16 | Автор: admin

Предисловие

Это вторая часть обзора дозиметра-радиометра-спектрометра RadiaCode-101, новинки 2021 года в мире дозиметров от компании Скан-Электроникс. В первой части мы рассмотрели прибор, его характеристики, провели некоторые тесты и испытали функцию гамма-спектрометра. Но, прибор позволяет подключатся к смартфонам или ПК, поэтому сегодня мы рассмотрим программное обеспечение для них. Обзор описывает состояние приложения на начало июня 2021, v. 1.00.15, в дальнейшем, возможно, будут дополнения.

Android-приложение

Приложение для управления RadiaCode-101 бесплатное, доступно в Google Play и называется RadiaCode. После скачивания и установки мы попадаем в основное тело приложения, где имеются три вкладки: "Главная", "Журнал", "Спектр".

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

Вкладка "Главное"
"Главная""Главная"

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

Вкладка "Журнал"
"Журнал""Журнал""Настройки журнала", (Фото 1)"Настройки журнала", (Фото 1)"Настройки журнала", (Фото 2)"Настройки журнала", (Фото 2)

Вкладка "Спектр" представляет собой поле, в котором происходит построение спектрограммы. Поле имеет две отградуированные оси, и элементы масштабирования и управления слева. Помимо этого сверху отображается время набора и частота обновления спектрограммы. Спектр можно приближать, изменять масштаб с логарифмического на линейный, изменять отображение фона. При нажатии трех точек можно перезапустить накопление спектра, поделится им, сохранить в "Библиотеку спектров" или войти в нее. "Библиотека спектров" представляет из себя список всех сохраненных спектров с небольшой иконкой, которые можно переименовывать, устанавливать как фон, делиться ими или удалять. Накопленные спектры можно экспортировать в формате .csv при нажатии кнопки "Поделиться спектром", а затем импортировать в Bequerel Monitor или InterSpec. Возможно три варианта отображения фона на спектре: без наложения фона, наложение поверх, отображение разницы фона и спектра. Накапливаемый спектр подсвечивается оранжевым, фон зеленым, а разница фиолетовым. В "Настройках спектра" можно выбирать единицы осей, масштаб, отображение фона и последнего канала, варианты отрисовки спектра и фона. Также через "Настройки спектра" можно ввести калибровочные коэффициенты (не трогайте эти настройки, если вы не знаете, как калибровать прибор, о калибровке будет отдельная статья).

Вкладка "Спектр"
"Спектр", наложение фона на спектр"Спектр", наложение фона на спектр"Спектр", отображение разницы между фоном и спектром"Спектр", отображение разницы между фоном и спектром"Спектр", отображение фона отключено"Спектр", отображение фона отключено"Настройки спектра", (Фото 1)"Настройки спектра", (Фото 1)"Настройки спектра", (Фото 2)"Настройки спектра", (Фото 2)"Настройки спектра", (Фото 3)"Настройки спектра", (Фото 3)"Калибровочные коэффициенты""Калибровочные коэффициенты""Библиотека спектров""Библиотека спектров"

В самом верху основного тела приложения отображается его версия, серийный номер подключенного прибора, версия его прошивки и "Панель быстрого доступа", при помощи которой можно управлять свето-, звуко- и вибро-сигнализацией прибора, а также выключить его дистанционно, если, например, RadiaCode-101 находится в рюкзаке.

Панель быстрого управления
"Панель быстрого доступа""Панель быстрого доступа"

Помимо этого в приложении есть выпадающее меню, вызываемое нажатием на три полоски слева в верхнем углу. В данном меня содержатся такие пункты как "Приборы", "Настройки приложения", "Настройки прибора", "Карта", "Справка", "Обратная связь" и "О RadiaCode".

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

Пункт "Приборы"
"Приборы""Приборы"

Пункт "Настройки приложения" позволяет изменять язык приложения, настраивать сигналы телефона, изменять настройки графиков в пункте "Главное", изменять настройки местоположения и расстояние между маркерами на карте. Имеются так же "Экспертные настройки", которые лучше не трогать, это может привести к неправильной работе приложения.

Пункт "Настройки приложения"
"Настройки приложения", (Фото 1)"Настройки приложения", (Фото 1)"Настройки приложения", (Фото 2)"Настройки приложения", (Фото 2)"Экспертные настройки""Экспертные настройки"

В пункте "Настройки прибора" можно изменять абсолютно все параметры RadiaCode-101 дистанционно, очень удобная функция, если прибор находится в сумке.

Пункт "Настройки прибора"
"Настройки прибора", (Фото 1)"Настройки прибора", (Фото 1)"Настройки прибора", (Фото 2)"Настройки прибора", (Фото 2)"Настройки прибора", (Фото 3)"Настройки прибора", (Фото 3)

А вот на пункте "Карта" остановимся поподробнее. Он представляет собой окно с Google-картой в центре, цветовой шкалой мощности дозы справа и элементами управления сверху. Для чего это нужно? Дело в том, что RadiaCode-101 вкупе с приложением смартфона умеет строить трек своего перемещения, отмечая новую позицию маркером на карте, цвет которого зависит от мощности дозы в этом месте. Таким образом, при помощи прибора и смартфона можно составлять карты радиационного фона на местности. Вернемся к элементам управления вверху окна. Данные элементы позволяют просмотреть список записанных треков, автоцентрировать карту, автоматически раскрасить маркеры по минимальным и максимальным значениям мощности дозы, быстро запустить или приостановить запись текущего трека, свернуть цветовую шкалу, а значок настроек позволяет войти в "Настройки карты", где можно изменять настройки, связанные с отрисовкой карты и маркеров, определением местоположения. Раздел "Треки" позволяет просмотреть записанные треки, переименовать, удалить или поделиться ими, а также начать запись нового трека. Для этого необходимо включить определение геолокации (GPS) на телефоне и нажать на зеленый значок справа в верхнем углу. После ввода названия и подтверждения на карте начнут появляться метки, расстояние между ними можно изменить в пункте "Настройки приложения". После остановки записи трек можно будет посмотреть на карте в приложении. Пример трека находится в спойлере ниже.

Пункт "Карта"
"Карта""Карта""Настройки карты", (Фото 1)"Настройки карты", (Фото 1)"Настройки карты", (Фото 2)"Настройки карты", (Фото 2)"Треки""Треки"Пример записанного трекаПример записанного трека

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

Пункт "Справка"
"Справка""Справка"

Пункт "Обратная связь" позволяет отправить отчет или сообщение разработчикам прибора, а в пункте "О RadiaCode" имеется история изменений приложения, данные прибора, подключенного в настоящий момент и версия android-приложения.

Пункты "Обратная связь" и "О RadiaCode"
"Сообщение разработчикам""Сообщение разработчикам""О RadiaCode""О RadiaCode"

Программа для Windows

Программа RadiaCode для Windows доступна для скачивания на сайте Скан-Электроникс в разделе "Загрузки". Программа почти полностью дублирует приложение для смартфона, за исключением немного другого оформления. Здесь так же имеются вкладки "Графики", "Журнал" и "Спектр", "Настройки прибора" и функции как в мобильной версии, за исключением "Карт" и наложения фона на спектр. Для стационарного использования такого набора функций более чем достаточно.

RadiaCode для Windows
"Графики""Графики""Журнал""Журнал""Спектр""Спектр"

Итоги

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

P.S. В дальнейшем после глобальных обновлений ПО и функций RadiaCode-101 будут дополнения, а также я намереваюсь написать статью про калибровку этого прибора.

Всех тех, кто купил прибор, приглашаю в Telegram-чат прибора, здесь можно узнать новости, задать вопросы, сообщить разработчикам о багах:https://t.me/radiacode101

Купить прибор можно на сайте компании Скан-Электроникс.

Буду рад, если обзор оказался полезным или интересным!

Подробнее..

Перевод Разбираем AirTag

11.05.2021 20:09:12 | Автор: admin

Самый миниатюрный продукт Apple, о котором долгое время ходили слухи (но это не электронный ключ), наконец-то добрался до Саманты Голдхарт автора статьи, переводом которой мы делимся в преддверии нового старта курса по iOS-разработке.

Добро пожаловать, AirTag! Интересно будет посмотреть, как AirTag со сменным аккумулятором (Да! Это первый сменный аккумулятор в продуктах Apple за последние годы!) будет выглядеть в сравнении с проверенными продуктами.


Устройства Apple и не-Apple

Сегодня в обзоре: Tile Mate, Galaxy SmartTag, Apple AirTag и 25-центовик для оценки размеровСегодня в обзоре: Tile Mate, Galaxy SmartTag, Apple AirTag и 25-центовик для оценки размеров

Для сравнения AirTag с конкурентами я взял ветерана рынка Tile Mate, а также Galaxy SmartTag производства Samsung. Из этих трёх устройств похожая на Mentos таблетка AirTag самая миниатюрная. Размером с монету в 50 центов, само устройство немногим больше своего аккумулятора. Tile самое тонкое из всех устройств, AirTag толще примерно в полтора раза, а если смотреть сбоку на SmartTag, то может показаться, что в нём могут уместиться целых два Tile. Apple, вероятно, желая сделать устройство максимально компактным, приняла нестандартное решение убрала из AirTag отверстие для брелока (эту проблему мы попробуем решить). Нечего и говорить, что ничто не сравнится с Apple в части превращения базовых функций в функции премиум в виде дополнительных приспособлений.

Но статья эта посвящена не только сравнению трекеров сегодня я подвергну разборке сразу три устройства! Сначала посмотрим на внутренности устройств с помощью рентгеновского аппарата Creative Electron.

Рентгеновские снимки Tile Mate, Galaxy SmartTag, Apple AirTag, и... да, четверть доллара (но как-то не тянет на законное платёжное средство, не находите?), сделанные с помощью аппарата Creative Electron (на правый крайний не смотрите)Рентгеновские снимки Tile Mate, Galaxy SmartTag, Apple AirTag, и... да, четверть доллара (но как-то не тянет на законное платёжное средство, не находите?), сделанные с помощью аппарата Creative Electron (на правый крайний не смотрите)

Как всегда, по рентгеновским снимкам можно много чего понять. Судя по плотности размещения элементов, уменьшать AirTag уже некуда. К слову о плотности элементов: относительно тёмный снимок AirTag объясняется наличием большого магнита в центральном динамике и стальной крышки аккумуляторного отсека рентгеновские лучи через них проникают слабо. (Более подробные изображения можно посмотреть на превосходной панорамной анимации.) По сравнению с AirTag другие трекеры кажутся просто великанами а в них даже нет магнитов. (Хотите узнать, почему? Читайте дальше!)

Панорама AirTag в рентгеновских лучах 360:

Несмотря на впечатляющую компактность AirTag, в этом устройстве удалось реализовать сверхширокополосные (СШП) функции. Кстати, сама по себе технология СШП довольно интересная вещь. Samsung только что выпустила СШП-версию трекера, получившего название SmartTag+, но прошло уже две недели после официального релиза, а аппарат до США пока ещё не добралась. Я пыталась раздобыть один экземпляр для разборки, но безуспешно.

Начинаем разборку

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

Свершилось! В продукте Apple можно самому заменить аккумулятор! По этому поводу даже составлена письменная инструкцияСвершилось! В продукте Apple можно самому заменить аккумулятор! По этому поводу даже составлена письменная инструкция

Во всех конкурирующих устройствах есть сменные батареи, поэтому Apple, по всей видимости, решила не отставать и продемонстрировать соответствие рыночному стандарту. Тем не менее воздадим Apple должное за это, сам AirTag будет работать дольше своего аккумулятора, у Tile на это ушло 6 лет и 15 миллионов проданных ранее устройств.

Apple могла бы снабдить устройство раздражающим всех портом Lightning или встроенной (бесполезной и малоэффективной) функцией беспроводной зарядки, чтобы AirTag мог заряжаться от зарядного устройства Apple Watch, но Apple этого не сделала, и спасибо ей за это. Однако в ранних патентных заявках AirTag должен был заряжаться с помощью индуктивного зарядного устройства. Предвестник грядущих технологий? Или ещё одно доказательство существования продукта Apple, которого никогда не было?

А что с питанием? Разбираем аккумулятор

AirTag получил весьма оригинальный номер модели: A2187 (ну-ка, из какого это фильма?), а в регламентирующей документации имеется указание на тип аккумулятора CR2032. Логично! В AirTag и SmartTag используются трёхвольтовые аккумуляторы CR2032, а в Tile более компактные CR1632. Если судить по стандартной номенклатуре кнопочных элементов, во всех аккумуляторах используются литиевые батареи, но 20-мм элементы имеют ёмкость 0,66 Втч, в то время как ёмкость 16-мм элементов Tile составляет всего около 0,39 Вт/ч. На первый взгляд, эти аккумуляторы весьма схожи с аккумуляторами наушников earbuds, но отличаются от них тем, что предназначены для длительной подпитки устройства малым током, что и позволяет им выполнять свои функции.

Вскрытые Tile Mate, Galaxy SmartTag и Apple AirTagВскрытые Tile Mate, Galaxy SmartTag и Apple AirTag

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

Tile и SmartTag легко разбираются с помощью монтажной лопатки и нагрева, но с AirTag всё не так просто. Вместе с тем герметизация AirTag, как ни странно, оказалась не такой уж и качественной. Не буду отрицать: без инструментов у меня ничего бы не вышло, ведь всё-таки три зажима да на клею недурно. Чтобы швы разошлись, AirTag нужно аккуратно сжать тисками и потыкать монтажной лопаткой. Если вы точно решили разобрать AirTag, будьте осторожны! Клеевые зажимы легче сломать, чем отклеить.

SmartTag производства Samsung единственный трекер, которому не присвоен класс защиты от проникновения загрязнений, и это довольно удивительно, учитывая, что этот трекер имеет самый толстый клеевой слой, защищающий печатную плату. Так что же, это худший из всех трекеров? Или Samsung просто старается не обещать слишком многого, как в случае с iPhone 6S?

Со звуком у Apple всегда сюрпризы

Вся конструкция AirTag это сплошные круговые части. Заметили "кнопку" на нижней стороне крышки? Это кнопка не нажимается, как у Mate и SmartTag. Это магнит, который ранее мы видели на рентгеновском снимке. Он размещается внутри логической платы в форме пончика, вложенной в катушку из меди. И это у нас динамик. Вы правильно прочитали корпус AirTag, в сущности, представляет собой один сплошной динамик. Питание подаётся на звуковую катушку, управляющую магнитом, установленным на диафрагме (в данном случае это пластиковая крышка, в которой размещается аккумуляторная батарея), и именно она издаёт звуки, на которые вы идёте, разыскивая потерянную сумку.

Но зачем вообще ставить сюда реальные приводные механизмы? Магниты не только увеличивают вес, но и занимают довольно много места. Миниатюрные пьезоэлектрические динамики в Mate и SmartTag во время тестирования издавали такой же и даже более громкий звук, поэтому дело тут не в громкости. Похоже, что от одного удовольствия Apple здесь не могла отказаться ей хотелось качественного звука. Пьезодинамики миниатюрны, дёшевы, но звучат под стать цене, например как динамики в игрушках из набора Happy Meal в ресторанах Макдональдс. Зная Apple и зная, с какой серьёзностью компания подходит к проектированию звуковых источников, можно заключить, что на звуке она здесь даже здесь! не сэкономила.

Набор инструментов для вскрытия корпусов, отсоединения кабелей, снятия АЦП и прочего.

Нет отверстия для брелока? Спокойно, я нашла его

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

Я внимательно изучила внутренности первого AirTag. Затем взяла сверло 1/16" и аккуратно проделала отверстие во втором трекере из нашей упаковки в четыре штуки (разумеется, сначала я вынула из него аккумулятор). Каким-то чудом мне удалось не задеть микросхемы, платы и антенну, и я просверлила только клееный пластик. Что самое приятное было в этой операции? А то, что AirTag стойко её пережил и продолжил работать как ни в чём не бывало.

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

Удивительно, но звуковой профиль практически не изменился: уровень децибел на расстоянии одного iPhone Mini от AirTag находился в пределах погрешности +/- 1 дБ от непросверленного AirTag (около 7880 дБ). С учётом того, что в качестве мембраны динамика Apple использует сам пластиковый купол, это стало приятным сюрпризом.

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

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

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

Заскучали? Напрасно, ведь мы ещё не вскрывали платы

Снять платы с Tile (слева) и Samsung (справа) пара пустяков, чего не скажешь об AirTagСнять платы с Tile (слева) и Samsung (справа) пара пустяков, чего не скажешь об AirTag

Мы поговорили об аккумуляторах, поразвлекались немного с дрелью, теперь перейдём к мозговому центру платам. Материнская плата Mate (слева) красивого чёрного цвета помещена в литую пластиковую рамку и вынимается простым движением вверх. SmartTag от Samsung (справа) единственный из трёх трекеров, в котором используются винты: два из них крепят плату. Это довольно удивительно, учитывая любовь Samsung к клеевым соединениям.

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

Как и во многих продуктах Apple, плата AirTag многослойная прямо как огр. Слева показана вся сборка (вид сверху) с медной звуковой катушкой в центре, которая всё ещё скреплена двумя паяными соединениями. Плата размещается внутри позолоченной пластиковой антенной рамки, которую, чтобы лучше рассмотреть, мы перевернули (в центре, звуковая катушка снята); а справа показана нижняя часть платы, на которой размещается "тяжелая артиллерия".

Первая сторона логической платы AirTag, на которой размещается трёхосевой акселерометр Bosch Sensortec BMA28x, также встречается в других продуктах Apple.Первая сторона логической платы AirTag, на которой размещается трёхосевой акселерометр Bosch Sensortec BMA28x, также встречается в других продуктах Apple.

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

Под этими приспособлениями на обратной стороне платы размещаются чипы, датчики и другие миниатюрные элементы.

Их перечисление
  • U1 СШП-приёмопередатчик Apple.

  • Bluetooth SoC с низким энергопотреблением и NFC-контроллером Nordic Semiconductor nRF52832.

  • Флеш-память 32 МБ NOR flash GigaDevice GD25LE32D.

  • Цифровой усилитель звука Maxim Integrated MAX98357B, класс AB.

  • Операционный усилитель ввода/вывода 1 МГц, rail-to-rail Texas Instruments TLV9001.

  • Коммутатор нагрузки, реле защиты от максимального напряжения ON Semiconductor FPF2487.

  • Понижающий преобразователь 300 мА DC-DC Texas Instruments TPS62746.

  • Что-то похожее на преобразователь DC-DC ON Semiconductor.

  • Что-то похожее на преобразователь DC-DC ON Texas Instruments.

В своём анонсе AirTag Apple только и говорила, сколько усилий она приложила, чтобы её трекер соответствовал стандартам конфиденциальности Apple. Предотвращая злоумышленное использование, iPhone предупредит хозяина, если AirTag, не зарегистрированный в его учётной записи iCloud, следит за ним. Кроме того, AirTag, который хозяин не использовал длительное время, начнёт издавать звуки, если его взять в руки, и тем самым привлечёт к себе внимание.

Но вернёмся к звуку. Что, если злоумышленник отключит динамик AirTag, а потом заставит его за кем-то следить? Мы провели небольшое исследование и считаем нужным сообщить: есть несколько относительно простых способов отключения динамика и сохранения при этом работоспособности AirTag. По понятным причинам мы не будем рассказывать, как это сделать. Просто знайте об этом особенно если учесть, что не у всех есть iPhone, который может получать уведомление о "выключенном" AirTag. Для сравнения: пьезоэлектрические динамики в Tile Mate и Galaxy SmartTag отключаются так же легко, но они, похоже, не могут похвастаться такими же мощными функциями безопасности.

Итак, мы разобрали устройство

Мы не можем объяснить, почему AirTag так долго добирался до рынка, но можем с уверенностью сказать, что компания постаралась на славу. Это устройство не похоже на продукт первого поколения. Можно ли в него внести улучшения? Можно, но, по сравнению с рыночным стандартом Tile AirTag представляется устройством, продуманным до мелочей. По сравнению с предложением Samsung AirTag это элегантная футуристическая ЕВА, а SmartTag неуклюжий работящий ВАЛЛ-И.

Кстати, об улучшениях: хотя Apple любит продукты, которые "просто работают", иногда таким продуктам требуется небольшая помощь, чтобы ими могли пользоваться простые люди. Оказалось, что методы DIY вполне работоспособны и не лишают вас возможностей (кроме потери класса защиты от проникновения загрязнений, но эту проблему побороть легко нужна всего пара нашлёпок Sugru). С другой стороны, одна из главных функций безопасности AirTag довольно элементарно отключается без всяких хитростей мрачное напоминание, что в наши дни цифровая конфиденциальность и безопасность остаются и ещё долго будут оставаться головной болью разработчиков.

Так какой же трекер взял главный приз? С точки зрения аппаратного обеспечения, его продвинутость большой роли не играет, но если у вас iPhone 11 или выше (кроме iPhone SE 2020), то добавленная к AirTag СШП-функциональность указателя будет приятным плюсом. С точки зрения ремонтопригодности, все устройства имеют сменные батареи, и на этом практически всё. Но могло быть и хуже! AirTag, естественно, выглядит наиболее впечатляюще, у него изящный динамик. Кому как, но мы считаем, что Apple идёт верной дорогой.

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

Если вам интересны устройства Apple изнутри во всех смыслах и вы хотели бы попробовать себя в роли мобильного разработчика, обратите внимание на наш курс по iOS-разработке, где вы научитесь кодить на Swift, работать с анимациями, познакомитесь с Human Interface Guidelines (руководством по созданию интерфейсов по стандартам Apple) и опубликуете своё приложение в AppStore.

Узнайте, как прокачаться и в других специальностях или освоить их с нуля:

Другие профессии и курсы
Подробнее..

Кибатлон 2020 российские киборги начинают и выигрывают

23.11.2020 18:14:08 | Автор: admin


Неделю назад в Москве прошло второе международное состязание киборгов Cybathlon 2020. Первое состоялось в 2016 году в Цюрихе. Помните, мы рассказывали, как это было? В этот раз Россия предстала настоящей высокотехнологичной сборной и показала крутой результат!

Что такое Кибатлон


Кибатлон это соревнование, в котором состязаются пилотируемые людьми технологии в сфере реабилитации. Команды меряются силами в шести дисциплинах: бионические протезы рук, силовые протезы ног, электрифицированные коляски, экзоскелеты, гонки посредством интерфейса мозг-компьютер, гонки на велосипедах с функциональной электрической стимуляцией. Россия участвовала в первых пяти категориях. Подробно о каждой команде и их разработках мы будем постепенно рассказывать. Чтобы ничего не пропустить, подписывайтесь на канал Кибатлетики Территории киборгов.

А пока расскажем кратко о том, кто какие разработки показал и какие результаты получил.





Бионические протезы рук. В этой дисциплине выступали два наших пилота с протезами Инди Сергей и Элина.



Силовые протезы ног. Тут от России выступала команда Ortokosmos с высокофункциональным протезом бедра с самообучающимся коленным модулем.



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



Экзоскелеты. Пилот команды ExoAtlet испытывал экзоскелет для медицинской и социальной реабилитации. Кстати, ребята единственные из участников Кибатлона в своей дисциплине серийно выпускают экзоскелеты, это круто!



Гонки посредством интерфейса мозг-компьютер. Здесь выступала команда Neurobotics с неинвазивным нейроинтерфейсом внешняя гарнитура, соединяющаяся с мозгом посредством революционной технологии сухих активных электродов, то есть без использования геля.

Результаты наших соратников по технологиям были отличными:

  • Super Motorica, пилот Элина Жукова 4 место
  • Caterwil, пилот Юрий Ларин 2 место
  • Neurobotics, пилот Руслан Нуруллин 3 место
  • Ortokosmos, пилот Ринат Хусаинов 5 место
  • ExoAtlet, пилот Юрий Сидоров 5 место

Для сравнения в 2016 году на первом Кибатлоне мы заняли только 10 место. Это послужило дополнительной мотивацией для прокачки и усовершенствования бионической руки.

Моториканский бионический Инди на Кибатлоне


Наш пилот Элина Жукова выступала с односхватом Инди. Кибатлон стал отличной проверкой бионического протеза руки в действии, в конкурентной и стрессовой ситуации, и это было чертовски интересно. А еще удовлетворительно, потому что результат нас порадовал.



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



Инди это техническое средство реабилитации, которое можно установить при травме предплечья взрослому или подростку. Важно, чтобы локтевой сустав был сохранен и функционален. Инди состоит из кисти с электромеханическим приводом, гильзы предплечья, механизма ротации кисти, ЭМГ-датчиков, аккумулятора, зарядного устройства, электрокабелей.

У Элины установлена последняя версия бионического протеза Инди. От предыдущих он прежде всего отличается компоновкой деталей. Например, мы применили червячную передачу и рычажный механизм, что помогло повысить усилие, снизить вес и разместить в одной и той же компоновки 4 типоразмера. Другими словами, чтобы получить другой размер, нам нужно лишь поменять четыре детали. А это ускоряет сроки производства и помогает снизить стоимость опять же производства. Также протез стал работать более точно и лучше понимает намерение пользователя.

Еще один важный момент текущий ротатор кисти обрел более надежное крепление.

Внешний вид


Тут все очень демократично и кастомизируемо. Если пользователь хочет, то может использовать косметическую оболочку, а если не хочет то может оформить его по своему вкусу или желанию. Сделать карбоновым, хромированным, нанести рисунок аэрографом:









Или инкрустировать стразами Swarovski:



Площадка для испытаний в Москве


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

Задумка отличная и перспективная в том плане, что позволит быстро тестировать разработки в специализированном и оборудованном под запрос месте. Это поможет, во-первых, натренировать кибатлетов на прохождение трассы (правильность исполнения, скорость выполнения задач и т. д.) Во-вторых, это поможет быстро тестировать новые продукты, совершенствовать их, находить слабые места, а то и новые решения. В-третьих, это может стать отличной площадкой для взаимодействия между разработчиками и пользователем.

Какую бы свою разработку вы хотели протестировать на применимость и прочность на подобной площадке?
Подробнее..

Категории

Последние комментарии

  • Имя: Макс
    24.08.2022 | 11:28
    Я разраб в IT компании, работаю на арбитражную команду. Мы работаем с приламы и сайтами, при работе замечаются постоянные баны и лаги. Пацаны посоветовали сервис по анализу исходного кода,https://app Подробнее..
  • Имя: 9055410337
    20.08.2022 | 17:41
    поможем пишите в телеграм Подробнее..
  • Имя: sabbat
    17.08.2022 | 20:42
    Охренеть.. это просто шикарная статья, феноменально круто. Большое спасибо за разбор! Надеюсь как-нибудь с тобой связаться для обсуждений чего-либо) Подробнее..
  • Имя: Мария
    09.08.2022 | 14:44
    Добрый день. Если обладаете такой информацией, то подскажите, пожалуйста, где можно найти много-много материала по Yggdrasil и его уязвимостях для написания диплома? Благодарю. Подробнее..
© 2006-2024, personeltest.ru