Главная » Просмотр файлов » на печать лифт

на печать лифт (1189714), страница 7

Файл №1189714 на печать лифт (Автоматизация и модернизация электропривода главного фонтана на площади им. Ленина г. Хабаровска) 7 страницана печать лифт (1189714) страница 72020-10-01СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 7)

Рисунок 4.1 – Алгоритм работы системы управления с голосовым интерфейсом

4.3 Интерфейс управления голосовыми командами для обучения модуля распознавания речи.

Для корректной работы модуля распознавания речи в системе управления необходимо обучить его голосовым командам. Для конфигурации модуля с помощью среды разработки ArduinoIDE требуется установить дополнительную библиотекуVoiceRecognitionV3[5]. Далее следует открыть проект vr_simple_train, поставляемый в комплекте с библиотекой VoiceRecognitionV3 (Файл — Примеры — VoiceReocgnitionV3 — vr_simple_train). Нужно загрузить этот скетч в микроконтроллерArduino и открыть монитор порта (Сервис — Монитор порта). Это и есть интерфейс управления голосовыми командами для обучения модуля распознавания устной речи, с помощью которого можно записывать, удалять и изменять базу/словарь голосовых команд в памяти устройства (рисунок 4.2).

Рисунок 4.2 – Интерфейс управления голосовыми командами для обучения модуля распознавания речи

В настройках нужно установить значение скорости обмена данными (baudrate) 115200 и отправку по новой строке, как показано на рисунке 4.3. Далее требуется ввести в верхнее поле команду settings и нажать кнопку "Послать". Таким образом, модуль в ответ отправит сообщение со своими текущими настройками. Если не появилось сообщения о том, что модуль не найден и в текстовом поле монитора были определены параметры текущей конфигурации это значит, что соединение с устройством по COM-порту установлено и теперь можно приступать непосредственно к обучению модуля голосовым командам. Обучение командам производится при помощи функция sigtrain. Функция вводится в текстовое поле монитора последовательного порта, если ввести и отправить команду sigtrain 0 first и нажать на кнопку "Послать", то будет активирован режим записи команды с сигнатурой «first» в ячейку памяти модуля 0. Сигнатура это уникальный ярлык (имя), который описывает команду, т. е. first означает первый этаж для нашей системы. Когда в окне монитора появится сообщение "Speaknow", то следует проговорить в микрофон голосовую команду "Первый". После появления сообщения "Speakagain", требуется проговорить команду еще раз. Если оба слова совпали, то модуль выдает сообщение Success: 1, это означает, что команда успешно распознана и записана. Если модуль не смог сопоставить две команды (например, было шумно в помещении или команды были разными), то модуль выдаст сообщение о неудачной попытке записи "Cann'tmatch", после чего предложит начать процесс записи команды заново до тех пор, пока не будут предоставлены верные данные. В процессе записи команд время для произношения сигнализируется красным светодиодом, а время распознавания голосовой команда сигнализируется миганием желтого светодиода на плате модуля. В результате успешного обучения и записи сигнатур в памяти устройства появится сообщение Record 0 Trained (рисунок 4.3). Этот процесс выполняется и для других команд (Второй этаж, Третий этаж и т. д.), но при этом используются другие ячейки памяти (1 и 2), например нужно ввести в командную строку монитора COM-порта функцию sigtrain 1 second и повторить процедуру записи для других сигнатур.

Рисунок 4.3 – Настройки модуля и обучение командам

4.4 Разработка программы обработки голосовых команд

После того как модуль распознавания устной речи был обучен голосовым командам его можно использовать в системе управления совместно микропроцессорной платформой Ардуино. Для этого требуется загрузить в память микроконтроллера новый скетч, выполняющий непосредственно обработку голосовых команд пользователя. Программа состоит из нескольких основных частей, однократно запускаемых функций настройки микроконтроллера и циклически выполняемого кода. На рисунке 4.4 представлен фрагмент кода, выполняющий подключение дополнительных пользовательских библиотек c помощью функции #include, настройку цифровых выводов микроконтроллера 2 и 3 на работу в режиме передачи информации по протоколу RS-232 посредством команды VR myVR(2,3), а также первичную конфигурацию некоторых программных констант и переменных.

Рисунок 4.4 – Фрагмент программного кода

Далее в программе однократно запускается функция настройки void setup и выполняется проверка текущего состояния модуля распознавания голоса. Микропроцессор через уже настроенный последовательный порт c использованием команды Serial.println отправляет тестовый запрос для получения в ответ диагностической информации. Если при взаимодействии устройств по протоколу RS-232 появились проблемы и подключение не было установлено, то программа сформирует соответствующее сообщение и отправит его в COM-порт (просмотреть сообщение можно открыв монитор порта). Эти действия выполняются командами Serial.println("NotfindVoiceRecognitionModule.") и Serial.println("PleasecheckconnectionandrestartArduino.") – модуль распознавания голоса не найден или не обнаружен и пожалуйста проверьте соединение и перезапустите микроконтроллер. Если подключение с голосовым модулем было выполнено успешно, то программа выполнит загрузку голосовых команд и отправит соответствующее сообщение в последовательный порт с помощью команд (myVR.load((uint8_t)firstRecord) >= 0){ Serial.println("firstRecordloaded");}. Данная операция повторяется для всех семи сигнатур.

Рисунок 4.5 – Запуск функции настройки voidsetup

После выполнения настроек всех параметров системы запускается бесконечный цикл (рабочая часть программы). Цикл voidloop содержит два цикла for. В первом цикле реализуется следующая программная конструкция: если микропроцессор получает команду по последовательному порту (от панели управления/планшетного компьютера), то выполняется одна из структур case. Эта структура позволяет управлять процессом выполнения программы, программист может задавать альтернативный код, выполняемый при разных условиях. Если найден оператор case, значение которого равно значению переменной полученной через последовательный порт, то выполняется программный код в этом операторе. Для лучшей структуризации и разделения имен переменных разных циклов операторам case присвоены латинские символы соответствующие номеру этажа заданного пользователем (например, case ‘а’ выполняется, когда пользователь выбрал первый этаж). При этом латинский символ ‘а’ является внутренней программной переменной, которая определяется программой как команда 0 с сигнатурой first. Ключевое слово break является командой выхода из оператора case. После выполнения запроса пользователя процесс повторяется заново.

Рисунок 4.6 – Запуск первого цикла for с конструкцией case.

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

Рисунок 4.7 – Запуск второго цикла for,

обработка голосовых команд

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

Полный код программы представлен в приложении А.

4.5 Разработка и описание приложения с графическим интерфейсом

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

LabVIEW (англ. LaboratoryVirtualInstrumentationEngineeringWorkbench) — это кроссплатформенная графическая среда разработки приложений и платформа для выполнения программ, созданных на графическом языке программирования «G» фирмы NationalInstruments(США). LabVIEW используется в системах сбора и обработки данных, а также для управления техническими объектами и технологическими процессами. Идеологически LabVIEW очень близка к SCADA-системам, но в отличие от них в большей степени ориентирована на решение задач не столько в области АСУ ТП, сколько в области АСНИ[7].

Графический язык программирования «G», используемый в LabVIEW, основан на архитектуре потоков данных. Последовательность выполнения операторов в таких языках определяется не порядком их следования (как в императивных языках программирования), а наличием данных на входах этих операторов. Операторы, не связанные по данным, выполняются параллельно в произвольном порядке.

Программа LabVIEW называется и является виртуальным прибором (англ. VirtualInstrument) и состоит из двух частей:

  1. блочной диаграммы, описывающей логику работы виртуального прибора;

  2. лицевой панели, описывающей внешний интерфейс виртуального прибора.

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

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

Блочная диаграмма содержит функциональные узлы, являющиеся источниками, приемниками и средствами обработки данных. Также компонентами блочной диаграммы являются терминалы («задние контакты» объектов лицевой панели) и управляющие структуры (являющиеся аналогами таких элементов текстовых языков программирования, как условный оператор «IF», операторы цикла «FOR» и «WHILE» и т. п.). Функциональные узлы и терминалы объединены в единую схему линиями связей.

На рисунке 4.8 представлена лицевая панель графического интерфейса.

Графический интерфейс содержит визуальный образ ассистента, который может быть задан любым анимированным изображением, используемые файлы анимации должны иметь стандартное расширение gif. Также на лицевой панели отображаются индикаторы «Состояние системы», «Остановка лифта по требованию» и «Вызов помощи». При вводе голосовых команд и сообщении номера этажа ассистенту на экране отображается ответ ассистента. Ответ показывает какую команду ассистент распознал и будет выполнять. Для задания номера этажа вручную без использования голосового интерфейса можно воспользоваться текстовым полем для ввода команды. Когда ассистент получит команду от пользователя, кроме индикации ответа на экране, также системой будет воспроизведено звуковое сообщение, при этом меняется визуальный эффект анимации ассистента (например, на «произношение»). Звуковые сообщения воспроизводятся программой из раннее записанных файлов. Запись аудио файлов выполняется с помощью технологии машинного чтения текста. Для этого использовался сервис translate.google.ru. Текст ответа записывался на странице переводчика в браузере и с помощью инструмента «прослушать» воспроизводился на компьютере (динамиками). Средствами LabVIEW производилась запись звуковых сообщений и составлялась база аудиофайлов с ответами.

Рисунок 4.8 – Графический интерфейс панели управления в LabVIEW.

Приложение разработанное в LabVIEW работает следующим образом: сначала выполняется конфигурация параметров последовательного порта посредством функции VISASerial и загрузка аудиофайлов с помощью подприбора ReadFromMeasurementFile, после чего устанавливается соединение по протоколу RS-232 с микропроцессорной платформой Ардуино через USB. Далее запускается цикл whileloop (по условию), в котором производится чтение/запись команд из/в COM-порт с помощью функций VISARead/Write. Воспроизведение звукового сообщения выполняется посредством Express-VIPlayWaveform. Определение поведения ассистента выполняется с помощью структур case для каждой команды. Блок диаграмма программы представлена на рисунке 4.9.

Рисунок 4.9 – Блок-диаграмма программы LabVIEW.

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

Характеристики

Список файлов ВКР

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6617
Авторов
на СтудИзбе
295
Средний доход
с одного платного файла
Обучение Подробнее