智能化妆机器人控制系统设计
2021-04-25黄沥陶波屈俊雯唐紫玺邹春吉李亚东
黄沥 陶波 屈俊雯 唐紫玺 邹春吉 李亚东
摘要:本项目拟设计一款智能化妆机器人,采用目前最为先进的人脸识别技术以及科技前沿的仿生机械手臂,以STM32单片机为控制核心。将Open MV识别到的信息通过系统分析与判断得到适合的妆容方案,按照制定的妆容方案控制机械臂及其末端执行机构完成相应的动作组,从而实现机器人的智能选妆与上妆全过程。
关键词:STM32;图像识别;机械手臂;舵机控制
中图分类号:TP391文献标识码:A
文章编号:1009-3044(2021)09-0181-02
开放科学(资源服务)标识码(OSID):
Design of Intelligent Makeup Robot Control System
HUANG Li, TAO Bo, QU Jun-wen, TANG Zi-xi, ZOU Chun-ji, LI Ya-dong*
(School of Electronic Information Engineering,Yangtze Normal University, Chongqing 408100, China)
Abstract:This project plans to design an intelligent cosmetic robot, which adopts the most advanced face recognition technology and the bionic mechanical arm in the forefront of science and technology, and takes STM32 micro-controller as the control core.The information identified by Open MV is analyzed and judged by the system to get the appropriate makeup scheme. According to the makeup scheme, the robot arm and its end-effector is controlled to complete the corresponding action group, so as to realize the whole process of intelligent makeup selection and makeup application of the robot.
Key words: STM32; Image recognition; A robotic arm; Steering gear cont
1背景
当今时代,人们对外貌、衣着也有了更高的要求。化妆、穿搭成为广大爱美人士生活中不可或缺的一部分。对于学生党来说,早上起床花费在化妆上的时间都足够让人头疼,还极有可能达不到自己满意的效果;对于上班族来说,合适的妆容更能够让她们在职场中获得自信,对于需要举办一些大型舞会或者活动的策划者来说,化妆间以及化妆师缺乏导致时间的浪费。为此,我们拟设计一款智能化妆机器人,通过面部识别系统采集分析面部信息并识别皮肤状态,以制定出合适的妆容方案。为了减少机械给用户带来的生冷感,我们采用贴合人体皮肤的材料,通过主控系统对各个模块进行操控完成相应部位的妆容最后达到整体的效果。整个过程操作时间快,为人们节约出了化妆所需要的时间,能够满足大部分人的需求。
2系统总体设计
根据用户使用智能机器人的便利性要求,机械手臂的整体布局如图1所示。为提高用户使用机器人进行化妆时的舒适度,使用户置身于享受状态,机械手掌制作采用贴合人体皮肤材料。机器人的整体系统包含主控电路模块,舵机控制模块以及Open MV视觉识别模块。选用STM32F407VET6芯片为主控;机械臂的每个手关节安装扭矩为15Kg.cm的TBS2701数码数字舵机。设计舵机控制器实现对舵机角度的控制,根据所需要的妆容,设计具体的动作组,控制运行轨迹和末端执行机构。
3控制电路设计
3.1STM32最小系统电路
STM32F407VET6 作为主控芯片(图2所示),该芯片数字模拟输入输出口多,处理速度快,功耗低。由时钟电路、复位电路、BOOT启动电路,电源电路、SWD下载接口,指示灯提示电路,电源供电、扩展I/O接口等部分组成。利用STM32最小系统直接控制6个舵机,使用串口屏实现人机互动,OpenMV4识别模块。电源电路:DC电源接口,通过电源线通过该接口为开发板供电,供电电压5V。电源开关:为了保障开发板上各器件的安全运行,电源电路中需要设置电源开关统一管理电源的供断。开发板的电源指示灯,电压转换芯片,5V电压通过该芯片转换得到3.3V电压,可用于SRAM、FLASH以及晶振等芯片电路的供电,分布的电容可以起到滤波的作用。晶振电路:作用是为系统提供基本的时钟信号,在本开发板上包含了两个晶振,分别为外部8MHz的高速晶振,为系统提供时钟信号和内部32.768KHz的内部晶振,为RTC提供时钟信号。低电平复位:RSET为芯片的复位引脚信号,此时芯片复位引脚接通GND,芯片将会复位重启。主芯片程序下载采用SWD接口电路,SWD接口包括VDD、JTMS、JTCK、GND四線,下载方便[1]。
3.2软件设计
化妆机器人软件控制设计中,编写了人脸识别算法,校准机械臂初始位置,应用单片机软件控制舵机动作组,对人脸划分区域,实行不同的流程操作。机械臂开始动作组执行到达化妆品指定位置,机械夹进行化妆品抓取,在人脸相应区域进行化妆过程,化妆完毕机械臂结束动作组执行,将化妆品放回化妆盒。化妆品的抓取与放回沿预定轨迹运行,保证化妆品的完整性,经过不同区域完整操作,整个化妆流程结束。
选用Open MVH7摄像头模组进行图像数据采集,采集的图像经摄像头内的感光元件处理,获取图像,存入储存卡中,在用其自带的集成开发环境Open MVIDE,用Python语言编写代码,基于Grab Cut的人脸区域提取算法, 先从输入一帧图片中提取出人脸前景, 排除了干扰信息, 提升了处理的效率和人脸区域识别精度。并把处理结果经串口发送给STM32 F407VET6主控芯片,对识别区域进行储存并划分。
3.3 Open MV 模块
Open MV模块(图3)用于采集人脸图像,用于面部识别。Open MV采用STM32H743VIT6主控芯片,设备采用高速嵌入式存储器,具有高达2兆字节的双组闪存、1兆字节的RAM(包括192千字节的TCM RAM、864千字节的用户SRAM和4千字节的备份SRAM),以及廣泛的增强型I/O和连接到APB总线、2x32位多AHB总线材料的外围设备。以及支持内部和外部存储器访问的多层AXI互连。
3.4 TBS2701数码舵机
TBS2701数码舵机扭力达15kg,通过PWM脉冲信号控制调节角度。周期20ms,占空比0.5ms-2.5ms,可控角度270°,控制精度3us即0.24°,舵机在整行程中扭力平均。
通过PID算法实现舵机角度定位,持续发送一次PWM信号保持锁定角度不变,智能化妆机器人控制系统设计使用6个TBS2701数码舵机(图1所示)。1号舵机控制机械臂的1关节水平转动,2号舵机大幅度控制机械臂关节2前后垂直转动,3号舵机控制关节3垂直转动,4号舵机控制关节4垂直转动,关节5控制关节5水平转到,关节6控制关节6—机械爪[2]。
4化妆功能实现
基于人脸识别算法准确识别人脸,在人脸平面空间进行定位,根据定位校准机械臂初始位置,使机械臂正向面对人。根据识别的空间对人脸划分区域,主要分为额头、面部、鼻子、嘴巴,额头选用放置好(化妆盒内)化妆品,软件控制舵机动作组,不同区域化妆品与动作智能选择,机械臂开始动作组执行到达化妆品指定位置,机械夹进行化妆品抓取,经过设定轨迹路线,设定与人脸的距离,在人脸相应区域进行化妆过程,化妆完毕机械臂结束动作组执行,将化妆品放回化妆盒,机械臂回到初始位置。经过不同区域完整操作,整个化妆流程结束。
5结束语
本文智能化妆机器人的设计,实现了用Open MV进行人脸识别,机械手臂对人脸进行化妆。本设计基于STM32F407VET6单片机构建了化妆机器人的控制系统,分别对化妆机器人的Open MV视觉识别模块、机械手臂和舵机控制、基于STM32F407VET6的主控电路及三大模块的硬件电路和控制算法进行了设计。
参考文献:
[1] 张硕,刘天悦,张鑫宇,等.盆栽转移竞赛机器人控制系统设计[J].机电工程技术,2020,49(8):115-118.
[2] 肖艳军,毛哲,温博,等.基于STM32的综合实验平台设计[J].实验技术与管理,2019,36(12):72-76.
【通联编辑:梁书】