wide shoutbox
/listConnections - list all current connections to shoutbox
/version - return current version
/t - shout as mr.turing
/addXMPPRelay/(xmpp buddy name) - add buddy as an xmpp relay
/removeXMPPRelay/(xmpp buddy name) - remove buddy as xmpp relay
The InMoov service allows control of the InMoov robot. This robot was created by Gael Langevin.
It's an open source 3D printable robot. All of the parts and instructions to build are on the website http://www.inmoov.fr
InMoov is a composite of servos, Arduinos, microphone, camera, kinect and computer. The InMoov service is composed of many other peer services, and allows easy initialization and control of these sub systems.
InMoov is powered by MyRobotLab a java framework, hardware ( arduino ) is driven by a embeded protocol ( mrlcomm it is the sketch you need to put inside the arduino ) . Mrlcomm transform for you arduino code to easy undertandable & standardized methods. So every scripting methods are done in Python to end user side.
Click START_INMOOV and wait . Inmoov will say "Hello" and ask for your name !
By default the program launch a virtual environment, with virtual arduino and virtual 3D InMoov.
Lets see how to use real Hardware !
Setup hardware
If you use or not nervoboards, don't forget to use a dedicated power suply for your servo, arduino have not enough power. This is a generic recommandation about power supply and common ground.
It's time to flash your arduino(s) with MRLcomm sketch. You can find it inside this folder : MRL\resource\Arduino\MRLComm ( close mrl before )
Set the Port com of your Arduino(s) in device manager to 115200 BAUD.
Now you need to specify the hardware configuration according to the progress of your robot :
Open config fileInMoov\config\_InMoov.config
Change ScriptType=Virtual to ScriptType=RightSide . This will tell the software it is not virtual anymore, and use the "right" arduino.
You need to specify now what is the COM port of arduino to use .
Open service_6_Arduino.config
You will see : MyRightPort=COM4 . Just change COM4 by your COM port number.
Because you need only one finger and don't want every unused InMoov skeleton part ( torso , arm ... ) you need to activate the right hand Open config file InMoov\config\skeleton_rightHand.config and changeisRightHandActivated=False by isRightHandActivated=True
You can now start InMoov
-Full robot:
Open config fileInMoov\config\_InMoov.config
Change ScriptType=Virtual to ScriptType=Full . This will tell the software it is not virtual anymore, and use both arduino.
You need to specify now what are the COM ports of arduino to use .
Open service_6_Arduino.config
You will see : MyRightPort=COM4 . Just change COM4 by your COM port number.
you need to activate skeleton parts, exemple : Open config file InMoov\config\skeleton_rightHand.config and changeisRightHandActivated=False by isRightHandActivated=True. Same logic for all others skeleton parts.
You can now start InMoov
Extra services
You can activate and tweak services using corresponding config file. Exemple to activate the camera : Open config file InMoov\config\service_D_OpenCv.config
This is raw references about InMoov Scripting, if you want to code from scratch / debug / and understand how things worky. Inside Pyrobotlab repository you can find too useful things.
#########################################
# InMoov.py
# more info @: http://myrobotlab.org/service/InMoov
#########################################
# a very minimal script for InMoov
# this script is provided as a basic guide for InMoov service
# InMoov now can be started in modular pieces through the skeleton.config from full script
# although this script is very short you can still
# do voice control of a FingerStarter or hand
# It uses WebkitSpeechRecognition, so you need to use Chrome as your default browser for this script to work
# virtual = True
rightPort = "COM8"
leftPort = "COM10"
i01 = Runtime.start("i01", "InMoov")
if ('virtual' in globals() and virtual):
leftPortvirtualArduino = Runtime.start("leftPortvirtualArduino", "VirtualArduino")
leftPortvirtualArduino.connect(leftPort)
rightPortvirtualArduino = Runtime.start("rightPortvirtualArduino", "VirtualArduino")
rightPortvirtualArduino.connect(rightPort)
# starting parts
i01.startAll(leftPort,rightPort)
if ('virtual' in globals() and virtual):i01.startVinMoov()
# verbal commands
ear = i01.ear
ear.addCommand("attach right hand", "i01.rightHand", "attach")
ear.addCommand("disconnect right hand", "i01.rightHand", "detach")
ear.addCommand("rest", i01.getName(), "rest")
ear.addCommand("open hand", "python", "handopen")
ear.addCommand("close hand", "python", "handclose")
ear.addCommand("capture gesture", ear.getName(), "captureGesture")
ear.addCommand("manual", ear.getName(), "lockOutAllGrammarExcept", "voice control")
ear.addCommand("voice control", ear.getName(), "clearLock")
ear.addComfirmations("yes","correct","yeah","ya")
ear.addNegations("no","wrong","nope","nah")
ear.startListening()
def handopen():
i01.moveHand("left",0,0,0,0,0)
i01.moveHand("right",0,0,0,0,0)
def handclose():
i01.moveHand("left",180,180,180,180,180)
i01.moveHand("right",180,180,180,180,180)
I came into MRL - 8/20/2013. I upgraded all MRL files and started an InMoov service. Up comes a master tab, an ear and a mouth tab. There are no controls. There are no Arduino or other services associated or started. What happened?
Submitted by pinchis123 on Sat, 07/30/2016 - 12:23.
I have a problem this is the code we have so far
mouth = Runtime.createAndStart("Mouth","MouthControl")arduino = mouth.getArduino()arduino.connect('COM11')jaw = mouth.getJaw()jaw.detach()jaw.attach(arduino,11)mouth.setmouth(110,120)mouth.autoAttach = Falsespeech = Runtime.createAndStart("Speech","AcapelaSpeech")mouth.setMouth(speech)speech.setVoice("Will")
speech.speakBlocking("I'm speaking a very long text to test mouth movement")
speech.speakBlocking("A new sentence to test another long sentece")
speech.speakBlocking("And one more")
when running if he speaks but does not move the mouth could help ,
arduino program I'm using is the one I boot when I run from myrobotlab
I'm new to this I hope you can help me
Alright, there has been much
Alright, there has been much progress done with the service.
The left and right sides get correctly initiated and set to an initial position that avoid big arms movements.
Setting the speeds also works, which is a big step for to optimize movements and gestures.
Whooo hoo...inmoov has his
Whooo hoo...inmoov has his first "better faster stronger" repo script .... :D
Giant script coming soon
Giant script coming soon (whole robot), with Alessandruino's new BETTER FASTER LIGHTER face tracking !
Oh wow this is going to be
Oh wow this is going to be awesome! Hope it's ready before saturday 25/05/13
Where is InMoov?
I came into MRL - 8/20/2013. I upgraded all MRL files and started an InMoov service. Up comes a master tab, an ear and a mouth tab. There are no controls. There are no Arduino or other services associated or started. What happened?
hi
hello
I`m new here and i want to ask questions.
i`m going to start my inmoov but I want to use just one arduino due for whole the project , is there any special reason that you used 2 arduinos?
and inmoov arm is not openning for me , is that post deleted or it is just me who can`t open it.
Thanks for everything that you did and share it with everyone.
I have a problem this is the
def onEndSpeaking(text):
mouth.setmouth(90,120)
jaw.moveTo(95)
sleep(.5)
mouth.setmouth(110,120)
python.subscribe(speech.getName(),"publishEndSpeaking")
# Start of main script
speech.speakBlocking("I'm speaking a very long text to test mouth movement")
speech.speakBlocking("A new sentence to test another long sentece")
speech.speakBlocking("And one more")
when running if he speaks but does not move the mouth could help , arduino program I'm using is the one I boot when I run from myrobotlab I'm new to this I hope you can help me