1、课程设计报告 题目:基于STM32的LVDT位移测量系统设计姓名: 班 级: 学 号: 西北工业大学自动化学院 20 基于STM32的LVDT位移测量系统设计任务书1设计目的与要求设计一个基于STM32控制器的LVDT数字测量系统设计,要求认真并准确地理解有关要求,按组完成系统设计,具体设计要求如下:(1)对流体传动管道中的压力进行,测温范围及精度:38mm,0.5%。(2)LVDT信号的调制与解调,测量数据存储功能,掉电不丢失;(3)4位八段码实时数据显示;(4)通过RS232通信接口与上位机进行数据通信;(5)功能按键、指示灯和蜂鸣器报警。2设计内容(1)查阅资料,熟悉设计内容;(2)根据
2、设计要求选择传感器,确定系统方案和主控芯片;(3)根据系统方案分别设计单元电路;确定元器件及元件参数;(4)画出电路原理图,正确使用逻辑关系。3编写设计报告写出设计的全过程,附上有关资料和图纸,并写出心得体会。 目录1. 引言12. 设计方案22.1. 任务分析22.2. 设计思路23. 详细设计33.1. 主控制器模块33.1.1. 微处理器电路33.1.2. 电源模块43.1.3. JTAG/SWD电路43.2. LVDT传感器的测量原理与电路设计53.2.1. LVDT传感器的测量原理53.2.2. LVDT传感器电路的设计53.3. 显示模块83.4. 串口通信模块93.5. 存储模块
3、104. 总结与体会 (不宜过长)11附录1 MAX721912附录2 I2C总线14基于STM32的LVDT位移测量系统设计摘要: LVDT可以用来测量物体的伸长度、震动频率、振幅、物体厚薄程度和膨胀度等精确数据。具体还可以用在机床工具和液压缸的定位,以及辊缝和阀门的控制等。LVDT还有无摩擦测量、无限的机械寿命、坚固耐用、环境适用性等优点,这使它应用范围也非常广泛。本文将基于ARM Cortex-M内核的32位微控制器,即STM32设计一款的LVDT位移测量器,以期能够实现LVDT的位移测量。工作简单流程即通过LVDT传感器获得电压信号,进行信号的简单调理并送入STM32 芯片进行处理。S
4、TM32主控电路将获取到的数据实现实时的显示存储并传输给PC端进行后续的处理。本文将简单介绍设计思路与设计方案,并且详细介绍该硬件主控制器设计,LVDT数据获取,数据显示,串口通信,存储等功能模块。关键词: STM32;LVDT传感器;译码显示;E2ROM 1. 引言随着科学技术的发展,测试工作量的不断加大,测试任务也越来越复杂,对测量的准确度要求越来越高。多年来,我国精密测量技术和仪器经历了许多变革,从最早广泛应用的机械仪表,到后来发展的光学、电学仪表,以及采用微处理器做成的智能仪表从静态测试到动态测试以及由计算机数字控制的多参数自动测试。由此可见,新的测试技术总是随着电子技术的飞速发展以及
5、计算机科学技术的应用不断地更新换代。位移传感器已经渗透到我们的生活之中。位移传感器的种类繁多,用途也各不相同,精度、量程更是千差万别。为位移传感器分类不是一件容易的事。常见的有电容式、电感式、还有精度较高的光纤式、激光式位移传感器。随着科技的发展,位移传感器家族必然会增加新的成员。现在较为常用的是电容电感式位移传感器,因为它们测量精度较高,价格也便宜于光纤、激光式传感器。在多数场合能够胜任。电感式传感器也有不同的总类,如单螺线管式、间隙式、差动变压式等等。其中精度最好的是差动变压式位移传感器,它的工作原理简单,可靠性高,特别是测量精度较高,因此在工业生产中被广泛的应用。在信息采集系统中,传感器
6、通常处于系统前端,即检测和控制系统之首,它提供给系统处理和决策所必需的原始信息,因此,传感器的精度对整个系统是至关重要的。在位移、速度及加速度的测量中,经常使用差动变压器式传感器,原因是其灵敏度高、线性好且有配套集成电路,月贻精密长度测量仪是一种利用线圈自感或者互感的变化来实现测量的装置,具有灵敏度及分辨力高、线性度好、工作可靠、寿命长、易于实现监控等优点,广泛应用于工业、农业、医疗、军事等很多领域。随着时代科技的迅猛发展,微电子学和计算机等现代电子技术的成就给传统的电子测量与仪器带来了巨大的冲击和革命性的影响。常规的测试仪器仪表和控制装置被更先进的智能仪器所取代,使得传统的电子测量仪器在远离
7、、功能、精度及自动化水平定方面发生了巨大变化,并相应的出现了各种各样的智能仪器控制系统,使得科学实验和应用工程的自动化程度得以显著提高。差动变压器式位移传感器广泛应用于工业现场的领域测试,如过程检验、自动控制和形变测量等。该设计题目主要实现位移测量功能,具有一定的设计研究意义,除了测量位移本身外,其他的很多物理量也可以通过转化为位移来测量,测量精度也相对原始的方法较高。STM32 系列芯片STM32F103,STM32F103 是基于 ARM Cortex-M3 内核的 32 位嵌入式微处理器,它具有出色的内核性能,丰富的外部接口和低功耗。该设计系统采用STM32单片机作为核心控制器件,实现磁
8、棒的小距离位移的精确测量。本设计首先采用AD598元件提供用来驱动LVDT的激励电压,磁芯移动,差动变压器的两个副线圈输出电压信号经过解调、滤波、放大后输出到A/D转换器,A/D转换结果送入单片机进行数据处理、存储,最后将结果通过四位七段数码管显示并传送至PC端。整个系统结构合理,设计简洁,性能稳定,具有较强的抗干扰能力。2. 设计方案2.1. 任务分析此次设计,将使用STM32F103芯片获取LVDT传感器的数据,并进行简单的处理,最终将数据传往PC端。具体可分为如下几个任务:l 实现LVDT数据的获取l 对LVDT数据进行处理并显示l 将数据实时传输至PC端l 完成数据的实时存储,掉电不丢
9、失2.2. 设计思路1.2.2.1.针对以上任务,本次设计以嵌入式模块STM32F103为核心,、通过八段数码管实时显示LVDT传感器的信息,方便用户观察,并可以通过串口将主要信息传送到PC端以进行后续的处理。另外,为了防止掉电数据丢失的情况发生,加入E2ROM存储器件以进行实时的数据采集与存储。总体框架结构如图1所示。图 1主控模块:主控模块以STM32F103作为系统的主控制器,其最小系统电路包含电源电路,复位电路,时钟电路,这些均为芯片运行所必需的外接电路模块。LVDT模块:LVDT模块功能是获取外界位移物理量并且将其转化位电压信号传送至主芯片的AD转换通道,处理器将获取的到的电压信号按
10、照建立好的数学模型进行逆解获取位移信息。显示模块:显示模块功能是将获取到的位移信息通过4位八段译码器显示出来,实现位移变量的实时监测。通讯模块:通讯模块将单片机与PC互联,实现单片机与PC端的信息交互。将LVDT传感器获取到的数据传送至PC可以实现信息的互联,为后续开发留下接口。存储模块:存储模块的功能是将获取到的进行数据存储并保护,防止单片机工作过程中出现意外情况而丢失数据。3. 详细设计3.1. 主控制器模块3.1.1. 微处理器电路1如Error! Reference source not found.为 STM32 电路设计图。图 2STM32F103RBT6 主要技术指标如下:l 最
11、高频率72MHz,1.25DMIPS/MHzl 128KB的FLASH,20KB的通用SRAMl 时钟,复位和电源管理;电压范围2.03.6V,可外接325M晶振,自带内部RC,用于RTC的32KHz晶振l 低功耗管理:有睡眠、停机和待机模式,突然掉电时可用电池为RTC和备用寄存器供电l 2个12位1s A/D , 2个12位D/Al 12通道DMA控制器,支持TINIER,ADC,DAC, IS,SPI,IC和USARTl 多达10个带有引脚重映射功能的定时器:4个16位通用定时器,1个16位马达专用PWM定时器,2个看门狗定时器,1个24位系统嘀嗒倒计数定时器,2个用于DAC的16位基础定
12、时器l 14个带有引脚重映射功能的通信接口:2个IC接口,3个USART,3个SPI接口,2个CAN接口,USB2.0全速设备,10/1 OOM以太网MAC可以看出,STM32F103RBT6是一款具有极其丰富的片内外设,在本设计中将使用其自带的AD转换器进行信号的电压转换。3.1.2. 电源模块系统采用锂电池供电,通常的锂电池电压输出为3.7V,而系统正常工作需要5V和3.3V电压,其中STM32需要3.3V电压进行供电,液晶显示的LCD电路以及蓝牙通讯模块需要5V电压供电。因此,设计中采用两级变压方式,第一级将3.7V电压升至5V,第二级将5V电压降至3.3V对控制器供电。采用自举电路可以
13、将电源输出的电压升至5V,同时,对应于锂电池使用过程中的电压下降,自举电路也可以大致稳定输出电压不变,因此能够使用简单的自举电路完成升压过程。Error! Reference source not found.是将SV电压转换成3.3V的电路,在此选用LM1117-33芯片。它是一个低压差电压调节器系列,提供了电流限制和热保护,符合本系统的要求。图 33.1.3. JTAG/SWD电路JTAG(Joint Test Action Group)是一种国际标准测试协议,主要用于芯片内部测试及系统进行仿真、调试。在S TM32F 103RB T6处理器中,利用JTAG可以直接控制芯片的内部总线以及I
14、/O口,通过JTAG接口,可对芯片内部的所有部件进行访问,是开发调试嵌入式系统的一种简洁高效的手段。在设计中,对于nTRST, TDI, TMS, TDO端口,分别用lOK的上拉电阻上拉至3.3V。电路设计如Error! Reference source not found.所示。图 43.2. LVDT传感器的测量原理与电路设计3.2.1. LVDT传感器的测量原理差动变压器(LVDT)的原理比较简单。它就是在一个线圈骨架(1)上均匀绕制一个一次线圈(2)作励磁。再在两侧绕制两个二次线圈(3与4),与线圈同轴放置一个铁芯(5),通过测杆(6)与可移动的物体连接。线圈外侧还有一个磁罩(7)作屏
15、蔽,如图5所示。图 5图 6在未引入铁芯以前,一次线圈通入交流电流后产生一个左右对称的沿轴向分布的交变磁场。交变磁场在两个对称放置的二次线圈上产生的感应电动势当然相等,引入铁芯后,铁芯在一次交变磁场的激励下,产生沿铁芯中心轴(当然也是线圈的中心轴)分布并与铁芯对称的交变磁场。这样,线圈中心轴上的磁感应强度就成为铁芯位置的轴向分布函数,于是两个二次线圈的感应电动势Es1与Es2也成了铁芯位置的函数。如果设计得当,两者可成为线性函数关系。将两个二次线圈差接后,即可获得与铁芯位移成线性关系的二次输出:Es=Es1-Es2。这就是LVDT的简单工作原理(如图6示)。3.2.2. LVDT传感器电路的设
16、计LVDT是一种机电换能器,它的输入为磁芯机械位移,而输出为一对与磁芯位移成比例的AC电压信号,而我们所需要的是DC电压信号,所以还要用到AD598信号调理器来调制信号,下图是AD598的功能图:图 7AD598为LVDT提供激励电源,检测LVDT次级绕组的输出电压,并提供一个与可动磁性位置成比例的DC输出电压。AD598由正弦波振荡器(OSC)、用来驱动LVDT初级绕组的功率放大器(AMP)、用来确定LVDT两个次级绕组输出电压之差与和的比例关系的解调器、滤波器(FILTER)和输出放大器(AMP)组成。由于设计要求为位移量程为38mm,精度0.5%,经过比较选择Schaevitz HR10
17、00型LVDT()。下图是AD598采用15双电源时与Schaevitz HR1000型LVDT的连接图:图 8确定LVDT位移测量子系统所要求的带宽fSUBSYSTEM小于10HZ,取f=10HZ;选择LVDT激励频率约为2.5KHZ;选择工作范围在2.5KHZ的LVDT,实例中选择的Schaevitz HR1000型LVDT工作在400HZ5KHZ,所以符合要求;确定LVDT次级绕组电压VA和VB之和。根据生产商的数据手册VPRI=3Vrms,调节磁芯到中间位置,此时有VA=VB,测量的两个之和VA+VB=2.80Vrms。确定LVDT的最佳激励电压VEXC,对于AD598的最大线性度和最
18、小噪声敏感系数来说,AD598输入信号VSEC的范围为13.5Vrms,所以选择VSEC=3Vrms。因此LVDT的激励电压为:VEXC=VSEC*VTR=4.97VrmsVTR为LVDT的电压转换率:VSEC为用典型驱动电平VPRI驱动LVDT,并且磁芯到期满刻度时,次级绕组输出信号到最大时的输出电压。对于输入电压为V时,根据下图来确定激励信号幅值的电阻R1=6K;图 9激励电压VEXC与R1的关系图选择确定激励频率的电容C1:=3.5C2、C3、C4是AD598构成的位移测量子系统带宽的函数,它们的取值应该相等:C2=C3=C4=;为了计算AD598增益和满刻度输出范围调节电阻R2,需要了
19、解以下几点信息:LVDT的灵敏度S=0.39mV/V/mils;满刻度可动磁芯位移d=1inch;生产商推荐的初级驱动电平VPRI和VA+VB的值;对于满刻度的d的位移来说,AD598的输出电压按下式来计算:Vout测量要相对与信号Pin17进行,如连接图,又由AD598手册,Vout=22V。求出R2=52.6K。针对上例,Vout与d的关系如下所示:图 10d(inch)Vout(V)+11+1-11-13.3. 显示模块系统采用的芯片为MAX7219。MAX7219是一个高性能的多位LED显示驱动器,可同时驱动8位共阴极LED或64个独立的LED。MAX7219 采用串行接口方式,只需L
20、OAD、DIN、CLK三个管脚便可实现数据传送。DIN管脚上的16位串行数据包不受LOAD状态的影响,在每个CLK的上升沿被移入到内部16位移位寄存器中。2MAX7219的串行数据标记为D15D0,其中低8位表示显示数据本身,最高的4位D15D12未使用,寻址内部寄存器的地址位占用D11D8,选择14个内部寄存器。3MAX7219 内部具有14个可寻址数字和控制寄存器。其中的8个数字寄存器由一个片内88双端口SRAM实现。具体电路如图11所示:图 113.4. 串口通信模块位移测量系统需要与PC端进行通讯4。在这里我们采用MAX RS232作为串口。由于RS 232信号的电平和单片机串口信号的
21、电平 不一致,必须进行二者之间的电平转换。MAX232由 单一的+5 V电源供电,只需配5个高精度10 UF50 V 的钽电容即可完成电平转换,转换后的串行信号TXD, RXD直接与上位机的串口连接采用电平转换芯片MAX232实现TTL逻辑电平和RS232电平间的相互转换,转换之后的串行信号TXD RXD直接与PC机的串口连接MAX RS232的接口电路设计图如图12所示5图 123.5. 存储模块在设计中,为了防止掉电数据丢失的情况发生,需要这样一种存储器,它既能写入数据,又能在掉电情况下将数据保存下来,经过查阅资料,我们选择了E2PROM,也就是可用电信号擦除的可编程ROM。这是一种可擦除
22、的可编程ROM(PROM),其中存储的数据可以擦除重写,因而在LVDT位移测量系统设计中它便成为一种比较理想的器件。24C02是一个2K串行CMOS E2PROM,内部含有256个8位字节,该器件通过I2C总线接功能列表。I2C总线是两线式串行总线,是提供集成电路之间同步通信的一种特殊形式,通过串行数据(SDA)线和串行时钟 (SCL)线在连接到总线的器件间传递信息,是一个双向的两线连续总线,暨I2C总线,I2C总线是由数据线SDA和时钟线SCL构成的串行总线,可发送和接收数据。在单片机与被控IC之间,最高传送速率100kbps。对于I2C总线的描述见附录2。管脚名称 功能A0 A1 A2这三
23、个引脚用于多个器件同时使用时设置区分器件地址,当这些引脚悬空时默认0。在同一总线中最多可同时使用8个24C02器件。如果总线只有一个24C02器件被寻址,这三个地址可悬或接地。SDA双向串行数据/地址管脚,用于器件所有数据的发送或接收,SDA是一个开漏输出管脚。SCL串行时钟。串行时钟输入管脚用于产生器件所有数据发送或接收的时钟,这是一个输入管脚。WP写保护引脚。当WP引脚连接到VCC时芯片里面的内容为只读内容而不能进行写操作。而当WP引脚连接到VSS时芯片里面的内容可进行正常的读/写操作。VCC+1.8V6.0V工作电压VSS接地表格 1电路连接图如图所示:图 134. 总结与体会 在这次课
24、程设计中,我们小组合作,完成了关于数字式流量测量系统的设计。其中我负责的是串口设计。这也是比较简单的一部分。由于系统要求,我通过查阅资料以及参考以前学过的课程内容发现了RS232并不能直接连接上位机,需要一个中间接口来完成工作,就是MAX232并在同学和老师的帮助下采用专门的软件进行了电路连接图的绘制工作,并将基本原理分析与汇总,达到了课程设计要求,并最终与大家合作完成了本次课程设计。这次课程设计中,一开始我对于ad软件的使用不是很熟练,后来通过同学的指点和网上查阅资料才基本掌握了操作,即便如此我画的电路图也经过了很多次修改才最终完成。我还在网络上寻找了RS232与MAX232的连接线路图,通
25、过学习对此有了初步的了解。通过这次课程设计,我深刻的体会到了“纸上得来终觉浅”的道理,书本上教给我们的知识和实际运用的知识是存在很大差距的,我们要将压力转换为动力,努力践行实践精神,将学习和实践真正的结合在一起。参考文献 1 武利珍,基于STM32的便携式心电图仪的设计与实现M浙江:杭州电子科技大学,20092 夏莉英,陈雁基于MAX7219的LED显示系统J工业控制计算机,20093 张志清串行接口8位LED显示驱动器MAX7219J.国外电子元器件,1998.4 陈传波,杜鹃,张智杰WIN32下基于RS232协议的通信方法及应用研究J南昌大学学报工科版,2005,27(3):71-745
26、李朝青单片机原理及接口技术.北京:北京航空航天大学,2005.6 高强;赫荣杰;李树良串行E2PROM的读写应用J东北微电子研究所,2004,(04)7 郭文华基于I2C总线的串行E2PROM及其应用J.常熟理工学院学报,2008,(10)附录1 MAX7219 内部寄存器说明A、译码方式选择寄存器 地址:09H赋值:FFH 表示使用MAX7219内部的BCD译码器00H 表示不使用MAX7219内部的BCD译码器B、亮度调节寄存器 地址:0AH赋值:00H0FH 可改变MAX7219所驱动的LED的亮度,其变化范围在1/3231/32之间C、扫描位数设定寄存器 地址:0BH赋值:00H 所有
27、位不显示01H07H 依次对应于18位及前面位全部显示(即需显示的位应为“1”)D、待机模式开关寄存器 地址:0CH赋值:00H LED全灭01H LED正常显示E、显示器测试寄存器 地址:0FH赋值:00H LED为正常显示状态01H LED测试状态,即LED全亮F、8位LED显示数据寄存器 地址:01H08H对这些寄存器赋值(即需显示的内容),就会在对应的18位LED数码管上显示出来MAX7219的外部引脚分配管脚描述管脚名称功能1DIN串行数据输入端口。在时钟上升沿时数据被载入内部的16位寄存器。 2,3,5-8,10,11DIG 0DIG7八个数据驱动线路置显示器共阴极为低电平。关闭时
28、7219此管脚输出高电平。4,9GND地线(4脚和9脚必须同时接地)12LOAD载入数据。连续数据的后16位在LOAD端的上升沿时被锁定。13CLK时钟序列输入端。最大速率为 10MHz.在时钟的上升沿, 数据移入内部移位寄存器。下降沿时, 数据从DOUT端输出。14-17,20-23SEG ASEG G,DP7 段和小数点驱动,为显示器提供电流。当一个段驱动关闭时,7219的此端呈低电平。18SET通过一个电阻连接到VDD 来提高段电流。19V+正极电压输入,+5V24DOUT串行数据输出端口,从DIN输入的数据在16.5个时钟周期后在此端有效。附录2 I2C总线一I2C总线数据的传送规则1
29、.开始信号:在I2C总线工作过程中,当SCL为高电平时,SDA由高电平向低电平跳变,定义为起始信号,起始信号由主控机产生。如图所示(开始信号)2.停止信号:当SCL为高电平时,SDA由低电平向高电平跳变,定义为停止信号,此信号也只能由主控机产生。如图5-22所示。(停止信号)3.应答信号与非应答信号:I2C总线传送的每个字节为8位,受控的器件在接收到8位数据后,在第9个脉冲必须输出低电平作为应答信号,同时,要求主控器在第9个时钟脉冲位上释放SDA线,以便受控器发出应答信号,将SDA拉低,表示接收数据的应答(如图所示)。若果在第9个脉冲收到受控器的非应答信号(如图5-24所示),则表示停止数据的
30、发送或接收。 (应答信号) (非应答信号)其次,每启动一次总线,传输的字节数没有限制。主控件和受控器件都可以工作于接收和发送状态。总线必须由主器件控制,也就是说必须由主控器产生时钟信号起始信号停止信号。在时钟信号为高电平期间,数据线上的数据必须保特稳定,数据线上的数据状态仅在时钟为低电平的期间才能改变,而当时钟线为高电平的期间,数据线状态的改变被用来表示起始和停止条件。(数据的有效性)图为总线的完整时序7,在这里有一点要加以说明的,当主控器接收数据时,在最后一个数据字节,必须发送一个非应答信号,使受控器释放数据线,以便主控器产生一个停止信号来终止总线的数据传送。(总线的完整时序)下面我们来看一
31、下关于I2C总线的读操作与写操作:(总线写格式)写操作就是主控器件向受控器件发送数据,如图所示。首先主控器会对总线发送起始信号,紧跟应该是第一个字节的8位数据,但是从地址只有7位,所谓从地址就是受控器的地址,而第8位是受控器约定的数据方向位,“0”为写,从图中我们可以清楚地看到发送完一个8位数之后应该是一个受控器的应答信号。应答信号过后就是第二个字节的8位数据,这个数多般是受控器件的寄存器地址,寄存器地址过后就是要发送的数据,当数据发送完后就是一个应答信号,每启动一次总线,传输的字节数没有限制,一个字节地址或数据过后的第9个脉冲是受控器件应答信号,当数据传送完之后由主控器发出停止信号来停止总线
32、。(总线读格式)读操作指受控器件向主控器件发送数,其总线的操作格式如图。首先,由主控器发出起始信号,前两个传送的字节与写操作相同,但是到了第二个字节之后,就要从新启动总线,改变传送数据的方向,前面两个字节数据方向为写,即“0”;第二次启动总线后数据方向为读,即“1”;之后就是要接收的数据。从图中的写格式中我们可以看到有两种的应答信号。一种是受控器的,另一种是主控器的。前面三个字节的数据方向均指向受控器件,所以应答信号就由受控器发后出。但是后面要接收的N个数据则是指向主控器件,所以应答信号应由主控器件发出,当N个数据接收完成之后,主控器件应发出一个非应答信号,告知受控器件数据接收完成,不用再发送
33、。最后的停止信号同样也是由主控器发出。目 录第一章项目概要11.1 项目背景11.2 项目建设内容与工期21.3 投资估算和资金筹措31.3.1投资估算31.3.2 资金筹措方案31.4 效益分析41.4.1 经济效益41.4.2 社会效益51.4.3 生态效益5第二章 项目区概况62.1 自然概况62.2 社会经济状况8第三章 项目建设的必要性和可行性103.1 项目区农业发展的制约因素103.2项目建设的必要性103.3 项目建设的可行性13第四章 水资源评价及水利工程设施144.1 项目区水资源概况144.2 水利工程措施14第五章 规划设计185.1 指导思想185.2 选项原则185
34、.3 建设标准185.4 道路建设195.5 建设规模205.6 规划布局20第六章 开发任务与开发原则226.1 开发任务226.2 开发原则22第七章 投资估算与资金筹措247.1投资估算247.2 资金来源构成及筹措方案24第八章 综合效益分析268.1 经济效益268.2 社会效益268.3 生态效益26第九章 组织实施和运行管护289.1 组织机构设置289.2 项目实施管理299.3 运行管理和维护29第十章 环境影响与评价3110.1生态影响分析评价3110.2 环境质量影响分析评价31第十一章 可行性研究结论和建议3311.1 项目可行性研究的总体评价3311.2 主要污染物及治理措施3511.3 问题与建议36