基于STM32的智能参数测试仪的设计方案

出处:电子技术网 发布于:2014-03-12 09:46:15

  摘要:本文针对目前市场上存在的一些电磁继电器参数检测仪器的缺点,为了能够采集电磁继电器的吸合电压等主要参数,采用ARM技术和上、下位机方法,设计了一款基于ARM Cortex-M3芯片STM32F103ZET6单片机控制的电磁继电器综合参数检测仪的方案。该仪器可完成对动断、动合、转换型直流继电器的线圈电阻、触点接触电阻、吸合电压、释放电压、吸合时间、释放时间等参数的测试。

  0 引言

  产品检测是生产厂家和用户都关心的问题。在产品生产过程中,检测是必不可少的一部分,有的还是工艺过程的一道工序。电磁继电器是电力系统以及其他电气控制系统中常用的开关元件,它们的可靠性是电力系统和其他电气控制系统可靠运行的重要保证,因此,必须对继电器的特性参数进行准确的测试。电磁继电器的电气参数主要有线圈电阻、触点接触电阻、吸合电压、释放电压、吸合时间、释放时间等。这些参数对研究继电器可靠性、动态性能具有重要意义,是保证其质量特性的重要参数。

  1 系统总体架构

  1.1 系统硬件结构

  系统硬件主要包括UART 串口通信模块、JTAG 接口模块、测试结果显示模块、检测程序存储模块FLASH、检测电路模块以及SRAM 模块。系统总体硬件结构框图如图1 所示。

  

  1.2 系统微处理器

  本系统主要由检测部分和显示控制部分组成。在本设计中,采用了高性能的ARM Cortex 芯片STM32F103ZET6.

  该芯片内部采用哈佛结构,其中集成有64 KB 的RAM 和512 KB FLASH,并且具有运算速度快、体积小和低功耗的特点,完满足本设计的要求。Cortex-M3 是一个32 位的核,它采用的是Tail-Chaining 中断技术,多可减少12 个时钟周期数,基于硬件进行中断处理,通常可减少70% 的中断。Cortex-M3 还采用了新型的单线调试(Single Wire) 技术,可对独立的引脚进行调试。

  1.3 系统工作流程

  系统上电后,首先完成对各个寄存器的初始化工作,然后等待开始检测命令;单击上位机界面上的START 命令,然后上位机给单片机发送开始检测命令;单片机接到开始命令后开始向检测电路发送检测命令,然后单片机处理检测电路发回的数据,得出继电器的各个参数,通过串口把这些参数显示在上位机的界面上。

  2 系统硬件设计

  2.1 驱动电压的设计

  为了准确测出继电器的吸合电压,必须得到一个从0 开始按照一定量增大的电压源,每次增大的电压量越小,测试的结果越准确,但是所要求的电路也越复杂,所以我们必须根据实际的要求在这中间找到一个平衡点。图2 所示为系统驱动电压电路。

  

  图2 中,TL431用于给TLC5615 提供2.5 V 的基准电压源,DA_DIN 是串行数据输入端,DA_CS 是低电平有效的片选信号输入端,DA_SCK 是串行时钟输入端,DOUT 是用于级联的串行数据输出端,OUT 是DAC 模拟电压输出端,输出模拟信号。由于从TLC5615 输出的模拟信号很小,不能驱动继电器,所以,本设计在后面又加上了放大电压电路和放大电流电路。

  2.2 集成切换网络的设计

  本系统的集成切换网络是利用继电器的开关工作原理完成的,利用单片机发出的不同指令控制继电器的闭合,从而切换到不同的测试电路模块。在测试吸合/ 释放电压时,首先ARM Cortex 发出测试参数为吸合/ 释放电压的指令。集成切换网络根据指令,切换到Prog_v 一侧,XQ1I 连接所测继电器触点一端,具体电路如图3 所示。

  

  为了解决单片机的I/O 驱动能力不足的问题, 选用ULN2003 作为继电器的驱动芯片。ULN2003 是高压大电流达林顿晶体管阵列电路,它具有工作地电压高,工作电流大,灌电流可达500 mA,并且能够在关态时承受50 V 的电压,输出还可以在高负载电流并行运行。它采用集电极开路输出,输出电流大,故可直接驱动继电器。ULN2003 的每一对达林顿管都串联一个2.7 kΩ 的基极电阻,在5 V 的工作电压下它能与TTL 和CMOS 电路直接相连,可以直接处理原先需要标准逻辑缓冲器来处理的数据。通常单片机驱动ULN2003 时,上拉2 kΩ 的电阻,同时,COM 引脚应该悬空或接电源。

  2.3 数据处理及与上位机的通信

  接收到的数据通过异步串口管脚与3.3 V 转换芯片MAX232 相连,外接串口线同PC 机进行通信,接收和发送数据,STM32 作为下位机负责接收上位机的指令以及控制各部分电路并处理数据,然后向上位机发送数据,PC 机接收数据,并通过VC 编程把接收的数据通过界面显示出来。这里PC 机的VC 通过串口发送命令给STM32,主控芯片接收命令并判断有效,即可开始控制电路进行工作[6].由于篇幅所限,本文未对STM32 的系统硬件部分作详细说明。

  3 系统软件设计

  系统软件部分主要包括STM32 微处理器控制程序和上位机程序两部分。由于下位机软件使用C 语言来开发,所以选择了一款支持C语言编程的开发环境。由于使用的是J-LINK接口调试方式[7],选择用IAR SYSTEM 作为下位机的控制平台开发工具。

  3.1 微处理器控制程序

  图4 所示是本系统的微处理器控制程序。本程序的部分是线圈电阻子程序、触点电阻子程序、吸合/ 释放电压子程序、吸合/ 释放时间子程序。

  

  3.2 吸合电压算法设计

  对于吸合/ 释放电压的测试,这里将对比三种测试算法:

  二分算法、步进自适应中值算法和差异比较算法[8].

  3.2.1 二分算法

  函数f(x),对于一个实数a,当x=a 时,若f(a)=0,则把x=a 叫做函数f(x) 的零点。设f(x) 在区间(X,Y) 上连续,a、b 属于区间(x,y),且f(a),f(b) 异号,则在区间(a,b) 内一定存在至少一个零点,然后求f[(a+b)/2].假定a<b,f(a)<0,f(b)>0,那么:

  如果f[(a+b)/2]=0,则x=(a+b)/2 就是零点。

  如果f[(a+b)/2]<0,说明区间((a+b)/2,b) 内有零点,再次对新区间((a+b)/2,b) 取中值代入函数,进行中点函数值判断。

  如果f[(a+b)/2]>0,说明区间(a,(a+b)/2) 内有零点,再次对新区间(a,(a+b)/2) 取中值代入函数,进行中点函数值判断。

  通过以上反复的区间取值,可以把f(x) 的零点所在小区间收缩一半,使区间的两个端点逐步迫近函数的零点,终以求得零点的近似值。

  这就是二分算法的基本原理。

  3.2.2 步进自适应中值算法

  同简单二分算法一样,确定A、B 两个电压值,其中A 无法使触点吸合,B 保证发生触点吸合。然后求得A、B 的平均值C,如果C 小于触点的阈值电压,则在B 电压量的基础上步进式地减小一定幅度的电压X,得到电压量D ;如果C 大于触点的触发电压,那么在A 电压量的基础上,步进式地增加一定幅度的电压X[9],然后重复以上步骤。如果发生某一步进增加时,触点发生吸合,则继电器的吸合电压介于触点触发的前后两个电压平均数值之间。

  3.2.3 差异比较算法

  差异比较算法是通过比较输入值和输出值的大小,将发生差异型变化的数值进行筛选并记录。选择这个算法主要是针对二次发生的吸合释放过程。

  三种算法中,二分算法有可能让程序进入死循环,差异比较算法相对前两者速度较慢,所以本系统终采用步进自适应中值算法。

  3.3 上位机程序设计

  本系统的上位机界面程序采用C++ 程序编写,它主要包括参数设置区域、参数显示区域、继电器类型选择和控制按键等几部分。参数设置区域是完成对所测继电器的相关参数上下限参数的设置,比如吸合电压上下限的设置。参数显示区域是显示所测参数大小的,这里还包括了一个参数选择复选框,如果选上则表示需要对此参数进行检测,如果不选则系统不对此部分参数进行检测。图5 所示为其上位机界面。

  

  3.4 实验结果

  在调试好的样机上分别可对吸合电压等六个参数进行测试,为了减少测试数据的偶然性,每个参数均测试了八组数据进行处理,实验结果如表1 所示。从表1 中的数据可以发现,其测试数据变化范围小,系统性能较稳定,总体性能能够令人满意。

  

  4 结语

  本文是结合前人的研究成果基础上而提出的一种基于STM32 的智能参数测试仪的设计方案,该方案中所设计的测试仪由STM32 作为主控芯片,并结合先进的电子测量线路来对继电器的主要电气参数进行测量。实验结果表明,本系统测试结果准确性高,工作稳定,总体性能令人满意。(作者:杨备备,张文超,杨波,高惠芳)

关键词:STM32参数测试

版权与免责声明

凡本网注明“出处:维库电子市场网”的所有作品,版权均属于维库电子市场网,转载请必须注明维库电子市场网,https://www.dzsc.com,违反者本网将追究相关法律责任。

本网转载并注明自其它出处的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品出处,并自负版权等法律责任。

如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。

广告
上传BOM文件: BOM文件
*公司名:
*联系人:
*手机号码:
QQ:
应用领域:

有效期:
OEM清单文件: OEM清单文件
*公司名:
*联系人:
*手机号码:
QQ:
有效期:

扫码下载APP,
一键连接广大的电子世界。

在线人工客服

买家服务:
卖家服务:

0571-85317607

客服在线时间周一至周五
9:00-17:30

关注官方微信号,
第一时间获取资讯。

建议反馈

联系人:

联系方式:

按住滑块,拖拽到最右边
>>
感谢您向阿库提出的宝贵意见,您的参与是维库提升服务的动力!意见一经采纳,将有感恩红包奉上哦!