常潇倩 石婉莹 牛建辉
摘要:本数据采集系统以STM32F103为主控芯片,通过传感器对模拟信号进行调理,下位机对信号进行A/D转换,并保存到FLASH中,再由串口发送到上位机Labview,上位机可对采集到的数据进行存储和显示,实现了对采集到的模拟量实时的监测。
关键词:STM32F103;A/D转换;FLASH;上位机Labview
[中图分类号] TN98 [文献标识码] A
Abstract:The data acquisition system takes STM32F103 as the main control chip, adjusts the analog signal through the sensor, and the lower computer converts the signal A/D, and saves it to flash, and then sends it to the host computer Labview from the serial port.The host computer can store and display the collected data, realizing the real-time monitoring of the collected analog quantity.
KeyWords:stm32f103,A/D conversion,flash,the host computer Labview
引言
航空、導航等领域需要对各类数据进行实时的采集、分析及存储,因此制作出高速度、高精度的数据采集系统必不可少。数据采集可将现实世界中的模拟信号进行采集,并通过上位机Labview进行处理和分析。Labview制作上位机具有很强的灵活性,且制作简单可维护性强;STM32微处理器芯片有高精度、高速等优点,与Labview相结合可提高采集系统的精度以及采集数据的可靠性。
1、数据采集系统总体设计
本系统设计的数据采集系统从功能结构上分主要包括上位机Labview和以STM32微控制器为核心,调理电路和A/D转换模块为主体的下位机等两大部分。
2、硬件部分设计
本设计中所采用的STM32微控制器集成了ADC、SRAM、USART、定时器、FLASH、DMA等外围电路模块。其中ADC的最大转换速率可达1MHz,基本满足采集系统对采集和处理速度的要求,在实际应用中常采用多次采样的平均值作为ADC的转换结果。数据的存储部分采用微控制器自带的FLASH,容量为256K字节,可实现保存的数据掉电不丢失,并且可对存储单元进行反复的擦除和读写,同时还具有读写速度快等优点[1]。
RS485采用双绞线差分信号的传输方式,最远传输距离可达1.2km,具有良好的抗噪声干扰的特点。系统设计中采用RS485总线进行上位机和下位机之间的串口通信。
下位机的程序设计主要包括对模拟信号的采集模块以及与上位机进行通信的串口通信模块。在上电后,程序进入初始化,上位机发送采集指令后,模拟信号经过调理模块、A/D转换模块将数据送到微处理器中,然后再将数据存储到FLASH中保存起来[2]。为解决采集系统的数据采集、接收以及存储在时序上存在的冲突,应在FLASH中开辟两个内存块。
3、上位机软件设计
传统的数据采集系统中的上位机PC软件多采用VB、VC++、DEL-PHI等面向对象的程序设计语言进行设计,但此上位机编程软件调试和编程复杂,对从事硬件设计的工程师来说不太容易,开发周期长,不利于本设计的进行。综合考虑之下采用由美国国家仪器公司开发研制的虚拟仪器平台Labview,Labview图形化的编程语言,使其具有编程简单、开发周期短等特点[4]。
上位机Labview对下位机发送数据采集指令,同时负责接收下位机采集到的数据,上位机对整个系统起到主控作用。上位机包括前面板和后面板,前面板直观清晰地展现了上位机和下位机之间的通信串口的相关参数,波特率以及信号波形的显示。
4、系统串行通信功能模块
选择Labview制作上位机,可方便利用Labview自身函数库中所提供的有关串口通信的函数模块,大大减轻了制作难度,从而实现PC机和下位机之间的互联通信。在本采集系统中需要用到的串口通信模块有:
VISA write、VISA read、VISA close三个模块可实现将字符写入指定串口中,从系统中指定的串行接口读出特定的数据以及关闭串行接口,让出接口的使用权等功能。
5.总结
本文以航空、导航等领域涉及的数据采集问题为背景,设计了以STM32F103为主控芯片,外围结合A/D模数转换模块,FLASH存储模块作为系统的下位机,以设计难度低,界面简洁,图形化的Labview为上位机。可实现对模拟信号进行采集、存储并通过上位机进行显示等功能,并具有采集速率快、精度高、可移植性强、后期维护成本低等特点,可广泛应用于其他领域。
参考文献
[1] 李红刚,张素萍. 基于单片机和LabVIEW的多路数据采集系统设计[J]. 国外电子测量技术,2014,33(4):62-67. DOI:10.3969/j.issn.1002- 8978.2014.04. 018.
[2]张月,陶林伟. 基于FPGA与STM32的多通道数据采集系统[J]. 西北工业大学学报,2020,38(2):351-358. DOI:10.3969/j.issn.1000-2758.2020.02.016.
[3]邵鹤帅. 基于LabVIEW的单片机串口通信技术的研究[J]. 科技信息,2009(34):619,622. DOI:10.3969/j.issn.1001-9960.2009.34.533.
[4]赵圣飞. 基于STM32的数据采集存储系统的设计与实现[D]. 山西:中北大学,2014. DOI:10.7666/d.D494715.