摘要:本文通过运用ATmega16单片机调制PWM信号输出对舵机进行控制,设计实现一种自主通讯控制的舞蹈小狗型机器人,机器人可以模仿小狗的一些可爱、优美的动作。本系统涉及到3D模型绘制及动力学仿真、单片机、电路理论、自动控制、电机原理与拖动、接口技术、结构力学、电子工艺等多方面内容。  关键字:ATmega16单片机 SR-403P舵机 MAX232一、设计思路和标准  该舞蹈机器人以ATmega16单片机为核心控制器,本体由25个舵机组成,在机械结构方面模仿小狗身体设计制作出适合机器狗的身体结构组成,优化组合各个连接部件如舵机,卡口等,使机器狗能够稳定实现一些预编的复杂而优美的动作。二、系统构成及原理  本系统硬件主要有串口调试电路连接、舵机控制电路板的焊接等,软件主要完成机器狗舞蹈程序编辑调试与下载等功能[1]。通过ATmega16单片机控制输出PWM信号来控制舵机的转动,实现机器狗可爱形象的展示。系统结构框图如图1所示。

图1 系统结构框图三、主要硬件电路1、串口调试电路  该电路的主要控制器件为MAXIM公司生产的MAX232MJE,其硬件接口简单,是TTL--RS232电平转换的典型芯片,如图2所示。片内包含两路接收器和驱动器的IC芯片,集成有一个电源电压变换器,每一个接收器将TIA/EIA-232-F电平转换成5V TTL/CMOS电平,每一个发送器将TTL/CMOS电平转换成TIA/EIA-232-F电平,可把输入的+5V电源电压变换为RS-232C输出电平所需的±10V电压。实际应用中由于MAX232对电源噪声敏感,因此在VCC与GND之间必须加一个去耦电容,并注意电路板上各个电容接法,应靠近MAX232芯片,提高串行接口的抗干扰能力与数据传输能力。

图2 MAX232串口调试电路原理图2、舵机控制电路  舵机是一种位置伺服的驱动器,在机器人系统中可提供和保持精确的角度控制[2],其工作原理是:控制信号由接收机的通道进入信号调制芯片,获得直流偏置电压。它内部有一个基准电路,产生周期为20ms,宽度为1.5ms的基准信号,将获得的直流偏置电压与电位器的电压比较,获得电压差输出,电压差的正负输出到电机驱动芯片决定电机的正反转。当电机转速一定时,通过级联减速齿轮带动电位器旋转,使得电压差为0,电机停止转动。  基于AVR单片机的舵机控制具有精度高、连接简单、系统可靠性强等特点。用ATmega16单片机作为SR-403P舵机的控制单元,使PWM信号的脉冲宽度实现微秒级的变化,从而提高舵机的转角精度。控制板原理图如图3所示:

图3 舵机驱动原理图四、软件设计  本系统的软件用C语言编写,主程序完成系统硬件的初始化、子程序调用等功能。主程序、动作子程序如图4、图5所示。

  图4 主程序流程图 图5 动作子程序流程图结束语   实践证明,本文所设计的舞蹈机器狗运行稳定、动作优美、能够很好的完成一些高难度舞蹈动作如滑步、招手、漂移等。通过改进以往机械结构,结合专用调试软件即可达到机器狗翩翩起舞的预期目标。参考文献[1] 刘广瑞.机器人创新制作[M].西安:西北工业大学出版社,2007.  [2] 陈继荣.智能电子创新制作—机器人制作入门[M]. 北京:科学出版社,2007.