Chief Delphi

Chief Delphi (http://www.chiefdelphi.com/forums/index.php)
-   Technical Discussion (http://www.chiefdelphi.com/forums/forumdisplay.php?f=22)
-   -   Voice Activated commands (http://www.chiefdelphi.com/forums/showthread.php?t=14532)

Amber H. 23-09-2002 16:35

Voice Activated commands
 
Okay, I had this crazy idea this morning while I was working on the book (about a group of fictitious FIRST team members).

I have this computer program that will take voice activated commands for word processing and will pretty much type whatever I say after given a certain command.

How off the wall or unrealistic would it be to program a bot to respond to a set of vocal commands through a headset instestead of a joystick (or whatever). This way the command chain from strategist, to driver, to control panel would be eliminated.
The strategist becomes the driver, eliminating the "crowding in the box" (Or the driver and strategist are one and the same).

Ian W. 23-09-2002 16:44

i don't think this would be as good as a joystick. for one, with the current controls, if it's programmed good :p, you know when you push forward, it's going forward. but, with a voice control system, it might not work. it's quite loud on the field. so, while it's a cool idea, and does have practical applications in the real world, in FIRST i don't think it will work right.

evulish 23-09-2002 16:45

And then someone runs by the box screaming "TURN OFF AND START SMOKING"

:D

Amber H. 23-09-2002 16:58

The program I have recognizes only the one voice it is trained to. Background noise and joke commands from some sideline prankster wouldn't make a difference.

Elgin Clock 23-09-2002 16:59

Hehehehe, What about the robot talking to us??? We did that this year through our blind drive system. Our robot would send a signal back to the players station to a laptop and then to a set of headphones and it would tell us what zone we were in and what not.

Don't know if it would work that well the other way with all the noise that is involved in a competition. It would get mixed signals unless you locked the voice frequency onto one person's voice range.

Amber H. 23-09-2002 17:12

Oh, I forgot to mention that the program can store "training" for a few other voices as well.
That would mean backup in case the driver got sick or lost his/her voice. They simply log into the program like logging onto a desktop on a shared computer.

Any other obstacles or suggestions from the peanut gallery? They would be very welcome.

Jnadke 23-09-2002 18:14

1. Analyzing the waveforms of the human voice requires a lot of processing power (you are not going to be able to do this on a Stamp chip). It also requires a lot of research. You are not allowed to use computers in your control system, since they are not in the digikey catalog. Computers can only be used for feedback, as said in the Rule Book. This means you can't use your computer program to control the robot.

2. It will be rather unresponsive. Do you really want to have to shout out commands to your robot? Think of every thing a robot does during a match. Now imagine shouting every single movement out... from 'move forward' to 'stop' to 'grab goal' and 'rotate right/left', etc. Some manuevers are complex and need to be done back-to-back.

Amber H. 23-09-2002 18:23

Thanks guys! That was a big help.
Considering the rule about not using your computer program to control the bot pretty much nixes it.

Too bad. Would've been fun.

Thanks for your help. I need to make at least the part in the book where FIRST is portrayed believable.

This forum has been probably the most fun I've had in my research for the book so far. Thanks again.

Chris Nowak 23-09-2002 18:39

hehe...that would be so cool.

Unfortunately there would be no way to do it accurately enough that you could reasonably control it....unless you had it change speed with the pitch of your voice or something...but that would be mad crazy.

Amber H. 23-09-2002 18:45

Quote:

Originally posted by Chris Nowak
hehe...that would be so cool.

Unfortunately there would be no way to do it accurately enough that you could reasonably control it....unless you had it change speed with the pitch of your voice or something...but that would be mad crazy.

Well...mad crazy is what a couple of the characters are developing into after seeing some of the stuff on this forum site:) .

Jnadke is right though. It takes way to much power for the program to "learn the voice" Although simply transferring it after it has "learned" might be an option. I think that would still take too much processing power though, just for the translating capability. Then of course, there are the rules *sigh*

Ian W. 23-09-2002 19:18

if you were really desperate you could make something that could be used in the offseason. get a computer with many (4) serial ports, along with the converter to the stamp serial ports (i believe they use a different type to cut down on signal interference), and develop some program that sends the right input out. it's doable, just not under FIRST's rules. so, if for your book, you want to have them do that in the offseason or something, it's possible to do. just need someone who has no life and a lot of money to make it work... :p

Amber H. 23-09-2002 19:25

["You are not allowed to use computers in your control system, since they are not in the digikey catalog. Computers can only be used for feedback, as said in the Rule Book. This means you can't use your computer program to control the robot."

From Jnadke


Where exactly is this rule and wht number and heading is it under?

All I have found so far is:

"GM9 -During a match the robots may be operated only by the students and/or SOFTWARE running the onboard control system."

Pleas forgive my ignorance, but couldn't the on board computer handle this? or is it too small? What are it's capabilities for memory and processing? It seems to me that all it would have to do is recieve the signal from the station. Or is it not equipped for that.
I'd really like to know. It's been a long time since I've dealt with anything of this nature.

I feel so totally ignorant for this challenge.

Amber H. 23-09-2002 19:27

Quote:

Originally posted by Ian W.
if you were really desperate you could make something that could be used in the offseason. get a computer with many (4) serial ports, along with the converter to the stamp serial ports (i believe they use a different type to cut down on signal interference), and develop some program that sends the right input out. it's doable, just not under FIRST's rules. so, if for your book, you want to have them do that in the offseason or something, it's possible to do. just need someone who has no life and a lot of money to make it work... :p
Cool! Off season is a great idea!

Hmm. could make an interesting plot twist somewhere. Thanks!

(Oh man have I got a lot of work to do!) (stuff to learn etc.)

It's hard when you've been out of the loop for fifteen years. Any input you guys had to offer would be a great help.

ChrisH 23-09-2002 20:19

Quote:

Originally posted by Miss Tree
[Pleas forgive my ignorance, but couldn't the on board computer handle this? or is it too small? What are it's capabilities for memory and processing? It seems to me that all it would have to do is recieve the signal from the station. Or is it not equipped for that.
I'd really like to know. It's been a long time since I've dealt with anything of this nature.

I feel so totally ignorant for this challenge.

Just so it's only ignorance. Ignorance can be fixed, it's stupid that's forever.;)

To answer you question, the STAMP processor currently used is much to small and probably too slow to do any voice processing. That is why they suggested using an auxillary processor.

A related factor is the noise during competition. While your filter may be able to pick out a voice from random noise, can it do so out of noise that is many times louder than the desired signal? Or have you ever tried to outshout 1000s of people?

The best drive team we have had were brothers, they never had to talk on the field, the manipulator guy "just knew" what to do based on the drivers actions. They claimed it was the result of 1000s of hours of playing video games together.

Now a telepathic robot, that might work! Oh wait Azimov did that one already.

Amber H. 23-09-2002 21:14

Well.....The filter worked over four very noisy children that I thought sounded like a thousand at the time, but that's just a matter of perspective. The noise would definitely be a major problem in addition to the other seemingly insurmountable challenges.

The brothers as a drive team sounds interesting. I already have pair of brothers in the character list. Perhaps I should put them in as the drive team with a similar relationship. Interesting duo with a dramatic flair. They almost crash their van in a chase scene toward the end (coming to the rescue of their coach) because one of them decides that there should be some kind of music going in the stereo to accompany what their doing. (like a sound track to a movie) They get into a fight over it and veer into oncoming traffic while they struggle over the tape.

evulish 23-09-2002 22:17

And thus...the Furby was created. :D (technical shmecnical)

Elgin Clock 24-09-2002 01:11

Quote:

Originally posted by Miss Tree
They almost crash their van in a chase scene toward the end (coming to the rescue of their coach) because one of them decides that there should be some kind of music going in the stereo to accompany what their doing. (like a sound track to a movie) They get into a fight over it and veer into oncoming traffic while they struggle over the tape.
Tape......What is this thing you call "the tape"??? They fight over Duct Tape?? YES!!!!!!!! Fighting over Duct tape is a pastime!!!
J/K
Two Letters- CD lol -you can even have the driver get blinded by it!!! Not fun in real life but would sound good in a story.

Seriously though, I like the soundtrack idea!! We've done that in the car. I know people who have played Song 2 by Blur over a series of hills (7 hills to be exact) in town and match the screaming descent on the hills to the "Whooo Hooo" parts of the song!!!!

EDIT- I just realized this post has nothing to do with the original topic but eh- what are ya' gonna do?

Amber H. 24-09-2002 08:29

Quote:

Originally posted by Elgin Clock


Tape......What is this thing you call "the tape"??? They fight over Duct Tape?? YES!!!!!!!! Fighting over Duct tape is a pastime!!!
J/K
Two Letters- CD lol -you can even have the driver get blinded by it!!! Not fun in real life but would sound good in a story.

Seriously though, I like the soundtrack idea!! We've done that in the car. I know people who have played Song 2 by Blur over a series of hills (7 hills to be exact) in town and match the screaming descent on the hills to the "Whooo Hooo" parts of the song!!!!

EDIT- I just realized this post has nothing to do with the original topic but eh- what are ya' gonna do?

I origionally had a tape, because it makes a more satisfying "THWAK!" when you thump someone on the head with it. I like the getting blineded by the CD though. If I left it in the case at the beginning of the argument, I could still get a satisfying "THWAK!" out of it.

AS for voice activated movement in a bot; I think what I'll do, is base this story in the off season and have it be an outside project by one of the kids on their own.

Honestly I think I've collected enough information for this book to start a series.

Maybe we'll just call the series "Team Mayhem" or something like that, and just tag on whatever adventure they're on to the title of each book. Is that name taken already? Would they mind if I used it? Anyone have a better suggestion?

EDIT- I think I've edited this at least three times already. I am soooo not awake right now.

Elgin Clock 24-09-2002 12:24

There is a Mayhem on the Merrimack* Competition I believe.

Also look at the names of the previous years FIRST Games and you'll notice a trend. Names like Maize Craze, Ramp Riot, Zone Zeal, and Co-Operation FIRST come to mind but there was a cool name attached to every FIRST competition.

*****Help me out fellow posters what were all the other names???*****

A catchy name for the series is a very good idea, I like it!

Jnadke 24-09-2002 20:54

Quote:

Originally posted by Miss Tree
["You are not allowed to use computers in your control system, since they are not in the digikey catalog. Computers can only be used for feedback, as said in the Rule Book. This means you can't use your computer program to control the robot."

From Jnadke


Where exactly is this rule and wht number and heading is it under?

All I have found so far is:

"GM9 -During a match the robots may be operated only by the students and/or SOFTWARE running the onboard control system."

Pleas forgive my ignorance, but couldn't the on board computer handle this? or is it too small? What are it's capabilities for memory and processing? It seems to me that all it would have to do is recieve the signal from the station. Or is it not equipped for that.
I'd really like to know. It's been a long time since I've dealt with anything of this nature.

I feel so totally ignorant for this challenge.

Read the Robot, rules & specs Manual. Do a search for computer. Either that or it's rule 2.2.3.

Portable computing devices may not be connected to inputs on the Operator Interface.


I admire your effort, but by on-board control system they mean the robot controller. That rule was designed to specify that they robot can perform it's own automatic commands programmed into it (the software part), or the student's commands that is operating it.

You still can do your voice thing, you just can't hook a computer up to it. It will make it much more difficult, though. The stamp chip only gets new data at the mininum every 25 milliseconds. That's not a high enough sampling rate to process human speech. That's only 40hz... So only 40 tone changes in a second...

With the limited number of commands needed you could do it in 40 tone changes... it's just finding the right words that produce a noticable change in tone for the programmer for all your commands.

The microphone itself can be adjusted to accept different noise levels, either by dampening it with foam, or using different microphone technologies. It will be hard to see if background noise will affect it or not...

Amber H. 24-09-2002 20:57

Thanks for the point in the right direction Jnadke. I really appreciate it.

R Bohannan 28-09-2002 22:28

["You are not allowed to use computers in your control system, since they are not in the digikey catalog. Computers can only be used for feedback, as said in the Rule Book. This means you can't use your computer program to control the robot."

From Jnadke"

The digi-key catalog has tons of microprocessors and microcontrollers that would be very useful in our robot applications. I've got the Sept-Dec 2002 catalog. Pages 238 through 284 (ish) are filled with them. In fact, on page 243, you can even get another Basic STAMP module from Paralax.

John Prather 10-10-2002 17:18

digikey catalog
 
Can anything in the digikey catalog be used??????

And where was this said. What rule or udate said this?

Jnadke 10-10-2002 20:04

Quote:

Originally posted by R Bohannan
["You are not allowed to use computers in your control system, since they are not in the digikey catalog. Computers can only be used for feedback, as said in the Rule Book. This means you can't use your computer program to control the robot."

From Jnadke"

The digi-key catalog has tons of microprocessors and microcontrollers that would be very useful in our robot applications. I've got the Sept-Dec 2002 catalog. Pages 238 through 284 (ish) are filled with them. In fact, on page 243, you can even get another Basic STAMP module from Paralax.

Yes, all that stuff would be usable... but you're gonna have to write your own program for it... she was wondering if you can use a PC for the voice recognition software...

Wetzel 11-10-2002 13:53

Re: digikey catalog
 
Quote:

Originally posted by John Prather
Can anything in the digikey catalog be used??????

And where was this said. What rule or udate said this?

You can use anything out of Digi-KEy for under $100.

Additional Hardware List
Page 7

Electronic Componets - Up to $100 worth from Future FAI or Digi-Key.


The other compition names:

1992—Maize Craze
1993—Rug Rage
1994—Tower Power
1995—Ramp n' Roll
1996—Hexagon Havoc
1997—Torroid Terror
1998—Ladder Logic
1999—Double Trouble
2000—Co-Opertition FIRST
2001—Diabolical Dynamics
2002—Zone Zeal


Voice commands would be cool, but impractical for a competion.

Off-season demos, however, would be a VERY cool place for them.
Espesically if we replace the dance button with a voice command. :D

Wetzel
~~~~~~~~~~
Any other questions?

Amber H. 11-10-2002 18:01

You just gave me another crazy idea Wetzel.

LOL! A dancin' bot. Wouldn't that be funny if for a display table for a team if someone installed the innards of one of those dancing flowers (or santa's from the Christmas craptopia aisle) and built a lightweight bot around it? Every time someone passed by and said something the little 'bot mascot would do a dance.

rbayer 11-10-2002 19:01

shudders
 
Please no! Not a dancing 'bot! The old programmer from my team put this in so that when you pressed a button on the box it would start spinning, waving its arm, and sending the gripper in and out. Well, he forget to comment it out before the competition, and someone actually pressed the button during a match. It wasn't pretty.

As for doing stuff with a PC, I've been working on that in between my school work and my emulator, but I don't own an RS-232 to RS-432 converter, and from what I've heard, they are approx. $80. On the other hand, there were rumors flying around a while back that the tether is just plain 232, but it's unconfirmed. In either case, if I ever get the time to reverse-engineer the packets flying back-and-forth, I might try to write some form of computer-controlled thing, but I still need to polish my emulator.

MacZealot 11-10-2002 23:41

Quote:

Originally posted by Ian W.
i don't think this would be as good as a joystick. for one, with the current controls, if it's programmed good :p, you know when you push forward, it's going forward. but, with a voice control system, it might not work. it's quite loud on the field. so, while it's a cool idea, and does have practical applications in the real world, in FIRST i don't think it will work right.
That was my first thought o_O

Adam Y. 12-10-2002 12:06

Quote:

Please no! Not a dancing 'bot! The old programmer from my team put this in so that when you pressed a button on the box it would start spinning, waving its arm, and sending the gripper in and out. Well, he forget to comment it out before the competition, and someone actually pressed the button during a match. It wasn't pretty.
I have plans to build an animatronic head. It seems pretty cool too.

MacZealot 13-10-2002 00:27

Re: shudders
 
Quote:

Originally posted by rbayer
Please no! Not a dancing 'bot! The old programmer from my team put this in so that when you pressed a button on the box it would start spinning, waving its arm, and sending the gripper in and out. Well, he forget to comment it out before the competition, and someone actually pressed the button during a match. It wasn't pretty.

As for doing stuff with a PC, I've been working on that in between my school work and my emulator, but I don't own an RS-232 to RS-432 converter, and from what I've heard, they are approx. $80. On the other hand, there were rumors flying around a while back that the tether is just plain 232, but it's unconfirmed. In either case, if I ever get the time to reverse-engineer the packets flying back-and-forth, I might try to write some form of computer-controlled thing, but I still need to polish my emulator.

Somebody better a video of that accident!

Was it the kind of bot that put balls in the goal, one that carries the goal around? or a combination?

John Prather 15-10-2002 16:33

Can this be done?
 
How many people really think that this can be done?

If yes, then do you really think that it would be worth it. If no, why do you think so?

Just curious on how other people are thinking about this.

Wetzel 19-10-2002 14:58

Re: Can this be done?
 
Quote:

Originally posted by John Prather
How many people really think that this can be done?

If yes, then do you really think that it would be worth it. If no, why do you think so?

Just curious on how other people are thinking about this.

In my opinion it can be done, just not with the current BOM. (Bill of Materials) to be competition legal.

For use durring a competition, I do not think that it is fesable due to excessive noise from everywhere. Also, upupupulefetupleftslowslowslowfastfastfast.... my hands can move a steering wheel/throttle faster. If just for a grabber of some sort, buttons would be more accurate.

Anyone have a good guess what any lag would be?


Wetzel
~~~~~~~~~~
H:\BT\BT - Flaming June.mp3

rbayer 22-10-2002 15:55

Re: Re: Can this be done?
 
Quote:

Originally posted by Wetzel



Anyone have a good guess what any lag would be?



Well, it depends on the computer you're running it on. The only real lag would come in the time it takes to say the word "up" or "gripper in" or (even worse) "start to dance in circles and make things go boom."

The IFI control system will loop approx. every 1/30th to 1/40th of a second, depending on how much stuff it has to do between the serin and serout as well as how much it has to serin. The way I'm thinking of doing it, you wouldn't use the OI at all and so your code would just be:

...declare variables...
Serin COMA/COMB, ..., [valForPWM1, relayA, valFor2, etc...]
Serout USERCPU, ..., [valForPWM1, relayA, etc...]

This should be very fast and would only depend on the speed at which the computer could throw data at the Tether port.

Again, this assumes that the tether is RS-232, whcih no one has been able to confirm. Basically, the computer would make the RC "think" it is the OI and instead of sending raw joystick values, etc it would send the pre-processed motor output values. Then the RC just needs to turn around and spit these values at the output uP.

Are people actually interested in this? Nobody has reported any errors in RoboEmu 1.06 as of yet, so I don't really have a programming project going right now, and that's not a good thing for my sanity. Anyway, I'll either start working on this or I'll do a Linux port of RoboEmu. Both are projects I've had on my list for a long time, although I got the idea for this one back before nationals last year.

Adam Y. 22-10-2002 16:08

Personally I find this dumb because of such complexities involved in getting a robot to move. You can't just tell it to move foward. I can see it now:
Operator: turn 90 degrees fast
Operator: foward faster faster faster
Operator: stop
Operator: turn 360 degrees
Operator: get goal
And on and on and on and on
Its just not practical for the purpose because of all the variables you'd have to command the robot to do.

rbayer 23-10-2002 01:21

I agree with you on the voice-operated part, but what I plan on doing is writing generic libraries that could be used to control the robot using a regular laptop. This would open up the possibilities for all kinds of neat off-season stuff, though I'm not yet sure what these neat things would be. Anyway, yet another day has gone by without any comments about RoboEmu, so I'm about ready to declare it "gold" and move on to this project.

MacZealot 23-10-2002 01:27

there's one problem:

it's not allowed to use a computer to control a bot.

Besides, the only advantage would be debugging, which really isn't necessary.

In most cases, the control system can actually be far more reliable compared to a computer, just imagine getting to the most important part of a match and your computer blue-screens!

Wetzel 23-10-2002 02:52

Quote:

Originally posted by MacZealot
there's one problem:

it's not allowed to use a computer to control a bot.

Besides, the only advantage would be debugging, which really isn't necessary.

Durring offseason demos you can tho. And I bet you could make it look really snazzy. Especially with a touch screen....


Wetzel
~~~~~~~~~~~
H:\Ludvig van Beethoven\The Essential Beethoven\Ludvig van Beethoven - 04 - Moonlight Piano Sonata.mp3

mtaman02 25-10-2002 21:09

in a way its a good idea to have run robot via laptop but i agree with everyone else. its to many variables to work out. plus each robot has a dif program so how would u be able to create a program in which we must be able to easily personalize for our needs.

rbayer 25-10-2002 21:35

Quote:

Originally posted by Wetzel
. Durring offseason demos you can tho. And I bet you could make it look really snazzy. Especially with a touch screen....

Exactly.

Quote:

Originally posted by Mike522
plus each robot has a dif program so how would u be able to create a program in which we must be able to easily personalize for our needs.
Easy. I'll write a dll that includes all the communications code, etc. You just pass in the values you want the motors/relays to have and it outputs the correct packets. Likewise, you just call a function in the dll to get the current sensor values. Then, all you have to do is write a short C/C++ (or VB) program to do the processing in between the getSensorValues and the outputMotors calls (names pending).

I'll probably write some wrapper-app that includes some basic functionality, such as DirectInput joysticks, on-screen buttons, etc. for people that don't know C.



Anyway, if you're interested, vote here.

dixonij 27-10-2002 21:08

To eliminate background noise... Use extra materials(mainly lexan) to create a soundproof box.

rbayer 03-11-2002 12:40

I finished it. Check out RoboCon in the whitepapers. Unfortunately, I don't know of any GPL'd voice-recognition libraries, so it doesn't do any of that stuff. However, it does let control a robot from your computer. Please dont respond here as I dont check this thread often. Please respond in the programming forum.


All times are GMT -5. The time now is 00:32.

Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi