基于动作同步控制的Yanshee机器人群舞

2022-04-09 12:56胡净皓吴珅锐汪海涛彭华
电脑知识与技术 2022年6期

胡净皓 吴珅锐 汪海涛 彭华

摘要:机器人舞蹈是人工智能研究中的重要领域,它有机融合了科学与艺术。让多个机器人实现群体舞蹈,不仅有助于发展机器人的协作以及与环境协调的能力,还能够为未来家庭提供新的人-机器人交互方式。本文以Yanshee机器人为载体,提出了一种基于动作同步控制的机器人群舞实现方法。

关键词:動作同步;Yanshee机器人;群体舞蹈

中图分类号:TP242      文献标识码:A

文章编号:1009-3044(2022)06-0089-03

开放科学(资源服务)标识码(OSID):

人工智能技术日益发展的今天,给人们的生活带来了翻天覆地的变化。机器人作为人工智能的重要载体,在未来家庭中也将越来越普遍。作为社会机器人的一种,舞蹈机器人也逐渐受到人们的重视,在情感陪伴与交流、医疗康复、教育辅助中发挥着重要作用。

机器人舞蹈是以机器人作为载体,以舞蹈作为蕴含内容的一种艺术表现形式[1]。从不同的视角,机器人舞蹈可以划分为多个种类。如:从参与舞蹈的机器人数量来分,可以分为单人舞和群舞;从表演舞蹈的种类来分,可以分为民族舞、现代舞、古典舞等。

让多个机器人实现群体舞蹈,相比单个机器人来说,具备更为充足的舞蹈表现力,但从技术上来说也更为复杂,涉及多个机器人的动作同步控制。对机器人舞蹈开展研究,不仅有助于提升机器人的协作以及与环境协调的能力,还能够为未来家庭提供新的人-机器人交互方式,进而推动人工智能技术的发展。

1 研究现状

纵观国内研究,机器人舞蹈的相关研究较少。李菁等人从人文社科的角度,综述了机器人舞蹈的定义、现状与研究意义[1]。郑万通等人以人类舞蹈动作为基础,利用 C 语言实现了仿人机器人舞蹈动作[2]。郗俊杰提出了一种基于事件驱动的多机器人舞蹈动作协作控制方法[3]。厦门大学周昌乐教授团队,系统地对机器人舞蹈生成方法开展了研究:提出了一种基于姿态关系特征的机器人舞蹈生成方法[4],构建了一种基于深度学习方法的机器人舞蹈生成系统[5]。

在国外,机器人舞蹈的研究如火如荼,其研究内容主要包含四个方面:合作式人-机器人舞蹈[6-8]、模仿人类舞蹈动作[9]、舞蹈与音乐同步[10]以及舞蹈自主创作[11-12]。Kosuge教授团队在设计的舞蹈机器人Ms DanceR和PBDR基础上,探索了人-机器人共舞华尔兹的交互技术[6-8]。Nakazawa等人通过运动结构分析技术,实现了对日本民族民间舞蹈的人类动作的模仿[9]。Michalowski以Keepon机器人为载体,提出了一种节奏交互理论,有效地实现了舞蹈动作与音乐的同步[10]。Shinozaki等人提出了一种机器人舞蹈随机生成方法[11];Vircikova等人通过引入交互式进化计算方法,实现了机器人舞蹈的自动生成[12]。

2 Yanshee机器人

Yanshee机器人是一种关节灵活、重心较低的双足类人机器人(如图1所示),适用于常规的机器人舞蹈研究。该机器人采用Raspberry Pi + STM32 开放式硬件平台架构,17个自由度的高度拟人设计,内置800万像素摄像头、陀螺仪及多种通信模块,配套多种开源传感器包,提供开源软件,支持BLockly、Python、Java、C/C++等多种编程语言。

3 机器人群舞的动作同步控制原理

一个机器人要表演舞蹈,需要执行其预定义或动态生成的动作文件;而多个机器人表演群舞的关键在于:能够同时驱动所有机器人同步执行各自的动作文件。以时间为基准,多个机器人通过在各自的空间位置上表演相同/不同的舞蹈动作,最终形成群体舞蹈。

为了同时驱动所有机器人同步执行各自的动作文件,需要一个统一的同步动作控制平台发送启动指令,该控制平台可以开发为手机App或者计算机程序。

在机器人群舞的动作同步控制中,其处理步骤为:(1)所有机器人预先存储待执行的动作文件;(2)所有机器人的IP地址已被同步动作控制平台收集;(3)控制平台与所有机器人处于同一网段,由控制平台通过基于TCP协议的Socket通讯技术,连接上所有机器人;(4)每个机器人作为一个服务端,该控制平台作为客户端;(5)由控制平台向所有机器人同时发送启动动作指令,驱动所有机器人同时执行各自的动作文件(由客户端提出请求,服务端响应),实现动作同步。其原理框图如图2所示。

上述控制平台的同步控制流程图如图3所示:

4 Yanshee机器人群舞的动作同步控制实现

4.1 Yanshee机器人舞蹈姿态设计

为了实现Yanshee机器人群舞,首先需要进行舞蹈姿态的设计。在设计过程中,需要熟悉Yanshee机器人各个舵机的活动范围以及机器人重心的位置,避免倾倒。常规的Yanshee机器人舞蹈姿态设计的途径有两种:一种是使用厂商提供的Yanshee机器人App;另一种是使用Python语言编码自行实现。

本文采用了Yanshee机器人App的方式设计舞蹈姿态。具体说,在该App中的回读编程页面完成Yanshee机器人舞蹈姿态的设计。在该页面的初始状态列表中,只有一个机器人站立的姿态,若要添加姿态,则需点击“+”按钮添加一个新的姿态。在该添加姿态界面中,首先可以选择机器人的某个身体部位(如:左手、右手、头、左脚、右脚)使其处于松弛状态(正常状态为“锁止”),接下来可以根据该身体部位中各关节的运动范围自定义关节状态。在保证机器人不倾倒的情况下,手工为机器人设计出一个合适的舞蹈姿态,点击“记录+1”按钮向列表中增加一个舞蹈姿态,当需要添加多个舞蹈姿态时,可以重复上述操作来实现。这样,多个舞蹈姿态构成的序列,部署到一个时间轴后,可以形成一个舞蹈动作,而一个舞蹈动作的序列,则形成了一个舞蹈。

另外,在回读编程中,可以进行舞蹈姿态/动作的导入、删除、复制、镜像翻转以及对其持续时间的修改等操作,也可以导入预设的音乐。当完成所有姿态/动作的回读编程后,可以点击“预览”查看舞蹈效果。最后,将设计好的机器人舞蹈以动作文件的方式保存在机器人系统指定的文件夹下,以便今后使用。

4.2 舵机校準

机器人舵机的校准,是实现Yanshee机器人群舞的基础工作。它主要用于确保所有机器人的舵机处于同一水平下,以保证动作的整齐。

Yanshee机器人App提供了方便的舵机校准功能,因此本文使用了该App实现该工作。在该App的舵机校准界面中,通过选择机器人全身舵机分布图上某个舵机,再通过点击加减号按钮,就能对该舵机进行校准。

4.3 机器人群舞同步动作控制平台

在完成舵机校准后,建立了一个用于Yanshee机器人群舞的同步动作控制平台,并部署在手机上。另外,还需要设计一个服务端程序,部署在每个Yanshee机器人上,用于从网络上接收来自控制平台(客户端)的指令(请求),并执行指令(请求)。

具体如下:首先,确保控制平台所在的手机与所有机器人处于同一局域网中;其次,将需要控制的所有机器人的IP地址,依次输入该控制平台中,以便进行控制平台与所有机器人之间的连接;最后,在控制平台上通过点击按钮,向所有机器人同时发送命令,同步驱动所有机器人执行各自的动作文件。这样,所有机器人就可以通过同步的方式,以某种队列表演出群体舞蹈(如图4所示)。

5 结束语

多个双足类人机器人表演群体舞蹈,作为一种新兴的人-机器人交互方式,不但发展了人工智能技术,而且丰富了人们的精神生活,因此对其开展有着重要的意义。本文以Yanshee机器人为载体,提出了一种基于动作同步控制的机器人群舞方法。尽管该方法能够实现机器人群舞的目标,但仍在平衡控制、同步方式等方面存在一些有待改进的地方。相信在未来,机器人群舞技术能得到不断地发展、优化,更好地应用于情感陪伴与交流、医疗康复、教育辅助等方面。

参考文献:

[1] 李菁,彭华,周昌乐.机器人舞蹈浅议[J].艺术评论,2016(2):148-151.

[2] 郑万通,仉俊峰,王东,等.仿人机器人舞蹈动作的研究[J].自动化技术与应用,2015,34(10):134-137,145.

[3] 郗俊杰.多智能双足机器人的动作控制及协作研究[D].西安:西安电子科技大学,2012.

[4] 彭文耀,吴瑞琪,晁飞,等.一种基于姿态关系特征的机器人舞蹈生成方法[J].厦门大学学报(自然科学版),2019,58(5):774-780.

[5] 杨锦隆,施明辉,晁飞,等.基于深度学习进行动作模仿的舞蹈机器人[J].厦门大学学报(自然科学版),2019,58(5):759-766.

[6] Kosuge K,Hirata Y.Human-robot interaction[C]//2004 IEEE International Conference on Robotics and Biomimetics.August 22-26,2004,Shenyang,China.IEEE,2004:8-11.

[7] Kosuge K,Hayashi T,Hirata Y,et al.Dance partner robot - Ms DanceR[C]//Proceedings 2003 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS 2003) (Cat.No.03CH37453).October 27-31,2003,Las Vegas,NV,USA.IEEE,2003:3459-3464.

[8] Kosuge K,Takeda T,Hirata Y,et al.Partner ballroom dance robot-PBDR-[J].SICE Journal of Control,Measurement,and System Integration,2008,1(1):74-80.

[9] Nakazawa A,Nakaoka S,Ikeuchi K,et al.Imitating human dance motions through motion structure analysis[C]//IEEE/RSJ International Conference on Intelligent Robots and Systems.September 30 - October 4,2002,Lausanne,Switzerland.IEEE,2002:2539-2544.

[10] Michalowski M P.Rhythmic human-robot social interaction[D].Ph.D. dissertation, Robot. Inst., Carnegie Mellon Univ., Pittsburgh, PA, USA, 2010.

[11] Shinozaki K,Iwatani A,Nakatsu R.Construction and evaluation of a robot dance system[C]//New Frontiers for Entertainment Computing,2008.

[12] Vircíková M,Sincak P.Dance choreography design of humanoid robots using interactive evolutionary computation[C]//in Proc. 3rd Workshop Young Researchers Human-Friendly Robot., 2010.

【通联编辑:唐一东】