|
ROBOT DIY 开发工具 LD ROBOT |
Main /
Home Page智能设备交互通信语言Smart Device Communication Language(SDCL)Version 1.0a 2008-07-14 语言基本定义格式 发送的命令格式: 询问可以用的参数 <Class Indicator>.[<Sub Class Indicator>.]<Class Method>=?\r\n 询问当前配置的参数 <Class Indicator>.[<Sub Class Indicator>.]<Class Method>?\r\n 配置参数 <Class Indicator>.[<Sub Class Indicator>.]<Class Method>=<data>\r\n 参数的格式:(字典格式) <name>:<value>[,<name>:<value>] 回复格式: /r/nOK/r/n /r/nERROR: <number>/r/n 语言定义的基本思想 每种设备都有它自己的自然属性和自然类别,总而可以为它定义一个操作命令集合,从而操作这个设备。如果另一个设备内部存储有这个设备的类别操作集合,那么它就能通过通用交互指令,发现并识别这个设备,并调用这个设备的暴露指令,通过学习把这个设备正式存储到自己的记忆库中,以后就可以直接使用这个设备,而不用重新学习和使用了。就像一个机器人,掉了一只手臂,他自己发现了另一个手臂,通过SDL语言接口他正确的识别了这个手臂并把它加入到自己的活动设备库,认证激活使用它,那么这个机器人就有了一个新的手臂,整个过程仅仅不到一秒钟。机器人自己修复了自己。 语言定义特性 支持并发运行特性:事件,信号量。 支持同步特性:时钟同步。 例如:一个机械狗多个部件或关节同时启动或同时到达某个状态。 例如: > SL.CLASS.ID? SL.CLASS.ID: RobotArm OK > SL.DEV.UUID? SL.DEV.UUID: 2323423-2342-234235 OK > SL.DEV.ACTIVE? SL.DEV.ACTIVE: 0 OK > SL.DEV.ACTIVE=12234234234, 111111, 3333 SL.DEV.ACTIVE: 1, SL.DEV.INDICATOR: "RTARM" OK > RTARM.METHOD=? RTARM.METHOD: UP, DOWN, LEFT, RIGHT OK > RTARM.UP=10,10,10 ;手臂向上移动到位置X:10,Y:10,Z:10的位置 OKidea: 类处理协议栈,逐层分解,各个识别处理。 例如: > RTARM.HAND.GRIP=BH:30,LD:10; 手臂的手抓紧力,闭合度30,力度10牛顿 RTARM.HAND.GRIP:20 RTARM.HAND.GRIP:25 RTARM.HAND.GRIP:30 OK RTARM主类无法处理,则丢给HAND子类处理 语言定义的指导原则 电器规范定义 |