EtherCAT开源主站 IGH 介绍及主站伺服控制过程

目录

前言

IGH EtherCAT主站介绍

主要特点和功能

使用场景

SOEM 主站介绍

SOEM 的特点和功能

SOEM 的使用场景

IGH 主站 和 SOEM对比

1. 功能和复杂性

2. 资源消耗和移植性

3. 使用场景

EtherCAT 通信原理

EtherCAT主站控制伺服过程 

位置规划模式

原点复归模式

PLC与从站伺服驱动器的控制

软件主站与从站伺服驱动器的控制

相关概念介绍

对象字典

服务数据对象(SDO)

过程数据对象(PDO)

CiA 402 规范

其他

前言

EtherCAT全称EtherNet Control Automation Technology,是由德国倍福(Beckhoff)公司提出的一种实时以太网技术,用于工业自动化的现场总线通信协议。EtherCAT是一种开放但不开源的技术,从站使用专属ASIC芯片或是FPGA的形式。

IGH EtherCAT是一种EtherCAT协议主站协议栈的开源实现,是一个完全符合EtherCAT标准的库,能够在实时操作系统上运行。与传统总线相比,EtherCAT的优点在于减少了总线通信的延迟时间,从而提高了实时性。IGH EtherCAT实现了这一协议,并对其进行了优化和改进。

EtherCAT的主站开发是基于EtherCAT工控制系统的开发中非常重要的环节。EtherLab的the IgH EtherCAT® Master是目前常见的一种开源的主站协议栈。IgH EtherCAT Master比SOEM复杂一些,但对EtherCAT的实现更为完整。

目前用的最多的开源ethercat主站是igh和soem。igh主站功能更多,结构较为复杂。soem功能相对没有那么完善,实现更为简单一些。主站实现在带有处理器的硬件平台上,带有完整或较为完整的操作系统时用igh;如果主站实现在单片机平台上,则推荐使用soem。igh主站依赖操作系统,而soem很容易可以移植到单片机上。

SOME支持Windows和Linux平台,功能相对简单。IGH的EtherCATMaster基于Linux平台,从发布至今已经将近10年并进行了多次更新,功能相对完善,还支持RTAI、RT-Preempt、Xenomai等多种实时扩展,并且支持DC分布时钟,支持COE、SOE、EOE等多种通信协议。

IGH的EtherCAT 主站由三部分组成,包括主站协议栈、控制应用程序、支持EtherCAT的网卡驱动模块。IGH提供了两种网卡驱动方式:generic驱动和native驱动,generic驱动适用于所有网卡,通过调用Linux网络协议栈实现数据包的收发,并不能直接对硬件进行操作,实时性较难保证。native驱动针对主站支持的一些特定网卡,可以对底层硬件进行操作,可以支持RATI、Xenomai等实时扩展,可以保证EtherCAT主站的实时性。

IGH EtherCAT主站介绍

IGH EtherCAT 主站(IgH EtherCAT Master for Linux)是一个专门针对 Linux 平台的 EtherCAT 主站实现。它是一个开源项目,旨在为 Linux 系统提供完整的 EtherCAT 主站功能。

IgH的官网:http://www.etherlab.org/en/ethercat/index.php

EtherLab / EtherCAT Master · GitLab

以下是 IGH EtherCAT Master的一些特点和功能:

主要特点和功能

  1. 适用于 Linux 平台:IGH EtherCAT 主站专门设计用于在 Linux 操作系统上实现 EtherCAT 主站功能。它利用 Linux 内核的实时性能和特性来实现对实时控制系统的支持。

  2. 完整的 EtherCAT 主站功能:IGH EtherCAT 主站支持 EtherCAT 协议的完整功能和特性,包括实时数据通信、分布式时钟同步、监视和配置等。

  3. 高性能和实时性:基于 Linux 实时内核的特性,IGH EtherCAT 主站能够提供可靠的实时通信和控制能力,适用于实时控制系统的要求。

  4. 开源和免费:IGH EtherCAT 主站是开源项目,基于 GPL 协议发布,用户可以免费使用、修改和定制它。

  5. 支持各种 EtherCAT 从站设备:IGH EtherCAT 主站能够与各种符合 EtherCAT 标准的从站设备进行通信,为用户提供了在 Linux 平台上实现 EtherCAT 控制网络的解决方案。

使用场景

IGH EtherCAT 主站主要适用于对实时控制系统有高要求的应用场景。它能够提供高性能、实时性和完整的 EtherCAT 功能,在需要在 Linux 系统中实现 EtherCAT 控制网络的工业自动化、机器人控制、运动控制等领域发挥重要作用。

此外,由于其开源和免费的特性,IGH EtherCAT 主站还可以被广泛应用于研究和教育领域,为从业人员和学生提供了一个了解和探索 EtherCAT 技术的平台,同时市场上也有很多基于它的专利和市场商业应用。

SOEM 主站介绍

SOEM(Simple Open EtherCAT Master)是一种基于 EtherCAT 协议的开源主站实现,专为嵌入式系统和实时控制应用而设计。SOEM 的主要目标是提供一个轻量级、简单易用的 EtherCAT 主站解决方案,适用于资源受限的嵌入式平台和实时控制系统。

SOEM 的特点和功能

  1. 轻量级实现:SOEM 设计简单、轻量级,适用于资源受限的嵌入式系统和实时控制应用。它的设计旨在降低系统资源消耗,以便在嵌入式设备上运行。

  2. 容易移植:由于 SOEM 的设计简单,它相对容易移植到各种硬件平台,包括单片机等资源受限的设备上。这使得 SOEM 成为嵌入式系统和实时控制领域中的一种受欢迎的 EtherCAT 主站选择。

  3. 适用于实时控制:SOEM 专注于提供对实时控制系统的支持,其设计目标是确保稳定的实时通信和控制能力。

  4. 开源:SOEM 是开源项目,基于 LGPL 协议发布,这意味着它可以免费用于商业和非商业项目中,并且用户可以根据需要进行修改和定制。

SOEM 的使用场景

SOEM 主要适用于嵌入式系统和实时控制应用场景,通常由需要在资源受限的嵌入式平台或实时控制系统中实现 EtherCAT 主站功能的开发人员和工程师使用。由于其轻量级和易于移植的特点,SOEM 更适合于单片机等资源受限的处理器平台上使用。

由于 SOEM 对资源的精简使用和易于移植性,它在需要实现 EtherCAT 主站功能的嵌入式系统和实时控制应用中具有一定的优势。然而,需要同时注意的是,SOEM 的功能相对简化,可能不如其他更复杂的 EtherCAT 主站实现(如 IGH EtherCAT 主站)提供丰富的特性和功能。

IGH 主站 和 SOEM对比

IGH EtherCAT 主站(IgH EtherCAT Master for Linux)和 SOEM(Simple Open EtherCAT Master)都是开源的 EtherCAT 主站实现,用于在各种平台上实现 EtherCAT 主站功能。以下是它们之间的一些对比:

1. 功能和复杂性

  • IGH EtherCAT 主站

    • 功能较为丰富,支持 EtherCAT 主站的各种特性和功能。
    • 结构相对复杂,适用于复杂的系统和对 EtherCAT 功能有较高要求的应用场景。
    • 针对 Linux 平台设计,依赖于 Linux 操作系统的功能和特性。
  • SOEM

    • 设计简单、轻量级,专注于提供基本的 EtherCAT 主站功能。
    • 适用于嵌入式系统和实时控制应用,资源消耗较低,易于移植到不同的硬件平台。
    • 对实时控制系统提供基本但稳定的 EtherCAT 支持。

2. 资源消耗和移植性

  • IGH EtherCAT 主站

    • 由于功能较为丰富且结构复杂,可能会消耗更多系统资源,对硬件和操作系统可能有更高的要求。
    • 针对 Linux 平台设计,对于在 Linux 系统中实现 EtherCAT 主站功能提供了良好的支持。
  • SOEM

    • 设计目标是轻量级和易于移植,适用于资源受限的嵌入式系统和实时控制应用。
    • 容易移植到不同的硬件平台,包括单片机等资源受限的设备。
    • 对实时控制系统提供基本但稳定的 EtherCAT 支持。

3. 使用场景

  • IGH EtherCAT 主站

    • 适用于需要实现 EtherCAT 主站功能并且对功能和特性有较高要求的复杂系统,通常是在带有处理器的硬件平台和完整的操作系统上使用。
  • SOEM

    • 适用于嵌入式系统和实时控制应用场景,在单片机等资源受限的平台上使用,例如实时控制系统和嵌入式设备。

EtherCAT 通信原理

传统的以太网设备组成的网络中,每个设备都能接收到网络中的所有数据包,指定设备的有用信息必须在应用层逐一提取,该方式严重影响了应用层执行效率。

EtherCAT 技术突破了传统以太网解决方案的系统限制,不必再像其它以太网那样每个连接点都接收以太网中所有的数据包。当数据帧通过每一个设备时,EtherCAT 从站设备在报文经过其节点时读取相应的编址数据。同样,输入数据可以在报文通过时插入至报文中。

在帧被传递(几纳秒的延迟)过去的时候,从站会识别出相关命令,并进行处理。此过程是在从站控制器中通过硬件实现的,因此与协议栈处理器性能无关。由于以太网帧到达许多设备的数据,在发送和接收方向,可用的数据速率增加至超过 90%,对 100BaseTX 全双工功能得到更充分的利用,使> 100 MBit/S 的有效数据率(> 2×100 MBit/S 90%)可以实现。 

EtherCAT主站控制伺服过程 

要实现使用EtherCAT协议,主站对从站的伺服驱动器进行控制,常见的有几种方式。如使用PLC,运动控制卡,或者工业PC,软件主站或者嵌入式系统等。

EtherCAT 主站要通过写参数和读设备状态/信息来控制伺服驱动器。为了达到这个目的,伺服驱动器定义了可以读写的参数和只读的状态值,这些参数和状态的集合就是对象字典。

伺服驱动器对象字典以标准化的方式包含 DSP402 及 CoE 相关的所有数据对象。它是伺服驱动器参数数据结构的集合。

COE 协议

CANopen Over EtherCAT 协议被称为COE,它的架构为:

伺服驱动器厂家提供EtherCAT 的 XML 文件,是一种用于描述设备对象字典(Object Dictionary)的文件,它提供了设备的参数配置、通信接口和数据交换方式的描述。对象字典是一种用于定义设备参数、状态和配置的数据结构的机制。XML 文件中包含了设备的数据对象、参数配置、映射方式以及其他相关信息。

XML 文件描述设备所支持的对象字典,以便于 EtherCAT 主站或者其他控制设备可以了解和访问设备的数据。在 EtherCAT 网络中,各个从站设备通过对象字典的描述,向主站和其他从站提供了自己的数据结构和通信能力。

伺服驱动器对象字典是主站与它通讯的接口,EtherCAT 主站实现对伺服驱动器的运动控制功能,都是通过对象字典这个接口完成的。 

伺服在 EtherCAT 模式下,各项由 CiA DS402 所规范的操作模式 。

以下以常见的定点运动和回零运动过程举例:

位置规划模式

伺服驱动器接收到由上位机传送的位置命令后,驱动器控制伺服电机到达目标位置。在位置规划模式下,上位机仅在一开始时告知驱动器目标位置、速度命令与加减速等相关设定。从命令触发到到达目标位置这中间的运动规划,都是由驱动器内部的运动命令产生器去执行。下图为驱动器的位置规划模式架构图:

原点复归模式

原点复归模式,即回零模式。在完成原点复归后,驱动器的坐标系随即建立,驱动器可开始执行上位机所下达的位置命令。

PLC与从站伺服驱动器的控制

选择支持EtherCAT协议的PLC作为主控单元,PLC 通过 EtherCAT 协议与伺服驱动器进行通信。 PLC 作为 EtherCAT 的主站,负责协调 EtherCAT 网络中的所有从站设备,包括伺服驱动器。

PLC 中集成了 EtherCAT 的主站实现,通常使用特定的编程语言或者软件来实现对伺服驱动器的控制。 PLC 程序可以通过 EtherCAT 协议,向伺服驱动器发送命令并接收其状态和反馈信息。

PLC 通过对伺服驱动器的对象字典进行解析,可以实现对伺服驱动器的配置和控制,以及获取状态信息。

PLC 通过周期性的发送 EtherCAT 帧来控制伺服驱动器的动作。 PLC 会定期地向伺服驱动器发送控制指令(例如位置、速度、加速度等指令),同时将接收和处理伺服驱动器的状态和反馈信息。

对于一些 PLC(特别是工业级 PLC)来说,可能会提供专门的运动控制模块或者函数库,以便实现更高级的运动控制功能,比如插补运动。这些模块或者函数库可以辅助用户实现更复杂的运动控制功能,比如多轴插补运动、圆弧插补、轨迹规划等。

软件主站与从站伺服驱动器的控制

这个就需要开发了,开发EtherCAT主站应用程序,有一定的门槛和含金量。需要理解基于EtherCAT的从站伺服驱动器应遵循的标准规范,尤其是CiA402规范,CiA402是针对伺服驱动器控制的CANopen应用规范,涵盖了运动控制、状态管理、参数设置等方面的要求。还需要熟悉伺服驱动器的参数和控制指令,包括速度控制、位置控制、电流控制等。这些参数和指令将会在使用API接口控制伺服驱动器时用到。

使用IGH主站通过api接口,控制从站伺服驱动器,实现对从站的访问和设置,如设置从站地址、显示总线配置、显示PDO数据、读写SDO参数等。

IGH的应用程序接口为应用程序提供访问EtherCAT主站的功能和数据结构。 接口包含在头文件include / ecrt.h中。

开发EtherCAT主站应用程序大致包括配置软件交互模块、配置参数解析模块、总线扫描模块、主站业务管理模块、过程数据交互模块等。

配置软件交互模块提供上位机配置软件网络配置、主/从站操作功能。在主站进入正常工作流程前,用户通过配置软件把现场总线的网络拓朴结构、主站配置参数、从站配置参数、PDO对象映射等下发给主站,本模块将配置参数保存到文件中,并给主平配置解析模块下发信号量。同时本模块也响应配置软件对主/从站操作命令、状态信息获取命令、信息监控等。

配置参数解析模块功能单一,主要解析主站、从站配置参数。接收到配置软件交互模块信号量后,本模块从配置文件中读取网络配置参数,并进行动态解析,将解析到的主/从站配置信息、SDO/PDO映射等信息保存到全局变量中,然后给主站业务管理模块发送信量。若解析参数出现异常,则将错误信息传递给主站业务管理模块。

总线扫描模块主要功能是对现场EtherCAT总线网络进行扫描。本模块接收到配置软件交互模块信号量后,启动网络总路线扫描,获取总线网络拓扑结构及从站信息,将上述信息传递给配置软件交互模块及主站业务管理模块。

主站业务管理模块为应用程序的核心。处理的业务包括主站创建、主/从站参数协议栈配置、从站启动参数配置、从站同步管理器配置、系统异常错误处理等。本模块接收到主站配置解析模块信号量后,首先调用ecrt_requet_master()函数申请主站,然后调用ecrt_master_create_domain()函数创建domain数据域,调用ecrt_master_slave_config()、ecrt_slave_config_pdos()等函数配置从站PDO映射;调用ecrt_slave_config_dc()配置从站DC同步时钟。EtherCAT总线配置完成后,调用ecrt_master_activate()激活主站,并启动过程数据交互模块,进入主站业务循环处理,状态信息更新及系统异常处理。

过程数据交互模块在主站进入正常业务处理后启动,处理的业务包括过程数据接收、过程数据处理、主/从站状态检测、主/从站DC时钟同步、过程数据发送。本模块调用高精度定时函数clock_nanosleep()实现任务的精确定时,调用ecrt_master_receive()函数接收网络数据,调用ecrt_domain_process()函数处理过程数据,调用ecrt_master_sync_slave_clocks()函数设置DC同步时钟,调用ecrt_master_send()发送网络数据,从而实现EtherCAT网络数据的周期处理。

一些三方公司也提供的有开发板或开发包,通过向linux内核打实时补丁和使用IGH软件主站,简化伺服运动控制的开发。

相关概念介绍

在 EtherCAT 中,对象字典(Object Dictionary)、PDO(Process Data Objects)和 SDO(Service Data Objects)这些概念都是源自 CANopen 协议,并在 EtherCAT 中得到了应用。

CANopen 是一种用于控制系统中各种设备之间通信和数据交换的高层协议,而 CiA 402 是作为 CANopen 的一个特定设备配置规范存在的,主要用于定义运动控制设备的对象字典和通信机制。

在 EtherCAT 中,可以使用 CiA 402 的规范来定义设备的对象字典、PDO 和 SDO,以便于使用 EtherCAT 实现运动控制设备和系统的开发和集成。

对象字典和通讯功能可以合称为 COE 部分。

核心部分:对象字典——通讯功能和应用部分沟通的桥梁。

关键部分:通讯功能——通信规则(SDO、PDO 等)的实现。

重点部分:应用部分——决定了设备的具体功用,例如驱动器、IO 模块。

对象字典

对象字典是一种用于定义设备数据对象的格式和布局的机制。在 EtherCAT 中,对象字典描述了设备的数据结构、寄存器映射、参数配置等信息,以便其他设备或主站了解和访问这些数据。对象字典通常以标准格式进行定义,以确保设备之间能够进行正确的通信和交换数据。

服务数据对象(SDO)

PDO 和 SDO 是用于数据交换的机制,通常在实时通信中使用。PDO 用于在实时数据交换过程中传输周期性的过程数据,而 SDO 用于在非周期性数据交换过程中提供配置、参数设置和状态查询等服务。通过这些机制, EtherCAT 设备能够在实时通信中进行数据交换和设备控制。

伺服系统支持 SDO 服务,EtherCAT 主站可以通过使用 SDO 读写 驱动器伺服系统的对象字典,从而配置、监控、控制伺服系统。

SDO 采用的是客户端/服务器模型;SDO 操作中主站对应为客户端,伺服驱动器从站为服务器,所有传输都必须是客户端发起,服务器响应。

在传统 CANopen DS301 模式下,SDO 协议为了匹配 CAN 报文数据长度,一次只能传输 8 个字节。在 COE 增强模式下仅扩大有效载荷数据而不改变协议首部;在这种方式下,SDO 协议使用更大数据长度的邮箱,从而提高了大数据的传输效率。

过程数据对象(PDO)

PDO 一般用于实时的数据更新;其分为接收 PDO(RXPDO)和发送 PDO(TXPDO),前者的数据流方向是主站到从站,后者则是从站到主站。

伺服驱动器 的 PDO 功能支持同步周期的刷新方式,也支持非周期的更新方式。当主站选择为分布时钟同步模式时,PDO 将按同步周期更新;如果选择自由运行模式,那么 PDO 数据的更新将是非周期性的。

CiA 402 规范

CiA 402 是由CAN in Automation(CiA)组织发布的针对运动控制设备的 CANopen 设备配置和应用规范。CiA 402 定义了一系列对象字典、PDO 映射和 SDO 服务,以便于控制运动设备、配置参数和获取状态信息。该规范是专门面向运动控制设备的,包括驱动器、伺服控制器等。

其他资源

基于IMX8、ZYNQ、T3平台的IgH EtherCAT主站开发案例分享

Igh1.5.2 etherCAT接口分析教程 - 知乎

一种基于IGH开源框架改进的EtherCAT通信主站方法及系统与流程

IgH EtherCAT主站开发案例分享——基于NXP i.MX 8M Mini - 知乎

https://www.cnblogs.com/wsg1100/p/14433632.html

基于i.MX6处理器的EtherCAT主站的设计-伺服与运动控制-中国传动网

[工业互联-23]:EtherCat从站 - EtherCAT协议栈与工作原理, 软硬件解决方案-CSDN博客

【EtherCAT】4.实现一个成熟的从站 - 知乎

免费开源!IgH EtherCAT控制伺服电机方法分享!|linux|ethercat|驱动器_网易订阅

IGH_Master主站配置驱动伺服电机和变频器总结

EtherCAT 伺服控制功能块实现_ethercat伺服控制-CSDN博客

https://blog.csdn.net/gufuguang/category_11310794.html

https://patents.google.com/patent/CN110311846A/zh

GitHub - ahoarau/ethercat-drivers: r8169 EtherCAT driver for IgH EtherCAT Master for Linux

https://docs.etherlab.org/ethercat/1.5/pdf/ethercat_doc.pdf

https://patents.google.com/patent/CN115378761B/zh

https://www.cnblogs.com/pwl999/p/15534998.html

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ASP.NET Mvc+FFmpeg+Video实现视频转码

目录 首先,做了视频上传的页面: FFmpeg:视频转码 FFmpegHelper工作类: 后台控制器代码: 前端视图代码: 参考文章: 首先,做了视频上传的页面: 借鉴了这篇文章 ASP.…

应用层_HTTPHTTPS

在应用层中,协议一般是程序员定制的,但现在已经有了许多非常好用的协议,我们可以直接参考使用。其中http和https便是其中最常用的协议之一。 一.HTTP 超文本传输协议(Hypertext Transfer Protocol,HTTP)…

腾讯春招后端一面(八股篇)

前言 前几天在网上发了腾讯面试官问的一些问题,好多小伙伴关注,今天对这些问题写个具体答案,博主好久没看八股了,正好复习一下。 面试手撕了三道算法,这部分之后更,喜欢的小伙伴可以留意一下我的账号。 1…

【C语言】—— 指针二 : 初识指针(下)

【C语言】——函数栈帧 一、 c o n s t const const 修饰指针1.1、 c o n s t const const 修饰变量1.2、 c o n s t const const 修饰指针 二、野指针2.1野指针的成因(1)指针未初始化(2)指针越界访问(3)指…

HNU-计算机系统-实验1-原型机vspm1.0-(二周目玩家视角)

前言 二周目玩家,浅试一下这次的原型机实验。总体感觉跟上一年的很相似,但还是有所不同。 可以比较明显地感觉到,这个界面越来越好看了,可操作与可探索的功能也越来越多了。 我们HNU的SYSTEM真的越来越好了!&#x…

5 个适用于 Windows 10 和 11 的最佳 PDF 转 Word 转换器

PDF 文件是共享文档的首选格式,但是此类文件存在一些限制,导致难以修改或编辑。因此,您可能会发现自己正在寻找一种将 PDF 文件转换为 Word 或其他可编辑格式的方法。 有许多不同的 PDF 转换器,每种转换器提供的功能略有不同。本…

个人简历主页搭建系列-03:Hexo+Github Pages 介绍,框架配置

今天的更新内容主要是了解为什么选择这个网站搭建方案,以及一些前置软件的安装。 Why Hexo? 首先我们了解一下几种简单的网站框架搭建方案,看看对于搭建简历网站的需求哪个更合适。 在 BuiltWith(网站技术分析工具)上我们可以…

微信小程序(一)

WebView app.是全局配置&#xff0c;app.json是全局配置文件&#xff0c;在页面的.json配置文件中的配置会覆盖我们全局的配置 快捷键&#xff1a; .box 敲回车 ----- <view class"box"></view> .row*8 敲回车&#xff1a; .row{$}*8 敲回车 案例1&…

信雅纳网络测试的二次开发集成:XOA(Xena Open-Source Automation)开源自动化测试

目录 XOA是什么 XOA CLI XOA Python API ​XOA Python Test Suite/测试套件 XOA Converter Source Code XOA是什么 XOA&#xff08;Xena Open-Source Automation&#xff09;是一个开源的测试自动化框架&#xff0c;追求“高效、易用、灵活”的跨操作系统的开发框架。能…

Android SystemServer进程解析

SystemServer进程在android系统中占了举足轻重的地位&#xff0c;系统的所有服务和SystemUI都是由它启动。 一、SystemServer进程主函数流程 1、主函数三部曲 //frameworks/base/services/java/com/android/server/SystemServer.java /** * The main entry point from zy…

Docker使用(四)Docker常见问题分析和解决收集整理

Docker使用(四)Docker常见问题分析和解决收集整理 五、常见问题 1、 启动异常 【描述】&#xff1a; 【分析】&#xff1a;[rootlocalhost ~]# systemctl status docker 【解决】&#xff1a; &#xff08;1&#xff09;卸载后重新安装&#xff0c;不能解决这个问题。 …

基于正点原子潘多拉STM32L496开发板的简易示波器

一、前言 由于需要对ADC采样性能的评估&#xff0c;重点在于对原波形的拟合性能。 考虑到数据的直观性&#xff0c;本来计划采集后使用串口导出&#xff0c;并用图形做数据拟合&#xff0c;但是这样做的效率低下&#xff0c;不符合实时观察的需要&#xff0c;于是将开发板的屏幕…

oracle基础-子查询 备份

一、什么是子查询 子查询是在SQL语句内的另外一条select语句&#xff0c;也被称为内查询活着内select语句。在select、insert、update、delete命令中允许是一个表达式的地方都可以包含子查询&#xff0c;子查询也可以包含在另一个子查询中。 【例1.1】在Scott模式下&#xff0…

AJAX学习(四)

版权声明 本文章来源于B站上的某马课程&#xff0c;由本人整理&#xff0c;仅供学习交流使用。如涉及侵权问题&#xff0c;请立即与本人联系&#xff0c;本人将积极配合删除相关内容。感谢理解和支持&#xff0c;本人致力于维护原创作品的权益&#xff0c;共同营造一个尊重知识…

github 中的java前后端项目整合到本地运行

前言: 本文章中所有内容仅供学习交流使用&#xff0c;不用于其他任何目的&#xff0c;不提供完整代码&#xff0c;抓包内容、敏感网址、数据接口等均已做脱敏处理&#xff0c;严禁用于商业用途和非法用途&#xff0c;否则由此产生的一切后果均与作者无关&#xff01; 本文章未…

百度paddleocr GPU版部署

显卡&#xff1a;NVIDIA GeForce RTX 4070&#xff0c;Nvidia驱动程序版本&#xff1a;537.13 Nvidia驱动程序能支持的最高cuda版本&#xff1a;12.2.138 Python&#xff1a;python3.10.11。试过python3.12&#xff0c;安装paddleocr失败&#xff0c;找不到相关模块。 飞桨版本…

使用 Postman 批量发送请求的最佳实践

背景 最近写了几个接口&#xff1a; 获取 books 的接口获取 likes 的接口获取 collections 的接口 但是我还是不放心&#xff0c;因为这些接口到底稳不稳定呢&#xff1f;上线后有没有隐患呢&#xff1f;所以我想做一个批量发送接口模拟~ 但是想要做到批量发送接口&#xf…

每日五道java面试题之springMVC篇(四)

目录&#xff1a; 第一题. Spring MVC怎么样设定重定向和转发的&#xff1f;第二题.Spring MVC怎么和AJAX相互调用的&#xff1f;第三题. 如何解决POST请求中文乱码问题&#xff0c;GET的又如何处理呢&#xff1f;第四题. Spring MVC的异常处理&#xff1f;第五题. 如果在拦截请…

hcia复习总结5

路由表 路由器的转发原理&#xff1a;当一个数据包进入路由器&#xff0c;路由器将基于数据包中的 目标IP地址查看本地的 路由表 。如果路由表中存在记录&#xff0c;则将 无条件 按照 路由表记录执行&#xff1b;如果没有记录&#xff0c;则将该数据包直接丢弃。 <aa…

SpringMVC 02

这里先附上前一篇的地址,以上系列均为博主的学习路线,仅供参考 初识Spring MVC-CSDN博客 下面我们从SpringMVC传递数组开始讲起 1.传递数组 传递数组的方式和传递普通变量的方式其实是相同的,下面我们附上传递的图片 RequestMapping("/r7")public String r1(String[…