车门控制电路的研制(毕业论文)
更新时间:2024-05-17 09:44:01 阅读量: 综合文库 文档下载
本 科 毕 业 设 计
(届)
题 目:
学 院: 专 业: 班 级: 姓 名: 学 号: 指导老师:
完成日期:
本 科 毕 业 设 计
(2014届)
题 目: 公交车车门控制电路的研制
学 院: 专 业: 班 级: 姓 名: 学 号: 指导老师:
完成日期:
物理与电子信息工程学院本科毕业设计(论文)
诚信承诺书
1、本人郑重地承诺所呈交的毕业设计(论文),是在指导教师 老师的指导下严格按照学校和学院有关规定完成的。
2、本人在毕业论文(设计)中引用他人的观点和参考资料均加以注释和说明。
3、本人承诺在毕业论文(设计)选题和研究过程中没有抄袭他人研究成果和伪造相关数据等行为。
4、在毕业论文(设计)中对侵犯任何方面知识产权的行为,由本人承担相应的法律责任。
毕业论文(设计)作者签名:
班级: 学号: 年 月 日
目 录
摘要 .................................................................................................................................................. I Abstract .......................................................................................................................................... II 1 引言 ............................................................................................................................................. 1
1.1 课题背景与意义 .............................................................................................................. 1 1.2 论文结构 .......................................................................................................................... 2 1.3 本课题的主要研究内容 .................................................................................................. 2 1.4 系统主要部分与构想 ...................................................................................................... 2 2 方案论证 ..................................................................................................................................... 3
2.1 总体方案论证 .................................................................................................................. 3 2.2 处理器的选择 .................................................................................................................. 3 2.3 总体设计系统图 .............................................................................................................. 4 3 硬件设计 ..................................................................................................................................... 5
3.1 电源电路 .......................................................................................................................... 5 3.2 车启动控制电路 .............................................................................................................. 5 3.3 车灯电路 .......................................................................................................................... 6 3.4 车门控制电路 .................................................................................................................. 6 3.5 光电传感电路: .............................................................................................................. 7 3.6 报警电路 .......................................................................................................................... 8 3.7 继电器的选择与驱动电路 .............................................................................................. 8 4 软件设计 ................................................................................................................................... 11
4.1 主控制器的选择 ............................................................................................................ 11 4.2 系统程序流程图 ............................................................................................................ 15 5 测试结果及分析 ....................................................................................................................... 17 6 结论与展望 ............................................................................................................................... 18
6.1 主要结论 ........................................................................................................................ 18 6.2 结束语 ............................................................................................................................ 18 致谢 ............................................................................................................................................... 19 参考文献 ....................................................................................................................................... 20 附件1 程序代码 .......................................................................................................................... 21
i
摘要
本文主要阐述了公交车自动门电路控制系统。该公交车门控系统集检测、判断、报警于一体,可实现全天候的自动检测,自动报警的功能,当车门未关闭,汽车发动的情况下汽车自动报警,同时本系统应用了光电传感器技术,能够实现对光线强弱的采集,并能够判断白天黑夜,实现对公交车门灯的自动控制。
本文采用的光电传感器是实验室中非常常见的,并且应用简单,经济实用的光敏电阻。光敏电阻可通过光线强弱,阻值不同输出电压不同,通过单片机判断并给出输出信号的方式实现对白天黑夜的检测。在报警电路部分采用单片机控制蜂鸣器驱动电路实现控制蜂鸣器实现自动报警。[1]
本系统采用了意法半导体公司生产的STM32F103C8T6单片机,STM32系列整体功耗较小,兼容性好,[2]稳定性高,低成本,芯片虽小,五脏俱全,是这类单片机主要特点之一,其内部设有程序存储器、数据存储器、各种接口电路。其兼容51单片机的指令能够精确的实现51的大部分功能,运行更快存储空间更大。[3] 关键词: 报警电路; 车门控制; 公交车
I
Abstract
This paper mainly expounds the automatic control system of bus door. This system
contains a series of functions, [4]such as, detecting, judging, policing and so on. It can detect weather automatically and the function of Automatic alarm. For example, when bus launch with the door opened, this system will alarm Automatic. Meanwhile this system apply the technology of Photoelectric sensor. It not only realizes the intensity of light collection but also judge the day and the night. The most important is that it could control of the gate light intelligent.
The Photoelectric Sensors referred in this article is common in laboratory, application is simple and its price is very cheap. According to the Different light intensity, it will form different resistance and output voltages. This system detects the day and night through the microcontroller judgment and gives the output signal of the way. Alarm circuit applies SOC control Buzzer to realize Automatic alarm.
The system applies the STM32F103C8T6 single chip microcomputer Produced by STMicroelectronics, which has a lot of advantages. These include less power consumption, compatibility, high stability. The chip is small, but includes the five internal organs completely, which is one of the main characteristics of this kind of chip. It has internal program memory, data memory, a variety of interface circuit. It is compatible. It achieves most of the functions of MCS-51. It runs faster and has more storage space.
Keywords: alarm circuit; control system; bus
II
1 引言
1.1 课题背景与意义
近10年来,我国的经济得到迅猛发展,但是在日益城市化的同时也带来了一系列额待解决的问题,如环境污染,交通拥堵,医疗保健不健全等,这些问题的出现,都与人民生活的水平的密切相关。在新的世纪,随着国内经济的快速发展,人民生活水平也逐渐提高,正如经济在发展在新时代提出[5]了新的要求,要又好又快发展,人民对自己的生活环境也提出了更高的要求,而不在是旧世纪时的吃饱穿暖,而在吃、穿、住、行等各方面都有了更高的要求。所以,城市交通安全这一与人民的生活息息相关的问题,也到了必须解决的时候。近几年来,国内外公共交通安全事故不断,如公交着火,车门夹人,制动失灵等事故时有发生。这类事故的发生都与车门系统的安全性,可靠性都有着密不可分的关系。在城市交通方面,公共交通因为其承载量大,出行方便,价格便宜等优势,在人们的选择方面有着出租车,地铁,私家车不可取代的地位,在保障人民的生活水平方面发挥举足轻重的作用。
由于城市公共交通自身的特点和发展,[6]公共交通车辆车门系统的可靠性和安全性已成为公共交通部门重点观众的问题之一。在车辆设备中,制动系统和车门系统是事关乘客安全的重要环节。在车辆运营过程中,车门系统需要经常开启和关闭,加上人为因素和外部因素的影响,导致车门故障频发,经常出现清客事件,尤其上下班高峰期,也不乏乘客伤亡的重大安全事故。
车门系统作为车辆设备的重要组成部分,其最主要也是最基本的功能就是控制车门的开启和关闭,门系统的可靠性和安全性,将直接影响着车辆正常安全的运营。为保证车门的性能,智能监控系统必不可少。国内对智能监控的相关应用和产品却并不多见,绝大多数自动化系统集中在满足自动化功能的实现[7],对车门系统设备的监控维护功能的实现没有给与重视。由于目前手段不具备,只能采用被动式服务,即在故障发生后,在进行现场分析、排除故障,这在公交运营是因故障而展厅服务所造成的影响是非常不利的。
针对以上存在的问题,就需要一个能够准确解决问题的办法。智能化门系统,要在系统结构、系统功能、远程维护等方面进行设计,实现对客车车门的智能控制、诊断与维护功能。新的智能门系统对于提高门系统的可靠性与安全性,减少车辆在运营期间的故障率,降低发生故障等级具有极其重要的意义,该门系统在无形中降低了车辆的维护成本,减少了因门系统故障而停运的时间,避免了由于门系统故障造成的重大交通事故,为经济发展,保障人民生命财产安全做出了重大贡献。[8]
1
1.2 论文结构
本论文主要包含绪论,方案论证,硬件设计,软件设计,结果与分析,展望与结论等
部分。
1.3 本课题的主要研究内容
本文所介绍的门控电路其主要功能是能够实现对公交车门灯的制动控制以及自动显示,能够实现公交车在车门未关闭启动时的自动报警,并能够在夜晚白天实现对车灯的智能控制,即当夜晚降临,车门打开时车灯自动点亮,车门关闭车灯自动熄灭。该车门系统在满足基础功能的情况下,起报警功能不仅能够实在汽车的安全运行,同时也保证了汽车本身的财产安全。
[9]
1.4 系统主要部分与构想
本系统主要包括电源电路,报警电路,车灯电路,车门电路和主处理器。电源用电一部分采用家庭220V交流电,控制系统部分电源用电采用通过整流电路输出的9V,5V,3.3V的直流电。关于报警电路,这里采用的是通过控制器链接驱动电路的蜂鸣器以及应用光敏电阻的光敏检测电路和STM32F103C8T6单片机构成的主控制器,显示部分直接采用LED显示。硬件开关的采用主要以断路器和刀开关为主,车门主要采用家用电灯来实现,由于实验室条件这里设计采用断路器的常闭与常开来模拟车门的关闭与开启,通过刀开关的闭合与打开模拟车子的启动与停止。[10]
2
2 方案论证
2.1 总体方案论证
对于本系统的实际方案初步设想两种方案:
方案一:直接采用单片机开发板,在单片机的基础上增加按键来模拟车灯的开关,白天和黑夜,车门的打开与关闭。以信号指示灯来模拟车门车灯,[11]以开发板上的蜂鸣器模拟报警装置,一切控制系统全部使用C语言指令控制,这种设计只是在单片机的基础上设当添加电气元件,操作简单,但是在开发板上,车灯的开关,白天和黑夜,车门的打开与关闭,加上复位键需要四组按钮重复单元较多,此外本设计对单片机要求较高,需要处理问题较多,对程序员编程能力要求较高。
方案二:采用单片机作为控制系统,电源电路,报警电路,都进行电路焊接,作为单片机的外设,车门开关以及车灯的模拟采用继电器以及刀开关,报警电路用蜂鸣器代替,单片机部分只负责白天与黑夜信号的采集,以及其他信号判断与输出,其他部分全部手动控制。这个设计过程清晰,设计简单,程序容易实现。[12]分析比较两种方案,我采用第二种。
2.2 处理器的选择
在大学期间接触了很多的处理器,如MCS51系列和STM32系列。在这些处理器中
我常用的只有两种处理器即C8051f410和STM32F103C8T6,对比C8051f410单片机,STM32F103C8T6是32位机,对比8位机的C8051f410运行速度更快,STM32单片机程序都是模块化的,接口相对简单些,自身带好多功能。而51的自身功能少,需要外围元件多,对电子元件的性能要求也较高。本次设计处理器虽然使用C8051F410和STM32F103C8T6都能够实现,但是为了简化电路,更加简单方便,[13]所以采用STM32F103C8T6单片机
3
2.3 总体设计系统图
9V转5V电源模块(为所有模块供电)光敏传感器按键模拟汽车发动STM32F103C8T6单片机声响报警模块门灯显示模块开关模拟车门状态
图2-1总体设计系统图
图2-1就是本次设计的系统图,所有的硬件电路设计都已包含,在这张系统图中最主要的部分是报警电路,以及光电传感电路部分,这两部分所用电子元件较多,需要考虑的因素也较多,所以本次设计硬件部分成功的关键在于这部分各元件参数的选取
9V为9V电池的输出,通过LM7805将9V转成5V为系统提供电能;光敏传感器感知光照强度,识别白天和黑夜;通过按键模拟汽车的发动情况,按键为汽车发动,常态是没有按下为不发动;单刀双掷开关模拟汽车车门状态[14],打到一边为车门开,打到另一边为车门关。
声响报警模块为蜂鸣器报警电路,模拟汽车声响报警;门灯显示模块为LED显示电路,模拟汽车车门灯的状态。
当白天或者黑夜时,只要有车门开着,汽车发动就声响报警;白天门灯不亮;夜晚车门打开门灯亮,车门关闭门灯暗。实现门灯制动控制和开关门自动显示。
本课题的电路包括电源模块、STM32F103C8T6控制器模块、光敏传感器、按键模块、开关模块、蜂鸣器模块、LED模块。在本系统中通过采集光敏传感器,得到光照强度,扫描按键,得到模拟汽车的发动状态,读取开关,得到车门开关状态,通过以上3个量由单片机控制前后门灯的继电器以及前后门开关,及报警音响部分。[15]
4
3 硬件设计
3.1 电源电路
本次设计的电源部分采用的是220V的家用交流电,[16]单片机电源采用5V的直流
电。这里的220V交流电通过变压器转化为9V在经过整流电路最终实现5V的直流电。整个电路主要采用了LM7805CT三端稳压器实现输出端为5V的电压。
图3-1 5V电源电路
图3-2 3.3V电源电路
上图是5V转3.3V电路这里的芯片主要采用的是LM1117-3.3V,利用这款新片能够很方便的将5V电压转化为3.3V电压。
3.2 车启动控制电路
为了实验方便,简单的达到模拟车子启动与停止的效果,直接采用处理器进行控制。本文车启动控制电路采用的是按钮的形式,当按下按钮模拟车子启动[17]
单片机读取信号,方便进一步做出判断,输出处理信号。松开按钮车子停止。同样进行采集信号与处理。
5
图3-3 车启动控制电路
3.3 车灯电路
车灯的选择直接选用的家用照明灯。以下是实验的车灯电路。
图3-4 车灯电路
车灯的熄灭与点亮直接控制采用继电器来实现,外接家用的220V交流电,当处理器给出信号到继电器驱动电路,实现继电器的断开与吸合来控制车灯的熄灭与点亮。通过右侧的检测电路控制起来实现实时对车灯的状态的检测。然后将信号传递到处理器坐车进一步判断是否需要报警。
3.4 车门控制电路
车门控制也是通过继电器来实现的,通过按键给出信号使继电器驱动电路工作,通过继电器吸合与断开带动电动机的工作实现车门打开与关闭能够实现车门的制动控制。这里为了实验需要直接采用灯泡的亮暗来代替车门的打开与关闭。[18]
6
图3-5-1车门控制电路 图3-5-2车门状态采集电路
图3-5-1是采集电路,从这里可以采集到此时车门的开关状态,将信号传输到控制器,方便控制器实现判断,为是否报警提供依据。
3.5 光电传感电路:
光电传感电路这里实际上就是一个光控电路,使用光控电路可实现用一些光源来控制用电电路的开启与关闭,并能实现电路的自动动作。如常见的路灯控制电路就是此类电路。光控电路的工作原理是应用光敏元件来实现光线对其影响。常见的光敏元件有光敏二极管、光敏三极管和光敏电阻等。为了尽量减小温度影响,电路中的关敏元件均采用光敏电阻,以提高电路整体的灵敏度。[19]
图3-6 光电传感电路
图3-6是利用光敏电阻,通过单片机AD采集器采集光敏电阻的端电压当端电压大于或等于2V是判断为白天,当端电压小于2V是判断为黑夜,以实现对白天与黑夜的信号采集。
7
3.6 报警电路
在实验中常用的报警电路有由555构成的多谐震荡电路,本次设计为了容易实现,控制简单,采用的是控制器控制蜂鸣器报警电路,电路图如下。
图3-7报警电路
蜂鸣器发声原理是电流通过电磁线圈,[20]使电磁线圈产生磁场来驱动振动膜发声的,因此需要一定的电流才能驱动它,单片机引脚输出的电流较小,单片机输出的TTL电平基本上驱动不了蜂鸣器,因此需要增加一个电流放大的电路。这里采用的是通过一个三极管8050来放大驱动蜂鸣器。
当单片机给出信号后,在三极管的基极电流很小不足以是蜂鸣器发声,此时该电流经过三极管放大后形成一个放大一定倍数的集电极电流,此时在蜂鸣器两端就会形成一个完全能够是蜂鸣器发声的电压信号,以保证蜂鸣器发声。
3.7 继电器的选择与驱动电路
本文控制电路主要器件采用的是继电器,要实现用单片机控制继电器达到以弱控强的电路,我在这里采用的是电磁式继电器,电磁式是一种在电路中非常常见的继电器,在电路中主要起到保护电路的作用。下面再来介绍一下单片机和强电之间的桥梁---电磁继电器。
电磁继电器是有触点电继电器的一种。它是利用电磁效应实现电路开、关控制作用的元件,广泛应用在电子设备、仪器仪表及自动化设备中。在各种自动控制设备中,都要求用一个低压电路控制一个高压的电气电路。这样不仅可以为电子线路和电气电路提供良好的电隔离,还可以保护电子电路和人员安全。
下面我们看一下电磁继电器的构造:电磁继电器的构造:如图3-8所示,A是电磁铁,B是衔铁,C是弹簧,D是动触点,E是静触点。电磁继电器工作电路可分为低压控制电路和高压工作电路组成。控制电路是由电磁铁A、衔铁B、低压电源E1和开关组成;工作电路是由小灯泡L、电源E2和相当于开关的静触点、动触点组成。连接好工作电路,在常态
8
时,D、E间未连通,工作电路断开。用手指将动触点压下,则D、E间因动触点与静触点接触而将工作电路接通,小灯泡L发光。闭合开关S,衔铁被电磁铁吸下来,动触点同时与两个静触点接触,使D、E间连通。这时弹簧被拉长,观察到工作电路被接通,小灯泡L发光。断开开关S,电磁铁失去磁性,对衔铁无吸引力。衔铁在弹簧的拉力作用下回到原来的位置,动触点与静触点分开,工作电路被切断,小灯泡L不发光。
电磁铁通电时,把衔铁吸下来使D和E接触,工作电路闭合。电磁铁断电时失去磁性,弹簧把衔铁拉起来,切断工作电路。
图3-8 继电器原理图
在我们的设计中要利用继电器实现控制的作用,首先要对继电器进行驱动,接下来看看继电器的驱动,这是典型的继电器驱动电路图。图3-9中的三极管放大采用的是PNP三极管,实际设计电路图中使用的是NPN三极管。
图3-9 继电器驱动电路
单片机是一个弱电器件,一般情况下它们大都工作在5V甚至更低。驱动电流在mA级以下。而要把它用于一些大功率场合,比如控制电动机,显然是不行的。所以,就要有一个环节来衔接,这个环节就是所谓的“功率驱动”。继电器驱动就是一个典型的、简单的功率驱动环节。在这里,继电器驱动含有两个意思:一是对继电器进行驱动,因为继电器本身对于单片机来说就是一个功率器件:还有就是继电器去驱动其他负载,比如继电器可以驱动中间继电器,可以直接驱动接触器,所以,继电器驱动就是单片机与其他大功率负载接口。
图3-9里面的三极管非常重要,在我们的各种电路设计中三极管都是一个不可或缺的
9
元件,用途十分的广泛。三极管有两个作用一个是放大作用,一个是开关作用。在这里,我们只了解它跟本电路有关的开关作用。 首先把三极管想成一个水龙头,上面的VCC就是水池,继电器是一个水轮机,下面的GND是比水池低的任何一点。刚才说过,三极管就是水龙头,它的把手就是那个带有电阻的引脚。现在,单片机的某一个需要控制这个继电器电路的输出引脚就是一只“手”,当单片机的这个引脚输出低电平的时候,就像“手”在打开三极管“水龙头”,水就从上往下流,继电器“水轮机”就开始转起来了。反之,如果是输出高电平,\手”就开始关“水龙头”,继电器”水轮机”因为没有水流下来,就会停止。 这就是三极管的开关作用简单的理解和记忆就是:三极管是一个开关器件,其实你真的可以将它看成是一个开关,只不过它不是用手来控制,而是用电压来控制的,因此,三极管有些时候也被称做电子开关。图上还有一个东西,是保护二极管,一般是防止反电动势起到保护作用。
10
4 软件设计
4.1 主控制器的选择
STM32系列单片机是一款高性能、低成本、低功耗的嵌入式应用的单片机,它的内核是ARM Cortex-M3。ST公司对STM32进行了产品划分,按性能分成两个不同的系列:STM32F103属于增强型系列和STM32F101是基本型系列。增强型STM32F103系列的系统时钟频率可达到72MHz,是同类中低端产品中性能是属于最高的一款产品。STM32F101基本型的系统时钟频率是36MHz,它的16位产品比其他公司的16位产品在价格上有大幅提升了性能,是16位单片机用户的最好的选择。STM32F103与STM32F101系列都内置32K到128K的闪存,所不一样的是SRAM的最大容量是和外部设备接口的组合。当系统时钟的频率为72MHz时,单片机从内部闪存位置开始执行初始代码,STM32总的系统功耗36mA,是32位单片机市场中功耗最低的一款产品,电流频率比为0.5mA/MHz。
以下是STM32F103C8T6的实物图。
图4-1 STM32F103C8T6实物图
STM32F103C8T6总共有48个引脚,PA0—PA15端口A15个、PB0—PB15端口B15个,2个外部晶振引脚OSC_IN、OSC_OUT,1个复位引脚NRST,2个32.768K的实时时钟晶振引脚,BOOT0程序驱动脚。VDDA、VDD_1、VDD_2、VDD_3与VSS、VSS_1、VSS_2、VSS_3总共8个电源引脚,包括模拟供电电源。内核采用ARM 32位的Cortex-M3,最高72MHz工作频率,单周期乘法和硬件除法;存储器采用从64K字节的闪存程序存储器,高达20K字节的SRAM;时钟、复位和电源管理采用3.6伏供电和I/O引脚,上电/断电复位(POR/PDR)、可编程电压监测器(PVD),8MHz晶体振荡器,内嵌经出厂调校的8MHz的RC振荡器,内嵌带校准的40kHz的RC振荡器,产生CPU时钟的PLL,带校准功能的32kHz RTC振荡器;低功耗模式有睡眠、停机和待机模式,VBAT为RTC和后备寄存器供电;2个12位模数转换器,1us转换时间(多达16个输入通道) ,转换范围:0至3.6V,双采样和保持功能,还有内部温度传感器;内部共有7通道DMA控制器,支持的外设有3个定时器、ADC、SPI、I2C和USART等;调试模式可选择串行单线调试(SWD)和JTAG接口。如下图所示。
11
图4-2 STM32F103C8T6引脚图
图4-3是STM32F103C8T6的外部时钟,本方案采用8M外部晶振,进过内部9倍频后得到72M系统时钟,图4-3中的30pF电容与10pF电容为晶振的启动电容,不能偏大也不能偏小,链接8M的晶振上经典值电容应该选择30pF,32.768K晶振上的电容最大不能超过 15pF,晶振连接图如4-3图所示。
图4-3 外部时钟电路
单片机最小系统包括单片机芯片、晶振、复位电路,如图4-4所示为单片机的复位电路,SW1为复位按键,常态为开,当按下时为闭合,R4为10K电阻,上拉电阻的选取没有固定的要求,通常选取10K,C5为滤波电容,大小选择104电容,也就是100nF陶瓷电容,防止复位按键抖动,导致系统误复位,启动滤除系统脉冲的作用,保护最小系统的正常工作。通常机械按键都有一个抖动过程,就需要通过这个电容来滤除按键产生的抖动。
图4-4 复位电路
12
通常供电电源都有小幅波动,需要通过使用大电容来滤除电源抖动,图4-5中的4个电容是靠近STM32F103C8T6的电源引脚上放的,防止电源引脚有抖动信号的干扰。104电容为通用的选取阻值。
图4-5 电源防抖动电路
为了实现单片机的正常工作,就需要为单片机提供稳定的供电电源,这里使用
LM1117线性稳压芯片为单片机提供稳定的+3.3V电源,图4-6中P6与P7为排针,方便杜邦线的插拔,C8、C6为+5V电源的输入滤波电容,稳定输入的+5V电压,使用100nF滤除高频干扰,100uF滤除低频干扰,C9、C7为输出滤波电容,稳定输出电压,使用100nF滤除输出的高频干扰,100uF滤除输出的低频干扰,为单片机提供可靠的供电电源。
图4-6 3.3V供电电路
下图中为单片机下载方式选择端,或者是程序驱动方式选择端。STM32有三种启动模式对应的存储介质均是芯片内置的,它们是:
1)用户闪存 = 芯片内置的Flash。
2)SRAM = 芯片内置的RAM区,就是内存啦。
3)系统存储器 = 芯片内部一块特定的区域,芯片出厂时在这个区域预置了一段Bootloader,就是通常说的ISP程序。这个区域的内容在芯片出厂后没有人能够修改或擦除,即它是一个ROM区。
在每个STM32的芯片上都有两个管脚BOOT0和BOOT1,这两个管脚在芯片复位时的电平状态决定了芯片复位后从哪个区域开始执行程序。
BOOT1=x BOOT0=0 从用户闪存启动,这是正常的工作模式。
BOOT1=0 BOOT0=1 从系统存储器启动,这种模式启动的程序功能由厂家设置。 BOOT1=1 BOOT0=1 从内置SRAM启动,这种模式可以用于调试。
要注意的是,一般不使用内置SRAM启动(BOOT1=1 BOOT0=1),因为SRAM掉电后数据就丢失。多数情况下SRAM只是在调试时使用,也可以做其他一些用途。如做故障的局部诊断,写一段小程序加载到SRAM中诊断板上的其他电路,或用此方法读写板上的Flash或EEPROM等。还可以通过这种方法解除内部Flash的读写保护,当然解除读写保护的同
13
时Flash的内容也被自动清除,以防止恶意的软件拷贝。
一般BOOT0和BOOT1跳线都跳到0(地)。串口下载的情况下,BOOT0=1,BOOT1=0 ,再复位,点击下载,下载完成后,把BOOT0的跳线接回0,也即BOOT0=0,BOOT1=0 。所以为了方便期间我们将BOOT1直接通过100K下拉电阻拉直地,只通过BOOT1就能进行选择下载方式。
图4-7
STM32的下载方式可以分为两种方式:第一种是20引线的JTAG下载;第二种是5引线的SW下载方式,这里使用SW下载方式,所以具体分析第二种下载方式(SW下载),五根引线的连接分配表格4-1:
引脚名 JTMS/SWDIO JTCK/SWCLK NRST VDD GND 描述 串行线输入/输出 串行线时钟 复位 3.3V 地 表4-1
图4-8为实物图中的连接方式,+3.3V、GND为电源引脚,SWDIO下载数据的引脚、SWCLK是下载数据的时钟引脚,NRST为单片机复位引脚,也为下载器的复位引脚。
引脚分配 PA13 PA14 NRST VDD GND
图4-8
为了方便其他电路与单片机的连接,将单片机的引脚用排针引出,总共30个脚。如图4-9所示。
14
图4-9
4.2 系统程序流程图
基于STM32的车们控制电路设计的软件部分采用C语言编写,开发工具是Keil4,通过编译,下载入STM32F103C8T6芯片中。软件部分完成对单片机的时钟、引脚、AD的初始化工作,并通过STM32F103C8T6芯片内部的自带AD模块读取外部给出的信号。
开始系统初始化时钟、引脚、AD初始化初始化光照强度ILL_INTENWhile(1)识别光敏电阻(天色)、按键(汽车发动)、开关(车门)N车门是否开着?Y汽车是否发动?Y声响报警N是否为白天?NYY是否为白天?N车门灯开 图4-10 程序流程图
15
软件编写的思路是首先对STM32F103C8T6单片机的时钟、引脚、AD进行初始化,并对光照强度进行初始化,之后进入死循环while(1),在循环中通过STM32F103C8T6芯片内部的自带AD模块读取外部光敏传感器的电压值,并读取此时外部车门与车子是否启动的状态。首先判断车门是否打开,车门未打开,跳回循环,重新判断。车门打开时进行第二步判断判断车子是否启动,车子启动直接报警,车子未启动则判断是否为黑夜,是黑夜则车灯打开,不是黑夜则直接跳会循环重新判断。整个程序需要进行三次判断,需要三组信号共同控制,及车门信号,车启动停止状态信号与关敏电阻电压值信号。综合以上三组信号,处理器做出处理,给出准确的指令实现对整个车门系统的控制。
16
5 测试结果及分析
下图是整个测试结果。白天黑夜:0表示黑夜,1表示白天;车子状态:0表示车子停止1表示车子启动;车门状态:0表示车门关闭,1表示车门打开;车灯亮暗:0表示车灯暗,1表示车灯点亮;是否报警:0表示不报警,1表示报警。
白天黑夜 车子状态 车门状态 车灯亮暗 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 0 0 0 是否报警 0 0 0 1 0 0 0 1 表5-1 由此表5-1分析可知只有当黑夜时车门打开时车灯才会自动点亮,其他时间均不会点亮点亮是如上表第二行与第四行;报警电路发出警报只有在车门处于打开状态,车子启动时才会发出警报,如上表第四行与第八行。
由上面的分析与结果可知本次设计完全满足设计要求,即符合要求的论白天黑夜只要有车门开着,汽车发动就声响报警;白天门灯不亮,夜晚车门打开门灯亮,车门关闭门灯暗。
同时本次设计还能够实现对车门的手动开关,能够通过按键控制车门的关闭与打开,完全符合实际要求。
17
6 结论与展望
6.1 主要结论
这次的设计是基于单片机控制的公交车门电路的研制,该电路能满足识别白天黑夜的功能,并能根据白天黑夜的不同采取不同的应对模式,针对车门开关的判断,要与公交车门的制动联系起来,实现车门开关与车子启动之间存在着内在的联系,及当车门处于打开状态时,启动车辆要能够实现报警电路报警,能够非常清楚地表现出这种功能。在车子启动的同时要实现液晶屏的自动显示,能够在液晶屏上清楚地看到车门所处的状态。该报警系统是利用处理器给出信号倒是懂蜂鸣器发出报警,整个处理过程实在处理器中实现的。这种报警电路设计,能够根据外来信号智能判断出需不需要进行报警。该报警器的最大特点就是使用户能够操作简单、易懂、灵活;整过信号处理过程集成在处理器内部完成,且方便、智能性高、误报率低,同时它给出的信号是经过单片机系统处理后的,非常的准确。 这次的公交车车门控制电路的研制,完成了程序模块规划及各个模块的设计与编程,实现了对信号处理过程的编程和调试。它具有电路简单、功能齐全、性能齐全、性价比高等特点,是一种经济、实用的公交车车门电路系统。
本论文完成了软硬件主要功能模块的设计,为进一步设计开发及功能扩展打下了良好的基础。整个系统主要由STM32F103C8T6单片机,继电器、光敏电阻、报警器、键控组成。性能好,工作稳定,非常适合在公交车车门领域!由于时间关系和水平有限,设计中存在着一些缺陷和不足,还有待于在今后的进一步设计过程中不断完善。
当然公交车车门控制电路系统的研制是一个实践应用性很强的课题,要使其产品化,能够经受住实际应用的严格考验,还要进行许多深入细致的工作。而且随着科技水平的不断提高,对公交车车门控制电路系统必然会有不断增长的要求。
随着人民的生活水平的提高,人们对于公共服务的要求也逐渐提高。所以对于公交车车门控制电路的研制是非常必要的,在科技高速发展的今天,技术在不断进步,以后公交车门门控电路也必然会取得飞跃的发展,给我们的生活带来便利。在新的产品化的管理系统中,人们将会越来越多的体验到现代生活的气息。
6.2 结束语
在现在,我的毕业设计也即将告一段落了,在这次的毕业设计中,自己也学习到了很多以前没有经历过的知识,让我更加清楚了理论知识和实践能力的差别,了解到自己的短处,培养了我的独立思考能力,进一步提高了自己在实际设计过程中研究问题、发现问题、解决问题的能力,同时,也发现了自己的不足之处,和一些问题的存在,并有待进一步学习和发展,让自己在未来的工作和学习之中更快的适应和提高自己。
18
致谢
该课题是在我导师宋占海老师的悉心关怀和精心指导下完成的。他认真的科学态度,严谨的治学精神,精益求精的工作作风,深深的感染和激励着我。从设计的开始到最终完成,我不仅学到了扎实、宽广的专业知识,也学到了许多做人的道理。在我的课题开展过程中倾注着导师辛勤的汗水和心血。导师的为人师表、渊博的知识、宽广的胸怀让我备受教益,在此谨向导师们致以诚挚的谢意和崇高的敬意!我还要向学院里一直关注着我们的院系领导表示感谢,不是你们在学习,生活中给我们带来的各种便利,我们一定没有这么舒适方便的实验室和机房供我们专心完成毕业设计。
通过本次毕业设计,我增强了理论与实践结合的能力,设计过程中遇到各种问题在指导老师的帮助下得以解决,锻炼了我的意志,更使我增强了信心。 衷心感谢在我成长的路上指点帮助我的前辈们和朋友们!
19
参考文献
[1]赵光波.杨尚平.城市轨道车辆午门的发展现状与展望[J].流体传动与控制.2008,26(1): 38-43
[2] 童诗白.模拟电子技术基础[M].北京:高等教育出版社,2001. [3] 王宏雁. 车门的轻量化设计[J] . 汽车工程, 2004, (3) :349- 353.
[4] 焉桂珍 宋正飞,铁路客车用自动塞拉门[J] . 铁道车辆, 2000, 38(3) :34- 36. [5] 王能员. 新型螺旋车门启闭装置:中国,专利号:022637116.8[P]. 2004-10-27. [6] 元增民. 单片机原理与应用.—长沙:国防科学大学出版社 2006
[7] 刘仁宇. 单片微型计算机原理及应用.—西安:西安电子科技大学出版社.2003 [8] 马忠梅. 单片机外围电路设计 —北京:北京航空航天大学出版社2005 [9] 钱晓军;家庭无线智能防盗报警系统[J];安防科技;2003年07期 [10] 阎石.数字电子技术基础[M].北京:高等教育出版社,2003.
[11] 余孟尝.数字电子技术基础简明教程[M].2版.北京:高等教育出版社,1999. [12] 徐雪松.常用电子器具电路[M].北京:新时代出版社,1992. [13] 江晓安.数字电子技术[M].西安:西安电子科技大学出版社,2002.
[14] 朱小娟,干:建兵,印祯上海地铁车辆客审车门可靠性技术研究[J].城市轨道交通研究,2006,9(3):31-34
[15] Lee,J. Strategy and challenges on remote diagnostics and maintenance for manufacturing equipment[C]. Annual Reliability and Maintainability SymPosium 1997 Proceedings, 1997,368-370
[16] James C. Parker, Jr. Via Coupling within Parallel Rectangular Planes[J]. IEEE Trans. On EMC., 1997, 39(1):17-23.
20
附件1 程序代码
#include \#include \#include \#include \#include \
#include \ #include \
int main(void) {
u16 adcx; float adcL; u8 key_value; u8 light_state=0,che_state=0,che_door_state=0; delay_init(); //延时函数初始化 NVIC_Configuration(); //设置NVIC中断分组2:2位抢占优先级,2位响应优先级 uart_init(9600); //串口初始化为9600
PORT_Init(); //LED端口初始化 KEY_Init(); LCD_Init(); Adc_Init(); //ADC初始化 while(1) { adcx=Get_Adc_Average(ADC_Channel_0,10); adcL=(float)adcx*(3.3/4096); if(adcL >= 2.00) light_state = 1; else light_state = 0; key_value = KEY_Scan(); if(key_value == 1) che_state = 1; else che_state = 0; if(che_door_state_import == 1)
21
che_door_state = 1; else che_door_state = 0; //判断状态 if(che_door_state && che_state ) BELL_CONTROL = 1; else BELL_CONTROL = 0; if(che_door_state && !light_state) LIGHT_CONTROL = 1; else LIGHT_CONTROL = 0; if(che_door_state) DOOR_CONTROL = 1; else DOOR_CONTROL = 0; delay_ms(250); } }
void PORT_Init(void) { GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE); //使能PB,PE端口时钟 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8|GPIO_Pin_9|GPIO_Pin_10; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; //推挽输出 GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; //IO口速度为50MHz GPIO_Init(GPIOA, &GPIO_InitStructure); //根据设定参数初始化GPIOB.5 GPIO_SetBits(GPIOA,GPIO_Pin_8); //PB.5 输出高 GPIO_SetBits(GPIOA,GPIO_Pin_9); GPIO_SetBits(GPIOA,GPIO_Pin_10); GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU; GPIO_Init(GPIOA, &GPIO_InitStructure);
22
}
#include \
#include \ //初始化ADC
//这里我们仅以规则通道为例 //我们默认将开启通道0~3
void Adc_Init(void) { ADC_InitTypeDef ADC_InitStructure; GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA |RCC_APB2Periph_ADC1 , ENABLE ); //使能ADC1通道时钟 RCC_ADCCLKConfig(RCC_PCLK2_Div6); //设置ADC分频因子6 72M/6=12,ADC最大时间不能超过14M //PA1 作为模拟通道输入引脚 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN; //模拟输入引脚 GPIO_Init(GPIOA, &GPIO_InitStructure); ADC_DeInit(ADC1); //复位ADC1,将外设 ADC1 的全部寄存器重设为缺省值 ADC_InitStructure.ADC_Mode = ADC_Mode_Independent; //ADC工作模式:ADC1和ADC2工作在独立模式 ADC_InitStructure.ADC_ScanConvMode = DISABLE; //模数转换工作在单通道模式 ADC_InitStructure.ADC_ContinuousConvMode = DISABLE; //模数转换工作在单次转换模式 ADC_InitStructure.ADC_ExternalTrigConv = ADC_ExternalTrigConv_None; //转换由软件而不是外部触发启动 ADC_InitStructure.ADC_DataAlign = ADC_DataAlign_Right; //ADC数据右对齐 ADC_InitStructure.ADC_NbrOfChannel = 1; //顺序进行规则转换的ADC通道的数目 ADC_Init(ADC1, &ADC_InitStructure); //根据ADC_InitStruct中指定的参数初始化外设ADCx的寄存器 ADC_Cmd(ADC1, ENABLE); //使能指定的ADC1
23
ADC_ResetCalibration(ADC1); //使能复位校准 while(ADC_GetResetCalibrationStatus(ADC1)); //等待复位校准结束 ADC_StartCalibration(ADC1); //开启AD校准 while(ADC_GetCalibrationStatus(ADC1)); //等待校准结束
// ADC_SoftwareStartConvCmd(ADC1, ENABLE); //使能指定的ADC1的软件转换启动功能
} //获得ADC值 //ch:通道值 0~3
u16 Get_Adc(u8 ch) {
//设置指定ADC的规则组通道,一个序列,采样时间 ADC_RegularChannelConfig(ADC1, ch, 1, ADC_SampleTime_239Cycles5 );//ADC1,ADC通道,采样时间为239.5周期 ADC_SoftwareStartConvCmd(ADC1, ENABLE); //使能指定的ADC1的软件转换启动功能 while(!ADC_GetFlagStatus(ADC1, ADC_FLAG_EOC ));//等待转换结束 return ADC_GetConversionValue(ADC1); //返回最近一次ADC1规则组的转换结果 }
u16 Get_Adc_Average(u8 ch,u8 times) { u32 temp_val=0; u8 t; for(t=0;t #include \ void KEY_Init(void) 24
正在阅读:
车门控制电路的研制(毕业论文)05-17
2019年最新天顿电算化操作步骤精心整理12-30
愣伽经与禅宗心印06-22
激动的泪水作文600字07-06
铁路建设项目质量安全红线管理规定试题库05-21
绿色植物与生物圈中的碳—氧平衡02-12
最新-2018年四年级第二学期家长会班主任发言稿(2) 精品03-29
药品批发公司岗位说明书 - 图文04-03
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 车门
- 毕业论文
- 电路
- 研制
- 控制
- 《遗传与进化》知识汇总
- 高级语言程序设计(VB)模拟题(2015.9)
- 初二第一学期语文期中试卷
- 安全生产奖惩制度20180531
- 东方神起 - 图文
- 2015-2020年中国二醋酸纤维长丝丝束市场分析报告 - 图文
- 郑州航空港产业选择五维度模型与方法研究
- 2001年4月份上海市自学考试护理教育学试卷及参考答案护理学专业
- PEP小学英语三年级上册期末试卷5
- 担山公寓监理规划
- 大学体验英语4课后翻译
- 牛津译林版高中英语必修模块三 Unit1 Project 教学设计
- 测试技术基础考试复习题
- 第15章 工具变量与两阶段最小二乘
- 生理学
- 2018材料岗位随堂测验
- 毕业论文1
- 集体备课记录表1 - 图文
- XXX东西楼改造工程施工组织设计
- 卷烟企业制丝工艺略谈