新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于ARM9的仿人机器人分布式控制系统

基于ARM9的仿人机器人分布式控制系统

作者:时间:2010-12-02来源:网络收藏

2.2 的实现

在计算机和单片机的控制数据传输领域内,长期以来广泛的使用RS-232,RS-485等方式,这些方式讯的实时性较差, 故障率较高, 出现故障时, 不容易排查[3]。不能够满足小型仿人机器人的实时性和大批量数据传输的要求。总线通信方式作为新一代计算机外设的接口技术,随着技术的日益成熟,及独特的优点(对多种设备的广泛适用性,自动配置,容易扩充,易于连接,热插拔,即插即用、高可靠性,低成本,低功耗等),应用前景非常广泛[4]。

本控制系统中的管理控制器9(S3C2410)集成了一个USB host,采用Linux操作系统;C8051F320器件集成了全速/低速USB功能控制器,用于实现USB接口的外部设备,均支持USB2.0通信协议。单片机端设计了通信固件程序和应用程序,用于接收USB通信内容。

2.3 基于C8051单片机和CD4017外部计数器的关节控制器设计

采用一片单片机与4片CD4017外部计数器的关节控制器设计方案,极大限度的精简了硬件数量,节省了空间,降低了软硬件出错的可能性,也为系统运动功能的扩展提供了足够空间和灵活性(自由度数量设置可在36个以内任意增减)。

基于C8051的设计中有很多方法用于产生PWM波形:软件循环、查询或中断驱动的定时器等。使用可编程计数器阵列PCA产生PWM相对于任何查询机制(基于软件或定时器而言)可以大大降低所需要的CPU带宽,并可以消除在中断驱动的基于定时器的设计中因中断延迟不一致而产生的时序抖动。PCA由一个专用的16位计数器/定时器和5个16位捕捉/比较模块组成。每个捕捉/比较模块有其自己的I/O线。计数器/定时器由一个可编程的时基信号驱动。计数器/定时器有一个16位的计数器/定时器寄存器、一个用于选择时间基准的方式寄存器和一个包含计数器/定时器运行控制及各模块捕捉/比较标志的控制寄存器。每个捕捉/比较模块有一个用于选择模块工作方式的配置寄存器和一个16位的捕捉/比较寄存器。每个捕捉/ 比较模块的工作方式都可以被独立配置。由于所有的捕捉/比较模块共享一个时间基准,因此它们同步工作[5][6]。本文研究的小型娱乐机器人关节控制器设计中,将PCA配置为独立工作;每个模块的中断服务程序只影响该模块的捕捉/比较寄存器。PCA方式寄存器和配置寄存器设置一次后不再改变,让计数器/定时器寄存器自由运行。

在高速输出方式,每当PCA计数器与模块的16位捕捉/比较寄存器发生匹配时,模块I/O线的引脚上的逻辑电平将发生高低转换,并可以选择产生中断。本应用程序中选择了该中断。

Y9输出均变为低电平,只有Y0脚输出变为高电平,故可以利用CR的正脉冲输入中断计数[7]。~Y9这10个输出端,计满10个数后计数器复零,同时CO端输出一个进位脉冲。当CR端有正脉冲输入时,该脉冲的上升沿将触发CD4017复位,此时Y1~CD4017基本功能是对CP端输入脉冲的个数进行十进制计数,并按照输入脉冲的个数顺序将脉冲分配在Y0

本文研究的小型娱乐仿人机器人控制系统方案中,一个CD4017输出7路脉冲,分别发送给7个舵机。

3 实验

控制系统硬件实物连接图如图4。

机器人步行实验完成5步的向前行和5步的后退的行走过程。步行实验过程如图5。

4 结论

根据小型仿人机器人的机构特点和性能要求,构建了以9为主控制器的小型仿人机器人控制系统。设计开发了C8051USB单片机和CD4017外部计数器组成关节控制器,该关节控制器能够实现多舵机的协调控制任务。实践证明,采用该结构之后,整个机器人系统的模块化程度更高,系统的装配和调试更加方便。控制系统实现了小型化、低功耗,而且机器人行走稳定性。

本文作者的创新点

根据小型仿人机器人的机构特点和性能要求,构建了以9为主控制器的小型仿人机器人控制系统。设计开发了C8051USB单片机和CD4017外部计数器组成关节控制器,该关节控制器能够实现多舵机的协调控制任务。实践证明,采用该结构之后,整个机器人系统的模块化程度更高,系统的装配和调试更加方便。控制系统实现了小型化、低功耗,而且机器人行走稳定性。


上一页 1 2 下一页

关键词: A/D ARM USB 通信

评论


相关推荐

技术专区

关闭