Скоро всё будет с голосовым управлением. Вот например часы с подсветкой.
Заказал картину с часами и подсветкой. Я думал там будет пульт. Связался с продавцом из Китая и описал ему проблему, что нет пульта. Оказывается они управляются голосовыми командами. Он мне отправил команды, естественно на китайском. Я через поиск в интернете, озвучил их. Пять видов команд. Включить/ выключить естественно и управление яркостью подсветки. Малая, средняя и высокая яркость. Прогресс летит и мы за ним еле поспеваем).
Всем привет! Возвращаюсь с новым постом о реальном проекте. В феврале этого года нам поступила заявка на автоматизацию кинотеатра в частном доме, проект еще в реализации, но хочу поделиться промежуточными результатами :)
Любое обращение начинается с изучения дизайн-проекта (если он есть), этот случай не исключение.
Получив документацию от наших партнеров, дизайн-студии dekaart, мы видим красивые картиночки визуализации:
Зона бара и кальяна
Зона кинотеатра
А так же схему осветительных приборов, электрики
Схема осветительных приборов и их привязки к выключателям
Так же был получен перечень оборудования для автоматизации, а именно: 1) Проектор JVC NZ30BG 2) Ресивер Denon AVR-X2800H 3) Приточно-вытяжная вентиляция VHR BlackVent 500 4) Кондиционер Royal Clima RCI-RSN75HN 5) DMX приборы для режима "Дискотека" 6) Трековые системы Arlight 7) Ооочень много одноцветной светодиодной ленты (65 метров) 8) RGB светодиодная лента для полок в барной зоне 9) Роллеты на окна с приводами 10) Android TV Homatics Box R 4K Plus (Был предложен заказчику нами)
Из требований заказчика: 1) Управление всем освещением, как со смартфона, так и с выключателей 2) Аналогичное управление с планшета 3) Несколько сценариев поведения, таких как "Кино", "Дискотека", "Кальян" и тд 4) Автоматическое управление вент-установкой 5) Автоматическое управление кондиционером 6) Управление всем мультимедиа оборудованием 7) Голосовое управление с "Алисы" 8) Управление в одном треке разными источниками освещения
Прежде чем приступать к проектированию, провели аудит уже закупленного заказчиком оборудования. Нашли несоответсвие ТЗ (конкретно пункт 8) и купленной системы освещения. У заказчика в шинопроводе размещаются два источника освещения, такие как:
Так называемые SPOT
И встраиваемые "заподлицо" в шинопровод линейные светильники
Управление ими раздельно не было предусмотрено, так как были закуплены модели, не поддерживающие протокол DALI (Если кратко, то это когда у светильников есть свой адрес и они могут управляться по отдельности). О чем было сообщено заказчику и оборудование было заменено.
Далее мы приступили к проектированию кабельного журнала и размещению на схеме точек, куда должны прийти кабели.
Одна из разверток, с указанием точки под сплитсистему и одну из розеток
Часть кабельного журнала
Параллельно с монтажом электрики мы работали над схемой коммутации щита с автоматикой, для управления всем оборудованием.
Визуализация наполнения щита
Один из листов с коммутацией
Блоки питания так же были приобретены заказчиком заранее, за счет чего, пришлось увеличить щит практически в 2 раза, чтобы их нормально разместить. Обычно мы используем DIN реечные БП за счет чего существенно выгрываем в габаритах. Жду шутки про щит для однушки :)
Такое большое количество автоматов обусловлено удобством использования и небольшой разницы в цене. Если из строя выйдет один из блоков питания, его можно будет временно отключить, не лишаясь остального освещения.
Одна из фотографий в процессе электромонтажа
Скоммутированный щит, вид спереди
Скоммутированный щит, вид сзади
Паралельно со сборкой щита, разрабатывался дизайн приложения, как для смартфона, так и для планшета.
1/7
Несколько страниц приложения на смартфон
1/2
Пара страниц интерфейса планшета
Частично сверстанный интерфейс на смартфоне, еще без логики и подключения оборудования.
Промежуточный этап отделки
По итогу, что получит заказчик?
- Полный контроль над системой - Климат контроль, на основании сплит-системы и группы датчиков температуры - Автоматическое управление вентиляцией при помощи датчиков кислорода и VOC (например при курении кальяна, либо при определенной концентрации CO2) - Приветственное включение света при входе в помещение, яркость зависит от времени суток - Управление всей системой при помощи заранее прописанных и редактируемых сценариев,в том числе и управление контентом - Управление всеми устройствами с помощью голосового помощника "Алиса" - Управление всеми источниками освещения, в том числе и автоматизированное, благодаря датчику движения и сценариям - Управление роллетами с приводами - Все источники освещения являются диммируемыми - Абсолютно автономная система, работающая без доступа к интернету (за исключением Алисы) Наша система строится на полностью проводном решении от компании IRIDI, в т.ч и управление всей мультимедиа, климатом, вентиляцией, что почти полностью исключает сбои в работе.
На данном этапе еще не окончена отделка помещения, в скором времени будет смонтирован щит автоматики, а так же программируется логика работы внутри приложения. Если вам было интересно, подписывайтесь, в дальнейшем выложу окончательный результат по проекту, с демонстрацией всех функций.
Супер подробно не стал описывать все этапы, функции, так как в таком случае и 5 постов не хватит :)
Работаем в г.Ростов-на-дону и в области
Если у вас есть запрос на подобную систему, либо полную автоматизацию своего жилья, пишите в ТГ - @Ranger236, обсудим
Так же задавайте вопросы в комментариях, делитесь мнением о проекте, буду рад ответить.
P.S Да, такая система стоит денег. Да, можно сделать на HomeAssistant. Но заказчику нужно готовое решение под ключ, с дальнейшей поддержкой, в виде добавления например караоке, расширения системы на планирующийся рядом дом. А так же независимость от обновлений, модулей, которые могут перестать выпускать, глушилок которые работают у нас в городе на 150%.
ЦАП – цифро-аналоговый преобразователь – нужен для преобразования аудиосигнала из цифрого формата в аналоговый; обычно, для передачи в усилитель или немедленного озвучивания.
Все современные форматы записи аудио используют цифровое представление. И треки на CD или blu-ray дисках, и mp3-файлы, и музыка с iTunes – все они хранятся в цифровом формате. И для того, чтобы воспроизвести эту запись, её надо преобразовать в аналоговый сигнал – эту функцию и выполняет цифро-аналоговый преобразователь. Встроенный ЦАП присутствует в любом устройстве, воспроизводящем музыку. Но часто бывает, что качество проигрывания одних и тех же аудиофайлов (или треков с одного и того же диска) на разных плеерах заметно отличается. Если при этом используются одинаковые усилители и наушники, значит, проблема в ЦАП плеера.
ЦАПы бывают разные: дешевые преобразователи с низким энергопотреблением (часто используемые производителями в мобильных устройствах) имеют низкое быстродействие и малую разрядность, что сильно сказывается на качестве звука.
Если у мобильного устройства есть цифровой выход (S/PDIF или USB), можно подключить к нему внешний ЦАП - это гарантирует высокое качество преобразования цифрового звука в аналоговый.
Кроме того, внешний ЦАП может оказаться очень полезным при прослушивании музыки, записанной в loseless-форматах (форматах записи аудио без потерь качества) с высокой дискретизацией, обеспечивающей максимальное подобие записи и оригинала. Поскольку распространяются такие записи, в основном, через Интернет, часто их прослушивают прямо с компьютера. Но качественная звуковая карта редко встречается на ноутбуках и планшетах, да и встроенные в материнскую плату десктопного компьютера звуковые карты не отличаются высоким качеством. И в этом случае весь смысл прослушивания loseless музыки теряется абсолютно. Ситуацию можно исправить, если на компьютере есть цифровой аудиовыход, например, S/PDIF. Подключив к нему ЦАП с частотой дискретизации и разрядностью не меньшей, чем у прослушиваемой записи, можно получить аналоговый сигнал высокого качества.
Еще один приятный бонус можно получить, приобретя ЦАП с поддержкой Bluetooth. Это позволит слушать отличную музыку на подключенных к преобразователю динамиках, не будучи «привязанным» к нему проводами. Для мобильного компьютера (планшета или ноутбука) это может оказаться очень удобным. Кроме того, с таким преобразователем вы сможете проигрывать музыку с других устройств, поддерживающих Bluetooth и легко переключаться между ними.
АЦП – аналого-цифровой преобразователь – нужен, наоборот, для преобразования аналогового аудиосигнала в цифровой формат. АЦП будет незаменим при оцифровке (переводе в цифровой формат) старых аналоговых записей: на грампластинках, аудио и видеокассетах. Также АЦП потребуется при записи в цифровом виде «живого» звука с микрофона. Плееры с функцией записи и компьютерные звуковые карты имеют встроенный АЦП, но если вам важно качество оцифровки, лучше доверить эту задачу специализированному устройству.
Несмотря на совершенно противоположные задачи, АЦП и ЦАП обладают некоторыми общими характеристиками, оказывающими большое влияние на качество преобразования.
Характеристики преобразователей аудиосигнала.
Количество отсчетов в секунду - частота дискретизации
Для АЦП частота дискретизации определяет, с какой частотой преобразователь будет измерять амплитуду аналогового сигнала и передавать её в цифровом виде. Для ЦАП – наоборот, с какой частотой цифровые данные будут конвертироваться в аналоговый сигнал.
Чем выше частота дискретизации, тем результат преобразования ближе к исходному сигналу. Казалось бы, чем выше этот показатель, тем лучше. Но, согласно теореме Котельникова, для передачи сигнала любой частоты достаточно частоты дискретизации, вдвое большей частоты самого сигнала. С учетом того, что самая высокая частота, различимая на слух – 20 кГц (у большинства людей верхняя граница слышимого звука вообще проходит в районе 15-18 кГц), частоты дискретизации в 40 кГц должно быть достаточно для качественной оцифровки любого звука. Частота дискретизации audio CD: 44.1 кГц, и максимальная частота дискретизации mp-3 файлов: 48 кГц, выбраны как раз исходя из этого критерия. Соответственно, ЦАП, проигрывающий аудиотреки и mp3-файлы, должен иметь частоту дискретизации не менее 48 кГц, иначе звук будет искажаться.
Зеленым цветом показан исходный аудиосигнал, состоящий из нескольких гармоник, близких к 20 кГц. Малиновым цветом обозначен цифровой сигнал, дискретизированный с частотой 44.1 кГц. Синим цветом обозначен аналоговый сигнал, восстановленный из цифрового. Хорошо заметны потери в начале и конце отрезка.
Теоретически, такой частоты дискретизации должно быть достаточно, но практически иногда возникает надобность в большей частоте: реальный аудиосигнал не полностью отвечает требованиям теоремы Котельникова и при определенных условиях сигнал может искажаться. Поэтому у ценителей чистого звука популярны записи с частотой дискретизации 96 кГц.
Частота дискретизации ЦАП выше, чем у исходного файла, на качество звука не влияет, поэтому приобретать ЦАП с частотой дискретизации выше 48 кГц имеет смысл, только если вы собираетесь прослушивать с его помощью blu-ray и DVD-аудио или loseless музыку с частотой дискретизации, большей 48 кГц.
Если вы твердо нацелились на приобретение преобразователя с частотой дискретизации выше 48 кГц, то экономить на покупке не стоит. ЦАП, как и любое другое аудиоустройство, добавляет в сигнал собственный шум. У недорогих моделей шумность может быть довольно высокой, а с учетом высокой частоты дискретизации, на выходе такого преобразователя может появиться опасный для динамиков ультразвуковой шум. Да и в слышимом диапазоне шумность может оказаться настолько высокой, что это затмит весь выигрыш от повышения частоты дискретизации.
Чем выше разрядность, тем выше точность измерения или восстановления амплитуды сигнала
Разрядность – вторая характеристика, непосредственно влияющая на качество преобразования.
Разрядность ЦАП должна соответствовать разрядности аудиофайла. Если разрядность ЦАП будет ниже, он, скорее всего, просто не сможет преобразовать этот файл.
Треки audio CD имеют разрядность 16 бит. Это подразумевает 65536 градаций амплитуды – в большинстве случаев этого достаточно. Но теоретически, в идеальных условиях, человеческое ухо способно обеспечить большее разрешение. И если о разнице между записями с дискретизацией 96 кГц и 48 кГц можно спорить, то отличить 16-битный звук от 24-битного при отсутствии фонового шума могут многие люди с хорошим слухом. Поэтому, если ЦАП предполагается использовать для прослушивания DVD и Blu-ray аудио, следует выбирать модель с разрядностью 24.
Чем выше разрядность АЦП, тем с большей точностью измеряется амплитуда звукового сигнала.
При выборе АЦП следует исходить из того, какие задачи с его помощью предполагается решать: для оцифровывания «шумных» аудиозаписей со старых магнитофонных лент высокая разрядность АЦП не нужна. Если же вы планируете получить качественную цифровую запись со студийного микрофона, имеет смысл воспользоваться 24-битным АЦП.
Количество каналов определяет, какой звук сможет преобразовывать устройство. Двухканальный преобразователь сможет обрабатывать стерео и моно звук. Но для преобразования сигнала формата Dolby Digital или Dolby TrueHD понадобится, соответственно, шести- или восьмиканальный преобразователь.
Соотношение сигнал/шум определяет уровень шума, добавляемого в сигнал преобразователем. Чем выше этот показатель, тем более чистым остается сигнал, проходящий через преобразователь. Для прослушивания музыки нежелательно, чтобы этот показатель был ниже 75 дБ. Hi-Fi аппаратура обеспечивает минимум 90 дБ, а высококачественные Hi-End устройства способны обеспечить отношение сигнал/шум в 110-120 дБ и выше.
ЦАП должен иметь цифровой вход – это может быть S/PDIF, USB или Bluetooth. Выходу ЦАП аналоговый - «джек» (jack) или «тюльпаны» (RCA). У АЦП все наоборот – аналоговый вход и цифровой выход. Хорошо, если преобразователь имеет несколько различных входов и выходов – это расширяет возможности по подключению к нему различных устройств. Если же вход на преобразователе один, убедитесь, что аналогичный выход есть на устройстве, к которому предполагается его подключать.
Преобразователи аудиосигнала скорее относятся к студийному и домашнему оборудованию, поэтому питание большинства преобразователей производится от сети 220В. Но существуют и преобразователи, которые питаются от аккумуляторов и могут быть использованы автономно. Это может оказаться удобным при использовании преобразователя с мобильным устройством – ноутбуком, планшетом, смартфоном или плеером.
Некоторые преобразователи получают питание через разъем micro-USB, при этом получать (или передавать) аудиосигнал через этот разъем они не могут. Если вам важно, чтобы ЦАП мог читать аудиофайлы на USB-носителях, перед покупкой убедитесь, что USB на устройстве используется не только для питания.
Варианты выбора.
Если вам нужно устройство, с помощью которого можно будет оцифровать старые магнитофонные записи или записать на компьютер звук с микрофона, вам нужен аналогово-цифровой преобразователь. Цены на них начинаются от 1100 рублей.
Если вы желаете получить устройство для качественного проигрывания аудифайлов со смартфона с возможностью беспроводного соединения, выбирайте среди ЦАП с поддержкой Bluetooth. Такое устройство обойдется вам в 1400-1800 рублей.
Если же вы желаете услышать все богатство звука, записанного в loseless-формате с высокой частотой дискретизации и битностью 24, вам понадобится соответствующий ЦАП. Стоить он будет от 1700 рублей. Н и конечно не забываем что существуют и профессиональные линейки оборудования как аналогового так и цифрового но и цены там соответствующие. О них поговорим как ни будь в другой раз.
За последнее десятилетие распознавание голоса сделало огромный рывок. Гаджеты без особого труда понимают самые сложные фразы и предложения независимо от акцента и артикуляции. Как это им удается?
Обработка звука
Попытки распознавания голосовых команд предпринимались еще с середины прошлого века. И уже тогда было ясно, что перед распознаванием запись голоса следует обработать. Одни люди говорят громче, другие — тише. Также в реальных условиях всегда есть посторонние шумы, не имеющие отношения к человеческой речи. И отдать запись на распознавание «как есть» — только запутать ситуацию и увеличить вероятность ошибок. В чем же состоит обработка звука?
Оцифровка Звук — это волны. С микрофона он идет в виде аналогового сигнала, а компьютеры с аналоговыми данными работать не умеют. Звук надо оцифровать. Для этого используются АЦП — аналого-цифровые преобразователи. На выходе АЦП звук преобразовывается в цифровой массив. При частоте дискретизации 44 кГц одна секунда звука превращается в 44000 чисел.
Фильтрация Фильтрация заключается в отсеивании всех частот, не относящихся к человеческому голосу. Это довольно узкий диапазон, лежащий в пределах 75–500 Гц. Слышимый человеком диапазон звуков намного шире — 20–20000 Гц. В таком (или близком) диапазоне выдают сигнал большинство микрофонов. Так что фильтрация позволяет отсеять 97,5 % ненужной информации. Это намного ускоряет дальнейшую обработку сигнала.
Фильтрация может производиться и до оцифровки — с помощью аналоговых фильтров. Но цифровой метод надежнее.
Нормализация Нормализация нужна, чтобы устранить влияние громкости звука на результат. Слабый сигнал усиливается. Сильный, наоборот, ослабляется. Итоговый сигнал имеет примерно одинаковую амплитуду для всех записей звука — как громких, так и тихих.
Распознавание методами математического анализа
До развития ИИ алгоритмы распознавания звука часто работали прямо со звуковым сигналом. Вот такого вида:
Для распознавания текста использовались различные методы математического анализа. Например, в базе данных сохранялись эталонные записи команд, и каждая новая запись сравнивалась с ними с помощью корреляционного анализа. Это позволяло легко найти среди эталонов наиболее подходящий и выполнить соответствующую команду. Способ хорошо работал с отдельными командами, представляющими собой неизменное слово или фразу. А вот с распознаванием обычной речи все было хуже.
Распознавание с помощью нейросетей
Нейросети работают примерно так же, как и человеческий мозг. Они хорошо выявляют качественные признаки и не очень хорошо — количественные. Человек с первого взгляда отличит кошку от собаки, а вот кучку из 50 спичек от кучки из 49 — вряд ли даже с десятого. И вот здесь с распознаванием голоса на основе цифрового сигнала возникают сложности.
Вот три записи. Среди них — два слова «собака», произнесенные разными голосами и одно слово «забота».
Задача выглядит несложной. Конечно же, второй и третий паттерны намного более похожи друг на друга, чем первый и второй или первый и третий. А значит — первый паттерн — «забота», а второй и третий — «собака»?
Нет. «Собака» — первый и третий. «Забота» — второй. Почему так? Потому что на записи мы в первую очередь обращаем внимание на амплитуды сигналов. Но это — всего лишь громкость. Смысловую нагрузку несет частота сигнала, а вот ее с первого взгляда на записи не видно. И со второго не видно. И вообще не видно до тех пор, пока вы не измерите расстояние между соседними пиками на графике.
Впрочем, решение этой задачи найдено давно — частотный анализ. Возьмем кусочек записи и посчитаем, с какой громкостью на нем звучит каждая частота. И изобразим это в виде графика.
Но такой график — все еще сложная для восприятия штука. А раз она сложна нам, то и нейросетям она тоже не понравится. Поэтому громкость изобразим в виде цвета. Теперь каждая запись предстает в таком виде:
«Собака»
«Собака»
«Забота»
Не правда ли, все стало проще? Нейросетям — тоже. С этими картинками уже вполне можно использовать те же алгоритмы, что позволяют нейросетям обнаруживать на фотографии лица или разбираться в дорожной обстановке.
Более того, такое представление записи позволяет искать не слова, а отдельные фонемы. Фонемы — это элементы, из которых состоит человеческая речь. В разных языках они разные, но их немного. В русском языке, например, их 42 (по некоторым исследованиям больше — 46–48).
Фонемы — это не то же, что и буквы. В разных словах одним и тем же буквам могут соответствовать разные фонемы. Но, распознав все фонемы, уже можно легко собрать из них слово.
Дальнейшая работа с распознанным текстом
Итак, благодаря нейросети мы смогли преобразовать запись голоса в осмысленный текст. Но ведь голосовой помощник на этом не останавливается. Он как-то понимает этот текст и осмысленно на него отвечает. Как это делается? Во-первых, текст токенизируется. Из него выделяются отдельные токены — смысловые единицы. Токенами могут быть слова, их сочетания и целые фразы — это зависит от модели нейросети и ее целей. В голосовых помощниках это обычно слова и пунктуационные знаки. Дальше токены текста проходят через эмбеддинг — каждому токену сопоставляется некий смысловой вектор в N-мерном пространстве. Например, один из простейших методов эмбеддинга предполагает использование двумерного массива:
Так, после эмбеддинга токен «Корова» получит вектор [-,100,0,10,100]. Теперь, приняв набор токенов «Луг, Молоко», нейросеть предположит, что речь идет о корове.
Eще, сравнивая токен «Корова» с другими токенами своего словаря, нейросеть заметит сходство вектора только с одним вариантом — соответствующим токену «Птица». Мы понимаем, что это произошло потому, что птица — тоже животное, и она тоже может обитать на лугу. В данной простейшей модели нейросеть не знает таких терминов, как «животное» и «обитать». Но это не мешает прийти ей к тому же выводу, что и человек.
Очевидно, что эффективность нейросети очень сильно зависит от размеров словаря и от правильности заполнения соответствующей матрицы. Это делается с помощью методов машинного обучения на больших массивах реальных данных. Нейросеть просматривает различные тексты и заполняет словарь на основе встречающихся слов. Например, несколько раз встретив в одном предложении слова «Корова» и «Луг», она увеличит число, стоящее на пересечении соответствующих столбцов и строк.
Теперь, когда каждому слову сопоставлен какой-то смысл, нейросеть может определить, что хотел от нее пользователь. Для этого запрос пропускается через семантический теггер, который определяет семантическую функцию каждого токена. Например, при запросе «Кто на лугу?» нейросеть по токенам «Кто» и «?» поймет, что ей задали вопрос. А «луг» она определит как основную информацию запроса и, сопоставив вектор соответствующего токена с остальными, выдаст ответ: «Корова».
Но чтобы поддерживать разговор, умения отвечать на вопросы мало. Нужно оставаться в контексте беседы, и голосовым помощникам это удается. Для этого используются рекуррентные нейронные сети. Такие сети содержат рекуррентные слои, кроме обычных выходов имеющие дополнительный выход для следующего просчета.
Вывод
Голосовые помощники могут вести с нами полноценный разговор и выглядеть при этом вполне разумными собеседниками. Но это иллюзия. Нейросети способны выдавать грамотные, разумные и взвешенные ответы, совершенно не понимая сути вопроса. Весь секрет — в современных технологиях и в обширной базе знаний в виде книг и изображений, хранящихся в сети Интернет.
Обучение нейросети требует немалых вычислительных ресурсов, а под словари и базы данных нужны целые массивы накопителей. Поэтому большинство голосовых помощников «живет» на серверах в дата-центрах. Общение же с пользователями происходит через Интернет. Именно поэтому полный функционал умных колонок доступен только при их подключении к Интернету.
Сейчас заметил, что настолько привык к Алисе и голосовым командам, что когда в голове начинает крутиться очередная навязчивая песня, на автомате говорю вполголоса: "выключи музыку". И песня мгновенно "отвязывается". Хотя может это признаки наступающей шизы)))