基于AVR单片机的服装压力检测系统设计

发布者:cheng1984最新更新时间:2011-08-30 关键字:AVR单片机  服装压力检测 手机看文章 扫描二维码
随时随地手机看文章

  O 引言

  传统服装压力舒适度测试方法主要有:流体压力法、电阻法、石膏法。其中,使用流体水银压力计或水压机来测量服装压力的方法简单直接,但精度较低,尤其动态测量相当困难;电阻测量方法是将电阻应变片传感器插入衣服内,由于服装压力而使应变片变形导致电阻值的变化,从而将压力变化转换为变化的电压信号,通过测量该变化的电压值得出服装压力测试结果。该方法测试精度高,结果稳定,但易受外部条件的影响,且对服装压力进行动态测量比较困难;石膏法主要是通过模型检测实现,这种方法可以测出接近穿衣时的自然压力值,但不能进行连续动作时的服装压力测试,并且石膏模型难以制作。以上各种测试方法受时间和空间的限制,难以适应不同测试条件的需要,且测试数据的精度不高,没有数据保存功能。

  针对传统测试方法的缺陷,本系统采用AVR低功耗、高性能单片机作为核心CPU,选用美国Tekscan公司研制地新型Flexiforce传感器来测量服装压力,并把其设计成为可便携的,能够进行动、静态测量,具有数据储存功能的服装压力测试系统。

  1 系统组成

  本系统的功能模块主要有:参数检测模块、数据显示模块、储存模块、实时时钟模块、PC机通信模块和控制模块。服装压力检测采用多点测试方法,即测试模块上连接多个压力传感器。各个传感器完成一次数据测试后,将其数据发送给核心CPU,然后主芯片对该数据做运算处理,并将数据按一定的规则储存在存储器中,同时将数据实时地显示在液晶屏上。完成检测后,可通过串口将储存器中的数据读入:PC机中进行分析、存储。控制模块主要完成系统功能的设定。系统结构如图1所示。

  

服装压力测试系统结构 www.elecfans.com

  2 功能模块设计

  2.1 微处理器

  本系统微处理器采用高性能、低功耗的AVR系列单片机中的ATmegal6L,其内部集成定时器、ADC、片内时钟、USART、SPI、TWI,中断源达到21个。ATmegal6L在1 MHz,3V,25℃时的功耗,正常模式为1.1 mA,空闲模式为0.35 mA,掉电模式小于μA。AVR单片机采用大型快速存取寄存器组,快速单调指令系统和单级流水线技术,使得其处理速度高达1 MIPS/MHz的高速运行处理能力。其内部的可编程FLASH为16 KB,擦写次数可达到10000次。AVR内部集成8路10位逐次逼近型ADC。ADC与一个8通道的模拟多路复用器连接,能对来自端口A的8路单端输

  入电压进行采样。器件还支持16路差分电压输入组合,有可编程增益级控制功能。其强大的数据处理能力和高集成性的内核完全满足该系统的设计要求。

  2.2 服装压力检测模块

  本系统利用美国Tekscan公司研制地新型Flexiforce传感器来测量服装压力。与传统服装压力测试系统中所采用的传感器相比,Flexifo-rce传感器薄如纸张、柔韧性强,能够测量几乎所有接触面之间的压力。在线性、滞后性、漂移和温度灵性方面具有更优良的特性。根据待测的服装压力值,选用压力范围为O~1 lb(4.4 N)的Flexiforce A201型压力传感器。FlexiforceA201型压力传感器由两层薄膜组成,每层薄膜上铺设银质导体并涂上一层特殊的压敏半导体材料,两片薄膜压合在一起就形成了传感器。银质导体从传感点处延伸至传感器的连接端。 Flexiforce A201的传感器点在电路中起电阻作用。当外力作用到传感点上时,传感器点的阻值随外力成比例变化,传感器未受力时,传感点阻值最大,压力越大,传感点阻值越小。

  

Flexiforce传感器的放大器电路 www.elecfans.com

  压力传感器的输出信号为毫伏级,需要对检测的信号进行放大后方能输入到CPU端口。Flexiforce传感器的放大器电路如图2所示,RF=R1 +RF1,Vout=-V0(RF+RS1)。其中,RF1为可变电阻,其阻值变化对应了加在传感器上的外力变化。该电路采用MC34071型放大器,传感器通过该放大器,输出电压值为Vout,经过标定后的压力与电压的对应关系,即可得到所测量的服装压力值。

  本系统应用8个Flexiforce A201型压力传感器,采用并行连接方式与ATmega16L的PA端口直接连接。

  2.3 数据储存模块

  系统设计一个数据存储模块。由于该系统储存数据所占的空间容量并不是很大,因此存储器选用Atmel公司生产的AT24C256芯片,其为256 KB的数据存储器,采用I2C总线通信方式与主CPU进行数据交换。

  为便于测试后更好的阅读数据,采用一定的储存模式将数据保存在AT24C256中,因此,在进行软件设计时,采用该数据传输协议:首先传送检测通道号,然后传送测试时间,最后传送压力值。具体传输格式如图3所示。

  

22c.jpg

  ATmegal6L单片机内部集成有I2C通信模块,其外接端口与PC0和PC1端口复用,在使用该端口时,只需给两根传输总线外连上拉电阻,每根一个。I2C通信芯片直接与该端口连接即可。

  2.4 显示模块

  本系统采用SMGl2864液晶,其体积小、重量轻、功耗小、显示质量高,可同时显示4路采集数据,对于8路数据可采用循环显示方法。显示的数据为通道号和压力数据。如果不需要显示数据时,可采用功能键关掉显示。

  SMGl2864液晶与ATmegal6L的连接非常简单。数据端口直接与PD口连接,功能控制端接在PB端口上。

  2.5 串口模块、实时时钟模块和功能模块

  串口模块主要实现PC机与该检测系统通信工作。PC机可通过该串口读取AT24C256中的数据。该系统采用美信公司的MAX232串口通信转换芯片。

  本系统采用美国DALLAS公司推出的。DSl302实时时钟芯片,其采用三线串行接口,芯片内部集成了可编程日历时钟和31个字节的静态RAM。DSl302时钟可自动进行闰年补偿。DSl302芯片自身还具备对备份电池进行涓流充电功能,可有效延长备份电池的使用寿命。

  对DSl302供电在系统正常工作情况下应用系统电源直接供电,而在系统不工作的情况下由专用的纽扣电池供电。

  系统设置3个功能键完成系统的时间配置和辅助功能选择。这些辅助功能主要有:其中一功能键实现在系统不需要检测服装舒适度压力时,只显示时间,这时可作为一个实时时钟使用,在需要进行压力测试实验时,按下该功能键系统则进入系统压力检测模式。

  系统启动后,首先对整个系统进行初始化,初始化后对功能键进行检测,如果该功能键按下,系统则启动A/D转换,并同时把检测的数据按一定的数据格式存储在AT24C256中,同时把检测的数据循环显示在SMG12864液晶屏上。在完成数据测试后,如果没有进行压力数据检测,则关闭A/D转换模块,并且关闭数据存储端口,系统因此进入休眠状态。

  3 压力舒适度检测算法实现

  必须对采集到的压力传感器的数据进行处理后才能得到具体的可读性的服装舒适度压力值。首先,服装压力传感器把采集的压力值转换为模拟电压值,然后经过A/D转换为标准电压值,在经过MCU对该数据做运算后,把其转换为服装舒适度压力值。

  其具体算法如下:

  ATmegal6L A/D转换的实际电压值计算公式:

  

22d.jpg

  式中:ADC为压力传感器输出模拟电压值A/D转换后对应的结果值;Vin为压力传感器输出模拟电压值;VREF为A/D转换参考电压值。为了提高精度,这里选用ATmegal6L内部A/D转换参考电压为2.56V。

  取G为给压力传感器加载100g砝码后,所得标准A/D转换实际电压值,则:

  

22e.jpg

  式中:F为服装压力,单位:g。

  4 测试实验

  本系统设计完成后,通过测试人体在着装后肩部的一个点随时间压力的变化来检测其稳定性和可靠性。测试曲线如图4所示:初着装后压力变化比较稳定(O~12min);在臂膀运动后服装压力也随时间发生变化(12~18 min);臂膀停止活动压力值又回到初值(18~23 min)。

  

  5 结语

  实验结果表明该服装压力检测系统能正确测试服装舒适度压力值,其使用方便、功能强大、性能优良,是进行服装测试的理想平台,它解决了以往传统服装压力测试中不能测量动态服装压力的困难,且具有数据储存功能。该设备体积小,可随身携带;功耗低,采用电池供电。其可为今后提高服装压力舒适性提供可靠的数据基础和依据,通过对压力的客观测量及研究,将有助于数字化服装压力舒适性研究的发展。

关键字:AVR单片机  服装压力检测 引用地址:基于AVR单片机的服装压力检测系统设计

上一篇:基于AVR单片机的激光测距机性能检测设计方案
下一篇:基于AVR及MODEM芯片的RTU设计

推荐阅读最新更新时间:2024-03-16 12:40

AVR单片机实现IC读卡的程序设计
AVR单片机IC卡程序 #include #include #defineucharunsignedchar #defineuintunsignedint //**********定义全局变量*******************// //查表0123456789EFPOFF uchartable[14]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x79,0x71,0x73,0x00}; ucharICCode[4];//定义IC卡复位时读出的4字节代码; ucharICcon te nt[14];//定义IC卡有效信息; uch arM oney[5];//定义
[单片机]
<font color='red'>AVR单片机</font>实现IC读卡的程序设计
AVR单片机外部中断INT0示例
*AVR单片机外部中断INT0示例程序晶振为1 MHz INT0最好接一个4.7K的上拉电阻,按键对地有效 没有使用延时/通信语句,所以使用内部/外部时钟都可以 每按动INT0按键一次,PD3的电平就翻转一次 本例子没有考虑太多的按键防抖动功能*/ #include mega48.h interrupt void INT0_isr(void) //INT0的中断向量是2,请参考M48数据手册的48页 { PORTD.3=~PORTD.3; //电平取反 EIFR|=1; //清除INT0中断触发标记,防止按键抖动 } void main(voi
[单片机]
AVR单片机ATmega16之初识PWM模式
书本上开篇关于这部分的描述是这样讲的:相对于一般的8位单片机而言,AVR不仅配备了更多的定时/计数器接口,而且还是增强型的例如通过定时/计数器与比较匹配寄存器相互配合,生成占空比可调的方波信号,即脉冲宽度调制输出的PWM信号,用于D/A转换,电机无极调速控制、变频控制等(这样一段书上的导语其实已经很好地概括了PWM的产生原理,和用途),下面说说具体的实现方式吧(都是以T/C0定时器为例来实现的)。按照我自己的粗略总结大致分为三大类(下面会逐条详细解释):1.CTC模式产生(50%占空比的方波信号) 2.快速PWM模式 3.相位可调PWM模式 (因为是初学如有不对,还望朋友们指正!!!) 先来看看这东西对应的输出引脚吧: (根据
[单片机]
<font color='red'>AVR单片机</font>ATmega16之初识PWM模式
简单全能的AVR单片机高压解锁器
简单全能的AVR单片机高压解锁器(制作方法,以MEGA16为例,附电路与C源程序,注:不是高压编程器)AVR高压解锁 概述: 利用常用的AVR单片机ATmega16制作的高压解锁器,可以解开所有芯片锁死的情况(除非芯片损坏、烧毁)。制作作品经实验验证,解开了山东大学物理学院AVR单片机实验室所有近40片锁死的单片机以及许多同学锁死的单片机。制作方法简单,保证你一小时之内做完。 所需元件极少(如电路图所示):仅一只三极管、一片7805,三支电阻、一只LED、三个小电容,一片可用的单片机,一个12V电源。 程序与电路连接可方便的移植到其它型号单片机上(凡支持高压编程的,都可以)。 希望能对初学单片机的同学有所帮助,特别
[单片机]
简单全能的<font color='red'>AVR单片机</font>高压解锁器
AVR单片机掉电数据保护应用
  在单片机应用中经常需要在掉电时(包括人为的关机和偶然的外部电源故障),对运行的数据进行保存。目前,常用的方法是单独给单片机增加一个较大的电容(一般为2000 μf以上,也有用法拉级的),外部掉电后,靠大电容存储的电量缓慢放电,提供单片机向eeprom存储数据所需要的时间。所选的电容小,提供的时间短,存储数据不可靠,所选电容大提供时间长,存储数据可靠。但是随之而来的问题是,掉电后电容放电过程中,单片机的供电电压在缓慢下降,当下将到某个值但还没有降到复位门限电压之前,如果此时再次开机,则单片机不能正常启动,导致单片机重复上电后工作混乱。下面具体分析这一过程并给出解决的办法。   我们先了解一下AVR的上电复位特点。上表是AVR数据
[单片机]
<font color='red'>AVR单片机</font>掉电数据保护应用
基于AVR单片机的可预置程控宽带直流功率放大电路方案设计
   本文采用AVR单片机ATmegal28作为核心控制器,结合10位串行D/A芯片 TLC5615 、功率运放THS3092、可编程增益运放AD603以及其他相关电路,构成了可预置程控宽带直流功率放大电路。该电路系统增益调节范围为O~60 dB,步进间距为1 dB,频带为DC~10 MHz,输出电压有效值为10 V,矩阵键盘预置增益值步进,点阵液晶显示实时电压有效值,人机界面友好,操作简单方便。   1 系统总体方案   若采用可编程放大的思想,将输入的信号作为高速D/A转换器的基准电压,那么D/A转换器作为一个程控衰减器,对速度的要求很高。同时,为了实现O~60 dB增益可调,势必需要D/A转换器输出衰减最少60 d
[单片机]
基于<font color='red'>AVR单片机</font>的可预置程控宽带直流功率放大电路方案设计
AVR汇编初探之一《AVR单片机的CPU内部结构》
学单片机那么久了,感觉想要深入,还得看汇编语言,至少得了解单片机内部结构。 下面就以ATmega16为例,介绍一下AVR单片机结构和汇编语言。 AVR单片机的CPU内核结构 如上两图,左图是虚线框内AVR CPU的内核结构,右图是AVR单片机内核结构的方框图,可以看出AVR单片机的数据总线(CPU字长)是8位的,也就说它是8位单片机。 AVR采用了Harvard结构,具有独立的数据和程序总线,CPU在执行一条指令的同时,就将PC中指定的下一条指令取出,构成了一级流水线运行方式,实现了一个时钟周期执行一条指令,数据吞吐量高达1MIPS/MHz。 AVR CPU内核由几个重要的部分组成,它们分别是: A.算数逻辑单元ALU(Ari
[单片机]
AVR汇编初探之一《<font color='red'>AVR单片机</font>的CPU内部结构》
基于AVR单片机的ISP1362 OTG控制设计
  0 引言   本文采用的设计方案是基于Philips公司的ISP1362 OTG控制芯片,参照最新的USB OTG技术规范,设计了一种遵循USB协议的主/从机系统。   1 ISP1362芯片的内部结构   Philips公司的ISP1362是一款符合USB 2.0总线协议的接口芯片,内部有3个USB控制器一主机控制器、设备控制器和OTG控制器。其中,主机控制器具备高度优化的USB主机功能;设备控制器则具有多达14个可编程端点,又可以被配置成双缓冲端点进一步提高吞吐量:而OTG控制器主要提供包括监控和转换功能在内的所有OTG控制。ISP1362内部构造如图1所示。      2 USB OTG主/从机系统设计
[单片机]
基于<font color='red'>AVR单片机</font>的ISP1362 OTG控制设计
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • 学习ARM开发(16)
    ARM有很多东西要学习,那么中断,就肯定是需要学习的东西。自从CPU引入中断以来,才真正地进入多任务系统工作,并且大大提高了工作效率。采 ...
  • 学习ARM开发(17)
    因为嵌入式系统里全部要使用中断的,那么我的S3C44B0怎么样中断流程呢?那我就需要了解整个流程了。要深入了解,最好的方法,就是去写程序 ...
  • 学习ARM开发(18)
    上一次已经了解ARM的中断处理过程,并且可以设置中断函数,那么它这样就可以工作了吗?答案是否定的。因为S3C44B0还有好几个寄存器是控制中 ...
  • 嵌入式系统调试仿真工具
    嵌入式硬件系统设计出来后就要进行调试,不管是硬件调试还是软件调试或者程序固化,都需要用到调试仿真工具。 随着处理器新品种、新 ...
  • 最近困扰在心中的一个小疑问终于解惑了~~
    最近在驱动方面一直在概念上不能很好的理解 有时候结合别人写的一点usb的例子能有点感觉,但是因为arm体系里面没有像单片机那样直接讲解引脚 ...
  • 学习ARM开发(1)
  • 学习ARM开发(2)
  • 学习ARM开发(4)
  • 学习ARM开发(6)
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved