3.电路模块的设计从本课题设计的六自由度机械手结构及各方面因素综合考虑,我们可以在机械手的每个活动关节相配一台舵机提供动力驱动。与液压、气压驱动相比,其驱动源和系统较为简单,舵机又是配套的通用产品,规格齐全,容易得到,不需要另行设计,在位置精度要求不高的情况下,控制系统方便。本设计采用AT89S51单片机来控制六个舵机从而分别控制六自由度机械手的旋转或曲摆。采用Protel99se画图软件进行电路图的绘制。其电路主要分为三大模块:电源开关控制模块;USB接口烧写模块及AT89S51单片机模块。3.1电源开关控制模块如图3-1所示为本电路的电源控制部分,SW2为外加电源开关,SW3为伺服电机电源选择开关,D1外接电源指示,其用途说明如下:图3-1电源开关控制电路图一般单台伺服电机工作时,所需要的电压为5V,消耗的电流为200-300mA。故使用单台伺服电机时,可将SW3切换到5V,也就是将电路板的SW3的1-2脚连接(利用2.54mm排针短路Pin)。此时所有伺服电机的电源均来自USB接口所提供的5V,若一次同时用到多台伺服,那么USB接口所提供的电流就会不够伺服电机使用,此时就必须以外加电源的方式,来供给伺服电机所需的电压及电流。所以将SW3切换到外加电源端,也就是将电路板里的SW3的2-3脚连接并在JPW引脚加入伺服电机所需的电源6V,如此方能有足够的电流提供给多台伺服电机使用。因为本电路使用单片机控制六个伺服电机,所以需要使用外加电源来提供给J1-J6的伺服电机的转动。3.2USB烧写接口模块为了给单片机烧录程序,如果设计的电路板上没有烧录模块,就不得不频繁的插拔单片机在开发板上进行程序的擦写,这样容易造成单片机引脚的折断。为了方便程序擦写,采用了USB-ISP下载线,并在电路板上设计ISP接口模块,然后通过软件Keiluvision2进行程序的擦写。USB-CHIP下载线基本原理是ATMEGA8芯片进行USB串口协议的软件模块和ISP接口下载。图3-2USB接口烧写器电路图该设计的最大特色在于使用了USB接口的烧写电路,除了通过计算机的USB接口烧写程序外,也通过它取得计算机提供的5V电压给电路板使用,故实验的过程中,不再需要电源供应器,便可执行单片机程序的烧写及烧写完成后程序的执行电路图如图3-2所示在上图中,USB1为与个人计算机连接的USB接口的接头,而USB接口共有4个引脚,分别为+5V,D-,D+和GND就是本电路板的电源来源。USB接口通过USBCHIP芯片来完成与计算机的数据传输,最后再经由4条信号线来写入及读取AT89S51的程序代码,也由于使用USB接口来读/写程序,所以适合没有打印机端口的个人计算机或是笔记本电脑编写程序使用3.3单片机最小系统设计Atmel公司的AT89S51芯片是51内核的单片机。AT89S51是一个低功耗,高性能的CMOS8位单片机,片内含8K空间的可反复擦写1000次得Flash只读存储器,具有256bytes的随机存取数据存储器(RAM),32的I/O口,2个16位可编程定时/计数器。此部分模块为AT89S51单片机工作的基本电路,如图3-3所示,其包含的电路功能如下。(1).振荡电路:有XT1晶体振荡器及C1,C2陶瓷电容组成。(2).复位电路:由SW1复位按钮、R2及C3组成。(3).JP0-JP3:单片机AT89S51P0-P3的输出。(4).RE1:为10K的上拉电阻,当AT89S51单片机的P0欲作为输出引脚时,必须用4.7-10k的上拉电阻接于欲当成输出的P0引脚上。舵机需要高电平驱动,标准I/O口上拉电流较小,所以要用上拉电阻,本设计中使用PO口控制,因为PO口外置上拉电阻。3.3.1AT89S51芯片如图3-1所示为MCS-51单片机的基本结构框图,它由8个部分组成,即中央处理器(CPU)、片内数据存储器(RAM)、片内程序存储器(ROM)、输入输出暗扣、可编程串行口、定时/计数器、中断系统及特殊功能寄存器的几种控制方法。图3-3AT89S51基本电路图3-1MCS-51芯片内部基本结构框图单片机AT89S51芯片各个引脚功能见表3-1所示:表3-1AT89S51引脚定义引脚序列接口引脚功能1~8P1.0~P1.78位准双向IO口9RST复位输入口10P3.0/RXD串行输入口/P3.0I/O口11P3.1/TXD串行输出口/P3.1I/O口12P3.2/INTO外部中断0输入口/P3.2I/O口13P3.3/INT1外部中断输入口/P3.3I/O口14P3.4/T0定时计数器0输入口/P3.4I/O口15P3.5/T1定时计数器输入口/P3.5I/O口16P3.6/WR外部数据存储器写选通/P3.6I/O口17P3.7/RD外部数据存储器读选通/P3.7I/O口18~19XTAL1~XTAL2时钟振荡器的输入输出口20GND信号地21~28P2.0~P2.78位双向IO口存储器的高8位地址29PSEN程序存储允许信号端微处理器(运算部件)控制部件BRAMP0口P2口ROMP1口串行口定时/计数器P3口终端系统特殊功能寄存器30ALE/PROG片外存储器地址锁存信号端31EA/VPP片外存储器地址锁存信号端32~39P0.0~P0.7数据/低八位地址复用口40VCC正向电源输入端3.3.2复位电路本单片机的工作方式包括:复位方式、程序执行方式、低功耗操作方式以及EPROM编程和校验方式。单片机不同的工作方式,代表单片机处于不同的工作状态。该单片机的复位方式有上电自动复位和手动复位两种,本系统采用手动复位。单片机复位是使CPU和系统中的其他功能部件都处于一个确定的初始状态,并从这个状态开始工作,例如复位后PC=0000H,使单片机从第一个单元取指令。无论是在单片机刚开始接上电源时,还是断电后或者发生故障后都要复位。单片机复位的条件是:必须使RST引脚加上持续两个机器周期(即24个震荡周期)的高电平。本系统时钟频率为12MHz,每个机器周期为1us,则只需2us以上时间的高电平,在RST引脚出现高电平后的第二个机器周期执行复位。单片机的覅为电路如图3-2所示。图中C5为上电复位电路,它是利用电容充放电来实现的。在接电数瞬间,RST端得电位与VCC相同,随着充电电流的减少,RST的电位逐渐下降。只要保证RST为高电平的时间大于两个机器周期,便能正常复位。除了上电复位外,有时还需要按键手动复位,本设计按键手动复位。按键手动复位有电平方式和脉冲方式两种。其中电平复位是通过RST端与电源VCC按通面实现的。图中C5去22µF,R2去4.7kΩ,只需按下S4键,此时电源VCC经过R2分压,在RST端产生高电平,两个机器周期后单片机复位。3.3.3时钟电路MSC-51单片机格功能部件运行都是以时钟控制信号为基准,有条不紊的一步一步地工作,因此,时钟频率直接影响单片机的速度,时钟电路的质量也有直接影响单片机系统的稳定性。常用的时钟电路设计有两种方式。一种是内部时钟方式,一种是外部时钟方式,本系统采用的是内部时钟方式,利用内部振荡电路。如图3-3所示,本电路的时钟频率为12MHz,电容C6,C7的容量为30pF左右,该电容的大小会影响振荡器频率的高低,振荡器稳定性和起振的快速性,本电路采用30pF的瓷片电容。图3-3时钟电路图3-2复位电路