产品选型

梯形图转单片机 什么是PLC?单片机和PLC有什么区别?

小编 2024-11-25 产品选型 23 0

什么是PLC?单片机和PLC有什么区别?

自二十世纪六十年代美国推出PLC取代传统继电器控制装置以来,PLC得到了快速发展,在世界各地得到了广泛应用。同时PLC的功能也不断完善,随着计算机技术、信号处理技术、控制技术网络技术的不断发展和用户需求的不断提高,PLC在开关量处理的基础上增加了模拟量处理和运动控制等功能。今天的PLC不再局限于逻辑控制,在运动控制、过程控制等领域也发挥着十分重要的作用。

PLC

PLC (Programmable Logic Controller) 是可编程逻辑控制器,专为工业生产设计的一种数字运算操作的电子装置,它采用一类可编程的存储器,用于其内部存储程序、执行逻辑运算、顺序控制、定时、计数与算术操作等面向用户的指令,并通过数字或模拟式输入/输出控制各种类型的机械或生产过程。是工业控制的核心部分。

单片机

单片机(Microcontrollers)是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在各个领域广泛应用。

诸如手机、汽车电子、工业上的步进马达、机器手臂的控制等,都可见到单片机的身影。单片机的特点是编程、维护相对复杂,编程方式常用C语言或者汇编语言,成本较低,I/O接口相对有限。

PLC与单片机的区别

PLC是应用单片机构成的比较成熟的控制系统,是已经调试成熟稳定的单片机应用系统的产品,有较强的通用性。单片机可以构成各种各样的应用系统,使用范围更广,但单就“单片机”而言,它只是一种集成电路,还必须与其它元器件及软件构成系统才能应用。从工程的使用来看,对单项工程或重复数极少的项目,采用PLC快捷方便,成功率高,可靠性好,但成本较高。对于量大的配套项目,采用单片机系统具有成本低、效益高的优点,但这要有相当的研发力量和行业经验才能使系统稳定。

从本质上说,PLC其实就是一套已经做好的单片机(单片机范围很广泛)系统。  

PLC的特点

PLC广泛使用梯形图代替计算机语言,对编程有一定的优势。你可以把梯形图理解成是与汇编等计算器语言一样,是一种编程语言,只是使用范围不同。而且通常做法是由PLC软件把你的梯形图转换成C或汇编语言(由PLC所使用的CPU决定),然后利用汇编或C编译系统编译成机器码。PLC运行的只是机器码而已,梯形图只是让使用者更加容易使用而已。

如所说,MCS-51单片机也可以用于PLC制作,只是8位CPU在一些高级应用如:大量运算(包括浮点运算)、嵌入式系统(现在UCOS也能移植到MCS-51)等,有些力不从心而已。不过加上DSP就已经能满足一般要求了,而且同样使用梯形图编程,我们可把梯形图转化为C51再利用KEIL的C51进行编译。不难发现不同型号的PLC会选用不同的CPU,其实也说明PLC就是一套已经做好的单片机系统。  

这样一看PLC其实并不神秘,不少PLC是很简单的,其内部的CPU除了速度快之外,其他功能还不如普通的单片机。通常PLC采用16位或32位的CPU,带1或2个的串行通道与外界通讯,内部有一个定时器即可,若要提高可靠性再加一个看家狗定时器问题就解决了。  

另外,PLC的关键技术在于其内部固化了一个能解释梯形图语言的程序及辅助通讯程序,梯形图语言的解释程序的效率决定了PLC的性能,通讯程序决定了PLC与外界交换信息的难易。对于简单的应用,通常以独立控制器的方式运作,不需与外界交换信息,只需内部固化有能解释梯形图语言的程序即可。

实际上,设计PLC的主要工作就是开发解释梯形图语言的程序。现在的单片机完全可以取代PLC。以前的单片机由于稳定性和抗电磁干扰能力比较的弱和PLC是没有办法相比的,现在的单片机已经做到了高稳定性和很强的抗干扰能力在某些领域已经实现了替换。

单片机可以取代PLC吗?

有人说这是个伪问题,单片机是元器件,PLC是由元器件以及庞大的软件构成的系统,两者在这一方面没有可比性 —— 大多PLC的控制芯片实际上就是单片机,也就是说可以将PLC看成是单片机的二次开发。单论工业防护等级,单片机的稳定性和可靠性能根本比不了PLC这种IP67类的产品( IP为标记字母,第一标记数字表示接触保护和外来物保护等级,第二标记数字表示防水保护等级)。而且就PLC这种能应对工业恶劣环境的产品还开发出一套冗余系统。

I/O功能

单片机的I/O点实在有限,而反观PLC呢?针对不同的现场信号,均有相应的I/O点可与工业现场的器件(如按钮、开关、传感电流变送器、电机启动器或控制阀等)直接连接,并通过总线与CPU主板连接。工业里几乎任意一条生产线,都有上百甚至上千I/O点,就这点单片机完全无法比拟。

开发周期

PLC的品牌多达200多种,几乎每个品牌都有不同编程软件,而且都在不断完善自己的编程软件,使之能够越来越简单的服务于电气工程师,而各种程序块也是越来越方便人性化的任意去调用,比如PID模块、运动控制模块等,大大减轻了工程师的开发压力也缩短了开发周期。

那单片机要如何实现?没有现成的模块使用,那就只能开发,那么做过非标自动化设备的工程师都会遇到工期不足问题。PLC这种高度集成化模块化的产品在达到满足设备所需的开发周期,在工期面前也是抓襟见肘,更不用说如同白纸一张的单片机。

通信距离

现在大多数流水线是要跨区域整合与监视的,所用的通讯方式多为以太网加中继器,或者直接走民用宽带光纤,所用的东西到最后很可能是用的就是微软的IE浏览器,很明显PLC是有RJ-45接口,即使本体没有RJ-45也可以配备以太网模块,可单片机搭载的PCB板能加上这个接口然后开发出以太网通信吗?开发需要多久?

编程语言

这点对单片机来讲是一个优势,同时也是一个劣势。上面提到PLC的品牌有两百多种,编程软件更多,尽管大多数PLC的编程语言都大同小异,但是每接触一款不同品牌的PLC,电气工程师就要从PLC的硬件参数、软元件、编程软件等等各个方面从头了解一次才能使用的得心应手。而单片机的编程语言用的是C语言或者汇编语言,这对于任何单片机都是通用的。换句话说,学会C语言或者汇编语言,便可以应用任何单片机开发想要的功能(前提是要有相关的电工电子学基础)。

但话又说回来,电气工程师不是电子工程师,他们的工作不是单单考虑单片机如何驱动继电器来控制机床的,甚至有的电气工程师都不会C语言、汇编语言之类的MCU开发语言。近些年,IEC-61131-3标准的推广,越来越多的PLC支持多种编程语言,如类似C语言的ST语言,类似电路图的CFC语言。这种便利的功能是传统单片机开发环境真的无法实现。

在工业控制领域,PLC占据绝对优势,就目前形势(单片机的功能、稳定性、易用性、编程及维护等)来看,单片机取代PLC那将是一项不可能完成,或者说期限趋向于无穷的艰巨任务。

PLC采集模拟量数据

PLC采集模拟量数据

工业控制中,模拟量采集的主要过程原理是:将各种工艺参数如温度、压力、流量、液位、成分等物理量变换成统一标准信号(标准信号通常是:电流为4-20mA或电压为0-5V),再传送到控制器或者指示记录仪中,进行调节、指示和记录等。

在工控系统中,温度、压力等传感器采集的信息,通过变送器处理成4-20mA或0-5V电信号,传送给PLC、单片机等CPU,那么这些CPU是如何把传送来的电信号转换为实际的温度、压力等信号?

我们通过一个例子来看一下,西门子S7系列PLC是如何处理模拟量传感器传动送来的电信号,现在常用的S7-1200PLC直接调用模拟量数据处理模块就可以,而对于S7-200(此型号已经停产)和S7-200SMART需要对数据进行计算和处理,这种处数据理思路的也是S7-1200数据处理的思路,只不过博图把这种数据处理过程封装成为一个指令罢了,其内核是一样的。我们以S7-200为例(S7-200SMART类似):

有1个温度传感器,其测量量程为0—100℃,变送器的输出信号为4—20mA,现需要用S7-200系列PLC采集温度传感器接收的温度信号,并编程计算得出实时变化的温度值。

已经知道温度传感器的量程为0--100℃,变送器为4---20mA电流信号。也就是说明0--100℃与4---20mA之间的数值是相互对应的,例如0℃对应着4mA,100℃对应着20mA。所以它们之间的关系可以用二维坐标系表示,如图1所示。

图1 工程量与电流之间的关系

根据相似三角形可以得出公式:

S7-200系列PLC模拟量模块可处理数值范围为0—32000,电流范围为0-20mA。也就是数值0对应着0mA,数值32000对应20mA。两者之间的关系可以用二维坐标系表示,如图2所示。

图2处理数据与电流值之间的关系

根据相似三角形可以得出公式,

由上面两个公式可以得出,

其中,TX就是采集的实时温度值,AIWX为PLC模拟量输入模块的采集数据。

图3 梯形图程序

AIW16为从温度变送器接收来的数据,温度的最终数值为浮点数(也就是有小数点)类型,所以要先转换为实数,网络1第一列的指令为数据转换指令,将AIW16(整数)的数值转换为双整数,存储在VD100地址内;网络2第二列指令为将双整数转换为实数,结果保存在VD104地址内。所以网络1的程序功能是,将采集的数值(证书类型)转换为实数类型。网络2的程序就是按照上面的公式进行计算最终得出实际采集的温度数值为VD116地址内存放的数值。

相关问答

梯形图 可以转化为 单片机 可认的C语言吗?

可以,但是得人工重新编程。似乎目前没有现成的软件可以直接转换。可以,但是得人工重新编程。似乎目前没有现成的软件可以直接转换。

PLC与 单片机 的区别点?

PLC(可编程逻辑控制器)和单片机是工业控制领域常用的两种控制设备,它们有以下区别:1.功能:PLC主要用于工业自动化控制系统,能够处理大规模的控制任...PLC(...

单片机 和PLC的比较?

单片机和PLC的区别如下:结构不同:PLC是建立在单片机之上的产品,单片机是一种集成电路。用途不同:单片机可以构成各种各样的应用系统,从微型、小型到中型、...

单片机 是什么类型的软件?

单片机是微型计算机系统软件,属于微控制器的其中一种,PLC的全称是可编程逻辑控制器,从名字上来看这二者肯定有相通之处,但又互相区别。单片机的确功能比PLC...

自动售货机的plc系统设计?洗衣自动售货机费用是多少

[回答]自动售货机PLC课程设计目录,任务描述,控制要求,系统配置及输入/输出继电器地址分配,程序设计,整体运行梯形图,实验心得,参考文献。对排水系...

工业级 单片机 做核心的控制器有什么好处?工业控制器性价比高吗?

[回答]从外观到内核更像个工业PC。用什么架构不是问题,问题的核心是你能给用户解决什么,能在什么工艺环境下用。L而那些是PLC-based架构的DCS...用什么...

西门子step7编程语言与C语言和汇编语言有什么区别?

一般C语言编程存在编译这一个步骤,其实就是把C语言转换为汇编语言,之后再转换为机器码。一般嵌入式编程(单片机、ARM、DSP)都用C语言。西门子STEP7一般都采...

到了工业2025后,现在的PLC工控技术会落后被替代吗?

关注冀工控,我们一起长知识现在是2019年,距离2025年还有六年的时间,题主的问题PLC工控技术会落后被取代吗?我个人观点是不会被取代,下面我就来论证一下我...就...

plc工资一般多少?

首先这个和所处的城市,行业,技术能力,人际关系,公司等有关系,3000到2万的工资都是有的。如果你刚毕业,在一线城市,去的一般公司,工资给到5K,我觉得算是...一类...

PLC常用编程语言有哪些?各有什么特点?-ZOL问答

PLC常用的编程语言主要有以下几种:-梯形图(LAD):-特点:-从上到下按行绘制,每一行从左到右绘制,左侧为输入接点,最右侧为输出元素。-左右母线并非实际...

猜你喜欢