Innholdsfortegnelse:

Eve, Arduino Chatbot: 14 trinn (med bilder)
Eve, Arduino Chatbot: 14 trinn (med bilder)

Video: Eve, Arduino Chatbot: 14 trinn (med bilder)

Video: Eve, Arduino Chatbot: 14 trinn (med bilder)
Video: Give your Arduino project a chatGPT AI brain - for ALMOST free 2024, November
Anonim
Image
Image
Eve, Arduino Chatbot
Eve, Arduino Chatbot
Eve, Arduino Chatbot
Eve, Arduino Chatbot

Hei DIYrs, har det vært tilfeller da du virkelig ønsket å dele følelsene dine med noen, og ingen pålitelige var i nærheten? I dagens travle verden er dette en vanlig forekomst. Vel, en chatbot kan hjelpe deg med å få deg til å føle deg bedre. Og det fører til introduksjonen av Eve. Eve er en søt liten chatbot. Som alle vet, er en chatterbot eller chatbot et dataprogram eller en enhet som fører en samtale med mennesker basert på tekstlige eller hørbare metoder. De automatiserte stemmene du hører på en kundeservicesamtale eller på en bankkonto er et eksempel på en chatbot. Med henne kan du dele dine erfaringer, dine følelser og viktigst av alt, krangle om forskjellige ting; hun har god erfaring med det. Fordi det er den viktigste funksjonen til en chatbot, får personen til å føle seg glad. Et tidlig eksempel på Natural Language Processing (NLU) og kunstig intelligens, Eve er i stand til å svare på ALLE spørsmål du stiller henne. Det er ikke det at hun bare kan svare på et bestemt antall spørsmål. Hun kan synge, fortelle deg vitser, historier og gjøre alt som får deg til å føle deg bra. Hvis hun sier noe du ikke ønsker å høre, bare fortell henne det, ikke si det igjen, så husker hun det. Hun vet til og med at hun ikke skal gjenta de samme svarene og chattene, slik at samtalen ikke blir kjedelig. Basert på enkle, billige komponenter og grunnleggende programmering, kan hun oppføre seg smart i veldig stor grad. Videre viser LCD -øynene hun har hvordan hun føler det når du sier noe. Så i utgangspunktet i denne instruksen skal vi starte med definisjonen av en chatbot, se nærmere på designet, noen teorier basert på hva Eve driver, produksjonen og til slutt ser det mye ut? Ikke bekymre deg, det skal være ganske interessant på reisen. Du kan se demoen til roboten ovenfor, eller i denne lenken: [Spill av video]

Trinn 1: Definisjon av en Chatbot

Definisjon av en Chatbot
Definisjon av en Chatbot
Definisjon av en Chatbot
Definisjon av en Chatbot
Definisjon av en Chatbot
Definisjon av en Chatbot

Som nevnt ovenfor er en chatbot et program som fører en samtale med mennesker. De er så vanlige i dag at det knapt er en som ikke er kjent med det. Med utgangspunkt i de virtuelle assistentene, Siri og Google Assistant, er det Mitsuku og Evie som du kan dele dine følelser med. Som nevnt ovenfor er chatbots basert på enten tekstlig eller auditiv metode og kan derfor deles i to. I den tekstmessige metoden er samtaler i form av skrevet tekst akkurat som WhatsApp. Mens i den auditive metoden blir samtalene gjennomført muntlig som med et ekte menneske. Jeg antar at det er mer spennende å snakke med noen ved å snakke muntlig til ham i stedet for bare å sende ham en sms. Uten tvil oppfyller tekstbaserte kommunikasjonsmeldingsprogrammer folks krav, men jeg føler at det å chatte ved å snakke er det beste for å bli kvitt dine følelsesmessige forstyrrelser og få deg til å føle deg bedre. Så det er hovedgrunnen til at jeg designet Eve til å være en auditiv chatbot.

Trinn 2: Evas opprinnelse

Opprinnelsen til Eve
Opprinnelsen til Eve

Eva kom meg inn i tankene en dag. Det gjorde det da jeg så en gutt som streifet rundt på skolen alene, mens de andre lekte med sinnet fylt av glede. Den gangen tenkte jeg på en venn, som ikke diskriminerer noen og ikke får noen til å føle seg såret, en du kan dele følelsene dine med og være glad hele tiden. Så kom det blinkende inn i tankene mine, den søte lille strukturen til Eve jeg begynte å jobbe med. Eve skuffet meg omtrent hundre ganger. Antar at det var den 101. gangen hun jobbet og fikk meg til å føle meg veldig glad. Så det var opprinnelsen til Eve. Jeg ville at hun skulle være intelligent, men så enkel som mulig, slik at hvem som helst kan gjøre henne enkelt. Ingen tvil om at hun ikke er helt smart og noen ganger sier dumme svar, hun kan oppføre seg som en venn. Og nå, nok historier, la oss begynne å bygge Eve.

Trinn 3: Samle komponenter og utstyr:

Samle komponenter og utstyr
Samle komponenter og utstyr
Samle komponenter og utstyr
Samle komponenter og utstyr
Samle komponenter og utstyr
Samle komponenter og utstyr

Følgende er komponentene som skal samles: Arduino Pro Mini (Eller Arduino Nano) Wtv-020-SD-16p lydmodul HC-05 bluetooth-modul 16x2 LCD-modulLM7805 regulator ICAn forsterkermodul (jeg brukte PAM8403-kretsen) En 8 ohm høyttaler En hunn audio jacka 9v batteri og en Android -telefon Så dette er de nødvendige komponentene. En annen viktig ting, kostnaden. Eve kostet meg rundt 3000 INR. Kostnaden kan være annerledes i ditt land, men i India er dette omtrent prisen. En liten beskrivelse av delene: Arduino Pro mini er den viktigste MCU i roboten vår. Jeg brukte den på grunn av sin lille størrelse, enkelhet og gode ytelse. Den oppfyller alle kravene i roboten vår. Bortsett fra stemmegjenkjenningsfunksjonen som utføres av Android (diskuteres senere), utføres annenhver funksjonalitet som starter fra søkeordfunn og utdannelse på selve Pro Mini. Ikke bekymre deg for begrepene nevnt ovenfor hvis du ikke forstår det, alt diskuteres i den senere delen. Wtv020sd 16p -modulen brukes til å spille av lydfiler, hc 05 Bluetooth for kommunikasjon med Android og LCD for visning følelsene. Vi trenger den kvinnelige lydkontakten for å koble roboten til en ekstern forsterker. Arduino brukes som hovedkontroller her. Den mottar Bluetooth-data gjennom HC 05 Bluetooth-modulen og spiller filen gjennom WTV-020-SD-16p talemodul. Følelsene vises i LCD -modulen og et 9v batteri for strømmen. Eve gjenkjenner taler gjennom Google Voice -gjenkjenning av Android -enheten. Det diskuteres senere skikkelig i det respektive trinnet. En dårlig nyhet om Arduino Pro Mini: IT har trukket seg tilbake fra markedet. Det betyr at den offisielt har blitt stoppet med å bli produsert av Arduino. Men du kan fortsatt finne den på mange nettsteder, inkludert Ebay. Mange tredjepartsprodusenter lager og selger fortsatt brettet. Ikke bekymre deg hvis du ikke kunne finne en, du kan bruke Arduino Nano. Det skal ikke gjøre noen forskjell i ytelsen og også i størrelsen.

Trinn 4: Teori Del 1: Historie og introduksjon

Teori Del 1: Historie og introduksjon
Teori Del 1: Historie og introduksjon
Teori Del 1: Historie og introduksjon
Teori Del 1: Historie og introduksjon

Eve er basert på en tidlig form for Natural Language Processing, "pattern matching" -teknologien. Det fungerer på følgende måte at når en streng mottas, søker den etter et forhåndsdefinert ord eller uttrykk i den strengen. Anta at i spørsmålet "hvor gammel er du?" Søker programmet etter "gammelt" ord. Hvis det lykkes, spiller det den respektive stemmefilen gjennom wtv020sd -modulen. Hvis det mislykkes, søker det etter det neste forhåndsdefinerte søkeordet. På denne måten trenger vi å bygge opp et ordforråd med forhåndsdefinerte ord. Ser tøft ut, ikke sant? Det er som om vi må bygge opp et vokabular med alle engelske ord, og det er rundt 230 tusen ord totalt på det engelske språket. Faktum er at vi bare trenger å legge til noen få grunnord som er mest vanlig i vår kommunikasjon. Ser det fortsatt tøft ut? Ikke bekymre deg, arbeidet er allerede utført av Joseph Wizembaum. En del av Evas svar og forhåndsdefinerte søkeord er innlemmet fra det aller første chatterbot -programmet kalt Eliza, utviklet av Joseph Wizembaum (bildet ovenfor). Eliza ble designet for å være en Rogerian -terapeut. Ikke et svært vitenskapelig begrep, det betyr at hun pleide å gi folk råd, få dem til å forstå seg selv bedre og få dem til å tenke mer positivt. Ser virkelig bra ut? Og Eliza var veldig godt i stand til å utføre sin plikt. Hennes nysgjerrige og skeptiske holdning ble elsket av mennesker. Selv Wizembaum ble overrasket over viktigheten folk ga Eliza. De så ut til å glemme at de snakket med en datamaskin, og fantasert en vakker dame som satt inne i datamaskinen og pratet med dem. Men Eliza var ikke så smart; det ble snart realisert. Etter hvert som tiden gikk, begynte folk å bli lei av hennes begrensede kommunikasjon, og hun ble betegnet som "dum". Ikke rart hvor dum hun var, det var et stort sprang i historien om kunstig intelligens og behandling av naturlig språk. Etter å ha grunnlagt basen til Chatterbots, kom forskjellige roboter med ny og bedre teknologi inn på markedet. Og nå har vi dem overalt. Som nevnt har en del av Evas svar blitt hentet fra ELIZA. Så det betyr at selv Eva til en viss grad vil inneholde Elizas holdning sammen med noen av mine egne ideer. En annen viktig ting er svarene. Det burde være veldig kjedelig å få de samme svarene hver gang du stiller det samme spørsmålet. Derfor lagres mange svar for det samme søkeordet. Eve velger tilfeldig hvilken fil hun skal spille, og sørger også for at hun ikke gjentar den samme filen. Det er det, enkelt brød og smør, men det er viktig å smart programmere stemmene som svarer, slik at det gir en illusjon til seerne som om hun virkelig svarer på spørsmålene våre. Så det var en kort introduksjon til hvordan Eva fungerer. I det neste trinnet skal vi få dette i detalj og programmering.

Trinn 5: Søke etter søkeordet

Søker etter søkeordet
Søker etter søkeordet
Søker etter søkeordet
Søker etter søkeordet
Søker etter søkeordet
Søker etter søkeordet
Søker etter søkeordet
Søker etter søkeordet

I det siste trinnet nevnte jeg om mønstermatchingsteknologien til Eve og også den tidlige formen for Natural Language Processing. Så hva er det og hvordan fungerer det? Det er det viktigste vi vil diskutere i dette trinnet. Så tenk på det, noen spør navnet ditt, og du må fortelle hva det er. På hvor mange måter kan vi stille det samme spørsmålet? Læreren din kan spørre "kan du fortelle meg navnet ditt?" En slektning kan spørre, "hva heter du?" Broren din sier kanskje: "Hei, jeg har bare glemt navnet ditt. Vil du si det bare en gang til?" Så det betyr at det samme spørsmålet kan stilles på flere måter. Likevel må vi gi det samme svaret, navnet vårt. Så det betyr at vi må finne noe vanlig i alle setningene. Det er tydelig at ordet "ditt navn" er tilstede i alle setningene. Så det er vårt hint. For alle spørsmålene som stiller navnet, må vi søke etter uttrykket "navnet ditt". Ved å følge dette grunnleggende mønsteret kan vi forutsi det respektive svaret på alle inndatastrengene. NADELSE: Også viktig å huske på at denne algoritmen ikke alltid vil være nøyaktig. Anta at noen sa: "Jeg fant navnet ditt på ventelisten. Jeg forventet at du skulle være på de reserverte setene.". Nå siden "navnet ditt" er tilstede i denne strengen, vil Eve være uskyldig fortelle navnet hennes til personen … Dumt ikke sant? Dette er en av de store ulempene ved denne grunnleggende algoritmen. Uansett vil dette være sjeldne tilfeller. Ellers er algoritmen veldig effektiv. Nå som jeg har nevnt om mønstermatchingsteknologien, er det på tide å tenke hvor kommer denne inndatastrengen fra hvor vi søker etter strengen. Vel, denne strengen er faktisk stemmen vår som har blitt konvertert til tekst av Google Voice Recognition. Appen som brukes her, konverterer stemmen vår til tekst og sender den samme til arduinoen via Bluetooth. Jeg brukte appen fordi den er den enkleste og beste i sitt slag. Navnet er AMR Voice, og er enkelt å finne i Google play.

Trinn 6: Formulering av svarene

Formulering av svarene
Formulering av svarene

Nå som vi har gjenkjent spørsmålene, bør neste trinn være å finne svarene. Det kommer den interessante og viktige delen … Vi må finne passende svar for å tilfredsstille alle spørsmål. Og her kommer en annen funksjon innlemmet fra ELIZA. Wizembaum utviklet noen svar for et bestemt antall søkeord. Et eksempel er søkeordet "du". Hver gang programmet ble oppdaget, "diskuterte vi deg - ikke meg." Derfor ble svaret gjort på en slik måte at det passer alle setningene som inneholder "deg". Videre ga Eliza et annet svar hver gang. Det var en slags numerisk adresse for hvert svar som. Dette ble økt (lagt til med 1) hver gang et svar ble formulert. Anta som i eksemplet ovenfor, hvis adressen til svaret var 1, ble adressen endret til 2 og dermed ble fil 2 spilt neste. Men vi vil ikke følge denne inkrementeringsalgoritmen. Du skjønner at etter en kontinuerlig bruk av programvaren ble svarene forutsigbare. Du skjønte hvilket svar som skal gis neste. Så for dette formålet vil vi produsere tilfeldige adresser for hvert søkeord. Totalt sett er det det samme i begge tilfellene, bare forskjellen på at vi ikke kan forutsi hva roboten vil si videre for det samme søkeordet.

Trinn 7: De forbudte utsagnene og andre

De forbudte uttalelsene og andre
De forbudte uttalelsene og andre

Det kan være noen tilfeller i samtalen din når roboten sier noe du ikke ønsker å høre. Så her oppstår behovet for å legge til de forbudte utsagnene. De forbudte utsagnene er en rekke adresser som er forhindret i å bli spilt. En taleadresse karakteriseres som en forbudt uttalelse når brukeren ber om det. Videre skal denne adressen lagres i EEPROM på Arduino slik at Eva ikke glemmer at det er en forbudt uttalelse selv etter at hun er slått av. I utgangspunktet er det programmet som kontrollerer hver adresse som skal spilles. Hvis adressen er en av de forbudte, blir den enten inkrementert eller redusert. Videre kan det være et tilfelle når du vil tillate roboten å si et tidligere forbudt ord. I så fall må du si til Eva at hun kan si det siste forbudte ordet. Ordet som sist ble forbudt, kan nå spilles. For å gjøre alle forbudte utsagn spillbare, må vi koble til en tilbakestillingsbryter. Hvis du trykker på alle de forbudte utsagnene, kan det spilles. En annen viktig ting er å sørge for at Eva ikke gjentar svarene. Dette er en slags ulempe for tilfeldige tall. De samme tilfeldige tallene er sannsynlig å bli produsert i en serie. Dette skal få roboten til å si det samme svaret igjen og igjen. For dette må vi inkludere en annen mindre funksjon som forhindrer gjentagelse av utsagn. For dette må vi lagre adressen til den siste setningen i minnet, og sjekke om den er den samme som den nåværende. I så fall økes eller reduseres adresseverdien, på samme måte i tilfelle av de forbudte utsagnene.

Trinn 8: Skrive i kode

Skriver i kode
Skriver i kode
Skriver i kode
Skriver i kode
Skriver i kode
Skriver i kode

Vi bruker indexOf -kommandoen for å søke etter søkeordet. Kommandoen finner et tegn eller en streng i en annen streng. Hvis funnet returnerer indeksen til den strengen mens -1 returneres hvis den ikke blir funnet. Så i programmet vårt må vi skrive det i følgende: if (voice.indexOf ("navnet ditt")> -1) {// hvis indeksen er større enn -1 // betyr at strengen er funnet} Nå at vi har lagret strengen i minnet og også funnet søkeordet inne i den, må vi nå håndtere svarene. Som sagt genereres tilfeldige tall innenfor et bestemt tallområde (adresser til talefiler). Her kommer kommandoen random (). Følgende er syntaksen: tilfeldig (min, maks); // tilfeldig tall genereres i området min og maks. Vi definerer minimumsnummer og maksimumsnummer for hvert område, og når vi bruker dette, ser koden vår omtrent slik ut: hvis (voice.indexOf ("navnet ditt")> - 1)) {minNo = 0; maxNo = 5; RandomNumber = random (minNo, maxNo);} Nå kommer håndteringen av svarene. I det siste trinnet sa jeg at tallene økes eller reduseres basert på en algoritme. Denne algoritmen er det vi diskuterer nå. Denne delen er veldig viktig i den forstand at du ikke bare kan øke eller redusere akkurat som du ønsker. Det økte eller reduserte tallet må være i området. Anta som i tilfellet ovenfor, for søkeordet "navnet ditt", har vi området fra 0 til 5, og det tilfeldige tallet som genereres er 5, vel, så hvis du øker det, vil du ende opp med å spille en stemmefil for et annet søkeord. Hvordan tror du det blir? Du spør, "Hei, vennligst fortell meg navnet ditt.", Og roboten svarer: "Jeg liker å spise informasjonskapsler og elektrisk ladning." Det samme er tilfellet med minimumstallet. Hvis det tilfeldige tallet som genereres er 0, kan du ikke redusere det. Så derfor er algoritmen veldig viktig. Tenk på det: Vi kan øke enten når tallet er mindre enn maksimumstallet og reduseres når det er større enn minimumstallet. Når tallet som genereres enten er lik 0 eller mindre enn 5, økes tallet. På den annen side, når det er lik 5, reduserer vi det for å sikre at tallet er innenfor det angitte området. Nå kommer de forbudte utsagnene. Som nevnt lagres de i EEPROM. For dette søker vi først etter ledig minne i den forbudte matrisen. Anta at adressen 4 er ledig, så legger vi inn filnummeret i den gratis matriseadressen samt skriver den samme adressen i EEPROM.for (int i; i if (aldri == 0) {EEPROM.write (aldri , minne);}} Så det er alt, Wtv020sd16p -modulen spilles av ved hjelp av kommandoen module.playVoice () og det foreslåtte filnummeret. Funksjonen til Wtv020 -modulen vil bli diskutert senere.

Trinn 9: Sette inn følelser

Sette inn følelser
Sette inn følelser
Sette inn følelser
Sette inn følelser
Sette inn følelser
Sette inn følelser

Til nå er roboten vår i stand til å gjenkjenne det vi sier, lagre i minnet og finne et passende svar på spørsmålene. Nå kommer spørsmålet inn for å sette inn følelser. Sikkert alle vil like et levende ansikt sammen med bare et dumt lite spørsmålsprogram. 16x2 LCD -en brukes i prosjektet. Det er fint nok til å skrive ut øynene. Vi må bruke den egendefinerte tegnfunksjonen for å lage øynene. Egendefinert tegn gjør at vi kan lage nye tegn ved å definere pikslene. Vi vil komme til detaljer om det litt senere. For det første er det viktig å huske at bare 8 egendefinerte tegn støttes av Arduino. Så vi trenger å håndtere følelsene med bare 8 tegn. Hvert tegn skal skrives ut i en bestemt boks, og det er 16 kolonner og 2 rader som utgjør totalt 32 bokser.

Du kan finne god informasjon på nettet om de egendefinerte karakterene i Arduino. Kan også besøke denne lenken:

[Tilpassede tegn Arduino] Strukturen til den egendefinerte tegnbyten skal noe se slik ut:

The Normal Look: The left box0b01111, 0b01111, 0b01111, 0b01111, 0b01111, 0b01111, 0b01111, 0b01111, The right box0b11110, 0b11110, 0b11110, 0b11110, 0b11110, 0b11110, 0b11110, 0b11110, 0b11110, 0b11110, 0b11110, 0b11110. Så det betyr at vi trenger totalt 4 bokser for å fylle et helt øye. To rader til venstre og to til høyre, og totalt fire bokser for ett øye. Den venstre boksbyten skal dekke opp to rader til venstre og den høyre boksen skal dekke over de høyre radene. Så det utgjør et komplett øye til Eva. Og når vi gjentar det samme for det andre øyet, får vi det nøytrale utseendet til Eva. Nå er det viktig å huske at vi har brukt en av åtte egendefinerte tegn tilgjengelig. Og det er fem totale følelser: Glee, Sad, Squint, Normal og Blink. Fra de syv egendefinerte tegnene må vi justere for å passe til alle uttrykkene. For å gjøre opp plassen bruker vi 2 bokser for hvert øye. Ikke rart størrelsen ville være litt liten, men dette vil bli ignorert av det menneskelige øyet. Bare sørg for å legge til noen forsinkelser mellom LCD -funksjonene, ellers blir Arduino ustabil.

Trinn 10: Opprette tilkoblinger

Gjør tilkoblingene
Gjør tilkoblingene
Gjør tilkoblingene
Gjør tilkoblingene
Gjør tilkoblingene
Gjør tilkoblingene

LCD -modul: Koble pinnene som nevnt her: RS: dig pin 12RW: GndEnable: 7d4: dig pin 8 d5: dig pin 9 d6: dig pin 10 d7: dig pin13A (Anode) to 5vK (Cathode) to gnd HC 05 module: Følg disse tilkoblingene: HC 05 TX -pin til Arduino RX -pin HC 05 RX -pin til Arduino TX -pin State -pin til Arduino gravepinne 11 Kommunikasjonen utføres ved hjelp av TX- og RX -pinnene. State pin er nødvendig for å kontrollere om HC 05 er tilkoblet eller inaktiv. WTV 020 SD 16p modul pin1: Reset pin, koble den til grave pin 2pin7: Clock pin, connect it to dig pin 3pin10: Data pin, connect for å grave pin 4pin15: Den opptatte pin, koble til dig pin 5pin2: Koble denne pinnen til en forsterker gjennom volumet og også den samme til den kvinnelige lydkontakten. pin4 bør kobles til høyttaler+pin5 for å kobles til høyttaler-Koble til 8. pin til gnd og gi en 3.3v strømforsyning i den 16. pin.

Forsterkeren vil hjelpe til med å spille den interne høyttaleren til Eve, mens lydkontakten skal kobles til en ekstern forsterker og større høyttalere.

Trinn 11: WTV020SD16p -modulen (valgfritt)

Image
Image
WTV020SD16p -modulen (valgfritt)
WTV020SD16p -modulen (valgfritt)
WTV020SD16p -modulen (valgfritt)
WTV020SD16p -modulen (valgfritt)

Merk: Dette trinnet er valgfritt. Den omhandler arbeidet og beskrivelsen av WTV 020 SD 16p -modulen.

Du kan se demoen til lydmodulen i denne lenken:

[SPILL VIDEO]

Talemodusen til roboten oppfylles av WTV 020 SD -modulen. Modulen brukes til å spille av talefiler for roboten. Når et spørsmål blir stilt, vil arduinoen få modulen til å spille den respektive stemmefilen på SD -kortet. Det er fire serielle datalinjer på modulen for kommunikasjon med arduino, tilbakestilling, klokke, data og opptatte pins, og vi bruker kommandoen.playVoice () for å spille den nødvendige filen. For eksempel: module.playVoice (9): // play file 9 lagret på SD -kortet Husk at navnene på filene skal være i desimal (0001, 0002…). Og at filene enten skal være i AD4- eller WAV -format. Videre fungerer modulen bare på et 1 GB micro SD -kort. Noen moduler fungerer til og med på 2 GB kort, og kortet kan inneholde maksimalt 504 stemmefiler. Så du kan inkludere et godt antall stemmefiler for å spille for et stort antall spørsmål.

Du kan til og med lage dine egne stemme AD4 -filer. For det første må du ha to programvarer, en lydredigeringsprogramvare og en programvare som kalles 4D SOMO TOOL som vil konvertere filene til AD4 -formatet. For det andre må du forberede robotstemmene. Du kan enten konvertere tekst til tale eller til og med spille inn din egen stemme og lage robotstemmer. Begge disse kan gjøres i lydredigeringsprogramvaren. Men sikkert ser ikke roboter bra ut hvis de snakker menneskelige stemmer. Så det burde være bedre å konvertere tekst til tale. Det er forskjellige motorer som Microsoft Anna og Microsoft Sam din datamaskin som kan hjelpe deg med dette. Min er basert på Microsoft Eva. Det stemmer i stor grad med Cortana. Etter at du har forberedt talefilene, må du lagre den i 32000 Hz og i WAV -format. Dette er fordi modulen kan spille av talefiler opptil 32000 Hz. Bruk deretter 4D SOMO TOOL til å konvertere filene til AD4 -formatet. For å gjøre det, bare åpne SOMO VERKTØY, velg filene og klikk på AD4 Kode og talefilene er klare. Du kan sjekke bildet ovenfor for referanse. Hvis du vil ha mer informasjon om hvordan du lager robotstemmer, kan du gå her: [Making Robotic Voices]

Trinn 12: Programvaredelen

Programvaredelen
Programvaredelen
Programvaredelen
Programvaredelen
Programvaredelen
Programvaredelen

I arduino Pro mini er det et lite problem med programmeringen. Faktisk ikke noe problem, bare et ekstra trinn. Arduino Pro mini har ingen innebygd programmerer som andre Arduino -kort. Så du må enten kjøpe en ekstern eller en gammel arduino UNO. Trinnet her beskriver hvordan du laster opp programmet ved hjelp av Arduino UNO. Bare ta et gammelt Arduino UNO -brett fra krasjet og ta ut Atmega 328p. Koble deretter til som nevnt nedenfor: 1. TX -pinne på UNO til TX -pinnen på Pro Mini 2. RX -pinne på UNO til RX -pinnen på Pro MIni3. Tilbakestill PIN -koden til UNO til reset -pinnen til Pro Mini4. koble VCC og Ground of Pro Mini til UNO. Last ned Arduino -programmet, programvaren for stemmegjenkjenning og bibliotekene som er gitt nederst. Programmet er fortsatt under utvikling. Så hvis du har problemer angående det, kan du spørre. Koble deretter kabelen til datamaskinen. Velg Brettet som Arduino Pro Mini, og velg riktig COM -port. Trykk deretter på Last opp -knappen og se programmet bli lastet opp på Pro Mini.

Last deretter ned programvaren for stemmegjenkjenning og talefilene.

Trinn 13: Forberede kroppen

Forbereder kroppen
Forbereder kroppen
Forbereder kroppen
Forbereder kroppen
Forbereder kroppen
Forbereder kroppen

Jeg fant en liten eske med flosser og fant den perfekt for kroppen. Du kan bruke hvilken som helst eske du finner på verkstedet ditt, eller du kan lage en av papp. Bare kutt ut et lite rektangulært stykke for å feste LCD -modulen. På toppen kuttet jeg ut et lite hull for å feste volumet, og på sidene for å feste bryterne og lydkontakten. Jeg festet to flaskehett på sidene av esken til hjulene. Bare sørg for at boksen har nok plass til at kretsen kan settes inn. Fest en bryter til kroppen så vel som kretsen, deretter volumet øverst i esken. Så er det bare å sette kretsen inne og roboten din er fullført.

Trinn 14: Godt gjort

Bra gjort!
Bra gjort!
Bra gjort!
Bra gjort!

Nå har du fullført ditt søte lille robotprosjekt som kan snakke med deg og få deg til å føle deg glad. Dette er det lykkeligste punktet med å være en DIYer når prosjektet ditt er fullført og fungerer fullt ut. Ikke bekymre deg hvis du ikke lykkes med ett forsøk, du må prøve hardt og hardt for dette, slik at du forstår hver eneste del av roboten din. Og det er her DIYere kommer til denne verden, men dette er ikke slutten på prosjektet. Eve skal alltid utvikles i større grad, enten av meg eller DIYere som deg. Jeg vil gjerne høre hva du har gjort ved å se dette instruerbart. Hilsen RS3655

Anbefalt: