基于K60的步进电动机控制系统实验装置设计
2017-04-25管凤旭张西磊吕淑平刘怀东
管凤旭, 张西磊, 吕淑平, 杜 雪, 刘怀东
(哈尔滨工程大学 自动化学院,哈尔滨 150001)
基于K60的步进电动机控制系统实验装置设计
管凤旭, 张西磊, 吕淑平, 杜 雪, 刘怀东
(哈尔滨工程大学 自动化学院,哈尔滨 150001)
研制了一套步进电动机控制实验教学装置。选择合适的单片机是整个电动机控制系统实现的基础,K60系列的微控制器拥有ARM Cortex-M4内核,具有高性能、低功耗和丰富的片上资源等优点,可满足电动机控制系统所需的要求。装置由磁粉制动器、减速器、步进电动机、增量式编码器和控制电路组成,其中控制电路包括自制的K60微控制器最小系统板、电源模块、4×5矩阵键盘模块、力矩控制模块、编码器解码模块以及液晶屏显示模块等。最后,介绍了硬件电路和软件设计过程。关键词:步进电动机; K60微控制器; 编码器解码; 力矩控制
0 引 言
自动控制元件课程是自动化专业一个重要的课程,主要讲授自动控制系统中常用控制元件的结构特点、工作原理、工作特性及其典型应用等[1-2]。其中步进电动机是一个重要的控制元件,是机电一体化的关键执行元件之一,尤其随着微电子和计算机技术的发展,步进电动机的需求量与日俱增,已广泛应用于国民经济领域中需要对位置和角度进行控制的自动控制系统中,例如空调、ATM机、绘图仪、数控机床、3D打印机等[3]。为使自动化专业的学生熟悉和掌握步进电动机的一些工作特性和使用方法,本文自行研制了一套步进电动机控制实验教学装置。
1 系统整体结构
图1 实验装置整体结构示意图
步进电动机控制箱内部安装电路板和配套设备,具体有开关电源、电源模块、K60核心系统电路板、控制电路板、4×5矩阵键盘、蜂鸣器、串口液晶屏、力矩开关、力矩调节旋钮、力矩输出模块和步进电动机驱动器。其中开关电源将AC220 V转换为DC48 V,为步进电动机和其他电源模块提供48 V直流电源;其他电路板与设备之间的关系如图2所示。
图2 步进电动机控制箱组成示意图
2 硬件设计
2.1 主控制器最小系统模块
主控制器是基于ARMv7构架版本和Cortex-M4内核,Freescale公司的Kinetis级微控制器K60系列中的一款芯片MK60DN512VLL10(简称K60)[5-6]。为便于维修,将K60核心系统电路设计成一个独立电路板,主要包括主芯片、晶振、复位、JTAG下载接口和外联接口等电路,图3所示电路为不包含外联接口的最小核心系统电路图。
图3 K60最小系统电路图
2.2 电源模块
电源是整个电路工作的基础,因此首先根据本装置使用需求,设计了多种直流电源,分别为:①48 V为步进电动机驱动器提供动力电,满足步进电动机说明书中提供特性曲线的推荐电源为48 V的需求;②采用购买的48 V转20 V大功率电源模块,为力矩输出模块提供20 V电源,以满足磁粉制动器的电压要求;③采用电源转换芯片LM2596-5 V将20 V转换为5 V(见图4),为串口液晶屏和蜂鸣器以及控制板上的一些电路提供5 V电源;④采用电源转换芯片LM1117-3.3将5 V转换为3.3 V(见图4),为K60核心系统板和控制板中一些电路提供3.3 V电源。
图4 5 V与3.3 V电源电路
2.3 4×5矩阵键盘模块
由于使用20个(4×5矩阵模式)控制按键,为减轻主控制器的负担,采用一款专用芯片ZLG7290[7]完成按键的键码检测,然后用一个I/O口和一路IIC与K60微控制器通信,电路如图5所示。ZLG7290的INT引脚与K60的I/O口PTE25相连,以低电平方式表示有按键按下,然后K60再通过IIC信号线(PTB2和PTB3)读取按键的键码。
图5 4×5矩阵键盘控制电路
2.4 力矩控制模块
力矩控制模块包括力矩开关、力矩调节旋钮和力矩输出子模块,电路如图6所示,其中力矩开关是力矩输出子模块的电源开关,与力矩调节旋钮都安装在控制箱前面板上,供使用者操作。采用L298N为核心的驱动电路作为力矩输出子模块,其输入的20 V电源既作为功率输出电源,而且也通过电源转换芯片7805(其输入电压不能大于30 V),将输入的20 V转换为5 V作为L298N芯片自身工作电源。力矩调节旋钮实际就是一个可调变阻器,K60通过的一个设置为8位精度的A/D接口PTC0-AD,实时获取使用者转动旋钮时产生的0~3.3 V之间电压数字值,然后将该电压数字值换算成PWM信号的占空比值[8-9],并传输给L298N的IN2引脚(IN1引脚接地GND),使功率输出P1口实现输出电压范围为单向0~20 V;同时按照磁粉制动器的电压、电流&力矩的关系表,K60将0~20 V电压值换算成力矩值,并显示到液晶屏上。
2.5 编码器解码模块
图6 力矩控制模块
图7 编码器解码电路
2.6 其他辅助电路
控制板上还有其他辅助电路,简要介绍如下。①蜂鸣器电路。蜂鸣声作为按键按下、电动机失步与堵转的提示音。②串口液晶屏接口电路。不仅其电路简单,只需要一个K60的UART串口和5 V电源;而且程序也很简单,只要向串口发送显示内容即可。③步进电动机驱动器接口电路。考虑到步进电动机运动性能的稳定性、可靠性与控制方式简单等要求,直接使用成品驱动器,能够直接用K60的I/O控制步进电动机的启动、停止、旋转方向、步距角和转动速度,其接口电路如图8所示,其中I/O口PTC8和PTC6可以调整步进电动机的步距角(本装置有3种:整步1.8°、半步0.9°和1/4步0.45°),I/O口PTC14可以修改旋转方向,I/O口PTD1连续发送两个规定的电平信号,可以控制步进电动机转动一个步距角。
图8 步进电动机驱动器控制电路
3 软件设计
步进电动机软件控制程序采用C语言编写[13-14]。面对诸多功能,采用模块化方式编写相应功能函数组,包括主函数、中断处理函数和其他辅助功能函数。
主函数首先调用各种初始化函数,包括UART串口、串口液晶屏、I/O口、定时中断、PWM、正交解码、A/D、IIC等,然后控制串口液晶屏显示工作界面,最后进入检测与控制循环程序中,并准备随时进入中断处理函数。检测与控制程序的主要功能有:力矩旋钮变阻器A/D采集与滤波、按键检测与功能操作(包括步进电动机转向、步距角切换、修改单拍运动频率、修改设定步数、单步启动、连续启动、停止、清零、功能模式切换等)、换算(包括将力矩旋钮变阻器电压值换算成力矩值、实测编码器脉冲数换算成转动角度、单位时间内转动角度换算成转动速度等)、液晶屏显示(包括功能模式状态、正/反转、步距角、频率、设定步数、速度、实测角度、实际执行步数、阻力力矩等)如图9所示。
图9 步进电动机实验装置实物效果图
中断处理函数主要有两个:①采用定时器0作为步进电动机单拍定时中断函数[15],根据按键设定的单拍运动频率换算成定时中断的时间周期,当按下作为步进电动机连续运动的“启动”按键时,使能定时器0的定时中断,在定时中断处理函数中,通过I/O口PTD1连续发送两个规定的电平信号,控制步进电动机转动一个步距角;当步进电动机连续转动完设定的步数时,或者按下“停止”按键时,禁止定时器0的定时中断。②采用定时器1作为编码器脉冲计数定时中断函数,设置为10 ms为定时时间周期,并在检测与控制循环程序前使能定时器1定时中断,定时器1中断处理函数中获取正交解码捕获编码器产生的脉冲数,并且累加脉冲数,同时还进行失步与堵转保护判断与操作。
4 结 语
本文将步进电动机作为研究与控制对象,设计了自动控制元件课程中步进电动机特性测试实验装置。该实验装置具有步进电动机角度检测、A/D检测、按键检测、液晶屏显示、功率设备与步进电动机驱动等功能,能够完成的实验内容有:①步进电动机单步运行状态;②步进电动机步矩角测定;③空载突跳频率;④空载最高连续工作频率的观察;⑤转子振荡状态的观察;⑥平均转速和脉冲频率的关系测定;⑦矩频特性的测定以及最大静力矩特性的测定等。
本文研制的步进电动机控制实验教学装置已经成功的应用于实验教学中,取得了良好的教学效果。因此该系统具有推广使用价值。
[1] 史 震,张 鹏,巩 冰.自动控制元件[M].北京:国防工业出版社,2013:1-6.
[2] 冯 越,姜艳姝,孙真和.自动控制元件[M].北京:中国电力出版社,2010.2-5.
[3] 马文斌,杨延竹,洪 运.步进电机控制系统的设计及应用[J].电子技术应用,2015,41(11):11-13.
[4] 谌娟娟,巨 辉,刘 鹏.基于LabVIEW的步进电机运行特性测试软件开发[J].微型机与应用,2014,33(5):96-98.
[5] 杨东轩,王 嵩.ARM Cortex-M4自学笔记:基于Kinetis K60[M].北京:北京航空航天大学出版社,2013:2-58.
[6] 王日明,廖锦松,申柏华.轻松玩转ARM Cortex-M4微控制器:基于Kinetis K60[M].北京:北京航空航天大学出版社,2014:1-84.
[7] 王 发,艾 红.基于ARM7人机接口与UDP协议的数据采集[J].北京信息科技大学学报(自然科学版), 2014,29(1):90-94.
[8] 陈 柯,李媛媛,方 璇,等.单片机驱动电机的设计与实现[J].实验室研究与探索,2016,35(3):119-122.
[9] 洪俊峰,卜文强,张榕鑫,等.基于STM32 PWM的正弦信号发生器设计[J].合肥工业大学学报(自然科学版), 2014,37(2):188-191,224.
[10] 韩团军.基于MC9S12XS128的直流电机PWM闭环控制系统设计[J].机床与液压,2016,44 (7):109-111.
[11] 殷庆纵.一种简单实用的正交解码脉冲接口电路[J].电子技术,2014(3):65-66,19.
[12] 杨 帆,马新文,张 皓,等.四轴坐标记录仪的设计[J].武汉工程大学学报,2013,35(8):74-77.
[13] 刘光蓉.融入计算思维的C语言实验教学设计.实验室研究与探索,2015,34(10):81-83,103.
[14] 管凤旭,原 新,王 辉,等.C++语言程序设计教程[M].哈尔滨:哈尔滨工业大学出版社,2011:1-149.
[15] 王宜怀,吴 瑾,蒋银珍. 嵌入式系统原理与实践:ARM Cortex-M4 Kinetis微控制器[M]. 北京:电子工业出版社,2012:128-166.
Experimental Device Design of Stepping Motor Control System Based on K60
GUANFengxu,ZHANGXilei,LÜShuping,DUXu,LIUHuaidong
(College of Automation, Harbin Engineering University, Harbin 150001, China)
Stepping motor is an important control element. It is widely used in the automatic control system in the production field. In order to make the students of automatic control specialty master the working characteristics and usage of stepping motor quickly, a new stepping motor control experimental device is developed. The basic requirement for the whole motor control system is to select the suitable microcontroller. The microcontroller of K60 series has a kernel of ARM Cortex-M4. It has many advantages such as high performance, low power consumption, and rich resources on chip. It can meet various function requirements of motor control system. The experimental device is made of magnetic powder brake, reducer, stepping motor, incremental encoder, control circuit and so on. The control circuit is made of K60 minimum system board made by ourselves, power control module, 4×5 matrix keyboard module, torque control module, encoder decoding module, LCD module and so on. In this paper, the designs of hardware and software are introduced in detailed. The experimental device gets good teaching results.
stepping motor; K60 microcontroller; encoder decoding; torque control
2016-07-25
黑龙江省高等教育教学改革项目(JG2014010671);中央高校基本科研业务费专项资金(HEUCF160405)
管凤旭(1973-),男,黑龙江哈尔滨人,副教授,现主要从事计算机控制与应用、生物特征模式识别与智能控制研究。
Tel.:0451-82518261; E-mail: guanfengxu@hrbeu.edu.cn
TM 301.2
A
1006-7167(2017)03-0075-04