基于PC/104与单片机的仿人机器人控制系统设计

发布者:MagicalSerenade最新更新时间:2010-02-24 来源: 现代电子技术关键字:仿人机器人  主控制计算机  关节控制器  PWM波 手机看文章 扫描二维码
随时随地手机看文章

0 引 言

    机器人作为一个各学科交叉的复杂系统,越来越多的科研者采用机器人作为实验平台,因为它包括机械结构的设计,控制系统的构建,信息的采集与处理,运动学和动力学分析,人工智能等多方面知识的融合。仿人机器人从最初简单模拟人的外形、动作、行走等,逐渐向人的思维、视觉、触觉、智能等方面转变,这就对机器人整个系统提出了更高的要求,不但要进一步完善机器人的机械结构和安装,而且要增强控制系统的功能和处理能力。

    对于控制系统而言,目前在仿人机器人上常用的控制芯片有DSP,ARM或其他一些单片机等,为了进一步增强机器人的可扩展性,这里采用嵌入式系统PC/104作为机器人的主控制计算机,它具有实时性好,成本低,小型化的优点,克服了传统的基于单片机控制系统功能不足和基于PC控制系统非实时性的缺点,在仿人机器人应用中具有广泛前景。

1 仿人机器人结构及控制系统

    该机器人共有21个自由度,其中头部2个自由度,可以实现头部的俯仰和左右偏转,在头上装有一个CCD摄像机,并且带有视觉采集卡以及视觉处理计算机,能够实现目标的识别和定位,为主控计算机直接提供目标信息。每个手臂3个自由度,能够完成伸展和弯曲等动作,在机器人摔倒后可以提供支撑力,让机器人可以自行起立。腰上1个自由度,实现仿人机器人躯干的前倾和后仰,便于机器人在行走或执行手上动作时重心的调节,增强机器人的可控性和稳定性。下肢6个自由度,其中踝关节处2个自由度,髋关节处3个自由度,与人的腿部结构相似,能够灵活的完成下肢的各种动作。仿人机器人的整个结构采用框架式结构,有利于减轻机器人结构上的重量,提高机器人的承载能力,为机器人控制系统的改进提供了更大的空间。如图1所示为仿人机器人实物图。

    仿人机器人控制系统以ACS一4051VEPC/104主板模块作为主控制器,通过USB直接连接摄像头,一个RS 232串行口与关节控制器相连,实现主控制计算机与关节控制器的通信。驱动模块和关节控制器集成在一个PC板上,主要实现PWM波的产生,驱动电机转动。ACS一4051VE主板集成了Intel 82559ERl0/100 Mb/s以太网卡,外接一个无线网卡可以实现与外部无线网络的通信。仿人机器人控制系统总体上主要分为2个部分:主控制器模块和关节控制器模块。它的总体结构实物图如图2所示。

    主要特性有:

    (1)高速、流水线结构的8051兼容的CIP一51内核(可达25 MIPS),70%的指令的执行时间为1个或2个系统时钟周期,能满足关节控制器的需要。

    (2)有4个通用16位计数器/定时器,以及16位可编程计数器/定时器阵列,5个捕捉/比较模块,29个端口I/O。通过对片内进行编程,以及合理地分配比较器与I/O口,实现在C8051F310芯片上产生21路PWM波。由于单片机输出的是数字形式的控制量,必须经过D/A转换变成模拟控制量,经伺服放大器驱动电机。

    在此采用MAXIIM的12位串行D/A芯片MAX531作为数/模转换芯片,将MAX531工作在双极性电压方式下,其输出模拟量的范围在一2.048~+2.048 V,精度为1 mV。输出的模拟量经过运算放大器进行放大,进入伺服放大器驱动电机。

    C8051F310作为关节控制器控制核心,它主要负责21路PWM的产生,在C8051F310芯片中集成了4个通用的16位计数器/定时器,5个捕捉/比较模块,运用1个计数器/定时器和1个比较模块控制6路I/0端口,其他3个计数器/定时器和3个比较器控制15路I/O口,来实现21路PWM波的产生。这里以6路PWM波的产生来说明运用C8051F310实现电路,其电路图如图4所示:CEXn引脚产生脉宽调制PWM输出,PWM输出的频率取决于PCA计数器/定时器的时基,使用模块的捕捉/比较寄存器PCA0CPLn改变PWM输出信号的占空比。当关节控制器接收给定的6个电机转动角度序列数据后.由软件将6个数据从小到大排列,并依次求出相邻2个数的差值,按照最小的数、前2个数的差值到最后两个数的差值排列好,并将从小到大的数据对映的交叉开关的地址依次对映。

    程序将第一个最小角度数放入比较寄存器的低8位PCA0CPLn中,当PCA计数器/定时器的低字节(PCAOL)与PCA0CPLn中的值相等时,CEXn引脚上的输出被置“1”;同时程序将第二个数据即差值放入比较寄存器的PCA0CPLn中,PCA计数器/定时器清零,并将交叉开关置位到相应的输出脚,当PCA计数器/定时器的低字节(PCAOL)与PCA0CPLn中的值再次相等时,CEXn引脚上的输出被置“1”,直到这组数据完毕。PCAOL中的计数值溢出,CEXn输出被复位,准备第二轮的PWM波的产生。

3 实 验

3.1 图像采集处理

    为了使机器人能够达到预定目标,必须对软件系统进行设计规划。主控计算机上安装了WIN98系统,图像采集与处理采用VC进行编程,下面是图像采集处理的程序运行界面如图5所示。

3.2 仿人机器人稳定步行

    运用这种控制系统来实现DF一1仿人机器人行走的控制,通过实验表明,此系统能够完成仿人机器的动态稳定行走,图6是一系列行走连续行走的截图。

4 结 语

    基于PC/104嵌入式计算机和C8051F310芯片设计了仿人机器人的控制系统,实现了机器人的图像采集和处理,以及机器人的稳定步行。PC/104嵌入式计算机功能齐备,运算能力强,可扩展性好,作为仿人机器人控制系统有它独特的优点。单片机实现仿人机器人的关节控制,由于其计算能力有限,难以实现复杂的控制,因此这种控制系统可以用来作为实验用和教学用机器人。

关键字:仿人机器人  主控制计算机  关节控制器  PWM波 引用地址:基于PC/104与单片机的仿人机器人控制系统设计

上一篇:基于GR47和MCU的无线嵌入式Web Server
下一篇:基于C8051F021的双通道轴角测量实验装置的设计

推荐阅读最新更新时间:2024-03-16 12:28

STM32F103输出多路死区互补PWM
阅读数:39 TIM1,TIM8可以产生死区互补PWM波,学习后发现stm32的定时器功能确实很强大,小总结一下方便以后使用的时候做参考。Stm32定时器一共分为三种:tim1和tim8是高级定时器,6和7是基本定时器,2—5是通用定时器。从名字就可以看得出来主要功能上的差异。今天我主要是用定时器做pwm输出,所以总结也主要是针对pwm方面的。 先大致说下通用和高级定时器的区别。通用的可以输出四路pwm信号互不影响。高级定时器可以输出三对互补pwm信号外加ch4通道,也就是一共七路。 所以这样算下来stm32一共可以生成4*5+7*2=30路pwm信号。接下来还有功能上的区别:通用定时器的pwm信号比较简单,就是普通的调节
[单片机]
STM32动态更改PWM频率和占空比
STM32的PWM波动态调频和调占空比 以TIM3_CH1为例 (1)定时器工作原理 定时器的时基单元包含三个部分:①自动装载寄存器(TIMx_ARR),②预分频器寄存器 (TIMx_PSC),③计数器寄存器(TIMx_CNT)。设置自动装载值,预分频器根据所设置的分频系数(1-65536)对定时器所选择的时钟源进行分频,分频后的频率驱动计数器。计算器开始计数,当计数器达到自动装载值时,重新开始计数! 以秒表举例:时钟源是秒针,经过60分频后的频率变成分针,分针一分钟一分钟的增加,当分针数达到60时,又从零开始计数。在这个例子中,秒针是时钟源,第一个60就是预分频器设置的值,第二个60就是自动装载寄存器设置的值。 (2)P
[单片机]
STM32动态更改<font color='red'>PWM</font><font color='red'>波</font>频率和占空比
丰田推出新款T-HR3仿机器人
据外媒报道,丰田公司推出了一款名为T-HR3的第三代新型仿人机器人,它可协助人类在各种困难环境里完成任务。 据了解,T-HR3机器人主要由“主操纵系统”(MMS)控制,该套操控系统拥有29个机身部件和16个控制系统。使用者可通过一套可穿戴设备对其下达指令。由于其强大的适应性,T-HR3机器可搭载多种应用程序,它的功能也包括导引就医流程、唱歌跳舞等多个领域,甚至可以在条件恶劣的环境里完成作业。 机器人采集到的图像可通过头戴式耳机传输给使用者,因此人们可以借此探索某些环境因素不明确或是具备一定危险性的场所,如放射性燃料堆或者被大雪积压覆盖的道路,还能操纵机器人完成接下里要进行的任务。 根据丰田发布的宣传视频,T-HR3机器人也可精准
[机器人]
如何利用定时器产生PWM
摘要:利用定时器产生PWM波。然后利用32的外部中断和定时器来测量32输出的波形硬件:STM32F103C8T6核心板、示波器、串口调试助手所用到的的引脚为PA8和PA0。 测量方案:在第一次外部中断(上升沿触发)到之时,开启定时器,同时计数器清零。然后等待第二次中断到来,在第二次外部中断(上升沿触发)到之时,获取计数器的计数值,同时关闭计数器。因为知道了计数器计数一个数的时间,所以在第二次外部中断(上升沿触发)到之时,获取计数器的计数值,通过这个值就知道一个脉冲的时间周期。时间周期的倒数就是外部信号的频率。 一、利用TIM1的CH1产生PWM波 pwm.c #include pwm.h voidTIM1_PWM_Init
[单片机]
如何利用定时器产生<font color='red'>PWM</font><font color='red'>波</font>
全球最小仿机器人惊艳亮相,身高仅141毫米
拔萃男书院四名学生近日凭借着尚未命名的,打破了由巴基斯坦 Zn Ahmad Qureshi 保持的纪录,创造了新的“全球最小仿人机器人”纪录。 据悉,Aaron Ho Yat Fung、Isa Zachary To、Jusn Wang Tou Duong 和 Ngo Hei Leung 四人组成团队,研发的新型仿人机器人高度仅为 141 mm,比 Qureshi 此前纪录矮了 11.3 mm。 团队成员表示研制该机器人的初衷是为了打破吉尼斯纪录,但更重要的是希望未来这个机器人可以成为一个 "小型、低成本、可充电、可" 的 STEAM(科学、技术、工程、艺术和数学)教育平台。
[机器人]
基于CAN总线和双传感器的仿机器人运动控制系统研究
一、引言     机器人研究是自动化领域最复杂、最具挑战性的课题,它集机械、电子、计算机、材料、传感器、控制技术等多门学科于一体,是多学科高技术成果的集中体现。而仿人步行机器人技术的研究更是处于机器人课题研究的前沿,它在一定程度上代表了一个国家的高科技发展水平。运动控制系统是机器人控制技术的核心,也是机器人研究领域的关键技术之一,在机器人控制中具有举足轻重的地位,因此,各研究机构都把对机器人运动控制系统的研究作为首要任务。   动作协调、具有一定智能、能实现无线实时行走已经成为当今机器人发展的主题。随着以电子计算机和数字电子技术为代表的现代高技术的不断发展,特别是以DSP为代表的高速数字信号处理器和大规模可编程逻辑器件(CPLD
[嵌入式]
基于DSP仿机器人关节控制器设计
   0 引 言   仿人机器人具有可移动性,具有很多的自由度,包括双臂、颈部、腰部、双腿等,可以完成更复杂的任务,这些关节要连接在一起,进行统一的协调控制,就对控制系统的可靠性、实时性提出了更高的要求,以往采用的集中控制系统,控制功能高度集中。局部的故障就可能造成系统的整体失效,降低了系统的可靠性和稳定性,因此考虑采用分布式的控制系统来实现系统的控制功能。   考虑到机械臂控制系统控制算法的计算量以及多轴协调控制等问题,采用基于RS 485总线的分布式控制的体系结构,见图1所示。运动规划算法由主计算机来实现,同时主计算机还将通过RS 485总线与各关节控制器通信,负责各关节控制器的协调工作。每个关节控制器和一台电机、驱动器、
[嵌入式]
STM32——TIM死区互补PWM输出
于pwm波的输出实验老早之前就学了,一直拖到现在才写,,,。由于之前接触过32的高级定时器所以是先从死区pwm波开始学的,后面才学的pwm波。其实会发出死区pwm波了也就会发pwm波了。在学习32的某个功能时要先去看32的数据参考手册了解它的功能然后看它有哪些寄存器,对你需要用到的寄存器深入了解,最后看库函数进行编程。 要发出死区pwm波就要用到32的高级定时器TIM1或TIM8,这两个定时器才有死区寄存器才能发出死区pwm波,对于它们的介绍网上资料有很多这里就不重复啰嗦了,但需要看几个重要的寄存器: ● 控制寄存器(TIMx_CRx) ● 模式控制寄存器(TIMx_SMCR) ● 状态寄存器(TIMx_SR) ● 计数器寄存器(
[单片机]
STM32——TIM死区互补<font color='red'>PWM</font><font color='red'>波</font>输出
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved