You are on page 1of 34

BitVoicer 1.

2 Manual do Usurio Portugus

BitSophia - www.bitsophia.com.br

BitVoicer 1.2
Manual do Usurio
Portugus

Copyright BitSophia Software Ltda. 2013. Todos os direitos reservados.

BitVoicer 1.2 Manual do Usurio Portugus

BitSophia - www.bitsophia.com.br

Sumrio
1 APRESENTAO _____________________________________________________________________ 3
1.1
1.2
1.3

REQUISITOS MNIMOS _________________________________________________________________ 3


COMPATIBILIDADE ____________________________________________________________________ 3
AVISO DE SEGURANA _________________________________________________________________ 3

2 PRIMEIROS PASSOS __________________________________________________________________ 3


2.1
2.2
2.3

INSTALAO ________________________________________________________________________ 3
INTERFACE GRFICA ___________________________________________________________________ 4
ATIVAO _________________________________________________________________________ 4

3 CONFIGURAES ____________________________________________________________________ 5
3.1 INICIALIZAO_______________________________________________________________________ 6
3.2 RECONHECIMENTO DE VOZ ______________________________________________________________ 7
3.2.1 SPEECH RECOGNITION LANGUAGE (IDIOMA DO RECONHECIMENTO DE VOZ) ____________________________ 7
3.2.1.1 Idiomas Adicionais _______________________________________________________________ 7
3.2.2 ACCEPTABLE CONFIDENCE LEVEL (NVEL DE CONFIANA ACEITVEL) _________________________________ 8
3.2.3 MINIMUM AUDIO LEVEL (NVEL MNIMO DE UDIO)____________________________________________ 8
3.2.4 AUDIO LEVEL ACTIVATED PERIOD (PERODO ATIVADO POR NVEL DE UDIO) ____________________________ 9
3.2.5 LATENCY PERIOD (PERODO DE LATNCIA) __________________________________________________ 10
3.2.6 DESEMPENHO DO RECONHECIMENTO DE VOZ _______________________________________________ 10
3.3 COMUNICAO _____________________________________________________________________ 11
3.4 AUDIO INPUT (ENTRADA DE UDIO)_______________________________________________________ 11
3.4.1 AUDIO STREAMING CALIBRATION (CALIBRAO DE UDIO STREAMING) _____________________________ 11
4 CRIANDO, EDITANDO E USANDO ESQUEMAS DE VOZ ______________________________________ 12
4.1
4.2
4.3
4.4
4.5
4.6
4.7

O ESQUEMA DE VOZ _________________________________________________________________ 12


ADICIONANDO SENTENAS _____________________________________________________________ 14
ITENS DE SENTENA __________________________________________________________________ 15
PALAVRA DE ATIVAO _______________________________________________________________ 16
INICIANDO E PARANDO O RECONHECIMENTO DE VOZ ___________________________________________ 17
TIPO DE DADO PADRO PARA COMANDOS __________________________________________________ 18
EXEMPLO PRTICO ___________________________________________________________________ 18

5 COMUNICAO ____________________________________________________________________ 18
5.1 PROTOCOLO BITVOICER _______________________________________________________________ 18
5.2 ENVIANDO DADOS AO BITVOICER ________________________________________________________ 20
5.3 COMANDOS _______________________________________________________________________ 20
5.4 BIBLIOTECA BITVOICER PARA ARDUINO ____________________________________________________ 20
5.4.1 REFERNCIA DA BIBLIOTECA BITVOICER PARA ARDUINO_________________________________________ 21
5.5 EXEMPLOS DE UTILIZAO DA BIBLIOTECA BITVOICER ___________________________________________ 23
5.5.1 UDIO CAPTADO PELO MICROFONE DO COMPUTADOR _________________________________________ 23
5.5.2 UDIO CAPTADO POR UM MICROFONE CONECTADO AO MICRO-CONTROLADOR _________________________ 25
6 UDIO STREAMING _________________________________________________________________ 28
6.1

SINALIZANDO PARA O BITVOICER_________________________________________________________ 29

7 PAINIS DE INFORMAO ____________________________________________________________ 30


7.1
7.2

NVEL DE UDIO, ATIVIDADE, STATUS E ERROS ________________________________________________ 30


MONITOR DE COMUNICAO ___________________________________________________________ 34

8 SUPORTE E CONTATO _______________________________________________________________ 34


Copyright BitSophia Software Ltda. 2013. Todos os direitos reservados.

BitSophia - www.bitsophia.com.br

BitVoicer 1.2 Manual do Usurio Portugus

1 Apresentao
BitVoicer o software de reconhecimento de voz que traz para o universo dos micro-controladores todo
o poder de processamento e anlise de voz dos PCs. Sua tecnologia de reconhecimento de voz e o uso de
padres de comunicao comuns na indstria (TCP/IP e Serial/UART) tornam extremamente fcil e rpida a
criao de funcionalidades complexas de reconhecimento de voz para praticamente qualquer microcontrolador programvel disponvel no mercado.
Este manual ir guia-lo pelo processo de instalao e configurao do BitVoicer, demonstrar a incrvel
flexibilidade dos Esquemas de Voz da BitSophia e apresentar todas as ferramentas disponveis no
aplicativo.

1.1 Requisitos mnimos

Sistema operacional Windows Vista ou Windows 7


Microsoft .NET Framework 4.0 ou posterior
Uma das interfaces de comunicao a seguir:
o Porta Serial
o USB (usada como porta COM virtual)
o Adaptador Ethernet
o Adaptador Wireless
Conexo com a internet (para ativao ou instalao de idiomas adicionais)

1.2 Compatibilidade
A principio, o BitVoicer compatvel com qualquer micro-controlador programvel e/ou shield que utilize
comunicao TCP/IP baseada em sockets ou comunicao serial (interface UART). No entanto, voc deve
consultar atentamente a documentao do fabricante do seu dispositivo e certificar-se que ele compatvel
com estes padres de comunicao.
Durante o desenvolvimento do BitVoicer alguns produtos dos fabricantes abaixo foram utilizados e esto
mais propensos a serem compatveis:

Arduino
Roving Networks
Digi International
Atmel Corporation
Sparkfun Electronics

1.3 Aviso de segurana


O BitVoicer no deve ser utilizado em qualquer aplicao de misso crtica, suporte a vida, conduo e
operao de maquinrio ou veculos automotores, ou ainda, qualquer aplicao cujo mau funcionamento
possa causar dano propriedade e ao meio-ambiente ou atentar contra a sade de pessoas ou animais. A
BitSophia no autoriza o uso de seu software em qualquer uma destas aplicaes, assumindo, o usurio,
quaisquer responsabilidades pela violao desta proibio.

2 Primeiros passos
2.1 Instalao
Para realizar os procedimentos de instalao a seguir, ser necessrio ter iniciado o Windows em uma
conta com permisses administrativas:

Copyright BitSophia Software Ltda. 2013. Todos os direitos reservados.

BitVoicer 1.2 Manual do Usurio Portugus

BitSophia - www.bitsophia.com.br
1) Baixe o arquivo
(www.bitsophia.com).

de

instalao

BitVoicerSetup_v12_xXX.exe

do

site

da

BitSophia

2) Execute o arquivo de instalao e siga os passos do assistente de instalao. Ser necessrio


concordar com os termos do contrato de licena do BitVoicer e escolher a pasta para instalao do
aplicativo.
3) Execute o aplicativo atravs do link criado em sua rea de trabalho ou atravs do link em Iniciar
Todos os Programas BitSohia BitVoicer. A ativao do BitVoicer no ser solicitada at que se
pressione o boto para iniciar o motor de reconhecimento de voz.

2.2 Interface grfica


A interface grfica do BitVoicer composta basicamente por 2 reas: menus e rea de trabalho. Os
menus, descritos abaixo e encontrados no topo da tela, acessam funcionalidades exibidas sempre na rea
de trabalho:

File New: inicia a criao de um novo Esquema de Voz iniciando o editor na rea de trabalho
do aplicativo.
File Open: permite a abertura de Esquemas de Voz previamente gravados. Por padro, a
pasta inicial exibida a mesma informada em File Preferences Default output folder.
File Close: fecha o Esquema de Voz atualmente aberto. Caso o Esquema de Voz atual
tenha sido alterado, uma caixa de mensagem perguntar ao usurio se deseja salvar o
Esquema de Voz atual.
OBS: a utilizao de qualquer uma das opes acima interrompe o reconhecimento de voz caso
ele esteja sendo executado.
File Save: grava o Esquema de Voz atual. Caso este esquema ainda no tenha sido gravado
anteriormente, uma caixa de dialogo solicitar ao usurio que informe o nome e a localizao do
arquivo a ser gravado.
File Save as: grava o Esquema de Voz atual em arquivo e local a ser especificado pelo
usurio.
File Preferences: abre o formulrio onde devem ser informadas todas as configuraes
padres do BitVoicer.
File Exit: encerra o aplicativo e o motor de reconhecimento de voz caso ela esteja sendo
executada. Se o Esquema de Voz aberto tiver sido alterado e no for salvo, o BitVoicer ir
perguntar ao usurio se este deseja gravar o Esquema de Voz antes de encerrar o aplicativo.
Help BitVoicer manual: abre o manual de referncia do BitVoicer.
Help Activation: abre o formulrio que iniciar o processo de ativao da sua cpia do
BitVoicer. Caso a ativao j tenha sido feita, este formulrio ficar inacessvel ao usurio.
Help About BitVoicer: exibe todas as informaes sobre sua cpia do BitVoicer alm de
dados para contato.

2.3 Ativao
Para poder utilizar as interfaces de comunicao do BitVoicer, necessrio realizar a ativao de sua
cpia com uma chave de produto vlida. Caso voc ainda no possua esta chave, adquira a sua em
www.bitsophia.com.
Com a chave de produto em mos, abra o BitVoicer como administrador (clique no atalho do BitVoicer
com o boto direito do mouse e selecione Executar como administrador) e acesse a opo Activation no
menu Help do BitVoicer. Voc dever ver o formulrio a seguir:

Copyright BitSophia Software Ltda. 2013. Todos os direitos reservados.

BitSophia - www.bitsophia.com.br

BitVoicer 1.2 Manual do Usurio Portugus

Aps informar uma chave de produto vlida, clique em Activate. Neste ponto, seu computador dever
estar conectado internet para que o servio de ativao da BitSophia possa confirmar a chave de produto
informada.
Na caixa de texto abaixo do boto Activate, possvel acompanhar o processo de ativao e visualizar
qualquer erro que ocorra durante este processo. Caso a ativao seja bem sucedida, uma caixa de
mensagem ir avisar que sua cpia do BitVoicer est ativada e o motor de reconhecimento de voz j pode
ser iniciado.
Durante o processo de ativao, o BitVoicer gera um cdigo exclusivo para o seu computador. Este
cdigo ser criptografado e armazenado nos servidores da BitSophia, porm no ser utilizado para
contata-lo no futuro e no ser compartilhado com terceiros.
Uma vez ativada, a chave de produto no poder ser utilizada para ativao de qualquer verso do
BitVoicer em outro computador. Sendo assim, ative sua cpia do BitVoicer apenas na mquina que deseja
utilizar o software.

3 Configuraes
Para acessar o formulrio de configurao do BitVoicer clique em Preferences no menu File. Voc
dever visualizar o formulrio a seguir:

Copyright BitSophia Software Ltda. 2013. Todos os direitos reservados.

BitSophia - www.bitsophia.com.br

BitVoicer 1.2 Manual do Usurio Portugus

O BitVoicer j vem configurado com um conjunto de preferncias padro e o motor de reconhecimento


de voz pode ser iniciado sem qualquer configurao inicial.

3.1 Inicializao
As seguintes opes de inicializao podem ser alteradas nas configuraes de inicializao do
BitVoicer:

Open BitVoicer when you log on to the computer (Abra o BitVoicer quando voc logar no
computador): quando esta opo estiver marcada, o BitVoicer ir iniciar junto com o Windows e
aparecer minimizado na barra de tarefas do seu computador.
Activate speech recognition when the BitVoicer starts (Ativar reconhecimento de voz
quando o BitVoicer iniciar): quando esta opo estiver marcada, o BitVoicer ir iniciar o motor
de reconhecimento de voz logo aps ser aberto. Caso esta opo seja marcada, ser
necessrio informar tambm um Esquema de Voz padro (Default Voice Schema) que ser
carregado logo aps a abertura do BitVoicer. Voc pode utilizar a ferramenta de busca de
arquivos (boto Search), localizada direita da caixa de texto Default Voice Schema, para
selecionar o arquivo padro.
Default output folder (Pasta de sada padro): esta a pasta padro utilizada para gravar os
esquemas de voz criados no BitVoicer. Voc pode utilizar a ferramenta de busca de pastas

Copyright BitSophia Software Ltda. 2013. Todos os direitos reservados.

BitSophia - www.bitsophia.com.br

BitVoicer 1.2 Manual do Usurio Portugus

(boto Search), localizada direita da caixa de texto Default output folder, para selecionar a
pasta padro.

3.2 Reconhecimento de voz


Esta seo das preferncias responsvel pelo adequado funcionamento do motor de reconhecimento
de voz. Embora o BitVoicer j venha configurado com um conjunto de preferncias padro, necessrio ler
atentamente os itens 3.2.1 a 3.2.6 caso deseje aprimorar seu funcionamento.

3.2.1 Speech Recognition Language (Idioma do reconhecimento de voz)


A caixa de seleo Speech recognition language exibe os idiomas de reconhecimento de voz instalados
em seu computador. At o momento, os seguintes idiomas esto disponveis:

Alemo (Alemanha)
Catalo
Chins (China, Honk Kong e Taiwan)
Coreano (Coria)
Dinamarqus (Dinamarca)
Espanhol (Mxico e Espanha)
Finlands (Finlndia)
Francs (Canada e Frana)
Holands (Holanda)
Ingls (Austrlia, Canada, ndia, Reino Unido e Estados Unidos)
Italiano (Itlia)
Japons (Japo)
Noruegus (Noruega)
Polons (Polnia)
Portugus (Brasil e Portugal)
Russo (Rssia)
Sueco (Sucia)

Por padro, o BitVoicer instalado com ingls (US) apenas. Se voc precisar instalar qualquer idioma
adicional, consulte a seo Idiomas Adicionais (item 3.2.1.1).

3.2.1.1 Idiomas Adicionais


Para poder instalar idiomas adicionais, necessrio iniciar o BitVoicer com privilgios administrativos
(Executar como Administrador) e estar conectado a Internet.
Primeiro, clique em Additional Languages (idiomas adicionais) no menu File (arquivo). Voc dever ver
o formulrio abaixo:

Copyright BitSophia Software Ltda. 2013. Todos os direitos reservados.

BitSophia - www.bitsophia.com.br

BitVoicer 1.2 Manual do Usurio Portugus

A caixa de listagem com os idiomas exibe apenas os idiomas que no esto instalados em seu
computador. Selecione um dos idiomas da lista e clique no boto Install (instalar). Depois do download e
instalao do pacote de idioma, ser possvel selecionar o idioma recentemente instalado no formulrio de
preferncias (consulte a seo 3).

3.2.2 Acceptable Confidence Level (Nvel de confiana aceitvel)


O nvel de confiana aceitvel representa a probabilidade relativa mnima que necessria para que o
motor de reconhecimento de voz do BitVoicer aceite determinada fala. O nvel de confiana no indica a
probabilidade absoluta da alternativa reconhecida corresponder a uma determinada fala, mas sim a
probabilidade de ela estar correta dentre as mltiplas alternativas disponveis no Esquema de Voz. Suponha
um Esquema de Voz com dez alternativas de reconhecimento: durante o processo de reconhecimento, ser
dada a cada uma dessas alternativas uma nota (1 a 100%) que representa a probabilidade desta
alternativa, dentre todas as alternativas disponveis, corresponder fala detectada. A alternativa que
receber a maior nota ser aquela aceita pelo motor de reconhecimento de voz. Ao informar um nvel de
confiana aceitvel, voc estabelece um limite mnimo para esta nota e todos os reconhecimentos que
tenham nvel de confiana inferior a este limite, sero rejeitados, ou seja, no ser enviado qualquer
comando ao micro-controlador.
O nvel de confiana aceitvel um valor percentual entre 1 e 100 e o uso de casas decimais
significativo para determinar se uma fala ser aceita ou rejeitada.
Ao configurar o nvel de confiana, deve-se considerar que diferentes interlocutores obtero diferentes
nveis de confiana para a mesma fala. Dessa forma, preciso configurar o nvel de confiana aceitvel de
modo a satisfazer as notas obtidas pelos diversos interlocutores usurios do aplicativo. No entanto, baixar
demasiadamente o nvel de confiana aceitvel pode levar o BitVoicer a aceitar reconhecimentos que, na
verdade, deveriam ser rejeitados.
A melhor forma de obter uma base para o nvel de confiana aceitvel realizando testes de
reconhecimento de voz. Para isso, desabilite a comunicao do BitVoicer (consulte o item 3.3 deste
manual), carregue um Esquema de Voz e inicie o motor de reconhecimento (item 4.5). Observe os nveis de
confiana obtidos no painel de atividade (item 7.1). Neste painel possvel ver a nota atribuda a cada
reconhecimento e obter uma base para o nvel de confiana aceitvel.
importante ressaltar que mudanas no ambiente tambm afetam significativamente os nveis de
confiana obtidos. Por esta razo, quando houver mudana significativa no ambiente (aumento de rudos de
fundo ou mudana no nvel de udio mdio), poder ser necessrio rever a configurao de nvel de
confiana aceitvel.
Para mais informaes sobre nvel de confiana aceitvel, consulte a seo Desempenho do
reconhecimento de voz (item 3.2.6).

3.2.3 Minimum Audio Level (Nvel mnimo de udio)


O nvel mnimo de udio funciona de forma semelhante ao nvel de confiana aceitvel, ou seja, um
limite mnimo que deve ser superado para que determinada fala seja aceita pelo BitVoicer.
Assim que o motor de reconhecimento de voz iniciado, ele passa a armazenar o nvel de udio
captado do ambiente. Com base na configurao do item a seguir (Audio level activate period) feita uma
mdia do nvel de udio no perodo. Caso o nvel de udio, durante o reconhecimento, no atinja esta mdia
acrescida do nvel mnimo de udio, a fala ser rejeitada. Em outras palavras, para que uma fala seja
reconhecida e aceita, em algum momento do processo de reconhecimento, o nvel de udio deve atingir ou
ultrapassar o valor representado pela mdia do nvel de udio acrescido do nvel de udio mnimo.

Copyright BitSophia Software Ltda. 2013. Todos os direitos reservados.

BitVoicer 1.2 Manual do Usurio Portugus

BitSophia - www.bitsophia.com.br

A figura a seguir ilustra o conceito por traz dessa configurao:

3.2.4 Audio Level Activated Period (Perodo ativado por nvel de udio)
O perodo ativado por nvel de udio se inicia quando o nvel mnimo de udio atingido. Este perodo
se renova sempre que o nvel mnimo de udio atingido e toda fala reconhecida neste perodo ser aceita
pelo BitVoicer, independentemente do nvel de udio no momento do reconhecimento, a no ser que:

O nvel de confiana seja inferior ao nvel de confiana aceitvel;


O momento do reconhecimento esteja dentro do perodo de latncia (item 3.2.5);
A palavra de ativao (item 4.4) no tenha sido identificada, caso esta opo tenha sido
selecionada;
O momento do reconhecimento no esteja dentro do perodo de ativao por palavra de
ativao, caso esta opo tenha sido selecionada.

Para entender melhor a funo desta configurao, preciso entender em que ordem os filtros do
BitVoicer atuam e seus graus de prioridade:

Filtro
Nvel de confiana
Nvel de udio
Perodo de ativao por nvel de udio
Perodo de latncia
Perodo de ativao por palavra de ativao

Atuao
1 a atuar
2 a atuar
3 a atuar
4 a atuar
5 a atuar

Prioridade
5
4
3
2
1

De acordo com a tabela acima, os nveis de prioridade mais alta (sendo 1 a mais elevada e 5 a mais
baixa) anulam o reconhecimento aceito por filtros de prioridade mais baixa. Por exemplo, se todos os filtros
validarem um reconhecimento de voz, mas o 5 filtro (cuja prioridade mais elevada) recusar o
reconhecimento, o BitVoicer ir considerar a fala rejeitada. Em outras palavras, todos os filtros devem
validar um reconhecimento para que o BitVoicer aceite determinada fala.
O perodo ativado por nvel de udio deve ser informado em milissegundos (1000 milisegundos = 1
segundo) e deve ser levada em considerao a quantidade de palavras e o tempo necessrio para concluir
a pronncia das sentenas presentes no Esquema de Voz.

Copyright BitSophia Software Ltda. 2013. Todos os direitos reservados.

BitSophia - www.bitsophia.com.br

BitVoicer 1.2 Manual do Usurio Portugus

Para mais informaes sobre perodo ativado por nvel de udio, consulte a seo Desempenho do
reconhecimento de voz (item 3.2.6).

3.2.5 Latency Period (Perodo de latncia)


O perodo de latncia se inicia logo aps um reconhecimento de voz ter sido aceito pelo BitVoicer (o
reconhecimento tem que ter passado por todos os filtros). Neste perodo, qualquer reconhecimento ser
rejeitado mesmo que passe pelos filtros anteriores. O perodo de latncia impede que novos
reconhecimentos sejam aceitos logo aps um reconhecimento vlido, prevenindo o envio de comandos em
sequncia, o que poderia interferir na execuo de um comando previamente enviado ao micro-controlador.

3.2.6 Desempenho do reconhecimento de voz


Esta seo fornece algumas dicas para melhorar o desempenho do motor de reconhecimento de voz do
BitVoicer em diversas situaes. Talvez seja necessrio executar mais de uma dessas dicas para atingir o
desempenho desejado:

Fale de maneira clara e firme. Quanto mais tempo o motor de reconhecimento de voz
permanecer em execuo, maior ser a preciso no estabelecimento de nveis de confiana
adequados;
Pronunciar as palavras com sotaque adequado fundamental para aumentar o nvel de
confiana das sentenas reconhecidas. Se o idioma utilizado no for seu idioma nativo, ser
necessrio dar maior ateno pronncia correta das palavras.
Mantenha o microfone a, no mnimo, um metro de outras fontes de som como alto-falantes e
televisores. Se a interferncia de outras fontes de udio persistir, considere a adoo de um
microfone direcional neste caso;
Evite criar sentenas muito curtas que contenham apenas palavras com uma ou duas slabas. O
motor de reconhecimento de voz do BitVoicer pode identificar estas palavras em diversas partes
da linguagem cotidiana e gerar falsos positivos.
Caso voc esteja utilizando uma palavra de ativao (item 4.4), recomendamos o uso de
palavras com 3 ou mais slabas e cuja ocorrncia na linguagem cotidiana seja pequena;
Para evitar falsos positivos (reconhecimento aceito que deveria ter sido rejeitado), aumente
gradativamente o nvel de confiana aceitvel (preciso decimal) nas configuraes do
BitVoicer;
Em ambientes abertos, com grande quantidade de rudo e/ou outras pessoas falando, considere
a adoo de um headset (h opes sem fio no mercado) e aumente o nvel mnimo de udio
nas configuraes do BitVoicer. Ao utilizar um headset, a boca fica mais prxima do microfone e
a qualidade e o nvel de udio aumentam. Aumentando tambm o nvel mnimo de udio no
BitVoicer, voc evita que a fala de outras pessoas ao redor sejam reconhecidas pelo motor de
reconhecimento de voz.
Considere aumentar gradativamente o nvel mnimo de udio caso estejam ocorrendo falsos
positivos provenientes de outras fontes de udio cujo volume baixo;
Considere aumentar o perodo de latncia para evitar falsos positivos. Dessa forma, o
BitVoicer ir ignorar reconhecimentos imediatamente posteriores a um reconhecimento vlido.
Caso voc tambm esteja utilizando uma palavra de ativao, o perodo de latncia deve ser
menor, j que, na maioria dos casos, uma fala deve sim ser reconhecida logo aps a palavra de
ativao;
Estabelecer um perodo de ativao por nvel de udio correto tambm pode evitar falsos
positivos. Se este perodo de ativao for muito maior que o tempo necessrio para se
pronunciar as sentenas do Esquema de Voz, aumentar a probabilidade de um
reconhecimento com baixo nvel de udio ser aceito. Isso ocorre porque o BitVoicer no ir
rejeitar por baixo nvel de udio reconhecimentos ocorridos dentro deste perodo.
Caso a captao de udio esteja sendo realizada atravs de um microfone conectado ao microcontrolador, certifique-se que a frequncia de amostragem no seja menor que 8000 ou maior

Copyright BitSophia Software Ltda. 2013. Todos os direitos reservados.

10

BitSophia - www.bitsophia.com.br

BitVoicer 1.2 Manual do Usurio Portugus

que 8200 captaes por segundo. O desempenho do reconhecimento de voz pode ser alterado
de forma imprevisvel caso a amostragem esteja fora desta faixa. Certifique-se tambm que o
udio enviado ao BitVoicer est livre de interferncias ou rudos causados pela CPU do microcontrolador, por erros de comunicao, por variaes de voltagem ou por flutuaes de
medio.

3.3 Comunicao
Nesta seo das preferncias, voc configura o meio utilizado pelo BitVoicer para se comunicar com
seu micro-controlador:

Use USB/Serial Communication (Use comunicao USB/Serial): ao selecionar esta opo,


necessrio informar a qual porta serial seu micro-controlador est conectado (ex. COM4,
COM8, etc) e os outros parmetros de comunicao serial. possvel que velocidades de
comunicao (Bits per Second) elevadas provoquem erros de comunicao em determinados
computadores ou micro-controladores. Se voc acreditar que est recebendo informaes
incorretas em seu micro-controlador, tente reduzir a velocidade de comunicao.
Use TCP/IP Communication (Use comunicao TCP/IP): ao selecionar esta opo,
necessrio informar o endereo IP de destino dos comandos e a porta de comunicao no
endereo de destino. O micro-controlador de destino deve suportar comunicao baseada em
soquetes (Berkeley sockets).

Em ambas as interfaces de comunicao, o BitVoicer ir bloquear as portas em uso assim que o motor
de reconhecimento de voz for iniciado. Nenhuma outra aplicao no computador ter acesso a estas portas.
No entanto, possvel enviar dados de seu micro-controlador de volta para o PC e visualizar os dados
enviados no painel monitor de comunicao (item 7.2).
Voc tambm pode desabilitar o envio de informaes ao micro-controlador selecionando Disable
communications. Mesmo com esta opo selecionada, possvel iniciar o motor de reconhecimento de voz
e monitorar a atividade do BitVoicer no painel de atividade (item 7.1).

3.4 Audio Input (Entrada de udio)


O BitVoicer pode processar udio captado atravs do microfone instalado no computador ou atravs de
um microfone conectado ao micro-controlador. A opo Audio Input permite que seja selecionada a fonte
de udio desejada. Para maiores informaes a respeito da captao de udio atravs de microcontroladores, consulte a seo Audio Streaming (item 6).

3.4.1 Audio Streaming Calibration (Calibrao de udio Streaming)


Se a captao de udio for feita pelo micro-controlador e enviada ao BitVoicer na forma de fluxo de
udio, ser necessrio executar esta ferramenta para que o BitVoicer possa estabelecer corretamente o
nvel do udio recebido. O painel de informaes sobre os nveis de udio (item 7.1) e o filtro de nvel de
udio (item 3.2.3) dependem diretamente dos valores obtidos nesta ferramenta.

Copyright BitSophia Software Ltda. 2013. Todos os direitos reservados.

11

BitVoicer 1.2 Manual do Usurio Portugus

BitSophia - www.bitsophia.com.br

O campo Samples per Second (amostras por segundo) exibe a quantidade de amostras recebidas
pelo BitVoicer a cada segundo. Esse valor pode ser usado como referncia para que seja ajustada a
quantidade de captaes de udio feitas pelo micro-controlador.
O campo Reference Audio Level (nvel de udio de referncia) exibe o valor mdio das amostras
recebidas. Em uma onda de udio, este valor representa o centro da amplitude da onda como demostrado
na figura abaixo. Como o BitVoicer processa amostras de 8 bits (0 a 255), os valores ideais para este
campo so 128 ou 129. Mais informaes sobre udio streaming na seo 6 deste manual.

Ao clicar no boto Start (Iniciar), o BitVoicer envia o comando Start Sampling (Iniciar amostragem)
para o micro-controlador. O boto Stop, por sua vez, envia o comando Stop Sampling (Parar
amostragem) quando pressionado. Mais informaes sobre comandos do BitVoicer na seo Comunicao
(item 5) deste manual.

4 Criando, editando e usando Esquemas de Voz


4.1 O Esquema de Voz
O esquema de voz a estrutura sobre a qual o BitVoicer trabalha para associar um comando especfico
a uma sentena reconhecida pelo motor de reconhecimento de voz. Para atingir esse objetivo, o BitVoicer
se utiliza de duas funes principais do Esquema de Voz: criar todas as permutaes (chamados de
anagramas) possveis para uma sentena e mapear cada um desses anagramas para o comando
correspondente.
Os anagramas so criados calculando-se todas as permutaes possveis a partir dos itens de sentena
(item 4.3). Considere o modelo de sentena abaixo:

Item Simgle
turn

Item Option
on
off

Item Single
the

Item Option
lights
tube
oven
shower

O BitVoicer criaria os seguintes anagramas no Esquema de Voz:

Copyright BitSophia Software Ltda. 2013. Todos os direitos reservados.

12

BitVoicer 1.2 Manual do Usurio Portugus

BitSophia - www.bitsophia.com.br

turn
turn
turn
turn
turn
turn
turn
turn

on
on
on
on
off
off
off
off

Anagrams
the
the
the
the
the
the
the
the

lights
tube
oven
shower
lights
tube
oven
shower

Para melhor compreenso, esta seria a rvore de possibilidades encontrada no Esquema de Voz:

lights

on

tube
the
shower
oven

turn
lights
tube
off

the
oven
shower

No Editor de Esquemas de Voz do BitVoicer, esta seria a apresentao do Esquema de Voz acima:

Copyright BitSophia Software Ltda. 2013. Todos os direitos reservados.

13

BitSophia - www.bitsophia.com.br

BitVoicer 1.2 Manual do Usurio Portugus

Aps criar todos os anagramas possveis, o BitVoicer permite o mapeamento de um comando


especfico para cada anagrama, como pode ser visto na parte inferior da tela.
Outra caracterstica importante nos Esquemas de Voz da BitSophia a flexibilidade. A qualquer
momento possvel inserir, alterar ou excluir itens de sentena ou sentenas inteiras. O BitVoicer
imediatamente recalcula toda a rvore de possibilidades e cria os anagramas correspondentes no Esquema
de Voz. A capacidade de incluir sentenas ou itens de sentena no foi limitada no aplicativo e o tamanho
de um Esquema de Voz virtualmente no tem limites. Os nicos fatores limitadores de um Esquema de Voz
so a capacidade de processamento de sua mquina e a memria disponvel.
Uma ltima considerao importante sobre os Esquemas de Voz: ao iniciar o reconhecimento de voz, o
BitVoicer carrega todas as sentenas e analisa as entradas de udio para procurar a melhor
correspondncia (anagrama) dentre todas as sentenas disponveis. Por esta razo, pode-se dizer que as
sentenas constituem o vocabulrio do motor de reconhecimento de voz. Caso o usurio pronuncie uma
palavra fora deste vocabulrio, em qualquer posio da sentena, o motor de reconhecimento de voz far
uma aproximao com as palavras disponveis nesta posio a fim de encontrar uma correspondncia no
Esquema de Voz. No entanto, essa aproximao, na maioria das vezes, levar a uma rejeio no
reconhecimento de voz.

4.2 Adicionando sentenas


O primeiro passo para iniciar a construo de um Esquema de Voz adicionar uma sentena. Para
isso, voc deve utilizar o boto Add New Sentence (identificado pela seta vermelha na figura abaixo)
localizado no canto superior esquerdo do Editor de Esquemas de Voz.

Copyright BitSophia Software Ltda. 2013. Todos os direitos reservados.

14

BitSophia - www.bitsophia.com.br

BitVoicer 1.2 Manual do Usurio Portugus

Ao clicar neste boto, uma nova sentena adicionada ao Esquema de Voz. Por padro, esta sentena
j criada com um item Single (simples) em branco. direita do item de sentena, tambm aparecem dois
botes para adio e excluso de itens (mais detalhes no item 4.3).
O boto Delete Selected Sentences, localizado direita do boto Add New Sentences, remove as
sentenas marcadas na caixa de seleo localizada no incio de cada sentena (identificado pela seta
laranja). Remover qualquer sentena do Esquema de Voz tambm remove todos os comandos associados
a esta sentena. Caso seus comandos possuam dados que voc no quer perder, lembre-se de copiar os
dados dos comandos antes de remover uma sentena.
Note que, ao inserir uma sentena, um anagrama criado na rea Sentence Anagrams do quadro de
comandos. Este anagrama aparece com a descrio {EMPTY}, por que no h qualquer dado nesta
posio da sentena que permita a criao de um anagrama completo. Diferente de um item Single, um
item de sentena do tipo Option (consulte o item 4.3 logo a seguir) aparecer com a descrio [{EMPTY}]
quando este estiver vazio.
Um Esquema de Voz pode conter inmeras sentenas e os anagramas criados com base em cada uma
dessas sentenas sero colocados em ordem no painel de comandos. Tome como exemplo um Esquema
de Voz com duas sentenas, sendo que cada sentena possui quatro anagramas possveis. O painel de
comandos exibir primeiro os quatro anagramas da primeira sentena e, em seguida, os quatro anagramas
da segunda sentena, ou seja, os anagramas no se misturam. O ltimo anagrama de uma sentena
sempre define o incio dos anagramas da sentena seguinte.
Um aspecto muito importante sobre o motor de reconhecimento de voz do BitVoicer que ele sempre
identifica uma sentena por inteiro e no apenas parte dela. Suponha que voc possua a seguinte sentena
em seu esquema de voz: v para frente dez centmetros. O motor de reconhecimento de voz espera ouvir
a frase completa e no apenas parte dela como, por exemplo, v para frente. Nesta situao, o motor de
reconhecimento de voz deve rejeitar o reconhecimento. Se voc desejar que o BitVoicer identifique ambas
as sentenas (v para frente e v para frente dez centmetros), ser necessrio criar duas sentenas.
Uma para cada frase.

4.3 Itens de sentena


Cada sentena em um Esquema de Voz composta por uma sequncia de itens de sentena. Estes
itens de sentena podem ser de dois tipos:

Single (Simples): os itens Single representam uma posio na sentena cujo contedo
comum a todas as permutaes possveis. Um item Single pode conter uma palavra ou um
conjunto de palavras consideradas como uma unidade.

Copyright BitSophia Software Ltda. 2013. Todos os direitos reservados.

15

BitSophia - www.bitsophia.com.br

BitVoicer 1.2 Manual do Usurio Portugus

Option (Opo): os itens Option so compostos por um conjunto de opes que podem variar
dentro daquela posio na sentena. Se um item Option contiver apenas uma opo, ele
apresentar o mesmo comportamento de um item Single dentro do Esquema de Voz. Da
mesma forma que um item Single, cada opo dentro de um item Option pode ser composta por
apenas uma palavra ou um conjunto de palavras consideradas como uma unidade.

A sentena abaixo utiliza alguns itens Single e Option em sua construo:

E este o conjunto de anagramas criados com base na sentena acima:

Veja que os itens Single (1 e 4 itens) se repetem em todos os anagramas. Mesmo para o primeiro item
Single, formado por duas palavras, no h criao de permutaes para cada uma das palavras contidas
neste item.
O 2 e o 3 item so itens do tipo Option e, neste caso, os anagramas sofrem permutaes exatamente
na posio a que cada um deles pertence. Nestes itens do tipo Option, possvel notar que nmeros no
devem ser utilizados em um Esquema de Voz em sua forma numeral (1,2,3 ...), mas, sim, em sua forma
literal (um, dois, trs ...).
Para diferenciar entre um item de sentena do tipo Single ou Option, basta selecionar a opo
correspondente em cada item. Nos itens do tipo Single, os botes de + (adio) e (remoo) e a caixa de
listagem de opes ficam desabilitadas. Ao alterar um item de sentena para o tipo Option, estas opes do
item tornam-se ativas.
Para adicionar uma opo em um item Option, voc deve digitar o texto da opo na caixa de texto do
item e clicar no boto + (adio) ou, ainda, simplesmente digitar o texto e pressionar ENTER. O BitVoicer
automaticamente adicionar a opo lista de opes.
Para remover uma opo em um item Option, selecione a opo na caixa de listagem de opes e
clique no boto (remoo). Remover qualquer opo de um item Option tambm remove todos os
comandos associados a esta opo. Caso seus comandos possuam dados que voc no quer perder,
lembre-se de copiar os dados dos comandos antes de remover uma opo.

4.4 Palavra de ativao


A palavra de ativao uma palavra, ou um conjunto de palavras, que deve ser pronunciada antes da
sentena propriamente dita. Voc pode pronunciar a palavra de ativao e a sentena de forma contnua ou
apenas a palavra de ativao e, dentro do perodo de ativao, a sentena propriamente dita. Ao selecionar
Use Activation Word(s) (Use palavra(s) de ativao) no esquema de voz (figura abaixo), o BitVoicer s ir
aceitar um reconhecimento se a palavra de ativao for pronunciada antes da sentena.
Copyright BitSophia Software Ltda. 2013. Todos os direitos reservados.

16

BitSophia - www.bitsophia.com.br

BitVoicer 1.2 Manual do Usurio Portugus

O perodo de ativao por palavra de ativao representa o perodo durante o qual no necessrio
repetir esta palavra para que o BitVoicer considere um reconhecimento como vlido. Este perodo deve ser
informado em segundos.
A palavra de ativao pode ser usada para imprimir pessoalidade ao Esquema de Voz ou como forma
de evitar falsos positivos. Neste ltimo caso, deve-se considerar a utilizao de palavras de ativao cuja
ocorrncia seja pequena na linguagem cotidiana e recomenda-se o uso de palavras com 3 ou mais slabas.
Vale lembrar que a palavra de ativao um dos filtros utilizados pelo BitVoicer para aceitar ou rejeitar
um reconhecimento (consulte o item 3.2.4).

4.5 Iniciando e parando o reconhecimento de voz


Para iniciar o reconhecimento de voz, basta clicar no boto Start localizado no centro da parte superior
do Editor de Esquemas de Voz.

necessrio estar com um Esquema de Voz aberto para poder iniciar o reconhecimento de voz e este
esquema no pode conter qualquer anagrama com a descrio {EMPTY} ou [{EMPTY}], ou seja, no pode
haver qualquer item de sentena vazio no Esquema de Voz. No necessrio estar com todos os
comandos preenchidos no painel de comandos, mas quando o anagrama correspondente a este comando
for identificado pelo motor de reconhecimento de voz, o painel de atividade ir informar um erro ao enviar
comando.
S ser possvel utilizar as interfaces de comunicao se voc possuir uma cpia ativada do BitVoicer.
Para ativar sua cpia consulte o item 2.3 deste manual.
Vale lembrar que o BitVoicer ir bloquear a porta de comunicao especificada nas preferncias e esta
porta permanecer bloqueada at que o motor de reconhecimento de voz seja parado. Ao iniciar o
reconhecimento, tambm no ser possvel realizar qualquer edio no Esquema de Voz e os painis de
informao (consulte item 7) passaro a exibir diversas informaes sobre o estado do aplicativo e da
comunicao. Para ganhar acesso novamente ao Esquema de Voz, necessrio parar o motor de
reconhecimento.
Ao clicar no boto Start ou Stop, o BitVoicer envia uma atualizao de status para o micro-controlador.
Este status pode ser Engine Runnning (motor funcionando) ou Engine Stopped (motor parado). Para
maiores informaes sobre a troca de dados entre micro-controladores e o BitVoicer, consulte a seo
Comunicao (item 5).

Copyright BitSophia Software Ltda. 2013. Todos os direitos reservados.

17

BitSophia - www.bitsophia.com.br

BitVoicer 1.2 Manual do Usurio Portugus

4.6 Tipo de dado padro para comandos


Sempre que um novo anagrama criado no Esquema de Voz, ele adicionado ao painel de comandos.
O tipo de dado padro deste comando definido de acordo com o valor da caixa de listagem Default
Command Data Type (tipo de dado padro dos comandos) localizada logo abaixo do boto Add New
Sentence do Editor de Esquemas de Voz.

Esta ferramenta especialmente til se voc est criando um Esquema de Voz com muitos anagramas
e lhe poupar trabalho quando estiverem sendo definidos os comandos do Esquema de Voz.

4.7 Exemplo prtico


No pacote de instalao do BitVoicer h um exemplo de Esquema de Voz completo (Sample.vsc). Este
esquema pode ser encontrado na pasta VoiceSchemas da pasta de instalao do BitVoicer. Trata-se de um
Esquema de Voz para controle de uma cama hospitalar automatizada. Esse esquema seria til em um
centro mdico onde os pacientes se encontram em estado de mobilidade reduzida.

5 Comunicao
O BitVoicer pode se comunicar com o micro-controlador atravs de portas seriais ou portas TCP/IP
(consulte o item 3.3). Qualquer que seja o meio de comunicao utilizado, a maioria dos dados trocados
entre o BitVoicer e o micro-controlador so formatados em um protocolo prprio descrito no item 5.1. Este
protocolo s no utilizado quando o BitVoicer est recebendo fluxo de udio enviado pelo microcontrolador (item 6).
A comunicao entre o BitVoicer e o micro-controlador se d em 5 situaes:

Ao utilizar a ferramenta de Calibrao de udio Streaming (item 3.4.2), quando se clica no


boto Start ou Stop;
Ao iniciar ou parar o motor de reconhecimento de voz;
Quando um reconhecimento de voz aceito;
Quando se envia alguma informao do micro-controlador para ser exibida no painel Monitor de
Comunicao;
Durante todo o perodo que o BitVoicer estiver recebendo fluxo de udio enviado pelo microcontrolador.

5.1 Protocolo BitVoicer


O Protocolo BitVoicer consiste em uma srie de parmetros de formatao que devem ser seguidos
para trocar informaes entre o BitVoicer e os micro-controladores. Este protocolo deve ser utilizado em
ambos os sentidos de comunicao: BitVoicer micro-controlador e micro-controlador BitVoicer.
A tabela abaixo descreve a formatao dos datagramas enviados e recebidos pelo BitVoicer:

Copyright BitSophia Software Ltda. 2013. Todos os direitos reservados.

18

BitVoicer 1.2 Manual do Usurio Portugus

BitSophia - www.bitsophia.com.br

Nome
Inicio de transmisso

Posio do
Byte
1

Valor
1

Tipo de dado

1 = Char
2 = Int
3 = Byte
4 = String
254 = Comando
255 = Status

Comprimento dos Dados

Dados

4an

Fim de transmio

n+1

Descrio
Marcador de inicio de transmisso

Indica o tipo de dado carregado pelo


datagrama

Comprimento, em bytes, do campo dados


Contm os dados propriamente ditos
n = 3 + Comprimento dos dados
Marcador de fim de transmisso

Embora os comandos sejam formatados segundo estes parmetros, em essncia, todos os dados
enviados so uma sequncia de bytes cujo comprimento ir variar em funo do tipo de dado e da
quantidade de informao a ser enviada.
O primeiro byte de um datagrama sempre deve conter o valor 1 (0x01). Este byte sinaliza o comeo de
um datagrama. O segundo byte, cujo valor pode ser aqueles da coluna Valor na tabela acima, informa o tipo
de dado contido no campo Dados. O terceiro byte indica o comprimento, em bytes, do campo Dados. Como
o campo Comprimento dos Dados composto de apenas um byte, o maior comprimento possvel para o
campo Dados 255 (maior valor possvel em apenas um byte). O quarto campo contm os dados
propriamente ditos e seu comprimento aquele informado no terceiro byte. O quinto campo deve conter o
valor 4 (0x04) e indica o fim do datagrama. Este campo pode ser utilizado para checar se um datagrama
completo foi recebido.
As informaes contidas no campo Dados do datagrama so formatadas conforme a descrio a seguir:

Dados Char: corresponde a apenas um caractere imprimvel da tabela ASCII


(http://en.wikipedia.org/wiki/ASCII). O comprimento deste tipo de dado ser sempre 1 byte e seu
valor ser o valor decimal correspondente ao caractere na tabela ASCII;
Dados Int: contm um valor inteiro de 16 bits entre -32768 e 32767. O comprimento deste tipo
de dados ser sempre 2 bytes (little-endian: http://en.wikipedia.org/wiki/Endianness) que,
quando combinados, constituem o valor inteiro enviado;
Dados Byte: corresponde a um inteiro sem sinal de 8 bits entre 0 e 255. Ao inserir um valor do
tipo byte no painel de comandos do BitVoicer (localizado logo abaixo do construtor de
sentenas), deve-se seguir o seguinte formato: b00000000, onde 0 pode ser 0 ou 1 (exemplos
de comandos do BitVoicer no item 5.3);
Dados String: corresponde a uma sequncia de caracteres cujo comprimento mximo varia em
funo da direo da comunicao. Por causa da limitao de tamanho do buffer de entrada de
alguns micro-controladores, a maior sequncia de caracteres que pode ser enviada para o
micro-controlador igual a 59 caracteres. No sentido contrrio, quando uma string enviada ao
BitVoicer, o maior comprimento da sequncia de caracteres est limitado ao tamanho mximo
do campo Dados do protocolo BitVoicer (255 caracteres). O valor de cada caractere ser o valor
decimal correspondente ao caractere na tabela ASCII (http://en.wikipedia.org/wiki/ASCII);
Dados Comando: este tipo de dado no deve ser confundido com os comandos enviados ao
micro-controlador em resposta a um reconhecimento vlido e cujo contedo definido pelo
usurio (item 5.3). Atualmente, o BitVoicer envia apenas dois valores do tipo comando ao microcontrolador: Start Sampling (Iniciar amostragem) e Stop Sampling (Parar amostragem). Este
comando enviado apenas pela ferramenta Calibrao de udio Streaming (item 3.4.2) e

Copyright BitSophia Software Ltda. 2013. Todos os direitos reservados.

19

BitSophia - www.bitsophia.com.br

BitVoicer 1.2 Manual do Usurio Portugus

conter o valor 1 (0x01) para iniciar a amostragem ou o valor 0 (0x00) para encerrar a
amostragem;
Dados Status: um datagrama com este tipo de dado enviado sempre que se inicia ou se
encerra o motor de reconhecimento de voz. Ao iniciar o reconhecimento de voz atravs do
boto Start do Editor de Esquemas de Voz (item 4.1), o valor 1 (0x01 Engine Running)
empacotado em um datagrama e enviado ao micro-controlador. Ao clicar no boto Stop, o valor
0 (0x00 Engine Stopped) enviado da mesma forma.

5.2 Enviando dados ao BitVoicer


O BitVoicer monitora constantemente os dados recebidos na porta utilizada para se comunicar com o
micro-controlador. Os dados recebidos nesta porta tambm devem ser formatados de acordo com os
parmetros do Protocolo BitVoicer e seu contedo exibido no painel Monitor de Comunicao (item 7.2).
Somente possvel enviar ao BitVoicer dados do tipo Char (1 caractere), Int (16 bits), Byte (inteiro sem sinal
de 8 bits) ou String (sequncia de caracteres).
Caso a captao de udio esteja sendo feita atravs de um microfone conectado ao micro-controlador,
todo dado enviado ao BitVoicer enquanto ele est processando fluxo de udio, considerado parte do
udio. Por esta razo, caso seja necessrio enviar dados para exibio no Monitor de Comunicao,
necessrio sinalizar ao BitVoicer para que ele pare de processar o fluxo de udio e passe a manipular os
dados recebidos como datagramas. Mais detalhes sobre sinalizao no fluxo de udio no item 6 deste
manual.

5.3 Comandos
Os comandos so dados que o BitVoicer envia ao micro-controlador em resposta a um reconhecimento
de voz. Estes dados so formatados em um protocolo prprio (consulte o item 5.1) e podem ser dos
seguintes tipos:

Byte (byte): um byte escrito no formato b00000000, onde 0 pode ser 0 ou 1.


Char (caractere): apenas 1 caractere alfa-numrico.
Int (inteiro): nmero inteiro de 16 bits entre -32768 e 32767.
String (trecho de texto): uma sequncia de caracteres de no mximo 59 caracteres.

O painel de comandos (localizado logo abaixo do construtor de sentenas) o local onde se informam
os comandos para cada anagrama gerado no Esquema de Voz. A figura abaixo mostra um trecho do painel
de comandos e alguns comandos de exemplo:

5.4 Biblioteca BitVoicer para Arduino


O pacote de instalao do BitVoicer contm uma biblioteca open souce que pode ser utilizada como
referncia para desenvolvimento de seus sketchs. Voc tambm pode usar esta biblioteca diretamente em
seu cdigo para recuperar os dados enviados pelo BitVoicer e para realizar captao de udio. Esta
biblioteca encontra-se disponvel dentro da pasta Library da pasta de instalao do BitVoicer.

Copyright BitSophia Software Ltda. 2013. Todos os direitos reservados.

20

BitSophia - www.bitsophia.com.br

BitVoicer 1.2 Manual do Usurio Portugus

Para utilizar a biblioteca BitVoicer em seu sketch, necessrio copiar toda a pasta BitVoicer11 para a
sub-pasta libraries localizada dentro da pasta de instalao da IDE Arduino. Em seguida, adicione a
referncia para a biblioteca BitVoicer no incio do cdigo como exibido abaixo:
#include <BitVoicer11.h>
Para obter maiores informaes sobre como utilizar uma biblioteca em seus sketches, consulte o tutorial
sobre bibliotecas disponvel no site do Arduino (http://arduino.cc/en/Hacking/LibraryTutorial).
OBS 1: A biblioteca BitVoicer para Arduino for feita para funcionar com todas as boards Arduino
exceto a board Arduino Due.
OBS 2: Por padro, a biblioteca BitVoicer utiliza a classe Serial da plataforma Arduino para
implementar comunicao serial. Se for necessrio utilizar qualquer outra interface serial (Serial1,
Serial2 ou Serial3), ser necessrio substituir todas as ocorrncias da classe Serial na biblioteca
BitVoicer pela interface serial desejada.
O ponto central da biblioteca BitVoicer para Arduino a classe BitVoicerSerial. Esta classe contm uma
srie de variveis e funes utilizadas para se comunicar com o BitVoicer e recuperar dados enviados pelo
programa. Para ter acesso as funes desta classe, crie uma instncia global da classe BitVoicerSerial
adicionando o trecho de cdigo abaixo antes das funes setup() e loop() no seu sketch:
BitVoicerSerial bvSerial = BitVoicerSerial();
Antes de utilizar a instncia da classe BitVoicerSerial criada acima, ser necessrio iniciar a
comunicao serial de sua board Arduino. Para isso, insira o trecho de cdigo abaixo dentro da funo
setup() de seu sketch:
Serial.begin(115200);
Lembre-se que a velocidade de comunicao acima deve ser a mesma informada nas preferncias do
BitVoicer (item 3.3) caso a comunicao se d atravs de porta serial.
Neste ponto, todas as configuraes necessrias para comear a interagir com o BitVoicer foram
concludas. Consulte o tpico a seguir para obter informaes sobre todas as variveis e funes
disponveis na classe BitVoicerSerial. O item 5.5 deste manual contm tambm dois exemplos prticos de
como ligar ou desligar um LED conectado a sua board. O primeiro exemplo utiliza captao de udio pelo
microfone do computador e o segundo utiliza um microfone conectado ao micro-controlador.

5.4.1 Referncia da biblioteca BitVoicer para Arduino

Construtor:
o BitVoicerSerial(): retorna uma instncia da classe BitVoicerSerial com todas as
variveis pblicas configuradas com seus valores padro.
Constantes:
o BUFFER_SIZE: contm o valor padro do buffer interno da classe BitVoicerSerial. Valor
= 64;
o BV_DEFAULT: utilizada para configurar a voltagem de referncia nos pinos de entrada
analgica. Valor = 3;
o BV_EXTERNAL: utilizada para configurar a voltagem de referncia nos pinos de
entrada analgica. Valor = 1;
o BV_UNDEFINED: pode ser usada para testar o tipo de dado retornado pela funo
getData(). Valor = 0;
o BV_CHAR: pode ser usada para checar o tipo de dado retornado pela funo getData().
Valor = 1;

Copyright BitSophia Software Ltda. 2013. Todos os direitos reservados.

21

BitSophia - www.bitsophia.com.br

BitVoicer 1.2 Manual do Usurio Portugus

BV_INT: pode ser usada para checar o tipo de dado retornado pela funo getData().
Valor = 2;
o BV_BYTE: pode ser usada para checar o tipo de dado retornado pela funo getData().
Valor = 3;
o BV_STR: pode ser usada para checar o tipo de dado retornado pela funo getData().
Valor = 4;
o BV_COMMAND: pode ser usada para checar o tipo de dado retornado pela funo
getData(). Valor = 254;
o BV_STATUS: pode ser usada para checar o tipo de dado retornado pela funo
getData(). Valor = 255;
o BV_STARTSAMPLING: pode ser usada para checar o dado contido em um datagrama
do tipo Comando. Valor = 1;
o BV_STOPSAMPLING: pode ser usada para checar o dado contido em um datagrama
do tipo Comando. Valor = 0;
o BV_ENGINERUNNING: pode ser usada para checar o status do motor de
reconhecimento de voz na varivel pblica engineRunning da classe BitVoicerSerial.
Valor = 1;
o BV_ENGINESTOPPED: pode ser usada para checar o status do motor de
reconhecimento de voz na varivel pblica engineRunning da classe BitVoicerSerial.
Valor = 0;
Variveis Pblicas:
o byte byteData: armazena o valor da ltima leitura feita pela funo getData() caso haja
algum dado no buffer serial de entrada e caso o dado seja do tipo byte. Essa varivel
pode ser acessada e alterada a qualquer momento pelo cdigo do usurio. Default = 0;
o char charData: armazena o valor da ltima leitura feita pela funo getData() caso haja
algum dado no buffer serial de entrada e caso o dado seja do tipo char. Essa varivel
pode ser acessada e alterada a qualquer momento pelo cdigo do usurio. Default = 0;
o int intData: armazena o valor da ltima leitura feita pela funo getData() caso haja
algum dado no buffer serial de entrada e caso o dado seja do tipo int. Essa varivel
pode ser acessada e alterada a qualquer momento pelo cdigo do usurio. Default = 0;
o String strData: armazena o valor da ltima leitura feita pela funo getData() caso haja
algum dado no buffer serial de entrada e caso o dado seja do tipo String. Essa varivel
pode ser acessada e alterada a qualquer momento pelo cdigo do usurio. Default = 0;
o byte cmdData: armazena o valor da ltima leitura feita pela funo getData() caso haja
algum dado no buffer serial de entrada e caso o dado seja do tipo comando. Essa
varivel pode ser acessada e alterada a qualquer momento pelo cdigo do usurio.
Esta varivel s ser alterada pela classe BitVoicerSerial durante a execuo da
ferramenta de Calibrao de udio Streaming (item 3.4.2). Default = 0;
o boolean engineRunning: armazena o valor da ltima leitura feita pela funo getData()
caso haja algum dado no buffer serial de entrada e caso o dado seja do tipo status.
Essa varivel pode ser acessada e alterada a qualquer momento pelo cdigo do
usurio. O valor desta varivel ser alterado ao iniciar ou parar o motor de
reconhecimento de voz (item 4.5). Default = false;
Funes:
o getData(): realiza uma leitura do buffer de entrada do Arduino, armazena o dado
existente no datagrama na varivel pblica correspondente e retorna o tipo de dado
contido no datagrama. Se o datagrama estiver corrompido ou no corresponder ao
formato do protocolo BitVoicer, os dados do buffer so descartados at o inicio do
prximo datagrama e a funo retorna 0 (BV_UNDEFINED).
o setAudioInput(byte pin): configura o Arduino para fazer leituras analgicas rpidas no
pino de entrada analgico passado funo. Sem a utilizao desta funo, o
conversor analgico-digital (ADC) do micro-controlador ATMEL trabalha com um clock

Copyright BitSophia Software Ltda. 2013. Todos os direitos reservados.

22

BitSophia - www.bitsophia.com.br

o
o

BitVoicer 1.2 Manual do Usurio Portugus

muito baixo. Uma vez que uma preciso de apenas 8 bits necessria para que o
BitVoicer possa analisar o fluxo de udio recebido, aumentar o clock do conversor ADC
no causa prejuzo preciso do conversor e torna possvel a obteno de pelo menos
8000 amostras por segundo.
undoAudioInput(): retorna as configuraes do conversor ADC para os padres
originais de fbrica.
setAnalogReference(byte mode): altera a voltagem de referncia a ser utilizada pelo
conversor analgico-digital. Por padro, as boards Arduino utilizam 3.3 ou 5 volts como
voltagem de referncia nas medies feitas pelo ADC. Se for utilizada qualquer
voltagem de referncia conectada ao pino AREF, obrigatoriamente, deve-se chamar
esta funo passando a constante BV_EXTERNAL como parmetro antes de chamar a
funo setAudioInput() ou processAudio(). Se isso no for feito, a voltagem de
referncia interna do Arduino e a voltagem recebida em AREF causaro um curtocircuito que pode danificar sua board.
startStopListening(): sinaliza ao BitVoicer para iniciar ou parar de considerar os dados
recebidos do micro-controlador como fluxo de udio. Antes de iniciar a transmisso de
fluxo de udio, necessrio chamar esta funo para que o BitVoicer passe a
direcionar o udio recebido para o motor de reconhecimento de voz e no para o painel
Monitor de Comunicao. Uma vez iniciada a transmisso de udio, para enviar
qualquer dado a ser exibido no Monitor de Comunicao, necessrio chamar esta
funo para que o BitVoicer deixe de considerar os dados recebidos como fluxo de
udio e direcione os dados para o Monitor de Comunicao. Se isto no for feito,
qualquer informao recebida pelo BitVoicer enquanto ele estiver processando fluxo de
udio, ser considerada udio e enviada ao motor de reconhecimento de voz. O sinal
enviado ao BitVoicer consiste em uma sequencia de bytes com os seguintes valores:
{255, 255, 255, 255, 0, 0, 0, 0}.
processAudio(unsigned int wait): realiza uma leitura rpida no pino analgico
passado funo setAudioInput(). O valor passado a esta funo o tempo que a
funo ir esperar antes de realizar uma leitura e deve ser informado em
microssegundos (1 microsegundo = 1000 milisegundos). Este tempo deve ser utilizado
para calibrar as tomadas de medio de modo que se atinja o valor mais prximo
possvel de 8000 leituras por segundo. Assim que a medio estiver completa, esta
funo envia ao BitVoicer o valor da medio (1 byte valor 0 a 255). Por esta razo,
esta funo deve ser chamada em intervalos regulares de tempo a fim de evitar
distores no udio digitalizado.
sendToBV(var data): empacota o dado passado a ela em um datagrama do BitVoicer e
envia esta informao ao BitVoicer a fim de exibi-la no Monitor de Comunicao. Os
dados aceitos so do tipo char, byte, int ou String. Caso esteja sendo processado fluxo
de udio, necessrio chamar a funo startStopListening() antes e depois desta
funo.

5.5 Exemplos de utilizao da biblioteca BitVoicer


5.5.1 udio captado pelo microfone do computador
No exemplo abaixo, um LED conectado ao pino digital 4 do Arduino ir acender ou apagar em resposta
a um comando captado pelo microfone do computador.
Primeiro, conecte seu Arduino conforme indicado na figura abaixo:

Copyright BitSophia Software Ltda. 2013. Todos os direitos reservados.

23

BitSophia - www.bitsophia.com.br

BitVoicer 1.2 Manual do Usurio Portugus

Em seguida, copie e cole o sketch abaixo na IDE Arduino e envie o cdigo para a board. Lembre-se que
preciso copiar a pasta contendo os arquivos da biblioteca BitVoicer para a pasta library da IDE Arduino
antes de compilar e enviar seu sketch (consulte o item 5.4).

//Imports the BitVoicer library to the sketch


#include <BitVoicer11.h>
//Instantiates the BitVoicerSerial class
BitVoicerSerial bvSerial = BitVoicerSerial();
//Stores the data type retrieved by getData()
byte dataType = 0;
//Stores the state of pin 4
byte pinVal = 0;
void setup()
{
//Starts serial communication at 9600 bps
Serial.begin(9600);
//Sets digital pin 4 as OUTPUT
pinMode(4, OUTPUT);
//Turns off pin 4
digitalWrite(4, pinVal);
}
void loop()
{
Copyright BitSophia Software Ltda. 2013. Todos os direitos reservados.

24

BitSophia - www.bitsophia.com.br

BitVoicer 1.2 Manual do Usurio Portugus

//Updates the state of pin 4 on every loop


digitalWrite(4, pinVal);
}
//This function runs every time serial data is available
//in the serial buffer after a loop
void serialEvent()
{
//Reads the serial buffer and stores the received data type
dataType = bvSerial.getData();
//Checks if the data type is the same as the one in the
//Voice Schema
if (dataType == BV_BYTE)
{
//Checks the stored value in byteData by getData() and
//changes the value of the pin
if (bvSerial.byteData == 0)
pinVal = LOW;
else
pinVal = HIGH;
}
}
Por fim, abra o esquema de voz Sample2.vsc, localizado na sub-pasta VoiceSchemas da pasta de
instalao do BitVoicer, e clique em Start para iniciar o reconhecimento de voz. O LED conectado board
Arduino dever se acender ao pronunciar turn led on" e se apagar ao pronunciar turn led off.
Caso no haja mudana no estado do LED ao pronunciar os comandos acima, certifique-se que:

Voc selecionou Ingls como idioma de reconhecimento no formulrio de preferncias. Se o


idioma Ingls no est disponvel em seu computador, selecione o idioma de sua preferncia e
traduza a frase no Esquema de Voz para o idioma selecionado;
As configuraes de comunicao esto corretas no formulrio de preferncias (item 3.3);
A velocidade de comunicao (baud rate) a mesma no sketch Arduino e no formulrio de
preferncias;
O udio captado pelo microfone do computador est em um nvel adequado para
reconhecimento (itens 3.2.3 e 7.1).

5.5.2 udio captado por um microfone conectado ao micro-controlador


No exemplo abaixo, um LED conectado ao pino digital 4 do Arduino ir acender ou apagar em resposta
a um comando captado por um microfone ligado board Arduino. O microfone utilizado o microfone
electrec da Sparkfun (BOB-09964 - https://www.sparkfun.com/products/9964).
Primeiro, conecte seu Arduino conforme indicado na figura abaixo:

Copyright BitSophia Software Ltda. 2013. Todos os direitos reservados.

25

BitSophia - www.bitsophia.com.br

BitVoicer 1.2 Manual do Usurio Portugus

Observao importante: note na ligao acima que o pino de 3.3 volts do Arduino est sendo utilizado
como voltagem de referncia (AREF) para o conversor analgico-digital (ADC). Esta configurao se fez
necessria, pois, embora o microfone electrec da Sparkfun funcione em voltagens de 2.7V a 5.5V, no foi
possvel obter leituras satisfatrias com este microfone conectado diretamente fonte de 5 volts do Arduino.
Foi necessrio conectar o microfone fonte de 3.3 volts da board e conectar AREF (referncia analgica)
mesma fonte de 3.3 volts. Dessa forma, foi possvel obter leituras em todo o espectro de valores de 8 bits (0
a 255) com leituras em ambiente silencioso oscilando entre 128 e 129. Atenco: no utilize a funo
analogRead() do Arduino com qualquer voltagem de referncia conectada AREF. Isso pode danificar
sua board se a funo analogReference() no for chamada anteriormente. No cdigo abaixo, a funo
setAnalogReference() da biblioteca BitVoicer chamada para configurar adequadamente a voltagem de
referncia para o conversor ADC do Arduino. Essa funo DEVE ser chamada antes de qualquer outra
funo da classe BitVoicerSerial caso esteja sendo aplicada qualquer voltagem AREF.
Em seguida, copie e cole o sketch abaixo na IDE Arduino e envie o cdigo para a board. Lembre-se que
preciso copiar a pasta contendo os arquivos da biblioteca BitVoicer para a pasta library da IDE Arduino
antes de compilar e enviar seu sketch (consulte o item 5.4).

//Imports the BitVoicer library to the sketch


#include <BitVoicer11.h>
//Instantiates the BitVoicerSerial class
BitVoicerSerial bvSerial = BitVoicerSerial();
//Stores the data type retrieved by getData()
byte dataType = 0;
Copyright BitSophia Software Ltda. 2013. Todos os direitos reservados.

26

BitSophia - www.bitsophia.com.br

BitVoicer 1.2 Manual do Usurio Portugus

//Stores the state of pin 4


byte pinVal = 0;
//Stores true if the Audio Streaming Calibration tool
//is running
boolean sampleTest = false;
void setup()
{
//Sets the analog reference to external (AREF pin)
//WARNING!!! If anything is conected to the AREF pin,
//this function MUST be called first. Otherwise, it will
//damage the board.
bvSerial.setAnalogReference(BV_EXTERNAL);
//Sets up the microcontroller to perform faster analog reads
//on the specified pin
bvSerial.setAudioInput(0);
//Starts serial communication at 115200 bps
Serial.begin(115200);
//Sets digital pin 4 as OUTPUT
pinMode(4, OUTPUT);
//Turns off pin 4
digitalWrite(4, pinVal);
}
void loop()
{
//Captures audio and sends it to BitVoicer if the Audio
//Streaming Calibration Tool is running
if (sampleTest == true)
{
//The value passed to the function is the time
//(in microseconds) that the function has to wait before
//performing the reading. It is used to achieve about
//8000 readings per second.
bvSerial.processAudio(46);
}
//Captures audio and sends it to BitVoicer if the Speech
//Recognition Engine is running
if (bvSerial.engineRunning)
{
//The value passed to the function is the time
//(in microseconds) that the function has to wait before
//performing the reading. It is used to achieve about
//8000 readings per second.
bvSerial.processAudio(46);
}
//Updates the pin 4 state on every loop
digitalWrite(4, pinVal);
}

Copyright BitSophia Software Ltda. 2013. Todos os direitos reservados.

27

BitSophia - www.bitsophia.com.br

BitVoicer 1.2 Manual do Usurio Portugus

//This function runs every time serial data is available


//in the serial buffer after a loop
void serialEvent()
{
//Reads the serial buffer and stores the received data type
dataType = bvSerial.getData();
//Changes the value of sampleTest if the received data was
//the start/stop sampling command
if (dataType == BV_COMMAND)
sampleTest = bvSerial.cmdData;
//Signals BitVoicer's Speech Recognition Engine to start
//listening to audio streams after the engineRunning status
//was received
if (dataType == BV_STATUS && bvSerial.engineRunning == true)
bvSerial.startStopListening();
//Checks if the data type is the same as the one in the
//Voice Schema
if (dataType == BV_BYTE)
{
//Checks the value stored in byteData by getData() and
//changes the pin value
if (bvSerial.byteData == 0)
pinVal = LOW;
else
pinVal = HIGH;
}
}
Por fim, abra o esquema de voz Sample2.vsc localizado na sub-pasta VoiceSchemas da pasta de
instalao do BitVoicer e clique em Start para iniciar o reconhecimento de voz. O LED conectado board
Arduino dever se acender ao pronunciar Turn led on" e se apagar ao pronunciar Turn led off.
Caso no haja mudana no estado do LED ao pronunciar os comandos acima, certifique-se que:

Voc selecionou Ingls como idioma de reconhecimento no formulrio de preferncias. Se o


idioma Ingls no est disponvel em seu computador, selecione o idioma de sua preferncia e
traduza a frase no Esquema de Voz para o idioma selecionado;
As configuraes de comunicao esto corretas no formulrio de preferncias (item 3.3);
A velocidade de comunicao (baud rate) a mesma no sketch Arduino e no formulrio de
preferncias;
O udio captado pelo microfone est em um nvel adequado para reconhecimento (itens 3.2.3,
3.4.1 e 7.1);
O BitVoicer est recebendo entre 8000 e 8200 amostras de udio por segundo (itens 3.4.2 e 6).

6 udio Streaming
O BitVoicer pode processar voz captada por um microfone conectado ao micro-controlador e enviada ao
BitVoicer como fluxo de udio. Usando tambm uma interface de comunicao wireless, possvel dar
capacidades de reconhecimento de voz avanadas a qualquer micro-controlador, mantendo o microcontrolador fisicamente separado do computador.
Copyright BitSophia Software Ltda. 2013. Todos os direitos reservados.

28

BitSophia - www.bitsophia.com.br

BitVoicer 1.2 Manual do Usurio Portugus

O fluxo de udio enviado ao BitVoicer deve ser digitalizado utilizando-se PCM


(http://en.wikipedia.org/wiki/Pulse-code_modulation) de 8 bits a 8000 amostras por segundo. Em termos
simples, necessrio realizar 8000 medies por segundo da voltagem no microfone, converter esta
medio (ADC analog-to-digital converter) em um valor de 8 bits (entre 0 e 255) e enviar este resultado ao
BitVoicer em intervalos de tempo regulares. Sendo assim, em essncia, o udio streaming uma sequncia
de bytes, enviados um a um, em intervalos de tempos regulares, que descrevem a intensidade de uma onda
sonora ao longo do tempo.
Para
que
a
qualidade
do
reconhecimento
de
voz
seja
satisfatria,
a
fase
(http://en.wikipedia.org/wiki/Sine_wave), ou seja, o valor digitalizado captado pelo microfone em um
ambiente silencioso deve ser igual a 128 ou 129. A quantidade de amostras por segundo, por sua vez, no
deve ser inferior a 8000 ou superior a 8200.

Outros fatores podem afetar significativamente o desempenho do reconhecimento de voz do BitVoicer:

As medies devem ocorrer em intervalos de tempo regulares. Para obter 8000 amostras por
segundo, necessrio realizar uma medio a cada 125 microsegundos. Neste intervalo devem
ser considerados:
o O tempo necessrio para realizar a medio;
o O tempo necessrio para o conversor ADC realizar a converso;
o O tempo gasto em outras atividades executadas pelo micro-controlador entre as
medies.
Oscilaes na tenso fornecida ao microfone;
Flutuaes de voltagem na porta de medio;
Aterramento inadequado;
Interferncia de outros circuitos;
Erros de comunicao.

6.1 Sinalizando para o BitVoicer


Por padro, o BitVoicer espera receber datagramas do micro-controlador. Datagramas estes que devem
ser formatados de acordo com os parmetros do Protocolo BitVoicer (item 5.1). Para que o BitVoicer pare
de processar estes dados como datagramas e passe a process-los como dados de udio (udio
streaming), necessrio enviar um sinal ao motor de reconhecimento de voz. Este sinal composto de uma
sequencia de 8 bytes com os seguintes valores: { 255, 255, 255, 255, 0, 0, 0, 0 }.
Para que o BitVoicer retorne ao seu estado inicial, quando os dados recebidos so considerados
datagramas e seu contedo exibido no painel Monitor de Comunicao, basta enviar novamente o mesmo
sinal ao BitVoicer ({ 255, 255, 255, 255, 0, 0, 0, 0 }). Dessa forma, caso o BitVoicer esteja processando fluxo
Copyright BitSophia Software Ltda. 2013. Todos os direitos reservados.

29

BitSophia - www.bitsophia.com.br

BitVoicer 1.2 Manual do Usurio Portugus

de udio e seja necessrio enviar dados ao painel Monitor de Comunicao, devem ser enviados os
seguintes bytes ao programa: { 255, 255, 255, 255, 0, 0, 0, 0 } + Anagrama formatado no Protocolo BitVoicer
+ { 255, 255, 255, 255, 0, 0, 0, 0 }. Este ciclo avisa o BitVoicer para parar de processar fluxo de udio, em
seguida o anagrama processado e depois o motor de reconhecimento de voz passa a ouvir novamente
ao fluxo de udio.

7 Painis de informao
Os painis de informao esto localizados na parte direita do Editor de Esquemas de Voz. Estes
painis permanecem inativos durante a edio de um esquema, mas exibem informaes valiosas assim
que o reconhecimento de voz iniciado.

7.1 Nvel de udio, atividade, status e erros


Exibe informaes geradas pelo motor de reconhecimento de voz.

OBS.: Se o BitVoicer estiver recebendo fluxo de udio captado em um ambiente silencioso e, mesmo
assim, o nvel de udio atingir constantemente um valor superior a 4, isso quer dizer que o BitVoicer est
recebendo noise (erros no sinal de udio - http://en.wikipedia.org/wiki/Noise) em excesso. Isso pode
comprometer significativamente o desempenho do reconhecimento de voz (consulte o item 6 para maiores
informaes).
Estas so as informaes exibidas neste painel:

Audio Level (nvel de udio): a barra de nvel de udio e o campo logo a sua direita exibem o
nvel de udio captado pelo motor de reconhecimento de voz em tempo real. Esta informao
atualizada 10 vezes por segundo no BitVoicer.

Level Average (nvel mdio): esta mdia calculada tomando-se por base o perodo informado
na opo Audio level activated period das preferncias, ou seja, a mdia calculada para este
perodo e as leituras so feitas a cada 100 milisegundos.

Activity (atividade): este painel exibe informaes sobre erros, inicializao e finalizao do
motor de reconhecimento de voz, alm de informaes sobre o envio de comandos e resultados

Copyright BitSophia Software Ltda. 2013. Todos os direitos reservados.

30

BitSophia - www.bitsophia.com.br

BitVoicer 1.2 Manual do Usurio Portugus

no reconhecimento de voz. Estas so as mensagens que podem aparecer neste painel durante
a utilizao do BitVoicer:
o

Loading recognition engine... (carregando motor de reconhecimento de voz).

Error: unable to load recognition engine (Erro: impossvel carregar motor de


reconhecimento de voz): verifique as configuraes nas preferncias, salve-as
novamente e tente reiniciar o reconhecimento de voz. Se isto no funcionar, entre em
contato com o suporte da BitSophia (informaes de contato no item 6 deste manual).

Loading sentences... (carregando sentenas).

Error: unable to load sentences (Erro: impossvel carregar sentenas): verifique se


seu esquema de voz no possui itens de sentena vazios e se voc utilizou apenas
caracteres vlidos para o idioma informado nas preferncias. Se isto no funcionar,
entre em contato com o suporte da BitSophia (informaes de contato no item 6 deste
manual).

Sentences loaded (sentenas carregadas).

Error: unable to open serial port (Erro: impossvel abrir porta serial): verifique se seu
micro-controlador est corretamente conectado e se a porta de comunicao serial
informada nas preferncias est correta e desbloqueada. Se voc no possui um microcontrolador, desabilite as comunicaes em File Preferences.

Error: unable to establish IP connection (Erro: impossvel estabelecer conexo IP):


verifique se o endereo IP de destino e a porta TCP esto disponveis e no esto
bloqueados por outro aplicativo. Verifique tambm as informaes sobre o IP de destino
em File Preferences. Se voc no possui um micro-controlador, desabilite as
comunicaes em File Preferences.

Disposing recognition engine... (descartando motor de reconhecimento de voz).

Engine disposed (stopped) (motor descartado - parado).

o
o

Error: unable to create command data (Erro: impossvel criar dados do comando): o
comando para o anagrama identificado est vazio.
Error: unable to write to serial port (Erro: impossvel enviar para a porta serial):
verifique se seu micro-controlador est corretamente conectado e se a porta de
comunicao serial informada nas preferncias est correta e desbloqueada.

Command sent to serial port (comando enviado para a porta serial).

Error: unable to send TCP/IP packet (Erro: impossvel enviar pacote TCP/IP):
verifique se o endereo IP de destino e a porta TCP esto disponveis e no esto
bloqueados por outro aplicativo. Verifique tambm as informaes sobre o IP de destino
em File Preferences.

Command sent to destination IP (comando enviado para o IP de destino)

Speech Rejected (fala rejeitada)


- Confidence: XXX % (confiana: XXX %)
- Text: XXX (texto XXX)

Speech Rejected (fala rejeitada)


- Low Confidence Level (baixo nvel de confiana): nvel de confiana no
atingido
- Confidence Level: XXX (nvel de confiana: XXX)
- Text: XXX (texto: XXX): texto considerado com baixo nvel de confiana.

Speech Rejected (fala rejeitada)

Copyright BitSophia Software Ltda. 2013. Todos os direitos reservados.

31

BitSophia - www.bitsophia.com.br

BitVoicer 1.2 Manual do Usurio Portugus

- Audio Level Limit Not Reached (nvel de udio no atingido): consulte item
3.2.3
- Max Audio Level: XX (nvel de udio mximo: XX): nvel de udio mais alto
atingido durante o reconhecimento.
- Audio Level Average: XX (mdia do nvel de udio: XX): mdia do nvel de
udio no momento do reconhecimento.
- Confidence Level: XXX (nvel de confiana: XXX)
- Text: XXX (texto: XXX): texto rejeitado.

Speech Rejected (fala rejeitada)


- In Latency Period (dentro do perodo de latncia): consulte item 3.2.5.
- Latency Start Time: [HH:MM:SS:MMM] incio do perodo de latncia em hora,
minuto, segundo e milsimo.
- Recognition Time: [HH:MM:SS:MMM] momento do reconhecimento em hora,
minuto, segundo e milsimo.
- Audio Level Trigger: XX (gatilho do nvel de udio: XX): nvel de udio que
iniciou o perodo de ativao por nvel de udio (consulte item 3.2.3).
- Audio Level Average: XX (mdia do nvel de udio: XX): mdia do nvel de
udio no momento do reconhecimento.
- Confidence Level: XXX (nvel de confiana: XXX)
- Text: XXX (texto: XXX): texto rejeitado.
Speech Rejected (fala rejeitada)
- Act Word Not Recognized (palavra de ativao no reconhecida): o Esquema
de Voz requer a identificao de uma palavra de ativao (item 4.4) e est
palavra no foi identificada.
- Latency Start Time: [HH:MM:SS:MMM]:incio do perodo de latncia em hora,
minuto, segundo e milsimo.
- Recognition Time: [HH:MM:SS:MMM]: momento do reconhecimento em hora,
minuto, segundo e milsimo.
- Audio Level Trigger: XX (gatilho do nvel de udio: XX): nvel de udio que
iniciou o perodo de ativao por nvel de udio (consulte item 3.2.3).
- Audio Level Average: XX (mdia do nvel de udio: XX): mdia do nvel de
udio no momento do reconhecimento.
- Confidence Level: XXX (nvel de confiana: XXX)
- Text: XXX (texto: XXX): texto rejeitado.
Speech Recognized (fala reconhecida)
- Latency Start Time: [HH:MM:SS:MMM]: incio do perodo de latncia em hora,
minuto, segundo e milsimo.
- Recognition Time: [HH:MM:SS:MMM]: momento do reconhecimento em hora,
minuto, segundo e milsimo.
- Audio Level Trigger: XX (gatilho do nvel de udio: XX): nvel de udio que
iniciou o perodo de ativao por nvel de udio (consulte item 3.2.3). Ser
sempre o valor que deu incio ao perodo e no o valor do reconhecimento
atual.
- Audio Level Average: XX (mdia do nvel de udio: XX): mdia do nvel de
udio no momento do reconhecimento. Ser sempre o valor do incio do
perodo e no o valor do reconhecimento atual.
- Confidence Level: XXX (nvel de confiana: XXX)
- Text: XXX (texto: XXX): texto aceito.
Speech Recognized (fara reconhecida)

Copyright BitSophia Software Ltda. 2013. Todos os direitos reservados.

32

BitSophia - www.bitsophia.com.br

BitVoicer 1.2 Manual do Usurio Portugus

- Under Act Word Period (dentro do perodo de palavra de ativao): a palavra


de ativao foi reconhecia anteriormente e o reconhecimento atual foi feito
dentro do perodo de ativao por palavra de ativao (item 4.4).
- Act Word Start Time: [HH:MM:SS:MMM]: incio do perodo de ativao por
palavra de ativao em hora, minuto, segundo e milsimo.
- Latency Start Time: [HH:MM:SS:MMM]: incio do perodo de latncia em hora,
minuto, segundo e milsimo.
- Recognition Time: [HH:MM:SS:MMM]: momento do reconhecimento em hora,
minuto, segundo e milsimo.
- Audio Level Trigger: XX (gatilho do nvel de udio: XX): nvel de udio que
iniciou o perodo de ativao por nvel de udio (consulte item 3.2.3). Ser
sempre o valor que deu incio ao perodo e no o valor do reconhecimento
atual.
- Audio Level Average: XX (mdia do nvel de udio: XX): mdia do nvel de
udio no momento do reconhecimento. Ser sempre o valor do incio do
perodo e no o valor do reconhecimento atual.
- Confidence Level: XXX (nvel de confiana: XXX)
- Text: XXX (texto: XXX): texto aceito.
o Speech Recognized (fara reconhecida)
- Act Word Recognized (palavra de ativao reconhecida): a palavra de
ativao foi identificada no reconhecimento atual. O perodo de ativao por
palavra de ativao foi iniciado (item 4.4).
- Latency Start Time: [HH:MM:SS:MMM] (incio do perodo de latncia em hora,
minuto, segundo e milsimo).
- Recognition Time: [HH:MM:SS:MMM] (momento do reconhecimento em hora,
minuto, segundo e milsimo).
- Audio Level Trigger: XX (gatilho do nvel de udio: XX): nvel de udio que
iniciou o perodo de ativao por nvel de udio (consulte item 3.2.3). Ser
sempre o valor que deu incio ao perodo e no o valor do reconhecimento
atual.
- Audio Level Average: XX (mdia do nvel de udio: XX): mdia do nvel de
udio no momento do reconhecimento. Ser sempre o valor do incio do
perodo e no o valor do reconhecimento atual.
- Confidence Level: XXX (nvel de confiana: XXX)
- Text: XXX (texto: XXX): texto aceito.
Status: exibe o status atual do motor de reconhecimento de voz. Pode exibir as seguintes
informaes:
o Stopped (parado): motor de reconhecimento parado.
o Starting... (iniciando...): motor de reconhecimento em fase de inicializao.
o Connecting... (conectando...): estabelecendo conexo com o micro-controlador.
o Running... (rodando...): motor de reconhecimento de voz em execuo.
o Running (in activation word period)... (rodando - dentro do perodo de palavra de
ativao - ...): consulte o item 4.4.
o Running (audio level limit reached)... (rodando - limite do nvel de udio atingido - ):
consulte o item 3.2.3.
o Running (fully qualified)... (rodando - totalmente qualificado - ...): o nvel mnimo de
udio foi atingido e a palavra de ativao foi identificada.

Copyright BitSophia Software Ltda. 2013. Todos os direitos reservados.

33

BitSophia - www.bitsophia.com.br

BitVoicer 1.2 Manual do Usurio Portugus

7.2 Monitor de comunicao


Atravs do monitor de comunicao possvel visualizar informaes de texto enviadas pelo microcontrolador. Este painel pode ser utilizado para o recebimento de informaes de status, leitura de sensores
ou depurao de cdigo no micro-controlador.

O boto Clear Monitor, localizado no rodap deste painel, limpa toda a informao enviada pelo microcontrolador.
OBS.: Se o BitVoicer estiver recebendo fluxo de udio enviado pelo micro-controlador, necessrio
sinalizar ao BitVoicer antes de enviar informaes a serem exibidas neste painel (consulte o item 6.1 para
maiores informaes sobre sinalizao).

8 Suporte e contato

Ajuda e suporte: support@bitsophia.com

Comercial e vendas: sales@bitsophia.com

Sugestes e reclamaes: feedback@bitsophia.com

Copyright BitSophia Software Ltda. 2013. Todos os direitos reservados.

34

You might also like