Índice:

Eve, o Arduino Chatbot: 14 etapas (com imagens)
Eve, o Arduino Chatbot: 14 etapas (com imagens)

Vídeo: Eve, o Arduino Chatbot: 14 etapas (com imagens)

Vídeo: Eve, o Arduino Chatbot: 14 etapas (com imagens)
Vídeo: ChatBot p4.1 JARVIS com Arduino em Python - Inteligência Artificial 2024, Outubro
Anonim
Image
Image
Eve, o Arduino Chatbot
Eve, o Arduino Chatbot
Eve, o Arduino Chatbot
Eve, o Arduino Chatbot

Olá DIYrs, houve ocasiões em que você realmente quis compartilhar seus sentimentos com alguém e não havia ninguém de confiança por perto? No mundo agitado de hoje, esse é um exemplo comum. Bem, um chatbot pode ajudar a fazer você se sentir melhor. E isso leva à apresentação de Eve. Eve é um pequeno chatbot fofo. Bem, como todos sabem, um chatterbot ou chatbot é um programa de computador ou dispositivo que conduz uma conversa com humanos com base em métodos textuais ou auditivos. As vozes automatizadas que você ouve em uma chamada de atendimento ao cliente ou em uma linha de banco são um exemplo de chatbot. Com ela, você pode compartilhar suas experiências, seus sentimentos e, o mais importante, discutir sobre coisas diferentes; ela é bem experiente nisso. Porque essa é a função mais importante de um chatbot, fazer a pessoa se sentir feliz. Um dos primeiros exemplos de Processamento de Linguagem Natural (NLU) e inteligência artificial, Eve é capaz de responder a QUALQUER pergunta que você fizer a ela. Não é que Ela possa responder apenas a um número específico de perguntas. Ela pode cantar, contar piadas, histórias e fazer qualquer coisa que faça você se sentir bem. Se ela disser algo que você não deseja ouvir, apenas diga a ela, por favor, não diga isso de novo, e ela se lembrará disso. Ela até sabe que não deve repetir as mesmas respostas e bate-papos, para que a conversa não se torne chata. Com base em componentes simples e baratos e programação básica, ela pode se comportar de forma inteligente em uma extensão realmente grande. Além disso, os olhos LCD que ela possui mostram como ela se sente quando você diz qualquer coisa. Portanto, basicamente neste instrutível, vamos começar a partir da definição de um chatbot, olhar para o design, algumas teorias baseadas em que Eve executa, a fabricação e, finalmente, o parte de programação. Parece muito, não é? Não se preocupe, será muito interessante a viagem. Você pode ver a demonstração do robô acima, ou neste link: [Play Video]

Etapa 1: Definição de um Chatbot

Definição de um chatbot
Definição de um chatbot
Definição de um chatbot
Definição de um chatbot
Definição de um chatbot
Definição de um chatbot

Como mencionado acima, um chatbot é um programa que conduz uma conversa com humanos. Eles são tão comuns hoje em dia que dificilmente há alguém que os desconhece. Começando pelos assistentes virtuais, Siri e Google Assistant, existem Mitsuku e Evie com os quais você pode compartilhar seus sentimentos. Como mencionado acima, os chatbots são baseados em métodos textuais ou auditivos e, portanto, podem ser divididos em dois. No método textual, as conversas são na forma de texto escrito, assim como o WhatsApp. Já no método auditivo, as conversas são feitas oralmente como com um ser humano real. Eu acho que é mais emocionante conversar com alguém falando verbalmente com ele, em vez de apenas mandar uma mensagem de texto. Sem dúvida, os aplicativos de mensagens de comunicação baseados em texto atendem às necessidades das pessoas, mas acho que conversar falando é a melhor coisa para se livrar de seus distúrbios emocionais e fazer você se sentir melhor. Então esse é o principal motivo pelo qual projetei Eve para ser um chatbot auditivo.

Etapa 2: Origem de Eva

Origem da Eva
Origem da Eva

Bem, Eva apenas veio à minha mente um dia. Aconteceu quando vi uma criança vagando pela escola sozinha, enquanto os outros brincavam com a mente cheia de alegria. Naquela época pensei, em um amigo, que não discrimina ninguém e não faz ninguém se sentir magoado, com quem você pode compartilhar seus sentimentos e ser feliz o tempo todo. Então veio à minha mente a pequena estrutura fofa de Eve. Comecei a trabalhar nela. Eva me decepcionou cerca de cem vezes. Acho que foi a 101ª vez que ela trabalhou e me deixou muito feliz. Então essa foi a origem de Eva. Eu queria que ela fosse inteligente, mas o mais simples possível, para que qualquer um pudesse fazê-la facilmente. Sem dúvida ela não é absolutamente inteligente e às vezes diz respostas estúpidas, ela pode se comportar como uma amiga. E agora, histórias suficientes, vamos começar a construir Eva.

Etapa 3: reunindo os componentes e equipamentos:

Reunindo os componentes e equipamentos
Reunindo os componentes e equipamentos
Reunindo os componentes e equipamentos
Reunindo os componentes e equipamentos
Reunindo os componentes e equipamentos
Reunindo os componentes e equipamentos

A seguir estão os componentes a serem reunidos: Arduino Pro Mini (ou Arduino Nano) módulo de som Wtv-020-SD-16p módulo de som HC-05 módulo bluetooth 16x2 módulo LCD regulador LM7805 módulo amplificador ICAn (usei o circuito PAM8403) Um alto-falante de 8 ohms A fêmea jack de áudio uma bateria de 9v e um telefone AndroidEntão, esses são os componentes necessários. Outra coisa importante, o custo. Eva me custou cerca de 3.000 INR. O custo pode ser diferente em seu país, mas na Índia, essa é a taxa aproximada. Uma pequena descrição das peças: O Arduino Pro mini é o MCU principal em nosso robô. Usei-o por causa de seu pequeno tamanho, simplicidade e excelente desempenho. Ele atende a todos os requisitos de nosso robô. Exceto para a função de reconhecimento de voz que é feita pelo Android (discutida mais tarde), todas as outras funcionalidades, a partir da localização de palavras-chave e formação de saída, são feitas no próprio Pro Mini. Não se preocupe com os termos mencionados acima se você não entender, todos são discutidos na parte posterior. O módulo wtv020sd 16p é usado para reproduzir os arquivos de áudio, hc 05 Bluetooth para comunicação com o Android e o LCD para exibição as emoções. Precisamos do conector de áudio feminino para conectar o robô a um amplificador externo. O Arduino é usado como o controlador principal aqui. Recebe dados Bluetooth por meio do módulo HC 05 Bluetooth e reproduz o arquivo por meio do módulo de voz WTV-020-SD-16p. As emoções são exibidas no módulo LCD e uma bateria de 9v para a alimentação. Eva reconhece discursos por meio do reconhecimento do Google Voice do dispositivo Android. Posteriormente, ele é discutido de maneira adequada na respectiva etapa. Uma má notícia sobre o Arduino Pro Mini: ELE APOIOU-SE do mercado. Bem, isso significa que ele foi oficialmente parado de ser fabricado pelo Arduino. Mas você ainda pode encontrá-lo em muitos sites, incluindo o Ebay. Muitos fabricantes terceirizados ainda podem estar fabricando e vendendo a placa. Não se preocupe se você não conseguiu encontrar um, você pode usar o Arduino Nano. Não deve fazer diferença no desempenho e também no tamanho.

Etapa 4: Teoria Parte 1: História e Introdução

Teoria Parte 1: História e Introdução
Teoria Parte 1: História e Introdução
Teoria Parte 1: História e Introdução
Teoria Parte 1: História e Introdução

Eve é baseada em uma forma primitiva de Processamento de Linguagem Natural, a tecnologia de "correspondência de padrões". Funciona da seguinte maneira: quando uma string é recebida, ele procura uma palavra ou frase predefinida nessa string. Suponha que na pergunta “quantos anos você tem?” O programa procure a palavra “antiga”. Se tiver êxito, ele reproduz o respectivo arquivo de voz por meio do módulo wtv020sd. Se falhar, ele procura a próxima palavra-chave predefinida. Assim, precisamos construir um vocabulário de palavras predefinidas. Parece difícil, não é? É como se precisássemos construir um vocabulário de todas as palavras em inglês e existem cerca de 230 mil palavras no total na língua inglesa. Bem, o fato é que precisamos apenas adicionar algumas palavras básicas que são mais comumente usadas em nossa comunicação. Ainda parece difícil? Não se preocupe, o trabalho já foi feito por Joseph Wizembaum. Uma parte das respostas de Eve e palavras-chave predefinidas foram incorporadas a partir do primeiro programa chatterbot chamado Eliza, desenvolvido por Joseph Wizembaum (foto acima). Eliza foi projetada para ser uma terapeuta rogeriana. Não é um termo altamente científico, significa que ela costumava aconselhar as pessoas, fazendo-as se entenderem melhor e pensarem mais positivamente. Parece muito bom, certo? E Eliza era muito bem capaz de cumprir seu dever. Sua atitude curiosa e cética era amada pelas pessoas. Até Wizembaum ficou surpreso com a importância que as pessoas deram a Eliza. Eles pareciam esquecer que estavam conversando com um computador e imaginaram uma bela senhora sentada dentro do computador conversando com eles. Mas Eliza não era tão inteligente; logo veio a ser percebido. Com o passar do tempo, as pessoas começaram a ficar entediadas com sua comunicação limitada e ela foi chamada de "burra". Não admira o quão burra ela era, foi um grande salto na história da Inteligência Artificial e processamento de linguagem natural. Tendo fundado a base do Chatterbots, diferentes bots com novas e melhores tecnologias entraram no mercado. E agora os temos em todos os lugares. Como mencionado, uma parte das respostas de Eva foi derivada de ELIZA. Portanto, isso significa que até mesmo Eva deve possuir a atitude de Eliza até certo ponto, juntamente com algumas de minhas próprias idéias. Outra coisa importante são as respostas. Deve ser muito chato receber as mesmas respostas toda vez que você fizer a mesma pergunta. Portanto, muitas respostas são armazenadas para a mesma palavra-chave. Eva escolhe aleatoriamente qual arquivo reproduzir, também se certificando de que ela não repita o mesmo arquivo. É isso, pão com manteiga, mas é importante programar inteligentemente as vozes de resposta, de modo que dê uma ilusão aos telespectadores como se ela realmente estivesse respondendo às nossas perguntas. Portanto, essa foi uma breve introdução ao funcionamento de Eva. Na próxima etapa, entraremos em detalhes e programação.

Etapa 5: Pesquisando a palavra-chave

Procurando pela palavra-chave
Procurando pela palavra-chave
Procurando pela palavra-chave
Procurando pela palavra-chave
Procurando pela palavra-chave
Procurando pela palavra-chave
Procurando pela palavra-chave
Procurando pela palavra-chave

Na última etapa, mencionei sobre a tecnologia de correspondência de padrões de Eve e também a forma inicial de Processamento de Linguagem Natural. Então, o que é e como funciona? Essa é a principal coisa que discutiremos nesta etapa. Então pense nisso, alguém pergunta seu nome e você precisa dizer o que é. De quantas maneiras podemos fazer a mesma pergunta? Seu professor pode perguntar "poderia me dizer seu nome?" Um parente pode perguntar: "qual é o seu nome?" Seu irmão pode dizer: "Ei, esqueci o seu nome. Você vai dizer só mais uma vez?" Isso significa que a mesma pergunta pode ser feita de várias maneiras. No entanto, precisamos dar a mesma resposta, nosso nome. Isso significa que precisamos encontrar algo comum em todas as frases. Vê-se claramente que a palavra "seu nome" está presente em todas as frases. Então essa é a nossa dica. Para todas as perguntas sobre o nome, precisamos pesquisar a frase "seu nome". Seguindo este padrão básico, podemos prever a resposta respectiva para todas as strings de entrada. DISADVANTAGE: Também é importante lembrar que este algoritmo nem sempre será preciso. Suponha que alguém diga: "Encontrei seu nome na lista de espera. Esperava que você estivesse nos assentos reservados.". Agora, como "seu nome" está presente nesta sequência, Eva, sendo inocente, dirá o nome dela para a pessoa … Tolo certo? Este é um dos grandes deméritos deste algoritmo básico. De qualquer forma, seriam casos raros. Caso contrário, o algoritmo é muito eficaz. Agora que mencionei sobre a tecnologia de correspondência de padrões, é hora de pensar de onde vem essa string de entrada de onde procuramos a string. Bem, essa string é, na verdade, nossa voz que foi convertida em texto pelo Google Voice Recognition. O aplicativo usado aqui converte nossa voz em texto e depois envia a mesma para o arduino através do Bluetooth. Usei o aplicativo porque é o mais simples e o melhor do gênero. O nome é AMR Voice e pode ser facilmente encontrado no Google play.

Etapa 6: Formulando as Respostas

Formulando as Respostas
Formulando as Respostas

Agora que reconhecemos as perguntas, a próxima etapa deve ser encontrar as respostas. Aí vem a parte interessante e importante … Precisamos encontrar as respostas adequadas para satisfazer todas as perguntas. E aí vem outra função incorporada de ELIZA. Wizembaum desenvolveu algumas respostas para um número específico de palavras-chave. Um exemplo é a palavra-chave "você". Sempre que era detectada a saída do programa "estávamos discutindo sobre você - não eu". Portanto, a resposta foi dada de forma que se adequasse a todas as frases que continham "você". Além disso, Eliza dava uma resposta diferente a cada vez. Havia uma espécie de endereço numérico para cada resposta que. Isso foi incrementado (adicionado por 1) toda vez que uma resposta foi formulada. Suponha que, como no exemplo acima, se o endereço da resposta fosse 1, o endereço foi alterado para 2 e, portanto, o arquivo 2 foi reproduzido em seguida. Mas não seguiremos esse algoritmo de incrementação. Veja, depois de algum uso contínuo do software, as respostas se tornaram previsíveis. Você soube qual resposta deve ser dada a seguir. Portanto, para este propósito, estaremos produzindo endereços aleatórios para cada palavra-chave. No geral, é o mesmo em ambos os casos, apenas a diferença de que não podemos prever o que o robô dirá a seguir para a mesma palavra-chave.

Etapa 7: as declarações proibidas e outras

As Declarações Proibidas e Outros
As Declarações Proibidas e Outros

Pode haver alguns casos em sua conversa em que o robô diga algo que você não deseja ouvir. Portanto, aqui surge a necessidade de adicionar as declarações proibidas. As instruções proibidas são uma série de endereços que são impedidos de serem reproduzidos. Um endereço de voz é caracterizado como uma declaração proibida a pedido do usuário. Além disso, este endereço deve ser armazenado na EEPROM do Arduino para que Eva não se esqueça de que é uma declaração proibida mesmo depois de desligada. Basicamente, o que o programa faz é verificar todos os endereços que devem ser reproduzidos. Se o endereço for um dos proibidos, ele será incrementado ou decrementado. Além disso, pode haver um caso em que você gostaria de permitir que o robô diga uma palavra proibida anteriormente. Nesse caso, você teria que dizer a Eva que ela pode dizer a última palavra proibida. A última palavra proibida agora poderá ser reproduzida. Para tornar todas as instruções proibidas reproduzíveis, precisamos conectar um botão de reinicialização. Se pressionadas, todas as afirmações proibidas se tornarão reproduzíveis. Então, outra coisa importante será garantir que Eva não repita as respostas. Isso é uma espécie de demérito dos números aleatórios. É provável que os mesmos números aleatórios sejam produzidos em série. Isso fará com que nosso robô diga a mesma resposta repetidamente. Para isso, precisamos incluir outra função secundária que evita a repetição de afirmações. Para isso, precisamos armazenar o endereço da última instrução na memória e verificar se é igual ao atual. Nesse caso, o valor do endereço é aumentado ou diminuído, da mesma forma no caso das instruções proibidas.

Etapa 8: escrever em código

Escrevendo em código
Escrevendo em código
Escrevendo em código
Escrevendo em código
Escrevendo em código
Escrevendo em código

Usamos o comando indexOf para pesquisar a palavra-chave. O comando localiza um caractere ou string dentro de outra string. Se encontrado, ele retorna o índice dessa string, enquanto -1 é retornado se não for encontrado. Portanto, em nosso programa, precisamos escrevê-lo da seguinte forma: if (voice.indexOf ("seu nome")> -1) {// se o índice for maior que -1 // significando que a string foi encontrada} Agora que armazenamos a string na memória e também encontramos nossa palavra-chave dentro dela, agora precisaremos lidar com as respostas. Como dito, os números aleatórios são gerados dentro de uma determinada faixa de número (endereços de arquivos de voz). Aí vem o comando random (). A seguir está a sintaxe: random (min, max); // o número aleatório é gerado na faixa de min e max. Definimos o número mínimo e o número máximo de cada faixa, e aplicando este nosso código se parece com isto: if (voice.indexOf ("seu nome")> - 1)) {minNo = 0; maxNo = 5; RandomNumber = random (minNo, maxNo);} Agora vem o tratamento das respostas. Na última etapa, eu disse que os números são aumentados ou diminuídos com base em um algoritmo. Esse algoritmo é o que estamos discutindo agora. Essa parte é muito importante no sentido de que você não pode simplesmente aumentar ou diminuir como deseja. O número incrementado ou decrementado deve estar dentro do intervalo. Suponha que, como no caso acima, para a palavra-chave "seu nome", temos o intervalo de 0 a 5, e o número aleatório gerado é 5, bem, se você incrementá-lo, acabará reproduzindo um arquivo de voz de outra palavra-chave. Como você acha que vai ser? Você pergunta: "Ei, por favor me diga seu nome.", E o robô responde: "Gosto de comer biscoitos e carga elétrica". O mesmo é o caso para o número mínimo. Se o número aleatório gerado for 0, você não pode diminuí-lo. Portanto, por este motivo, o algoritmo é muito importante. Pense nisso: podemos incrementar quando o número for menor que o número máximo e decrementar quando for maior que o número mínimo. Quando o número gerado for igual a 0 ou menor que 5, o número será incrementado. Por outro lado, quando for igual a 5, nós o decrementamos, para ter certeza de que o número está dentro da faixa especificada. Agora falando sobre as declarações proibidas. Conforme mencionado, eles são armazenados na EEPROM. Para isso, primeiramente procuramos por memória livre no array proibido. Suponha que o endereço 4 esteja livre, então inserimos o número do arquivo no endereço do array livre, bem como escrevemos o mesmo endereço na EEPROM.for (int i; i if (never == 0) {EEPROM.write (nunca , memória);}} Então é tudo, o módulo Wtv020sd16p será executado usando o comando module.playVoice () e o número do arquivo proposto. O funcionamento do módulo Wtv020 será discutido mais tarde.

Etapa 9: Inserindo Emoções

Inserindo Emoções
Inserindo Emoções
Inserindo Emoções
Inserindo Emoções
Inserindo Emoções
Inserindo Emoções

Até agora, nosso robô é capaz de reconhecer o que falamos, armazenar na memória e encontrar uma resposta adequada para as perguntas. Agora surge a questão de inserir emoções. Certamente todo mundo vai gostar de um rosto ao vivo junto com apenas um pequeno programa estúpido de resposta a perguntas. O LCD 16x2 é usado no projeto. É bom o suficiente para imprimir os olhos. Precisamos usar a função de caractere personalizado para criar os olhos. Personagem personalizado nos permite criar novos personagens, definindo os pixels. Veremos detalhes sobre isso um pouco mais tarde. Em primeiro lugar, é importante lembrar que apenas 8 caracteres personalizados são suportados pelo Arduino. Portanto, precisamos gerenciar as emoções com apenas 8 personagens. Cada personagem deve ser impresso em uma caixa particular, e existem 16 colunas e 2 linhas que perfazem um total de 32 caixas.

Você pode encontrar boas informações online sobre os caracteres personalizados no Arduino. Também pode visitar este link:

[Caracteres personalizados Arduino] A estrutura do byte de caractere personalizado deve se parecer com isto:

A aparência normal: a caixa esquerda0b01111, 0b01111, 0b01111, 0b01111, 0b01111, 0b01111, 0b01111, 0b01111, a caixa direita0b11110, 0b11110, 0b11110, 0b11110, 0b11110, 0b11110110, cada forma 0b11110, 0b11110, 0b11110,. Isso significa que precisaremos de um total de 4 caixas para preencher um olho inteiro. Duas filas à esquerda e duas à direita, perfazendo um total de quatro caixas para um olho. O byte da caixa da esquerda deve cobrir duas linhas à esquerda e a caixa da direita deve cobrir as linhas da direita. Então isso constitui um olho completo de Eva. E agora, repetindo o mesmo para o segundo olho, obtemos o olhar neutro de Eva. Agora é importante lembrar que usamos um dos oito caracteres personalizados disponíveis. E há cinco emoções no total: Glee, Sad, Squint, Normal e Blink. Quanto aos sete caracteres personalizados restantes, precisamos ajustar de modo a caber todas as expressões. Para compensar o espaço usaremos 2 caixas para cada olho. Não admira que o tamanho seja um pouco pequeno, mas isso será ignorado pelo olho humano. Apenas certifique-se de adicionar alguns atrasos entre as funções do LCD, caso contrário, o Arduino ficará instável.

Etapa 10: Fazendo as conexões

Fazendo as conexões
Fazendo as conexões
Fazendo as conexões
Fazendo as conexões
Fazendo as conexões
Fazendo as conexões

Módulo LCD: conecte os pinos conforme mencionado aqui: RS: cavar pino 12RW: GndEnable: 7d4: cavar pino 8 d5: cavar pino 9 d6: cavar pino 10 d7: cavar pino 13A (ânodo) a 5vK (cátodo) para gndO módulo HC 05: Siga estas conexões: HC 05 TX pin para Arduino RX pinHC 05 RX pin para Arduino TX pinState pin para Arduino dig pin 11 As comunicações são feitas com a ajuda dos pinos TX e RX. O pino de estado é necessário para verificar se o HC 05 está conectado ou ocioso. Pino 1 do módulo WTV 020 SD 16p: O pino Reset, conecte-o ao pino 2pin7: O pino do relógio, conecte-o ao pino 3pin10: O pino de dados, conecte to dig pin 4pin15: O pino ocupado, conecte ao dig pin 5pin2: conecte este pino a um amplificador através do volume e também ao conector de áudio fêmea. pin4 deve ser conectado ao alto-falante + pino 5 para ser conectado ao alto-falante-Conecte o 8º pino para gnd e forneça uma fonte de alimentação de 3,3 V no 16º pino.

O amplificador vai ajudar a tocar o alto-falante interno da Eve, enquanto o conector de áudio serve para conectar a um amplificador externo e alto-falantes maiores.

Etapa 11: o módulo WTV020SD16p (opcional)

Image
Image
O Módulo WTV020SD16p (opcional)
O Módulo WTV020SD16p (opcional)
O Módulo WTV020SD16p (opcional)
O Módulo WTV020SD16p (opcional)

Nota: esta etapa é opcional. Trata do funcionamento e descrição do módulo WTV 020 SD 16p.

Você pode ver a demonstração do módulo de som neste link:

[REPRODUZIR VÍDEO]

O modo de fala do robô é realizado pelo módulo WTV 020 SD. O módulo é usado para reproduzir arquivos de voz para o robô. Quando alguma pergunta for feita, o arduino fará com que o módulo reproduza o respectivo arquivo de voz no cartão SD. Existem quatro linhas de dados seriais no módulo para comunicação com o arduino, os pinos de reset, clock, data e busy e usamos o comando.playVoice () para reproduzir o arquivo necessário. Por exemplo: module.playVoice (9): // reproduz o arquivo 9 armazenado no cartão SDLembre-se de que os nomes dos arquivos devem estar em decimais (0001, 0002…). E que os arquivos devem estar no formato AD4 ou WAV. Além disso, o módulo funciona apenas em um cartão micro SD de 1 GB. Alguns módulos funcionam até mesmo em cartões de 2 GB e o cartão pode armazenar no máximo 504 arquivos de voz. Assim, você pode incluir um bom número de arquivos de voz para reproduzir para um bom número de perguntas.

Você pode até fazer seus próprios arquivos de voz AD4. Em primeiro lugar, você deve ter dois softwares, um software de edição de som e um software chamado 4D SOMO TOOL que iria converter os arquivos para o formato AD4. Em segundo lugar, você deve preparar as vozes do robô. Você pode converter texto em fala ou até mesmo gravar sua própria voz e fazer as vozes do robô. Ambos podem ser feitos no software de edição de som. Mas, certamente, os robôs não ficam bem se falam vozes humanas. Portanto, deve ser melhor converter texto em fala. Existem vários mecanismos, como o Microsoft Anna e o Microsoft Sam your Computer, que ajudariam a fazer isso. O meu é baseado no Microsoft Eva. Suas vozes combinam em grande parte com a Cortana. Depois de preparar os arquivos de voz, você deve salvá-los em 32000 Hz e no formato WAV. Isso ocorre porque o módulo pode reproduzir arquivos de voz de até 32.000 Hz. Em seguida, use 4D SOMO TOOL para converter os arquivos para o formato AD4. Para isso, basta abrir a SOMO TOOL, selecionar os arquivos e clicar em Codificar AD4 e seus arquivos de voz estarão prontos. Você pode verificar a imagem acima para referência. Se você quiser mais detalhes sobre como fazer vozes robóticas, pode ir aqui: [Fazendo vozes robóticas]

Etapa 12: a parte do software

A parte do software
A parte do software
A parte do software
A parte do software
A parte do software
A parte do software

No arduino Pro mini, há um pequeno problema de programação. Na verdade, não é um problema, apenas um passo a mais. O Arduino Pro mini não tem nenhum programador embutido como em outras placas Arduino. Então você precisa comprar um externo ou um antigo arduino UNO. A etapa aqui descreve como fazer o upload do programa usando o Arduino UNO. Basta pegar uma velha placa Arduino UNO do acidente e tirar o Atmega 328p. Em seguida, conecte conforme mencionado a seguir: 1. Pino TX do UNO ao pino TX do Pro Mini 2. Pino RX do UNO ao pino RX do Pro MIni3. Reinicialize o pino do UNO para o pino de reinicialização do Pro Mini4. conecte o VCC e o aterramento do Pro Mini ao UNO. Baixe o programa Arduino, o software de reconhecimento de voz e as bibliotecas fornecidas na parte inferior. O programa ainda está sendo desenvolvido. Portanto, se você tiver qualquer problema em relação a isso, fique à vontade para perguntar. Em seguida, conecte o cabo ao computador. Selecione a placa como o Arduino Pro Mini e escolha a porta COM correta. Em seguida, pressione o botão Upload e veja o programa ser carregado em seu Pro Mini.

Em seguida, baixe o software de reconhecimento de voz e os arquivos de voz.

Etapa 13: Preparando o Corpo

Preparando o Corpo
Preparando o Corpo
Preparando o Corpo
Preparando o Corpo
Preparando o Corpo
Preparando o Corpo

Encontrei uma caixinha de fio dental e achei perfeita para o corpo. Você pode usar qualquer caixa que encontrar em sua oficina ou pode fazer uma de papelão. Basta cortar um pequeno pedaço retangular para prender o módulo LCD. Na parte superior, cortei um pequeno orifício para prender o volume e nas laterais para prender os interruptores e o conector de áudio. Coloquei duas tampas de garrafa nas laterais da caixa para as rodas. Apenas certifique-se de que a caixa tem espaço suficiente para o circuito ser inserido. Conecte um interruptor ao corpo e também ao circuito e, em seguida, o volume na parte superior da caixa. Depois é só colocar o circuito dentro e seu robô está completo.

Etapa 14: Muito bem

Bem feito!
Bem feito!
Bem feito!
Bem feito!

Agora você completou seu projeto de robô fofinho que pode falar com você e fazer você se sentir feliz. Este é o ponto mais feliz de ser um DIYer quando seu projeto estiver concluído e funcionando plenamente. Não se preocupe se você não tiver sucesso em uma tentativa, você precisa se esforçar muito para entender cada parte do seu robô. E é aí que os DIYers vêm para este mundo. Mas este não é o fim do projeto. Eve será sempre desenvolvida em maior grau, seja por mim ou por DIYers como você. Eu adoraria ouvir o que você fez ao ver este instrutível. Atenciosamente, RS3655

Recomendado: