基于51单片机的红外遥控控制电机转速设计 - 范文中心

基于51单片机的红外遥控控制电机转速设计

01/16

摘 要

本文首先描述了红外线通信原理和红外线接收电路,其次,介绍了直流电机的结构和工作原理,然后,详细的阐述了单片机内部结构及其原理,最后,着重介绍了PWM调速和直流电动机正转,反转和制动的原理。

直流电机具有良好的调速特性。调速简单,平滑,调速范围大,过载能力强的特点。能满足工业和生活中各种不同的要求,在近代社会发展中起着重要的作用。电机采用红外遥控功能控制后,整个电机控制更简单、方便、且易于操作。

本文中通过红外线按键发射遥控信号,经过红外线接收元件接收信号,然后通过单片机对直流电动机的控制,实现对电动机的启动,降速、升速和停止功能。

关键词

红外线遥控,直流电机,单片机,调速,制动

PS:毕业设计 14届 知网查的重复率是0.3% 拿出来给学弟学妹们参考一下 也可以代做毕业设计 论文全手工 保证不重复 写论文或者做板子都可以

电路设计 单片机软件编程 PLC也差不多 扣扣

9.1.4.0.7.8.0.9.9 联系我

Abstract

This paper describes the principle of infrared communication and the infrared receiving circuit, secondly, introduced the structure and working principle of DC motor, and then, described in detail the internal structure and principle of single chip microcomputer, finally, introduces the PWM control and the DC motor forward, reverse, brake principle

DC motor with a speed regulation characteristic of good. Speed control is simple, smooth, wide speed range, the characteristics of strong overload capacity. To meet the requirements of different kinds of industry and daily life, in the development of modern society play a important role. The use of infrared remote control function to control the motor, the motor control more simple, convenient, and easy to operate.

This paper through the infrared remote control signal transmitter, through the infrared receiving element receives the signal, and then through the singlechip control of DC motor, the motor starting, speed, speed up and stop function.

KEY WORDS:

Infrared remote control, dc motor, single chip microcomputer, speed control, brakeis

目 录

前 言 ................................................................................................................................ 4

第1章 红外线通信 .................................................................................................... 5

1.1 红外通信原理 ................................................................................................... 5

1.1.1 红外接收电路 ............................................................................................ 5

1.1.2红外发光管 ............................................................................................... 6

1.1.3红外接收器件 ........................................................................................... 6

1.1.4红外遥控系统结构 ................................................................................... 6

1.1.5硬件电路设计 ........................................................................................... 7

1.1.6红外解码过程 ........................................................................................... 7

第2章 直流电动机原理 ............................................................................................ 8

2.1 直流电动机 ...................................................................................................... 8

2.2 直流电动机结构 ............................................................................................... 8

2.2.1 定子的结构和原理 .................................................................................... 8

2.2.2转子的结构和原理 ..................................................................................... 9

2.2.3其它部分的结构和原理 ............................................................................. 9

2.3直流电动机的控制原理 .................................................................................. 10

第3章 单片机STC89C51 ........................................................................................11

3.1 单片机概况 ......................................................................................................11

3.2 单片机内部结构和原理 ..................................................................................11

3.2 复位电路及时钟电路 ..................................................................................... 12

3.1 单片机最小系统 ............................................................................................. 13

第4章PWM调制和电机的使用 ............................................................................. 14

4.1 PWM调制 ........................................................................................................ 14

4.2 直流电机的使用 ............................................................................................. 14

4.2.1 电机的启动 .............................................................................................. 14

4.2.2 电机的调速 .............................................................................................. 14

4.2.3 电机的反转 .............................................................................................. 15

4.2.4电机的制动 ............................................................................................... 15

4.3 电机驱动芯片L293d ...................................................................................... 15

第5章 系统硬件设计 ............................................................................................ 17

5.1 系统硬件电路图 ......................................................................................... 17

5.2 系统硬件PCB图 ........................................................................................ 18

5.3 实物图 ......................................................................................................... 19

结论 .......................................................................................................................... 20

致谢 .......................................................................................................................... 21

参考文献 .................................................................................................................. 22

附录 .......................................................................................................................... 23

前 言

红外线器件应用范围的越来越广,也逐渐的走进了人们的日常生活。因此很多人对红外遥控也不再陌生和好奇,更多的是应用在电视机,电风扇,空调中被大家熟知。但是仅仅了解和知道是不够的,很有必要去理解它的原理。

直流电动机有着快速性、可靠性、可控性、效率高等许多特点,受到了各行各业的热爱,比如电气仪表,汽车,家用电器,儿童玩具等方面得到日益普及,成为我们日常生活的一部分。由于近代科技的飞速发展,使我们不再仅仅局限于直流电机,交流电动机逐渐取代直流电动机,成为目前国内外研究热门课题之一。但直流电动机仍被采用在许多行业上,比如数控机床。同时,直流电动机作为交流电动机的基础,了解直流电机驱动也是不可少的。

本设计通过红外按键控制,经过单片机解码对电动机进行一系列操作。当处理的信息比较复杂和精细时,仅仅采用硬件电路来设计,耗时耗力,并且不易于检测和维修,因此本文采用软件编程和硬件电路设计的结合,这样更简单,直观,使用起来也方便。

红外遥控的应用带动整个微电子行业的发展,尤其在自动控制领域。单片机作为软硬件的大脑,在实时检测和自动控制领域中是要学习的必不可少的知识。但只知道单片机的功能还不行,对电路原理也要有一定的知识。更重要的是,要学会如何对现场信号的采集,排除干扰信号,收集有效信号,最后通过分析应用到实践中。

郑州

/****/大学毕业设计

第1章 红外线通信

1.1 红外通信原理

红外通信原理是是通过红外线波段进行信号交流传递。红外线的发射部分将数据调制为一系列的脉冲信息。然后将接收的信号转变为电信号,最后再经过内部电路的滤波,放大等几项操作后送给解调电路进行解调。还原为单片机或者计算机能识别的信号进行控制。简而言之,红外通信原理实际上就是一个调制和解调的过程,最后变成所人们需要的二进制数字信号,通过利用红外线信号通道进行传输,控制实现一系列功能,因此红外通信接口可以看成是针对红外信号通道的调制解调器

1.1.1 红外接收电路

大多数红外接收器通过集成为单个元件。它通常有三个引脚,输出为方波信号(一系列的高低电平),本设计选用集成块为VS18383,如图1-1。

图1-1 红外接收电路

发射器发出的红外线信号,由红外线接受器件接收,经VS18383处理后获得一系列方波信号。然后送给单片机P3.2端口,经过单片机的内部处理计算,根据处理结果,再由单片机产生控制电机的相关信息,对器件控制。

红外线接收器原理分析:当红外接收器件接收产生的信号时,光信号转换为的电信号的下降沿触发单片机外部中断INT0引脚。单片机接收下降沿信号时对其识别。对第1位数码的宽度进行计算。若采集的

第1位低电平数码的脉宽不到8 ms,将作为错误信号处理,为非引导码。当经过计算的脉冲冲宽度超过8 ms而不到16ms时候,则认定为引导码,同时对引导码储存。然后分别接收引导码后的操作码和客户码,也储存在定义的数据区。

1.1.2红外发光管

红外发光二极管一般使用材料为砷铝化镓,英文简称为GaAs,外加正向偏置电压,制成PN结。通常为浅蓝色、全透明或黑色的树脂封装,通电后会产生的光波波长波段一定的红外线。红外发射管如图1-2:

图1-2 红外发光管

1.1.3红外接收器件

红外一体化接收头:它元件里面含有一个滤波电路。功能是用来清楚红外线合成信号得有效信号,排除其它无用信号。本文中载波信号为38Kz,并送出接收到的信号。当红外线的信号进入与之配套的红外线接收器件,经过接收器件的解码,在其输出端便可以得到原先红外发射器发出的二进制数字编码。红外接收头如图1-3:

图1-3 红外接收器件

1.1.4红外遥控系统结构

通常的红外遥控系统有两部分组成,一部分为接收电路,还有就是发射电路。应用编码或者解码集成电路芯片来进行相应的控制操作。发射一端为红外遥控板、经过编码和调制、通过红外灯管发出信号。

接收器件内部集成内部光电放大电路、经过解调步骤之后送给单片机

解码。红外遥控系统结构流程如图1-4:

图1-4 红外发遥控系统

1.1.5硬件电路设计

发射电路:

图1-5 红外发射电路

1.1.6红外解码过程

通常由红外发光管与38Kz载波发射,红外接收头VS18383采集,并收集能识别的信号,在它内部进行解码,形成一系列的高低电平矩形方波。很显然,这种矩形方波是我们很难利用的,所以把红外接受的引脚接单片机的外部中断INT0,由单片机外部中断和单片机内定时器配合。对其解码的高低点评进行识别,并加以分析。识别出红外发射管发射的高低电平,通过定时器计算,把高低电平变成十六进制的数字,并储存在单片机内部中,形成数字开关,对相应的外围部件进

行控制或进行显示。

第2章 直流电动机原理

2.1 直流电动机

电动机机电能量相互转换的装置。输出或输入为直流的电机,叫做直流电动机。直流电动机把直流电能转化为机械能,它是把电能转化为机械能的装置。启动简便,快捷的特性,使它多用在对启动,调速较高的场合,例如在电车,龙门刨等设备上应用很广泛。直流发电机把机械能转变为直流电能。它是一种把机械能转化为电能的装置。

2.2 直流电动机结构

直流电动机主要有两部分构成,一部分为定子,另一部分为转子。通常来说静止的部件叫做定子,其余的 部件叫做转子。因为绕组和电枢绕组间是相对运动的,所以从理论上讲,两部分都可以做为定子和转子。但是通常为了维护方便和检测故障,把旋转的一部分规定为转子,它包括机座,主极,换向器等部分。而旋转的一部分叫转子。转子部分则包括电枢铁心,电枢绕组,风扇,轴承和转轴。除此之外的其它部分结构有电刷装置,轴承支撑。

2.2.1 定子的结构和原理

主磁极:主磁极主要是生成气隙磁场,使电枢表面形成磁通按照一定的规律排列。它的励磁绕组有两部分组成,分别是并励和串励。并励绕组数量比较多,并且细。而串励则相反,它的绕组数量少,导线比较粗。主磁极由0.5mm到3mm厚的钢板冲击成的冲片形成的,叠压成形。主极叠片一般用螺钉固定在磁轭上。

换向极:换向极由两部分组成,一部分是换向绕组,另一部分为铁心。它处于两个主磁极中间位置,作用产生换向磁场,帮助主磁极换向。

机座和磁轭:机座的主要作用只要是支撑机座,同时作为磁极间的磁通通路,一般用铸钢材料铸成。通常才有叠片的方式,主要是为

了减弱涡流效应。磁轭用薄钢制成,相互之间绝缘,同时固定在机座上。

2.2.2转子的结构和原理

电枢绕组:是进行能量变换的部件,它的功能是产生感应电动势。在磁场和感应电动势下产生电磁转矩。它是由一系列元件结合而成,置于电枢线圈的槽中。为了避免线圈被转动时抛离槽外面,通常将槽口牢固起来。然后按照一定规律放到换向片上,元件的一个边放在一个槽内,另一个边放在另外的槽外,相邻的两个槽依次放上元件,一直到槽内放满为止。

换向器:将外部电源的直流电流转换为内部的交流电流,在换向器上电刷的作用,也就使电枢绕组上的电流为交流电流。因此电磁转矩的方向保持恒定不变,电枢绕组上的导体在磁场中受力方向也就不变。通常换向片采用的是绝缘材料,互相之间是绝缘的,云母环对地也是绝缘的。

电枢铁心:电枢铁心的作用是提供主极磁通的通路。通常铁心用硅钢片制成,呈片状,这样的最用可以减少磁滞损耗。电枢之间中的磁通会依据电枢在磁场得变动发生连续转变。

2.2.3其它部分的结构和原理

电刷装置:电刷通常由石墨材料制成。电流和电枢绕组通过电刷与外面的电路连接起来。它的一端固定在刷架上,每个刷架上都有一个或者一组电刷。电刷作用是保证电枢转动时和换向器有紧密良好的接触。同极电刷连在机外连接在一起。

轴承支撑:轴承座固定在机座两端的端盖上,轴承通过轴承座直接支撑在电机地板上,需要时,可以自由的调节整轴的中心位置。不同电机使用轴承不同,中小型电机通常使用滚动轴承,而大型电机通常滑动轴承。

2.3直流电动机的控制原理

在电动机两端加上电源,电刷两极之间就有电流流过。电流便从从电刷流入,从B处流出。沿着abcd顺序,如图2-1(a)所示。然后从B方向流出,于是在磁场中流过电流的两导体会同时受力,并有一个相对的转矩。由左手定则得出,受力方向相反,使转子转动,方向为逆时针方面旋转。相反当移动到如图2-1(b)位置的时候,换向片1与电刷的B极相互接触,换向片2与电刷的A极相互接触。电流便从电刷A极流入,从B极流出。顺着线圈以dcba方向。此时把根据左手定则判断,两导体受力方向相反。总体受力和之前相同,保持不变,依旧逆时针旋转,这就是直流电机的工作原理。由于电流是直流换向器,实际上,虽然电流通过线圈是交流的,但在磁场中感应受力的方向是一直没有变化的。

线圈上就按照逆时针的方面一直受力。循环往复,产生电动势,带动线圈旋转。在第二圈之后方向始终不变,在转矩的作用下,促使着线圈一直保持转动,就带动整个转子转动,这便是直流电动机的原理。简而言之,只要直流电动机的电枢绕组在磁场中旋转,在换向器的作用下,就会使用受到一个同方向的转矩影响,始终保持同一方向旋转。

图2-1 直流电动机原理

郑州/****/大学毕业设计

第3章 单片机STC89C51

3.1 单片机概况

单片机又叫微控制单元,英文名字micro control unit,是一种经过高度集成得电子线路芯片。内部含有中央处理器(CPU),随机储存器(RAM),只读储存器(ROM)等几种集成模块。由于高度集成的原因,它具有体积小,质量轻,速度快的特点,使它在各行各业,日常生活中应用越来月广泛。随着近代科技不断提高和发展,逐渐形成了以单片机为中心的微控制系统。单片机图3-1

图3-1 单片机

3.2 单片机内部结构和原理

本文选用单片机型号为STC89C51芯片。是八位的单片机,芯片内部集成了中央处理器。十六位定时器/计数器,ROM程序存贮器。四个并行I/O口(P0-P3端口),RAM数据存贮器和中断系统等部件。根据需要使用的方式不一样,单片机有很多封装形式。本次设计使用的是双列直插DIP-40封装,如图3-2

图3-2单片机双列直插PDIP-40封装

郑州

/****/大学毕业设计

3.2 复位电路及时钟电路

复位电路通常分为两种,一种是手动复位电路,另一种是自动复位电路。下面着重对两种复位电路的工作原理进行了介绍。

手动复位电路: 上电复位电路

图3-3(a)手动复位电路 图3-3(b)自动复位电路

按键断开时,电容和按键并联之后串联在电路电源和地之间。按键一侧的RST端经电阻接地,为低电平。当需要复位的时候,按下复位按键,电源通过电阻接地导通。电容两端储存的电能也通过电阻进行放电。RST一端由原来的低电平变成高电平。RST位置接单片机复位端,高电平有效,即高电平复位。当松开按键的时候,电源对电容再次充电,形成断路,RST端由高电平恢复到低电平。复位电路是微型系统电路中不可或缺的一部分,有时候硬件故障,程序跑飞,就需要手动复位来重新实现系统功能。如图3-3(a)。本次设计选用手动复位,自动复位电路如图3-3(b)

时钟电路:

图3-4 时钟电路

时钟电路有两部分组成,一部分是晶体振荡器(本文中选用12M)、另一部分为电容。时钟电路是用来产生时间频率,为程序运行提供时钟,是单片机操作和计算的基础。任何微控制电路系统中都需要时钟电路,时钟频率越大,处理速度就越快。但是晶振频率越大,对系统硬件要求就越高,增加了成本和功耗。

由于单片机本身用在控制功能,节省成本,减少功耗就非常重要了。因此在选用晶振的时候要根据硬件设计和使用功能选取合适的频率,并不是越大越好。本文中选用12M晶振两侧并联两个起振电容。时钟电路如图3-4。

3.4单片机最小系统

单片机最小系统,又叫做最小应用系统。它是微控制电路中最简单的一部分电路模块。它主要包括三个部分:第一部分单片机,第二部分复位电路,第三部分为晶振也就是时钟电路。前面已经对最小系统的三个部分做了简单的介绍。实质上,它们是至少单片机最小系统芯片可以运行的系统组件。这样的系统运行速度快,功耗低,成本小。但是在很多方面满足不了工业和日常的需要,所以在使用时经常以最小系统为基础进行扩展。单片机最小系统电路如图3-5。

图3-5 单片机最小系统

第4章PWM调制和电机的使用

4.1 PWM调制

PWM调制又叫脉冲宽度调制。它是根据微型计算机生成二进制脉冲进行内部处理之后,对外围电路进行控制的一种手段。它主要是靠改变脉冲周期或宽度来改变输出频率,实现数字信号对模拟信号的转换。它有控制灵活,简单的特点,在通信,测量行业应用广泛。

4.2 直流电机的使用

直流电机是把电能转变为机械能得装置。因为它良好的调速性能,在电力系统中得到了普及使用。

4.2.1 电机的启动

在接通电源的情况下,直流电动机由原来静止的状态,经过加速,直到稳定的工作转速的过程,叫做启动。起动时刻电枢中流过的电流称为起动电流。电枢在磁场中受到固定方向的力称为起动转矩。满足以下几个条件才能启动:1.启动转矩要尽量大。因为只有启动转矩大于负载反抗转矩时,负载才能在转矩的作用下才能转动。2.启动时的电流不能太大,否则超过了电流的极值,对电源和电机有害的影响。

3.启动过程中消耗的能量尽量少。

因此,上述三点的性能决定能否良好的启动电机。而直流电机满足以上起动转矩大,起动电流小的特点,并且启动简单和便于控制。

4.2.2 电机的调速

在很多工业场合,需要机械工作转速的变化,例如电车进站时速度减速,启动时,要很快回复到正常行驶速度,因此,这就需要对电动机进行调速。

调速的好坏可以影响的产品的质量和工作效率,甚至会影响设备的质量。这就需要对调速的严格控制。分析调速性能根据一下几点:

1.调速范围的大小,也就是最大转速与最小转速之比2.经济性的好坏,减少运行费用行业降低成本。3调速的平滑性,要可以随意的对电机调

速,而不影响使用功能。4.调速要全面,工作稳定可靠。

4.2.3 电机的反转

改变原来电机旋转的方向,称之为反转。要使电机反转,主要是电磁转矩原来的受力方向改变。我们知道,改变电磁转矩的方式有两种。一种是改变电枢电流的方向,另一种是改变磁通的方向。所以我们可有两种方法来改变转速方向。第一种方法,改变电枢的电压极性,通过将电枢绕组接到电源的正负极对调一下,使极性相反,改变电流方向,从而可以改变转速方向。还有一种方法,就是改变励磁电压的极性,励磁绕组两端的正负极性。改变极性,方向相反的磁场,电磁转矩的方向的应力变化。

4.2.4电机的制动

同样,对于很多工业设备,我们不仅仅需要它转动和停止,有时候还需要它能够迅速停止,这样可以缩短工作时间,提高工作效率,提高产品产量。再比如电车在进站的时候要快速靠近站台停站,要快速时间电车停止。这时候就需要对电机进行制动。

电机制动时电磁转矩的受力方向和电机的旋转方向相反。通常直流电机的电磁制动有三种方式:第一种是电机回馈制动。第二种是反接制动。第三种为能耗制动。其中应用最广泛的是第三种方式能耗制动,在制动过程中,制动转矩作的功全部来源于机组转动部分的动能。

4.3 电机驱动芯片L293d

采用集成芯片L293d驱动电机正转,反转和停止,L293d内部结构是一个双H桥,双极性脉冲宽度调制方法可以产生连续的电流。使电机能在四角限转动。当电机停止有小电流流过,使电机平滑的停止,消除电机改变旋转方向时的静摩擦死区。

L293d通过内部H桥电路的的输入信号可以控制电机的转动方向。通常L293d有两个H桥,能在同一时刻控制两个电机,每个电机都有它自己的使能信号EN。

如图4-1,其中ENA(本文接单片机P26端口),ENB是控制信号的使能位。IN1(接单片机P25端口)、IN2(接单片机P24端口)为电机转动方向控制位,IN1、IN2分别为1,0时,电机正转。当IN1、IN2分别为0,1时,电机反转。当IN1、IN2分别为0,0时,电机停止。选用电机连接单片机的控制引脚,根据功能需要,通过调整软件的占空比来改变电机的转速。

图4-1 电机驱动电路

第5章 系统硬件设计

5.1 系统硬件电路图

图5-1 系统硬件电路图

5.2 系统硬件PCB图

图5-2 系统硬件PCB图

5.3 实物图

图5-3 实物图

结 论

红外线遥控有体积小,质量轻,功耗低等优点,在近代科技浪潮中得到的巨大的发展,这也是本次选题的原因之一。红外遥控控制电机转速继承了红外遥控的所有优点,同时结合单片机,对电机驱动芯片的控制,实现了电机的调速。因此本设计是由红外遥控板发射信号,单片机完成解码,并控制电机驱动芯片,从而实现电机的调速。通过对电路的设计和程序编程,最终通过实验验证了设计的红外线控制电机基本符合其设计原理。

但是本次设计也存在了一定的局限性:由于客观条件的因素,有许多元器件都没来的及添加进去,比如霍尔传感器,机械按键,数码管或者TFT屏幕,所以在以后的硬件升级中,可以加入霍尔传感器对电机速度实时显示出来,并显示在数码管或者TFT屏幕中,或者加入机械式按键控制电机转速的做来作为红外遥控板故障时的备用按键。也可以通过软件升级加入定时模式,休眠模式,断电保护模式,甚至可以加入密码开启功能。

※※※※※

致谢

通过本次毕业设计,在一定程度上提高了我学习的能力,让我学到了用多种不同思维去解决和分析问题的方法。让我认识到正确并且科学的方法是解决问题的良好途径,同时在学习的过程中要端正自己的态度,严谨的科学态度在是必不可少的,也是我们成功的基础。

这次无线遥控控制电机转速设计,使我懂得了理论联系实际重要性。仅仅只有理论知识很难全面的了解产品的特点和功能,必须在真正接触之后去了解它每一个模块的使用功能和工作原理。同时在这期间解决了各种各样的问题,虽然有的很简单,但依然花费了不少时间。这让我对所学知识有深刻的认识。对掌握不牢靠和理解不到位的地方重新进行了温习,加深了定义和理论的理解。

设计完成后,经过焊接电路板,在硬件上实验测试通过。按键操作时间电机正反转,并分成1,2,3,4挡。指示灯也根据档位的不同分别显示。

最后在这期间中多亏有老师的耐心、辛勤的指导,才得以顺利地完成了这次的毕业设计。在此由衷的感谢贾老师给我的指导和帮助。

参考文献

[1] 程琤 单片机原理与应用开发 国防工业出版社2010

[2] 郭天祥 新概念51单片机C语言教程 电子工业出版社2009

[3] 谭浩强 C语言程序设计 北京 清华大学出版社 2009

[4] 王鉴光 电动机控制系统[M] 北京机械工业出版社1994

[5] 窦振中 单片机原理和程序设计 北京航天大学出版社2000

[6] 苏长赞 使用遥控技术手册 人民邮电出版社2002

[7] 李朝青 单片机原理及接口技术北京航天航空大学出版社2005

[8] 王小明电动机的单片机控制[M] 北京航空航天大学出版社2002.

[9] 何立民 单片机应用技术选编 北京航空航天大学出版社1997

[10] 李发海/朱东启 电机学 北京科学出版社 2007

附 录

软件源程序:

/******************************************************************

程序功能:红外遥控控制电机正转,反转,加速转。同时,使用PWM调制把速度分为四档,并分别用LED灯指示

按键功能:1键—键启动(电机不转 启动指示灯亮 只有开启键之后才能进行后续操作)

2键—停止键(电机不转 所有LED指示灯灭 其它操作无效)

3键—电机正转(默认一档 启动指示灯和正转灯亮 只有先选择正反转之后才能后续操作)

4键—电机反转(电机反转 启动指示灯亮和反转灯亮 只有先选择正反转之后才能后续操作)

5键—电机二档加速(启动指示灯亮 二档指示灯亮 相应的正转或反转指示灯灯亮)

6键—电机三档加速(启动指示灯亮 三档指示灯亮 相应的正转或反转指示灯灯亮)

7键—电机四档加速(启动指示灯亮 四档指示灯亮 相应的正转或反转指示灯灯亮)

在按键的同时,会进行按键检测,蜂鸣器发声,表明按键按下

班级:1*06972** 姓名:钱多多专业:电气工程及其自动化

本程序在Keil uVision3中编写…

**********************************************************************/ #include

#include //我叫钱多多

#define uchar unsigned char //叫我高富帅

#define uint unsigned int

sbit beep=P2^5;//蜂鸣器端口定义

uchar num; //全部变量

//uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,

// 0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};

//uchar code table1[]={0x7e,0x7d,0x7b,0x77,0x6f,0x5f};

sbit ir=P3^2; //红外端口定义

uchar irtime; //定时器计数次数

uchar irdata[33]; // 引导码 客户吗12 操作码12

uchar bitnum; //标志位

uchar startflag; //红外接收头识别客户码开始标志位

uchar k_flag; //按键顺序标志位

uchar ir_ok; //红外识别标志位

uchar ircode[4]; //数组 储存接收数值

uchar ir_pros_ok; //红外处理完成标志位

//uchar disnum[5];

sbit P10 = P1^0; //定义发光二极管LED端口 做指示灯

sbit P11 = P1^1;

sbit P12 = P1^2;

sbit P13 = P1^3;

sbit P14 = P1^4;

sbit P15 = P1^5;

sbit P16 = P1^6;

sbit P17 = P1^7;

#define M_EN1 M_ENA=1;M_IN1=0;M_IN2=1 //电机控制 正转定义

#define M_EN2 M_ENA=1;M_IN1=1;M_IN2=0 //电机控制 反转定义

#define M_DIS M_ENA=0; //电机控制 停止定义

bit Start_flag=0; //电机转动标志位

bit Stop_flag=0; //电机停止标志位

bit dirflag=0; //方向标志位

sbit M_ENA=P2^4; //电机端口定义

sbit M_IN1=P2^3;

sbit M_IN2=P2^2;

uchar PWM_ON; //全局变量

uchar timer_num=0; //全局变量

void timer0init() //定时器0初始化

{ //256*12*(1/12)=0.256ms 每中断一次需要的时间

TMOD=0x12; //定时器初始化

TH0=0x00; //定时器1工作方式1

TL0=0x00; //定时器0工作方式2

EA=1; //开总中断

ET0=1; //开定时器0中断

TR0=1;

TH1=(65536-1000)/256; //设置处置

TL1=(65536-1000)%256;

ET1=1; //开定时器1中断

TR1=1;

}

void delay(uint x) //延迟函数

{

uint z,i;

for(z=x;z>0;z--)

{

for(i=120;i>0;i--);

}

}

void ir_process() //0.56*2/256 = 4.37 红外处理 解码储存

{

uchar num_1,z,k,i; //局部变量定义

z=1;

for(i=0;i

{

for(k=0;k

{

num_1=num_1>>1; //0.56+1.685=2.245/0.256 =8.76 0.56+0.56=1.12/0.256=4.375

if(irdata[z]>6)

{

num_1=num_1|0x80;

}

z++;

}

ircode[i]=num_1;

}

ir_pros_ok=1;

}

void didi() //蜂鸣器

{

beep=0;

delay(150);

beep=1;

}

void ir_display(void) //执行处理部分

{

if((ircode[2]==0x0c)&&(Start_flag==0)&&(Stop_flag==0)) //取操作码 作数字开关 开启电机 {

didi(); //按键检测

Start_flag=1;

PWM_ON=0;

Stop_flag=0;

P10=0; P11=1; P12=1; P13=1; P14=1; P15=1; } else if((ircode[2]==0x18)&&Start_flag) //关闭电机 { didi(); Start_flag=0; Stop_flag=0; k_flag=0; P10=1; P11=1; P12=1; P13=1; P14=1; P15=1; } else if((ircode[2]==0x5e)&&Start_flag) //电机正转 默认一档调速 { didi(); dirflag=0; Stop_flag=1; k_flag=1; PWM_ON=1; P10=0; P11=0; P12=1; P13=1; P14=1; P15=1; } else if((ircode[2]==0x08)&&Start_flag) //电机反转 默认一档调速 { didi(); dirflag=1; k_flag=1; Stop_flag=1; PWM_ON=1; P10=0; P11=1; P12=0; P13=1; P14=1; P15=1; } else if((ircode[2]==0x1c)&&Start_flag&&k_flag&&(Stop_flag==1)) //2档调速 { didi(); PWM_ON=2; P10=0; P13=0; P14=1; P15=1;

}

else if((ircode[2]==0x5a)&&Start_flag&&k_flag&&(Stop_flag==1))

{

didi();

PWM_ON=4;

P10=0;

P13=1;

P14=0;

P15=1;

}

else if((ircode[2]==0x42)&&Start_flag&&k_flag&&(Stop_flag==1))

{

didi();

PWM_ON=8;

P10=0;

P13=1;

P14=1;

P15=0;

}

}

void int0init() //中断初始化

{

EA=1;

EX0=1; //打开外部中断

IT0=1; //下降沿触发

}

void main() //主函数

{

timer0init();

int0init();

// beep=0;

while(1)

{

// if(ir==0) //按键检测 修改放到irwork中 提高实时性

// {

// beep=0;

// delay(100);

// beep=1;

// }

if(ir_ok==1)

{

ir_process();

ir_ok=0;

}

if(ir_pros_ok==1)

{

ir_display();

ir_pros_ok=0;

}

}

}

void int0() interrupt 0// //外部中断响应函数

{

//3档调速 //4档调速

if(startflag) //13.5ms/0.256=52.7

{

if(irtime>32&&irtime

{

bitnum=0; //标志位清零

}

irdata[bitnum]=irtime;

irtime=0;

bitnum++;

if(bitnum==33) //最多储存33数

{

bitnum=0; //清零

ir_ok=1; //此帧数据接受完成

}

}

else

{

irtime=0; //计数次数清零

startflag=1;

}

}

void timer0() interrupt 1 //定时器中断次数 中断次数*0.256=时间

{

irtime++; //计数次数自加

}

void timer1() interrupt 3 //定时器中断函数

{

TH1=(65536-1000)/256; // 定时器设处置

TL1=(65536-1000)%256;

timer_num++;

if(Start_flag&&Stop_flag)

{

if(timer_num>10) //设定计数周期为10

{

timer_num=0; //大于10清零

if(dirflag==0) //方向标志位为0时

{

M_EN1; //电机驱动芯片使能 正转

}

else //否则方向标志位为1

{

M_EN2; //电机驱动芯片使能 反转

}

}

else if(timer_num>PWM_ON ) //根据PWM的值调速分级

{

M_DIS; //电机驱动芯片非使能 停止

}

}

else

{

M_DIS; //电机驱动芯片非使能 停止

}

}

//注:为焊接方便,本程序端口接法以实物为主(即LED指示灯接P0口,蜂鸣器接P2.5口,电机驱动芯片L293d控制端分别接P2.4,P2.3,P2.2口,其它不变)


相关内容

  • 遥控窗帘电路的设计-毕业设计
    遥控窗帘电路的设计 学生:XX 指导教师:XX 内容摘要:本文主要介绍了遥控窗帘的电路设计.电机工作的时候是否有鸣响提示,以及光控状态下环境亮度的控制参数的调整等等都可以通过遥控器随着电子技术和自动化技术的发展,人们对生活质量的要求越来越高 ...
  • 遥控赛车毕业论文完整版
    目 录 1 引 言 .................................................................... 2 1.1红外遥控技术背景 ........................... ...
  • 智能红外遥控暖风机的设计
    毕 业 设 计 学生姓名: 学 号: 学 院: 信息学院 专 业: 通信工程 题 目: 智能红外遥控暖风机的设计 指导教师: 评阅教师: 2012 年 6 月 毕 业 设 计 中 文 摘 要 目 录 1 引言 . ............. ...
  • 智能报警越障小车
    目 录 摘要„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„2 关键词„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„2 Abstract „„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„ ...
  • 省创新项目结题
    项目编号 __07423___ 福建省大学生创新性实验计划 项目结题表 项 目 名 称: 项 目 负 责 人: 所在学院.年级: 联 系 电 话: 电 子 邮 件: 指 导 教 师: 项 目 起 止 时 间: 填 表 日 期: 基于 MCU ...
  • 密码锁论文
    基于键入控制与无线遥控相结合的密码锁模拟系统的描述 及研究 摘要:本产品采用51单片机为控制系统, 通过密码输入来控制电路工作,同时具备键盘开锁与无线遥控开锁双重功能,本机开锁配有0-9及A,B,C,D 十六个按键,密码正确开锁,错误不开锁 ...
  • 基于单片机的简易红外遥控密码锁设计与实现 (1)
    0引言 随着科学技术的进步和社会经济的发展,电子密码锁取代传统的机械锁已成为一种必然的趋势.以往基于单片机的密码锁系统,直接将编好的密码程序存储在片内EPROM中,但不易实现密码的修改;如要完成修改密码功能,多采用片外串行E2PROM实现. ...
  • 智能捕鼠器
    摘 要 当今社会,人们的生活水平和生活方式都在不断的提高,智能化已经在我们 生活中得到了实施.随着科学技术的进步和人们生活条件的友好改善,各种智能设备在人们的生活中不断出现,使人们的生活越来越方便和舒适.其中以单片机为核心实现的智能捕鼠器因 ...
  • 单片机控制红外遥控电子锁系统
    安徽职业技术学院 毕 业 论 文 单片机控制红外遥控电子锁的 系统设计 系 别 班 级 姓 名 学 号 指导教师 2011 - 2012 学年第 1学期 摘要 针对传统机械锁的各种缺点和重要部门安全性的要求,提出一种基于红外遥控的密码锁设计 ...
  • 电子设计大赛设计报告
    2012年福建省大学生电子设计竞赛 指导教师:林惠君 吴建宁 连桂仁 自平衡小车系统 摘要 我们采用模块化设计的方法,设计了一款基于STC12C5A60S2单片机的自平衡小车系统,实现了题目中的基本要求和发挥部分的全部内容. 本系统基于ST ...