一种松耦合人机交互系统及方法

文档序号:9216844阅读:469来源:国知局
一种松耦合人机交互系统及方法
【技术领域】
[0001]本发明涉及人机交互技术领域,特别涉及一种松耦合人机交互系统及方法。
【背景技术】
[0002]目前,为了实现更复杂的交互,人机交互系统上面集成了越来越多的工作节点。通常这些工作节点会有其状态和产生的数据发送到中心控制单元,再由中心控制单元分析整个系统的运行状态,并向各个工作节点发送控制指令。
[0003]但,随着工作节点的增加,在上述的工作模式下,系统的整体运行状态和速度将会变得难以估计,系统的复杂程度和负担势必也因工作节点的增加而急剧增加。

【发明内容】

[0004]为了解决【背景技术】中存在的技术问题,本发明提出了一种松耦合人机交互系统及方法,采用分布式架构,打破了传统人机交互中各工作节点需要通过中心控制节点紧耦合工作的模式。
[0005]本发明第一方面提供一种松耦合人机交互系统,包括总线网络和连入总线网络的至少一个工作节点,每一所述工作节点均包括控制单元、任务执行单元和数据传输单元。
[0006]所述控制单元与任务执行单元连接,用于根据用户意图指令任务执行单元执行任务。
[0007]所述任务执行单元与控制单元和数据传输单元连接,用于将自身工作节点在运行过程中产生的命令、消息和数据封装为命令流、消息流和数据流,并根据控制单元的指令订阅和接收其他工作节点的命令流、消息流和数据流。
[0008]所述数据传输单元与总线网络和任务执行单元连接,用于将其自身工作节点的命令流、消息流和数据流传输至总线网络,并根据任务执行单元的指令将从总线网络上订阅的其他工作节点的命令流、消息流和数据流传输给任务执行单元。
[0009]所述总线网络用于承载各工作节点的命令流、消息流和数据流。
[0010]进一步地,每一所述工作单元中还包括状态检查单元,所述状态检查单元与控制单元和数据传输单元连接,用于综合数据传输单元和控制单元的状态得到其自身工作节点应该处于的状态。
[0011]各个工作节点为人机交互任务中承担输入、输出、感知、数据处理、任务调度、资源提供中的一种或多种功能的节点。
[0012]具体地,工作节点包括麦克风节点、扬声器节点、语音合成器节点、摄像头节点、VAD节点、唤醒节点、语音识别节点、语音理解节点和外部资源提取节点中的一种或几种。
[0013]进一步地,所述松耦合人机交互系统还包括对话管理节点,用于使用统计或规则的方式,解析用户输入,确定用户意图,并产生用于交互的回复信息。
[0014]进一步地,所述松耦合人机交互系统还包括任务调度节点,用于需要整合多工作节点产生的数据、命令和消息时,进行统一的控制逻辑设计并对任务进行调度。
[0015]进一步地,各工作节点经由数据传输单元传输的命令流、消息流和数据流带有时间戳。
[0016]进一步地,所述状态检查单元具有智能时序判断模块,用于对其接受的命令流、消息流和数据流进行同步和时序判断。
[0017]本发明第二方面提供一种松耦合人机交互方法,包括如下步骤:
[0018]S101、将各工作节点在与运行过程中产生的命令、消息和数据分别封装为命令流、消息流和数据流;并将命令流、消息流和数据流连入总线网络;
[0019]S102、各工作节点按需订阅自身和/或其他工作节点的命令流、消息流和数据流的信息;
[0020]S103、对各工作节点基于自身状态和订阅的命令流、消息流和数据流状态进行控制逻辑设计。
[0021]进一步地,所述一种人机交互方法还包括,使用统计或规则的方式,解析用户输入,确定用户意图,指导各工作节点应订阅何种命令流、消息流或数据流,并产生用于交互的回复信息。
[0022]基于上述技术方案的公开,本发明提供的所述松耦合人机交互系统及方法通过总线网络来完成数据信息的传递和控制,属于松耦合的分布式架构,打破了传统人机交互中各工作节点需要通过中心控制节点紧耦合工作的模式;且人机交互系统各个工作节点之间的关系可以由每个工作节点观察到的部分状态决定,这样工作节点的新增、更改或配置就仅需对工作节点相关逻辑进行编程,减少了整个系统的复杂度,节点间耦合度更低;并且基于定制的逻辑处理可以免除系统的中央控制节点的限制,进一步提高系统的反应速度。
【附图说明】
[0023]图1为本发明提出的一种松耦合人机交互系统的结构框图;
[0024]图2为实施例一提出的一种松耦合人机交互方法的流程图。
【具体实施方式】
[0025]下面结合附图对本发明的实施例进行详述。
[0026]请参阅图1,本实施例提供一种松耦合人机交互系统,包括总线网络I和连入总线网络的多个工作节点2以及对话管理节点3和任务调度节点4。
[0027]所述对话管理节点3用于使用统计或规则的方式,解析用户输入,确定用户意图,并产生用于交互的回复信息。
[0028]所述任务调度节点4用于需要整合多工作节点产生的数据、命令和消息时,进行统一的控制逻辑设计并对任务进行调度。
[0029]每一所述工作节点2均包括控制单元21、任务执行单元22、数据传输单元23和状态检查单元24。
[0030]所述控制单元21与任务执行单元22连接,用于根据用户意图指令任务执行单元22执行任务;所述任务执行单元22与控制单元21和数据传输单元23连接,用于将自身工作节点在运行过程中产生的命令、消息和数据封装为命令流、消息流和数据流,并根据控制单元21的指令订阅和接收其他工作节点的命令流、消息流和数据流;所述数据传输单元23与总线网络I和任务执行单元22连接,用于将其自身工作节点的命令流、消息流和数据流传输至总线网络1,并根据任务执行单元22的指令将从总线网络I上订阅的其他工作节点的命令流、消息流和数据流传输给任务执行单元22 ;所述总线网络I用于承载各工作节点的命令流、消息流和数据流;所述状态检查单元24与控制单元21和数据传输单元23连接,用于综合数据传输单元23和控制单元21的状态得到其自身工作节点应该处于的状态。
[0031]各个工作节点为人机交互任务中承担输入、输出、感知、数据处理、任务调度、资源提供中的一种或多种功能的节点。具体地,工作节点包括麦克风节点、扬声器节点、语音合成器节点、摄像头节点、VAD节点、唤醒节点、语音识别节点、语音理解节点和外部资源提取节点中的一种或几种。
[0032]各工作节点经由数据传输单元传输的命令流、消息流和数据流带有时间戳。
[0033]所述状态检查单元24具有智能时序判断模块,用于对其接受的命令流、消息流和数据流进行同步和时序判断。
[0034]工作时,首先将各工作节点在与运行过程中产生的命令、消息和数据分别封装为命令流、消息流和数据流;并将命令流、消息流和数据流连入总线网络I ;
[0035]使用统计或规则的方式,解析用户输入,确定用户意图,指导各工作节点应订阅何种命令流、消息流或数据流,并产生用于交互的回复信息;
[0036]各工作节点按需订阅自身和/或其他工作节点的命令流、消息流和数据流的信息;
[0037]对各工作节点基于自身状态和订阅的命令流、消息流和数据流状态进行控制逻辑设计。
[0038]实施例一
[0039]请参阅图2。
[0040]SlOl:将人机交互系统的各工作节点在运行过程中产生的命令、消息和数据分别封装为命令流、消息流和数据流,将命令流、消息流和数据流连入总线网络。
[0041]在步骤SlOl中,人机交互系统包括麦克风工作节点1101、VAD工作节点1102、语音识别和对话文本生成工作节点1103、语音合成工作节点1104、扬声器工作节点1105。
[0042]命令流包括停止录音1111、开始生成合成音1112、开始播放合成音1113等命令。
[0043]消息流包括麦克风开始录制1121、麦克风录制结束1122、扬声器播放开始1123、扬声器播放结束1124、语音合成开始1125、语音合成结束1126、对话文本生成完毕1127等消息。
[0044]数据流包含麦克风录制音频1131、扬声器需要播放的音频1132、语音合成的文本1133等数据。
[0045]S102:为人机交互系统的各节点按需订阅命令流、消息流和数据流消息。
[0046]在步骤S102中,
[0047]麦克风工作节点1101订阅停止录音1111命令、扬声器播放结束1124消息。
[0048]VAD工作节点1102订阅麦克风开始录制1121消息、麦克风录制音频1131数据。
[0049]语音识别和对话文本生成工作节点1105定制麦克风开始录制1121消息、麦克风录制结束1122消息、麦克风录制音频1131数据。
[0050]语音合成工作节点1104订阅开始生成合成音1112命令、语音合成的文本1133数据。
[0051]扬声器工作节点1103订阅开始播放合成音1113命令、扬声器需要播放的音频1132数据。
[0052]S103:对各节点基于自身状态和订阅的命令流、消息流和数据流状态进行控制逻辑设计。
[0053]在步骤S103中,设计各节点逻辑如下:
[0054]麦克风工作节点1101在系统开启或者接收到扬声器播放结束1124消息后开始录音,并生成麦克风录制音频1131数据,发出麦克风开始录制1121消息。
[0055]麦克风工作节点接收到停止录音1111命令后停止录音,发出麦克风录制结束1122消息。
[0056]VAD工作节点1102
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1