Asked

Voice Variable In VR

Hi all

Is there a way to fire a voice command... like say Hi, then the script will say what is your name... then you say your name, and the VR holds that variable (e.g. your name) and the EZ says the variable back?


Related Hardware EZ-B v4

ARC Pro

Upgrade to ARC Pro

Take control of your robot's destiny by subscribing to Synthiam ARC Pro, and watch it evolve into a versatile and responsive machine.

#25  

for my ears and crown, they are running an Adruino Uno, delay and random time sequence... works really well.. would be cool to be able to have EZ talk to Adruino and Maestro (as I love that sequence animation you can do - which my wrists and claws are running from, again all random time sequences..) would be cool to control those boards or make calls from the EZ so I had more control.. but i did what I knew how to do at the time.. but as my B9 is maturing i want more control of things lol

thanks all, been spending much more time with my B9 and the EZ Robot and digging the call word from SR over to Bing to make him respond and talk back and head movement...

PRO
Synthiam
#26  

Terry - We had to delay updating ARC until tonight. I didn't realize the release was held due to a Microsoft .Net bug that we had discovered. We isolated the issue and reported it to Microsoft. There's a work-around for the time being in the new update. More will be included in the release notes.

#27  

Hey Terry. I talked to David Mc about the small geared motor question I had. He said the issue of a geared motor failing would only come into play if the motor was reversed quickly without letting come to a full stop. These small motors run at such a high RPM (1600 RMP for example). Then they add gears to it's motor shaft to drastically slow down the final output shaft (35 RPM for example). A sudden change of direction places an amazing amount of pressure on those little gears.

As far as my other statment about directly about plugging a motor directly into an EZB. I was completely wrong (again). I finally visually looked at my circuit. It does not plus directly to the EZB. It runs through a TIP transistor switch I built and then a voltage regulator. The transistor switch is opened and closed by a Digital Signal pin on the USB. That turns on and off the ears. I control the speed with PWM set in ARC. I really need to check over things I built years ago before I go shooting off my mouth about to do things. LOL. Sorry my friend.

PRO
USA
#29  

Terry,

I combined you script with DJ's  -  works good

ControlCommand("Bing Speech Recognition", "StartListening")

$resp = WaitForSpeech(5, "Tom", "Bob")

if ($resp = "Tom" | $BingSpeech = "Tom") ControlCommand("Soundboard", "Track_0") print("track 0")

sleep(3000)

ControlCommand("Bing Speech Recognition", "StartListening")

ELSEif ($resp = "Bob" | $BingSpeech = "Bob") ControlCommand("Soundboard", "Track_1") print("track 1")

ELSE ControlCommand("Bing Speech Recognition", "StopListening") Say("I didn't understand you")

endif

PRO
Synthiam
#30   — Edited

EZAng, you should not be instruction bing speech recognition to start listening with my example. With WaitForSpeech you don't have to use the bing speech recognition at all. It should be...



$resp = WaitForSpeech(5, "Tom", "Bob")

if ($resp = "Tom")
ControlCommand("Soundboard", "Track_0")
print("track 0")

sleep(3000)

ELSEif ($resp = "Bob")
ControlCommand("Soundboard", "Track_1")
print("track 1")


ELSE
Say("I didn't understand you")

endif

PRO
USA
#31   — Edited

Ok I will try that, thanks,

works well, no bing speech,

also thanks for the new update

And soundboard and speech recognition work the best for me, don't need Bing

#32  

EzAng

Mine is a tad different... using SP I do this:

ControlCommand("Speech Recognition", "PauseOn") ControlCommand("Fun", "Track_3") sleep(1350) ControlCommand("BingChat", "Track_17") sleep(2000) ControlCommand("Bing Speech Recognition", "StartListening") sleep(3000) ControlCommand("Bing Speech Recognition", "StopListening")

Then using Bing after I say my call word (it opens up Bing and listens and passes my next phrase to Bing) like the below (and I pass what I said as a variable)... I am also using AimlBot for I want to get some AI logic to maybe use in the future... but my robot has a distinct voice, so I am at the moment bound to only the 200 or so phrases i have...

it works perfectly 99% of the time and still needs some tweaking... as this is new to me:)

controlCommand("AimlBot", "SetPhrase", $BingSpeech) sleep(2000)

#controlCommand("Bing Speech Recognition", "PauseListening") ControlCommand("Bing Speech Recognition", "StopListening")

ControlCommand("Scripts", "ScriptStart", "RadarMoveL") sleep(2000)

if ($BingSpeech = "How are you")

I am swell

ControlCommand("BingChat", "Track_0") sleep(3000) ControlCommand("BingChat", "Track_1") sleep(5000) Elseif ($BingSpeech = "Stock price")

run stock script

ControlCommand("Scripts", "ScriptStart", "Stock") sleep(25000) Elseif ($BingSpeech = "What is the weather")

run weather script

ControlCommand("Scripts", "ScriptStart", "weather") sleep(25000) Elseif ($BingSpeech = "Who are you")

play fun sounds

ControlCommand("BingChat", "Track_2") sleep(5000) ControlCommand("BingChat", "Track_3") sleep(5000) Elseif ($BingSpeech = "Your mission")

play fun sounds

ControlCommand("BingChat", "Track_4") sleep(10000) ControlCommand("BingChat", "Track_5") sleep(5000) Elseif ($BingSpeech = "What day is it")

run date script

ControlCommand("Scripts", "ScriptStart", "Date") sleep(25000) Elseif ($BingSpeech = "How do I look")

play fun sounds

ControlCommand("BingChat", "Track_6") sleep(5000) Elseif ($BingSpeech = "Define your first law") ControlCommand("Laws", "Track_0") sleep(10000) Elseif ($BingSpeech = "Define your second law") ControlCommand("Laws", "Track_1") sleep(10000) Elseif ($BingSpeech = "Define your third law") ControlCommand("Laws", "Track_2") sleep(10000) Elseif ($BingSpeech = "Do you understand my wife") ControlCommand("BingChat", "Track_8") sleep(10000) Elseif ($BingSpeech = "Will you help me clean up") ControlCommand("BingChat", "Track_9") sleep(15000) Elseif ($BingSpeech = "Scan area") ControlCommand("Scripts", "ScriptStart", "RadarMoveL") sleep(6000) ControlCommand("BingChat", "Track_15") sleep(5000) ControlCommand("BingChat", "Track_14") sleep(5000) ControlCommand("BingChat", "Track_16") sleep(5000) Elseif ($BingSpeech = "Good Morning") ControlCommand("BingChat", "Track_11") sleep(4000) Elseif ($BingSpeech = "Goodmorning") ControlCommand("BingChat", "Track_11") sleep(4000) Elseif ($BingSpeech = "Good Night") ControlCommand("BingChat", "Track_12") sleep(6000) Elseif ($BingSpeech = "Goodnight") ControlCommand("BingChat", "Track_12") sleep(6000) Elseif ($BingSpeech = "Tell me a joke") ControlCommand("BingChat", "Track_13") sleep(15000) Elseif ($BingSpeech = "Doctor Smith") ControlCommand("BingChat", "Track_18") sleep(15000) Elseif ($BingSpeech = "Compliment my wife") ControlCommand("BingChat", "Track_20") sleep(3000) ControlCommand("BingChat", "Track_19") sleep(5000) Elseif ($BingSpeech = "Tell me if we are in danger") $Cresponse = GetRandomUnique(1,4) print($Cresponse) if ($Cresponse = 1) # no ControlCommand("BingChat", "Track_21") sleep(1000) Elseif ($Cresponse = 2) # mother in law ControlCommand("BingChat", "Track_22") sleep(5000) Elseif ($Cresponse = 3) # danger will ControlCommand("Scripts", "ScriptStart", "ArmsOut") ControlCommand("BingChat", "Track_24") sleep(3000) ControlCommand("BingChat", "Track_23") sleep(6000) ControlCommand("Scripts", "ScriptStart", "ArmsIn") Else ControlCommand("BingChat", "Track_25") sleep(6000) ControlCommand("BingChat", "Track_26") sleep(5000) endif Else sleep(6000) ControlCommand("BingChat", "Track_10") sleep(3000) #SayEZB($BotResponse)

sleep(5000)

endif

#controlCommand("Bing Speech Recognition", "UnpauseListening") #controlCommand("Bing Speech Recognition", "StartListening")

ControlCommand("Speech Recognition", "PauseOff")