微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于Kinect的机器人控制系统

基于Kinect的机器人控制系统

时间:10-15 来源:互联网 点击:

来后,在上位机中计算山对应的各个角度数据,然后将这些角度数据通过无线传输单元实时地传送到机器人,机器人做出响应,模仿当前人体手臂动作。

②机器人平面运动控制

机器人平面运动的控制针对的是轮式机器人,机器人的平面运动方式大致有4种,分别是前进,后退,左转,右转。这4种运动方式对应于4个指令数据,也同时对应着4个操作者的手势动作。通过真实的开车旋转方向盘来控制机器车的旋转,通过右手相对于左手的超前或落后来控制车的前进和后退,解析出这4个动作后,只需发送对应的4个指令数据即可。机器人硬件结构如图6所示。

2)通讯模块 同主机。

3)电机驱动模块BT37970B直流电机驱动,这是一款H桥有刷直流电机驱动模块,适用3~24 V的大功率直流电机,DC 10~29 V输入直流电压。在25 V电压下,额定持续输出10 A电流,适用于锂电池直接供电。供电为25 V 10 A时测得芯片工作频率高达1 MHz,驱动能力有了明显的提高,响应速度快。两路PWM输入,占空比可以在0~100%,是一般驱动所达不到的。具有瞬间制动能力以及做到全程速度精确控制。适用于锂电池直接供电驱动的机器人或车模比赛。控制方式简单,仅需要接3根输入线即可控制电机制动及正反转,其中GND引脚与单片机的GND相连,P引脚接单片机的PWM输出引脚,R引脚接单片机的PC0引脚,用于对电机转动方向的控制。连接图如图7所示。

4)语音模块最大输出功率为25W,具有30M存储容量,可以通过8个按键触发8段语音,也可以通过RS485/232给模块指令触发220段语音。

5)电源部分采用的是3S锂电池,容量为1500 mAh,额定电压11.1 V,35C超大放电能力。

3 系统软件设计

软件设计采用模块化处理方法,主机程序主要由主程序、Kinect初始化、图像辨识、语音识e、串口通信等模块组成,采用C#编写,编译环境为VS2010,使用部分环境库函数。从机程序主要有主程序、串口通信、电机驱动、舵机驱动、动作函数等模块组成。采用C语言编写,编泽环境为Avrstudi04,使用部分环境库函数。系统程序流程如图8所示。

Kinect将采集到的图像信息传送给上位机,上位机经过图像处理后识别出人体动作,并将处理后的结果输出,如图9所示。机器人实时模仿人体动作测试情况如图10所示。

4 结论

操作者可以站在离Kinect体感传感器3 m左右的距离对机器人进行体感操控。目前该机器人能够实时模仿左、右手各6个简单的动作:高举、半举、乎举、拥抱、架起、放下。以及实时模仿单腿抬起动作。你还可以通过双手模拟方向盘实时控制机器车的前后左右运动,亦可通过语音forward、back、turn left、turn right宋控制机器人的前后左右运动。

机器人在人们牛活中承担着越来越重要的作用,该系统则提供了一种新的控制方式——体感控制,使机器人的控制更加灵活多样,实现了更加自然的人机交互,具有较高的理论研究价值和先进性。同时,通过手势实时控制机器人的方式,能应用于排爆、救援、医疗等诸多行业,具有广阔的市场前景。在此基础上可以根据工业生产等需要,研发出更多种类的自动化机器人,为创建自动化机器人体系提供积极的支持和帮助。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top