0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

平衡速度与优先级:为多样化的实时需求打造嵌入式网络(1)——选择正确的实时范围

虹科智能自动化 2023-10-25 08:04 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

以往与实时通信相关的文章往往关注一些细节——如何从嵌入式系统CAN、CANopen或实时通信系统的某个特定方面实现“最佳”。考虑这些具体细节如何应用于更广泛的应用及其独特性要求至关重要,而这可能会导致文章的读者质疑是否正确实现了这些功能而导致不确定性。对此,笔者认为如果您的系统所需的响应速度在100ms范围内,那么您无需详细检查每一个增加一毫秒或更短延迟的原因。

举个例子,在CAN通信中,冲突是通过优先级来解决的。然而,在没有冲突的情况下,即使是最低优先级的帧也可以立即访问网络。因此,如果您的系统只有50%或更少的总线负载,并且采用了一些机制,没有设备可以产生连续的高优先级流量,那么关于优化优先级或按优先级管理软件处理程序的讨论可能纯粹是理论上的,没有重大的实际应用。

安全性越发重要。在计时行为的背景下,必须认识到,如果您的信号需要安全或保障措施或两者兼而有之,则需要额外的元数据来保护原始信号数据。这可能包括冗余信息、计数器、时间戳和各种加密校验。

因此,本系列文章将从“选择正确的实时范围”出发,审视应用程序的要并了解我们正在运行的“大概范围”,然后在第二部分的“实时通信系统的需求”中着眼于不同的应用程序所需的不同时间范围;在第三部分的“基于CAN总线的系统的时间动态”中,我们将我们的发现引用于CAN和CANopen,并出了有关配置通信以满足之前发现的需求的建议,最后则是从理论到实践,完成一次CANopen源代码配置并展示该过程中通常可用的优化选项。


嵌入式系统领域,实时应用占据着至关重要的地位。这些应用程序的特点是要求在特定时间范围内处理输入并产生输出。它们提供的结果的准确性不仅取决于其逻辑正确性,还取决于其响应的精确时间。当这些系统与物理世界交互时,风险可能很高,通常涉及人类安全、产品质量或高效的系统运行。因此,这些应用程序的响应能力成为其设计的基本方面。

然而,“在特定时间范围内”可能因应用程序的不同而有很大不同。对于大型船舶的舵和推力控制,这可能是一秒或更长时间。对于食品加工工厂的高速分拣和包装单元来说,可能只有几毫秒。这两个案例已经很好地表明了对安全性的不同要求:船舶上的“慢速”命令需要比食品加工工厂那些进行排序的命令更可靠(或更安全)。

实现实时应用程序的具体挑战通常取决于所涉及的通信渠道。那输入和输出是否直接连接到主处理单元,或者是否需要嵌入式通信网络

随着应用程序变得越来越复杂并且地理分布越来越广,直接连接到每个输入和输出是不切实际的。相反,许多实时系统依赖于远程连接。传感器、执行器和其他设备可能远离中央处理单元,因此它们之间需要某种形式的通信。通常,这也意味着数据必须在所需的时间范围内传输两次:从传感器到处理单元的输入,然后是处理单元到执行器的输出。所有这些都带来了额外的挑战和考虑因素:通信渠道会带来延迟,或潜在的数据损坏或丢失。实时系统的设计者现在必须考虑这些因素,确保所使用的通信方法仍然能够满足系统的实时要求。此外,这些系统现在必须能够处理多个(通常是同时发生的)数据流,并根据这些流的紧急性和重要性来管理这些数据流的优先级。

实时应用的复杂性和要求日益提高,加上处理单元和输入/输出设备之间的距离越来越大,使得实时系统的设计成为一项多方面且具有挑战性的工作。这样的发展需要对通信协议、网络拓扑和错误处理机制有更深入的了解。只有解决所有这些因素,我们才能确保实时系统继续满足对其提出的严格要求。

在深入设计过程之前,第一个也是最关键的问题是确定特定应用所需的时间范围。一旦系统完成设计和开发,缩短时间框架几乎是不可能的,因为许多设计决策都是基于初始时间框架考虑的。在为系统的实时响应能力确定了所需的时间范围后,建议您花一些额外的时间来彻底检查它,因为以后对既定的时间框架进行更改可能会付出高昂的代价。

如果您的应用程序要求将“整个输入到输出”纳入计算中,那么您需要将多个时间相加:输入传感器收集输入并准备传输的处理时间、传输延迟、在主处理器中的处理时间(接收输入、处理它们并准备传输到输出)、在输出上接收数据并实际应用它的处理延迟。

1

响应超过1秒的应用

对于在单秒或多秒的时间范围内运行的应用程序,系统通常不需要特殊的预防措施。这是因为这些应用程序的延迟容忍度明显大于通信协议引入的典型延迟。有趣的是,即使控制代码在较慢的非实时操作系统上执行,也可以实现实时操作。如果操作系统承担过多的并发操作,可能会出现挑战,但这些情况通常是例外而不是常态。

太阳能电池板的太阳跟踪:具有跟踪功能的太阳能电池板可根据太阳的位置进行调整。在此应用中,数秒到数分钟的延迟是典型的,即使偶尔有控制延迟,也能确保最佳的能量捕获。

HVAC系统:供暖、通风和空调系统通常包含传感器来调节温度和空气质量。虽然即时调整体验感更好,但几秒钟的延迟通常在可接受的范围内。

采矿设备:在采矿作业中,输送机和大型挖掘机等大型机械需要数秒的时间来启动或停止。考虑到规模,系统响应延迟1秒是可以接受的,特别是对于非关键调整。然而,紧急关闭等安全关键功能将有更严格的要求。

海事应用:鉴于大型海船的运动动态相对较慢,数据处理和导航的一秒延迟是可以接受的。

海底作业:在深海系统中,可靠性是首要任务。在管理海底操作(从管道控制到设备调整)时,命令可能需要几秒钟才能到达目的地并导致所需的操作。

2

响应时间超过100ms的应用

在许多场景中,尤其是那些以人机交互为中心的场景,100 毫秒左右的响应时间至关重要。这个范围取决于人类感知和反应的基本极限。当系统在此时间范围内做出响应时,用户感觉交互几乎是即时的,从而增强了无缝控制和实时反馈的感觉。为了实现这个响应时间,您通常不需要对通信渠道采取任何特殊措施,即使在相对较慢的通信速度(例如 100kbps)下也可以达到此目的。

车辆仪表和控制装置:在各种人工控制的车辆中,例如汽车、叉车、起重机和农用车辆,大量的显示器和控制装置(从触摸屏到刻度盘)都依赖于快速反馈。这可确保驾驶员保持知情并处于控制状态之中。通过开关或操纵杆发送控制,或从传感器接收实时反馈,所有这些都需要在这个时间范围内发生。

工业机器接口制造工厂的操作员通过控制面板与复杂的机械进行交互。快速反馈至关重要,确保用户的命令几乎立即转化为机器动作,从而提高操作安全性和效率。如果激活命令需要较长时间,则应提供一些即时视觉反馈,以向操作员发出信号,表明所选功能现在即将执行。

医疗设备:当医疗保健专业人员调整设置或输入命令时,患者监视器和特定诊断工具等设备需要及时反馈。这种迅速的响应既确保了患者的安全,又确保了医疗保健专业人员的信心。

3

响应时间超过10ms的应用

对于要求响应时间约为 10 毫秒的应用,精度至关重要。这些时间明显超出了人类感知的界限,导致系统甚至在人类能够记录事件之前就经常做出响应或调整。因此,基础系统必须以无与伦比的效率和一致性运行。实现这些严格的时序需要详细的规划、速度和优先级之间的平衡,但也可能深入到处理数据的软件层,包括驱动程序和固件。通过精确的优化,这些系统表现出快速反应的能力,增强安全性,保留功能并确保最佳性能。

驾驶员辅助系统:牵引力控制、车道保持辅助和防抱死制动等高级驾驶员辅助系统对于提供快速响应至关重要。在任何延迟都可能导致潜在事故的情况下,这些系统通常感知车辆动力学的瞬时变化并做出反应。

工业机器人在最先进的制造装置中,机械臂及其相关机械的任务是进行即时调整。这种及时性确保了一丝不苟的精确性,保障了生产过程的准确性,并减少了错误。

紧急关闭系统:在各种控制设置中,紧急关闭系统的快速启动至关重要。无论是应对机械故障、危险泄漏还是任何不可预测的情况,这些系统的快速激活都可以防止重大损害、经济损失,更重要的是,保护人类生命。

4

响应时间为毫秒级的应用

对于要求响应时间为毫秒级的应用程序,多个通信网络的功能已达到极限。请记住,这与总吞吐量无关(通常此处仅交换几个字节),而是快速将这些字节发送到目的地。要实现如此快速的反应,需要对系统的各个方面(从网络配置到底层代码)进行审查并进行优化。当遇到如此苛刻的要求时,应该进行全面的评估,以确定所选的通信协议是否确实是最合适的解决方案,或者是否有其他解决方案可以完成手头的任务。

高速运动控制:在专门的工业设置中,机械需要基于快速反馈回路进行即时调整。此类应用可能涉及微调电机速度、快速驱动阀门或实时调节高速执行器。

先进机器人技术:这些机器人在高精度任务中尤其普遍,它们可能涉及以加速速度将精密电子元件放置到PCB上等操作,其中最轻微的延迟可能会导致严重错误。

安全气囊弹开:在车辆安全系统中,检测到潜在碰撞和弹开安全气囊之间的时间可能仅为几毫秒。如此快速的响应对于确保车内乘员的安全至关重要,每一毫秒都有助于减轻伤害。

小结

各个领域的应用具有不同的响应时间要求,从秒到毫秒不等。通信系统满足这些需求的能力对于实现最佳性能和效率至关重要。

然而,了解这些响应时间要求只是难题的一部分,在接下来的文章中,我们将更深入地探讨影响通信速度、延迟和仲裁的技术方案,包括网络架构、带宽和数据处理能力等考虑因素。此外,我们将探讨在选择在速度、复杂性和成本之间取得平衡的通信系统时必须做出的权衡和妥协。

虹科是一家在工业自动化领域,特别是工业总线通讯行业经验超过15年的高科技公司。虹科智能自动化事业部是领先的工业通讯领域内解决方案合作伙伴,与欧洲和美国的世界知名工业自动化、能源管理与楼宇自动化专家开展深度合作,提供各类通信协议的软硬件解决方案,通信技术类型涉及工业自动化通讯协议【CAN、CANopen、EtherCAT、PROFINET、EtherNet/IP、IO-Link/IO-Link wireless、OPC UA、MQTT、TSN】等,解决方案包含代码、芯片/模块、板卡、网关、IO、继电器、测试方案、培训和开发服务等。因此,虹科是国内为数极少的在OT领域深耕多年并拥有全面技术经验的供应商。

虹科智能自动化事业部以客户需求为导向,以技术能力为基础,力求为国内企业提供最适合的产品和最满意的服务。我们希望成为链条最全、方案最丰富、且兼备技术服务落地的通信技术资源整合商。目前虹科服务的客户已经超过1000家,虹科工程师们一直在万物互联的潮流中扮演着如高速公路般的连接作用,这是我们的使命也是我们的自豪。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    5212

    文章

    20778

    浏览量

    338892
  • 通信
    +关注

    关注

    18

    文章

    6489

    浏览量

    140359
  • 网络
    +关注

    关注

    14

    文章

    8386

    浏览量

    95708
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    高空线路安装智能安全帽全双工组网对讲系统(含优先级管控)应用方案(附带产品资料)

    智能安全帽双模式通信架构(优先级 / 无优先级适配现场平等协同与指挥调度两种作业场景,系统支持无优先级全双工与优先级指挥两种模式一键切
    发表于 04-10 14:29

    STM32开发中的五大嵌入式系统

    受限的嵌入式环境中运行,能够在RAM和ROM资源较少的情况下运行,适用于各种嵌入式设备。 3.支持实时需求:uClinux提供了实时性支持
    发表于 01-21 10:48

    RTOS在嵌入式开发中的作用

    : 硬实时响应 基于优先级抢占的RTOS,根据任务的实时需求,执行优先调度。有严格时序限制的任务可以优先
    发表于 12-26 07:53

    米尔RK3506核心板SDK重磅升级,解锁三核A7实时控制新架构

    仪表带来显著价值提升。结语 本次MYD-YR3506 SDK升级,标志着该平台正式成为面向工业控制与确定性边缘计算的成熟之选。我们不仅提供了多样化的系统入口,更重要的是,通过AMP与RT-Linux两套实时方案,从基础控制到高
    发表于 12-19 20:35

    嵌入式基础知识-系统调度

    系统调度是操作系统重要功能,在嵌入式开发,也要了解系统调度的基本原理。对于嵌入式Linux开发,一般使用多线程和多进程开发,对于运行RTOS的嵌入式系统,一般使用多任务开发。这些线程、进程、任务
    发表于 12-16 08:15

    什么是嵌入式操作系统?

    嵌入式操作系统的定义 嵌入式操作系统是专门资源受限的嵌入式设备(比如 STM32 单片机、物联网模块、工业控制器)设计的微型操作系统,核心作用是:管理硬件资源、调度多任务、提供标
    发表于 12-09 10:33

    抢占优先级和子优先级

    关于抢占优先级和子优先级1)具有高抢占优先级的中断可以在具有低抢占
    发表于 12-03 07:11

    C语言在嵌入式开发中的应用

    语言可以确保实时系统中的任务能够在规定的时间内完成,保证系统的稳定性和可靠性。 4、嵌入式网络编程 随着物联网技术的飞速发展,嵌入式设备的联网
    发表于 11-21 08:09

    嵌入式实时操作系统的特点

    的时间限制内完成,而软实时任务对时间限制更灵活。 任务调度和优先级实时嵌入式操作系统通过任务调度器来管理和分配任务,通常采用优先级调度算法
    发表于 11-13 06:30

    如何选择适合的网络类型来满足电能质量在线监测装置的远程实时波形查看功能?

    需求优先级(延迟 / 带宽 / 稳定性),再结合现有网络资源、成本预算,从 “网络特性与场景需求的适配度” 出发筛选。以下是分步骤
    的头像 发表于 11-05 11:24 731次阅读

    嵌入式软件测试与专业测试工具的必要性深度解析

    故障,最终召回成本高达数百万欧元。主流测试工具与技术方案嵌入式软件测试工具市场提供了多样化的解决方案,满足不同测试需求:功能测试工具 ‌ETest Studio‌:国产黑盒测试工具
    发表于 09-28 17:42

    什么是RTOS中的优先级反转

    当一个高优先级任务正在等待一个资源,但一个低优先级任务正在持有它,一个中等优先级任务继续在中间运行时,就会发生优先级反转——阻止低优先级任务
    的头像 发表于 09-09 14:50 1284次阅读

    2025嵌入式行业现状如何?

    设备爆发:全球物联网设备连接数预计达750亿台,智能家居、工业物联网等领域需求激增。 工业4.0推进:智能制造装备、工业机器人、数控机床等场景对嵌入式系统需求持续增长。智能汽车普及:L2+
    发表于 08-25 11:34

    一文读懂:嵌入式Linux实时性进阶

    在工业控制、机器人、汽车电子等关键领域,嵌入式系统对实时性要求极高。 Linux作为强大的通用操作系统,其原生实时性能难以满足最严苛的硬实时需求
    发表于 07-10 15:26

    Linux嵌入式和单片机嵌入式的区别?

    用于对实时性要求高、资源需求较低的场合,如家电控制、工业自动、小型机器人等。 Linux嵌入式 :适用于需要复杂功能、高处理能力的应用,如智能手机、平板电脑、智能电视、汽车电子等。
    发表于 06-20 09:46