Profinet转Modbus TCP西门子SINAMICS G120变频器与施耐德M580通讯案例
一. 案例背景
在复杂的工业自动化场景中,企业常常会采用不同品牌的设备来构建生产系统。西门子SINAMICS G120变频器以其高性能、高精度的速度和转矩控制功能,在电机驱动领域应用广泛。施耐德M580可编程逻辑控制器则以强大的逻辑控制和数据处理能力著称,在自动化流程控制方面表现出色然而,这两种设备使用不同的通信协议。需要使用捷米特JM-PNM-TCP进行协议转换,便于与众多不同厂家的设备进行数据交换。
二.设备介绍
1.捷米特JM-PNM-TCP
能够实现 Modbus TCP 从站和 Profinet 主站之间的协议转换,作为 Modbus TCP 从站可接入到 Profinet 网络中,如连接到西门子 PLC;作为 Profinet 主站,可连接标准的 Profinet 从站设备。在工业自动化领域应用广泛,适用于需要实现不同品牌、不同协议设备之间互操作的场景,比如在生产线控制、机器人系统、监控系统等场合,可方便地将仪表、阀岛、电棍、IO 模块、伺服电机与 Modbus TCP 接口的汇川、欧姆龙 PLC 或上位机等设备连接起来,实现数据的集中管理和控制 。
2. 西门子 SINAMICS G120 变频器
采用模块化设计,结构紧凑,节省空间,用户可根据具体应用需求灵活选择和组合不同的模块,配置出理想的变频器。创新的冷却系统和带涂层的电路板,可明显提高变频器的稳定性和使用寿命,使其能够适应较为恶劣的工作环境支持硬件模块热插拔,可拆卸接线端子,方便进行维护和设备更换。同时,通过基本操作面板和MMC卡可进行参数拷贝,大大提高了设备维护和更换的效率。广泛应用于整个工业与贸易领域,如汽车、纺织、印刷、化工、风机、水泵、压缩机等行业,尤其适用于对控制精度、动态响应和节能要求较高的应用场景。
3. 施耐德 M580
采用先进的ARM架构微处理器,具备强大的运算能力,能高效处理复杂的工业控制任务。将标准以太网嵌入自动化控制器,应用于现场总线、控制总线和内部背板总线等所有通讯环节,实现与各种设备和模块的无缝连接和通讯优化,包括配电、低压回路、能源管理功能等设备。支持多种扩展模块,可根据实际应用需求灵活扩展输入输出点数、通信接口、模拟量处理能力等,以适应不同规模和复杂程度的工业自动化项目。
三.配置连接方案
3.1软件安装
-
双击安装包,提示使用PROFINET Manager安装程序,点击下一步;
2. 弹出对话框如下图所示,选择安装位置,点击下一步;
3.选择是否创建桌面快捷方式,点击安装
4. 安装完毕
3.2网络拓扑
1. 配置工程的网络拓扑图如下 :
3.3 GSDML文件导入
1.将PROFINET 从站GSDML文件复制至软件安装路径下的GSDML文件夹中,例如:C:\Program Files (x86)\PROFINET Manager\GSDML或者通过菜单栏“选项”中的“操作”选择导入GSDML实现GSDML加载;点击“导入GSDML”弹出“选择导入的文件”对话框,查找GSDML的路径文件打开即可;或者点击
来进行快捷添加GSDML文件导入完成之后可以选择重启软件进行更新GSDML目录文件,也可以点击快捷栏
来进行更新GSDML目录文件。
2. 查看PROFINET 从站GSDML已添加至设备窗口“从属设备”树状结构下,如下图所示 :
3.4 PROFINET配置
-
点击文件--新建工程,选择TCP2PN,JM-PNM-TCP添加成功并生成PROFINET总线网络,或者点击状态栏
第一个选项可快速生成工程,如下图所示 :
2. 查看主站设备参数
(1)PN IO主站参数里查看主站名称IP地址设置主站的通讯周期,
(2)Modbus TCP从站参数
(3)PNIO I/O映射里面 查看模块I/O的基本命令。
(4)点击模块信息,可以查看模块的基本信息。如下图所示 :
3. 添加从站设备
点击右侧设备列表,选择你要添加的从站设备双击或者右键点击添加到配置来添加设备,添加完成设备会在左侧工程中显示,如下图所示 :
4. 搜索从站设备
(1) 鼠标选中任意从站设备,单击右键选择分配设备名称,进入图下所示界面 :
(2) 点击更新列表,点击分配设备名称,写入成功后从站设备名称更新为 GXPI-DIO16-E-1
5. 查看从站设备参数
(1) 在“从站列表”标签页,配置从站设备网络参数,点击slot (0x0)可以查看包括IP地址子网掩码、网关地址、IO的通讯周期和看门狗的通讯周期,配置完成点击“确认”,如下图所示 :
(2) 点击slot(0x1)可以查看输入输出的命令,如下图所示 :
(3) 点击主站,选择PNIO I/O映射,可以在主站里查看每个从站的输入输出命令和I/O映射
四.数据采集与传输
捷米特JM-PNM-TCP:在作为 Modbus TCP 从站时,JM-PNM-TCP 会与 Modbus TCP 主站设备建立连接,主站设备可以是 PLC、上位机等。主站会向 JM-PNM-TCP 发送数据请求指令,捷米特JM-PNM-TCP根据指令采集相应的数据,并将数据反馈给主站。比如在监控系统中,上位机作为 Modbus TCP 主站,向连接了各种仪表、阀岛等设备的捷米特JM-PNM-TCP从站请求数据,捷米特JM-PNM-TCP则将这些设备的数据采集后传给上位机。对于 Modbus TCP 网络,捷米特JM-PNM-TCP同样会对要传输的数据进行协议封装,将数据转换为符合 Modbus TCP 协议格式的数据包,然后通过以太网发送到 Modbus TCP 网络中。在这个网络中的其他设备,如支持 Modbus TCP 的 PLC、人机界面等,可以接收并解析这些数据包,获取所需的数据信息。Modbus TCP 协议简单、应用广泛,使得不同厂家的设备能够方便地进行数据交互。
西门子SINAMICS G120变频器:G120变频器的操作面板可直接显示一些基本的运行参数,如频率、电流、电压、功率等,操作人员可现场直接读取这些数据。部分操作面板还支持数据存储功能,可将参数设置等数据备份到操作面板的存储介质中,也可从操作面板将数据下载到变频器中。当与支持Modbus RTU或USS协议的主站设备通信时,G120变频器可根据主站的请求,将内部的参数和运行数据发送给主站。例如,主站可轮询读取多个变频器的频率设定值、实际运行频率、电流值等数据,以实现对多个变频器的集中管理和监控。主站也可通过Modbus RTU或USS协议向变频器写入控制指令和参数修改值,如修改变频器的运行频率、电机参数等。这两种协议相对简单,在一些小型自动化系统或对通信速率要求不高的场合应用较多。
施耐德 M580:M580 基于 EtherNet/IP 协议实现数据交换与通信。此协议以标准以太网技术为基础,能与现有的以太网设备良好兼容,支持多种数据类型,包括数字、模拟、文本等,可满足不同工业自动化应用的需求。通过该协议,M580 可与其他支持 EtherNet/IP 的设备,如工业机器人控制系统、过程控制系统等,进行高速、实时的数据传输,确保数据的可靠性和确定性。施耐德 M580 支持 Modbus 串口通讯协议,通过 RS-232 或 RS-485 串口与其他设备进行数据交互。这种方式适用于一些对数据传输速度要求不高、距离较近或设备本身只支持串口通信的场景。
五.总结
成功实现了西门子SINAMICS G120变频器与施耐德M580 PLC之间的数据双向传输。变频器能够将电机的运行状态数据,如转速、电流、转矩、温度等信息,通过Profinet 网络传输至网关,捷米特JM-PNM-TCP完成协议转换后,以MODBUS TCP协议格式将数据发送给施耐德M580 PLC。反之,M580 PLC也可将控制指令,如电机的目标转速、启停信号、转矩设定值等经网关转换后传送给变频器,从而实现了精确的远程控制与实时数据监控,数据传输的准确性与及时性得到有效保障,满足了工业生产过程中对设备控制与状态监测的要求。
相关文章:
Profinet转Modbus TCP西门子SINAMICS G120变频器与施耐德M580通讯案例
一. 案例背景 在复杂的工业自动化场景中,企业常常会采用不同品牌的设备来构建生产系统。西门子SINAMICS G120变频器以其高性能、高精度的速度和转矩控制功能,在电机驱动领域应用广泛。施耐德M580可编程逻辑控制器则以强大的逻辑控制和数据处理能力著称&a…...
机器学习实战笔记39-43树模型基础
目前最常用的是CART树: 评价标准:每次划分后子节点的纯度(即是否标签都为0/1),分为信息熵、基尼系数(越小则纯度越高)和分类误差 找划分节点的方法:CART树无需区分连续和离散变量&am…...
`uni.setClipboardData` 是 uni-app 提供的一个 API 设置系统剪贴板的内容
uni.setClipboardData是uni-app提供的一个API,用于设置系统剪贴板的内容。 使用说明: 使用此API可以将指定的文本内容复制到系统剪贴板,使用户能够在其他应用或页面中粘贴这些内容。 uni.setClipboardData({data: , // 需要复制的内容 suc…...
Android opengl 绘制矩形,宽高相同,不能显示为正方形,是怎么回事
在Android上使用OpenGL绘制矩形(或尝试显示为正方形)时,如果结果显示为不是正方形,可能有几个原因。以下是一些常见的因素及解决方法: 视口(Viewport)设置不当: OpenGL的视口定义了…...
网络安全开源组件
本文只是针对开源项目进行收集,如果后期在工作中碰到其他开源项目将进行更新。欢迎大家在评论区留言,您在工作碰到的开源项目。 祝您工作顺利,鹏程万里! 一、FW(防火墙) 1.1 pfSense pfSense项目是一个免费…...
【C++初阶】第5课—模版初阶
文章目录 1. 函数模版1.1 函数模版格式1.2 函数模版原理1.3 函数模版的实例化1.4 模版参数的匹配原则 2. 类模版 1. 函数模版 在讲函数模版之前先看一个例子 为了实现泛型编程,C提出了函数模版的概念函数模版与类型无关,在使用时被参数化,根据…...
【力扣热题100】[Java版] 刷题笔记-3. 无重复字符的最长子串
题目:3. 无重复字符的最长子串 给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。 解题思路 根据题目,只需要返回无重复字符串的最长子串的长度,所以我们不需要知道知道字符串内容是什么,在整个字符串 s 中&…...
无人机数据处理系统:原理与核心系统
一、数据处理系统的运行原理 数据获取:无人机在飞行过程中,通过搭载的传感器(如相机、激光雷达等)采集到各种类型的数据,例如图像、点云等。这些数据是后续处理和分析的基础。 数据传输:采集到的数据会通…...
Hadoop分布式文件系统(二)
目录 1. 引言1. Hadoop文件操作命令2. 部分常用的Hadoop FS Shell命令2.1 ls列出文件2.2 mkdir创建目录2.3 put上传文件2.4 cat查看文件2.5 get复制文件2.6 rm删除文件 3. Hadoop系统管理命令4. HDFS Java API 示例参考 1. 引言 大多数HDFS Shell命令的行为和对应的Unix Shell命…...
PortSwigger 原型污染
一、什么是原型污染 原型污染是一种 JavaScript 漏洞,它使攻击者能够向全局对象原型添加任意属性,然后这些属性可能被用户定义的对象继承。 二、JavaScript 原型和继承基础 1、原型 JavaScript 中的每个对象都链接到某种类型的另一个对象,称…...
雪花算法详解:分布式系统中高效唯一的ID生成方案
文章目录 原理与结构工作流程优势局限性应对高并发的方法适用场景 雪花算法(Snowflake Algorithm)是由Twitter开发的一种分布式全局唯一ID生成方案,旨在解决在分布式系统中快速、无冲突地生成唯一标识符的问题。它通过巧妙的设计,…...
[Redis#7] set | 命令 | 集合 | 用户画像 | UV
目录 1. 特点 2. 常用命令 2.1 普通命令 2.2 集合间操作 2.3. 命令小结 3.内部编码 4. 应用场景 1. 构造用户画像 2. 计算用户之间的共同好友 3. 统计 UV 1. 特点 集合类型也是保存多个字符串类型的元素的,和 list 类型不同的是: 无序性&…...
中介者模式 (Mediator Pattern)
文章目录 中介者模式 (Mediator Pattern)原理优点缺点示例代码场景描述1. 定义中介者接口2. 实现具体中介者3. 定义同事类接口4. 实现具体同事类5. 客户端代码输出结果 UML 类图使用场景小结 中介者模式 (Mediator Pattern) 中介者模式是一种 行为型设计模式,用来降…...
PVE 软路由单网口——VLAN 实践
从VLAN交换机出发,到PVE的Linux Bridge 、Linux VLAN,再到iKuai等软路由软件的设置,尽可能的了解VLAN设置细节,避免踩坑。 本文使用的快速切换CIDR的脚本 PVE 调试之“一键设置网络连接的以太网的CIDR“——“.PS1 脚本” 默认…...
搭建一个基于Web的文档管理系统,用于存储、共享和协作编辑文档
搭建一个基于Web的文档管理系统,用于存储、共享和协作编辑文档 本项目采用以下架构: NFS服务器: 负责存储文档资料。Web服务器: 负责提供文档访问和编辑功能。SELinux: 负责权限控制,确保文档安全。Git服务器: 负责存储文档版本历史&#x…...
【QT】控件8
1.QDial 通过调节旋钮位置来控制窗口的不透明度: void Widget::on_dial_valueChanged(int value) {qDebug()<<value;this->setWindowOpacity((double)value/100); }效果演示: 2.Date/Time Edit 计算两个日期的差值 ui界面设计 计算按钮按下…...
asyncio.to_thread 详解及示例代码
asyncio.to_thread 详解及示例代码 1. asyncio.to_thread() 简介函数签名返回值 2. 示例代码示例 1: 执行阻塞的 I/O 操作示例 2: 执行阻塞的 CPU 密集型操作 3. 注意事项4. 总结 在异步编程中,asyncio 是 Python 中用于编写异步代码的标准库。然而,有时…...
MYSQL字段变更
修改字段长度 ALTER TABLE tqt_sp_prod.t_receipt_order_head MODIFY COLUMN CUS_CONTRACT_CD VARCHAR(50) COMMENT 客户合同编号;添加varchar类型字段 AFTER 此处指在loc_cd字段后面 ALTER TABLE m_product ADD COLUMN FIXED_ASSET_NUM VARCHAR(100) DEFAULT NULL COMME…...
【通俗理解】步长和学习率在神经网络中是一回事吗?
【通俗理解】步长和学习率在神经网络中是一回事吗? 【核心结论】 步长(Step Size)和学习率(Learning Rate, LR)在神经网络中并不是同一个概念,但它们都关乎模型训练过程中的参数更新。 【通俗解释&#x…...
力扣-位运算-8【算法学习day.48】
前言 ###我做这类文章一个重要的目的还是给正在学习的大家提供方向和记录学习过程(例如想要掌握基础用法,该刷哪些题?)我的解析也不会做的非常详细,只会提供思路和一些关键点,力扣上的大佬们的题解质量是非…...
C++ 字符串中数字识别
【问题描述】 输入一个字符串,含有数字和非数字字符,如“sumabc234;while(abc700)tab{ass346;bssabc267;}”,将其中连续的数字作为一个整数,依次存放到一个数组nums中。例如,234放在nums[0],700放在nums[1…...
计算机毕业设计Python+卷积神经网络股票预测系统 股票推荐系统 股票可视化 股票数据分析 量化交易系统 股票爬虫 股票K线图 大数据毕业设计 AI
温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 作者简介:Java领…...
jvm-49-linux 服务器 cpu 使用率升高应该如何排查分析?
拓展阅读 JVM FULL GC 生产问题 I-多线程通用实现 JVM FULL GC 生产问题 II-如何定位内存泄露? 线程通用实现 JVM FULL GC 生产问题 III-多线程执行队列的封装实现,进一步抽象 jvisualvm java 性能分析工具 jvm-44-jvm 内存性能分析工具 Eclipse Me…...
FPGA存在的意义:为什么adc连续采样需要fpga来做,而不会直接用iic来实现
FPGA存在的意义:为什么adc连续采样需要fpga来做,而不会直接用iic来实现 原因ADS111x连续采样实现连续采样功能说明iic读取adc的数据速率 VS adc连续采样的速率adc连续采样的速率iic读取adc的数据速率结论分析 FPGA读取adc数据问题一:读取adc数…...
Web开发基础学习——HTML, CSS, JavaScript 的区别和联系
Web开发基础学习系列文章目录 第一章 基础知识学习之HTML, CSS, JavaScript 的区别和联系 文章目录 Web开发基础学习系列文章目录前言一、定义说白了,就是HTML负责网页的内容,CSS负责网页的格式,JS负责网页的交互。 二、 功能三、联系四、示…...
通义灵码走进北京大学创新课堂丨阿里云云原生 10 月产品月报
云原生月度动态 云原生是企业数字创新的最短路径。 《阿里云云原生每月动态》,从趋势热点、产品新功能、服务客户、开源与开发者动态等方面,为企业提供数字化的路径与指南。 趋势热点 🥇 通义灵码走进北京大学创新课堂,与 400…...
Facebook Messenger背后的技术架构:即时通讯的实现之道
Facebook Messenger,作为全球最受欢迎的即时通讯应用之一,每天承载着数十亿的消息交换。其背后支撑这一流畅通讯体验的技术架构,融合了大量先进的技术和创新的解决方案。本文将从技术角度,深入探讨Facebook Messenger如何实现即时…...
前端css实例
前端css实例 一、带条纹的表格 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>条纹样式的表格<…...
电阻改善信号完整性
1.为什么电路端接电阻能改善信号完整性 由于电信号在PCB上传输,因此在PCB设计中可以把PCB走线认为是信号的通道,当该通道的 物理结构(线宽,线到参考面的距离等)发生变化,特别是有一些突变时,都会…...
如何选择合适的主键id?
目录标题 MySQL主键一定是自增的吗?自增id、uuid、雪花算法 谁更合适?详细聊聊 UUID详细聊聊 雪花算法 在数据库设计中,选择合适的主键对于数据表的性能和数据完整性都非常重要。接下来,让我们探讨一下自增id、uuid和雪花算法&…...
OpenMP出现Stack Overflow及其疑问
今天对着《OpenMP核心技术指南》练习OpenMP,其中一个案例: #include <stdio.h> #include <math.h> #include <omp.h>#define ITER 100000000void main() {int i;double A[ITER];for (i 0; i < ITER; i)A[i] 2.0 * i;#pragma omp parallel{/…...
vscode查找函数调用
在 VS Code 中,要查找 C 语言函数的调用列表,有以下几种方法可以使用,具体取决于项目的规模和你的需求: 方法 1: 使用全局查找功能 步骤: 打开全局查找: 按 CtrlShiftF (Windows/Linux) 或 CmdShiftF (Ma…...
网络安全-网络安全审计
网络安全审计是为了确保网络系统的安全性和完整性,防范潜在的网络攻击和数据泄露风险。 审计步骤: 1.确定审计目标:明确审计的目的和范围,例如审计网络设备、服务器、应用程序或数据库等。 2.收集信息:收集审计范围…...
刷LeetCode hot100--1.哈希表
哈希表--查找一个元素在不在数组/map/set中 目前用到的数据结构: std::unordered_set哈希表无序否否O(1)O(1) std::unordered_map哈希表key无序key不可重复key不可修改O(1)O(1) 1. 两数之和 - 力扣(LeetCode) 30min 几个问题 1.原来想…...
鸿蒙生态崛起的机遇有什么
鸿蒙生态系统的崛起为各个领域带来了多个机遇,主要体现在以下几个方面: 智能设备的互联互通:鸿蒙系统旨在实现不同设备之间的无缝连接,为物联网(IoT)设备的发展提供了良好的基础。这将推动智能家居、智慧城…...
写入json和读取json文件
/// <summary> ///写入文件 /// </summary> /// <param name"Stns"></param> /// <returns></returns> public ActionResult WriteJsonFile(string Stns) { strin…...
【Java基础入门篇】前言
Java基础入门篇 本系列内容主要针对Java基础知识,总共包含四大部分内容: 变量、数据类型和运算符控制语句和递归算法面向对象和JVM底层分析数组和排序 学习需要具备: IDEA编译器 JDK1.8版本 写在前面 在Java入门的最开始,我们需…...
LangChain——管道提示词 缓存
管道提示词 管道提示词可以将多个提示组合在一起。当我们想要使用部分提示时,这会很有用。这里可以通过PipelinePrompt来完成。 PipelinePrompt由两部分组成: 最终提示:返回的最终提示;管道提示:元组列表,…...
LangGPT社区创始人云中江树:用热爱与坚持点燃实战营课堂
书生大模型实战营第 4 期正在火热进行中,在这里,我们见证了众多同学的成长与进步。今天,让我们一起走进第 4 期导师、结构化提示词 LangGPT 社区创始人云中江树的故事。他的故事不仅是对知识改变命运的生动诠释,更是一段关于热爱与…...
Admin.NET框架使用宝塔面板部署步骤
文章目录 Admin.NET框架使用宝塔面板部署步骤🎁框架介绍部署步骤1.Centos7 部署宝塔面板2.部署Admin.NET后端3.部署前端Web4.访问前端页面 Admin.NET框架使用宝塔面板部署步骤 🎁框架介绍 Admin.NET 是基于 .NET6 (Furion/SqlSugar) 实现的通用权限开发…...
18:(标准库)DMA二:DMA+串口收发数据
DMA串口收发数据 1、DMA串口发送数据2、DMA中断串口接收定长数据包3、串口空闲中断DMA接收不定长数据包4、串口空闲中断DMA接收不定长数据包DMA发送数据包 1、DMA串口发送数据 当串口的波特率大于115200时,可以通过DMA1进行数据搬运,以防止数据的丢失。如…...
Unity 导出 xcode 工程 并给 Info.plist 文件添加字段
Unity 导出 xcode 工程 并给 Info.plist 文件添加字段 在 Editor 文件夹下新建 xxx.cs 脚本 实现静态方法 [PostProcessBuild]public static void OnPostprocessBuild(BuildTarget target, string pathToBuiltProject){// Unity 导出 Xcode 工程自动调用这个方法 }例子 一 us…...
打造高质量技术文档的关键要素(结合MATLAB)
在技术的浩瀚海洋中,一份优秀的技术文档宛如精准的航海图。它不仅是知识传承的载体,也是团队协作的桥梁,更是产品成功的幕后英雄。打造出色的技术文档并非易事,以下将从多个方向探讨如何做到这一点。 文章目录 方向一:…...
C语言-数组
数组的创建 数组结构式 数组类型 数组名称 数组大小 内容 列如 char Arr[3]{1,2,3} int Arr[3]{1,2,3} 注意:在C99之前,【】中需要一个常量才可以 数组的初始化 初始化就是给它赋值,初始化分为完全初始化和非完全初始化 完全初始化…...
hhdb数据库介绍(10-19)
监控 智能物理拓扑 物理拓扑图主要以服务器为视角展示集群组件与服务器的所属关系,同时可查看服务器资源的使用情况以及各集群组件服务运行状态。使用前需保证为集群服务器配置了可用的SSH连接信息,否则只能查看当前服务器与集群组件的所属关系&#x…...
AI开发:生成式对抗网络入门 模型训练和图像生成 -Python 机器学习
阶段1:GAN是个啥? 生成式对抗网络(Generative Adversarial Networks, GAN),名字听着就有点“对抗”的意思,没错!它其实是两个神经网络互相斗智斗勇的游戏: 生成器(Gene…...
68 mysql 的 临键锁
前言 我们这里来说的就是 我们在 mysql 这边常见的 一种锁, 行临键锁 虽然 在平时我们用到的不是很多, 我们这里 主要是 讲一下 它的主要的触发的场景 行临键锁 等价于 行锁 间隙锁, 行间隙锁是一个 左开右开的区间, 行临键锁 是一个左开右闭的区间 但是 它 和 行锁的差异…...
(十一)Python3 接口自动化测试,Pytest-Allure报告的使用
(十一)Python3 接口自动化测试,Pytest-Allure报告的使用 1、安装和使用 1、安装pytest和allure-pytest插件: pip install pytest allure-pytest 2、在你的pytest测试用例中使用allure装饰器或者上下文管理器来生成报告。 例如,你可以使用@allure.feature装饰器来标记特性…...
【Rust 学习笔记】Rust 基础数据类型介绍(一)
博主未授权任何人或组织机构转载博主任何原创文章,感谢各位对原创的支持! 博主链接 博客内容主要围绕: 5G/6G协议讲解 高级C语言讲解 Rust语言讲解 文章目录 Rust 基础数据类型介绍(一)一、固定宽…...
深入理解Oracle DB的锁和闩
1. 引言 本文深入介绍Oracle DB的锁和闩。 2. Oracle DB 锁的基本概念 2.1 定义与作用 锁是 Oracle 数据库用于控制并发访问的一种机制。它用于防止多个事务同时对同一数据进行不一致的操作,确保数据的完整性和一致性。例如,当一个事务正在更新一行数…...