PLC+单片机
- 格式:pdf
- 大小:2.31 MB
- 文档页数:82
一、PLC与单片机的本质区别想搞清楚PLC与单片机有什么不同,在网上搜了下有许多各种各样的答案,容易看晕。
综合起来分析,我认为PLC与单片机的差别有以下几点:1.PLC是应用单片机构成的比较成熟的控制系统,是已经调试成熟稳定的单片机应用系统的产品。
有较强的通用性。
2.而单片机可以构成各种各样的应用系统,使用范围更广。
单就“单片机”而言,它只是一种集成电路,还必须与其它元器件及软件构成系统才能应用。
3.从工程的使用来看,对单项工程或重复数极少的项目,采用PLC快捷方便,成功率高,可靠性好,但成本较高。
4.对于量大的配套项目,采用单片机系统具有成本低、效益高的优点,但这要有相当的研发力量和行业经验才能使系统稳定。
从本质上说,PLC其实就是一套已经做好的单片机(单片机范围很广的)系统,核心是单片机。
(打个比方,就好像衣服的核心是布料,衣服买来就能穿,布料呢?)但PLC也有其特点:PLC广泛使用梯形图代替计算机语言,对编程有一定的优势。
你可以把梯形图理解成是与汇编等计算器语言一样,是一种编程语言,只是使用范围不同!而且通常做法是由PLC软件把你的梯形图转换成C或汇编语言(由PLC所使用的CPU决定),然后利用汇编或C编译系统编译成机器码!PLC运行的只是机器码而已.梯形图只是让使用者更加容易使用而已.当然也可以用单片机直接开发控制系统,但是对开发者要求相当高(不是一般水平可以胜任的),开发周期长,成本高(对于一些大型一点的体统你需要做实验,印刷电路板就需要一笔相当的费用,你可以说你用仿真器,用实验板来开发,但是我要告诉你,那样做你只是验证了硬件与软件的可行性,并不代表可以用在工业控制系统,因为工业控制系统对抗干扰的要求非常高,稳定第一,而不是性能第一,所以你的电路板设计必须不断实验,改进).当你解决了上述问题,你就发现你已经做了一台PLC了,当然如果需要别人能容易使用,你还需要一套使用软件,这样你可以不需要把你的电路告诉别人。
浅谈PLC和单片机在应用中的区别PLC(Programmable Logic Controller)和单片机是工业自动化领域常用的控制设备。
它们在工业生产和自动化领域起着重要作用,但在应用中有着不同的特点和适用范围。
本文将从不同的角度分别对PLC和单片机进行介绍,并比较它们在应用中的区别。
一、PLC的特点和应用PLC是一种专门用于工业控制的计算机,它具有高可靠性、抗干扰能力强、操作稳定等特点。
PLC的主要功能是对生产设备进行逻辑控制、运算控制、顺序控制、定时控制、计数控制等。
它广泛应用于自动化生产线、机械设备、化工厂、电力系统、水处理系统等各个领域。
PLC的编程采用梯形图语言,通常由工程师或技术人员进行编程。
在实际应用中,PLC 可以连接各种传感器、执行器和报警装置,通过输入输出模块来实现对生产过程的监控和控制。
PLC的可编程性强,可以根据实际需要进行灵活的编程和配置。
单片机是一种集成了微处理器、存储器和输入输出接口的微型计算机,通常用于控制、测量、计时和通信等方面的应用。
单片机的特点是体积小、功耗低、成本低,适合于一些对性能要求不高但需要大量部署的应用场景。
单片机的编程通常采用汇编语言或C语言,编程难度相对较大。
单片机可以通过外部电路连接各种传感器、执行器和通信模块,实现对各种设备的控制和监测。
单片机广泛应用于家用电器、汽车电子、医疗器械、智能家居和无人机等领域。
1. 硬件特点:PLC的硬件通常由CPU、输入输出模块、通信模块、电源模块等组成,功能丰富且稳定。
单片机则只具有基本的计算和控制功能,需要外接外部模块才能完成更复杂的任务。
2. 编程语言:PLC的编程采用梯形图语言,易于理解和维护,适合工程师和技术人员使用。
而单片机的编程通常采用汇编语言或C语言,编程难度较大,需要专业的编程人员进行编写和维护。
3. 应用范围:PLC适用于对稳定性和可靠性要求较高的自动化生产线、机械设备等工业场景。
而单片机适用于一些对性能要求不高但需要大量部署的应用场景,比如家用电器、汽车电子、智能家居等领域。
PLC单片机的控制原理及应用引言PLC(可编程逻辑控制器)单片机是一种广泛应用于自动化控制领域的电子设备。
它具有高可靠性、强大的功能和灵活的编程能力,被广泛用于工业、交通、农业等各个领域的控制系统中。
本文将介绍PLC单片机的控制原理及其应用。
控制原理PLC单片机的控制原理基于三个主要组成部分:输入、处理和输出。
它通过输入信号进行采集,经过处理逻辑和编程算法,产生相应的输出信号控制执行器。
下面是PLC单片机的控制原理的详细解释:1.输入:PLC单片机通过输入模块采集外部信号,包括开关状态、传感器信号等。
它可以接收数字信号、模拟信号和通信信号等。
2.处理:PLC单片机的中央处理器(CPU)负责对输入信号进行处理和逻辑运算。
它通常包括一个基于特定编程语言的编程工具,可以用来设计和编辑控制程序。
3.输出:PLC单片机通过输出模块控制输出设备,如电机、电磁阀、灯光等。
它将经过处理的信号转化为相应的控制信号,实现对执行器的控制。
应用领域PLC单片机广泛应用于各个领域的自动化控制系统中。
下面列出了几个常见的应用领域及其具体应用:工业控制•生产线控制:PLC单片机被广泛用于工业生产线的控制系统中。
它可以精确控制机械设备的运行,实现自动化的生产流程。
•仪器仪表控制:PLC单片机可以实现对仪器仪表的控制和监测,如温度控制、压力控制等。
交通系统•交通信号控制:PLC单片机可以用于交通信号的控制,实现道路交通的规划和管理。
•铁路系统控制:PLC单片机可以用于铁路信号系统的控制和运行调度。
农业领域•温室控制:PLC单片机可以控制温室内的温度、湿度等参数,实现对植物生长环境的精确控制。
•农田灌溉系统:PLC单片机可以实现农田灌溉系统的自动化控制,根据土壤湿度等参数自动调节灌溉设备。
建筑领域•智能家居控制:PLC单片机可以用于智能家居系统的控制,如照明控制、安防控制等。
•空调系统控制:PLC单片机可以实现对建筑物空调系统的精确控制,提高能源利用效率。
PLC和单片机在工业控制中有效应用的区别和联系分析在工业控制领域,PLC(Programmable Logic Controller)和单片机是两种常见的控制设备。
它们在工业生产中起着非常重要的作用,能够帮助企业实现自动化生产、提高生产效率和产品质量。
本文将针对PLC和单片机在工业控制中的有效应用进行分析,从它们的区别、联系和各自的优势来深入探讨。
一、PLC和单片机的区别1. 工作原理PLC是一种专门用于工业控制的可编程逻辑控制器,其工作原理是通过执行用户编写的程序来控制工业生产中的各种设备和工艺流程。
PLC具有较强的抗干扰能力和稳定性,适用于复杂的工业控制系统。
而单片机是一种集成了CPU、存储器、IO口和定时器等功能的微型计算机芯片,它需要外围电路的支持才能完成控制任务。
2. 程序设计PLC的程序设计通常采用专门的PLC编程软件进行,用户可以通过拖拽元件和连接线的方式来编写控制程序,便于理解和修改。
而单片机的程序设计需要用户自行编写代码,并且需要有一定的编程知识和技能。
3. 可编程性PLC具有较强的可编程性,可以根据具体的工业控制需求进行灵活的编程和调整。
而单片机的可编程性相对较弱,需要用户根据硬件和软件的特性来编写程序,并且修改和调整相对困难。
4. 扩展性PLC具有较强的扩展性,可以通过扩展模块来实现更多的IO口、通信接口和功能模块。
单片机的扩展性依赖于外围电路的支持,需要用户自行设计和扩展。
尽管PLC和单片机在工作原理、程序设计、可编程性和扩展性等方面存在较大的区别,但它们在工业控制中的应用有着一定的联系和互补性。
1. 灵活性PLC在工业控制中主要用于较为复杂和稳定的控制系统,能够实现大规模工业自动化生产。
而单片机则更适用于一些小型、简单的控制系统,能够满足一些特定的控制需求。
在工业控制中,PLC和单片机可以根据具体的控制任务和系统复杂程度进行灵活的选择和应用。
2. 互补性在一些复杂的工业控制系统中,PLC和单片机可以进行互补组合,形成一个完整的控制系统。
PLC与单片机之间的异同1、单片计算机是将电子计算机的基本环节,如:CPU(又称中央处理器,主要由运算器,控制器组成)、存储器、总线、输入输出接口等,采用集成电路技术集成在一片硅基片上。
由于单片计算机体积很小(仅手指般大小),功能强(具有一个简单计算机的功能),因而广泛用于电子设备中作控制器之用。
目前,大到导弹火箭国防尖端武器,小至电视机微波炉等现代家用电器内中都毫无例外地运用单片计算机作为控制器。
因此,从控制的观点,我们也常称它为单片控制器。
单片微控制器的工作离不开软件,即固化在存储器中的已设计好的程序。
所有带单片微控制器的电子设备,它的工作原理当然与具体设备有关。
但它的最基本的原理是一样的,即:1)从输入接口接收来自外界的信息存入存储器。
这些信息主要包括二部分:来自诸如温度压力等传感器的信息;来自人工干预的一些手动信息,如开关按钮等操作。
2)单片微控制器中的CPU根椐程序对输入的数椐进行高速运算处理。
3)将运算处理的结果通过输出接口送去控制执行机构,如继电器、电机、灯泡等。
当前这个过程不断重复着,即系统中的微电脑不断监视着各种信息,并及时作出不同的处理使系统正常运行。
2、PLC目前大量地用单片机制成,可以说:PLC是单片机在继电控制系统中的一种应用。
PLC所采用的梯形图类似于继电器线路图,易于为广大电气工程技术人员所接受。
另外,个人感觉PLC更加适合于工业恶劣环境下使用并且比较稳定,而单片机的工作环境要高一些。
二、实用性角度:单片机便宜,PLC贵。
单片机可以使用汇编语言,C语言编写程序,需要一定的基础。
而PLC则有专门开发的编程语言,例如梯形图编写,比较直观易学。
单片机需要自己焊接模块,接头之类的必要的焊接工艺,需要一定的理论基础。
而PLC有标准的模块化整体接头,便于使用者选型、添加模块等等。
三、单片机就象一本空白的书,你想写什么就写什么;PLC就象空白的书上画好了表格,你要什么就填什么。
四、单片机是一种集成电路芯片,单片机系统一般是根据具体的控制要求,通过专业人员设计,以印刷电路板(PCB)为基础,将单片机和其它芯片、器件等组合在一起,设计并固化相应的软件,最终构成的控制系统。
PLC单片机的原理及应用领域1. 定义和原理PLC (Programmable Logic Controller) 即可编程逻辑控制器,是一种数字化的电气控制设备,用于控制自动化设备和流程。
PLC单片机是PLC的核心组成部分,负责处理输入和输出信号,执行程序和逻辑运算。
1.1 工作原理PLC单片机的工作原理是基于循环扫描的概念。
其主要组成部分包括输入模块、输出模块、中央处理器、存储器和编程器。
•输入模块接收来自传感器、按钮等外部设备的输入信号,将其转换成数字信号,传递给中央处理器处理。
•中央处理器根据事先编写的程序进行逻辑运算和决策,并控制输出模块输出适当的信号。
•输出模块将数字信号转换为经过放大或电气隔离后的输出信号,输出给执行机构、报警器等外部设备。
整个过程通过循环扫描的方式进行,不断更新输入和输出状态,实现对自动化设备和流程的控制。
1.2 PLC单片机的特点•可编程性:PLC单片机的程序可以根据需要进行编写和修改,灵活性高。
•可靠性:PLC单片机采用可靠的硬件和软件设计,具有较强的抗干扰能力和稳定性。
•易维护性:PLC单片机的模块化设计使维护更加简单和高效。
•灵活性:PLC单片机支持多种输入输出接口和通信协议,适应不同的应用场景。
2. 应用领域PLC单片机广泛应用于工业控制领域,以下列举了几个具体的应用领域:2.1 自动化生产线PLC单片机能够对生产线进行精确的控制和调度,实现自动化生产。
其主要功能包括:•控制输送带、机械臂等设备的启停、速度调节;•监测生产设备的状态,及时报警并切换到备用设备;•收集生产数据,实时监控生产状况,提供决策支持。
2.2 建筑物自动化PLC单片机可用于建筑物的自动化控制,实现能耗管理、安全控制和便利性等功能,包括:•灯光和空调的自动控制,根据环境和用户需求进行调节;•门禁系统的控制和管理,确保安全性;•智能家居系统的控制,提供舒适和便利的居住体验。
2.3 交通系统PLC单片机在交通系统中扮演着重要的角色,包括:•信号灯的控制和调度,根据交通流量进行智能调节;•铁路道口和地铁门控制,确保交通安全;•路况监测和交通数据收集,提供交通管理决策依据。
PLC单片机的原理及应用概述PLC(Programmable Logic Controller,可编程逻辑控制器)是一种专门用于工业自动化控制的电气设备。
它采用单片机作为核心控制器,通过编程来实现对各种工业设备的控制和监控。
本文将介绍PLC单片机的原理及应用。
PLC单片机的原理PLC单片机的原理主要包括以下几个方面:1.硬件结构:PLC单片机通常由中央处理器、存储器、输入/输出模块、通信模块等组成。
中央处理器是PLC单片机的核心,负责指令的执行和数据的处理;存储器用于存储程序和数据;输入/输出模块用于与外界设备进行数据交互;通信模块用于实现PLC单片机之间或与外部计算机的通信。
2.编程软件:PLC单片机的编程软件通常采用基于图形化的编程语言,如梯形图、功能块图等。
程序员通过编程软件可以编写控制逻辑,包括输入、输出的条件判断、运算、计时、计数等。
3.工作原理:PLC单片机根据编写的控制逻辑程序,通过输入模块获取外部设备的状态信息,经过程序处理后,通过输出模块控制外部设备的动作。
PLC单片机的工作流程一般为:输入采集 -> 程序执行 -> 输出控制。
PLC单片机的应用PLC单片机广泛应用于各行各业的自动化控制系统中,主要包括以下几个领域:1.工业生产线控制:PLC单片机可以用于控制各种生产设备,如机械臂、输送带、机床等。
通过编写控制逻辑,可以实现生产过程的自动化,提高生产效率和质量。
2.家庭自动化:PLC单片机可以用于家庭自动化控制系统的控制中心。
通过与各种设备的连接,如照明设备、空调、电视等,可以实现智能家居的控制,提高居住的舒适度和便利性。
3.交通信号控制:PLC单片机可以用于交通信号的控制。
通过连接传感器、计时器等设备,实现交通信号的智能控制,提高交通流量的效率,减少交通事故。
4.能源管理:PLC单片机可以用于能源管理系统的监控与控制。
通过与能源设备的连接,如发电机、变压器等,可以实现对能源的监测和优化控制,提高能源利用效率和减少能源浪费。
PLC控制系统与单片机控制系统差别与本质区别及优缺点PLC(Programmable Logic Controller)控制系统和单片机控制系统是常见的自动化控制系统。
它们在原理、应用、优缺点等方面存在一定的差别和本质区别。
首先,PLC控制系统主要用于工业自动化领域,而单片机控制系统主要用于小型设备和家电等应用中。
PLC控制系统具有高可靠性、稳定性和灵活性,适用于复杂的工控环境;而单片机控制系统成本较低、易于开发和控制,适用于一些简单的控制任务。
PLC控制系统的本质区别在于其以可编程逻辑单元(PLC)为核心,采用了模块化设计并具备丰富的输入、输出接口,可以实现多种信号的输入和输出,并且具备多种通讯接口,方便与其他设备进行联网;而单片机控制系统的本质是以单片机芯片为核心,通过编程实现具体的控制功能。
其次,PLC控制系统具有以下优点:1.可编程性强:PLC可通过编程灵活地实现不同的控制逻辑和功能。
2.大容量存储:PLC系统具有较大的存储空间,可以存储大量的程序和数据。
3.稳定性高:PLC系统具有良好的抗干扰和抗干扰能力,适用于恶劣的工业环境。
4.支持多种通讯接口:PLC系统可以通过各种通讯接口实现与其他设备的联网。
5.易于维护和升级:PLC系统采用模块化设计,故障的维修和系统的升级较为方便。
而单片机控制系统具有以下优点:1.成本较低:单片机芯片与PLC相比成本较低,适用于一些对成本敏感的场景。
2.硬件接口丰富:单片机具有丰富的外设接口,方便与各种传感器和执行器进行连接。
3.控制精度高:单片机具备较高的运算速度和灵活的控制算法,可以实现高精度控制。
4.程序可视化:单片机的开发环境通常采用可视化开发工具,方便开发人员进行调试和维护。
然而1.性能限制:PLC系统的处理能力和运算速度相对较低,对于一些复杂的控制算法和实时性要求高的应用不够适用。
2.学习成本高:PLC编程语言通常是特定的标准化语言(如LD、ST 等),学习和掌握需要一定的时间和精力。
PLC和单片机在工业控制中有效应用的区别和联系分析PLC(Programmable Logic Controller,可编程逻辑控制器)和单片机在工业控制中都有着重要的应用,它们各自的特点和优势决定了它们在不同的应用领域中发挥作用。
本文将对PLC和单片机在工业控制中的有效应用进行分析,探讨它们之间的区别和联系。
我们来了解一下PLC和单片机的基本概念和特点。
PLC是一种工业控制设备,它采用专门的编程语言(通常是Ladder Diagram)进行编程,可以实现对工业生产过程的自动控制。
PLC具有高可靠性、抗干扰能力强、易于维护等优点,适用于工业控制领域。
单片机是一种集成了中央处理器、内存和输入输出设备的微型计算机,它通常用于控制和数据处理。
单片机具有体积小、功耗低、成本较低等优点,适用于需要实时控制和数据处理的场合。
接下来,我们将分别从不同的角度对PLC和单片机进行比较分析。
一、功能特点1.1 PLC的功能特点PLC可以实现对多个输入信号进行逻辑运算,并根据程序控制多个输出设备,具有很强的逻辑控制能力。
PLC还可以通过通信接口与上位计算机进行数据交换,实现对工业生产过程的监控和管理。
单片机具有较强的数据处理能力和时序控制能力,可以实现对外部信号的采集、处理和控制。
单片机通常擅长处理实时性要求高的控制任务,如传感器信号采集、电机控制等。
从功能特点上看,PLC更适用于对工业生产过程进行逻辑控制和监控,而单片机更适用于对具体设备进行实时控制和数据处理。
二、应用领域2.1 PLC的应用领域PLC广泛应用于自动化生产线、工业机械设备、工业控制系统等领域。
它能够实现对多种工艺参数的自动控制,并且具有较强的抗干扰能力和可靠性,适用于工业环境中的恶劣条件。
从应用领域上看,PLC更适用于工业自动化领域,而单片机更适用于电子设备和家电控制领域。
三、编程方式3.1 PLC的编程方式单片机的编程方式多种多样,可以使用C语言、汇编语言等进行编程。
单片机与PLC技术有那些区别,这是很多做过plc的人,要开始学单片机的的时候向我提出的一个问题,在这里给大家简单的比较一下他们的异同。
单片机定义:顾名思义集成在一个芯片内的计算机系统,又叫单片微控制器,英文:mcu,他具有计算机的全部功能。
PLC定义:PLC是英文Programmable Logic Controller的简称,翻译过来就是可编程逻辑控制器,PLC是一种数字运算操作的电子系统,广泛应用于工业控制。
它采用可以编制程序的存储器,用来存储执行逻辑运算、顺序运算、计时、计数和算术运算等一系列操作的指令,而且还能以数字或模拟的方式输入和输出,控制各类的机械或生产过程。
他们的区别如下:一.PLC技术使用了单片机技术。
二.PLC技术不是单片机技术的延伸。
还是打比方比较直接:单片机比方为一张白纸。
PLC比方为在白纸上画好的表格使用单片机技术就象在白纸上写字使用PLC技术就象是填表格掌握单片机技术就象学会写字的能力。
掌握PLC技术就象是学会看表格和填表格的能力可见:一.单片机技术发展空间很大,因为你想要什么,就可以写什么。
而PLC技术里肯定有一些表格是不用的,也会有些表格空间是不够用的。
二.单片机技术资源让费要比PLC技术少。
因为单片机技术就像你要写多少字就用多少纸。
而PLC技术就像有些表格是不用的。
必然造成更大让费。
三.单片机与PLC技术技术含量是相等。
很多企业都解说自己使用的单片机技术,好像单片机技术比PLC技术要高级,这是不对的。
也有很多企业把PLC改装成单片机样式,解说为使用的是单片机技术。
使用单片机技术的目的是:1。
节省成本,减少资源让费。
2.单片机编写的程序更合理,就像上面比方的表格不够用一样。
1.PLC是建立在单片机之上的产品,单片机是一种集成电路,两者不具有可比性。
2.单片机可以构成各种各样的应用系统,从微型、小型到中型、大型都可,PLC是单片机应用系统的一个特例。
3.不同厂家的PLC有相同的工作原理,类似的功能和指标,有一定的互换性,质量有保证,编程软件正朝标准化方向迈进。
AN2103 AN2103 基于GUTTA一步一步实现一个最小PLC系统COPYRIGHT © 2008 2009/03/25写在前面的话 (4)为什么要做自己的PLC系统 (4)这里实现了什么样的PLC系统 (4)第1章前期准备 (5)电脑 (5)CPU-EC20 (8051)仿真器 (5)安装8051的C编译器SDCC (6)安装软件GUTTA Ladder Editor (6)ISP下载软件STC-ISP (7)第2章规划 (7)内存系统 (7)指令系统 (8)运行模式 (10)通讯系统 (15)第3章添加CPU类型 (16)配置类型(PlcType.XML) (17)配置变量系统(ManagerVar.XML) (19)配置指令集(ManagerFun.XML) (22)CPU类型的测试 (22)第4章完成仿真器固件 (22)熟悉我们的编译器 (22)编译单个文件 (23)Intel Hex文件的对齐 (23)编译多个文件 (23)命令行参数 (24)变量空间分配的扩展 (25)基本定义 (26)硬件系统 (30)内存 (30)I/O操作 (32)闪存管理 (36)时钟节拍 (40)串口通讯 (43)软件系统 (49)通讯协议 (49)指令集支持 (58)运行系统 (66)第5章完成CPU类型的配置 (72)完成文件CompileInfor.XML (73)<Param> (74)<Dictation> (74)<Command> (74)完成文件swap_auto.h (76)第6章综合调试 (78)编译系统固件 (78)下载系统固件 (80)最简单的程序 (81)逻辑指令的测试 (81)定时器指令的测试 (81)计数器指令的测试 (82)写在前面的话为什么要做自己的PLC系统实现一个自己的PLC其实不难(当然要实现一个功能全面的商业化的PLC还是有难度的),只要你懂C语言、掌握一种单片机的应用、熟悉基本的I/O电路、同时有这方面的兴趣(这个最关键)。
在您看完这篇文章后,就能具备一个大致的概念。
在您按照这篇文章一步一步动手实践后,相信您就知道怎么去实现自己的PLC系统了。
为什么要实现自己的PLC系统呢?抛开商业意义不说,如果您对PLC不是很了解,那么实现一个自己的PLC系统,您对PLC的认识肯定就能上升一个层次。
如果您对单片机不是很了解,那么经过这个项目的训练,自己动手基于单片机实现了一个自己的PLC,恭喜你,你就已经是一个单片机熟手啦!因为PLC的开发不是针对具体的应用,而是一个平台的规划和建设。
因此这个项目对单片机各个功能的挖掘也是最深入的。
哪怕仅仅只是本文介绍的这个最小PLC系统,就涉及到了单片机的在系统编程(ISP)、在应用编程(IAP)、部分编译、异步串口通讯、I2C通讯、FLASH读取等等技巧。
若您对单片机和PLC都不是太熟,建议您还是先打打基础吧,这篇文章可能暂时还不适合您。
知道怎么做和真正做好是两个概念。
不论是学习单片机还是学习PLC,自己动手实践,是最好的学习方法!考虑到在工业控制领域中,目前51系列的8位单片机依然是最为大家所熟知的一款。
这里我们就以CPU-EC20 (8051)仿真器为硬件基础,一步一步实现一个最小的PLC系统。
这里实现了什么样的PLC系统从70年代第一台PLC到目前为止,出现过各种形式的PLC,实现方法也各不相同。
从规模来看,PLC一般按下面标准分类:1.微型机:控制点数一般在几点、十几点、几十点。
典型的代表是西门子的LOGO系列控制器、OMRON的ZEN系列控制器、斯耐德的Zelio Logic控制器。
这类PLC一般具有以下特点:体积小、允许的IO电流很大(甚至达到8A)、自带液晶面板可以现场编程、价格便宜。
这类PLC主要设计目标就是替代旧式的继电器电路,因此这类PLC也叫做PLR(可编程继电器或智能继电器)。
2.小型机:控制点数可达100多点。
典型的代表是西门子的S7-200系列控制器、OMRON的CPM2A、CP1H、CQM1H系列控制器、斯耐德的Twido系列控制器。
这种PLC应该也是目前使用最多,大家也最为熟悉的PLC。
3.大型机:控制点数一般在1000点以上。
典型的代表是西门子的S7-400系列控制器、施耐德的Quantum系列PLC。
这类PLC可能更像计算机。
在抗干扰、启动速度上一般还不如小型机,但这种PLC一般有很强的数据处理能力、有丰富的通讯接口、自带冗余系统,一般作为大型项目的控制核心。
这部分就不多介绍了,因为目前我们不需要知道如何去采购PLC,我们是要自己来实现一个PLC!从PLC开发人员来看,目前PLC的实现有下面几种形式:1.解释型还是编译型。
这是从工作方式上来看的。
解释型PLC将程序分为解释系统和用户指令两个截然不同的部分。
解释系统类似于一个虚拟机,通过逐条翻译用户指令执行对应的操作。
用户指令仅仅是解释系统可以识别的数据,和处理器指令系统无关,可以自行定义。
编译型PLC不存在解释系统和用户指令的划分。
编译的结果就是处理器能够执行的二进制指令,而这些指令的执行能够实现梯形图的图形化逻辑。
解释系统比较灵活,但是效率不高,常在小型PLC 中使用。
编译系统具有更高的定制能力,效率也很高,常在大型PLC中使用。
由于CPU-EC20 (8051)所用的51单片机IAP12C5A60AD只有1280(1024+256)字节的RAM。
内存比较紧张,因此我们这个项目实现的是编译型PLC。
2.硬解码还是软解码?这是从硬件角度来看的。
PLC最开始出现就是为了取代开关继电器电路。
由于那个年代通用处理器价格昂贵,PLC一般采用自己专用的位处理器。
位处理器设计上比较简单可靠,且能够和PLC指令表指令一一对应。
随着控制技术和芯片制造技术的发展,一方面控制系统希望PLC除了逻辑处理,还要有更强的数据处理能力,更强的通讯能力等。
另一方面,通用控制器处理器价格不断下降。
随着工艺的提升,处理器的价格除了由处理器的复杂程度(门电路的多少)来决定,更多的由处理器的使用量来决定(分摊了处理器的研发成本)。
不少PLC制造商不再单独的为自己的PLC开发处理器,而是采用通用的处理器。
那么对于PLC特殊的逻辑指令,必须采用软解码的方式来实现。
不容置疑,我们这里使用单片机来开发PLC,也就是所谓的软解码。
3.扫描指图还是扫描指令?这是从最小的执行单元来看的。
扫描图指PLC直接分析梯形图上的能流来进行逻辑运算。
扫描指令需要软件先将梯形图转换成等效的指令表,然后一条一条执行指令表完成梯形图的逻辑。
扫描图更加灵活,图上的元件可以任意放置,同时比较容易实现运行中编程。
扫描指令对梯形图上的元件放置有一定的要求,不过效率较高。
由于目前我们需要借助软件GUTTA Ladder Editor来实现梯形图的编辑(当然读者有精力的话也可以自己开发一个),而这个软件是只支持扫描指令的,故我们的目标PLC采用扫描指令的工作方式。
第1章前期准备正所谓工欲善其事,必先利其器。
这里把我们将来肯定需要用到工具介绍一下:电脑配置要求不高(独立或者集显均可……),新旧不限,但是必须能跑Windows XP或者更高版本。
因为GUTTA Ladder Editor这个软件暂时还没有Windows以外操作系统的版本。
串口不是必需的(CPU-EC20 (8051)自带USB到COM的转换器),当然有是最好的,原生的东西毕竟最稳定可靠。
CPU-EC20 (8051)仿真器它实际上是51单片机学习和PLC学习二合一的仿真器。
使用自带固件的时候,它就是一台PLC,可以用来验证读者编写的PLC程序。
若不使用自带固件,它也可用于51单片机的开发。
由于我们这里是自己来实现一个PLC,因此把它当作51单片机学习仿真器来使用,即不用它的自带固件,而是自己来实现一个这样的固件。
建议读者使用这个仿真器,否则硬件上的不一致会造成一些软件资源不可用。
购买办法可以访问我的网站(/)。
当然如果您手头有现成的51开发板,并对自己做好移植有信心的话,也可以不必重复购买。
需要注意的是,由于51处理器型号上的不一致,您需要确认您的51单片机是否支持至少1024字节的扩展RAM(片内或片外都可),是否支持在应用中编程(IAP)。
因为本项目采用部分编译的形式,IAP是必需的。
安装8051的C编译器SDCCSDCC是一款目标设备可变、优化的ANSI C编译器。
目前支持Intel 8051、Maxim 80DS390、Zilog Z80、Motorola 68HC08。
SDCC是自由开放源码软件,遵循GPL协议。
SDCC的主页:/SDCC的下载地址:/project/showfiles.php?group_id=599为什么是SDCC而不是KEIL?虽然从各种途径获得的信息是,KEIL的编译效率要比SDCC高(感觉上确实如此),但KEIL是商业软件。
由于我们实现的是编译型PLC,在进行发布时,必然需要将编译器嵌入软件GUTTA Ladder Editor中(软件提供了开放接口)。
然而未经许可将一款商业软件的二进制文件作为自己的产品发布是不妥的。
另外在我看来,SDCC简单却实用(该有的功能都有,暂时用不到的功能都没有),非常利于学习单片机。
还有一种可行的办法就是,因为我们是采用的部分编译的PLC实现,可以先用KEIL来编译PLC的系统固件,这部分写入单片机FLASH后保持不变,然后用SDCC来编译用户逻辑部分,SDCC随GUTTA Ladder Editor软件一起发布。
由于本文档介绍的项目主要是以教学为目的,对效率的要求并不是特别苛刻,为了方便起见,这里不论是PLC系统固件,还是PLC用户逻辑部分,统一采用SDCC做为C编译器。
安装软件GUTTA Ladder Editor这是一款用户可配置的PLC梯形图编辑环境。
在我们这个项目看来,它就完成了一件事:读取您事先定义好的内存区域和指令集,提供一个梯形图编辑环境。
在用户完成梯形图编辑后,将梯形图转化成指令表指令的形式传递给单片机PLC系统。
在软件中,窗口框架的设计是比较繁琐的。
所幸的是,这些脏活累活都已经由GUTTA Ladder Editor完成了。
并且GUTTA Ladder Editor在设计之初就充分考虑到了PLC类型的扩展。
绝大部分和PLC相关的定义都以XML文件的形式存在,以方便您添加PLC类型(XML 文件格式可能对没有接触过软件开发的人来说会比较陌生,其实它很简单,就是用文本纪录一些信息而已,可以用Windows自带的记事本打开和编辑)。
GUTTA Ladder Editor的主页:/GUTTA Ladder Editor的下载地址:/download/software.htmISP下载软件STC-ISP由于CPU-EC20 (8051)使用的是宏晶(STC)增强型的51单片机(IAP12C5A60AD),那就使用宏晶提供的下载器吧。