All Tutorials / Jlucben / Synbot Plugin Tutorial - interface to Syn Bot Software

Synbot Plugin Tutorial - interface to Syn Bot Software

EZ Robots Commands SIML Framework - Configuration - Authorized Combination

Combination

Authorized combinations in command user input between [Verb][Complement][Attribute] and [Position] must be specified in Map combination_verb_comp_att_pos

Code:

[MapItem Content="0|CENTER|HEAD|EMPTY|EMPTY" Value="% NO NO EMPTY EMPTY" /]
[MapItem Content="0|CENTER|CAMERA|EMPTY|EMPTY" Value="% NO NO EMPTY WITHMOVINGCAM" /]
[MapItem Content="0|MOVE|ARMS|EMPTY|EMPTY" Value="% MOVENEED EMPTY EMPTY EMPTY" /]
[MapItem Content="0|MOVE|ARM|EMPTY|EMPTY" Value="% MOVENEED EMPTY EMPTY EMPTY" /]
[MapItem Content="0|MOVE|HAND|EMPTY|EMPTY" Value="% MOVENEED EMPTY EMPTY EMPTY" /]
[MapItem Content="0|MOVE|HEAD|EMPTY|EMPTY" Value="% MOVENEED EMPTY EMPTY EMPTY" /]
[MapItem Content="0|MOVE|CAMERA|EMPTY|EMPTY" Value="% MOVENEED EMPTY EMPTY WITHMOVINGCAM" /]
[MapItem Content="0|LOOKAT|CAMERA|EMPTY|EMPTY" Value="% MOVENEED FLRUD EMPTY WITHMOVINGCAM" /]
[MapItem Content="0|TILT|HEAD|EMPTY|EMPTY" Value="% NO D LR EMPTY" /]
[MapItem Content="0|TILT|CAMERA|EMPTY|EMPTY" Value="% NO D LR EMPTY" /]
[MapItem Content="0|TURN|HEAD|EMPTY|EMPTY" Value="% MOVENEED LR UD EMPTY" /]
[MapItem Content="0|TURN|CAMERA|EMPTY|EMPTY" Value="% MOVENEED LR UD WITHMOVINGCAM" /]
[MapItem Content="5|TURN|CAMERA|EMPTY|EMPTY" Value="% MOVENEED NO NO EMPTY" /]
[MapItem Content="0|SEE|CAMERA|RECOGNITION|EMPTY" Value="% NO EMPTY EMPTY EMPTY" /]
[MapItem Content="0|SWING|HEAD|LEFTTORIGHT|EMPTY" Value="% NO EMPTY EMPTY EMPTY" /]
[MapItem Content="0|SWING|HEAD|RIGHTTOLEFT|EMPTY" Value="% NO EMPTY EMPTY EMPTY" /]
[MapItem Content="0|SWING|HEAD|DOWNTOUP|EMPTY" Value="% NO EMPTY EMPTY EMPTY" /]
[MapItem Content="0|SWING|HEAD|UPTODOWN|EMPTY" Value="% NO EMPTY EMPTY EMPTY" /]
[MapItem Content="0|SWING|HEAD|EMPTY|EMPTY" Value="% ATTNEED LR EMPTY EMPTY" /]
[MapItem Content="en|GO|STEPPING|EMPTY|EMPTY" Value="% MOVENEEDBUTLAST EMPTY EMPTY EMPTY" /]


Content key is structured with 5 parts separated by | delimitor :
Part 1 is the language code or 0 if the configuration is valid for all the language Part 2 is verb AuthID - Part 3 is Complement AuthID - Part 4 is Attribute AuthID and Part 5 is Position AuthID
EMPTY keyword is used for part é to 5 when no signifiant.

Value returned :
Word 1 : %

Word 2 : Mnemonic used to specify:
Whether or not a [Movement Direction] or an [Attribute] is Mandatory for the combination - If Mandatory a Dialog will be initiated with the user to get the mandatory value.
Whether or Not a [Duration] can be present in the User Input.
Whether or Not a required [Movement Direction] must be the last phrase element( for example "go 3 steps forward" is authorized but not "go forward 3 steps")
Mnemonic are configured in combination_autho_model Map.

Code:

[Map Name="combination_autho_model"]
[MapItem Content="NO" Value="FFFFF" /]
[MapItem Content="DURATION" Value="FFTFF" /]
[MapItem Content="MOVENEEDBUTLAST" Value="TFFTF" /]
[MapItem Content="MOVENEED" Value="TFFFF" /]
[MapItem Content="ATTNEED" Value="FTFFF" /]
[MapItem Content="MOVENEED_DURATION" Value="TFTFF" /]
[MapItem Content="ATTNEED_DURATION" Value="FTTFF" /]
[/Map]


Word 3 is used to specify which Movement Directions are Authorized for the combination - Overwrite what it was configured at Verb and Complement level.
Word 4 is used to specify which Secondary Movement Directions are Authorized for [Complement] - Word 3 and Word 4 are mnemonic for movement directions authorizations Linked to b[]movement_autho_model[/b] map.

Word 5 specify the Robot Type authorization for the Combination - mnemonic linked to Robot Type authorization Map.

Code:

[MapItem Content="0|SWING|HEAD|EMPTY|EMPTY" Value="% ATTNEED LR EMPTY EMPTY" /]


In this Example , Combination SWING|HEAD is authorized - If No [attribute] or [Movement Direction] is input , It will request to the User to complete with an [Attribute] value.
In this case , after user input the combination SWING|HEAD|Input Attribute will be controlled again.
If [Movement Direction] is input , Authorized Movement Directions are only Left and Right
Robot Type Authorization are the same as those specified in Complement Map - Keyword EMPTY