基于AT89C51的微型可编程控制器

发布者:keiss2018最新更新时间:2014-03-13 来源: elecfans关键字:AT89C51  可编程控制器  PLC 手机看文章 扫描二维码
随时随地手机看文章

  用单片机构成的PLC,实际上就是一个单片机测控系统。用这样一个程序控制的计算机系统去执行继电控制的梯形图程序,由于继电控制梯形图中各被控电器之间是并行关系,而计算机程序控制中,各被控电器之间在时间上是串行关系,二者显然不协调。若简单地像一般单片机测控系统一样,对梯形图各程序行依次实时采集输入端子状态,进行处理后实时输出,是达不到控制目的的。为此,必须采用一次性采集全部输入端子状态,并将其存入输入缓冲区。然后,按梯形图程序行的逻辑关系,从输入缓冲区读取相应输入端子状态,处理后将待输出的结果存入输出缓冲区。最后,待梯形图程序行全部执行完毕,一次性将输出缓冲区的值输出到相应的输出端子,从而完成一个程序执行周期。如此往复,自动进行下一轮的采集输入端子状态……。这种工作方式即称为扫描方式,它将串行程序工作和电器并行工作两种关系协调了起来。另外,单片机执行一条指令的时间是μs级,执行一个扫描周期的时间为几ms乃至几十ms。相对于电器的动作时间而言,扫描周期是短暂的,可以认为在一个扫描周期内输入端子的状态是不变的,而对其状态变化的采集和处理也是实时的,从而满足了实时控制的要求。

  系统硬件配置以AT89C51(以下简称51)单片机为核心,如图1所示。该单片机有4 KB闪存,不必扩展程序存储器,其4个I/O口共32个I/O引脚,都可供用户使用,其中P0.7~0.0,P2.4~2.0共13个脚经光耦隔离后连到相应的输入端子X07~X00,X14~X10。可以用行程开关、液位开关、霍耳开关和手动按钮等进行输入。开关接通时,相应引脚为"0",取反后存入输入缓冲区。

  P1.7~1.0共8个引脚用于输出控制:P1.i为"0"时,相应的PNP管导通,继电器Ji线圈通电,其触点Y5i接通,可驱动220 V/3 A的负载。

  为了与PC机进行通信,系统扩展了RS-232C接口电路。51单片机的RXD和TXD信号经RS-232C电平变换后接至9芯插座。由此可与PC机进行串行通信。一方面,在编程状态时,可接收PC机上梯形图汇编程序编译结果的OBJ指令代码,并存入程序存储器;另一方面,在运行状态时,可将I/O口的状态和处理结果实时地发送给上位机。

  程序存储器选用有SPI接口的X25045芯片。这是带可编程看门狗和电源监控功能的E2PROM,有512字节,每字节可擦写10万次,数据可保存100年。上电时自动提供200 ms高电平复位脉冲;有三种可编程看门狗周期;电源欠压,VCC降到转折点时,自动提供复位脉冲。E2PROM采用三线总线的串行外设接口SPI,既节省了I/O口线和电路板空间,又降低了系统成本。因此,该芯片是性价比极好的组合芯片。

  软件设计分为PC机梯形图汇编程序编译软件和51单片机软件两部分。前者用IBM-PC汇编语言编写,我们称之为PLC编译软件。本机中我们自己设计了一套TD型PLC的梯形图汇编语言指令系统,有LD/LDI、AN/ANI、OR/ORI、TM/TMI、CN/CNI、MA/MAI、OUT、JP/JE和END等16条基本指令和X00~07、X10~14、Y00~07、CN0~1、TM00~07、MA00~07、10~17等器件。用它们来描述继电器梯形图,即设计梯形图汇编程序。用全屏幕编辑软件将其输入到PC机,即建立了源程序文件。然后用PLC编译软件将其编译成PLC目标程序文件(OBJ文件),并经串行通信口发送到单片机,由单片机将其写入E2PROM。[page]

  51单片机软件由编程软件和运行软件组成。编程软件主要有串行通信和写E2PROM两个模块。此时,须将面版上的手动开关设置P2.7="0",单片机即处于编程状态。当P2.7="1"时,单片机即处于运行状态。运行状态的程序主要有:

  (1)输入端子采集模块

  该模块两次采集P0口和P1口状态,结果全同时为有效,即将其存入输入缓冲区,否则重新采集。用软件滤波的方法,提高了抗干扰能力。

  (2)指令分析模块

  该模块从000H地址开始,依次读取E2PROM中的字节内容,先读出操作码,对其分析后转向相应的处理程序;接着读操作数,供处理程序操作,从而完成一条梯形图汇编指令的执行。然后再读取下一条指令的操作码……。遇到OUT指令时,将待输出的数据存入相应的输出缓冲区。

  (3)输出模块

  当CPU从E2PROM中读到END指令的二进制代码时,表示一次扫描周期结束,即将输出缓冲区的内容一次性输出到P1口,从而完成输出端子的刷新。

  该PLC的应用可以用水塔水位控制的例子来说明。

  图2(a)是硬件接线图,SB1/SB2是启动/停止按钮;SAC是水池液位开关:水浸到时接通,无水时断开;SAH、SAL分别是水塔的高低液位开关;M是水泵电机。

  图2(b)是继电器梯形图,图2(c)是继电器汇编程序,即TD型PLC源程序。其中y50是PLC输出端子,我们将它的软件触点y50作为水位上升或下降的标志:y50="0",表示电机已停,水位下降,此时SAL虽已接通,但电机不动作;y50="1",表示电机正在抽水,水位上升,此时SAL接通,电机通电,继续抽水,直到高水位。

  总结:系统完成了预期设想的功能目标。基于AT89C51的微型可编程控制器有其自己的优势,广泛用于生产生活中。

关键字:AT89C51  可编程控制器  PLC 引用地址:基于AT89C51的微型可编程控制器

上一篇:PLC实现两线连接型数显仪表系统设计
下一篇:单片机8031的自动计量进料系统设计

推荐阅读最新更新时间:2024-03-16 13:37

串行EEPROM X24128与AT89C51的接口及编程
X24128是美国XICor公司生产的CMOS串行通信EEPROM。内部结构为16k字节8位阵列。X24182在2线总线上可同时并联8片,并具有软件和硬件写保护功能。片内最高地址单元(FFFFH)为一写保护寄存器。通过写入不同数据,可进行软件写保护、块锁定选择保护和编程硬件写保护三种不同形式的写保护。在2线总线上串行通信的最高时钟频率为400kHz。另外还具有输入、输出消噪声和抑制功能。而且功耗低,它的读状态工作电流小于1mA, 写状态工作电流小于3mA,静态电流小于1uA。工作电压有1.8V-3.6V、2.5V-5.5V和4.5V-5.5V三种类型供选择。写方式有按字节写和按页写两种形式,每页为32字节。 1.管脚说明 X2
[单片机]
串行EEPROM X24128与<font color='red'>AT89C51</font>的接口及编程
基于S7-1200PLC的各种应用的解决方案
S7-1200PLC主要面向简单而高精度的自动化任务,它的设计紧凑、组态灵活且具有功能强大的指令集,S7-1200PLC这些特点的组合使它成为控制各种应用的解决方案 CPU将微处理器、集成电源、输入电路和输出电路组合到一个设计紧凑的外壳中以形成功能强大的PLC。 CPU根据用户程序逻辑监视输入并更改输出,用户程序可以包含布尔逻辑、计数、定时、复杂数学运算以及与其他智能设备的通信。 S7-1200的硬件——数字量I/O 可以选用8点、16点和32点的输入量输入/输出模块,来满足不同的控制需要。 在工业控制中,某些输入量(温度、压力、流量、转速等)是模拟量,某些执行机构(电动调节阀和变频器等)要求PLC输出模
[嵌入式]
基于S7-1200<font color='red'>PLC</font>的各种应用的解决方案
可编程控制器与工业计算机通讯的应用
引言 可编程控制器(plc)由于其结构紧凑、可靠性高、编程简单、指令强大、灵活性强、能适用于比较恶劣环境等诸多优点,现已在工业控制领域得到广泛应用。现普遍采用触摸屏加plc的方法来监控设备,但触摸屏视角窄,不适应恶劣环境,且数据存储容量有限,不易实现大规模网络互联。因此我们采用plc与计算机通讯的方式实现实时监控,克服了触摸屏的缺点。 2 s7-200 cpu自由口通讯方式的应用 世界知名品牌的plc很多,如西门子、欧姆龙、松下、三菱等等,本人仅以西门子s7-200小型可编程控制器的cpu22×系列为例,介绍plc在计算机网络中与计算机通讯的功能。 s7-200 cpu支持多样的通讯功能,根据所使用的s7
[工业控制]
<font color='red'>可编程控制器</font>与工业计算机通讯的应用
PC和PLC自由口通信在数码显示中的应用
1 引言   随着可编程控制器(plc)技术的迅速发展,plc以其通用性强、可靠性高、抗干扰能力强、 控制系统 结构简单、编程方便及易于使用等优点,在我国各个厂业控制领域中得到了越来越广泛的应用,在计算机控制系统中占有着重要的地位,为实现工业生产过程 自动化 、改善控制系统品质、提高企业经济效益起着积极的作用。   西门子公司生产的s7-200系列小型plc,以其功能强大,使用稳定且性价比高而在中国市场上占有很重要的地位,深得用户的喜爱。其内部集成的通信接口为用户提供了强大的通信功能,根据不同的协议通过接口使得plc可与不同的设备进行通信并组成网络,实现数据传送及控制等功能。s7-200系列plc支持多种通信协议,其中包括
[嵌入式]
基于PLC的炉温多级模糊控制的优化与实现
    摘要: 介绍了多级模糊控制原理,并针对其特点引入偏移量函数进行了算法优化,详述了该优化算法在PLC炉温控制系统中的实现并对优化效果进行了比较。该优化算法在实际应用中取得了很好的控制效果。     关键词: PLC 模糊控制 优化 随着现代化生产对温度控制品质要求的日益提高,一些控制精度差且难以管理的老式电阻炉必须用新技术进行改造,其中控制算法研究处于至关重要的地位。本文主要介绍基于 PLC的新的控制策略原理与实现,系统控制算法采用变化例因子与量化因子的多级模糊控制,并根据经验引入偏移量函数。该方法在PLC多段电阻炉系统中反复运行证明炉温上升快,控制温度高,达到了很好的控制效果。
[工业控制]
PLC控制系统的基本设计步骤
设计plc应用系统时,首先是进行PLC应用系统的功能设计,即根据被控对象的功能和工艺要求,明确系统必须要做的工作和因此必备的条件。然后是进行PLC应用系统的功能分析,即通过分析系统功能,提出PLC控制系统的结构形式,控制信号的种类、数量,系统的规模、布局。最后根据系统分析的结果,具体的确定PLC的机型和系统的具体配置。 PLC控制系统设计可以按以下步骤进行。 1.熟悉被控对象,制定控制方案分析被控对象的工艺过程及工作特点,了解被控对象机、电、液之间的配合,确定被控对象对PLC控制系统的控制要求。 2.确定I/O设备根据系统的控制要求,确定用户所需的输入(如按钮、行程开关、选择开关等)和输出设备(如接触器、电磁阀、信号指示灯等)
[嵌入式]
可编程控制器的组成
   1、可编程控制器的基本结构   可编程控制器的主要由CPU模块、输入模块、输出模块和编程器组成(见图1) 图1  plc 控制系统示意图 (1)CPU模块   CPU模块主要由微处理器(CPU芯片)和存储器组成,在可编程控制器系统中,CPU模块相当于人的大脑和心脏,它不断地采集输入信号,执行用户程序,刷新系统的输。存储器用来储存程序和数据。 (2)I/O模块   输入(Input)模块和输出(Output)模块简称为I/O模块,它们是系统的眼、耳、手、脚,是联系外部现场和CPU模块的桥梁。输入模块用接收和采集输入信号,输入信号有两类:一类是从按钮、选择开关、数字拔码开关、限位开关、接近开关、光电开关、压力继电器等开关量输入
[嵌入式]
PLC容量的选择步骤与原则
PLC的容量包括I/O点数和用户存储容量两个方面。  (一)I/O点数的选择     PLC平均的I/O点的价格还比较高,因此应该合理选用PLC的I/O点的数量,在满足控制要求的前提下力争使用的I/O点最少,但必须留有一定的裕量。     通常I/O点数是根据被控对象的输入、输出信号的实际需要,再加上10%~15%的裕量来确定。  (二) 存储容量的选择     用户程序所需的存储容量大小不仅与PLC系统的功能有关,而且还与功能实现的方法、程序编写水平有关。一个有经验的程序员和一个初学者,在完成同一复杂功能时,其程序量可能相差25%之多,所以对于初学者应该在存储容量估算时多留裕量。     PLC的I/O点数的多
[嵌入式]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved