基于单片机的自动巡线轮式机器人控制系统设计
发布时间:2008/6/3 0:00:00 访问次数:460
    
    
    来源:国外电子元器件 作者:大连理工大学 关慧贞,邱铁,叶希贵
    
    摘 要:设计了一种自动巡线轮式行走机器人控制系统,采用at89s52型单片机作为主控cpu,外加一个复杂可鳊程逻辑器件(cpid)协助cpu处理数据,扩展了程序参数存储器,能够进行检测引导线和直流电机、舵机的pwm控制。
    
    关键词:控制系统;复杂可编程逻辑器件;存储器;光电检测;脉冲宽度调制
    
    1 引言
    
    轮式移动机器人是机器人研究领域的一项重要内容.它集机械、电子、检测技术与智能控制于一体。在各种移动机构中,轮式移动机构最为常见。轮式移动机构之所以得到广泛的应用。主要是因为容易控制其移动速度和移动方向。因此.有必要研制一套完整的轮式机器人系统。并进行相应的运动规划和控制算法研究。笔者设计和开发了基于5l型单片机的自动巡线轮式机器人控制系统。
    
    2 控制系统总体设计
    
    机器人控制系统由主控制电路模块、存储器模块、光电检测模块、电机及舵机驱动模块等部分组成,控制系统的框图如图1所示。
    
    
    
    3 主控制模块设计
    
    3.1 cpld设计
    
    在机器人控制系统中.需要控制多个电动机和行程开关.还要进行光电检测.如果所有的任务都由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信号的部分程序源代码如下:
    
    
    
    单片机采用24mhz的晶体振荡器,ale信号的频率fale=f16=6mhz,最终输出pwm信号的引脚mlp的频率为:
    
    
    
    
    调节这个信号的占空比可以使直流电动机获得o-255级的转速。
    
    3.2 机器人运行参数存储器的扩展
    
    机器人运行路径和动作可以根据比赛情况的不同而发生变化,这样,每改变1次运行参数就必须对单片机的flash进行1次擦写。为了解决这一问题.扩展了程序参数存储器,用来存放机器人的运行路径和动作参数.扩展电路如图3所示。
    
    
    
    其中ic1为24lc08b,是i2e总线的串行e2prom存储器,最多能够存储lk字节的数据。ic2为max3232型电平转换器,其内部有1个电源电压变换器,可以将计算机的电平转换为标准ttl电平,实现计算机与单片机之间通过串行口传输数据,使单片机完成对24/lc08b的数据存储操作。单片机运行时,直接从24lc08中读取机器人的运行参数,控制机器人运行。
    
    4 光电检测模块设计
    
    4.1 光电检测过程
    
    设计光电检测模块是为了让机器人能够检测地面上的白色引导线。光电检测电路主要包括发射部分和接收部分,其原理如图4所示。
    
    
        
    
    
    来源:国外电子元器件 作者:大连理工大学 关慧贞,邱铁,叶希贵
    
    摘 要:设计了一种自动巡线轮式行走机器人控制系统,采用at89s52型单片机作为主控cpu,外加一个复杂可鳊程逻辑器件(cpid)协助cpu处理数据,扩展了程序参数存储器,能够进行检测引导线和直流电机、舵机的pwm控制。
    
    关键词:控制系统;复杂可编程逻辑器件;存储器;光电检测;脉冲宽度调制
    
    1 引言
    
    轮式移动机器人是机器人研究领域的一项重要内容.它集机械、电子、检测技术与智能控制于一体。在各种移动机构中,轮式移动机构最为常见。轮式移动机构之所以得到广泛的应用。主要是因为容易控制其移动速度和移动方向。因此.有必要研制一套完整的轮式机器人系统。并进行相应的运动规划和控制算法研究。笔者设计和开发了基于5l型单片机的自动巡线轮式机器人控制系统。
    
    2 控制系统总体设计
    
    机器人控制系统由主控制电路模块、存储器模块、光电检测模块、电机及舵机驱动模块等部分组成,控制系统的框图如图1所示。
    
    
    
    3 主控制模块设计
    
    3.1 cpld设计
    
    在机器人控制系统中.需要控制多个电动机和行程开关.还要进行光电检测.如果所有的任务都由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信号的部分程序源代码如下:
    
    
    
    单片机采用24mhz的晶体振荡器,ale信号的频率fale=f16=6mhz,最终输出pwm信号的引脚mlp的频率为:
    
    
    
    
    调节这个信号的占空比可以使直流电动机获得o-255级的转速。
    
    3.2 机器人运行参数存储器的扩展
    
    机器人运行路径和动作可以根据比赛情况的不同而发生变化,这样,每改变1次运行参数就必须对单片机的flash进行1次擦写。为了解决这一问题.扩展了程序参数存储器,用来存放机器人的运行路径和动作参数.扩展电路如图3所示。
    
    
    
    其中ic1为24lc08b,是i2e总线的串行e2prom存储器,最多能够存储lk字节的数据。ic2为max3232型电平转换器,其内部有1个电源电压变换器,可以将计算机的电平转换为标准ttl电平,实现计算机与单片机之间通过串行口传输数据,使单片机完成对24/lc08b的数据存储操作。单片机运行时,直接从24lc08中读取机器人的运行参数,控制机器人运行。
    
    4 光电检测模块设计
    
    4.1 光电检测过程
    
    设计光电检测模块是为了让机器人能够检测地面上的白色引导线。光电检测电路主要包括发射部分和接收部分,其原理如图4所示。
    
    
上一篇:无需更换电池的数字倒计时定时器