软PLC可以替代西门子硬PLC吗?CODESYS与软PLC是什么关系?
近些年PLC界涌现了很多新兴的技术与产品,如EtherCAT、CODESYS、软PLC等等。它们在各行各业大展风采,为工业自动化创造着新的方案与选择。
传统的PLC以三菱西门子为主,新的软PLC会为自动化带来什么惊喜呢?软PLC相比传统硬PLC的优势是什么?软PLC是否会替代硬PLC?
当前业界软PLC的体现形式是多样化的,通常是在通用计算机上运行的软件应用程序,通过特定的软件系统环境来实现硬PLC功能。软PLC可以在标准操作系统上运行 ,因此开发和调试过程可能更加直观和便捷。另外,软PLC可以更容易地与其他计算机系统进行集成,实现数据采集、分析和通信等功能 。业界常见的软PLC有倍的TWINCAT、CODESYS、微软的VS、QT等,在通用计算机跑这些程序可以取缔硬PLC功能。
虽然说CODESYS和倍福TWINCAT可以在计算机上跑Runtime实现软PLC功能,但这只是CODESYS软件的一部分应用场景,通常就是CODESYS运行在X86架构的CPU处理器上实现PLC的运算功能,然后再通过通信实现驱动伺服电机、IO等执行机构。但是CODESYS不仅仅是做软PLC用,它还可以运行在ARM架构作为硬PLC,汇川的AM600、欧姆龙NJ里面的一些产品都是这种模式。其实软PLC和硬PLC的底层逻辑都是一样的,即在一个运算处理器上跑应用程序实现控制功能。
软PLC的兴起还得感谢倍福,正是倍福的EtherCAT使得软PLC从某一领域走向了广阔的通用控制领域。像汇川、欧姆龙、研华都有这种类似的产品,雷赛、固高、正运动把软PLC和运动控制卡结合的不错。总的来说软PLC的应用场景还是非常巨大的。那么软PLC到底有什么优势,能用硬PLC为什么还要用软PLC?
软PLC相比硬PLC最大的优势是CPU运算能力, 像传统的硬PLC如三菱FX3U、西门子200smart它是基于一些单片机实现的,它所处理的功能也就是逻辑控制以及少量的伺服步进控制。但是随着自动化技术的进步,各种应用场景日新月异,庞大的产线需要大量的伺服驱动,这个时候用单片机内核的PLC运算能力就不够了。同时,机器视觉技术的发展把软PLC的应用推向了一个新的高度,伺服控制硬PLC想想办法也可以实现,但是视觉的处理必须用到电脑了,因此把PLC的功能和视觉功能的软PLC集成在一起就非常必要了。软PLC的优势在伺服电机多、机器视觉、CNC的应用场景有着显著的优势。
至于软PLC替代硬PLC注定是伪命题, 产品并不是技术越高越有优势,而是要与具体的应用场景结合。很多应用场景只需要逻辑控制与简单的运动控制,根本用不到软PLC。像各种小机器小设备一个普通的三菱fx3u足以,并且这种场景对成本是非常敏感的,软PLC至少得配个电脑,成本几千起步,而普通的硬PLC几百就可以搞定。如果想着用软件实现硬PLC功能就不用花买PLC的钱了注定是点错科技树了。软PLC是为了复杂的、多元化的自动化场景而存在的,比如视觉处理、复杂的插补系统、CNC控制、>64轴的运动控制场景。
产品与技术的进步本质上是顺应市场需求,软PLC的发展是自动化生产发展的需要,是信息技术与传统控制技术的结合物,也标志着机器视觉、大运动控制系统、复杂插补系统、CNC系统大批量应用的落地。微软VS、QT这些平台与运动控制卡的结合的出现本质上是为了多轴控制与复杂的插补运算,是软PLC形式之一。同时CODESYS这些软件的发展抢夺了VS、QT市场空间,原来多轴控制还要上运动控制卡+电脑,现在如果只是伺服控制的话一个CODESYS运动控制器足矣。
免责声明:本文转自网络,版权归原作者所有,如涉及作品版权问题,请及时与我们联系删除,谢谢!
如何获取 电气热门资料?
操作指引如下!
西门子S7-1500新的程序架构——软件单元
从博途V15.1开始,S7-1500固件版本V2.6及以上的CPU可以使用软件单元功能。软件单元可以将项目程序划分成不同的逻辑功能块,比如驱动、流程控制、外部通信等都可以单做作为一个软件单元,也可以将程序划分成不同的子站,比如Station1、Station2等,每一个子站作为一个软件单元。软件单元不仅在架构上让程序逻辑更加清晰,更重要的是:每个软件单元都可以分别编辑和下载,这样极大的方便了多个用户在同一台设备上进行调试。今天这篇文章,我们来详细介绍下软件单元功能。
在博途V15.1以上版本添加S7-1500型CPU模块,在项目树中会出现“软件单元”一栏。双击“添加新的软件单元”,添加一个默认名称“Unit_1”的软件单元,如下图所示:
每个软件单元都包含如下元素:
关系;程序块;外部源文件;PLC变量;PLC数据类型;PLC监控和报警;PLC报警文本列表;其中:
关系:用来定义软件单元可访问的外部资源,比如:①其它软件单元中的函数/函数块、PLC变量、数据类型等;②软件单元之外的全局数据类型;③工艺对象;程序块:可创建本软件单元中使用的组织块、函数块、函数、数据块;每个软件单元都可以有一个或几个程序循环组织块,操作系统会按照其编号顺序依次调用;外部源文件:将外部SCL源文件导入该文件夹,可生成相应的函数块/函数/数据块或数据类型;PLC变量:可创建本软件单元的PLC变量和常量;PLC数据类型:可创建用户自定义数据类型;PLC监控和报警:可监控PLC的变量或函数块;PLC报警文本列表:可编辑PLC报警文本列表;软件单元具有如下一些特点:
S7-1500固件版本V2.6及以上支持该功能;每个CPU最多可创建255个软件单元;软件单元中的数据块必须采用优化的块,无法禁用;若想在一个软件单元中使用另一个软件单元中的函数/函数块/数据块等资源,则必须首先与目标软件单元建立关系,并且被使用的资源是已经发布的块。资源的发布是指在其属性的“常规”选项卡中勾选“访问:已发布”,比如下图的数据块S1PublicDB所示:举个例子:
创建两个软件单元,分别命名为Station1和Station2。
在软件单元Station1的程序块中添加程序循环组织块Main_1(OB123)、函数S1Function1(已发布)、数据块S1PrivateDB(未发布)和数据块S1PublicDB(已发布),如下图所示:
在软件单元Station2的程序块中添加程序循环组织块Main_2(OB124)、函数S2Function1(未发布)、数据块S2PrivateDB(未发布)和数据块S2PublicDB(已发布),如下图所示:
在Station2的关系表中新创建指向软件单元Station1的关系,如下图所示:
注意该关系的指向是单向的,即:Station2可使用Station1中已经发布的程序块,反过来并不成立。并且该关系一旦建立,不允许在Station1中再创建指向Station2的关系,即不允许双向关系。
由于Station2已经创建与Station1的关系,并且Station1的S1Function1和S1PublicDB均为已发布状态。因此,可以在Station2的S2Function1中调用S1Function1和使用S1PublicDB中的数据,如下图所示:
在Station2中不能使用Station1中的S1PrivateDB,因为该数据块未发布。
好了,关于S7-1500使用软件单元的功能就先介绍到这里。我之前还写过一篇S7-1200/1500新程序架构的文章,链接如下:
西门子S7-1200/1500 PLC新的程序架构 | 北岛夜话
相关问答
plc指令集架构?
PLC的指令集是通过编程语言实现的,主要包括:梯形图语言(LD)、指令表语言(IL)、功能模块图语言(FBD)、顺序功能流程图语言(SFC)及结构化文本语言(ST)...PLC的...
欧姆龙plc编程软件安装不了-ZOL问答
对电脑系统也有要求的,我手提安装时一切顺利,同样软件到办公室安装时就装不上。...可以查一下PLC是否设置了写保护有用(0)回复展开查看全部6条讨论精品应用...
怎么安装三菱plc编程软件gxdeveloper-ZOL问答
如何安装三菱plc编程软件gxdeveloper下载完后,最好解压到D盘或者C盘根目录,如果目录层次太多将不利于安装。系统支持WINDOWS98/2000/XP,至少得有512MB内存...
三菱plc怎么样在软件中编t0k20程序-ZOL问答
3条回答:【推荐答案】输入OUT空格T0空格K20即可。
plc编程标准的基本架构?
plc基本结构plc基本结构基本相同,主要有CPU,电源,储存器和输入输出接口电路等组成。中央处理器单元一般由控制器、运算器和寄存器组成。各种PLC的组成结构基...
台达的触摸屏及PLC软件怎么综合模拟?,电力模拟屏用途?
[回答]能做到,有可很笨的方法,小屏去读写大屏的数据,大屏再根据内部地址的变换,由脚本程序运行后,再读写到PLC中!哈哈!工程量大,你的程序量就大,只是建议!...
西门子plc目前有哪些系列?
目前,西门子(Siemens)的PLC产品线涵盖了多个系列,以适应不同的应用需求和需求层级。以下是几个主要的西门子PLC系列:SIMATICS7-1200系列:SIMATICS7-1200...
拯救者y7000,各大编程和绘图软件都适用吗?-ZOL问答
搭载i7-10875H的拯救者Y7000P单核和多核性能更强,而搭载R54600H的拯救者R7000性价比更高,两款笔记本运行机械画图软件基本都没有太大瓶颈,具体选择更多的还是要...
plc程序结构框架编写技巧?
编写PLC程序结构框架的技巧涉及合理组织和规划程序,以确保其可读性、可维护性和可靠性。以下是一些关键的编写PLC程序结构框架的技巧:模块化设计:将整个系统...
电脑与PLC通讯用什么语言编程比较好啊?-ZOL问答
可编程逻辑控制器,它采用一类可编程的存储器,用于其内部存储程序,执行逻辑运算、顺序控制、定时、计数与算术操作等面向用户的指令,并通过数字或模拟式输入/输出...