摘要
企业现代化生产规模的不断扩大和深化,使得仓库成为生产物流系统中的一个重要且不可缺少的环节。立体仓库正以它最小的占地面积和最佳的空间利用率,逐步替代面积利用率极低且陈旧落后的平面仓库,这种替代促使仓储物流业的水平提高。为满足现代化生产与流通的需要,就必须采用以计算机控制技术为主要手段组成的自动化立体仓库。
本设计通过对小车自动控制过程的分析,明确了小车自动控制过程中实现控制过程的工艺要求。设计中以小车为控制对象,采用德国西门子公司的S7-300系列可编程序控制器实现了对小车的定位自动控制。
本文首先阐述了PLC工作原理与STEP7编程语言,并对小车在仓库中的工作过程作以介绍,然后详细描述小车定位自动控制系统的设计过程,包括小车工作时的PLC程序设计,并附有PLC程序梯形图。
关键词:S7-300 PLC,小车定位,自动化立体仓库
Trolleys Positioning Automatic Control System Design
Abstract
Modernized production scale enterprises have constantly expanded and deepened, allowing warehouses to become an important production and logistics system indispensable link. It is three-dimensional warehouse to the smallest area and the best utilization of space, space utilization is very low and gradually replace the outdated one-dimensional warehouse, a storage alternative to the logistics industry standards. To meet the needs of modern production and circulation, we must use a computer control technology as a primary means of automated three-dimensional warehouse. This text introduced the small car in brief in the work in the warehouse process, the PLC weaves with STEP7 the distance language, detailed described the PLC procedure design for small car to work, and fish-eye PLC procedure trapezoid diagram.
Trolleys automatic control of the design process through the analysis clearly trolleys automate the process of achieving control of processes. Trolleys for the control design to the target, the use of German Siemens company S7-300 series programmable controller to achieve trolleys positioning automatic control.
The first expounded on trolleys in the warehouse process and PLC operating principles to do with STEP7 programming language introduced, and then described in detail trolleys positioning automatic control system design process, including the work of trolleys PLC programming, together with PLC procedures Tixingtu.
Key words: S7-300 PLC,Trolleys positioning,Automated three-dimensional warehouse
1绪论
1.1选题背景及目的
自动化立体仓库的出现是物流技术的一个划时代的革新。它不仅彻底改变了仓储行业劳动密集、效率低下的落后面貌,而且大大拓展了仓库功能,使之从单纯的保管型向综合的流通型方向发展。自动化立体仓库是用高层货架储存货物,以巷道堆垛起重机存取货物,并通过周围的装卸搬运设备,自动进行出入库存取作业的仓库。
自动化立体仓库具有普通仓库无可比拟的优越性。首先是节约空间、节约劳力。据国际仓库自动化会议资料:以库存11000托盘、月吞吐10000托盘的冷库为例,自动化立体仓库与普通仓库比较情况为:用地面积为13%、工作人员为21.9%、吞吐成本为55.7%、总投资为63.3%。立体仓库的单位面积储存量为普通仓库的4-7倍。其次是提高仓库管理水平,减少货损,优化、降低库存,缩短周转期,节约资金。近年来,特别在冷冻行业,自动化立体仓库的发展极快。自动化立体仓库主要由货架、巷道堆垛起重机、周边出入库配套机械设施和仓储管理控制系统等几部分组成。货架长度大、排列数多、巷道窄,故密度高;巷道机上装有各种定位的检测器和安全装置,保证巷道机和货叉能高速、精确、安全地在货架中取货[1]。
1.2国内外的研究状况
中国开始对立体仓库的研制并不晚,1963年研制成第一台桥式堆垛机,1973年开始研制第一座由计算机控制的自动化立体仓库,1980年该仓库在北京汽车制造厂正式投入运行。到去年年底,中国的立体仓库数量已超过300座,而且这一数字还在快速的增长中。 而传统仓储存在着一些漏洞和不合理之处,如:用伪造提货单提货、纸质提货单不易识别真伪;各种账册在保管员手中,容易产生问题,且不易查询等。使用计算机技术,通过密码管理,可以有效杜绝这些漏洞和不合理之处。 另外,提高空间利用率和提高生产效率,还只是自动化立体仓库作为一个“库”所具有的优势,它更大的作用是便于企业形成先进的物流系统,提高企业生产管理水平。
随着我国经济和科学技术的不断发展,现代物流技术在我国也得到了很大的提高,特别是作为现代物流技术典范的自动化仓库技术尤其令人关注。无轨巷道堆垛机,由于其自动化程度高,劳动效率高,可进行计算机集成管理和控制,从而可以方便地纳入整个企业的物流系统中,因此,在一些自动化程度较高的流通企业和生产企业得到了很好的应用。近几年来,堆垛机在自动化仓库中发展很快,不仅规模越来越大、数量越来越多,而且自动化仓库种类也越来越多,以适应不同场合的需求。有轨巷道堆垛机可以完成左右两排货架的货物存储工作。这种堆垛机在固定的轨道上运动,控制简单,造价低廉[2]。
可编程序控制器简称PLC, 是一种以微处理器为核心的用于工程自动控制的工业控制机,其本质是一台工业控制专用计算机。它的软、硬件配置与计算机极为类似,只不过它比一般计算机具有更强的与工业过程相连接的接口和更直接的适应于控制要求的编程语言。硬件主要由处理单元CPU、存贮器、输入/输出单元以及编程器、电源和智能输入/输出单元等构成.PLC是一种专为在工业环境应用而设计的数字运算电子系统,它是以微处理机为基础,综合了计算机技术、自动控制技术和通信技术等现代科技而发展起来的一种新型工业自动控制装置,是当今工业发达国家自动控制的标准设备之一。自动化立体仓库是一种功能多、规模大、利用率高的物资配运中心,广泛地运用于大型仓库,能按照编制的人库单/出库单自动地把物件从入口处搬运到目的货位或从指定货位把物件搬运到出口处。完成这一搬运任务的堆垛机是该系统的最关键部份,它在高层固定货架巷道中运行。实现这一控制任务采用PLC控制最为合适。S7-300是模块化中小型 PLC 系统,它能满足中等性能要求的应用。模块化,无排风扇结构,易于实现分布,易于用户掌握等特点使得S7-300成为各种从小规模到中等性能要求控制任务的方便又经济的解决方案。SIMATIC S7-300的应用领域包括:专用机床、纺织机械、包装机械、通用机械工程应用、控制系统、机床、楼宇自动化、电器制造工业及相关产业, 多种的性能递增的CPU和丰富的且带有许多方便功能的I/O扩展模块,使用户可以完全根据实际应用选择合适的模块。当任务规模扩大并且愈加复杂时,可随时使用附加模块对PLC进行扩展。选择SIMATIC S7-300系列PLC系统并应用在立体仓库体系中已取得了很大的成功,SIMATIC S7-300为模块化无风扇的设计,坚固耐用,容易扩展、具有广泛的通讯能力,容易实现的分布式结构以及用户友好的操作使SIMATIC S7-300成为中、高档性能控制领域中首选的理想解决方案。结合堆垛机的工作特性,SIMATIC S7-300是既经济又方便的选择方案。近几年来,堆垛机在自动化仓库中发展很快,不仅规模越来越大、数量越来越多,而且自动化仓库种类也越来越多,以适应不同场合的需求。有轨巷道堆垛机可以完成左右两排货架的货物存储工作。这种堆垛机在固定的轨道上运动,控制简单,造价低。输送机系统是自动化仓库中不可缺少的一部分。主要完成货物的分配、收集和转运等任务,经常与堆垛机配合使用[3]。
1.3课题的研究方法和内容
立体仓库中堆垛机的主要工作是完成储存环节的搬运,即:准确地依照上位机给出的出入库地址将货物取出或放入有关货位,并将工作过程的状态信息反馈给监控系统。 这个方法使堆垛机的小车每通过一个位置就记录一个数,一直移动到和预定位置号一致时停止移动。这个方法的特点是电路简单。另外随着电子技术的发展,出现了众多优秀的PLC,用PLC来控制堆垛机是相当灵活方便的,可以在PLC的软件中加保护,即堆垛机每走过一个货格的时间超过或少于正常的时间范围就报警。这样就可以有效地避免记数出错,本设计即采用此方法。
智能立体仓库能实现货物的自动存取功能,这就要小车在作水平、升降台做垂直运动时,能准确记忆堆垛机的位置,即堆垛机的小车和升降台所在的列和层数,以实现货物的定位存取,本系统采取了非接触式反射型光电传感器,自动检测货位的列和层数。例如,随小车移动,反射式光电传感器每经过一列货架立柱时接收到一个反射信号,列值增加1,升降台每升高一层,层光电传感器使层值增一。光电传感器的有效反射距离为30cm。在自动存取货物时,货位的输入方法有微机键盘和BCD码拨盘开关两种形式输入,PLC 在收到外部输入的货位层和列数层后,将此值作为层列记数器的预置值,用于实现货位的自动搜索控制。
2 PLC编程软件STEP7
2.1 SIEMENS公司编程软件STEP7的简单介绍
STEP7 是一个用于对SIEMENS S7-200系列PLC、S7-300系列PLC、以及S7-400系列PLC建立、测试和维护程序的工具。它是一个支持PLC设备和地址信息,SIEMENS 的PLC和这些PLC支持的网络设备进行通信的方便工具。
该软件具有如下特点[4]:
(1)统一的Windows开发易于操作:
使用Windows环境下的各种工具可同时在不同程序之间剪切或粘贴程序语句或其他数据。使用统一的Windows工具能够毫不费力的开始设计和开发工作。
(2)它能在以下工业领域实现多种多样的自动化控制任务:
生产制造工程;汽车工业;通用机械制造;专业机械制造;塑料加工;包装工业;食品和烟草工业;过程控制工程;
(3)它的特点是高效率的组态和编程,从而大幅度地降低工程成本。此外,集成的高性能系统诊断功能可保证控制器的更高可用性,显著提升生产率。为了减少停机时间,增加产量,提供可组态的过程诊断,以用于分析和排除过程故障。
(4)它为节省空间的模块化设计,可以适配您现有的各种机械控制任务,不需要考虑槽位规则。
(5)全集成自动化:通过单一、全集成和统一标准的系统就能完成用户所有的自动化任务。
(6)分布式预处理:这种机器和设备的新概念能给用户带来很多优点,如可重复使用的软件,更快速的调试时间和更高的可用性。
2.2 使用STEP7软件开发一个PLC程序的步骤
1、启动SIMATIC管理器并创建一个项目
SIMATIC管理器是一个窗口,STEP7启动时激活。项目结构用来以一定的顺序保存和排列所有数据和程序。在一个项目中,数据在分层结构中以对象的形式保存。SIMATIC站和CPU包含组态和硬件的参数数据。S7程序包含了所有的块,这些块中有控制机器所需的程序。
在Preview 中你可以将创建的项目结构的视图在on和off之间切换。要转到下一个对话框,点击Nest.
每个CPU有特定的特性;例如,关于它的存储器组态或地址区域。这也是为什么在你编程之前要选择CPU。需要 MPI地址(多点接口)是为了你的CPU与编程设备或PC通讯。对于入门样板项目,选择CPU314。你可以按照示例创建的方式在任何时候实际地选择你所得到的CPU。
OB1代表最高的编程层次,并组织S7程序中的其它块。以后还可以重新改变编程语言。
当点击Make按钮时,SIMATIC管理器连同已生成的“Getting Started”项目窗口一起打开。每次程序启动时STEP7助手将被激活。你可以在助手的第一个对话框中取消这个缺省设置。但是,如果不使用STEP7助手,要创建项目则必须在项目中自己创建每一个目录。
2、生成符号和地址
生成一个梯形图程序的重要一步就是对程序要访问的那些PLC数据区进行定义。为了便于访问,可以分配符号名称,而不是每次都访问特定地址。
3、编辑梯形图或助记符程序
一个PLC程序既可以使用梯形图也可以使用助记符编程语言来生成。
4、通过编译程序检查程序的错误
无论是在线程序还是离线程序,在其生成和编辑过程中不断被检验。在梯形图中,程序错误以红线出现。如果梯级中出现一个错误,在梯形图梯级的右边将会出现一道红线。例如在图表窗口已经放置了一个元素,但是并没有分配符号和地址的情况下,这种情形就会出现。
5、使PLC处于在线状态
6、将没有错误的程序下载到PLC中
工程包含要装载程序的PLC类型和型号的细目。在开始下载程序之前,必须检查这些信息以确保这些信息是正确的,并且和实际中使用的PLC类型相匹配。还要为相连接的PLC选择适当的通信类型。
7、使PLC处于运行或监视模式
8、在梯形图上监视程序的运行
9、在助记符程序编辑窗口监视程序运行
10、建立观察窗口监视程序运行
监视窗口能够同时监视多个PLC中指定PLC地址的内容。监视窗口一般显示在主窗口下方。它显示在程序执行时PLC存储器内容的值。
11、使用设置值功能改变定时器、计数器或数据区的数据,使调试工作更加容易进行
可以很容易的改变TIM/CNT 指令的第一个操作数,同时也可以改变用作其状态位的地址。要做到这一点,使用“地址”作为查找对象,输入要操作的地址状态位(比如T0001)。这也能够操作计时器/计数器指令的第一个操作数。(例如,如果查找T0001,则TIM 指令中的“1”也会发生匹配)。
2.3 SIEMENS公司的S7-300系列可编程控制器介绍
PLC的种类繁多,本设计采用的是德国Siemens公司的S7-300可编程控制器。它已成功地用于范围广泛的自动化领域。S7-300 的重点在于为生产制造工程中的系统解决方案提供一个通用的自动化平台。
1、系统组成
(1)处理单元 (CPU)
各种 CPU 有各种不同的性能,例如,有的 CPU 上集成有输入/输出点,有的 CPU 上集成有 PROFIBUS-DP 通讯接口等。
(2)信号模块 (SM)
用于数字量和模拟量输入/输出。
(3)通讯处理器 (CP)
用于连接网络和点对点连接。
(4)功能模块 (FM)
用于高速计数,定位操作 (开环或闭环定位) 和闭环控制。
(5)负载电源模块 (PS)
用于将 SIMATIC S7-300 连接到 120/230 伏交流电源,或 24/48/60/110 伏直流电源。
(6)接口模块 (IM)
用于多机架配置时连接主机架 (CR) 和扩展机架 (ER)。S7-300 通过分布式的主机架 (CR) 和 3 个扩展机架 (ER),可以操作多达 32 个模块。运行时无需风扇。
2、SIMATIC S7-300 适用于通用领域
高电磁兼容性和强抗振动,冲击性,使其具有最高的工业环境适应性。
3、类型
(1)S7-300 有两种类型: 标准型 温度范围从 0℃到 60℃
(2)环境条件扩展型 温度范围从 -25℃ 到 +60℃ 更强的耐受振动和污染特性。
4、功能
SIMATIC S7-300 的大量功能支持和帮助用户进行编程、启动和维护。
(1)高速的指令处理
0.6~0.1μs的指令处理时间在中等到较低的性能要求范围内开辟了全新的应用领域。
(2)浮点数运算
用此功能可以有效地实现更为复杂的算术运算
(3)方便用户的参数赋值
一个带标准用户接口的软件工具给所有模块进行参数赋值,这样就节省了入门和培训的费用。
(4)人机界面 (HMI)
方便的人机界面服务已经集成在 S7-300 操作系统内。因此人机对话的编程要求大大减少。SIMATIC人机界面 (HIM) 从 S7-300 中取得数据,S7-300 按用户指定的刷新速度传送这些数据。S7-300 操作系统自动地处理数据的传送。
(5)诊断功能
CPU 的智能化的诊断系统连续监控系统的功能是否正常、记录错误和特殊系统事件 (例如 :超时,模块更换,等等)。
(6)口令保护
多级口令保护可以使用户高度、有效地保护其技术机密,防止未经允许的复制和修改。
(7)操作方式选择开关
操作方式选择开关像钥匙一样可以拔出,当钥匙拔出时,就不能改变操作方式。这样就防止非法删除或改写用户程序。
5、SIMATIC S7-300 具有多种不同的通讯接口
(1)多种通讯处理器用来连接 AS-I 接口、和工业以太网总线系统
(2)串行通讯处理器用来连接点到点的通讯系统
(3)多点接口 (MPI) 集成在 CPU 中,用于同时连接编程器、PC 机、人机界面系统及其他SIMATIC S7/M7/C7 等自动化控制系统。
6、CPU支持下列通讯类型
(1)过程通讯
通过总线 (AS-I 或 PROFIBUS ) 对 I/O 模块周期寻址 (过程映象交换)。
(2)数据通讯
在自动控制系统之间或人机界面 (HMI) 和几个自动控制系统之间,数据通讯会周期地进行或被用户程序或功能块调用。
7、结构
DIN 标准导轨安装 只需简单地将模块钩在 DIN 标准的安装导轨上,转动到位,然后用螺栓锁紧。
(1)集成的背板总线
背板总线集成在模块上,模块通过总线连接器相连,总线连接器插在机壳的背后。
(2)更换模块简单并且不会弄错
更换模块时,只需松开安装螺钉。很简单地拔下已经接线的前连接器。在连接器上的编码防止将已接线的连接器插到其他的模块上。
(3)可靠的接线端子
对于信号模块可以使用螺钉型接线端子或弹簧型接线端子
(4)TOP 连接
采用一个带螺钉或夹紧连接的 1 至 3 线系统进行预接线。或者直接在信号模块上进行接线。
(5)确定的安装深度
所有的端子和连接器都在模块上的凹槽内,并有端盖保护,因此所有的模块都有相同的安装深度。
(6)没有槽位的,信号模块和通讯处理模块可以不受地插到任何一个槽上,系统自行组态。
3控制系统总体方案设计以及系统流程图
3.1 控制系统总体方案
作为一个定位控制系统,必须实现的目标是能满足一般控制系统要求的自动、手动的控制功能;能根据使用者发出的指令做出相应的动作;能够根据相应的情况进行自动校正。智能立体仓库由货架、堆垛机、自动控制装置等部分组成,有自动和手动两种操作方式。立体仓库之间为巷道,两侧为双行货架,堆垛机在巷道上、固定的天、地导轨之间运行。
本系统仅设置X和Y层的货架一行,另一行货架仅为虚拟行,以便安装和参观学习。堆垛机由固定在小车的门式框架、沿门式框架上导轨提升运动的升降台以及在升降台上做伸缩运动的货叉(机械手)等3部分组成,堆垛机设计成一个3自由度系统,货物放在升降台的货叉上能实现上下、左右和前后的运动[5]。
在确定了控制方式、PLC品牌以后就先来了解一下小车自动控制主要的工作过程。见图3.1
第三行
货位1 货位2 货位3
第二行
货位1 货位2 货位3
第一行
货位1 货位2 货位3
位置1 位置2 位置3
图3.1 小车工作过程图
先来介绍一下小车工作过程,水平方向的前后运动,由小车电动机进行驱动,小车电动机为220W的三相交流异步电动机。堆垛机垂直方向,由提升电机驱动升降台沿门式框架结构做升降运动,提升速度小于5m/min,提升电动机功率为220W的锥型转子单相交流异步电动机,具有断电抱闸制动的功能。固定在升降台上的机械手可带动货物一起做伸缩运动,伸缩量为左右各300mm,用于货物的存取操作。速度按机械手5m/min 的速度要求设定。
堆垛机的信息显示、作业地址及指令的输入方法有很多种。一种方法是采用发光二极管来显示各种信息(如故障诊断代码等),采用拨码开关来输入作业地址。此种方法原理简单,但是一旦原器件有损坏,如某个发光二极管损坏,显示的信息就不准;会直接影响拨码开关的可靠性,造成拨码开关拨的数值与PLC输入的数值不一致,堆垛机无法运行到目的地址。此种方法直接影响了堆垛机的可靠性,增大了堆垛机的后期保养、维修工作,因此目前此种方法已经很少有人采用。
本系统是采用键盘来输入作业地址、作业指令、用数字和符号来显示各种信息,输入的数值及指令马上可以显示出来,校对容易,对错一目了然。
PLC控制系统总体方案设计的硬件组成框图:
图3.2 硬件组成框图
编程器的显示器有二行共32位5×7的液晶点阵,可以显示数字、符号和字母;键盘按键有0~9、A~F等键可以使用,可以向小车输入作业地址(排、列和层)、作业指令(存、取最多二个作业)、操作方式(自动、手动)。将键盘的0~9键定义为数字键,A~F定义为功能键,在输入作业指令、作业地址时显示器能马上显示出来,实现了简单的人-机对话,保证了输入的作业地址和作业指令的准确性,提高了堆垛机运行的可靠性。
这个方法使堆垛机的小车每通过一个位置就记录一个数,一直移动到和预定位置号一致时停止移动。这个方法的特点是电路简单。另外随着电子技术的发展,出现了众多优秀的PLC,用PLC来控制堆垛机是相当灵活方便的,可以在PLC的软件中加保护,即堆垛机每走过一个货格的时间超过或少于正常的时间范围就报警。这样就可以有效地避免记数出错,本例即采用此方法。
智能立体仓库能实现货物的自动存取功能,这就要小车在作水平、升降台做垂直运动时,能准确记忆堆垛机的位置,即堆垛机的小车和升降台所在的列和层数,以实现货物的定位存取,使堆垛机先以较高的速度运行到接近目的地址的位置后将速度平稳降到较低的速度下工作,并在目的地址处准确制动停准,必要时可采取机械抱闸系统来辅助快速定位;堆垛机在工作过程中实时采集水平运行、货物升降、货叉伸缩三个方向的数据,并不断地与存放在软件控制数据块里的标准位置参数进行比较和控制决策,从而达到准确定位、快速存储货物、提高作业效率的目的,并与监控系统交换工作信息和库位状态信息等以实现系统的全面动态管理。
根据设计要求将整个定位控制的全过程分成多个阶段:小车前进到指定货架列的过程,将货物抬升到指定货架行的过程,机械手放置货物或者取得货物的过程,放置或者取得货物之后返回的过程。在各个阶段,对象的特性相对稳定,并且小车在前进和抬升货物的过程控制方面是基本一致的。
下面对各个阶段进行简单地介绍。
(1)前进的过程:在这个过程中,处于自动或者手动控制状态的小车由起始点出发,经过位置的校对,到达预先指定的货架的列。
(2)抬升货物的过程:在这个过程中,货物被抬升到预先指定的货架的行。
(3)存取货物的过程:在这个过程中,通过控制机械手臂的运动,使机械手到达预先指定的位置,然后根据实际的需要完成存放或者取得货物的操作。
(4)返回过程:在完成指定的操作之后,小车应该返回起始位置。
3.2小车定位控制工艺流程图
清楚了小车工作的逻辑关系后,可设计整体工艺流程图:
否
是
否
是
图3.3 工艺流程图
4小车定位控制PLC程序编制
在确定了控制方式并且掌握了小车控制系统流程图和STEP7 PLC编程软件的编程过程后,那么在本章里就可以很好的编制出小车定位控制系统各个部分流程的PLC梯形图程序。
4.1 PLC选型和资源配置
1、PLC选型
S7-300系列的PLC,由于其具有紧凑的设计、良好的扩展性、低廉的价格及强大的命令,使得S7-300系列可以近乎完美地满足小规模的控制要求。此外,丰富的 CPU类型和电压等级使其在解决工业自动化问题时,具有很强的适应性。
S7-300 CPU-312系统分别对小车电机用变频器、机械手电机步进驱动模块进行自动控制,并对检测信号及外部输入数据和控制信号进行处理,实现了对小车、机械手驱动、升降台提升及保护等控制的基本要求。表4.1所示是CPU-312的技术参数。
表4.1 CPU-312的技术参数
技术参数 说明 |
主存储器 16K字节/5K语句 装载存储器 通过MMC的K字节到8Mbyte字节 后备 通过MMC的所有模块 处理时间 ·位操作 <200ns 位存储器/定时器/计数器 ·位存储器 1k字节 ·S7定时器/ S7计数器 128/128 ·IEC定时器/ IEC计数器 有 模块的数量 ·可装载的块的数量(FC+FB+DB的总和) 1024 ·数量的范围 512FC,512FB,511DB 地址范围 ·I/O地址区 1024/1024字节 ·I/O过程映象 128/128字节 ·数字量通道() 256 ·模拟量通道() |
系统资源分配如表4.2所示。
表4.2 PLC I/O地址分配表
位号名 | 数据类型 | 说明 |
I0.0 | BOOL | START |
I0.1 | BOOL | STOP |
I0.2 | BOOL | 自动选择输入 |
I0.3 | BOOL | 手动选择输入 |
I0.4 | BOOL | 前后运动 |
I0.5 | BOOL | 向前运动 |
I0.6 | BOOL | 向后运动 |
I0.7 | BOOL | 升降运动 |
I1.0 | BOOL | 上升运动 |
I1.1 | BOOL | 下降运动 |
I1.2 | BOOL | 伸缩运动 |
I1.3 | BOOL | 前伸运动 |
I1.4 | BOOL | 后缩运动 |
I1.5 | BOOL | 抓取物品 |
I1.6 | BOOL | 放置物品 |
Q0.0 | BOOL | 小车向前运行 |
Q0.1 | BOOL | 小车停止向前运行 |
Q0.2 | BOOL | 小车向后运行 |
Q0.3 | BOOL | 小车停止向后运行 |
Q0.4 | BOOL | 机械手上升 |
Q0.5 | BOOL | 停止上升 |
Q0.6 | BOOL | 机械手下降 |
Q0.7 | BOOL | 停止下降 |
Q1.0 | BOOL | 机械手前伸 |
Q1.1 | BOOL | 停止前伸 |
Q1.2 | BOOL | 机械手后缩 |
Q1.3 | BOOL | 停止后缩 |
Q1.4 | BOOL | 放置物品 |
Q1.5 | BOOL | 抓取物品 |
M0.0 | BOOL | 运动状态 |
M10.0 | BOOL | 手、自动状态 |
M20.0 M20.1 M20.2 | BOOL BOOL BOOL | 小车前后运动使能 列到位标志 升降运动使能 |
位号名
M20.3 | 数据类型 BOOL | 说明 行到位标志 |
M20.4 | BOOL | 伸缩运动使能 |
M20.5 | BOOL | 物品到位标志 |
M20.6 | BOOL | |
M20.7 | BOOL | 程序运行方向标志 |
M21.1 | BOOL | 向前运行标志 |
M21.2 | BOOL | 向后运行标志 |
M21.3 | BOOL | 上升运行标志 |
M21.4 | BOOL | 下降运行标志 |
M21.5 | BOOL | 前伸运行标志 |
M21.6 | BOOL | 后缩运行标志 |
M21.7 | BOOL | 小车已经完成预定动作,返回 |
M22.0 | BOOL | 机械手放下货物标志 |
M22.1 | BOOL | 前后电机运行停止 |
M23.0 | BOOL | 机械手抓取货物标志 |
EM253位控模块是S7-300的特殊功能模块。能够产生移动控制所需的脉冲串,其组态信息存储在S7-300的V存储区中,用于步进电机和伺服电机的速度和位置的开环控制。
位控模块的特性如下:
(1)位控模块可提供单轴开环移动控制所需要的功能和性能;
(2)提供高速控制从每秒12个脉冲至每秒200 000个脉冲;
(3)支持急停S曲线或线形的加速减速功能;
(4)提供可组态的测量系统,既可以使用工程单位如英寸或厘米,也可以使用脉冲数;
(5)支持手动的位控方式;
(6)提供连续操作;
(7)提供4种不同的参考点寻找模式,每种模式都可对起始的寻找方向和最终的接近方向进行选择。
4.2 PLC程序设计
1、程序初始化
在程序的第一个扫描周期(SM0.1=1)设置重要的参数,然后运行,按下设备的“启动”(START)按钮开始运行,首先调用子程序检测位置信号,取得当前位置记数,然后将位置计数存放在变量MW12(行记数)、MW14(列记数)中,以便程序判断是否已经到达指定的位置。
程序初始化由网络1和网络2完成。(网络是PLC梯形图的一个基本单位,通常可以理解为一个程序行。)这是一段简单的初始化过程程序,S7-300 在读特殊内存SM0.1,只有在首次扫描循环时打开,所以这段初始化程序只在程序开始运行的时候执行一次。
这里执行的两条指令对变量MW12以及MW14进行初始化,这两个变量分别为小车运行中所经过的行计数以及列计数。
由于要涉及到小车完成任务的过程以及完成任务以后返回的过程,所以程序在执行的过程中必须要明确其运动方式和目的,是前进或后退运动、升降运动或者是机械手臂的伸缩运动等。因此,在以下的程序中,每一个运动过程都必须加上很明确的标志和条件来确定。其运动的方式和运动的目的,这样才不至于因为目的不明确而造成错误的判断以及错误的动作,造成存取货物的失败。
网络1的梯形图如图4.1所示
图4.1 网络1
网络2的梯形图如图4.2所示
图4.2 网络2
2、列向自动运行
下面是一段小车沿列向自动运行的程序。在这段程序中,首先要考虑的问题就是:小车处于前进或者是存放货物的过程,还是完成了预定任务返回的过程。但是由于PLC程序的执行特点是逐行扫描,所以仅仅判断小车是处于前进过程还是返回过程是不够的,因为在返回过程中,还有机械手臂从货架上缩回、机械手臂下降到初始位置等几个过程,所以说,必须要在程序中能够将这3种完全不同的运动区分开来。根据这种要求,在编写程序的时候加入了3个不同的BOOL类型的变量M20.1、M20.3以及M20.5,分别作为小车沿列向运行到位标志、机械手沿行向运行到位标志、机械手货架到位标志。当变量为ON时,表示已经完成了该项动作,为OFF时表明小车还没有完成对应的运动。
Q0.0是开关量输出,表示启动小车前进,小车开始向前运动。在这里,笔者认为自动控制不需要控制小车的向后运动。
当小车还处于取放货的动作未完成的阶段时,需要判断的是小车是否已经完成了列的定位,如果未完成列的定位(M20.1为OFF),那么启动小车前进的电机使小车向前运动。如果小车处于已经完成了取放货的动作时,那么判断小车是否已经完成了由货架上返回(伸缩机械手的运动)、是否已经完成了由指定行数退回初始行位置的运动(如果完成,小车应该是第一行以下的位置)。如果小车这两个过程都已经完成,那么将开始进行后退运动,Q0.2表示启动小车后退电机,使小车向后运行并返回初始位置。
M20.5是伸缩运动到位标志。为ON时,表示机械手已经到达指定位置,为OFF时表示还未到达指定位置。Q1.0 表示前伸运动的开关量输出,Q1.2表示后缩运动开关量输出。
网络3的梯形图如图4.3所示
图4.3 网络3
3、手动控制
下面一段程序是手动情况下对小车进行控制的程序代码。在开始按钮已经按下的情况下(START按钮的状态由变量M0.0来对应),M0.0为ON时表示已经开始运行,反之则为停滞状态。
网络4的梯形图如图4.4所示
图4.4 网络4
4、自动控制
下面是自动控制部分,由网络5实现。
Q0.4是开关量输出,表示启动小车机械手上升,机械手开始运动。在这里,我认为自动控制不需要控制小车机械手的下降运动。
当小车还处于取放货的动作未完成的阶段时,需要判断的是小车是否已经完成了列的定位,如果未完成列的定位(M20.3为OFF),那么启动小车机械手上升的电机,使机械手做上升运动。如果小车处于已经完成了取放货的动作,那么判断小车是否已经完成了由货架上的返回(伸缩机械手的运动),如果小车这个过程已经完成,那么将开始进行后退运动。Q0.6表示启动机械手下降电机,使机械手下降并返回初始位置。
网络5的梯形图如图4.5所示
图4.5 网络5
5、自动控制机械手臂伸缩运动
自动控制机械手臂伸缩部分由网络6完成。
前后、升降运动都进行完毕以后,机械手已经到达了指定的行数与列数,将进行伸缩运动来完成货物的存取。
网络6的梯形图如图4.6所示
图4.6 网络6
由于基本原理与前面的前后、升降运动相似,就不详细说明了,下面只对一些不同于前面两种运动的情况进行说明。
M20.5是伸缩运动到位标志。为ON时,表示机械手已经到达指定位置,为OFF时表示还未到达指定位置。Q1.0 表示前伸运动的开关量输出,Q1.2表示后缩运动开关量输出。由于机械手是以5m/min的速度运动,伸缩距离为30cm,定时器C37是以100ms为基本记时单位的,所以计算得到机械手可以到达预定位置的时间:
运动距离L=30cm
速度v=5m/min
运行时间t=L/v*0.01=0.06min=3.6s=3z600ms
因此选用100ms定时器C37进行计时,应该设置计时累加为36。
6、自动控制存取物品
自动存取物品的程序由网络7完成。
网络7的梯形图如图4.7所示
图4.7 网络7
结论
这次毕业设计使用PLC在自动控制系统中应用时,使用方便,适应性强,可以广泛应用于化工、热工、冶金、炼油以及造纸、建材等各种生产部门。选择SIMATIC S7-300系列PLC系统并应用在自动化立体仓库中已取得了很大的成功,SIMATIC S7-300为模块化无风扇的设计,坚固耐用,容易扩展、具有广泛的通讯能力,容易实现的分布式结构以及用户友好的操作使SIMATIC S7-300成为中、高档性能控制领域中首选的理想解决方案。结合堆垛机的工作特性,SIMATIC S7-300是既经济又方便的选择方案。
致谢
这次设计是在李琦老师的精心指导下完成的,李琦老师知识渊博,经验丰富,他经常利用休息时间对我们进行辅导,的渊博的知识和对工作认真负责的态度,以及对我们孜孜不倦的照顾让我十分感动。通过这次毕业设计,使我对自动控制理论有了很大的提高,对PLC也有了更深刻的认识,在经过大量的实验后我把理论同实践结合起来,对我将来的工作有很大的帮助。
从李琦老师那里我不仅学到了丰富的文化知识,更重要的是学到了很多做人的道理,导师和同学对我的支持和鼓励,永远是我不断前进的动力。在我即将离开学校,踏上社会的时刻,让我真心的说一声谢谢曾经帮助过我的老师和同学们,祝老师今后工作顺利,身体健康,家庭幸福、美满!
参考文献
[1] 周奇才,自动化仓库主要运行参数的优化确定[M].《上海铁道大学学报》,1999
[2] 李友善,自动控制原理与应用[M]. 北京:国防工业出版社,1998
[3] 蔡尚峰,自动控制理论应用技术和设计实例[M]. 北京:机械工业出版社,2003
[4] 王兆义,西门子公司的S7-300系列PLC开发导航 [M]. 北京:机械工业出版社,2005
[5] 胡学林、宋宏等编,电气控制与PLC应用[M]. 北京:冶金工业出版社,2001
[6] Analog Devices. Programmable Logic Controllers[J].Version 1.0Jan 2003.
附录A(外文文献)
INTRODUCTION OF PROGRAMMABLE CONTROLLERS
Programmable controllers systems have evolved to not only replace electromechanical devices, but to solve an ever-increasing array of control problems in both process and non-process industries. By all indications, these microprocessor- powered giants will continue to break new ground in the automated factory into the 1990s.
1 History
In the 1960s, electromechanical devices were the order of the day as far as control was concerned. These devices commonly known as relays, were being used by the thousands to control many sequential-type manufacturing processes and stand-alone machines. Many of these relays were in use in the transportation industry, more specifically, the automotive industry. These relays used hundreds of wires and their interconnections to effect a control solution. The performance of a relay was basically reliable-at least as a single device. But the common applications for relay panels called for 300 to 500 or more relays, and the reliability and maintenance issues associated with supporting these panels became a very great challenge. Cost became another issue, for in spite of the low cost of the relay itself, the installed cost of the panel could be quite high. The total cost including purchased parts, wiring, and installation labor, could range from$30~$50 per relay. To make matters worse, the constantly changing needs of a process called for recurring modifications of a control panel. With relays, this was a costly prospect, as it was accomplished by a major rewiring effort on the panel. In addition, these changes were sometimes poorly documented, causing a second-shift maintenance nightmare months later. In light of this, it was not uncommon to discard an entire control panel in favor of a new one with the appropriate components wired in a manner suited for the new process. Add to this the unpredictable, and potentially high, cost of maintaining these systems as on high-volume motor vehicle production lines, and it became clear that something was needed to improve the control process-to make it more reliable, easier to troubleshoot, and more adaptable to changing control needs.
Control engineering has evolved over time. In the past humans were the main method for controlling a system. More recently electricity has been used for control and early electrical control was based on relays. These relays allow power to be switched on and off without a mechanical switch. It is common to use relays to make simple logical control decisions. The development of low cost computer has brought the most recent revolution, the Programmable Logic Controller (PLC). The advent of the PLC began in the 1970s, and has become the most common choice for manufacturing controls.
PLCs have been gaining popularity on the factory floor and will probably remain predominant for some time to come. Most of this is because of the advantages they offer Cost effective for controlling complex systems. Flexible and can be reapplied to control other systems quickly and easily. Computational abilities allow more sophisticated control. Trouble shooting aids make programming easier and reduce downtime. Reliable components make these likely to operate for years before failure.
2Ladder Logic
Ladder logic is the main programming method used for PLCs. As mentioned before, ladder logic has been developed to mimic relay logic. The decision to use the relay logic diagrams was a strategic one. By selecting ladder logic as the main programming method, the amount of retraining needed for engineers and trades people was greatly reduced. Modern control systems still include relays, but these are rarely used for logic. A relay is a simple device that uses a magnetic field to control a switch, as pictured in FigureA1. When a voltage is applied to the input coil, the resulting current creates a magnetic field. The magnetic field pulls a metal switch (or reed) towards it and the contacts touch, closing the switch. The contact that closes when the coil is energized is called normally open. The normally closed contacts touch when the input coil is not energized. Relays are normally drawn in schematic form using a circle to represent the input coil. The output contacts are shown with two parallel lines. Normally open contacts are shown as two lines, and will be open (non-conducting) when the input is not energized. Normally closed contacts are shown with two lines with a diagonal line through them. When the input coil is not energized the normally closed contacts will be closed (conducting).
Figure A1 Simple Relay Layouts and Schematics
Relays are used to let one power source close a switch for another (often high current) power source, while keeping them isolated. An example of a relay in a simple control application is shown in FigureA2. In this system the first relay on the left is used as normally closed, and will allow current to flow until a voltage is applied to the input A. The second relay is normally open and will not allow current to flow until a voltage is applied to the input B. If current is flowing through the first two relays then current will flow through the coil in the third relay, and close the switch for output C. This circuit would normally be drawn in the ladder logic form. This can be read logically as C will be on if A is off and B is on.
The example in FigureA2 does not show the entire control system, but only the logic. When we consider a PLC there are inputs, outputs, and the logic. FigureA3 shows a more complete representation of the PLC. Here there are two inputs from push buttons. We can imagine the inputs as activating 24V DC relay coils in the PLC. This in turn drives an output relay that switches 115V AC that will turn on a light. Note, in actual PLCs inputs are never relays, but outputs are often relays. The ladder logic in the PLC is actually a computer program that the user can enter and change. Notice that both of the input -push buttons are
Figure A2 A Simple Relay Controller
normally open, but the ladder logic inside the PLC has one normally open contact, and one normally closed contact. Do not think that the ladder logic in the PLC needs to match the inputs or outputs. Many beginners will get caught trying to make the ladder logic match the input types.
Figure A3 A PLC Illustrated With Relays
Many relays also have multiple outputs (throws) and this allows an output relay to also be an input simultaneously. The circuit shown in FigureA4 is an example of this; it is called a seal in circuit. In this circuit the current can flow through either branch of the circuit, through the contacts labeled A or B. The input B will only be on when the output B is on. If B is off, and A is energized, then B will turn on. If B turns on then the input B will turn on, and keep output B on even if input A goes off. After B is turned on the output B will not turn off.
Figure A4 A Seal-in Circuit
3 Programming
The first PLCs were programmed with a technique that was based on relay logic wiring schematics. This eliminated the need to teach the electricians, technicians and engineers how to program a computer, but this method has stuck and it is the most common technique for programming PLCs today. An example of ladder logic can be seen in Figure 2.5. To interpret this diagram imagine that the power is on the vertical line on the left hand side, we cal in the hot rail. On the right hand side is the neutral rail. In the figure there are two rungs, and on each rung there are combinations of inputs (two vertical lines) and outputs (circles). If the inputs are opened or closed in the right combination the power can flow from the hot rail, through the inputs, to power the outputs, and finally to the neutral rail. An input can come from a sensor, switch, or any other type of sensor. An output will be some device outside the PLC that is switched on or off, such as lights or motors. In the top rung the contacts are normally open and normally closed. Which means if input A is on and input B is off, then power will flow through the output and activate it. Any other combination of input values will result in the output X being off.
The second rung of FigureA5 is more complex; there are actually multiple combinations of inputs that will result in the output Y turning on. In the left most part of the rung, power could flow through the top if C is off and D is on. Power could also (and simultaneously) flow through the bottom if both E and F are true. This would get power half way across the rung,
Figure A5 A Simple Ladder Logic Diagram
and then if G or H is true the power will be delivered to output Y. In later chapters we will examine how to interpret and construct these diagrams. There are other methods for programming PLCs. One of the earliest techniques involved mnemonic instructions. These instructions can be derived directly from the ladder logic diagrams and entered into the PLC through a simple programming terminal. An example of mnemonics is shown in Figure 2.6. In this example the instructions are read one line at a time from top to bottom. The first line 00000 has the instruction LDN (input load and not) forinput00001. This will examine the input to the PLC and if it is off it will remember a 1 (or true), if it is on it will remember a 0 (or false). The next line uses an LD (input load) statement to look at the input. If the input is off it remembers a 0, if the input is on it remembers a 1 (note: this is the reverse of the LD). The AND statement recalls the last two numbers remembered and if the are both true the result is a 1, otherwise the result number remembered. The process is repeated for lines 00003 and00004, but when these are done there are now three numbers remembered. The oldest number is from the AND, the newer numbers are from the two LD instructions. The AND in line 00005 combines the results from the last LD instructions and now there are two numbers remembered. The OR instruction takes the two numbers now remaining and if either one is a 1 the result is a 1, otherwise the result is a 0. This result replaces the two numbers, and there is now a single number there. The last instruction is the ST (store output) that will look at the last value stored and if it is 1, the output will be turned on, if it is 0 the output will be turned off.
Figure A6 An Example of a Mnemonic Program and Equivalent Ladder Logic
Programmable controllers play a fundamental role in factory automation efforts. There are several levels of evolution involved in factory automation advances in most plants. Most firms will be interested in modernizing existing facilities because the construction of entirely new facilities will not be economically feasible. In many instances, the first stage of automation involves small contiguous production areas, concentrating on improving productivity in that area alone. It is not uncommon to fund automation efforts through the savings of reduced in process inventory alone. These small contiguous areas have come to be called “islands of automation.” Programmable controllers are used here to operate machinery within the island, including stand-alone machine tools, dedicated machinery, and material handling equipment for both within the island and to bring items in and out of the area.
附录B(中文译文)
可编程控制器的介绍
可编程控制器系统不仅已经取代了机电装置,而且在过程和非过程工业中解决了不断出现的控制问题,通过这些显示表明功能强大的微处理器必将在20世纪90年代的自动化行业开创新的纪元。
1历史
在20世纪60年代,只要考虑到控制问题,机电装置就成了主要的问题。这些作为继电器而被人们熟知的装置,被用于控制连续制造的工艺过程和的机械设备。这些继电器大量的用于运输工业,尤其在汽车制造工业。这些继电器是通过上百的线路和它们之间的相互联系来形成一种控制方案。继电器作为一种单一的装置,它的性能基本上是可靠的。但是普通的继电器盘应用起来也需要300到500甚至更多的继电器,这样可靠性和与支持电路板正常工作有关的维修就成为了一项重大的挑战。成本成为另一个问题,尽管继电器本身的成本很低,但是电路板的安装成本很高。总的成本包括消费部分、线路和安装费用,每个继电器的费用能够达到30到50美元。工艺过程的变化要求对控制电路板进行反复的修改,这样就使情况变得更加严重。由于继电器的原因,这是一个高成本的预算,因为它需要通过在电路板上进行大量的重新接线工作来完成。此外,这些变化不能很好地得到保存,几个月后会引起对维护工作的破坏。考虑到这一点,报废整个控制电路板就不是一件不平常的事了,因为要用新的具有合适的组件线路的电路板来适应新的工艺过程。形势变得很明确,就是需要一些东西改善控制电路板来让它更加可靠,更容易进行故障查找,更加适应对控制需要的改变。
控制工程学已经随着时间发展起来。在过去手动是一个控制系统的主要方法。现在电已经被用在控制上,并且早期的电控是以继电器为基础。这些继电器在没有机械开关的情况下允许用动力来控制开关。使用继电器实现简单逻辑控制目的是很普通的。低成本计算机的发展已经带来了近年来最大的,可编程逻辑控制器。可编程控制器的出现开始于20世纪70年代,而且成为制造业控制最通常的选择。
可编程逻辑控制系统在工厂基层已经受到欢迎,并且将在接下来的一段时间里保持统治地位。因为他们能提供很多优点。对于复杂控制系统能有效利用成本。可变通性可以适用于控制其他系统,简单且快速。计算的能力允许很复杂的控制。故障查找辅助设备使编程更容易并且减少了停工期。在出现错误之前,可靠部件可以实施数十年之久。
2 梯形逻辑
对于PLC梯形逻辑是最主要的编程使用方法。例如以前,梯形逻辑已经被发展到模拟继电器逻辑,决定使用继电器逻辑图是一个明智的决策。通过选择梯形逻辑作为主要的编程方法;培训需要的工程师和贸易人数被大量减少。
现代控制系统还包括继电器,但是它们已经不在被用作逻辑控制。一个继电器是一个简单装置,它用磁场来控制一个开关。在图B1中当一个电压被送到输入环时,产生的电流形成一个磁场。这个磁场拉动跟它对应的一个金属开关。连接触点关闭开关。当这个环被激励时,闭合接触被打开。当输入环没有被激励时,常闭接触闭合。继电器以框图形式被绘画下来,用一个线圈来表示输入环,输出接点用两个平行线来显示。常开接触器用两条平行线表示,当输入没有被激励时将保持断开状态(不导通)。常闭接触器是用一条斜线穿过两条平行的直线表示,当输入环没有被激励时,常闭接触器将保持被关闭状态(导通)。
图B1 简单继电器设计和图表。
继电器是通过一个力量源关闭一个开关继而使另外一个力量源导通,同时保持它们是隔离的,在一个简单控制应用程序中。一个简单的继电器的例子在图B2中展示。在这个系统中,左边的第一个继电器是一个常闭触电,并且允许电流流动直到一个电压被施加在输入A上为止。第二个继电器是常开触电,并且不允许电流流过直到一个电压被施加在输入B上为止。如果电流正流过前两个继电器,那么电流将流过第三个继电器线圈,为了使输出C有电而关闭开关。这个电路将在梯形逻辑图中绘制出来。如果A打开并且B闭合,则C将闭合,这时可以被逻辑读出。
.
图B2 一个简单继电器控制器
图B2中的这个例子不能表示整个控制系统,仅仅是逻辑。当我们考虑一个PLC时,它有输入,输出和逻辑。图B3展示了一个比较复杂的PLC演示。从两个按钮知道这里有两个输入。在PLC中,我们可以设想用这两个输入来启动24V直流电继电器环。它轮流驱动一个输出继电器,用这个输出继电器来开关115V交流电。那样将开启一盏灯。需要注意的是,在一个实际PLCs中,输入不会是继电器,但是输出经常是继电器。PLC的梯形逻辑图实际上是一个计算机程序,使用者可以进入并改变程序。注意所有的输入按钮都是常开的,但是PLC内部的这个梯形逻辑图有一个常开触电和一个常闭触电。不要认为在PLC梯形逻辑中需要匹配输入或输出。许多初学者将尝试使梯形逻辑匹配于输入类型。
图B3 一个PLC使用继电器例子
许多继电器也有若干输出并且它也允许一个输出继电器同时也一个输入继电器。图B4是这个例子的电路展示,在电路中称之为封条,在这个电路中电流可以流过电路中任何一个支路,通过接触器标注A或B。当输出B是闭合时,输入B只能是闭合。如果B断开,并且A被激励,那么B将闭合。如果B闭合,那么输入B将闭合,即使输入A断开,仍然保持输出B闭合。在B闭合后,输出B将不会断开。
图B4电路图中的一个框图
3 编程
第一个PLCs是与以继电器逻辑配线图为基础的技术联系起来进行编程的。这样就消除了对教会电学家、技术人员和工程师规划一台计算机的需求,但是,这种方法已经落后了,对于现今的编程技术,PLCs有一个最常用的技术。图2.5可以看到一个梯形逻辑的例子。为了解释这个图表可以想象一个力量在左手边的垂直线上,我们称之为火线。在右手边是一个零线。在图中有两个横档,在每个横档上有输入和输出的组合。如果用正确的结合,输入可以被关闭或打开,能量从火线通过输入传送能量到输出,最终到达零线。一个输入可以来自一个传感器,开关或者任何其他类型传感器。一个输出将会是PLC外部某个可以被打开或关闭的设备,例如灯或电动机。在顶部的横梁上,接触器是常开和常闭的。这就意味着如果输入A闭合及输入B断开,那么能量将会流过输出并且激励它。任何其他的输入组合将会造成输出X的断路。
图B5 一个简单的逻辑梯形图
图B5的第二横杠比较复杂,有许多输入的复杂结合,这些输入导致了输出Y的闭合。在左边的横线部分,如果C断开D闭合能量可以流到顶部;如果E和F是通电状态,能量也可以流过底部。这样会使能量少走一半的路程,并且如果G和H也是通电的,能量将传送到输出Y。在以后的部分我们将分析怎样解释和构造这些框图。对于设计PLC编程,还可以有其他的方法。一种早期技术是关于助记忆性指令的。那些指令直接来源于梯形逻辑图,通过一个简单的终端编程设备进入PLC。记忆性指令的一个例子在图B6中展示出来。在这个例子中,指令被从上到下逐行读出,第一行00000存有指令LDN,对于输入00001。这将对PLC的输入进行检查,如果它断开,它将记住为1,如果它闭合,它记住为0。下一行使用LD陈述来看输入。如果输入是断开它会记录一个0,如果输入是闭合的它会记录一个1。AND语句记忆最后两个被记录的数字,如果两个都是真那么结果是1,否则结果为0。这个结果代替了被记录的两个数,因此就只有一个数记录下来。00003和00004行程序被重复,但当这些完成后,现在就有三个记录数,最初的数来自AND语句,较新的数来自两个LD指令,在00005行的AND语句包括了来自前一个LD指令的结果和最新的两个记录数。OR指令是对现在两个保持的数进行操作,如果其中有一个是1结果就为1 ,否则结果就为0。这个结果代替两个数,因此结果就是唯一的一个数了。最后的ST指令是看最后被储存的结果,如果是1,输出将被闭合,如果是0,输出将断开。
图B6 一个记忆性编程例子和等效梯形逻辑
可编程序控制器在工厂的自动化进程中起到了基础作用。工厂大部分车间的自动化进程有不同的水平。大多数企业将对现代现存的设备感兴趣,因为过去的设备结构并不是经济可行的。在大多数情况下,自动化进程的第一个阶段涉及到小的邻近的生产领域和在这个领域中集中精力提高生产效率。通过对减少过程中投入量的节省来促进自动化并不是什么特别的事。这些小的临近区域被叫做“自动控制领域”。可编程序控制器在自动控制领域中被用于运行机械设备,包括的机械工具、专用的机械设备,以及领域内和能把项目引到领域外的材料加工设备。