论文部分内容阅读
“平台即服务”作为云计算的经典应用模式之一,对于快速构建云机器人软件和技术生态链有着极为重要的意义。在传统云计算领域,“平台即服务”关键技术和相应软件基础设施已经有了大量积累。但是,与传统软件不同,机器人是典型的信息物理深度融合的系统,它不仅感知物理世界,而且操纵物理世界。因此,物理世界的许多约束将直接映射到机器人的软件中,表现为实时性、请求响应时间等一系列服务质量(Quality of Service,QoS)需求。这一特点对支撑机器人云服务运行的软件平台提出新的要求,需要平台在QoS方面为机器人应用提供相应的共性支撑机制。这是云机器人领域当前所面临的重要挑战之一。针对上述挑战,本课题围绕支持QoS的云机器人软件平台关键技术展开研究,进而通过软件平台原型系统实现进行验证。本文工作具体包含以下三个方面:(1)基于资源按需调度的机器人云服务QoS保证机制机器人云计算平台需要能够支持大量客户端的并发访问,并在这一场景下提供QoS能力。同时,机器人应用具有显著的个性化特点,即使是同一服务,不同应用场景、不同机器人型号对服务质量往往都有着不同的要求。针对这一问题,本课题提出了支持资源按需调度的云服务QoS保证机制,通过Servant的动态实例化、基于QoS字典的资源按需分配、基于轻量级虚拟机容器的资源隔离,实现云服务本身的QoS保证。(2)“云-网-端”协同的云机器人软件系统QoS保证机制云机器人软件系统是典型的分布式软件系统,其上QoS保证需要分布计算各个环节的支持,形成相应的端到端QoS保证链条。针对这一问题,本课题提出了面向QoS的机器人端与云端协作机制,通过云服务访问客户端(即Stub)的自动构造、客户端内嵌补偿机制以及客户端与云端的协同来实现QoS保证。课题进一步针对网络消息传递过程中的时间优化问题,设计了支持压缩的消息传输框架。(3)支持QoS的云机器人软件平台原型实现与实验验证在上述机制的基础上,本课题基于虚拟机窗口 Docker和机器人操作系统ROS实现了支持QoS的云机器人软件平台Cloudroid,基于第三方典型应用测试了Cloudroid平台透明化部署和访问的能力以及QoS保证能力。