luxai-qtrobot / QA

Virtual repository for Questions & Answers system
http://luxai-qtrobot.github.io
5 stars 0 forks source link

how to change the speech language of QTrobot in my own PC #25

Open ZouJennie opened 4 years ago

ZouJennie commented 4 years ago

I did already ROS_IP and ROS_MASTER_URI to connect with the qtrobot and i can see all topic list. I tried to change the speech language of qtrobot with the commande : rosservice call /qt_robot/speech/config "fr-FR 0 0" in the terminal of my PC then i got a error such as : ERROR: Unable to load type [qt_robot_interface/speech_config]. Have you typed 'make' in [qt_robot_interface]?

So what can i do?

codionysus commented 4 years ago

Hi @ZouJennie welcome to the QTrobot community :) Can you please run the same command on QTPC and let me know what results do you get?

ZouJennie commented 4 years ago

Hi @ZouJennie welcome to the QTrobot community :) Can you please run the same command on QTPC and let me know what results do you get?

rosservice call /qt_robot/speech/config "fr-FR 0 0" ERROR: Incompatible arguments to call service: Not enough arguments:

codionysus commented 4 years ago

I guess your not calling the service from command line properly.

your command should look like this:

$ rosservice call /qt_robot/speech/config "language: 'fr-FR'
pitch: 0
speed: 0" 

Notice that this is standard way of calling ROS services from command line. to make sure you are typing it properly press TAB few times after rosservice call /qt_robot/speech/config to get autocomplete of the available parameters.

ZouJennie commented 4 years ago

I guess your not calling the service from command line properly.

your command should look like this:

$ rosservice call /qt_robot/speech/config "language: 'fr-FR'
pitch: 0
speed: 0" 

Notice that this is standard way of calling ROS services from command line. to make sure you are typing it properly press TAB few times after rosservice call /qt_robot/speech/config to get autocomplete of the available parameters.

With your command it works on QTPC. But i want to know is it possible to call this ROS service on my PC? And need i change the language every time after turn on the robot?

qtrobot commented 4 years ago

@ZouJennie It is possible to run the commands/services from your PC. The missing part is some QTrobot ROS message/service header files. We have included them already on QTPC.

@dkcodeguy will send you the files with instruction on how to install them on your ROS.

codionysus commented 4 years ago

@ZouJennie To Install QTrobot header files please follow the steps on our documentation page under Installing ROS 6. Install QTrobot ROS header files

Notice this you need to do on your PC.

ysl208 commented 1 year ago

Hi, I tried this but the service only returns True if I set language to en-US but not for any other (I tried en-GB, de-DE, fr-FR, es-ES). When I check in ~/robot/data/tts-lang/ there are a lot more languages available. Any help?

codionysus commented 1 year ago

Hi, I tried this but the service only returns True if I set language to en-US but not for any other (I tried en-GB, de-DE, fr-FR, es-ES). When I check in ~/robot/data/tts-lang/ there are a lot more languages available. Any help?

By default the qt_robot_interface rosnode uses acapela tts engine and the voices path is "~/robot/data/acapela/voices". The ~/robot/data/tts-lang/ path is for svox tts engine. Please check my answer here.