基于AVR单片机的服装压力检测系统设计
基于AVR单片机的服装压力检测系统设计
本系统的功能模块主要有:参数检测模块、数据显示模块、储存模块、实时时钟模块、PC机通信模块和控制模块。服装压力检测采用多点测试方法,即测试模块上连接多个压力传感器。各个传感器完成一次数据测试后,将其数据发送给核心CPU,然后主芯片对该数据做运算处理,并将数据按一定的规则储存在存储器中,同时将数据实时地显示在液晶屏上。完成检测后,可通过串口将储存器中的数据读入:PC机中进行分析、存储。控制模块主要完成系统功能的设定。
本系统微处理器采用高性能、低功耗的
AVR系列单片机中的ATmegal6L,其内部集成定时器、ADC、片内时钟、USART、SPI、TWI,中断源达到21个。ATmegal6L在1MHz,3V,25℃时的功耗,正常模式为1.1mA,空闲模式为0.35mA,掉电模式小于μA.AVR单片机采用大型快速存取寄存器组,快速单调指令系统和单级流水线技术,使得其处理速度高达1MIPS/MHz的高速运行处理能力。其内部的可编程FLASH为16KB,擦写次数可达到10000次。AVR内部集成8路10位逐次逼近型ADC.ADC与一个8通道的模拟多路复用器连接,能对来自端口A的8路单端输入电压进行采样。器件还支持16路差分电压输入组合,有可编程增益级控制功能。其强大的数据处理能力和高集成性的内核完全满足该系统的设计要求。
本系统利用美国Tekscan公司研制地新型Flexiforce传感器来测量服装压力。与传统服装压力测试系统中所采用的传感器相比,Flexifo-rce传感器薄如纸张、柔韧性强,能够测量几乎所有接触面之间的压力。在线性、滞后性、漂移和温度灵性方面具有更优良的特性。
本系统应用8个FlexiforceA201型压力传感器,采用并行连接方式与ATmega16L的PA端口直接连接。
系统设计一个数据存储模块。由于该系统储存数据所占的空间容量并不是很大,因此存储器选用Atmel公司生产的
AT24C256芯片,其为256KB的数据存储器,采用I2C总线通信方式与主CPU进行数据交换。
为便于测试后更好的阅读数据,采用一定的储存模式将数据保存在AT24C256中,因此,在进行软件设计时,采用该数据传输协议:首先传送检测通道号,然后传送测试时间,最后传送压力值。具体传输格式如图3所示。
ATmegal6L单片机内部集成有I2C通信模块,其外接端口与PC0和PC1端口复用,在使用该端口时,只需给两根传输总线外连上拉电阻,每根一个。I2C通信芯片直接与该端口连接即可。
本系统采用SMGl2864液晶,其体积小、重量轻、功耗小、显示质量高,可同时显示4路采集数据,对于8路数据可采用循环显示方法。显示的数据为通道号和压力数据。如果不需要显示数据时,可采用功能键关掉显示。
SMGl2864液晶与
ATmegal6L的连接非常简单。数据端口直接与PD口连接,功能控制端接在PB端口上。
本系统采用美国DALLAS公司推出的。DSl302实时时钟芯片,其采用三线串行接口,芯片内部集成了可编程日历时钟和31个字节的静态RAM.DSl302时钟可自动进行闰年补偿。DSl302芯片自身还具备对备份电池进行涓流充电功能,可有效延长备份电池的使用寿命。
系统设置3个功能键完成系统的时间配置和辅助功能选择。这些辅助功能主要有:其中一功能键实现在系统不需要检测服装舒适度压力时,只显示时间,这时可作为一个实时时钟使用,在需要进行压力测试实验时,按下该功能键系统则进入系统压力检测模式。
系统启动后,首先对整个系统进行初始化,初始化后对功能键进行检测,如果该功能键按下,系统则启动A/D转换,并同时把检测的数据按一定的数据格式存储在AT24C256中,同时把检测的数据循环显示在SMG12864液晶屏上。在完成数据测试后,如果没有进行压力数据检测,则关闭A/D转换模块,并且关闭数据存储端口,系统因此进入休眠状态。
实验结果表明该服装压力检测系统能正确测试服装舒适度压力值,其使用方便、功能强大、性能优良,是进行服装测试的理想平台,它解决了以往传统服装压力测试中不能测量动态服装压力的困难,且具有数据储存功能。该设备体积小,可随身携带;功耗低,采用电池供电。其可为今后提高服装压力舒适性提供可靠的数据基础和依据,通过对压力的客观测量及研究,将有助于数字化服装压力舒适性研究的发展。