基于单片机的自动巡线轮式机器人控制系统设计摘要:设计了一种自动巡线轮式行走机器人控制系统,采用AT89S52型单片机作为主控CPU,外加一个复杂可鳊程逻辑器件(CPID)协助CPU处理数据,扩展了程序参数存储器,能够进行检测引导线和直流电机、舵机的PWM控制
关键词:控制系统;复杂可编程逻辑器件;存储器;光电检测;脉冲宽度调制1引言轮式移动机器人是机器人研究领域的一项重要内容.它集机械、电子、检测技术与智能控制于一体
在各种移动机构中,轮式移动机构最为常见
轮式移动机构之所以得到广泛的应用
主要是因为容易控制其移动速度和移动方向
因此.有必要研制一套完整的轮式机器人系统
并进行相应的运动规划和控制算法研究
笔者设计和开发了基于5l型单片机的自动巡线轮式机器人控制系统
2控制系统总体设计机器人控制系统由主控制电路模块、存储器模块、光电检测模块、电机及舵机驱动模块等部分组成,控制系统的框图如图1所示
3主控制模块设计3.1CPLD设计在机器人控制系统中.需要控制多个电动机和行程开关.还要进行光电检测.如果所有的任务都由AT89S52型单片机来完成.CPU的负担就会过重
影响系统的处理速度
因此扩展1个CPLD.型号为EPM7128
它属于.MAX7000系列器件
包括2个通用1/0口.2个专用I/O口,专用I/O口可作为每个宏单元和输入输出引脚的高速控制信号(时钟、清除和输出使能等),电动机的
PWM信号也由其产生
EPM7128的引脚排列如图2所示
MlP—M4P引脚的输出为PWM脉宽调制信号,M1FB—M4FB引脚为电机的方向控制信号,P00一P07接单片机的PO口,100一1015为扩展的2个通用I/O口,SIl—S17引脚为行程开关输入信号,LI11一LI17引脚为光电探头输入信号
CPLD的编程用VHDL语言,产生1路PWM信号的部分程序源代码如下:单片机采用24MH