《电子技术应用》

基于ARM Cortex-M3的电路维修智能教辅系统的研制

2017年微型机与应用第6期 作者:无锡机电高等职业技术学校,江苏 无锡 214028
2017/4/8 23:58:00

  蔡妍娜

  (无锡机电高等职业技术学校,江苏 无锡 214028)

        摘要:设计并实现了“学生易学,老师易评”的电路维修智能教辅系统。该系统以STM32处理器为核心,实现了检测数据的采集、A/D转换和存储,应用基于BC417芯片构成的蓝牙模块对信号进行无线传输,用Android手机进行数据存储显示并引导学习。基于Eclipse开发手机软件,内置两种故障排除模式。使用结果表明,系统达到了设计要求,具有简易、智能、有趣、低价的特征。

  关键词教学辅助智能手机;蓝牙;STM32F103

  中图分类号:TP274;TN925文献标识码:ADOI: 10.19358/j.issn.1674-7720.2017.06.009

  引用格式:蔡妍娜. 基于ARM CortexM3的电路维修智能教辅系统的研制[J].微型机与应用,2017,36(6):26-28.

0引言

  电路故障的检测与维修是电子实训的教学重点与难点,主要使用万用表来进行检测。学生能力强弱不均,很难把印制板实物和电路原理图上的测试点建立直观联系。而且以往老师只能对学生是否修复电路做出成果性评价,不能科学地对学生排故能力做过程性评价。

  为解决上述问题,本文从“学生易学,老师易评”的角度出发,基于STM32处理器和智能手机,研制新型教辅系统,使学生可以选择不同的难度模式进行学习,软件能帮助学生建立测量点与电路图之间的思维联系,使老师能够获得学生故障检修与测量的过程数据,为实训成绩的评定提供数据支持。

1总体设计方案

  随着时代的发展,智能手机已经在学生中普及开来,作为信息传播的新媒介,其作用毋庸置疑。能否让手机作为一个链接工具,参与到教学活动中来呢?这就是本系统功能需求的设计初衷,主要解决以下几个问题:

  (1)简易:安装简便,直接替换万用表的表棒就能完成安装。

  (2)智能:在测量过程中,系统能智能记录检测点的参数与测试点的顺序,为评价检测过程提供数据依据。

  (3)有趣:手机应用中提供相应的难度等级选项,学生可以根据自己的学习能力进行选择,在保证绝大多数学生能完成任务的同时,提高学习的趣味性。

  (4)低价:成本小,易于推广。

  系统包括硬件检测电路和手机教辅软件两大部分,硬件检测电路主要包括核心控制模块(含A/D转换)、电源电路、蓝牙模块,整体结构设计如图1所示。

  

001.jpg

  系统选用了STM32F103RBT6芯片作为主控芯片[1]。通过芯片自带的12位高精度A/D对待检测数据进行高速A/D采集,其采集参数通过DMA通道送入ARM芯片内置的1 KB高速内部RAM中。通过主控芯片进行数字滤波后,把得到的数据经过蓝牙模块上传至Android智能手机,与手机端的故障排除助手APP协同工作。

2硬件设计

  2.1电路主控核心及A/D转换的实现

  从设计需求考虑,希望主控芯片资源丰富、尽可能地减少外围元器件,使系统实现小型化,同时要具备相当强的处理能力,能缓存A/D数值并通过蓝牙上传。为此选定意法半导体公司的STM32F103RBT6芯片作为控制核心,采用高性能ARM CortexTMM3 32位RISC内核,最高可在72 MHz的频率操作[2]。采用内部振荡,电路最小系统只需搭建最简单的复位操作,复位信号从NRST引脚输出。

  使用内部12位A/D转换,由于待检测的电路电压最大为12 V,超出A/D转换的量程范围,使用高精度电阻电路进行分压后再送入主控芯片[3]。采集到的数据通过DMA通道传递到内部RAM中。

  2.2电源管理

  从便携和灵活操作需求出发,整体电路与万用表表棒一般大小,手持检测设备配备锂电池对系统供电,根据需要提供3.3 V的电源。

  锂电池向电路供电时,通过XC6206电压调制器输出稳定的3.3 V电压,供给系统工作。在每路电源引线处都并联一个104的电容用于消除电源的高频干扰。对锂电池进行充电时,通过芯片TP4057完成,单节锂电池充满时电压固定于4.2 V,由于芯片具有防倒充功能[4],因此外部元件简单、不需要另加隔离二极管和检测电阻器。将高电位通过按键引到主控芯片的PA0管脚,可以在待机状态下按下按键快速唤醒系统,并通过程序将按键信号送出作为参数记录标记。

  2.3蓝牙通信电路

  操作采集并存储的数据要上传到智能手机,都在同一个操作台,属于短距离的无线通信,蓝牙技术功耗低且传输快,最为适用。本设计选用CSR公司的BC417芯片[5],硬件电路如图2所示。由于整个系统通过锂电池供电,为了尽可能降低整体功耗,3.3 V电源不直接供给蓝牙芯片,而是由STM32主控芯片的PA8来控制,当需要启动蓝牙通信时,PA8输出低电平,三极管Q2导通,蓝牙芯片获得工作电压,并与主控芯片共地,开始工作。发送引脚TX与主控芯片的PA10/RX相连,接收引脚RX与主控芯片的PA9/TX相连,将主控芯片中A/D采集并存储的数据通过蓝牙传送给智能手机。

 

002.jpg

3软件设计

  3.1电路检测端STM32内部程序

  使用KeilμVision4 IDE开发平台,用C语言设计完整的程序。程序流程如图3所示,主程序中首先完成系统的上电初始化,之后按照蓝牙发送、A/D采样、休眠计时的顺序工作。与智能手机进行蓝牙连接,将采集并储存的数据发送给手机,然后继续采集存储,在有检测操作的情况下,循环进行蓝牙发送、A/D采样步骤,如果3分钟内一直没有采集工作,则进入休眠状态,直到被休眠唤醒电路唤醒。

  3.2手机端故障排除助手软件

  使用Eclipse平台开发安卓上位机软件[6]。手机端软件开启后,先通过蓝牙与手持设备进行连接。而后通过选择界面让学生选择故障排除模式,软件内置两种故障排除模式。具体软件流程如图4所示。

003.jpg

004.jpg

  (1)自由模式

  适用于专业能力较弱的学生,自主选择测试点,软件直接接收手持设备测量的各项物理参数,并将其显示在软件界面上;学生根据测试数据自主判断电路故障位置,进行维修。

  (2)引导模式

  适用于专业能力较强的学生,先选择待测设备的故障现象,通过软件算法分析可能的故障位置,引导学生使用手持检测设备对其进行检测。测试结果与软件中存储的正确数据进行比对。若检测结果在正常范围之内,则继续引导学生检测下一可能故障位置。若检测结果不在范围内则缩小故障范围直至找到故障点。

  4数据滤波

  为确保检测电压转换数据的准确性,A/D采样程序中采用了均值滤波算法,通过对实时检测的A/D值进行滤波,最终获得平滑稳定的A/D采样数据。主要代码如下:

  void DataTransfer(u32 *p)

  {

  u32 AdcChannel1=0;

  u8 i;

  for(i=0;i<128;i++)

  {

  AdcChannel1+=ADC_ConvertedValue[i];

  }

  *p=AdcChannel1;

  }

5结论

  为有效地教会学生看懂电路原理图和使用排故流程图,并帮助老师收集学生维修检测的过程数据,研制了本电路维修辅助教学系统,进行了实践教学对比实验,对比结果如表1所示。对比验证结果表明,使用本系统后,学生针对不同种类的故障排故用时都有明显的缩短,全体学生的维修成功率得到显著提升。系统符合设计目的,手机APP开启后,通过蓝牙与手持设备进行连接,选择故障排除模式。使用手持检测设备进行故障检测,ARM芯片与蓝牙发送模块协同工作,手机软件直接接收到手持设备测量的各项物理参数,并在屏幕上正常显示,引导学生进一步操作。

005.jpg

参考文献

  [1] 徐自远. RTX操作系统在STM32RBT6芯片中的移植与应用[J]. 课程教育研究,2015(35):248-249.

  [2] 王永超. 基于STM32F103RBT6的电动汽车电池管理系统研究[D].哈尔滨:哈尔滨理工大学,2015.

  [3] 王慧,陈长征. 基于STM32F103RBT6的振动信号采集系统[J]. 环境技术,2013(5):56-58.

  [4] 霍新新. 压电换能器并联输出特性及接口电路研究[D].大连:大连理工大学,2014.

  [5] 吕立亚,王兆伍. 基于蓝牙的汽车CAN网络信号无线测量系统[J]. 计算机测量与控制,2009,17(2):281-283+286.

  [6] 刘洪星,谢玉山. Eclipse开发平台及其应用[J]. 武汉理工大学学报(信息与管理工程版),2005,27(2):89-92.


继续阅读>>