刘卫妍,庞金生,王文,张龙
基于AI技术的机器人设计
刘卫妍,庞金生,王文,张龙
(天津职业技术师范大学,天津 300222)
针对减轻服务类行业繁重的劳动力和提高服务效率等问题,设计及实现了一种可以人机交互的基于AI技术的机器人。系统采用ZMP步态算法和三次多项式运动轨迹规划等方法,通过STM32F7最小核心板、语音交互模块和舵机驱动模块等来控制机器人的行进动作。通过MATLAB中的Simulink可视化仿真工具实现3D仿真模型同机器人之间的协同动作。经过最终的实验检测后,系统可以通过语音模块和上位机界面实现人机交互功能。
人机交互;人形机器人;3D仿真实验平台;MATLAB
机器人系统主要包括硬件搭建部分、机器人行进控制算法部分和人机交互部分。通过UG(Unigraphics NX)建模软件完成机器人的零件外壳设计并通过3D打印机打印成型。通过D-H建模法对机器人运动学进行求解后,采用三次多项式轨迹规划法和ZMP步态算法来实现机器人的运动轨迹规划及步态行走。上位机界面通过MATLAB GUI进行设计,利用Simulink模型实现实体机器人与Simulink机器人模型的线上动态3D仿真。
机器人模型协同仿真如图1所示。
图1 机器人模型协同仿真
人形机器人的系统控制板主要包括STM32F7最小核心板、语音交互模块、姿态采集模块、舵机驱动电路等,以此来实现对机器人的控制。系统硬件结构如图2所示。
图2 系统硬件结构图
将STM32F7最小系统核心板与系统控制板相连接实现对整个系统的控制,其微处理器的主频高达216 MHz,可以高速完成系统的运算处理。通过将电路原理图导入至PCB图后,根据机器人内部空间进行布局和规划,使设计完成后的电路板刚好可以嵌入机器人体内。
语音交互模块主要由LD3320芯片组成,该芯片内部有高精度的模拟量和数字量转换接口,通过与单片机控制系统相结合实现对声音的采集和识别。
机器人根据识别到的信息做出相应的回应和执行相应的操作工作,实现语言交互功能。
采用串行总线通讯的SCS15舵机作为机器人的动力机构,在位置伺服控制模式下的舵机转动范围为0°~200°。通过微处理器来控制舵机的角度,对每个舵机设定不同的节点ID地址,设定完成后将所有的舵机连接起来,利用ID广播来实现对各个舵机的控制。
Simulink是MATLAB中的一种可视化仿真工具,Simulink中的机器人器件模型在UG软件中的3D设计模型,利用Solidworks与Simulink的接口实现模型的导入。通过输入关节角度来控制关节转动,机器人模型根据接收到MATLAB运算后的轨迹数据和实际机器人在线调试时传回的关节数据实现机器人的实时在线3D仿真。
通过MATLAB中的guide工具可以对Simulink仿真模型进行交互,并且可以将在MATLAB所编写的函数进行调用。机器人的上位机界面如图3所示,在上位机界面对串口和波特率进行配置完成后,点击“打开串口”即可实现机器人与上位机之间的通讯,通过上位机界面控制起立、下蹲、前进和后退等动作,还可以直接对机器人各个关节的角度进行控制。
图3 上位机界面图
本次设计通过MATLAB、UG(Unigraphics NX)和STM32F7最小系统核心板等设计了一款基于AI技术的机器人。最终的实验检测结果表明,可以通过语言与AI机器人进行交流,可以控制机器人的前进和后退等动作。它可以帮助人类完成多种场合的服务类工作,通过制定不同的服务类型来满足不同场合的需要,对促进人工智能的发展具有重要的意义。
[1]明廷堂,李辰.MATLAB零基础入门教程(实例版)[M].北京:化学工业出版社,2018.
[2]刘火良,杨森.STM32库开发实战指南[M].北京:机械工业出版社,2017.
[3]唐策,赵现朝,齐臣坤.人形机器人建模与步态规划[J].机械制造与自动化,2012,41(4):158-162.
[4]訾诗宇,李小斌,吴宏岐,等.一种人形机器人控制系统设计[J].数字通信世界,2018(8):38-69.
[5]王勇,王梨英.基于ARM的仿人形机器人的设计[J].电子世界,2018(1):108-109.
[6]张爽,邬依林,葛伟亮,等.仿人服务机器人的平衡控制[J].中山大学学报(自然科学版),2016,55(5):14-20.
[7]史耀强,厉明勇,顿向明.双足机器人基于ADAMS与Matlab的联合仿真[J].机械与电子,2008(1):45-47.
TP242
A
10.15913/j.cnki.kjycx.2019.20.051
2095-6835(2019)20-0116-02
刘卫妍(1997—),女,本科在读,研究方向为自动化(电气技术教育方向)。
〔编辑:严丽琴〕