




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 电控学院课程设计(论文) 课程名称: ARM嵌入式系统 题 目: 红外感应的自动窗帘控制器 2015年 1 月 22 日 中文摘要31绪论32 ARM嵌入式系统概述42.1嵌入式系统4嵌入式计算机系统的出现,是现代计算机发展史上的里程碑。嵌入式系统诞生于微型计算机时代,与通用计算机的发展道路完全不同,形成了独立的单芯片的技术发展道路。由于嵌入式系统的诞生,现代计算机领域出现了通用计算机与嵌入式计算机两大分支。42.2嵌入式系统的特点43.系统方案论述54. 系统模块概述55.系统结构设计图56.总体设计思路67.硬件设计77.1 步进电机介绍77.2 EasyARM2131开发板介绍87.2
2、.1 EasyARM2131开发板功能框图97.3 显示模块97.3.1 TH12864-15液晶显示介绍97.3.2 TH12864-15液晶显示电路107.4 ULN2003A驱动模块107.4.1 ULN2003A驱动芯片介绍107.4.2 驱动电路118.光控模块119整体电路原理图1310软件部分1310.1 程序流程图1310.2 程序设计(见附录)1511实物图1512实习心得16结论21致谢22参考文献22附录22第 28 页西安科技大学电控学院课程设计红外感应的自动窗帘控制器的设计中文摘要摘要:随着科学技术的发展和人们生活水平的提高,智能家居逐 渐走进我们的生活。本文设计了一
3、种基于ARM的红外感应自动窗帘控制器,系统包括手动和自动两种模式,在手动模式下通过按键来控制步进电机的正反转,使窗帘的打开,关闭和停止。在自动模式下,设计光敏检测电路,可根据光线的强度自动控制窗帘的打开或关闭,从而实现手动和自动控制窗帘的目的。关键词:ARM;步进电机;光敏检测电路;自动控制;AbstractWith the development of science and the improvement of people's living standards, smart home home furnishing gradually goes into our lives. T
4、his paper presents an infrared sensor automatic curtains which is based on ARM controller, the system includes manual and automatic modes, in manual mode,we control the stepper motor to turn around through the key so as to make curtain open, close and stop. In automatic mode, we design the photo det
5、ector circuit to automatically control the curtains open or close,which depends on the intensity of light, finally we achieve the purpose of the manual and automatic control curtains. Key words:ARM; stepper motor; photo detection circuit; control automatically1绪论 近几年,随着科学技术的发展,光控,温控,及遥控等技术应运而生,给人们的生
6、活带来了极大的方便。红外感应的自动窗帘控制器,既能解决每天用手打开窗帘的不便,又能显示出生活的品味,同时可以根据光线的明暗来自动控制窗帘的开关,更进一步满足人们的要求。该设计可广泛应用于别墅、公寓、宾馆、饭店、学校、影剧院、会议厅等各种公共场合、具有广阔的应用前景。随着红外窗帘热潮在世界范围内的兴起,随着中国电子技术的飞速发展,人们的生活水平在不断提高,智能电子技术广泛应用于日常生活中,红外遥控自动窗帘已经成为未来家居设计与装饰的主要潮流和发展方向。本次基于ARM的红外感应自动窗帘控制器主要有以下几个特点: (1)利用步进电机正反转实现控制窗帘的开关。 (2)具有无线遥控和手动按键控制两种功能
7、。 (3)液晶屏能够指示运行状态。 (4)体积小、结构简单,工作稳定。2 ARM嵌入式系统概述2.1嵌入式系统 嵌入式计算机系统的出现,是现代计算机发展史上的里程碑。嵌入式系统诞生于微型计算机时代,与通用计算机的发展道路完全不同,形成了独立的单芯片的技术发展道路。由于嵌入式系统的诞生,现代计算机领域出现了通用计算机与嵌入式计算机两大分支。2.2嵌入式系统的特点 (1)由于嵌入式系统一般是应用于小型电子装置,系统资源相对有限,所以内核较之传统的操作系统要小得多。 (2)嵌入式系统的个性化很强,其中的软件系统和硬件的结合非常紧密,一般要针对硬件进行系统的移植,即使在同一品牌、同一系列的产品中也需要
8、根据系统硬件的变化和增减不断进行修改。 (3)嵌入式系统一般没有系统软件和应用软件的明显区分,不要求其功能的设计及实现过于复杂,这样一方面利于控制系统成本,同时也利于实现系统安全。 (4)高实时性的操作系统软件是嵌入式软件的基本要求。而且软件要求固化存储,以提高速度,软件代码要求高质量和高可靠性。 (5)嵌入式软件开发要想走向标准化,就必须使用多任务的操作系统。嵌入式系统的应用程序可以没有操作系统而直接在芯片上运行。 (6)嵌入式系统开发需要专门的开发工具和环境。由于嵌入式系统本身不具备自主开发能力,即使设计完成以后,用户通常也不能对其中的程序功能进行修改,因此必须有一套开发工具和环境才能进行
9、开发,这些工具和环境一般是基于通用计算机上的软硬件设备以及各种逻辑分析仪、混合信号示波器等。3.系统方案论述 方案一:采用LPC2131 ARM芯片为主控制芯片,由ULN2003A为驱动芯片控制步进电机转动;并通过MG12864点阵图形液晶图形模块显示步进电机转动模式(包括正转、反转和停止等)。 方案二:用三极管组成的H桥驱动直流电机,优点有电路简单,价格低廉等,重量也轻许多,适合驱动小车。 系统最终选择方案一,因为LPC2131外接简单,价格低廉,能够最大化的的减少工作量。4. 系统模块概述 本小组设计将系统分为五大模块: 光线检测模块 手动控制的按键电路
10、LPC2131开发板 电机驱动模块 状态指示模块5.系统结构设计图按键(实现遥控手动控制)光线传感器(实现自动控制)LPC2131按键+遥控的Rudy额光控+=+光电开关(防过卷)液晶状态显示窗帘状态LED指示步进电机6.总体设计思路 自动窗帘控制系统总体方案设计是基于满足设计要求的前提并且根据理论上的可实现性和硬件上的经济实用性,而进行设计的重要环节。本章从人们对系统功能需求出发,在综合考虑各种因素的情况下,设计出自动控制系统的总体构架,并且在基本功能需求的基础上尽可能考虑系统的可扩展性。 本次设计采用LPC213芯片为主控制芯片,由ULN2003A为驱动芯片控制步进电机转动;并通过MG12
11、864点阵图形液晶图形模块显示窗帘运行状态。 本次设计硬件部分有LPC2131最小系统、ULN2003A驱动电路、按键模块、五线四相步进电机、TH12864-15,光线检测模块及部分相互协调的工作实现控制功能。7.硬件设计7.1 步进电机介绍 步进电机是机电控制中一种常用的执行机构,其原理是通过对它每相线圈中的电流和顺序切换来使电机作步进式旋转。驱动电路由脉冲信号来控制,所以调节脉冲信号的频率便可改变步进电机的转速。通俗地说:当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(及步进角)。通过控制脉冲个数即可以控制角位移量,从而达到准确定位的目的。同时通过控制脉冲频
12、率来控制电机转动的速度和加速度,从而达到调速的目的,现在比较常用的步进电机包括反应式步进电机(VR)、永磁式步进电机(PM),混合式步进电机(HB)和单相式步进电机等。 步进电机不能直接接到工频交流或直流电源上工作,而必须使用专用的步进电动机驱动器,它由脉冲发生控制单元、功率驱动单元、保护单元等组成。驱动单元与步进电动机直接耦合,也可理解成步进电动机微机控制器的功率接口。 本次设计选择5V直流步进电机28BYJ-48为我们窗帘模型提供动力,使用高耐压、大电流复合晶体管ULN2003作为步进电机的驱动芯片。步进电机28BYJ48型四相八拍电机,电压为DC5V。当对步进电机施加一系列连续不断的控制
13、脉冲时,它可以连续不断地转动。每一个脉冲信号对应步进电机的某一相或两相绕组的通电状态改变一次,也就对应转子转过一定的角度(一个步距角)。 当通电状态的改变完成一个循环时,转子转过一个齿距。四相步进电机可以在不同的通电方式下运行,常见的通电方式有单(单相绕组通电)四拍(A-B-C-D-A.),双(双相绕组通电)四拍(AB-BC-CD-DA-AB-.),八拍(A-AB-B-BC-C-CD-D-DA-A.)7.2 EasyARM2131开发板介绍 EasyARM2131开发板是广州周立功公司设计的EasyARM系列开发套件之一,采用了PHILIPS公司基于ARM7TDMI内核、单电源供电、LQFP6
14、4封装的LPC2131,具有JTAG仿真调试、ISP编程等功能。 开发板上提供了一些键盘、LED、蜂鸣器等常用功能部件,还具有RS232接口电路、I2C存储器电路。另外,用户也可以更换兼容的CPU进行仿真调试,如LPC2132、LPC2138、LPC2142等。灵活的跳线组合(开发板内使用的所有I/O均可断开连接),还有用户I/O接口,极大地方便了用户进行32位ARM嵌入式系统的开发实验。7.2.1 EasyARM2131开发板功能框图7.3 显示模块7.3.1 TH12864-15液晶显示介绍 TH12864-15是128(列)×64(行)点阵的液晶显示模块。当15脚为
15、低且16脚为高时选中TH12864-15的左区(左边的64×64),当15脚为高且16脚为低时选中MG12864的右区(右边的64×64)。19脚和20脚是为了在光线暗的环境下看到液晶显示器的显示内容而加的背光,即在液晶显示器的背面加一光源。控制线RW、CSI、CS2、RS必须在使能线E为低的时候改变。当使能线E为高时控制线RW、CSI、CS2、RS不能改变;使能线E为高时TH12864-15从数据线DB0DB7输出数据。 下表为TH12864-15的管脚说明引脚号 符号 功能引脚号 符号 功能1GND 模块的电源地714 DB0DB7 并行数据072VDD 模块的电源正端
16、15PSB 并/串行接口选择3 V0 LCD驱动电压输入端16NC空脚4 RS 并行的指令/数据选择信号;串行的片选信号17RET复位,低电平有效18 NC 空脚5 R/W 并行的读/写选择信号;串行的数据口19 BLA 背光源正极(LED+5V)6 E 并行的使能信号;串行的同步时钟19BLK 背光源负极(LED-0V)7.3.2 TH12864-15液晶显示电路 图.12864液晶显示模块7.4 ULN2003A驱动模块7.4.1 ULN2003A驱动芯片介绍 ULN是集成达林管IC,内部还集成了一个消线圈反电动势的二极管,可用来驱动继电器。它是双列16脚封装,NPN晶体管矩阵,最大驱动电
17、压为50V,电流为500MA,输入电压为,适用于TTL COMS,由达林顿管组成驱动电路。下图为ULN2003A的管脚功能图。图ULN2003A管脚图 ULN2003 高压大电流达林顿晶体管阵列芯片,吸收电流可达500mA,输出耐压50V,具有很强的驱动能力。内部具有7组达林顿管电路,可以驱动7路负载。IN 为输入端可由单片机引脚直接控制,当输入端为高电平时,输出端OUT输出低电平。7.4.2 驱动电路8.光控模块 光敏电阻的工作原理是基于内光电效应。在半导体光敏材料两端装上电极引线,将其封装在带有透明窗的管壳里就构成光敏电阻,为了增加灵敏度,两电极常做成梳状。用于制造光敏电阻的材料
18、主要是金属的硫化物、硒化物和碲化物等半导体。在光控模块下,当环境光线亮度达到设定阈值时,输出端输出低电平(光线较暗)步进电机正转;当外界光线亮度超过设定阈值时,输出高电平(光线较亮)步进电机反转,从而实现窗帘的打开和关闭,光敏电阻检测电路如下:9整体电路原理图10软件部分10.1 程序流程图10.2 程序设计(见附录)11实物图参考文献 1卡莫尔.嵌入式系统:体系结构、编程设计 M北京.清华大学出版社 2孙秋野等ARM嵌入式开发典型模块M北京.人民邮电出版社 3田泽等嵌入式系统开发与应用教程M北京航空航天大学出版社 4李伯成等嵌入式系统可靠性设计M北京电子工业出版社 5马忠梅ARM
19、嵌入式处理器与应用基础M北京一航空航天出版 6张绮文等ARM嵌入式常用模块与综合系统设计M电子工业出版社附录程序清单如下: /* 文 件 名:main.c* 功 能:LED显示控制。* 通过GPIO控制步进电机* 说 明:将跳线JP14和JP19全部短接。 */#include "config.h"#define MOTOA 1<<10 / P0.10 #define MOTOB 1<<11/ P0.11 #define MOTOC 1<<12/ P0.12 #define MOTOD 1<<13/ P0.13 #d
20、efine key1 1<<16 / A-B-C-D#define key4 1<<17 /反转#define key5 1<<18 #define KEYCON 0x001f0000 / LED控制字#define MOTOCON 0x00003c00 / MOTO控制字#define GPIOSET(PIN) IO0SET = PIN / 方便修改置位端口#define GPIOCLR(PIN)IO0CLR = PIN / 方便修改清位端口#define RS 1<<9 /P0.9#define SID 1<<7 /P0.6#de
21、fine E 1<<5 /P0.4unsigned char IC_DAT164="正在打开窗帘" unsigned char IC_DAT264="窗帘已经打开"unsigned char IC_DAT364="正在关闭窗帘"unsigned char IC_DAT464="窗帘已经关闭"int i;int k=0;int g=0;void TransferCom(unsigned char data0);void TransferData(unsigned char data1);void dela
22、y(unsigned int m);void delay_10ms(uint32 n);void lcd_mesg(unsigned char *adder1);void LCD12864_init(void);void initinal(void);void DelayNS(uint32 dly);void MOTO_Mode1(uint8 i); / A-B-C-Dvoid MOTO_Mode10(uint8 i);void ADCINIT(void);uint32 ADC(void);void ADCINIT(void)PINSEL1 = 1 << 28;/ P0.30连接到
23、AD0.3/* 进行ADC模块设置 */AD0CR = (1 << 3)|/ SEL=8,选择通道3(Fpclk / 1000000 - 1) << 8)|/ CLKDIV=Fpclk/1000000-1,转换时钟为1MHz(0 << 16)|/ BURST=0,软件控制转换操作(0 << 17)|/ CLKS=0, 使用11clock转换(1 << 21)| / PDN=1,正常工作模式(0 << 22)| / TEST1:0=00,正常工作模式(1 << 24)|/ START=1,直接启动ADC转换(0
24、<< 27); / 直接启动ADC转换时,此位无效uint32 ADC(void)uint32 ADC_Data;DelayNS(10);ADC_Data = AD0DR;/ 读取ADC结果,并清除DONE标志位AD0CR |= 1 << 24;/ 进行第一次转换while (ADDR & 0x80000000) = 0);/ 等待转换结束AD0CR |= 1 << 24;/ 再次启动转换while (AD0DR & 0x80000000) = 0);/ 等待转换结束ADC_Data = AD0DR;/ 读取ADC结果ADC_Data = (
25、ADC_Data >> 6) & 0x3ff;ADC_Data = ADC_Data * 3.3;/ 参考电压经过3/4分压ADC_Data = ADC_Data / 1024;return ADC_Data;/* 名 称:main()* 功 能:根据表DISP_TAB来控制LED显示。*/int main(void) uint32 adc; /* PINSEL2使用启动代码的默认配置,切勿任意配置PINSEL2,否则总线会受到干扰 */ PINSEL0=0x00000000; PINSEL1=0X00000000; PINSEL2&=(0x00000006); /
26、设置所有I/O口为普通GPIO口 IO0DIR =MOTOCON; / 配置LED控制I/O方向 LCD12864_init(); ADCINIT();while(1) adc=ADC(); if(IO0PIN&key5)=0) g=0; if (IO0PIN&key1)=0&&k=0) g=1; MOTO_Mode1(10); if(IO0PIN&key4)=0&&k=1) g=1; MOTO_Mode10(10); / A-B-C-D if(adc<1&&k=0&&(IO0PIN&key4
27、)!=0&&g=0)MOTO_Mode1(10); adc=ADC();if(adc>1&&k=1&&(IO0PIN&key1)!=0&&g=0) MOTO_Mode10(10); return(0);/* 名 称:DelayNS()* 功 能:长软件延时* 入口参数:dly延时参数,值越大,延时越久* 出口参数:无*/void DelayNS(uint32 dly) uint32 i; for(; dly>0; dly-) for(i=0; i<5000; i+); /* 名 称:MOTO_Mode1(
28、)* 功 能:单四拍程序* 入口参数:uint8 i延时参数,值越大,延时越久* 出口参数:无*/void MOTO_Mode1(uint8 j) / A-B-C-Dinitinal(); for(i=0;i<1000;i+) lcd_mesg(IC_DAT1); /显示汉字界面1 /* DA */ GPIOSET(MOTOB); GPIOSET(MOTOA); DelayNS(j); GPIOCLR(MOTOB); GPIOCLR(MOTOA); /* CD */ GPIOSET(MOTOC); GPIOSET(MOTOB); DelayNS(j); GPIOCLR(MOTOC); G
29、PIOCLR(MOTOB); /* BC */ GPIOSET(MOTOD); GPIOSET(MOTOC); DelayNS(j); GPIOCLR(MOTOD); GPIOCLR(MOTOC); /* AB */ GPIOSET(MOTOA); GPIOSET(MOTOD); DelayNS(j); GPIOCLR(MOTOA); GPIOCLR(MOTOD); initinal(); lcd_mesg(IC_DAT2); k=1; void MOTO_Mode10(uint8 j) / A-B-C-D initinal(); for(i=0;i<1000;i+) lcd_mesg(
30、IC_DAT3); /* AB */ GPIOSET(MOTOA); GPIOSET(MOTOD); DelayNS(j); GPIOCLR(MOTOA); GPIOCLR(MOTOD); /* BC */ GPIOSET(MOTOD); GPIOSET(MOTOC); DelayNS(j); GPIOCLR(MOTOD); GPIOCLR(MOTOC); /* CD */ GPIOSET(MOTOC); GPIOSET(MOTOB); DelayNS(j); GPIOCLR(MOTOC); GPIOCLR(MOTOB); /* DA */ GPIOSET(MOTOB); GPIOSET(MO
31、TOA); DelayNS(j); GPIOCLR(MOTOB); GPIOCLR(MOTOA); initinal();lcd_mesg(IC_DAT4);k=0;/* 名称:delay()* 功能:延时程序*/void delay(unsigned int m) unsigned int i,j; for(i=0;i<m;i+) for(j=0;j<50;j+);/* 名称:delay_10ms()* 功能:延时程序*/void delay_10ms(uint32 n) uint32 i,j; for(i=0;i<n;i+) for(j=0;j<2000;j+);/* 名称:initinal()* 功能:LCD12864字库初始化*/void initinal(void) delay(10); TransferCom(0x30); /8bit设置。RE=0.G=0,图片显示关 delay(100); TransferCom(0x0C); /D=1,显示开 delay(100); TransferCom(0x01); /清屏 delay_10ms(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年华北理工大学轻工学院单招职业技能测试题库完整版
- 2025年河北工业职业技术大学单招职业技能测试题库及答案一套
- 2025年湖北省鄂州市单招职业倾向性测试题库附答案
- 科技发展与人类文明的新篇章
- 2025年广东女子职业技术学院单招职业倾向性测试题库带答案
- 2025年河北省建筑安全员A证考试题库及答案
- 中会财管复习测试题
- 咨询-规划复习测试有答案
- 2025年河北青年管理干部学院单招职业适应性测试题库审定版
- 2025年河南对外经济贸易职业学院单招职业倾向性测试题库及答案1套
- 公司资产情况说明范文百度
- 医疗器械中有害残留物检验技术
- 2015-2022年大庆医学高等专科学校高职单招语文/数学/英语笔试参考题库含答案解析
- 产品过程特殊特性初始清单(示例)
- 两篇古典英文版成语故事塞翁失马
- 中国古代文学史 马工程课件(中)13第五编 宋代文学 第一章 北宋初期文学
- GB/T 14643.4-2009工业循环冷却水中菌藻的测定方法第4部分:土壤真菌的测定平皿计数法
- DL-T 5190.1-2022 电力建设施工技术规范 第1部分:土建结构工程(附条文说明)
- GA/T 914-2010听力障碍的法医学评定
- GA/T 642-2020道路交通事故车辆安全技术检验鉴定
- 建筑工地生活区管理制度范本
评论
0/150
提交评论