基于RTThread嵌入式实时系统的三路步进电机控制系统设计.docx
《基于RTThread嵌入式实时系统的三路步进电机控制系统设计.docx》由会员分享,可在线阅读,更多相关《基于RTThread嵌入式实时系统的三路步进电机控制系统设计.docx(10页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、基于RTThread嵌入式实时系统的三路步进电机控制系统设计基于RTThread嵌入式实时系统的三路步进电机控制系统设计网络导语:本文设计实现了一种三路步进电机控制系统,它基于RTThread嵌入式实时系统,进步了系统的实时性和后期的功能扩展才能。摘要:本文设计实现了一种三路步进控制系统,它基于RTThread,进步了系统的实时性和后期的功能扩展才能。系统控制电路采用STM32F4系列的微控制器,结合小功率步进电机驱动器A4988,完成了硬件电路板设计。软件中运用操作系统自带的finsh机制,实现对指令的初步解析,控制系统可以通过读取G指令,控制多路电机按照一定轨迹运动,同时可以调节电机运动的
2、加减速参数。实际工程验证证明该系统具有很好的稳定性。引言随着计算机技术和微电子技术的开展,步进电机作为自动化控制的执行单元,越来越多地运用在各种领域中,许多控制领域需要对多台步进电机进展同步协调控制,如军事、航空、机器人控制。十分是近年度来,随着嵌入式技术和集成化的开展,其应用范围逐步扩大,逐渐扩展到普通民用行业,如小型雕刻机、3D打印等。步进电机作为一种将电脉冲信号转换成相应的角位移或者线位移的机电元件,其最大的优点是易于开环控制、无积累误差。在应用中,对速度、位置的精度控制尤为重要,所以对于电机的控制要具有实时性1。传统上,单片机控制合适比拟简单的电机控制系统,对于复杂的系统,假设电机控制
3、只为其中的一个模块,既要求电机控制模块内部协调运动,又要求与其他模块保持同步,构造复杂,实现难度大。随着单片机本身性能的增强,在嵌入式系统的根底上,完成对多电机的实时协调控制具有很多优点。嵌入式系统的实时性特点可以使其胜任对多电机的协调控制;可裁减性特点可以使得系统容易扩展其他模块;可以支持多任务,使得程序开发更加容易,便于维护,同时可以进步系统的稳定性和可靠性2。本研究基于嵌入式实时系统设计出一套多步进电机控制系统,此系统基于嵌入式技术协同控制三路步进电机,以对多轴系统的速度、位置到达准确控制,并且可以实时调节电机的运动速度。本设计的重点为软件方面对电机的协同控制,使得系统对电机的定位精度到
4、达预期的目的。系统本身很容易地根据不同功能需求扩展出各种功能,具有一定实用价值。硬件电路设计1.1总体设计主控芯片采用内置的UART串口与上位机通信,接收上位机发送的控制指令,并向上位机发送系统当前状态。通过SPI接口读取SD卡中的Gcode文件,主控芯片逐行解析文件中的G指令,根据G指令中位置偏移和速度,最终得到驱动电机的脉冲,进而控制3路步进电机按照推荐速度准确到达目的位置。3路限位开关可以反应电机的位置信息,主要用于初始化步进电机系统,进而规定电机系统内部坐标系。本设计电路中主控制器采用ST公司的STM32F4系列微控制器,电机驱动芯片采用A4988,作为执行机构的步进电机使用两相四线的
5、42步进电机。1.2主控芯片本系统电路中主控芯片采用基于ARM内核的STM32F40x微控制器,芯片内部含有1MBFlash和256KBRAM,完全可以运行小型的嵌入式系统。该微控制器还包括了大量的片上外设资源,非常合适控制类应用。1.3驱动模块本系统电路中电机驱动模块采用Allegro公司的A4988电机驱动器,该驱动器是一个完好的带有内置转换器的微电机驱动器,它可在全、半、1/4、1/8及1/16步进形式时操作双极步进电动机,具有高达35V和2A的输出驱动才能,且控制简单,只需在驱动器相应引脚输入一个脉冲即可驱动步进电动机产生一个微步,程序不必再考虑相序表等电机底层的控制。本设备采用1/1
6、6细分形式,MS1、MS2、MS3引脚需置高电平,主控制器只需控制电机驱动芯片上的ENABLE、DIR、STEP三个引脚即可完全控制此步进电机。ENABLE为步进电机控制器的使能端;DIR为电机的方向控制端,用于控制电机的转动方向;STEP为电机的步数控制端,输入脉冲来控制电机的步数和转速。软件系统设计2.1软件总体设计根据设计需要实现的目的,本文把系统分为不同的子功能,充分利用嵌入式系统多任务的优势,把各个子功能作为系统中不同的任务进程实现,包括:上位机指令解析任务、用户界面显示、记录监视进程、运动规划管理进程、电机驱动任务,各个任务通过嵌入式系统的信号量进展同步。为了保证步进电机系统的实时
7、性,其中电机驱动进程为核心进程,设定其任务优先级最高,除中断外,没有任何进程可以抢占它的CPU控制权。系统设计有用户互交界面,终端选用串口工控彩屏,控制简单,作为系统脱离上位机时的控制方式。本文将主要介绍软件设计电机运动规划和底层驱动的实现:从串口或者SD卡读取运动指令,转换为实际的电机机构的挪动。使用finshshell机制从串口或者直接从SD卡读取指令,识别指令,随后存放入指令缓冲区;运动规划进程获得指令,把它们转化为Block块对象,其中包含了速度、方向、加速度等信息,并参加Planner中的环形缓冲队列中;无论什么时候Planner中存在Block块对象,电机驱动进程都将会启动,读取块
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 RTThread 嵌入式 实时 系统 步进 电机 控制系统 设计
限制150内