Candice the personal assistant robot

L67GS
Posts: 457
Joined: Wed Apr 22, 2020 3:02 pm
languages_spoken: English, Jibberish, Pig Latin
ODROIDs: XU4, C1+,(3) C0's, and a whole big pile of accessories, VU7A Plus,, ect....
Has thanked: 135 times
Been thanked: 66 times
Contact:

Re: Candice the personal assistant robot

Post by L67GS »

odroid wrote:
Fri Jan 29, 2021 10:00 am
As far as I remember, a generic 720p USB web-cam consumed around 1.5Watt (5V/300mA).
It seems to be worth to measure the voltage on the VBUS of the PlayStation Eye board.
I powered one up on the bench, current draw wasn't consistent, it jumps around up to about 350ma. I powered it off the power bus on the microcontroller board and all is well.

L67GS
Posts: 457
Joined: Wed Apr 22, 2020 3:02 pm
languages_spoken: English, Jibberish, Pig Latin
ODROIDs: XU4, C1+,(3) C0's, and a whole big pile of accessories, VU7A Plus,, ect....
Has thanked: 135 times
Been thanked: 66 times
Contact:

Re: Candice the personal assistant robot

Post by L67GS »

odroid wrote:
Fri Jan 29, 2021 10:00 am
As far as I remember, a generic 720p USB web-cam consumed around 1.5Watt (5V/300mA).
It seems to be worth to measure the voltage on the VBUS of the PlayStation Eye board.
I checked the current draw, it's not consistent. Lows around 150ma, highs around 350ma.

L67GS
Posts: 457
Joined: Wed Apr 22, 2020 3:02 pm
languages_spoken: English, Jibberish, Pig Latin
ODROIDs: XU4, C1+,(3) C0's, and a whole big pile of accessories, VU7A Plus,, ect....
Has thanked: 135 times
Been thanked: 66 times
Contact:

Re: Candice the personal assistant robot

Post by L67GS »

Frustrated with speech recognition I needed a break so I did more research and ordered the GPS module, it's a NEO-6M knockoff so 9600 baud UART and draws about 40ma so I can switch it with a bjt. It's NMEA-0183 so I shouldn't have any trouble in code, knock on wood.
My acceleration module is ADXL345 and draws about 23 µA, operates both I2C and SPI so I figured on using SPI. I haven't looked too close at data handling because there's a bunch of existing libraries and such online for it.
*
20210205_120843.jpg
20210205_120843.jpg (321.43 KiB) Viewed 318 times
*
Now back to speech recognition.....uhhg.

mad_ady
Posts: 9373
Joined: Wed Jul 15, 2015 5:00 pm
languages_spoken: english
ODROIDs: XU4, C1+, C2, C4, N1, N2, H2, Go, Go Advance
Location: Bucharest, Romania
Has thanked: 599 times
Been thanked: 659 times
Contact:

Re: Candice the personal assistant robot

Post by mad_ady »

What are you doing with gps on an indoor unit? Implementing "Find my Candice"? :)

L67GS
Posts: 457
Joined: Wed Apr 22, 2020 3:02 pm
languages_spoken: English, Jibberish, Pig Latin
ODROIDs: XU4, C1+,(3) C0's, and a whole big pile of accessories, VU7A Plus,, ect....
Has thanked: 135 times
Been thanked: 66 times
Contact:

Re: Candice the personal assistant robot

Post by L67GS »

mad_ady wrote:
Sat Feb 06, 2021 3:19 am
What are you doing with gps on an indoor unit? Implementing "Find my Candice"? :)
I'm planning on taking her around with me, which is why I took this form factor.
There's a few things I'd like to do with gps,it would be neat if she knew where she was, and she can use it to report the time.
I'm kind of fantasizing about something else though, since the GPS will know precise time and location to a few feet, and she has a 3 axis accellerometer I may write her a function to track my runs at autocross.

L67GS
Posts: 457
Joined: Wed Apr 22, 2020 3:02 pm
languages_spoken: English, Jibberish, Pig Latin
ODROIDs: XU4, C1+,(3) C0's, and a whole big pile of accessories, VU7A Plus,, ect....
Has thanked: 135 times
Been thanked: 66 times
Contact:

Re: Candice the personal assistant robot

Post by L67GS »

I got the Candice AI taking reliable input from Julius using a new version of the "API" (quotes because it's very crude) on my computer and am currently resolving an issue with C++ ifstream on the C0.
So... she should be able to hear me in a couple of days.
Today Candice is dismantled and strewn across the bench in my lab with a battery capacity tester running a test on her battery pack while I install a esp8266 wifi module and write a little code for her battery monitor.

L67GS
Posts: 457
Joined: Wed Apr 22, 2020 3:02 pm
languages_spoken: English, Jibberish, Pig Latin
ODROIDs: XU4, C1+,(3) C0's, and a whole big pile of accessories, VU7A Plus,, ect....
Has thanked: 135 times
Been thanked: 66 times
Contact:

Re: Candice the personal assistant robot

Post by L67GS »

Speech recognition is working with Julius and a somewhat limited vocabulary. It's a bit buggy, and I have to revise the code some because not all of the functions are ready for speech recognition.
A limited vocabulary meant I had to get creative, things like instead of hearing 1,000 Candice hears 1 & 000 so I need to tweak stuff like that yet so she sees it and turns it into 1000 before converting it to a double variable.
I also elected to do a temporary esp8266 installation until I know it works properly.
If the esp8266 works Candice will control it to where she'll boot and if no network is available she'll use a bjt to turn it off so it isn't wasting power...
Still a lot of testing but for the first time since I started speech recognition 6 months ago an end is in sight.
Oddly enough the method I'm using was one of my very first attempts and almost all this time was invested exploring other methods.
These users thanked the author L67GS for the post:
odroid (Mon Mar 22, 2021 8:55 am)

L67GS
Posts: 457
Joined: Wed Apr 22, 2020 3:02 pm
languages_spoken: English, Jibberish, Pig Latin
ODROIDs: XU4, C1+,(3) C0's, and a whole big pile of accessories, VU7A Plus,, ect....
Has thanked: 135 times
Been thanked: 66 times
Contact:

Re: Candice the personal assistant robot

Post by L67GS »

Speech recognition is working fairly well now with the limited vocabulary, my "api" is ugly but I've got good accuracy. The big problem is Julius still working to find every sound as a word. For instance if I say "blue" she'll indeed hear "blue" but factor a computer fan in the room into the mix and she'll hear "are are are blue are are", for instance. Eliminating "are" from her vocabulary is easy enough but then Julius will find the next closest word to the sound and return it instead. I wrote a filter to eliminate it, little challenges like that. Speech recognition will likely always be Candice's Achilles heel.

Moving forward I'll keep tweaking, eventually even master the actual Julius API. Still have to write a number function to apply logic to strings of numbers and turn them into numbers, unless I do something silly like saying every digit and eliminating white space before converting it to a number like 1 2 7 5, to get 1,275.

The approach I'm taking is that if I say "one thousand two hundred twenty three" she currently returns 1 000 2 00 20 3, so the ai needs to apply logic to the string to make 1223 from it.

mad_ady
Posts: 9373
Joined: Wed Jul 15, 2015 5:00 pm
languages_spoken: english
ODROIDs: XU4, C1+, C2, C4, N1, N2, H2, Go, Go Advance
Location: Bucharest, Romania
Has thanked: 599 times
Been thanked: 659 times
Contact:

Re: Candice the personal assistant robot

Post by mad_ady »

For the filtering part - perhaps a software low-pass filter on the audio stream would get rid of higher frequencies made by the fan. Something with a 4KHz cut-off point should be adequate for human voice. Remember that the voice spectrum carried by classical (TDM) telephony is 300Hz - 3.2KHz and voice was intelligible for 50+ years.


For the second problem - be happy you're not french and 1998 is pronounced like 1000 900 4*20 10 +8...

Post Reply

Return to “Projects”

Who is online

Users browsing this forum: No registered users and 3 guests