基于msp430超低功耗单片机温度控制器设计.docx

上传人:b****2 文档编号:2157698 上传时间:2022-10-27 格式:DOCX 页数:19 大小:45.51KB
下载 相关 举报
基于msp430超低功耗单片机温度控制器设计.docx_第1页
第1页 / 共19页
基于msp430超低功耗单片机温度控制器设计.docx_第2页
第2页 / 共19页
基于msp430超低功耗单片机温度控制器设计.docx_第3页
第3页 / 共19页
基于msp430超低功耗单片机温度控制器设计.docx_第4页
第4页 / 共19页
基于msp430超低功耗单片机温度控制器设计.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

基于msp430超低功耗单片机温度控制器设计.docx

《基于msp430超低功耗单片机温度控制器设计.docx》由会员分享,可在线阅读,更多相关《基于msp430超低功耗单片机温度控制器设计.docx(19页珍藏版)》请在冰豆网上搜索。

基于msp430超低功耗单片机温度控制器设计.docx

基于msp430超低功耗单片机温度控制器设计

开放实验报告

课题名称基于msp430单片机的超低功耗智能护眼灯的设计

学生姓名

系、年级专业信息工程系、11、12级电子信息

指导教师于建坤

2014年6月20日

基于msp430单片机的超低功耗智能护眼灯的设计

1.实验目的

1、了解pwm控制灯光亮度的原理,设计基于单片机的智能护眼灯控制装置。

2、学习电子电路、PCB板设计,产品制作与调试。

2.实验内容

本智能护眼灯以MSP43G2553为核心,完成护眼灯的照明,电源管理,环境采集和中央处理及控制功能。

灯珠采用高亮白光LED,恒流驱动,无频闪,不伤害眼睛,保护视力。

电源管理,由专用电源管理方案,管理系统充电和用电。

环境采集,用光传感器采集光照强度,根据光照强度控制灯珠亮度,用人体热释红外检测人远近。

三.系统方案设计

系统整体方框图如下:

图2.1系统方框图

(1)环境采集用光敏电阻采集环境亮度,人距感应部分采用热释红外。

当人靠近台灯,产生信号给MCU控制器,打开台灯。

光敏电阻采集当前亮度值,根据使用者选择的模式作出调整。

(2)MCU控制亮度和环境采集采用闭环控制,具体算法用PID算法的增量式模式。

具体函数如下:

typedefstructPID{

doubleSetPoint;//设定目标

doubleProportion;//比例常数

doubleIntegral;//积分常数

doubleDerivative;//微分常数

doubleLastError;//Error[-1]

doublePrevError;//Error[-2]

doubleSumError;//SumsofErrors

}PID;

doublePIDCalc(PID*pid,doubleNextPiont)

{

doubledError,Error,rOUT;

Error=pid->SetPoint-NextPiont;//偏差

pid->SumError+=Error;//积分

dError=pid->LastError-pid->PrevError;//当前微分

pid->PrevError=pid->LastError;//Error[-2]=Error[-1]

pid->LastError=Error;//Error[-1]=Error

rOUT=pid->Proportion*Error+pid->Integral*pid->SumError+pid->Derivative*dError;

//比例项//积分项//微分项

return(rOUT);

}

(3)显示部分因为管脚不足,若用液晶或点阵屏或OLED,则需要串转并器件,在速度上对整体控制不利。

故用74LS138器件,简单的将3个I/O口转为8个I/O口,用8个LED显示,在整体控制上,简单明了。

四.硬件设计

7、高亮LED驱动模块:

传统的大功率LED电源,大部分是用220VAC~DC后面再用LM358或者三极管来做恒流,此电路恒流精度低,并且过温,短路等保护功能没有,输出的可变性不强.故在此设计中高亮LED采用,大电流,高压DC/DC升压恒流XL6004恒流驱动,其具有宽电压输入,大电流输出,且其效率可以达到92%,原理图如下:

图3.1高亮LED驱动模块

8、无影的实现:

无影灯原理参照手术无影灯通过多个光源实现无影效果的,手术无影灯用来照明手术部位,以最佳地观察处于切口和体腔中不同深度的小的、对比度低的物体。

并能将色彩失真降到最低程度。

此外,无影灯还要求在工作过程中不散发出过量的热。

手术无影灯如下:

图3.2手术无影灯布局

本设计也采用多个光源实现无影效果,其特点是照度高,因为采用恒流驱动,使高亮灯能长时间工作,由于在设计中能充分散热,故不会发出过量的热量影响使用者的使用。

9、光照采集:

采用可见光光敏电阻作为光照采集器件,其工作原理方框图如下图所以:

图3.3光照采集原理方框图

(4)人体感应:

人体感应采用热式红外采集,其工作方框图如下:

图3.4人体感应原理方框图

(5)电源:

电源由变压器、整流桥、和滤波电路组成,再由开关电源器件LM2596构成,设计较简单,不再叙述。

4、程序设计

程序流程图如图5.1所示。

系统流程图如下:

系统创新

1、灯珠亮度自动可控,使台灯发出亮度与环境亮度之和保持一固定值,无需人为频繁操作。

2、多模式选择,不同情景用不同模式。

3、灯盘设计模拟手术室用的无影灯,避免写字时手得遮挡引起照明度不足,保护视力。

4、环境探测,解决用户强光久照伤眼,弱光久视伤眼,用眼过度。

突然离开忘记关灯费电情况等各种情况。

5、优秀的电池管理方案,更高效率,增长电池和灯珠寿命。

6、自动调节亮度,更加有效利用电源,更加节能。

图5.1

5、产品性能测试

实物作品

(1)放大部分数据(放大68倍)

电桥输出电压(mv)

5

10

15

20

25

30

35

40

45

50

放大输出(mv)

345

688

1023

1361

1710

2038

2380

2727

3065

3409

理论值(mv)

340

680

1020

1360

1700

2040

2380

2720

3060

3400

(2)总个系统的测试数据

AD采样(mv)

626

924

1122

1319

1509

1707

1911

2101

2295

2693

2884

3077

3275

3458

公式

温度

34.4

41.1

45.4

49.8

54.1

58.5

63.1

67.4

71.7

80.7

84.9

89.3

93.8

97.9

修正公式温度

27.7

35.4

40.2

45.1

49.6

54.5

59.8

64.2

69.0

79.4

87.5

89.4

94.3

98.3

实测

温度

27.8

35.4

40.1

45.1

49.7

54.5

59.8

64.4

69.1

79.5

87.5

89.4

94.4

98.5

10、总结

从放大部分所测得数据可以看出,放大部分基本和理论值相对应,有些误差可能的来源有:

仪用放大器本身的误差、人工测量误差、万用表的误差等。

从总个系统的测试数据看,特别是看附表的曲线图,实际和理论有比较大的误差,这个是无法避免的,通过人为的修改后,取得了很好的效果。

总而言之,本系统实现了题目的基本要求的全部、发挥部分的大部!

附录

#include

#defineuintunsignedint

#defineucharunsignedchar

#defineulongunsignedlong

#defineCSBIT0

#defineSIDBIT1

#defineSCLKBIT2

#defineLCDPORTP2OUT

#defineSID_1LCDPORT|=SID

#defineSID_0LCDPORT&=~SID

#defineSCLK_1LCDPORT|=SCLK

#defineSCLK_0LCDPORT&=~SCLK

#defineCS_1LCDPORT|=CS

#defineCS_0LCDPORT&=~CS

#defineCLKBIT3

#defineSH_LDBIT4

#defineQHBIT5

//#defineKEYPORTP2OUT

#defineCLK_1LCDPORT|=CLK

#defineCLK_0LCDPORT&=~CLK

#defineSH_LD_1LCDPORT|=SH_LD

#defineSH_LD_0LCDPORT&=~SH_LD

#defineCPU_F((double)1000000)

#definedelay_us(x)__delay_cycles((long)(CPU_F*(double)x/1000000.0))

#definedelay_ms(x)__delay_cycles((long)(CPU_F*(double)x/1000.0))

unsignedchara[]={"欢迎使用"};

unsignedcharb[]={"当前按键:

"};

unsignedcharc[]={"实时温度:

"};

unsignedchard[]={"0123456789℃.V"};

unsignedchare[]={"当前电压:

"};

uintkey,value,key_shu;

floattemperature;

floatIntDegC;

longtemp_IntDegc;

longIntDegC_1;

longtemp_set=30;

voiddelay(unsignedcharms);

voidwrite_cmd(ucharcmd);

voidwrite_dat(uchardat);

voidlcd_pos(ucharx,uchary);

voidLCD_init(void);

voidADC10_init(void);

voidLCD_show(void);

voidtemp_collect(void);

voidpwm_control(ucharpwm_type);

voidtemp_control();

uintkeyscan();

uintkeyvalue(uintkey_value);

intmain(void)

{

//Stopwatchdogtimertopreventtimeoutreset

WDTCTL=WDTPW+WDTHOLD;

ADC10_init();

P2SEL=0x00;

P2DIR=BIT0+BIT1+BIT2;

P2DIR|=CLK+SH_LD;//P2.3,P2.4为输出

P2DIR&=~QH;//P2.5为输入

LCD_init();

delay(40);

LCD_show();

while

(1)

{

key=keyscan();

key_shu=keyvalue(key);

lcd_pos(2,5);

write_dat(key_shu+48);

if(key_shu==8)

{

P1DIR=0x01;

P1OUT^=BIT0;

delay_ms(50);

}

ADC10CTL0|=ENC+ADC10SC;//ADC10Enable

__bis_SR_register(CPUOFF+GIE);//LPM0withinterruptsenabled

//temp_collect();

temp_control();

}

}

voiddelay(unsignedcharms)

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1