PLC、运动控制卡、运动控制器,傻傻分不清

news2025/1/13 2:28:55

前言

最近有不少做PLC开发的小伙伴,在一些咨询运动控制卡、运动控制器相关的问题,很多人不清楚它们之间有什么区别和联系,今天跟大家就PLC、运动控制卡、运动控制器区别及选型做个分享。

背景

随着工业技术的发展,工业机器人应用越来越广泛,PLC也不再是简单的可编程逻辑控制器,各个品牌厂家都推出了自己的运动控制型PLC,来实现一些运动控制功能,与此同时,运动控制卡及运动控制器也在如火如荼地发展。

对一个电气工程师来说,如果我们的项目涉及到一些运动相关的控制,我们必然会提前选择好电机,如果要求精度比较高,一般会选择伺服电机,否则的话,我们可以选择步进电机来进行运动控制,但是,无论是步进电机还是伺服电机,一般都是和其对应的驱动器是配套的。那么后续的问题在于如何通过步进(伺服)驱动器进行步进(伺服)电机的控制呢?

方案

一般来说,我们有以下几种方案:

1、 采用PLC进行控制,目前市场上的大部分PLC都是支持运动控制的,大部分PLC可以扩展到32轴,根据驱动器类型可以采用脉冲控制、总线控制或模拟量控制。

2、 采用运动控制卡控制,运动控制卡是专门进行运动控制的一种控制器,可以进行多达256轴的控制,运动控制卡需要PC编程。

3、 采用运动控制器控制,运动控制器与运动控制卡不同之处在于,可以脱离PC电脑的束缚,编写完程序下载到控制器里,即可直接对驱动器进行控制。

选择

那么,我们究竟应该如何进行选择呢?首先我们来看一下他们的区别与联系。

首先,要明确一点,无论是PLC,还是运动控制器、运动控制卡,它们的本质都是一种控制器,主要负责自动化系统中运动轴的控制,同时也支持输入输出信号的控制。从区别来看,主要有以下几点:

1、 PLC的专长在于逻辑IO控制,实现一些复杂的逻辑控制都很容易。对于运动控制,一般低端的PLC主要是通过高速输出点来进行脉冲控制,中高端PLC一般会通过总线的方式来进行控制,常用的总线包括Profinet、EtherCAT、CC-Link等。

2、 运动控制卡通过PCI插槽将控制卡插在PC的主机上,也可以通过以太网连接到PC主机上;利用高级编程语言C++、C#、VB、VB.NET、labview等编程语言进行开发;编程中使用运动控制卡厂商提供的控制卡API接口函数,来实现对控制卡资源的使用;运动控制卡也分为脉冲型和总线型,一般总线型要比脉冲型稍贵一些。

3、 PLC具有工作可靠,编程简单等优点,但其运动控制功能相对简单。PLC的应用过程中主要通过PLC+HMI,这就导致可视化界面受到了一定的限制,因此现在基于PLC的上位机应用也越来越广泛;

4、 运动控制卡可以利用PC强大的功能,比如CAD功能、机器视觉功能、软件高级编程等;利用FPGA+DSP / ARM + DSP芯片的功能实现高精度的运动控制(多轴直线、圆弧插补等,运动跟随,PWM控制等)。

5、 运动控制器和运动控制卡的算法几乎一样,它们之间的主要区别在于运动控制卡需要依赖于PC编程,而运动控制器可以直接写程序并下载,这样就可以脱机运行。

6、 随着机器视觉的广泛应用,运动控制与机器视觉得到了良好的结合,相比之下,视觉项目采用运动控制卡能够节约很大的硬件成本。

总而言之,PLC相对来说更偏向于逻辑控制,而弱化于运动控制,而运动控制卡、运动控制器更偏向于运动控制,而弱化于逻辑控制,同时,运动控制卡和运动控制器对开发人员的门槛也要相对高一些,因此大家可以根据自己的实际情况,选择合适的解决方案。

直观认识

为了让大家更直观认识PLC、运动控制卡和运动控制器,选了一些图片素材。

1、西门子PLC

2、三菱PLC

3、欧姆龙PLC

4、PCI运动控制卡

5、EtherNET运动控制卡

6、EtherCAT总线运动控制卡

7、EtherCAT运动控制器

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/76034.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

怎么调整视频画布?这些技巧你知道吗?

小伙伴们平时在制作视频时是否有遇到过这种情况:从网站下载的视频素材画面过大,两边还带有黑边,插入到自己的视频后,显得视频整体上很突兀,美观度也受到影响,没有达到自己预期的效果。 如果你们也有这样的烦…

什么是CodeArts?

什么是CodeArts 软件开发生产线(CodeArts)原名“软件开发平台(DevCloud)”是集华为近30年研发实践、前沿研发理念、先进研发工具为一体的一站式云端DevOps平台,面向开发者提供的云服务,即开即用&#xff0…

从开环到闭环的旅程-CoCube

差动驱动机器人轨迹-CoCube 迷宫逃离的问题-CoCube 自由运动和环境限制-CoCube 001,自由运动 002,引出环境 003,对比差异 ROS机器人从起点到终点(四)蓝桥云实践复现 cocube自由运动机器人也需要一个目标&#xff…

JSON数据交互方式

目录 一、JSON的特点 二、前后端开发推荐使用工具ApiPost 扩展:xml与json的区别 三、JSON语法格式 语法注意点: 四、在html中定义json数据类型 1.单个实体——>JSON数据 2.数组实体——>JSON数据 3.集合实体——>JSON数据 五、JSON数据…

Redis的缓存穿透

文章目录1. 缓存穿透的理解2. 常见的解决方案有两种:3. 布隆过滤:4. 编码解决查询的缓存穿透问题:1. 缓存穿透的理解 缓存穿透是指客户端请求的数据在缓存中和数据库中都不存在,这样缓存永远不会生效,这些请求都会打到…

安科瑞企业微电网AcrelEMS-MED医院能效管理平台应用分析

安科瑞 李亚俊 平台概述 AcrelEMS-MED医院能效管理平台依据《医疗建筑电气设计规范》《绿色医院建筑评价标准》、《医院建筑能耗监管系统建设技术导则》等行业规范建设,由电力监控及能效管理系统组成,涵盖了医院中压变配电系统、应急电源、隔离电源、照…

刷题11-和大于或等于K的最短子数组

刷题008-和大于或等于K的最短子数组 首先&#xff0c;审题要认真&#xff0c;题目说的是>target的长度最小的连续子数组&#xff0c;也就是返回值最小为0&#xff0c;其次是1 核心思想&#xff1a;设置两个指针left和right&#xff0c;初始都指向0&#xff0c;当sum<ta…

java学习day60(乐友商城)搭建后台、使用nginx进行反向代理、实现查询功能

1.搭建后台管理前端 1.1.导入已有资源 后台项目相对复杂&#xff0c;为了有利于教学&#xff0c;我们不再从0搭建项目&#xff0c;而是直接使用课前资料中给大家准备好的源码&#xff1a; 我们解压缩&#xff0c;放到工作目录中&#xff1a; 然后在Intellij idea中导入新的工…

(一)RT-Thread入门——内核介绍

目录 内核介绍 线程调度 时钟管理 线程间同步 线程间通信 内存管理 I/O 设备管理 总结 今天就开始学习有关RT-Thread的相关知识了&#xff0c;准备理论和实践同时进行&#xff0c;目前这一部分是原理理论部分&#xff0c;后面会结合实际的例子来加强学习&#xff0c;系…

Kubernetes 平台的生态系统介绍

Kubernetes作为一个容器云管理平台&#xff0c;与底层的基础架构、企业周边的公共服务形成了一个完备的生态系统。如图1所示&#xff0c;一个完备的Kubernetes系统在设计和实现时&#xff0c;需要考虑多层面的高可用性问题。 图1 Kubernetes 平台的生态系统因此&#xff0c;解…

一、计算机网络体系结构(二)参考模型

目录 2.1计算机网络分层结构 2.2协议、接口、服务的概念 2.2.1语法、语义和同步 2.2.2服务访问点&#xff08;SAP&#xff09; 2.2.3服务 2.3ISO/OSI参考模型和TCP/IP模型 2.3.1常见的三种参考模型 2.3.2 OSI参考模型 2.3.3 TCP/IP参考模型 2.1计算机网络分层结构 …

第13章 用户角色服务实现

013 Permissions、RoutePrefix、RedisMqKey、CustomApiVersion、SwaggerSetup Permissions&#xff1a;通过该类中的属性成员&#xff0c;当前程序的权限配置提供数据支撑。 RoutePrefix&#xff1a;通过该类中的属性成员&#xff0c;为Swagger JSON设定终结点&#xff0c;为“…

混入mixin

混入(mixin)&#xff1a; 混入 (mixin) 提供了一种非常灵活的方式&#xff0c;来分发 Vue 组件中的 可复用功能 -- &#xff08;混入对象可以封装在一个组件中&#xff0c;以供复用&#xff0c;放的都是一些公共使用的功能。&#xff09;一个混入对象可以包含任意组件选项。当…

ELK 企业级日志分析系统及Logstash过滤模块

目录 一、ELK 简介 1.1 ELK各组件介绍 ElasticSearch&#xff1a; Kiabana&#xff1a; Logstash&#xff1a; 1.2 可以添加的其它组件&#xff1a; Filebeat&#xff1a; 缓存/消息队列&#xff08;redis、kafka、RabbitMQ等&#xff09;&#xff1a; Fluentd&#x…

authorization server client resource 使用2

authorization server && client && resource 使用2 oauth2 整合 jwt authorization server && client && resource 使用1 中默认的示例就是使用的jwt 生成token&#xff08;用于&#xff09;,当然这里和我们用户登录的token是有区别的 oau…

【信息奥赛题解】昆虫繁殖(详细分析题解 C++ 代码)

昆虫繁殖问题 &#x1f31f; 【题目名称】昆虫繁殖 【题目描述】 科学家在热带森林中发现了一种特殊的昆虫&#xff0c;这种昆虫的繁殖能力很强。每对成虫过 XXX 个月后开始产卵&#xff0c;每月产 YYY 对卵&#xff0c;每对卵要过两个月长成成虫。 假设每个成虫不死&#…

SpringCloud01:回顾微服务和微服务架构

回顾微服务和微服务架构微服务微服务架构微服务架构技术栈微服务 微服务架构 微服务架构的四个核心问题 服务很多&#xff0c;客户端怎么访问&#xff1f;这么多服务&#xff0c;服务之间如何通信&#xff1f;这么多服务&#xff0c;如何治理&#xff1f;服务挂了怎么办&#x…

selenium开启Google持久化调试

google selenium调试 需要下载和自己浏览器版本相匹配的版本 这里用google浏览器演示 查看浏览器版本 google浏览器通过在搜索栏输入如下内容查看 chrome://settings/helpchromedriver 下载 到如下任意链接下载对应的版本 CNPM Binaries Mirror http://chromedriver.sto…

#pragma pack(n)内存对齐

1. 为什么要对齐&#xff1f; #pragma pack主要是用在字节对齐方面&#xff0c;为什么要对齐呢&#xff1f; 因为计算机中内存空间都是按照byte划分的&#xff0c;从理论上讲似乎对任何类型的变量的访问可以从任何地址开始&#xff0c;但实际情况是在访问特定变量的时候经常在…

chatGPT非常重要的能力居然不行,就让这个工具来拯救,让你SQL操作无忧

引言 各位好&#xff0c;相信看见这篇文章的朋友&#xff0c;应该也去体验过了chatGPT了吧~&#xff0c;确实chatGPT拉近了我们与未来科技的距离&#xff0c;所有别人火也是非常有道理的&#xff0c;为其点赞。 本文主要是关注chatGPT的SQL能力&#xff1b;因为本人从事IT教育…