首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 维修教程知识 > 电子制作
四通道单极步进电机驱动电路
来源:本站整理  作者:佚名  2011-11-23 09:56:47



  微控制器软件

  PIC微控制器的功能是接受PC机通过RS232口发来的命令,并且执行。负责产生和提交控制步进电机的步进脉冲序列。还能产生与指定电机相适应的最佳加速和减速步长周期。这就是为什么项目中采用一个PIC,而不直接用PC机来直接控制步进电机的原因。

  虽然过去在以DOS为基础的计算机程序中,这种实时直接控制方式是可行的。但在当前已不适宜。因为最新的32位WINDOWS操作系统实际上是多任务多线程的,处理器将时间分片利用,这就妨碍了定时的准确和稳定。

  本项目固件采用CCS公司提供的供第三方使用的C语言编译器来编程,它与MICROChipMPLAB环境完全兼容。对于此编译器的更详细的说明和完整的话言资料,可以在CCS的网站上在线获得。代码分为3个文件:

  MAIN,C:PROTOCOL,H和PORTS.H。

  主程序在main.c中;管脚配置定义(各种名字)在ports.h中;而客户通讯协议在protocol.h中定义。固件的源代码可网站下载。

  此项目中的通讯协议十分简单。

  每个命令传送一个字节,如果命令还需要参数,就接着顺序发送参数。例如:为了通知PIC要使步进电机沿原方向运行1000步,需要3个字节:第一个字节为运行命令,其他两个字节指定运行步数(范围在0—65535之间)。根据第一个字节决定所传送命令的总长度。执行命令后,微控制器以一个应答字节通知PC机的软件。如果需要,可以接受更多的命令。

  主程序模块功能是:首先初始化和复位所有的I/O端口。包括设置UART的传输率为38400bit/s。然后,程序进入一个空循环,等待在UART上接到一个命令字节。当接到命令时,程序转入相应的命令处理程序段,可以在UART上接受进一步字节。有效的命令列在下面:

  和减速过程。

  MOVE_A_FW(A向前运行,20H):

  命令后接两个附加字节(16位二进制整数),指定步进电机A朝前方运行的步数。

  MOVE_A_RV(A向后运行,21H):

  命令后接两个附加字节(16位二进制整数),指定步进电机A朝反方向运行的步数。

  MOVE_B_FW(B向前运行,22H):

  MOVE_B_RV(B向后运行.23H):

  MOVE_C_FW(C向前运行,24H):

  MOVE_C_RV(C向后运行,25H):

  MOVE_D_FW(D向前运行,26H):

  MOVE_D_RV(D向后运行,27H):

  以上与MOVEARN和MOVEA_RV类似,分别用于控制B、C、D电机运行。

  在使用PIC编程器进行编程时,不要忘记关闭DEBUG_MODE特性,确认POWER_ON_RESET有效,并且关闭WATCH_DOG_TIMER和BROWN_OUT_DETECT特性。还要确认时钟的速度已设置为20MHz。

  推荐的PIC编程器和开发组件是:

  ELEKTORELECTRONICS公司的PICProg2003,以及MICROCHIP公司的PICSTART及ICD模块(需要外加一个28针接头)。或者使用TAYLICLTD公司提供的能与ICD模块相当的产品代替(价格在50英镑以下),完全与从MICROCHIP公司免费下载的软件兼容。

  PC机的软件PC机的软件用BORLANDDELPHI4语言编写,称作QCCOM32的免费视频元件库(VCL)软件用来做串行口的存取。

  从网站下载的测试程序,用于说明命令是怎样通过串口传送给步进电机的。此程序也可以在站点www.ELEKTOR-ELECTRONICS.CO.UK上免费下载取得。确认QCCOM32的属性设置与固件中UART初始化时的属性完全匹配十分重要。基本数传率=38400bit/s。为使每个命令传到微控制器上,端口要打开,传送所需字节,然后程序等待一个应答信号,最后关闭端口。

  测试与应用在加电之前,先检查所有元件是否正确的安装并焊接牢固。拔掉所有步进电机的连线,然后加电。用电流表测试电路的输出电流。然后用电压表看一下电源电压是否正常。在这一步如果出现任何错误,要立即关掉电源并检查PCB板和连接器。

  当电路加电正常时,5个LED管都应该点亮,表示微控制器电路正常。

  如果仅有一个LED管亮,表示电路已加电,但微控制器固件运行不正确。如果微控制器已经正确编程,那么检查一下在相应管脚接到的电源电压;如果正确,就检查一下振荡器元件(X1、C6、C7),确认这些元件装配正确;如果仍然无效,可试着重新编程,或重新拔插一下微控制器芯片。

  一旦电路正确开始工作。使用一个1:1(非交叉)的九针连接器和电缆将控制器的PCB板与PC机的RS232口相连。运行PC机上的测试软件并选择适当的COM口设置。然后试着测试各命令。在传送一个命令的过程中,4个LED灯灭,一个点亮,以指示使用的是那一个通道。一旦命令执行后.4个LED灯点亮。如果工作过程正确,关闭控制器电源。将一台电机接到某通道上,注意确认相位和公共插头连接正确。然后接通电源,重新测试。启动和停止时,电机应平稳地旋转、加速和减速。

  如果电机出现跳动,运动不平稳,可检查一下各相位连接是否正确。对于步进电机来说,加速不可太快。记住:小的延时周期意味着高的转速。如果你以同样的延时来设置速度,将不会有加速和减速阶段。大多数步进电机以500~1000步延时来工作。

  当所有的测试完成并能正常工作时,你就可以定制你的命令(PC机)软件和控制(PlC)软件,使之包含你所要执行的命令和改进功能。通过较大的修改,还可以控制多台步进电机,使之在任何时候沿不同轴向旋转。本文讨论的这种驱动器可以在机器人上找到。也可用于光学仪器、机器人、照相机或CNC机械工具中部件的精确运动和定位控制。

上一页  [1] [2] [3] 

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)
Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:141,468.80000 毫秒