版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
[17]。正因如此,本系统选择双模芯片作为GPS定位模块的接收芯片。2.4软件方案根据本系统功能所需,软件的设计方案分别是:下位机软件系统方案和上位机软件系统方案。其中下位机软件方案:运用KEIL软件对STM32单片机进行C语言程序编写及调试,下位机系统软件的整体流程:系统上电开始首先进行引脚初始化,之后进行各传感器初始化,随后各传感器开始采集心率、体温、运动状态、GPS坐标信息之后,经过各自对应处理程序,将处理过的信息传输到STM32单片机中并显示在显示屏上,之后通过WIFI模块通过相应的数据格式发送到上位机中,并在手机端进行展示,便于使用者进行观测身体数据。下位机系统的软件程序结构图如图2-2所示:图2-2下位机软件程序结构图上位机软件方案:通过搭建ONENET云平台来接收下位机传输的数据,并通过对应的控件将信息显示在电脑上,后通过微信小程序获取ONENET云平台的相对应的数据流并显示到手机上,让使用者可直接通过手机端进行查看。上位机系统方案设计图如图2-3所示:图2-3上位机系统方案设计图
3系统硬件的设计与实现3.1硬件系统结构下位机系统主要实现的是对使用者的心率、体温、GPS坐标、步数等信息的进行采集获取,并将采集获取到的数据在LCD屏中显示,之后再通过WIFI模块将采集获取到的数据发送到上位机系统,下位机系统由传感器采集电路、主控MCU最小系统电路、LCD液晶屏接口、SWD调试接口、WIFI模块接口等组成。下位机系统硬件原理图如图3-1所示。图3-1下位机系统硬件原理图下位机系统整体硬件原理图包含了心率传感器接口、SWD调试接口、GPS接口、WiFi模块接口、DS18B20温度传感器电路、ADXL345加速度传感器电路、稳压电路。通过单片机将上述的模块接口与外围电路连接起来,然后通过单片机中配置相应管脚,来获取传感器和模块的数据。在原理图中可以看出心率传感器的数据输出接口通过连接单片机的PA5管脚与单片机进行数据采集,单片机的PA15、PA14管脚连接在SWD调试接口上,并进行程序的烧录与调试。GPS定位模块接口连接到单片机的串口3的PB10、PB11引脚上,单片机通过串口3与GPS定位模块进行数据的发送与接收。WIFI模块接口连接到单片机的串口2的PA2、PA3引脚上,WIFI模块通过串口2进行单片机数据的转发操作。LCD液晶显示屏通过与单片机的FSMC接口连接,然后对LCD屏进行显示、清除操作。DS18B20温度传感器电路可以看出电路通过电阻与LED灯来展示电路电源是否正常,同过将温度传感器的输出引脚接上拉电阻上拉到5V来消除管脚的不确定状态。ADXL345加速度传感器电路采用IIC通信方式时,在给使能端管脚进行上拉操作,使能IIC通信方式,通过将ADXL345模块的数据输出管脚、时钟管脚进行上拉操作来确保IIC通信的稳定性。系统的稳压电路采用AMS117芯片来进行系统供电电源的划分,将系统电源电压由5V分成3.3V,为整个系统供电。以上就是下位机系统硬件原理图的大致工作流程及连接关系。3.2控制器模块控制器模块主要选用的是STM32的F4最小系统板,其中最小系统板搭载的是STM32F407ZGT6型号的单片机,其具有168MHz的运行频率,高达1MB的闪存Flash,支持在线调试,提供了程序调试接口,RTC和备份寄存器的供电可采用电池来提供,3个12位的数模转换ADC,其中单片机搭载的定时器有17个之多,通信接口包含了SPI和IIC以及串口,同时也提供了摄像头和以太网MAC接口,提供三种低功耗模式,支持FPU和DSP指令,大部分管脚都能承受5V电压(模拟通道除外)。控制器模块电路原理图如3-2图所示,从最小系统板电路中可以看出主要是由四部分构成。芯片是这个控制器模块的核心,为整个系统提供数据处理及控制显示、数据发送的功能,其它三部分的电路都为它服务。其中时钟电路主要是为系统提供时钟,晶振电路包含了低速时钟和高速时钟两部分,在原理图中区别主要是晶振频率不一样:一个为32.768KHZ,另一个为8MHZ。复位电路主要是对系统芯片进行复位操作,电路是由10K的电阻连接3.3V电源、按键和0.1uf的电容成并联关系连接至电阻的另一端,之后连接到地。其中对于boot0和1的引脚串联10K电阻到地,使系统复位之后,决定系统从用户闪存区域开始运行。电源电路是通过整个系统的稳压电路将输入5V的电源变成3.3V之后为整个单片机芯片提供电源,使单片机正常工作。图3-2主控制器模块电路原理图3.3运动检测模块运动检测模块选用ADXL345加速度传感器,因为ADXL345加速度传感器一种微型的低功耗传感器,提供SPI和I2C接口数字信号输出,具有13位分辨率和±16g的测量范围,可以通过使能控制管脚选择模块通信方式,可以适配于便携式设备。可以测量由运动或碰撞引起的动态加速度及静态的重力加速度,并将其应用于倾斜检测。可以测量的倾角变化范围为±1.0°,同时ADXL345传感器提供了多种特殊的检测功能。该模块采用先进先出(FIFO)缓冲器(32级)的存储器管理系统来存储数据,大大降低了模块处理器的负荷以及模块的功耗。运动状态的电源管理可以在低功耗模式运行,并使用非常低的功耗来监控阈值和测量运动加速度。根据ADXL345芯片的引脚信息如表3-1所示,来设计ADXL345模块的使用电路,其中电源由系统稳压电路提供3.3V电压,通过将CS引脚上拉到电源电压,选择模块的IIC通信方式引脚编号引脚名称描述1VDD数字接口电源电压2GND该引脚必须接地3RESERVED保留。该引脚必须连接到VS或保持断开。4GND该引脚必须接地。5GND该引脚必须接地。6VS电源电压。7CS片选。8INT1INT1中断1输出。9INT2INT2中断2输出。10NC内部不连接。11RESERVED保留。该引脚必须接地或保持断开。12SDO/ALTADDRESS出行数据输出(SPI4线)/备用2C地址选择(2C)13SDA/SDI/SDIO串行数据(2C)/串行数据输入(SPI4线)/串行数据输入和输出(SPI3线)。14SCL/SCLK串行通信时钟。SCL为12C时钟,SCLK为SPI时钟。表3-1ADXL345模块引脚信息运动检测模块电路原理图如3-3图所示,将原理图中的ADXL345芯片的CS引脚拉高到VCC电压,这时ADXL345处于IIC通信模式,只需要通过导线将ADXL345芯片上的SDA、SCL引脚连接到单片机的IIC管脚PB8、PB9,之后输入正确的芯片存储数据的地址就可以获取芯片采集的加速度数据了,但在此之前还需要对模块地址控制引脚(引脚12)进行设置,控制引脚置于高电平,器件的7位I2C地址是0X1D,最后的一位为读写标志位。其中的十六进制表示为0x3A写入,0x3B读取。控制引脚接地,可以选择备用I2C地址0x53(随后为读写标志位)。其中的十六进制表示为0xA6写入,0xA7读取。特别注意:使用I2C接口通信时,CS引脚必须连接至VCC电压,模块地址控制引脚必须连接至任一电源引脚或接地。图3-3运动检测模块电路原理图3.4温度模块温度测量模块选用DS18B20温度传感器,而此传感器适合于环境温度检测,对人体测温的误差较大,其误差率最小都在±0.5℃。在应用到人体测温时差0.1℃对结果都天差地别的影响。当然在后续本系统的改进中会选取更适合人体测温的传感器,例如PT100的温度传感器或者基于红外测温原理的MLX90614传感器。DS18B20温度传感器的特点有:在与控制器连接时仅需要一条导线就可以实现数据的读取与写入。3.0~5.5V的供电范围,在没有电源情况下可采用数据线供电。DS18B20在使用时无须多余外围器件。温度范围为:-55℃~+125℃,并且可以对分辨率进行编程选择,实现较准确的测温准确性。在9到12位分辨率设定区间内,模块转换温度的时间范围为93.75ms~750ms,转换速度快,输出数字信号,通过一根总线串行传输到处理器或者控制器中,可以使用CRC校验码进行数据校对,使之抗干扰与纠错能力都挺不错。通过对DS18B20模块的管脚调查,模块的管脚1连接GND,管脚2为数字信号输入/输出端,管脚3连接到5V。其中管脚2通过连接到单片机的PB6管脚,来被单片机进行温度采集。温度测量模块电路原理图如图3-4所示。图3-4温度模块电路原理图3.5心率模块心率模块选用PluseSensor心率传感器,因为PluseSensor心率传感器是一种光电反射式模拟传感器。可以将其放置于手指、手腕、耳垂等身体部位进行心率信号的采集,将采集到的心率模拟信号通过传感器的输出引脚通过导线传输给单片机等的控制器处理,通过其ADC转换功能,将模拟信号变为数字信号输入到控制器,经过其处理算法后就可以得到当前所测心率数值,PluseSensor心率传感器模块的供电电压为:3.3V或5V,输出的信号类型为模拟信号。经过测试后发现5V供电时,采集的心率模拟信号不明显,极易被噪声淹没,所以采用3.3V供电最佳。PluseSensor心率传感器实际上是基于光电容积脉搏波描记法的心率传感器,可应用于便携式的心率监测设备。在心率模块的原理图可以看出,通过运放芯片放大了脉冲传感器的原始信号,并规范了在采集模拟心率电压数据中间点的心率波形。脉冲传感器的输出信号是随光强度变化而变化。例如当脉冲传感器上的光强度不变,采集的光亮强度电压信号值将保持在一定范围值的中间点左右。光亮强度越强,心率信号就越强。光亮强度越弱,则心率信号越小根据国际心跳间隔(IBI)的测量方法得出我们计算的单位时间内心率数值。传感器的引脚1为VCC输入,管脚2为模拟心率信号输出,管脚3为GND。心率电路模块原理图如图3-5所示,根据模块原理图分析来看,首先将手指放入传感器的检测区后,会通过绿色发光二极管将绿光照射到手指上,再通过光感受器U9及对应的滤波电路对手指上反射的信号进行处理,之后通过放大器U10将信号放大,最后通过模块的输出引脚将心率信号输出。心率模块的信号输出管脚与单片机的A/D管脚PA5相连。单片机通过A/D引脚将模拟量转化成为数字量,之后进行处理。图3-5心率电路模块原理图3.6显示模块显示模块采用3.2寸的TFT-LCD液晶触摸屏,因为TFT-LCD液晶屏是薄膜晶体管型屏幕。半导体开关控制TFT液晶的每个像素点,每个像素节点都是独立的。通过脉冲信号控制像素的点亮,这就使得可以连续控制像素点的点亮,这样显示屏显示速度提高了,而且可以对屏幕的颜色等级进行精确控制,使TFT液晶屏幕的颜色更真实。TFT-LCD液晶屏还可以克服未闭合时产生的串扰,由于其每个像素点上都是一个薄膜晶体管(TFT)。TFT-LCD模块采用16位的并联方式与单片机的FSMC接口连接,TFT-LCD模块复位信号与控制器的复位引脚直接连接,不需要程序控制。TFT-LCD屏需要背光控制线来控制屏幕背光。显示模块电路原理图如图3-6所示,通过原理图可以看出LCD1接口是对应我们显示屏的引出引脚,就是根据8080时序接口与主控制器进行连接,进而控制LCD屏的显示功能。其中关于显示屏的背部调光引脚的网络标签为LIGHT-PWM,整个调光功能的实现电路是通过PNP型三极管来做线性放大器来使用的,通过单片机的控制引脚就可对屏幕进行调光。U1是电阻触摸屏控制芯片其中是通过SPI方式进行连接,输出是X、Y轴左右的屏幕的坐标点,可以获取触摸屏上的触摸点位置。J2接口是LCD屏的固定座子,使屏幕可以插入到最小系统板中。座子的引脚对应LCD1接口的引脚。图3-6显示模块电路原理图3.7GPS模块GPS模块采用中科微电子的ATGM332D-5N定位模块,因为ATGM332D-5N模块是可以接收多种卫星信号的一款卫星接收模块,其中搭载的是中科微的GNSSSOC的芯片AT6558,这款芯片具有32个跟踪通道,可以同时接收六个不同导航系统的卫星信息,实现多种卫星的联合定位导航并且获取卫星授时。其中定位模块可以连接到的卫星导航系统包括中北斗、GPS、格洛纳斯等。总体来说,该模块是一款功耗和成本都较低、搜星灵敏度快的卫星接收模块。首先通过模块的数据手册可以看出,ATGM332D-5N定位模块在低功耗模式下在电压为3.3V时的运行电流小于25mA。提供冷启动方式,使定位模块不管处于任何位置都可以快速与卫星建立连接。模块可以自动检测天线是否连接及在天线短路时提供保护功能。GPS模块原理图如图3-7所示,通过原理图可以看出整个模块的电路中电源部分是通过RT9193电压转换芯片将转换电压后,为ATGM332芯片供电。而芯片上的TXD、RXD引脚通过网络标签GPS_TXD、GPS_RXD接入单片机的串口3的PB10、PB11引脚,之后就可通过串口3与单片机进行数据通信了。图3-7GPS模块原理图3.8WIFI模块WIFI模块主要采用正点原子的ATK-ESP8266无线WIFI模块,因为ATK-ESP8266模块是一款串口转WIFI的无线模块。可以大大省略了开发者调试WIFI模块的时间。只需要通过串口就可以与控制器进行通信。该模块搭载了TCP/IP的协议,只需要通过对串口进行相应设置,再连接到主控器的串口中,就可以通过该无线模块使数据在网络中进行传输。同时该模块支持了三种网络节点模式,并且模块的供电是3.3V或5V电源供电。通过模块的数据手册上提供的SDK包或AT指令就可以对模块进行二次开发,节省开发时间。WIFI模块原理图如图3-9所示,正如原理图中所展示的WIFI模块电路由RT9193电压转换芯片、ESP8266芯片、模块电源指示灯等构成。其中电源模块主要由RT9193芯片负责将输入的5V电源转化为3.3V电源,为整个模块内部器件供电。ESP8266芯片主要是通过RXD、TXD管脚通过网络标签RXD_TTL、TXD_TTL与单片机串口2管脚PA2、PA3连接并进行数据交互,等到ESP8266芯片接收到单片机数据后,将数据打包并通过内置的TCP协议打包就可以进行发送。图3-9WIFI模块原理图4系统软件的设计与实现4.1系统软件结构整体系统的软件结构是由下位机端、上位机端和手机端三部分结合而成。其中下位机端的编译环境选择的是KEIL软件并采用uVision5IDE,而系统软件的设计及编写采用C语言。上位机端采用中国移动OneNet物联网的开发平台,其中通过OneNet云平台可以存储大量数据,并且降低开发时间。手机端采用微信官方提供的微信开发者工具进行界面及功能的设计与实现,采用JavaScript语言来编写小程序功能。下位机端主要负责各传感器的信息采集处理,协调好各传感器的数据并准确处理,最后通过LCD屏显示出来及向上位机传输数据。上位机端采用云平台技术,可接收大量的下位机端的数据并存储记录,在数据流界面实时刷新接收到的数据。手机端通过微信小程序不断向云平台发送数据请求,来实时获取云平台的数据。系统软件结构图如图4-1所示,图4-1系统软件结构图4.2下位机软件的设计与实现4.2.1软件总体程序设计系统的下位机端是由STM32F407ZGT6做主控制器,并初始化所需外设驱动各模块传感器进行正常工作,通过定时器的定时的中断处理函数确定对应传感器的数据采集及处理的时间,分批次进行数据解析及收集。通过串口程序接受GPS模块的数据及处理,后又通过串口程序控制WIFI进行数据上传OneNet云平台操作。软件总体程序设计如图4-2所示。图4-2软件总体程序设计4.2.2运动状态程序设计测量运动状态的前提是与ADXL345加速度模块能够进行通信,并且可以获取我们所需的数据。首先采用模拟IIC接口与ADXL345模块进行通信,那么首先就要对IIC的SDA、SCL的引脚进行初始化,采用宏定义来对IIC的引脚接口进行定义,选择PB8、PB9来模拟IIC的SDA、SCL引脚,由于IIC是半双工,因而数据线的SDA引脚需要承担数据的发送接收功能,所以需要对定义IIC的SDA管脚进行两次相应的初始化配置。其次就是对传感器进行必要的初始化步骤:首先进行对设备进行上电,之后向从发送命令,开始对从设备读写,最后读写完成结束。对获取到的传感器的数据进行必要的处理,以此得到我们想要的数据,通过对传感器Z轴数据的分析,在定时器3的定时器中断到达后,读取ADXL345传感器的数据并以此为基础得到X、Y、Z三轴的数据,通过观测人体运动时Z轴数据反应比较强烈,以Z数据为参照将正常状态下Z轴数据的最大值、最小值当作判断运动的阈值,异常情况下的数据当作倾斜次数。以此得出人体的步数与距离。运动状态程序设计流程图如图4-3所示,图4-3运动状态程序设计流程图其中单片机读取ADXL加速度模块的数据步骤:首先单片机通过IIC通信方式,给模块发送写命令,之后模块接收到指令后给出应答,最后单片机对模块已经采集的数据进行读取操作,单片机在读取到所需要的数据之后,给模块发送停止通信指令,断开通信连接。获取加速度传感器数据代码图如图4-4所示,图4-4获取加速度传感器数据代码图4.2.3温度采集程序设计首先对DS18B20进行引脚初始化,因为DS18B20是单总线数字输出的温度传感器,通过单导线连接控制芯片就可以进行通信,所以根据DS18B20的特性需要对单片机的连接引脚的模式进行两次配置,一次配置输入,一次配置输出。其次需要对DS18B20传感器模块进行必要的模块初始化,以确保模块的正常。而DS18B20因为是单总线通信,所以对延时要求极为严格,其初始化首先将数据线置高—>延时—>数据线拉到低—>延时750us—>数据线拉到高—>延时等待模块返回值—>数据线再次拉高—>结束。对以上操作代码进行总结并加入判断,得到带有返回值的DS18B20初始化代码(0:成功;1:失败)。最后读DS18B20传感器温度存储寄存器,得到转换完成的温度值。温度采集程序设计流程图如图4-5所示,图4-5温度采集程序设计流程图关于如何将DS18B20温度传感器获取到的数据转换为我们所需要的温度值,由于传感器中所存储的温度值低字节在前高字节在后,所以我们在获取温度值时需要对读到的数据进行转换操作,首先将读到的第一次的低字节数据进行保存,再结合第二次读到的高字节数据,首先看高字节数据是否超出字节范围,如果超出证明温度是负值需要进行反向操作,如果读出的字节数据正常将高字节数据保存到16位变量中并向左移动8位,之后将低字节数据进行保存,如此得到的变量就是我们所需的温度值了。4.2.4心率采集程序设计PluseSensor传感器采集心率是通过采集模拟信号的变化周期,而单片机所能处理的信号为数字信号,所以需要用到ADC转换,对单片机的AD引脚进行基础配置,并对采集到的心率信号进行分析处理,就得出心率数据。其中选用PA5引脚来进行ADC采集,初始化ADC采集管脚的时钟,设置PA5引脚方式为模拟输入,设独立模式转换。ADC1进行4分频时钟为21MHz、12位模式转换等。对心率数据处理,采用定时器5来进行心率数据的处理,当心率数据采集时,定时器2ms后进入中断进行ADC信号的采集与处理,对于一段时间内的ADC数据进行动态阈值计算,得出心率信号的波峰与波谷,记录下首次出现ADC峰值的时间、通过滤波程序将干扰信号滤除、记录再次出现ADC峰值的时间,两次时间差就是心跳时间间隔IBI,由此就求出心率信号。心率信号的处理代码如下:心率采集程序设计流程图如图4-6所示,图4-6心率采集程序设计流程图4.2.5GPS处理程序设计系统设计采用采用中科微电子的ATGM332D-5N作为系统的GPS定位模块,可以通过串口与STM32单片机进行数据传输,并可以通过单片机对数据的解析与处理,得到所需的GPS数据。想要使用该模块,首先需要对串口3进行初始化,以此接收定位模块的数据,也可通过串口对模块的波特率及发送数据进行相应设置。串口3的发送接收引脚选用PB11作为RX,PB10作为TX。对于串口配置首先需要对GPIOB和UART3的时钟进行使能,并复用普通IO口为USART3引脚,串口3的波特率为115200,并打开串口3的接收中断。在配置好串口3之后,就可以与GPS定位模块进行数据交互了,经过单片机的解析处理后,就可得到我们所需的数据。GPS处理程序设计流程图如图4-7所示,图4-7GPS处理程序设计流程图由于GPS模块发送给单片机的数据是根据美国指定的NEMA-0183协议,其中我们需要的经纬度信息保存在$GPRMC协议里,所以需要对获取的信息进行辨别,并且将经纬度信息通过字符串匹配方式解析出来,单片机处理GPS数据代码图如图4-8所示,图4-8单片机处理GPS数据代码图4.2.6WIFI传输程序设计系统采用正点原子的ATK-ESP8266 模块来作为WIFI的发送接收模块,与控制器使用串口进行数据的收发,由于其内部有TCP/IP协议,实现串口到WIFI的转换。使用WIFI模块时,WIFI模块引脚与STM32串口2引脚连接。主控制器通过WIFI模块发送或接收数据的流程为:主控制器发送数据到WIFI模块,WIFI模块再转发数据到网络中或WIFI模块接收到数据时,通过串口发送数据到主控制器。当然要实现上述功能首先对控制器的串口2首先进行基础配置,其中将PA2、PA3分别作为串口2的TX、RX引脚,通过对其和GPS模块所用串口3基本相同的初始化配置。以此驱动WIFI模块来发送数据到底上位机。在配置好串口后就可以通过WIFI模块进行数据的传输了,首先需要让WIFI模块连接到路由器,借此连接到网络中,之后就可以通过串口发送数据到WIFI模块,而WIFI模块通过云平台提供的对应将数据发送到指定的网络地址了。WIFI模块发送数据代码图如图4-9所示:图4-9WIFI模块发送数据代码图4.2.7LCD显示程序设计本系统的LCD屏采用的是3.2寸LCD液晶屏,其中显示屏上可以显示使用者的体温、心率、步数运动信息等,控制器与LCD屏通过FSMC引脚进行连接,其中单片机自带了FSMC接口,通过8080时序使单片机和LCD屏进行数据交换,采用单片机的FSMC_NE4引脚当作LCD屏的片选引脚,FSMC[D0~15]接入LCD屏的双向数据输入引脚,单片机的FSMC_NEW、FSMC_NOE接入LCD屏的读写控制引脚,单片机的PB15引脚接入LCD屏幕的背光控制管脚。FSMC_A6管脚接入LCD屏的命令数据控制管脚。获取显示屏上对应坐标的颜色数据或在LCD屏上某一坐标显示我们指定的颜色,这个过程为:设置坐标—>读指令—>(读/写)颜色数据。当要驱动LCD屏幕上显示数据的时候,首先需要对单片机的一些管脚初始化复用为FSMC模式,其次需要对LCD屏进行初始化操作,之后就可以通过8080时序向LCD屏发送数据了,LCD屏接收到单片机的数据之后就可以通过LCD控制芯片对屏幕上的发光二极管进行操作,显示我们需要的字符和图像了。具体的操作是,首先需要建立我们自己的字符库,对我们需要显示的字符进行取模操作,之后将字符取模后的16进制数进行汇总排列,创建字符的.h库。之后就可以通过控制LCD屏上进行打点操作,将点连接到一起,并控制好需要显示到屏幕上的X、Y坐标,LCD屏就可以在指定的位置上显示字符了。LCD显示程序的代码图如图4-10所示,图4-10LCD显示程序代码图4.3上位机软件的设计与实现4.3.1上位机系统介绍整体的上位机系统分为两个部分,分别为OneNet云平台存储数据、微信小程序显示数据。两个部分各自负责对应的功能,通过云服务进行存储的数据可为后续身体数据的提供可靠的参照依据,而微信小程序的随用随开,用完及关的便捷性更适应于当前的社会发展。基于上述优点选择了云平台加小程序来构建上位机软件的整体系统,以此来适应当前社会的发展潮流及用户习惯。4.3.2上位机系统界面设计上位机的系统界面分为OneNet云平台数据存储界面及微信小程序显示界面。之中对于OneNet云平台的界面设计沿用云平台提供的界面,其中包含了数据流展示界面及设备在线记录界面、下方命令界面等。而数据流展示页面提供了实时数据刷新的功能。OneNet云平台界面如图4-11所示,图4-11OneNet云平台界面图微信小程序的界面采用WXML模板与WXSS样式相结合设计,其中WXML模板描述界面的样式,其中WXML提供view,button等等的标签及地图、文本框、按键等等的组件。修改页面样式的功能时,可以对WXSS样式的全局或局部进行修改。而在本系统中设计微信小程序的页面中包含了步数、距离、速度、心率、温度等的信息。微信小程序手机页面如图4-12所示,图4-12微信小程序手机页面图4.3.3上位机系统设计上位机的系统设计主要是微信小程序的程序设计为重,OneNet云平台根据提供的用户手册,就可搭建自己想要的云平台功能以及之间的通信协议。而微信小程序的程序设计主要是通过JSON语法和脚本语言JavaScript来进行程序设计的,其中
JavaScript,主要控制小程序页面逻辑,也是实现前后端数据的交互。在通过OneNet云平台获取微信小程序所需的数据就可以在微信小程序中显示了。其中小程序获取OneNet云平台的代码如图4-13所示:图4-13小程序获取OneNet云平台代码图5系统测试5.1系统总体测试方案整个系统的测试共有两个部分组成:上位机系统和下位机系统。首先上位机系统由实体电路和单片机软件构成,对待硬件电路所采用的测试方法主要是通过对比原理图查看模块接口是否对应,之后会上电测试模块是否正常工作。而对于软件方面下位机软件系统进行模块化调试,进行功能性的测试,并且等待所有软件功能调试畅通后,再进行上位机系统软件的调试,搭建云平台并设定特定的数据流让小程序进行获取,并看是否正常获取数据并显示。上述系统功能调试完成后,同时打开单片机端与上位机端系统实时运行,通过观测心率、温度、步数、距离等数据在单片机端与手机端是否对应,来检查系统功能是否实现。之后开启系统一段时间,检测整个系统是否稳定,程序运行是否正常。5.2硬件系统测试硬件各模块电路元件如图5-1所示,其中先对每个模块进行独立测试,保证每个模块上电之后便都可以正常工作,避免发生后续组装出现的短接及断连的情况。如模块出现问题首先观测模块器件是否出现虚焊或者漏焊情况,如没有上述故障,则开始用万用检测各模块之间管脚是否对应正确,排除接线错误。如上述情况都没检测出问题,则需进行更换模块器件。图5-1系统硬件模块图在下位机软件程序编译通过后,使用STLINK下载器将程序烧录到本系统中。在程序烧录进系统后,将单片机用按键进行复位,之后断电。再次上电后就可在LCD屏上看到显示的温度、心率、步数等信息。系统上电测试图如图5-2所示:图5-2系统上电测试图5.3软件系统测试5.3.1下位机软件系统测试系统中的下位机软件系统的测试分为每个单独模块驱动程序是否能驱动模块,并与模块建立正确的数据通信。在整体系统程序编译无误后,使用SW接口将程序下载到开发板子中,之后再通过对整个系统进行重新上电操作,并将手指靠近心率传感器,等到数据变稳定后,观测LCD屏是否显示出心率、温度、步数等数据。如图5-3所示。图5-3下位机系统测试结果图5.3.2上位机软件系统测试上位机系统的测试是打开系统的硬件部分及下位机软件并保证测试无误后,打开OneNet云平台界面并在其中创建代表心率、温度、步数等的数据流,观测系统下位机端是否接入云平台,随后打开微信小程序在编译运行后,观察界面上的数据是否获取成功,最后微信小程序界面就会显示LCD屏上对应的心率、温度、步数等的数据,如图5-4所示。图5-4上位机系统测试结果图5.4整体系统测试结果根据之前系统的需求出发,对本系统的一些性能进行测试,本次测试的主要人员为本系统的开发者,首先对心率进行测量,采取多次测量数据最后汇总的方式对系统心率采集的准确性进行分析,首先选取的参照心率测量设备为手机中的APP测量,测试人员每隔一分钟分别使用设备进行测量,测量数据如表5-1所示,表5-1心率测试结果次数本系统数据手机APP数据误差率185872.3%286882.3%384851.2%486882.3%587903.3%684873.5%续表5-1次数本系统数据手机APP数据误差率785872.3%886893.4%984873.5%1086893.4%如表5-1所示。本系统对于心率测量的误差率基本满足在2%~4%之间,间接完成了系统性能指标,并且可以满足使用者的日常使用。对于体温的测量,虽然实现了整体系统中的温度测量,但是因为温度传感器的选型未能达到检测体温的标准,所以在后续系统完善时,会进行新的选型,关于温度的测试就先终止!对于步数的测量,其测量人员同样是开发者,身高1.8米,年龄22岁,首先在测量好距离的直线道路上,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 初级会计职称考试会计实务练习题及答案
- 油气计量考试试题及答案
- vivo校招面试题及答案
- 单招畜牧考试题目及答案
- 成都九上语文试题及答案
- 2026黑龙江哈尔滨启航劳务派遣有限公司派遣至哈尔滨工业大学国际教育学院招聘10人备考题库附答案
- 中共南部县委组织部关于2025年南部县党政机关公开考调工作人员的(16人)备考题库必考题
- 中国雄安集团有限公司2026校园招聘备考题库附答案
- 北京市大兴区审计局招聘临时辅助用工1人考试备考题库附答案
- 南充市司法局2025年下半年公开遴选公务员(参公人员)公 告(2人)参考题库必考题
- 2025-2026学年苏教版五年级上册数学期末必考题检测卷(含答案)
- 新《增值税法实施条例》逐条解读课件
- 2026年广西职教高考5套语文模拟试卷试题及逐题答案解释和5套试题的综合分析报告
- 福建省福州市2024-2025学年高二上学期期末质量检测化学试卷(含答案)
- 泌尿系统疾病诊治
- 2025-2026学年大象版四年级上册科学全册重点知识点
- 治疗失眠症的认知行为疗法训练
- 太原师范学院简介
- 2026年湘西民族职业技术学院单招职业倾向性考试题库新版
- 生产安全事故调查分析规则
- 2021海康威视DS-AT1000S超容量系列网络存储设备用户手册
评论
0/150
提交评论