学 位 论 文 诚 信 声 明 书
本人郑重声明:所呈交的学位论文(设计)是我个人在导师指导下进行的研究(设计)工作及取得的研究(设计)成果。除了文中加以标注和致谢的地方外,论文(设计)中不包含其他人或集体已经公开发表或撰写过的研究(设计)成果,也不包含本人或其他人在其它单位已申请学位或为其他用途使用过的成果。与我一同工作的同志对本研究(设计)所做的任何贡献均已在论文中做了明确的说明并表示了致谢。
申请学位论文(设计)与资料若有不实之处,本人愿承担一切相关责任。
学位论文(设计)作者签名: 日期:
学 位 论 文 知 识 产 权 声 明 书
本人完全了解学校有关保护知识产权的规定,即:在校期间所做论文(设计)工作的知识产权属西安科技大学所有。学校有权保留并向国家有关部门或机构送交论文的复印件和电子版。本人允许论文(设计)被查阅和借阅;学校可以公布本学位论文(设计)的全部或部分内容并将有关内容编入有关数据库进行检索,可以采用影印、缩印或其它复制手段保存和汇编本学位论文。
保密论文待解密后适用本声明。
学位论文(设计)作者签名: 指导教师签名: 年 月 日
论文题目:基于PLC的立体车库设计 专 业:自动化1203班
学 生:范明华 (签 名): 指导老师:袁 兴 (签 名):
摘 要
立体车库是专门实现各种车辆的自动停放及科学寄存的仓储设施。随着城市汽车保有量的不断增加,停车难问题己经成为大中型城市的一个普遍现象。机械式立体车库可充分利用上地资源,发挥空间优势,最大限度地停放车辆,成为解决城市静态交通问题的重要途径。
本文介绍了升降横移式立体停车库的工作原理,确定了以PLC为主控单元的控制方案,并对控制系统的输入,输出进行了详细分析,完成了控制系统的输入,输出分配和PLC选型,设计了控制系统的程序流程图,完成立体停车库控制系统设计。
关键词: 立体车库,PLC,升降横移式
Title: The Cubic Garage Design Based On PLC Major: Automation
Name: Fan Minghua (Signature): Supervisor:Yuan Xing (Signature):
ABSTRACT
Stereo garage is the storage which is used automatic parking and scientific storage of kinds of automobile.As the quantity of urban automobile has increased continuously in nowadays.The hard-to-Park Problem has become a common phenomenon.Mechanical stereo garage can use Lander source sufficiently and bring space advantage into play,and maximize the number of parking cars.It has become an important way for static traffic problem of cities.
The principle of the up-down and translation cubic garage is introduced. The control project that PLC is used as the main control unit is designed. By analyzing inputs and outputs of the control system, the inputs and outputs distribution of the
control system is finished and the type of PLC is selected. Moreover ,the program flow chart of the control system is designed and the control system of cubic garage is implemented.
KEY WORDS:stereo garage,plc,up-down and translation
目录
第1章 绪 论 .............................................................................................................................. 1 1.1立体车库概述 ........................................................................................................................ 1 1.1.1 立体车库的发展 .............................................................................................................. 1 1.1.2 立体车库的分类 ................................................................................................................ 1 1.2立体车库国内外研究现状及发展趋势 ................................................................................ 3 1.3选题的研究意义 .................................................................................................................... 4 第2章 系统的硬件设计 ............................................................................................................ 6 2.1 整体设计方案 ....................................................................................................................... 6 2.2系统框图 ................................................................................................................................ 6 2.3各模块的介绍 ........................................................................................................................ 7 2.3.1西门子S7-200 226CN ........................................................................................................ 7 2.3.2 51单片机最小系统 ............................................................................................................ 7 2.3.3 电源模块 ............................................................................................................................ 9 2.3.4 电机以及驱动模块 .......................................................................................................... 11 2.3.5 车位检测模块 .................................................................................................................. 13 2.3.6 smart 700 ........................................................................................................................... 14 第3章 软件系统设计 .............................................................................................................. 16 3.1 软件工具的简单介绍 ......................................................................................................... 16 3.1.1 STEP7介绍 ....................................................................................................................... 16 3.1.2 Keil C51编译器的简介 ................................................................................................... 18 3.1.3 Wincc Flexible介绍 .......................................................................................................... 22 3.2软件设计的思路 .................................................................................................................. 23 3.2.1 PLC控制单元 ................................................................................................................... 24 3.2.2 单片机单元 ...................................................................................................................... 24 3.2.3 上位机编写 ...................................................................................................................... 25 第四章 系统的总体调试 .......................................................................................................... 28 4.1硬件调试 .............................................................................................................................. 28 4.2软件调试 .............................................................................................................................. 29 4.3总调试 .................................................................................................................................. 29 4.4调试结果 .............................................................................................................................. 29 第5章 结论 .............................................................................................................................. 32 致 谢 .......................................................................................................................................... 33 附录1 PLC程序 ........................................................................................................................ 35 附录2 单片机程序 ................................................................................................................... 39 附录3 实物图 ........................................................................................................................... 45
第1章 绪 论
1.1立体车库概述 1.1.1 立体车库的发展
无处停放车辆的问题是一个城市的社会、经济、交通发展到一定程度所产生的结果,立体停车设备的发展,在国外,尤其在日本已有近30~40年的历史。无论在技术上还是在经验上都已获得了一定的成功。我国也从90年代初开始研究开发机械立体停车设备,距今已有快二十年的历程。由于目前很多新建小区内住户与车位的配比为1:1,为了解决停车位占地面积与住户商用面积的矛盾,机械式立体停车设备以其平均单车占地面积小的独特特性,已被广大用户接受。
1.1.2 立体车库的分类
如今市面上常见的机械式立体停车库有: (1)升降横移类 整机特点:
有效的利用空间,提高空间的利用率达数倍。
存取车相对快捷便利,独特的跨梁设计,车辆出入无障碍。 采用PLC控制,自动化程度高。 环保节能,低噪音。
人机界面完善,有多种操作方式可选配,操作简便快捷。 (2)垂直循环式 整机特点:
省地:在58㎡的地方所建起大型垂直循环类机械停车库,可容纳34辆轿车或着24辆面包车。
方便:使用PLC控制自动调车, 一次按键即可完成存取车。 迅速:调车时间短,取车快速。
灵活:可设置在地面上或着半地上半地下,可或附设在建筑物内,还可多台组合。
1
经济:省去购置土地的大量费用,有利于合理规划和优化设计。
省电:不需要强制通风,无大面积照明,耗电量仅为普通地下车库的35%。 (3)简易升降式 整机特点:
一个车位泊两台车 。(最适宜多车型家庭用)
构造简单实用,无需特殊地面基础要求。适合装置于工厂、别墅、住宅停车场。 可任意迁移,搬迁安装容易或根据地面情况,及多台设备。 备有专用锁匙开关,防止外人开动设备。 车板防下滑保险装置。 (4)垂直升降式 整机特点:
占地少,容车量大,高层设计最高能够达到平均一辆车仅占一平方米的空间。 可同时提供多车位进出口,等待时间短。 智能化程度高,可预约存取车及空车位导向。
绿色环保车库,利用车库外形的空隙空间可以进行绿化,使车库变成一个立体的绿化体,有利于美化城市和环境。智能化控制,操作简单方便。
(5)平面横移式车库 整机特点:
每层的车台和升降机分别动作,提高了车辆的出入库速度,可自由利用地下空间,停车规模可达到数千台。部分区域发生故障时,不影响其他区域的正常运行,因此使用更加方便;采用以车辆驾驶员为中心的设计方法,提高了舒适性。
采取多重保险措施,安全性能卓越;通过计算机和触屏界面进行综合管理,可全面监视设备的运行状况,并且操作简单。
(6)巷道堆垛式 整机特点:
可设置于地上或地下,充分利用有效空间。载车板的升降和行走同时运行,存取车方便快捷。全封闭式管理,安全可靠,保障人、车安全。
通过升降机、行走台车及横移装置输送载车板实现存取车操作,整个过程全自动完
2
成。固定式升降机+各层行走台车的配置形式,可实现多个人同时存取车。
(7)多层循环式 整机特点:
可设置于地上或地下,或一半地下、一半地上,充分利用有效空间。此设备的出入口可以设在底部、中部或上部。全封闭式管理,安全可靠,保障人、车安全。
通过升降机、行走台车及循环装置输送载车板实现存取车操作,整个过程全自动完成。
(8)水平循环式
整机特点:一般用于大厦地下设置,式最节省空间的一种设计,车位占满地下空间,采用封闭式结构,通过机械作上下左右自由移动,再由升降机的提升进出库,无需另设走道,地下空间提车利用率可达85%。
1.2立体车库国内外研究现状及发展趋势
无处停放车辆的问题是一个城市的社会、经济、交通发展到一定程度产生的结果。早在50多年以前,立体停车在国外有所发展,先后出现了针对家庭使用的双层停车设备;利用住宅的空地建起的2-4层升降横移停车设备;适合于城市中心商住区使用的停车楼和停车塔;利用广场、建筑物下面的空间建设地下车库。自70年代末起,世界经济飞速发展,汽车逐渐普及,保有量不断增加,使得地少人多、车多的国家、地区和一些发达国家积极开展了立体停车技术的研究开发和制造应用。以日本、美国、德国等为代表的发达国家在停车技术领域的研究处于世界领先水平,无论在技术上还是在经验上均已获得了成功。韩国和我国的港、澳、台地区的停车业也通过引进移植制造,得到了蓬勃发展,较好地解决了本地区的停车难,并开始向外输出技术和出口产品。
我国立体车库的早期研究开发工作是从80年代中期开始,90年始引进和生产停车设备,在北京、上海、广州、深圳等地都有使用。由于很多新建小区内住户与车位的配比为1:1,为了解决停车位占地面积与住户商用面积的矛盾,立体机械停车设备以其平均单车占地面积小的独特特性,已被广大用户接受。参照日本等国标准制定的我国行业标准也于近几年出台,目前停车设备生产厂已发展到几百家,生产各种类型的停车设备,有些停车设备已开始出口。
3
立体车库停车设备行业在我国是近十几年来发展起来的新兴行业。随着我国人民生活的不断提高和汽车工业的高速发展,机械式停车设备以其独有的优越性,最近几年得到了广泛的应用。2008年国内进行安装的机械式停车库达到687个,比2007年的652个增加了35个,增长了5.37%。2008年在中国整体外贸出口增速大幅下滑的情况下,立体停车设备出口额增长仍达到了68.1%的增速。
因此立体车库未来市场是巨大的,但对产品的需求,将会向两个极端发展:一个极端就是价格的极端,市场大量需要低价格的机械停车设备,它只要能够达到增加停车位的目的,能够保证最基本的使用性能,以价格优势占领市场,这一部分的市场份额预计将达到70%-80%;另一个极端就是技术与性能的极端,要求停车设备具有优越的使用性能、方便的操作方式、快捷的存取速度。通过国内外机械停车设备使用经验的总结,可以发现人们在利用机械停车设备存取车时,首先追求的是存取车速度、等待时间以及方便程度。此外,未来的机械停车设备市场,将更加注重完善的售后服务系统,远程监控系统、远程故障导处理系统将是用户追求的目标。随着我国经济持续快速的发展,城市规划的完善,机械停车设备行业将成为一个充满生机的朝阳行业,机械停车设备的技术也将得到长足的发展。
目前市面上常见的机械式立体停车库有: 升降横移类、简易升降类、垂直循环类、水平循环类、多层循环类、平面移动类、巷道堆垛类、垂直升降类等8种。
从我国机械式车库实际安装情况看,由于升降横移类具有类型多、规模可大可小、场地适应性强、价格便宜等特点,决定了升降横移类应用最为广泛,数量占绝大多数,今后相当一段时间内仍将是升降横移类的天下。
1.3选题的研究意义
随着社会的发展,城市人口日益增多,楼房和车辆也越来越多,特别是随着改革开放以来,国民经济的高速发展为汽车工业的振兴注入了强劲的动力。从2000—2013这些年间,我国汽车销量由208万辆增值2198万辆,更是在2009—2013年实现了连续五年全球销量第一的惊人数据。
在如此汽车销量高速增长的同时,也伴随着许多问题和矛盾,其中最为突出的便是停车问题。大多数普通住宅小区的车库严重配套不足,以至于小区内小轿车到处乱停乱
4
放,马路边、人行道、甚至草坪上都停车。“十五”期间,国家鼓励轿车进入家庭,随着城市居民汽车普及率的大幅提高,在中国城市土地资源越来越紧缺的情况下,城市住宅小区的停车难问题已经日益突出,许多大城市为了解决这个问题,都提出了住宅小区停车位的供应以配建为主,并都制定了新的建筑物配建停车设施标准。但我国大城市普通住宅区以及老城区以前建立的住宅区大部分都没有建停车场(库),也不会有太大的地方和空间来建大型停车场,也就无法满足住宅小区内广大居民的停车需求。为此停车问题也就逐渐成为大城市的一个大难题。城市中有限的地面面积已经无法提供足够的停车车位,于是向空间发展成为解决当前问题的一条重要途径。立体停车库就是在这种背景下发展起来的。研究立体停车库网络智能管理系统不仅能够降低成本,带来经济效益,更能提高效率,方便人们的日常生活。
立体车库与地下车库相比可更加有效地保证人身和车辆的安全,人在车库内或车不停准位置,由电子控制的整个设备便不会运转。应该说,机械车库从管理上可以做到彻底的人车分流。
在地下立体车库中采用机械存车,还可以免除采暖通风设施,因此,运行中的耗电量比工人管理的地下车库低得多。机械车库一般不做成套系统,而是以单台集装而成。这样可以充分发挥其用地少、可化整为零的优势,在住宅区的每个组团中或每栋楼下都可以随机设立机械停车楼。这对眼下车库短缺的小区解决停车难的问题提供了方便条件。
5
第2章 系统的硬件设计
2.1 整体设计方案
系统的总体方案是系统实现的基础,本次毕业设计主要研究基于PLC的立体车库的设计,采用西门子S7-200系列PLC中的226CN为主芯片。由于所需IO口过多,故我在PLC与电机之间加上51单片机最小系统来满足使用。使用L298N驱动板来驱动42步进电机。用激光头和光敏电阻传感器模块来组成车位检测系统。用wincc flexible来编写上位机控制模块。经过调试可实现车位移动、车位检测、急停等功能。
2.2系统框图
基于PLC的立体车库主要由主芯片S7-226N、步进电机、步进电机驱动、51单片机最小系统、wincc flexible上位机等模块组成。用单片机来编写电机的驱动程序,用PLC的OUT端连接单片机来控制单片机的高低电平的转换来控制电机的启停与正反转。用PLC的IN端来连接光敏电阻传感器来,通过光敏电阻传感器的高低电平转换来检测车位是否有车。用PC/PPI来实现PLC和wincc flexible的连接。系统原理框图如图2.1所示。
激光头电源模块分压模块WINCC FLEXIBLE 西门子S7-226N51单片机最小系统电机模块光敏电阻传感器 图2.1系统的原理框图
6
2.3各模块的介绍
2.3.1西门子S7-200 226CN
S7-200 是一种小型的可编程序控制器,适用于各行各业,各种场合中的检测、监测及控制的自动化。S7-200系列的强大功能使其无论在运行中,或相连成网络皆能实现复杂控制功能。因此S7-200系列具有极高的性能/价格比。S7-200系列在集散自动化系统中充分发挥其强大功能。使用范围可覆盖从替代继电器的简单控制到更复杂的自动化控制。应用领域极为广泛,覆盖所有与自动检测,自动化控制有关的工业及民用领域,包括各种机床、机械、电力设施、民用设施、环境保护设备等等。
CPU 226集成24输入/16输出共40个数字量I/O 点。可连接7个扩展模块,最大扩展至248路数字量I/O 点或35路模拟量I/O 点。13K字节程序和数据存储空间。6个的30kHz高速计数器,2路的20kHz高速脉冲输出,具有PID控制器。2个RS485通讯/编程口,具有PPI通讯协议、MPI通讯协议和自由方式通讯能力。I/O端子排可很容易地整体拆卸。用于较高要求的控制系统,具有更多的输入/输出点,更强的模块扩展能力,更快的运行速度和功能更强的内部集成特殊功能。可完全适应于一些复杂的中小型控制系统。如图2.2所示。
图2.2西门子S7-200 226CN
2.3.2 51单片机最小系统
单片机全称单片微型计算机(Single Chip Microcomputer),简称SCM,又称微控制器或嵌入式控制器,把一个计算机系统集成到一个芯片上,体积小、质量轻、价格便
7
宜。单片机内部也有和电脑功能类似的模块,比如CPU,内存,并行总线,还有和硬盘作用相同的存储器件。
单片机的最小系统是由组成单片机系统必需的一些元件构成的,除了单片机之外,还需要包括电源供电电路、时钟电路、复位电路。单片机最小系统电路。
1)时钟电路
单片机工作时,从取指令到译码再进行微操作,必须在时钟信号控制下才能有序地进行,时钟电路就是为单片机工作提供基本时钟的。单片机的时钟信号通常有两种产生方式:内部时钟方式和外部时钟方式。
在单片机XTAL1和XTAL2引脚上跨接上一个晶振和两个稳频电容,可以与单片机片内的电路构成一个稳定的自激振荡器。晶振的取值范围一般为0~24MHz,常用的晶振频率有6MHz、12 MHz、11.0592 MHz、24 MHz等。一些新型的单片机还可以选择更高的频率。外接电容的作用是对振荡器进行频率微调,使振荡信号频率与晶振频率一致,同时起到稳定频率的作用,一般选用20~30pF的瓷片电容。
外部时钟方式则是在单片机XTAL1引脚上外接一个稳定的时钟信号源,它一般适用于多片单片机同时工作的情况,使用同一时钟信号可以保证单片机的工作同步。
时序是单片机在执行指令时CPU发出的控制信号在时间上的先后顺序。ATC51单片机的时序概念有4个,可用定时单位来说明,包括振荡周期、时钟周期、机器周期和指令周期。
振荡周期:是片内振荡电路或片外为单片机提供的脉冲信号的周期。时序中1个振荡周期定义为1个节拍,用P表示。
时钟周期:振荡脉冲送入内部时钟电路,由时钟电路对其二分频后输出的时钟脉冲周期称为时钟周期。时钟周期为振荡周期的2倍。时序中1个时钟周期定义为1个状态,用S表示。每个状态包括2个节拍,用P1、P2表示。
机器周期:机器周期是单片机完成一个基本操作所需要的时间。一条指令的执行需要一个或几个机器周期。一个机器周期固定的由6个状态S1~S6组成。
指令周期:执行一条指令所需要的时间称为指令周期。一般用指令执行所需机器周期数表示。ATC51单片机多数指令的执行需要1个或2个机器周期,只有乘除两条指令的执行需要4个机器周期。
8
了解了以上几个时序的概念后,我们就可以很快的计算出执行一条指令所需要的时间。例如:若单片机使用12MHz的晶振频率,则振荡周期=1/(12MHz)=1/12us,时钟周期=1/6us,机器周期=1us,执行一条单周期指令只需要1us,执行一条双周期指令则需要2us。
2)复位电路
无论是在单片机刚开始接上电源时,还是运行过程中发生故障都需要复位。复位电路用于将单片机内部各电路的状态恢复到一个确定的初始值,并从这个状态开始工作。
单片机的复位条件:必须使其RST引脚上持续出现两个(或以上)机器周期的高电平。单片机的复位形式:上电复位、按键复位。
引脚图如图2.3所示。
图2.3 51单片机最小系统
2.3.3 电源模块
使用24V直流电源给PLC供电。同时用直流降压文雅模块LM2596S将24V电源降
9
压至5V给单片机、光敏电阻传感器、步进电机驱动以及激光头供电。24V直流电源如图2.4所示,LM2596S如图2.5所示。
表2.1 LM2596S参数
模块性质 输入电压 输出电流 开关频率 负载调整率 工作温度 非降压隔离(BUCK) 整流方式 3.2V-35V 3A(最大) 150KHz ±0.5% -40°C到+85°C 输出电压 转换效率 输出纹波 电压调整率 非同步整流 2.45V-30V 92%(最大) 30mV(最大) ±2.5%
图2.4 24V直流电源
10
图2.5 LM2596S
2.3.4 电机以及驱动模块
此部分为本次设计的传动部分。以42步进电机,丝杆及滑块组成了传动装置如图2.6所示。
表2.2 步进电机参数
电机类型 驱动电压 丝杆长度 滑块行程 电极直径 丝杆直径 丝杆螺距 步距角 两相四线 4-9V/100-500mA 90mm 80mm 15mm 3mm 0.5mm 18° 11
图2.6 51步进电机传动装置
电机驱动部分我选择L298N驱动模块。
L298N是ST公司生产的一种高电压、大电流电机驱动芯片。该芯片采用15脚封装。主要特点是:工作电压高,最高工作电压可达46V;输出电流大,瞬间峰值电流可达3A,持续工作电流为2A;额定功率25W。内含两个H桥的高电压大电流全桥式驱动器,可以用来驱动直流电动机和步进电动机、继电器线圈等感性负载;采用标准逻辑电平信号控制;具有两个使能控制端,在不受输入信号影响的情况下允许或禁止器件工作有一个逻辑电源输入端,使内部逻辑电路部分在低电压下工作;可以外接检测电阻,将变化量反馈给控制电路。使用L298N芯片驱动电机,该芯片可以驱动一台两相步进电机或四相步进电机,也可以驱动两台直流电机。如图2.7所示。
图2.7 L298N模块
12
2.3.5 车位检测模块
此部分主要由光敏电阻传感器和激光头组成,用来检测车位上是否有车辆停放。 光敏电阻传感器 模块特色:
1、采用灵敏型光敏电阻传感器
2、比较器输出,信号干净,波形好,驱动能力强,超过 15mA。 3、配可调电位器可调节检测光线亮度 4、工作电压 3.3V-5V
5、输出形式 :数字开关量输出(0 和 1) 模块使用说明
1、光敏电阻模块对环境光线最敏感,一般用来检测周围环境的光线的亮度,触发PLC或继电器模块等;
2、模块在环境光线亮度达不到设定阈值时,DO 端输出高电平,当外 界环境光线亮度超过设定阈值时,DO 端输出低电平;
3、DO 输出端可以与PLC直接相连,通过PLC来检测高低电平,由此来检测环境的光线亮度改变。
实物如图2.8所示,接线图如图2.9所示。
图2.8 光敏电阻传感器实物图
13
图2.9 光敏电阻传感器接线图
2.3.6 smart 700
西门子触摸屏SMART LINE系列为用户提供了触摸屏的基本功能,它经济性好,功能完善,可以与多种类型的西门子PLC进行通讯,在自动化控制系统中有着广泛的应用,为用户提供了人机交互友好的操作方法。
西门子触摸屏SMART LINE系列是一个人机交互平台,它可以同西门子PLC之间进行通讯,并且为用户提供一个友好的界面,便于用户对控制系统中的设备运行情况进行监控。它的硬件特点如下:
1.高分辨率宽屏显示 西门子触摸屏SMART LINE系列采用高分辨率K真彩色,画面更清晰,画质更好;800*480的宽屏显示设计和传统屏幕相比具有更大的可视面积,使得整个画面中可以显示更多的信息,也可以使用户感觉更舒适。
2. LED背光 西门子触摸屏SMART LINE系列采用LED背光,可以降低设备能耗,结合屏保功能可以延长操作屏的使用寿命;通过控制面板,可以实现西门子触摸屏的组态功能。
3. 通讯功能强大 西门子触摸屏SMART LINE系列集成有以太网口,可以和西门子PLC S7-200系列,西门子PLC S7-200smart系列以及西门子LOGO!之间建立通讯连接;除此之外,它还可以通过串口与西门子PLC S7-200和西门子PLC S7-200smart进行通讯。
14
4. 处理器性能高 西门子触摸屏SMART LINE系列采用高端的ARM处理器,主频高,使得数据处理速度快,画面显示流畅,增强的内存使得画面的切换速度更快; 西门子触摸屏SMART LINE系列具有多种优点,为用户在现场的调试提供了方便。它的硬件部分具有强大的功能,为用户提供了多种功能,使得用户可以充分利用这些控制功能完成对自动化控制系统的掌控。
图2.10 smart700触控屏
15
第3章 软件系统设计
本章主要介绍了本设计的软件设计部分,包括PLC程序的编写,单片机程序的编写以及上位机WINCC的构建。
3.1 软件工具的简单介绍 3.1.1 STEP7介绍
STEP7 编程软件是一个用于SIMATIC 可编程逻辑控制器的组态和编程的标 准软件包。STEP7 标准软件包中提供一系列的应用工具,如:SIMATIC 管理器、 符号编辑器、硬件诊断、编程语言、硬件组态、网络组态等。STEP7 编程软件可 以对硬件和网络实现组态,具有简单、直观、便于修改等特点。该软件提供了在 线和离线编程的功能,可以对PLC 在线上载或下载。利用STEP7 可以方便地创 建一个自动化解决方案。
打开step7软件后,出现如图.1所示画面。
图3.1 step7启动画面
点击File-New,新建一个工程项目,如图3.2所示。
16
图3.2新建工程
可在其中NetWork1、NetWork2等中编写不同单位的程序并进行命名。如图3.3,3.4。
图3.3 NetWork1程序
17
图3.4 NetWork2程序
程序编写完成后可点击下载将程序下载至PLC中,如图3.5。
图3.5 程序下载
3.1.2 Keil C51编译器的简介
C语言源程序要变为CPU可以执行的机器码有两种方法,一种是手工汇编,另一种是机器汇编,目前已极少使用手工汇编的方法了,机器汇编是通过汇编软件将源程序变为机器码,用于MCS-51单片机的汇编软件有早期的A51,随着单片机开发技术的不断
18
发展,从普遍使用汇编语言到逐渐使用高级语言开发,单片机的开发软件也在不断发展,Keil软件是目前最流行开发MCS-51系列单片机的软件,这从近年来各仿真机厂商纷纷宣布全面支持Keil即可看出。
Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部份组合在一起。运行Keil软件需要Pentium或以上的CPU,16MB或更多RAM、20M以上空闲的硬盘空间、WIN98、NT、WIN2000、WINXP等操作系统。
Keil C51单片机软件开发系统可用于编辑C或汇编源文件。然后分别由C51编译器编译生成目标文件(.OBJ)。目标文件与库文件一起经LIB51连接定位生成绝对目标文件(.ABS)。ABS文件由OH51转换成标准的Hex文件,由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如EPROM 中。
打开Keil软件后,出现如图3.6所示界面。
图3.6 Keil 软件主界面
点击Project--New Project。新建一个工程项目,如图3.7所示。
19
图3.7 Keil软件新建工程界面
点击会出现的对话框中选择工程存在路径,如图3.8所示。单击“保存”后,出现界面。在此界面上选择电路板上所用的单片机型号,如图3.9所示,单击“确定”。
图3.8 保存路径界面
图3.9选择电路板上所用的单片机型号界面
设置完成后,软件会提示是否将8051上电初始化程序添加入工程。这个一般选“否”。这样就建立好了一个空的51工程,如图3.10所示。
20
图3.10建立空的51工程界面
点击File--New,便建立了一个空的文本框,如图3.11所示。
图3.11 建立空文本框界面
到现在为止,就可以开始在里面输入代码了。保存时注意:如果是用C语言写的程序,则将文本保存成*.c,如图3.12所示。
图3.12 保存文本改写界面
将写完的程序添加到工程里面,如图3.13所示,在左边Project Workspace里的Source Group 1上右击,选择Add Files to Group ’Source Group 1’。在打开的对话框中,选择刚存的文件路径和对应的扩展名。此时,程序就添加进了这个工程。
图3.13 写完的程序添加到工程里面
下一步,就开始编译刚输入进去的代码。接着,Keil会打出下面的提示:0 Error(s), 0 Warning(s).建立工程的时候,默认是不生成HEX文件的,得在编译做如下设置:在Project
21
Workspace里Target 1上右击,选择“Options for Target ‘Target 1”。选择“Output”按图示,将箭头所指的多选框勾上,点“确定”。现在再点击重新编译,就会在工程所在文件夹里生成HEX文件。
3.1.3 Wincc Flexible介绍
WinCC Flexible,德国西门子公司工业全集成自动化的子产品,是一款面向机器的自动化概念的HMI软件。WinCC Flexible 用于组态用户界面以操作和监视机器与设备,提供了对面向解决方案概念的组态任务的支持。
WinCC Flexible优点: 1.多功能
通用的应用程序,适合所有工业领域的解决方案;多语言支持,全球通用 ;可以集成到所有自动化解决方案内;内置所有操作和管理功能,可简单、有效地进行组态;可基于Web持续延展,采用开放性标准,集成简便;集成的Historian 系统作为IT 和商务集成的平台;可用选件和附加件进行扩展 ;“全集成自动化” 的组成部分,适用于所有工业和技术领域的解决方案。
2.实例证明
WinCC集生产自动化和过程自动化于一体,实现了相互之间的整合,这在大量应用和各种工业领域的应用实例中业已证明,包括:汽车工业、化工和制药行业、印刷行业、能源供应和分配、贸易和服务行业、塑料和橡胶行业、机械和设备成套工程、金属加工业、食品、饮料和烟草行业、造纸和纸品加工、钢铁行业、运输行业、水处理和污水净化。
3.其他作用
WinCC是SIMATIC PCS 7过程控制系统及其它西门子控制系统中的人机界面组件。 WinCC 还为垂直市场解决方案提供有丰富的选件(options)和附加件(add-ons)。 通过利用“FDA选件”,并在工程与组态时采取适当的措施— 这在中已阐明— SIMATIC WinCC符合制药和食品行业FDA 21 CFR Part 11的要求(FDA = 美国食品和药物管理局)。众多的任选件,将使工厂认证更为容易,而这种认证为这些工业领域的各种要求更是提供了非常有说服力的全面响应。
22
例如,已开发出了一些应用于垂直市场,如供水行业的WinCC附加件:应用Sinaut ST7cc的远程控制系统,应用PM-Aqua的归档和记录系统,应用Siwa-Plan的运行成本优化系统,应用FunkServer - Pro的报警管理系统等。
3.2软件设计的思路
以PLC为核心控制单元,控制单片机、上位机和传感器,单片机用来控制和驱动步进电机。存取车流程如图3.14所示。
开始上电扫描N判断车位1是否有车车位1存车YN判断车位2是否有车车位2存车Y车位3存车N判断车位3是否有车车位3复位Y车位4存车N判断车位4是否有车车位4复位Y车位5存车车位5复位
图3.14 存车流程
23
3.2.1 PLC控制单元
PLC是整个设计的核心控制单元,通过给PLC的端口加以信号输入电路实现功能。PLC各端口定义如下表3.1所示。
表3.1 PLC各个端口定义
I0.0 I0.1 I0.2 I0.3 I0.4 I0.5 I0.6 I0.7 I1.0 I1.1 I1.2 I1.3 车位3存取车 急停 车位3复位 车位4存取车 车位4复位 车位5存取车 车位5复位 车位1车辆检测 车位2车辆检测 车位3车辆检测 车位4车辆检测 车位5车辆检测 Q0.0 Q0.1 Q0.2 Q0.3 Q0.4 Q0.5 Q0.6 Q0.7 Q1.0 Q1.1 单片机 P0.0 单片机 P0.1 单片机 P0.2 单片机 P0.3 单片机 P0.4 单片机 P0.5 单片机 P0.6 单片机 P0.7 单片机 P0.0 单片机 P0.1 3.2.2 单片机单元
51单片机最小系统是用来驱动步进电机的使用。单片机各个端口的定义如下表3.2所示。
表3.2 单片机各个端口的定义 口线
P0口
P0.0 P0.1 P0.2 P0.3 P0.4 P0.5
24
定义功能 PLC Q0.0 PLC Q0.1 PLC Q0.2 PLC Q0.3 PLC Q0.4 PLC Q0.5
P0.6 P0.7
P1口
P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7
P2口
P3口
P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7
PLC Q0.6 PLC Q0.7 电机1IN1 电机1IN2 电机1IN3 电机1IN4 电机2IN1 电机2IN2 电机2IN3 电机2IN4
电机3IN1 电机3IN2 电机3IN3 电机3IN4 电机4IN1 电机4IN2 电机4IN3 电机4IN4
3.2.3 上位机编写
上位机是整个设计的最后一项,它的作用是将硬件部分和软件部分连接在一块并使使用者可以很简便的进行操做。
首先打开Wincc软件,新建一个项目,如图3.15所示。
25
图3.15 创建新的项目
编辑画面并定义按键变量。如图3.16所示。
图3.16编辑画面并定义按键变量
最后编辑了两个画面并且可以通过“进入”和“返回”按钮互相切换,如图3.17和3.18所示。
26
图3.17画面1主体界面
图3.18画面2控制界面
27
第四章 系统的总体调试
一个系统从着手到完成,系统调试是必不可少的。从拿到题目开始到结束都是在一个在不断的调试的过程,不同的设计,其系统调试方法和内容也不尽相同。在一个设计完成之后,要看系统设计成功与否,必不可少的需要系统调试来修改完善系统的功能。系统调试不但能够检测到硬件是否完好,还能判断软件编写是否正确,且是唯一的方法,所以必须要从两发面进行调试,分别是硬件调试和软、硬件联合调试。在硬件调试时候,我们选择验证性调试思路,在软硬件联合调试方面,则结合已经完好的硬件进行编译,完成调试。主要是调试了以下几点:
(1)为了防止线路中的短路、开路以及虚焊,选用万用表对电路进行测试,同时结合电路原理图,检查实物是否和原理图一致。
(2)依次检查电路中的各个器件,查看是否失效或安装错误,此时需要在网上查找相应的使用说明。
(3)检查各模块之间的引脚连线是否正确。
(4)在上电之前,应该检查电源极性是否接入正确。
在系统调试时,常常会出现许多问题,如硬件部分老是出现接触不良或者焊接不良的问题,使得在检查的时候总是找不出问题所在。还有就是软件程序的问题。程序下载后,系统不稳定,报警部分出现失调等。
4.1硬件调试
硬件调试主要是检查各个部分的线路连接是否正确,是否存在短路,开路或者虚焊的问题。
在调试过程中,也并不是一帆风顺的。在某次调试过程中,由于PLC输出是24V电压,给到单片机上之后,单片机始终无法得到0V的低电平,无法正常工作,在询问老师以及查阅相关资料后,在单片机与PLC之间加入下拉电阻,完美的解决这一问题。在某次调试中,由于自己的粗心大意,分压电路没有有效连接,导致PLC过来的24V电压超出了单片机的承受范围,烧坏了芯片。其中各种问题数不胜数,在老师和同学的帮助下,都得到了解决。
28
4.2软件调试
软件调试部分主要是将程序下载至硬件中,并使其得到我们所需要的效果。 在调试过程中,丝杆总是无法到达指定的位子,查阅相关资料后,我了解到丝杆的总进程为80mm,丝杆螺距为.5mm,因此我再程序中加入计数器,来使得丝杆达到指定位置。
4.3总调试
在硬件调试和软件调试分别完成后,就该将其连接到一起进行总调试。
在总调试的过程中,也并不是一步到位的。其中,我遇到了一个大麻烦,在将一切连接到一起,并载入程序后,上位机,也就是smart700触控屏无法控制整个程序的运行。在询问老师和查阅资料后,我了解到在编写Wincc时,在变量中无法使用PLC的输出端Q。要给其并联中间变量M才可使其正常工作。
4.4调试结果
连接好接线,下载程序,上点工作。点击触控屏上的“进入”按钮,跳转至操作画面,点击“车位3存车”按钮。一号载车板左移,三号载车板下移到指定位置。存车完毕,点击“车位3复位”按钮,一号载车板和三号载车板回到初始位置。点击“车位4存车”按钮,四号载车板下降至指定位置。存车完毕,点击“车位4复位”按钮,四号载车板回到初始位置。点击“车位5存车”按钮,二号载车板右移,五号载车板下移至指定位置。存车完毕,点击“车位5复位”按钮,二号载车板和五号载车板回到初始位置。
点击“车位3取车”按钮。一号载车板左移,三号载车板下移到指定位置。取车完毕,点击“车位3复位”按钮,一号载车板和三号载车板回到初始位置。点击“车位4取车”按钮,四号载车板下降至指定位置。取车完毕,点击“车位4复位”按钮,四号载车板回到初始位置。点击“车位5取车”按钮,二号载车板右移,五号载车板下移至指定位置。取车完毕,点击“车位5复位”按钮,二号载车板和五号载车板回到初始位置。整个过程如下图所示。
29
图4.1初始状态
图4.2车位3存车
30
图4.3车位4存车
图4.4车位5存车
31
第5章 结论
本次毕业设计研究的内容主要是立体车库,以西门子S7-200 226CN为芯片,通过对这些端口加以信号输入电路,控制电路,执行电路共同完成立体车库的以下功能。
(1)各个载车板可以实现升降平移的功能,并且可由上位机来控制,由程序来控制运行的具体位置。每个载车板上都有光敏电阻传感器和激光头,能检测各个车位上是否有车辆停放。
(2)立体车库保留了扩展功能。立体车库在完成设计预想的前提下,主要考虑了整体结构设计的简单化,降低了制作成本,使之更具有普及性。由于设计要求并不复杂,没有在电路中增加冗余的功能。
然而,本次毕业设计的立体车库也存在不足,例如走线的整理,电机的长时间运行所导致的发热过大的问题等需要改进和完善。本次毕业设计使我对一个项目的整体设计有了初步认识,设计整个项目的框架,构建整个硬件模型,对电路板的制作有了一定的了解,并学会了使用Wincc编写上位机。本次毕业设计使我意识到动手实践的重要性,在硬件制作和软件调试的过程中,出现了很多问题,最终都是通过具体实践的方法来解决的。
立体车库属于应用开发项目,集中地运用了大学四年来所学的自动控制、模式识别、传感器技术、电机学、电气、计算机、机械等多个学科的知识。随着控制技术、计算机技术和信息技术的发展,立体车库在工业生产和日常生活中已经扮演了非常重要的角色,立体车库的研究和应用越来越备受关注。
32
致 谢
历经四个多月的学习和动手实践,通过自己不断的学习探索以及袁兴老师的耐心指导和热情帮助,毕业设计基于PLC的立体车库已经基本完成。
通过这次毕业设计,使我深刻地认识到学好专业知识的重要性,也理解了理论联系实际的含义,并且检验了大学四年的学习成果。在本次毕业设计中,我学习了使用keil软件编写C语言程序、Wincc编写上位机,提高了自己动手实践能力,不仅对课本所学过的知识进行了一次全面的复习和巩固,而且还在PLC,模型构建等方面学到了新的知识。。这四个月的设计是对过去所学知识的系统提高和扩充的过程,为今后的发展打下了良好的基础。在做毕业设计期间遇到了很多从来都没有遇到过的问题,我充分的理解了一句话:每当解决一个问题的时候,就会出现另一个新的问题。但是通过自己的努力和老师、同学的帮助最后把它们一一解决了。在袁兴老师的精心安排和指导下,对题目有了较深入的理解,最重要的是给了我解决问题的思路和方法。
最后,向我的指导教师袁兴老师表示诚挚的感谢。同时,也要感谢焦妍君老师、许昕琪老师、李红岩老师对我的帮助和指导批评。
33
参考文献
[1]黄永红.电气控制与PLC应用技术.机械工特出版社.2011. [2]吴中俊.可编程序控制器原理及应用.机械工业出版社,2005. ² [3]漆汉宏.PLC电气控制技术. 机械工业出版社.2006. [4]任伯森.机械式立体停车库.海洋出版社.2001.
[5]邓则名.电器与可编程控制器应用技术.机械工业出版社.2002. [6]周美兰.PLC电器控制与组态设计.科学出版社.2003. [7]张万忠.可编程控制器应用技术.化学工业出版社.2002. [8]任伯淼.机械式立体停车库.海洋出版社.2001.
[9]西门子公司.SIMATIC S7-200.可编程序控制器系统手册.2002 [10]刘顺禧.电气控制技术.2000 [11]吕厚余,等.工业电气控制技术.2007 [12]西门子公司.SMART 700使用手册.2002
[13]王炎玉.展田.升降移位立体停车库控制中的应用.林航天工业高等专科学校学报.2007. [14]程怀洲.基于PLC的多层升降横移立体停车库控制系统设计[.电子设计应用.2005. [15]郝艳芳等. 自动化立体停车设备的安全技术.机电产品开发与创新.2001. [16]于海楼.立体车库:城市交通发展之必然.2005.
[17]蒋圣平.颜景龙.裴焕斗.PLC在立体车库系统中的应用.2000.
34
附录1 PLC程序
ORGANIZATION_BLOCK 主程序:OB1 TITLE=程序注释 BEGIN
Network 1 // 网络标题 // 车位3存取车 LDN I0.1 AN M1.1 LPS
LD I0.0 O Q0.0 O Q0.1 O M1.0 ALD
AN T37 = Q0.0 LRD
A Q0.0 TON T37, 200 LRD
LD T37 O Q0.4 O Q0.5 ALD
AN Q0.1 AN T38 = Q0.4 LPP
A Q0.4 TON T38, 180 Network 2 // 车位3复位 LDN I0.1 AN M1.1 LPS
LD I0.2 O Q0.5 O M1.2 AN T42 ALD
= Q0.5
35
TON T42, 180 LPP
LD T42 O Q0.1 ALD
AN T37 = Q0.1
Network 3 // 网络标题// 车位4存取车 LDN I0.1 AN M1.1 LPS
LD I0.3 O M1.3 O Q0.6 O Q0.7 ALD
AN T39 = Q0.6 LPP
A Q0.6 TON T39, 180 Network 4 // 车位4复位 LDN I0.1 AN M1.1 LD I0.4 O M1.4 O Q0.7 ALD
AN T39 = Q0.7
Network 5 // 网络标题// 车位5存取车 LDN I0.1 AN M1.1 LPS
LD I0.5 O M1.5 O Q0.2 O Q0.3 ALD
36
AN T40 = Q0.2 LRD
A Q0.2 TON T40, 210 LRD
LD T40 O Q1.0 O Q1.1 ALD
AN Q0.3 AN T41 = Q1.0 LPP
A Q1.0 TON T41, 170 Network 6 // 车位5复位 LDN I0.1 AN M1.1 LPS
LD I0.6 O M1.6 O Q1.1 AN T43 ALD
= Q1.1
TON T43, 170 LPP
LD T43 O Q0.3 ALD
AN T40 = Q0.3 Network 7 // 车位检测 LDN I0.1 LPS
AN I0.7 = M2.0 LRD
AN I1.0
37
= M2.1 LRD
AN I1.1 = M2.2 LRD
AN I1.2 = M2.3 LPP
AN I1.3 = M2.4
END_ORGANIZATION_BLOCK
SUBROUTINE_BLOCK SBR_0:SBR0 TITLE=子程序注释 BEGIN
Network 1 // 网络标题 // 网络注释
END_SUBROUTINE_BLOCK INTERRUPT_BLOCK INT_0:INT0 TITLE=中断程序注释 BEGIN
Network 1 // 网络标题 // 网络注释
END_INTERRUPT_BLOCK
38
附录2 单片机程序
#include #define Speed 3000 sbit EN1 = P0^0; sbit SW1 = P0^1; sbit EN2 = P0^2; sbit SW2 = P0^3; sbit EN3 = P0^4; sbit SW3 = P0^5; sbit EN4 = P0^6; sbit SW4 = P0^7; sbit EN5 = P2^7; sbit SW5 = P2^6; void TIM0_Init(void); unsigned char Mark_1 = 1; unsigned char Mark_2 = 1; unsigned char Mark_3 = 1; unsigned char Mark_4 = 1; unsigned char Mark_5 = 1; void main(void) { TIM0_Init(); P0 = 0xFF; P1 = 0x00; P2 = 0xF0; P3 = 0x00; while(1); } void TIM0_Init(void) 39 { TMOD = 0x01; TH0 = (65535 - Speed)/ 256; TL0 = (65535 - Speed)% 256; ET0 = 1; TR0 = 1; EA = 1; } void T0_Timer() interrupt 1 { //---------------------------------- if(EN1 == 1) { if(Mark_1 == 1) P1 = (P1&0xF0) | 0x01; //(P1 & 0xF0) | 0x01 //P1低4位清零,第0位置1 if(Mark_1 == 2) P1 = (P1&0xF0) | 0x03; if(Mark_1 == 3) P1 = (P1&0xF0) | 0x02; if(Mark_1 == 4) P1 = (P1&0xF0) | 0x06; if(Mark_1 == 5) P1 = (P1&0xF0) | 0x04; if(Mark_1 == 6) P1 = (P1&0xF0) | 0x0C; if(Mark_1 == 7) P1 = (P1&0xF0) | 0x08; if(Mark_1 == 8) P1 = (P1&0xF0) | 0x09; if(SW1 == 0) { Mark_1 ++; if(Mark_1 == 9) Mark_1 = 1; } else { Mark_1 --; 40 if(Mark_1 == 0) Mark_1 = 8; } } //---------------------------------- if(EN2 == 1) { if(Mark_2 == 1) P1 = (P1&0x0F) | 0x10; if(Mark_2 == 2) P1 = (P1&0x0F) | 0x30; if(Mark_2 == 3) P1 = (P1&0x0F) | 0x20; if(Mark_2 == 4) P1 = (P1&0x0F) | 0x60; if(Mark_2 == 5) P1 = (P1&0x0F) | 0x40; if(Mark_2 == 6) P1 = (P1&0x0F) | 0xC0; if(Mark_2 == 7) P1 = (P1&0x0F) | 0x80; if(Mark_2 == 8) P1 = (P1&0x0F) | 0x90; if(SW2 == 0) { Mark_2 ++; if(Mark_2 == 9) Mark_2 = 1; } else { Mark_2 --; if(Mark_2 == 0) Mark_2 = 8; } } //---------------------------------- if(EN3 == 1) { if(Mark_3 == 1) 41 P3 = (P3&0xF0) | 0x01; if(Mark_3 == 2) P3 = (P3&0xF0) | 0x03; if(Mark_3 == 3) P3 = (P3&0xF0) | 0x02; if(Mark_3 == 4) P3 = (P3&0xF0) | 0x06; if(Mark_3 == 5) P3 = (P3&0xF0) | 0x04; if(Mark_3 == 6) P3 = (P3&0xF0) | 0x0C; if(Mark_3 == 7) P3 = (P3&0xF0) | 0x08; if(Mark_3 == 8) P3 = (P3&0xF0) | 0x09; if(SW3 == 0) { Mark_3 ++; if(Mark_3 == 9) Mark_3 = 1; } else { Mark_3 --; if(Mark_3 == 0) Mark_3 = 8; } } //---------------------------------- if(EN4 == 1) { if(Mark_4 == 1) P3 = (P3&0x0F) | 0x10; if(Mark_4 == 2) P3 = (P3&0x0F) | 0x30; if(Mark_4 == 3) P3 = (P3&0x0F) | 0x20; if(Mark_4 == 4) P3 = (P3&0x0F) | 0x60; if(Mark_4 == 5) P3 = (P3&0x0F) | 0x40; 42 if(Mark_4 == 6) P3 = (P3&0x0F) | 0xC0; if(Mark_4 == 7) P3 = (P3&0x0F) | 0x80; if(Mark_4 == 8) P3 = (P3&0x0F) | 0x90; if(SW4 == 0) { Mark_4 ++; if(Mark_4 == 9) Mark_4 = 1; } else { Mark_4 --; if(Mark_4 == 0) Mark_4 = 8; } } //---------------------------------- if(EN5 == 1) { if(Mark_5 == 1) P2 = (P2&0xF0) | 0x01; if(Mark_5 == 2) P2 = (P2&0xF0) | 0x03; if(Mark_5 == 3) P2 = (P2&0xF0) | 0x02; if(Mark_5 == 4) P2 = (P2&0xF0) | 0x06; if(Mark_5 == 5) P2 = (P2&0xF0) | 0x04; if(Mark_5 == 6) P2 = (P2&0xF0) | 0x0C; if(Mark_5 == 7) P2 = (P2&0xF0) | 0x08; if(Mark_5 == 8) P2 = (P2&0xF0) | 0x09; if(SW5 == 0) 43 { Mark_5 ++; if(Mark_5 == 9) Mark_5 = 1; } else { } } TH0 TL0 } Mark_5 --; if(Mark_5 == 0) Mark_5 = 8; = (65535 - Speed)/ 256; = (65535 - Speed)% 256; 44 附录3 实物图 45 因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- hids.cn 版权所有 赣ICP备2024042780号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务