roboforum.ru

Технический форум по робототехнике.
Текущее время: 26 ноя 2024, 18:52

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 335 ]  На страницу 1, 2, 3, 4, 5 ... 23  След.
Автор Сообщение
 Заголовок сообщения: Робот Т-800 на 3D принтере и ПК в качестве системы управлени
СообщениеДобавлено: 27 июл 2016, 12:50 
Не в сети
Аватара пользователя

Зарегистрирован: 27 июл 2016, 12:11
Сообщения: 156
Здравствуйте.
Представляю свою работу в области ИИ

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

HUD дисплей системы
Изображение

Печать тела T-800 началась
Изображение

Голова напечатана, электроника установлена
Изображение

Компьютер установлен в грудную клетку
Изображение

В качестве сервоконтроллера использую Pololu Maestro

Плечи распечатаны и установлены
Изображение

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

Тазовая кость установлена
Изображение

Загрузка системы


Проверка гироскопа и системы свой чужой


Сейчас печатаются руки. Время завершения приблизительно 3-4 недели.

В скором времени выложу видео диалога.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот Т-800 на 3D принтере и ПК в качестве системы управ
СообщениеДобавлено: 27 июл 2016, 13:50 
Не в сети
Site Admin
Аватара пользователя

Зарегистрирован: 04 окт 2004, 12:58
Сообщения: 10989
Откуда: St.Petersburg
Skype: taranenko.sergey
ФИО: Сергей Тараненко
браво, давно такой темы не было.
будет много вопросов от постояльцев, готовьтесь :)

Пока если есть возможность чуть больше про программу ?
что в качестве базовой ОС (или bare metal)

Какие технологии используются для ИИ ? (графы , нейросети , аппаратные AI ускорители итд?)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот Т-800 на 3D принтере и ПК в качестве системы управ
СообщениеДобавлено: 27 июл 2016, 14:01 
Не в сети
Аватара пользователя

Зарегистрирован: 13 янв 2011, 15:25
Сообщения: 8033
Откуда: Санкт-Петербург
Ничоссе :shock: , круто. Скайнет отдыхает.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот Т-800 на 3D принтере и ПК в качестве системы управ
СообщениеДобавлено: 27 июл 2016, 15:24 
Не в сети
Аватара пользователя

Зарегистрирован: 27 июл 2016, 12:11
Сообщения: 156
Видео почему-то не добавилось.
Модератор setar:видео поправил в первом сообщении, здесь дубль убрал


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот Т-800 на 3D принтере и ПК в качестве системы управ
СообщениеДобавлено: 27 июл 2016, 16:11 
Не в сети
Site Admin
Аватара пользователя

Зарегистрирован: 04 окт 2004, 12:58
Сообщения: 10989
Откуда: St.Petersburg
Skype: taranenko.sergey
ФИО: Сергей Тараненко
видео (https://youtu.be/wSdd3NYlq2Y) вставляется так:
Код:
[youtubе]wSdd3NYlq2Y[/youtubе]


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот Т-800 на 3D принтере и ПК в качестве системы управ
СообщениеДобавлено: 27 июл 2016, 17:59 
Не в сети
Аватара пользователя

Зарегистрирован: 27 июл 2016, 12:11
Сообщения: 156
Setar, спасибо.

ОС Windows XP, процессор Intel Core i7, Вся программа написана на Visual Basic 6.0
Может сам искать ответы на вопросы что, кто, как в интернете, если не находит в собственной базе знаний. Вопросы можно задавать свободно, т.е. одинаково поймет который час и сколько время. Собирает информацию в интенете о погоде, курсе доллара, гороскоп, новости. Подробнее возможности покажу в скором времени на видео. Осталось доделать, чтобы голову поворачивал в мою сторону.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот Т-800 на 3D принтере и ПК в качестве системы управ
СообщениеДобавлено: 27 июл 2016, 18:43 
Не в сети

Зарегистрирован: 23 июл 2012, 15:24
Сообщения: 1480
Обалденно! Вот это работа!

P.S. Блин... Аж стыдно за свои поделки.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот Т-800 на 3D принтере и ПК в качестве системы управ
СообщениеДобавлено: 27 июл 2016, 22:33 
Не в сети
Аватара пользователя

Зарегистрирован: 30 сен 2008, 18:49
Сообщения: 2681
Откуда: Где-то в Латинской Америке
Ахренеть!!! Во что люди делают! А я уже опечалился было, что на форуме остались только теоретики и мечтатели...
saifer писал(а):
Вся программа написана на Visual Basic 6.0

Я то думал, что единственный тут динозавр, который еще пописывает иногда на VB6 :)
Хотим про все и подробно!

Добавлено спустя 9 минут 23 секунды:
Re: Робот Т-800 на 3D принтере и ПК в качестве системы управлени
saifer писал(а):
Интересует есть ли возможность использовать распознавание Google офлайн на компьютере так же как на телефонах.

Меня тоже. Русскоязычная распознавалка от Гугла по моему мнению самая лучшая из доступных. Но мне даже онлайн не удался в свое время. По крайней мере на XP и VB6


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот Т-800 на 3D принтере и ПК в качестве системы управ
СообщениеДобавлено: 28 июл 2016, 07:41 
Не в сети
Аватара пользователя

Зарегистрирован: 27 июл 2016, 12:11
Сообщения: 156
У меня как раз распознавание голоса работает на XP но неудобно, что нужно постоянное подключение к интернет. Как-то бы изловчиться, чтобы с телефона при оффлайн распознавании данные передавались скажем на SD карту, а тогда получить их в Vb6 будет уже не проблема. Но все готовые решения в PlayMarket типа голосовых блокнотов не имеют автоматического сохранения. Вот думаю. По подробнее про программу покажу на видео в скором времени.

Рабочее окно программы
Вложение:
Work.jpg
Work.jpg [ 502.16 КиБ | Просмотров: 13383 ]


Командный режим для изменения некоторых параметров
Вложение:
com.jpg
com.jpg [ 518.63 КиБ | Просмотров: 13361 ]


Переключение режимов активации распознавания через Google
Вложение:
speak.jpg
speak.jpg [ 463.41 КиБ | Просмотров: 13357 ]


Программирование
Вложение:
In.jpg
In.jpg [ 418.75 КиБ | Просмотров: 13419 ]


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот Т-800 на 3D принтере и ПК в качестве системы управ
СообщениеДобавлено: 28 июл 2016, 17:31 
Не в сети
Аватара пользователя

Зарегистрирован: 30 сен 2008, 18:49
Сообщения: 2681
Откуда: Где-то в Латинской Америке
Шикарный дизайн окон. Обычно, когда делаешь для себя,времени на красивое оформление всегда не хватает.
Какие стявяться цели перед проектом?
saifer писал(а):
Как-то бы изловчиться...

Для "домашнего ассистента", написанного тоже на VB6, я пользовался смартфоном в качестве голосового пульта управления. Разпознавагием занимался сам смартфон в режиме офлайн, а асистенту скармливал результат в текстовом виде через ВТ.
Хотелось бы узнать подробнее про гугл распознавание на ХР. Я застрял на этапе получения правильного FLAC файла. Уже и не помню, что там не клеилось.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот Т-800 на 3D принтере и ПК в качестве системы управ
СообщениеДобавлено: 29 июл 2016, 03:56 
Не в сети
Аватара пользователя

Зарегистрирован: 24 окт 2011, 23:32
Сообщения: 803
Откуда: Севастополь
прог. языки: асм
Отличная работа. Можно тыкать носом всех апологетов Вин10 и .Net-а :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот Т-800 на 3D принтере и ПК в качестве системы управ
СообщениеДобавлено: 29 июл 2016, 07:51 
Не в сети
Аватара пользователя

Зарегистрирован: 27 июл 2016, 12:11
Сообщения: 156
Цели пока напечатать полностью тело и установить все сервоприводы. Передвигаться пока будет в моторизированном инвалидном кресле, управляемом тоже контроллером Pololu.
Для распознавания я переработал под себя проект с исходным кодом MSpeech http://programs74.ru/mspeech.html
А как у вас на смартфоне было реализовано начало записи файла. Мне нужно связь в обе стороны. Т.е. чтобы смартфон начинал запись голоса, когда моя программа скажем на его sd карту в файле скажем Control.txt записывает цифру 1, если 0, то он не пишет. Готовых решений в PlayMarket я не нашел. Можно конечно написать, но я не знаком с Android.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот Т-800 на 3D принтере и ПК в качестве системы управ
СообщениеДобавлено: 29 июл 2016, 17:11 
Не в сети
Аватара пользователя

Зарегистрирован: 30 сен 2008, 18:49
Сообщения: 2681
Откуда: Где-то в Латинской Америке
Не совсем понял, зачем что-то записывать на sd. Запись начинается, когда пользователь готов говорить (т.е. что-нибудь нажимает на смартфоне), либо робот инициализирует начало записи по ВТ и запись идет, пока что-нибудь не распознается.
Разработчики позаботились, чтобы программить на андроиде смогла при желании любая домохозяйка. На appinventor, например.
Я сначала пользовался sl4a. Вот пример кода на питоне:
Код:
#_*_ coding: utf-8 _*_
import android
droid = android.Android()

SPP_ID='00001101-0000-1000-8000-00805F9B34FB' #SPP профиль
BT_DEVICE_ID = '11:11:11:11:11:11'   #устройство, с которым будем соединяться
cmd=""
#зададим словарь команд
comands={
   u"таймер":"TIM",
   u"прошло":"TPA",
   u"осталось":"TFA",
   u"напомни":"NAP",
   u"радио":"RAD",
   u"погода":"WEA",
   u"температура":"TEM",
   u"градусов":"TEM",
   u"тише":"VOL",
   u"громче":"VOH",
   u"молчи":"MUT",
   u"говори":"MUN",
   u"громкость":"VOZ",
   u"звук":"VOZ",
   u"время":"HOR",
   u"времени":"HOR",
   u"новости":"NEW",
   u"вперед":"NEX",
   u"следующий":"NEX",
   u"следующую":"NEX",
   u"назад":"BVD",
   u"играй":"PLY",
   u"стоп":"STP",
   u"пауза":"PAU",
   u"музыка":"MUZ",
   u"музыку":"MUZ",
   u"стой":"STO",
   u"будильник":"ALA",
   u"курс":"USD"
}
#зададим словарь параметров
parameters={
     u"выключи":"off",
   u"отключи":"off",
     u"включи":"on",
   u"эхо":"1",
   u"вести":"0",
   u"маяк":"3",
   u"джаз":"4",
   u"латино":"5",
   u"латина":"5",
   u"класика":"6",
   u"моцарт":"6",
   u"романтическое":"radioromantika"
}
#зададим словарь чисел
digits={
     u"один":"1",
     u"одна":"1",
     u"одну":"1",
     u"три":"3",
     u"пять":"5",
     u"десять":"10",
   u"пятнадцать":"15",
   u"двадцать":"20",
   u"тридцать":"30"
}

droid.vibrate() 
#примем голосовую команду
results = droid.recognizeSpeech(u"говори",None,None)   
instring=results.result
droid.makeToast(instring)
#включим bt
droid.toggleBluetoothState(True) 
droid.bluetoothConnect(SPP_ID, BT_DEVICE_ID) 

#преобразуем исходную строку в список входящих в нее слов
string=instring.split(" ")
for x in string:  #проверим совпадение с командой для каждого слова
   if x in comands:
      cmd+=comands[x]
      break
if cmd:
   if (cmd=="TIM" or cmd=="NAP" or cmd=="VOZ" or cmd=="ALA"):
      for x in string:
         try:
            i=int(x) #проверка, является ли числом
            cmd+=x #если удалось преобразовать в число, добавляем к команде
         except Exception:
            pass
         if x in digits: #если числа распознались словами
            cmd+=digits[x]
            # break
   elif cmd=="RAD":
      for x in string:  #проверим совпадение с параметром для каждого слова
         if x in parameters:
            cmd+=parameters[x]
            break
   else:
      pass
else: cmd='NONE'
droid.makeToast(cmd)
cmd='*'+cmd+'!'
#отправим обработанный результат
droid.bluetoothWrite(cmd) 

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

Хотелось бы больше подробностей про робота: структурную схему, характеристики железа, что он будет делать руками...

Добавлено спустя 3 часа 29 минут 40 секунд:
saifer писал(а):
Для распознавания я переработал под себя проект с исходным кодом

Было бы интересно посмотреть ваш вариант, если он не явлется комерческой тайной. Разбираться в исходниках на Delphi как-то не охота. И ообще было бы супер, сделать для этой цели готовую библиотеку для общего потребления (на входе - комманда начала записи, на выходе - распознанный гуглом результат). Я так в сети ничего такого не нашел.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот Т-800 на 3D принтере и ПК в качестве системы управ
СообщениеДобавлено: 01 авг 2016, 07:42 
Не в сети
Аватара пользователя

Зарегистрирован: 27 июл 2016, 12:11
Сообщения: 156
Я изменил немного программу MSpeech чтобы она вставляла распознанный текст в активное поле TextBox, скомпилировал EXE`шник и вызываю его уже из VB6

1) Определяем в соответствии с выбраны режимом распознавания момент наступления события запись

Код:
Private Sub ModeVoiceRecord_Timer()
If CPU.StopSPK.Caption = 0 And CPU.Speakakt.Enabled = False Then
    If CommandView.Enabled = False And CPU.StartSpeak.Enabled = False Then
      CPU.JSOnActive.Caption = "1"
      If Res.VoiceRecognitionMode.Caption = "1" Then
          SiS1.Logic.Caption = "Continuous voice recording mode "
          ModeVoiceRecord.Enabled = False
          If Res.RecSay.Caption = "1" Then Code2.SRec.Enabled = True
          GoogleASR.Enabled = True
       End If
       If Res.VoiceRecognitionMode.Caption = "3" Then
          If Res.KeyD.Caption = "1" Then
             SiS1.Logic.Caption = "Recording is activated by pressing key "
             Res.KeyD.Caption = "0"
          If Res.RecSay.Caption = "1" Then Code2.SRec.Enabled = True
             GoogleASR.Enabled = True
             ModeVoiceRecord.Enabled = False
          End If
       End If
       If Res.VoiceRecognitionMode.Caption = "2" Then
          If Res.RecQu.Caption = "0" Then
             Rem If (SiS1.HALArray(1).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(2).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(3).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(4).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(5).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(6).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(7).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(8).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(9).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(0).Caption > SiS1.AudioLevelAverage.Caption + 10) Then
             If (SiS1.HALArray(code.Label12.Caption - 1)) > (SiS1.AudioLevelAverage.Caption + 10) Then
                PlayWaveFile App.Path & "\snd\OkGoogle.sys", True
                SiS1.Logic.Caption = "AudioLevel Averrage:" + SiS1.AudioLevelAverage.Caption + " "
                GoogleASR.Enabled = True
                ModeVoiceRecord.Enabled = False
             End If
          Else
             Rem If (SiS1.HALArray(1).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(2).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(3).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(4).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(5).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(6).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(7).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(8).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(9).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(0).Caption > SiS1.AudioLevelAverage.Caption + 10) Then
              If (SiS1.HALArray(code.Label12.Caption - 1)) > (SiS1.AudioLevelAverage.Caption + 10) Then
                SiS1.Logic.Caption = "Trigger switched " + Res.ForN.Caption + " "
                If Res.ForN.Caption > 2 Then
                    PlayWaveFile App.Path & "\snd\OkGoogle.sys", True
                    SiS1.Logic.Caption = "AudioLevel Averrage:" + SiS1.AudioLevelAverage.Caption + " "
                    GoogleASR.Enabled = True
                    ModeVoiceRecord.Enabled = False
                    Res.ForN.Caption = 0
                    Exit Sub
                  End If
                  Res.ForN.Caption = Res.ForN.Caption + 1
             Else
                  Res.ForN.Caption = 0
             End If
          End If
       End If
       If Res.VoiceRecognitionMode.Caption = "4" Then
          If SiS1.facedetect.Caption = "DETECT" Then
             PlayWaveFile App.Path & "\snd\OkGoogle.sys", True
             SiS1.Logic.Caption = "Voice Record start face detect "
             GoogleASR.Enabled = True
             ModeVoiceRecord.Enabled = False
          End If
       End If
       If Res.VoiceRecognitionMode.Caption = "5" Then
          If Res.RecQu.Caption = "0" Then
             If SiS1.Mdetection.Visible = True Then
                PlayWaveFile App.Path & "\snd\OkGoogle.sys", True
                SiS1.Logic.Caption = "Voice Record start motion detect "
                GoogleASR.Enabled = True
                ModeVoiceRecord.Enabled = False
             End If
          Else
             If SiS1.Mdetection.Visible = True Then
                SiS1.Logic.Caption = "Trigger switched " + Res.ForN.Caption + " "
                If Res.ForN.Caption > 15 Then
                   PlayWaveFile App.Path & "\snd\OkGoogle.sys", True
                   SiS1.Logic.Caption = "Voice Record start motion detect "
                   GoogleASR.Enabled = True
                   ModeVoiceRecord.Enabled = False
                   Res.ForN.Caption = 0
                End If
                Res.ForN.Caption = Res.ForN.Caption + 1
             Else
                Res.ForN.Caption = 0
             End If
          End If
       End If
       If Res.VoiceRecognitionMode.Caption = "6" Then
          If SiS1.facedetect.Caption = "DETECT" Then
Rem             If (SiS1.HALArray(1).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(2).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(3).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(4).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(5).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(6).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(7).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(8).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(9).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(0).Caption > SiS1.AudioLevelAverage.Caption + 10) Then
Rem                PlayWaveFile App.Path & "\snd\OkGoogle.sys", True
Rem                SiS1.Logic.Caption = "Voice Record start motion detect "
Rem                googleasr.Enabled = True
Rem                ModeVoiceRecord.Enabled = False
Rem             End If
          If Res.RecQu.Caption = "0" Then
             Rem If (SiS1.HALArray(1).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(2).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(3).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(4).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(5).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(6).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(7).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(8).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(9).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(0).Caption > SiS1.AudioLevelAverage.Caption + 10) Then
             If (SiS1.HALArray(code.Label12.Caption - 1)) > (SiS1.AudioLevelAverage.Caption + 10) Then
                PlayWaveFile App.Path & "\snd\OkGoogle.sys", True
                SiS1.Logic.Caption = "AudioLevel Averrage:" + SiS1.AudioLevelAverage.Caption + " "
                GoogleASR.Enabled = True
                ModeVoiceRecord.Enabled = False
             End If
          Else
             Rem If (SiS1.HALArray(1).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(2).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(3).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(4).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(5).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(6).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(7).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(8).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(9).Caption > SiS1.AudioLevelAverage.Caption + 10) Or (SiS1.HALArray(0).Caption > SiS1.AudioLevelAverage.Caption + 10) Then
              If (SiS1.HALArray(code.Label12.Caption - 1)) > (SiS1.AudioLevelAverage.Caption + 10) Then
                SiS1.Logic.Caption = "Trigger switched " + Res.ForN.Caption + " "
                If Res.ForN.Caption > 2 Then
                    PlayWaveFile App.Path & "\snd\OkGoogle.sys", True
                    SiS1.Logic.Caption = "AudioLevel Averrage:" + SiS1.AudioLevelAverage.Caption + " "
                    GoogleASR.Enabled = True
                    ModeVoiceRecord.Enabled = False
                    Res.ForN.Caption = 0
                    Exit Sub
                  End If
                  Res.ForN.Caption = Res.ForN.Caption + 1
             Else
                  Res.ForN.Caption = 0
             End If
          End If
          End If
       End If
   End If
End If
End Sub


Открываем текстовое поле для приема распознанной фразы

Код:
Private Sub GoogleASRRead_Timer()
Label8.Caption = Label8.Caption + 1
If Label8.Caption = 2 Then SiS1.Logic.Caption = "call google asr "
If Label8.Caption = 3 Then SiS1.Logic.Caption = "recive wave data to google.com "
If Label8.Caption = 4 Then
    Label8.Caption = 0
    GoogleASRRead.Enabled = False
    SiS1.Logic.Caption = "run record voice "
    Rem If Res.VoiceRecognitionMode.Caption <> "3" Then Shell App.Path & "\exe\mspeech.exe"
    SiS1.ComActivation.Enabled = True
    Code2.NEndRecord.Caption = 100
    SiS1.HCalcEndRec.Visible = True
    Code2.CalculationEndRecording.Enabled = True
End If
End Sub


Проверяем на отсутствие данных

Код:
Private Sub CalculationEndRecording_Timer()
If (SiS1.HALArray(code.Label12.Caption - 1)) > (SiS1.AudioLevelAverage.Caption + 10) Then
    Rem
Else
    Code2.NEndRecord.Caption = Code2.NEndRecord.Caption - 1
End If
SiS1.HCalcEndRec.Caption = "Calculation of the end of recording: " + Code2.NEndRecord.Caption
If Code2.NEndRecord.Caption = 0 Then
    code.GoogleHudL.Enabled = True
    Code2.CalcEndRecFlash.Enabled = True
    SiS1.Logic.Caption = "Timeout voice record "
    SiS1.Elog.Text = "Îøèáêà ðàñïîçíàâàíèÿ ðå÷è. Íåò ñèãíàëà èëè äàííûå íå ðàñïîçíàíû. "
    CalculationEndRecording.Enabled = False
    Code2.ErrorRecordVoice.Enabled = True
End If
End Sub


Если получили строку отправляем в обработку

Код:
If CPU.JSOnActive.Caption = "1" And Len(Command.Text) > 1 Then
   Code2.CalcEndRecFlash.Enabled = True
   Code2.CalculationEndRecording.Enabled = False
End If

     Command.Text = UTF8ToWin(Command.Text)
    If CPU.JSOnActive.Caption = "1" And Len(Command.Text) > 1 And Command.Visible = True Then
       SiS1.VoiceCommandSentCPU.Enabled = True
       SiS1.Logic.Caption = "recive ASR data to v_cpu "
    End If

Private Sub VoiceCommandSentCPU_Timer()
Label15.Caption = Label15.Caption + 1
If Label15.Caption >= 4 Then
    code.GoogleHudL.Enabled = True
    SiS1.Logic.Caption = "terminate process mspeech.exe "
    strComputer = "."
    strProcsToKill = "mspeech.exe"
    Set wbemObjectSet = GetObject("winmgmts://" & strComputer).InstancesOf("Win32_Process")
    For Each wbemObject In wbemObjectSet
        If LCase(wbemObject.Name) = strProcsToKill Then wbemObject.Terminate
    Next
    Rem Label3.Caption = 0
    Label15.Caption = 0
    SiS1.Logic.Caption = "call v_cpu "
    Command.Visible = False
    PlayWaveFile App.Path & "\snd\l.snd", True
    code.Command.Text = code.Command.Text + Command.Text + Chr$(13)
    If code.HME.Caption = 1 Then
       Logic.Caption = "find human malfunction: " + Command.Text + " "
       code.hm1.Enabled = False
       code.hm2.Enabled = True
       Exit Sub
    End If
    Rem SiS1.GoogleL.Caption = ""
    CPU.ModeVoiceRecord.Enabled = True
    CPU.CommandView.Enabled = True
    VoiceCommandSentCPU.Enabled = False
End If
End Sub


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот Т-800 на 3D принтере и ПК в качестве системы управ
СообщениеДобавлено: 01 авг 2016, 13:27 
Не в сети

Зарегистрирован: 03 янв 2012, 12:55
Сообщения: 3298
Откуда: Москва
прог. языки: VB6, BASCOM, ASM...
Dmitry__ писал(а):
Ничоссе :shock: , круто. Скайнет отдыхает.

Ах-но!!! :shock: :good:
А главное, вин ХП и VB6! Выкуси! :P


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 335 ]  На страницу 1, 2, 3, 4, 5 ... 23  След.

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot] и гости: 14


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO