线下实训
HOME
线下实训
正文内容
plc can编程 如何通过PLC控制CAN节点?
发布时间 : 2024-11-25
作者 : 小编
访问数量 : 23
扫码分享至微信

如何通过PLC控制CAN节点?

通过PLC(可编程逻辑控制器)控制CAN(Controller Area Network)节点,主要依赖于PLC与CAN设备之间的通信能力。这通常可以通过以下几种方式实现:

1.使用PLC自带的CAN总线模块

步骤说明:

确认PLC型号:首先,确认PLC是否内置了CAN总线模块。许多现代PLC,特别是针对工业控制的高级型号,都配备了CAN接口。

连接CAN节点:使用适当的电缆将PLC的CAN接口与CAN节点相连。

配置参数:在PLC中配置CAN接口的参数,如波特率、数据位、停止位等,以确保与CAN节点的通信参数相匹配。

编写程序:在PLC编程软件中编写控制程序,使用相应的命令和函数来读取和写入CAN节点上的数据。

优点:

直接使用PLC自带的CAN总线模块,无需额外硬件接口。

操作方便,程序编写也相对简单。

缺点:

如果PLC没有预留CAN总线模块接口,需要替换或升级PLC设备。

受限于CAN总线的通信速度和距离。

2.使用外部CAN接口卡

步骤说明:

选择接口卡:选择适合PLC的外部CAN接口卡,并确保其与PLC兼容。

安装接口卡:将CAN接口卡安装在PLC的扩展槽或通过适当的接口连接到PLC。

配置参数:在PLC中配置接口卡的参数,确保与CAN节点的通信参数相匹配。

编写程序:在PLC编程软件中编写程序,使用相关的接口库或驱动程序来实现CAN数据的读取和写入。

优点:

能够在不改变PLC硬件配置的情况下,实现和CAN设备的通信。

连接多个CAN设备时,使用分离式的接口卡可以降低故障率。

缺点:

需要占用PLC的扩展接口,可能增加系统的复杂程度和成本。

需要使用相应的接口库或驱动程序来实现CAN数据的读取和写入,增加了系统调试和维护的难度。

3.使用CAN和PLC互联的网关设备

步骤说明:

选择网关设备:选择适合PLC和CAN节点的网关设备,如CAN-Modbus、CAN-Ethernet等转换器。

连接网关:将网关设备连接到PLC和CAN节点之间,实现通信协议的转换。

配置网关:根据网关设备的说明书,配置其参数以确保数据的正确转换和传输。

编写程序(如需要):在某些情况下,可能需要在PLC程序中添加额外的逻辑来处理网关转换后的数据。

优点:

可以在不同的物理网络之间实现数据转发和处理。

可以通过调整网关设备的设置来支持多种通信协议和格式。

缺点:

网关设备的通信速度和稳定性受限于设备本身的性能。

需要额外的设置和调试工作,增加了系统的复杂度和成本。

注意事项

在将CAN设备接入PLC时,需要确保两者之间的通信协议是兼容的。

根据具体的PLC型号和CAN设备,进行相关的设置和配置,如波特率、数据位、停止位等参数的匹配。

在安装和使用过程中,需要考虑环境因素对通信的影响,如电磁干扰、温度、湿度等,并选择合适的防护措施和电缆。

如果某个设备出现故障或异常情况,该设备可以通过CAN总线向PLC发送故障信息,PLC在接收到故障信息后应进行相应的处理。

如果您需要PLC控制器,可以私信评论找我。

CAN编程介绍

14.1 CAN介绍

14.1.1 CAN是什么?

CAN,全称为“Controller Area Network”,即控制器局域网,是国际上应用最广泛的现场总线之一。

最初,CAN被设计作为汽车环境中的微控制器通讯,在车载各电子控制装置 ECU 之间交换信息,形成汽车电子控制网络。比如:发动机管理系统、变速箱控制器、仪表装备、电子主干系统中,均嵌入CAN控制装置。

一个由 CAN 总线构成的单一网络中,理论上可以挂接无数个节点。实际应用中,节点数目受网络硬件 的电气特性所限制。例如,当使用 Philips P82C250 作为CAN收发器时,同一网络中允许挂接110个节点。

CAN可提供高达1Mbit/s的数据传输速率,这使实时控制变得非常容易。另外,硬件的错误检定特性也增强了CAN的抗电磁干扰能力。

14.1.2 CAN的起源

CAN最初出现在 80 年代末的汽车工业中,由德国 Bosch 公司最先提出。当时,由于消费者对于汽车功能的要求越来越多,而这些功能的实现大多是基于电子操作的,这就使得电子装置之间的通讯越来越复杂同时意味着需要更多的连接信号线。

提出 CAN 总线的最初动机就是为了解决现代汽车中庞大的电子控制装置之间的通讯,减少不断增加的信号线。于是,他们设计了一个单一的网络总线,所有的外围器件可以被挂接在该总线上。

1993 年,CAN已成为国际标准ISO11898(高速应用)和 ISO11519(低速应用)。 CAN 是一种多主方式的串行通讯总线,基本设计规范要求有高的位速率,高抗电磁干扰性,而且能够检测出产生的任何错误。

当信号传输距离达到 10Km 时,CAN 仍可提供高达 50Kbit/s 的数据传输速率。由于 CAN 总线具有很高的实时性能,因此,CAN 已经在汽车工业、航空工业、工业控制、安全防护等领 域中得到了广泛应用。

14.1.3 CAN传输模型

CAN 通讯协议主要描述设备之间的信息传递方式。CAN 层的定义与开放系统互连模型(OSI)一致。每 一层与另一设备上相同的那一层通讯。实际的通讯发生在每一设备上相邻的两层,而设备只通过模型物理层的物理介质互连。

CAN 的规范定义了模型的最下面两层:数据链路层和物理层。下表中展示了 OSI 开放 式互连模型的各层。应用层协议可以由 CAN 用户定义成适合特别工业领域的任何方案。已在工业控制和制造业领域得到广泛应用的标准是 DeviceNet,这是为 PLC 和智能传感器设计的。在汽车工业,许多制造商都应用他们自己的标准。

OSI开发系统互联模型

虽然CAN传输协议参考了OSI 七层模型,但是实际上CAN协议只定义了两层“物理层”和“数据链路层”,因此出现了各种不同的“应用层”协议,比如用在自动化技术的现场总线标准DeviceNet,用于工业控制的CanOpen,用于乘用车的诊断协议OBD、UDS(统一诊断服务,ISO14229),用于商用车的CAN总线协议SAEJ1939。

CAN传输协议

14.1.4 CAN网络拓扑

CAN总线是一种分布式的控制总线。CAN总线作为一种控制器局域网,和普通以太网一样,它的网络很多CAN节点构成。其网络拓扑结构如下图所示:

CAN网络的每个节点非常简单,均由一个MCU(微控制器)、一个CAN控制器和一个CAN收发器构成,然后使用双绞线连接到CAN网络中。

14.1.5 CAN物理特性

CAN总线遵循国际标准ISO11898,如ISO11898-1,ISO11898-2,ISO11898-3,ISO11898-4标准。

CAN总线

CAN 能够使用多种物理介质,例如双绞线、光纤等。最常用的就是双绞线。信号使用差分电压传送,两条信号线被称为“CAN_H”和“CAN_L”。静态时CAN_H和CAN_L均是 2.5V 左右,此时状态表示为逻辑“1”,也可以叫做 “隐性”。用 CAN_H 比 CAN_L 高表示逻辑“0”,称为“显形”,此时,通常电压值为:CAN_H = 3.5V 和 CAN_L = 1.5V 。

目前实际常用的CAN收发器有如下几种型号

目前实际常用的CAN控制器有如下几种型号

14.1.6 CAN报文帧

14.1.6.1 CAN报文格式

标准 CAN 的标志符长度是 11 位,而扩展格式 CAN 的标志符长度可达 29 位。CAN 协议的 2.0A 版本 规定 CAN 控制器必须有一个 11 位的标志符。同时,在 2.0B 版本中规定,CAN 控制器的标志符长度可以是 11 位或 29 位。遵循 CAN2.0B 协议的 CAN 控制器可以发送和接收 11 位标识符的标准格式报文或 29 位标识符的扩展格式报文。

标准帧&扩展帧对比

14.1.6.2 CAN报文帧类型

CAN报文类型又分为5种帧类型:数据帧:主要用于发送方向接收方传输数据的帧;遥控帧:主要用于接收方向具有相同ID的发送方请求数据的帧;错误帧:主要用于当检测出错误时向其他节点通知错误的帧。过载帧:主要用于接收方通知其他尚未做好接收准备的帧。间隔帧:主要用于将数据帧及遥控帧与前一帧分隔开来的帧。

其中数据帧是使用最多的帧类型,这里重点介绍一下数据帧。数据帧如下图所示:

数据帧

由上图所示,数据帧包括:

帧起始。表示数据帧开始的段。仲裁段。表示该帧优先级的段。控制段。表示数据的字节数及保留位的段。数据段。数据的内容,一帧可发送0~8个字节的数据。CRC段。检查帧的传输错误的段。ACK段。表示确认正常接收的段。帧结束。表示数据帧结束的段。具体介绍可以查看”CAN2.0A”、”CAN2.0B”详细介绍。

我们主要关注我们编程所需要关注的几个段:ID: CAN报文ID;IDE: 为0是标准帧,为1是扩展帧;RTR: 为0是数据帧,为1是远程帧;DLC: CAN报文数据长度,范围0~8字节;Data:数据,0~8个字节;

未完待续…关于CAN,还有很多内容(70多页),剩下内容:

加微信13923404017,免费获取完整版

相关问答

西门子plc的can通信设置?

要设置西门子PLC的CAN通信,首先需要确保PLC具备CAN通信模块。然后,在PLC编程软件中,选择适当的通信模块并配置CAN总线参数,如波特率、帧格式等。接下来,编...

西门子PLC中如何实现CAN总线通信?

首先西门子不支持CAN总线通讯,CAN总线通讯是ABPLC的通讯,如果想达到CAN通讯的目的,需要借助第三方通讯模块,该通讯模块最少支持两种通讯协议,并且两种通讯协...

西门子s7-300/400系列的plc有哪些编程软件-ZOL问答

这个新的软件同时支持S7-1200和S7-1500等新系列的PLC系列型号,但这个TIA软件包...ZOL问答扫描仪思看HSCAN300问题详情电脑版首页资讯查报价排行榜问.....

PLCCAN总线主从站设置?

主机与从机指示人为人为的,实际的PLC之间指示数据交换,所以你需要做的是主从站的数据需要什么,连接方式已OMRON为例:CoN-LINK连接,S-link,以太网等都有用来...

PLC和CAN电控的区别?

PLC(可编程逻辑控制器)和CAN(控制器局域网)是用于电气控制系统的不同技术。它们在实际应用中有以下主要区别:1.功能和用途:-PLC:PLC是一种用于自动化...P...

CAN卡分别是什?CAN?

CAN(ControllerAreaNetwork)是一种现场总线通信协议,主要应用于汽车、工业控制和自动化等领域。CAN卡是指用于与CAN总线连接的硬件设备,它能够实现CAN总线...

西门子300PLC怎么安装GSD文件-ZOL问答

4条回答:【推荐答案】打开“硬件”在认为栏“选项”下点击"安装GSD”在目录选项中找到你你要安装的GSD文件例如要建一个扫描仪的从站改扫描仪会有个GSD后戳的文...

学会了plc,下一步该怎么去深造,以后会更有钱途?

我来说一下我个人的看法,学会了PLC控制这块,如感觉还想再深造,我建议要学自动化控制,因为工业制造业会不断持续的升级,现在已经到了自动化过程控制这一步了...

plc通过通讯怎么控制伺服?

PLC通过通信控制伺服的一般步骤如下:1.选择合适的通信协议:PLC需要支持与伺服控制器之间的特定通信协议,例如Modbus,EtherCAT,CANopen等。2.配置PLC的通信...

【英语翻译利用多种电磁阀、气缸和可编程控制器(PLC),设计了...

[最佳回答]Asafeandsmallautowindowwiperhasbeendesignedwithvarioussolenoidvalves,cylindersandprog...

 中华周易研究协会  丁丽丽 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2024  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

在线咨询真诚为您提供专业解答服务

热线

188-0000-0000
专属服务热线

微信

二维码扫一扫微信交流
顶部