Skip to main content

使用 Qt 构建下一代工业驾驶舱

Comments

数字化正在推动各行各业的客户需求和期望发生翻天覆地的变化。软件定义产品已成为常态的行业,如消费类电子和移动设备,这些行业也在为传统上通过模拟接口操作的领域设定可用性标准

工业车辆制造领域,提高生产力和降低成本的需求正推动企业探索利用软件增强可用性、提高安全性、实现自动化操作、通过AI优化等新方法来构建产品。软件定义的工业车辆不仅为操作者提供了与汽车、智能手机甚至游戏相似的功能和用户体验,更能通过数据和传感器在严苛环境中实现轻松操作。

然而,将类似智能手机的体验移植到挖掘机等工业车辆上并非易事。下面我们将提供一些见解和用例,展示Qt框架如何在这方面提供帮助,包括:

  • QML与Qt Quick简介
  • 入门示例
  • 面向未来的构建策略

 

QML与Qt Quick简介

鉴于绝大多数工业车辆(以下简称IV)都使用某种形式的嵌入式系统级芯片(SOC),我们将重点介绍最适合这些车辆的QML和Qt Quick。对于新手来说,QML(Qt建模语言)是一种声明式用户界面标记语言,使用QML创建用户界面所需的所有基本类型。QML和Qt Quick的核心优势包括:
  • 在任何设备上运行
  • 提供更高的UI/UX灵活性
  • 易于上手,配备可定制的预构建组件
  • 原生性能

Qt Quick已成功应用于工业领域数十年,满足严苛的认证标准和可用性要求。设计和产品团队可以非常有效地满足用户不断变化的需求,并处理不同的车辆类别和硬件。这种效率的一个核心因素是能够将应用逻辑和用户界面分开,从而简化升级、复用和长期维护。

 

此外,QML和Qt Quick采用了声明式语法,与Web UI语言非常相似,这使得它们易于学习和理解,即使对于非开发者也是如此——这也是我个人的经验之谈,因为我没有接受过正规培训,主要从事Web技术工作。

入门示例

虽然QML类型和Qt Quick示例库非常丰富,我们仍精选若干对IV制造商具有典型参考价值的示例。资深Qt用户请注意:虽然这些示例并不新鲜,但谁不喜欢经典呢?

集成摄像头

示例 - QML摄像头应用程序

随着工作现场日益拥挤,车辆操作员需要能够快速查看整个车辆周边环境。视频与传感器数据的结合使操作员能够实时查看可能引发碰撞或问题的人员、机器或障碍物。

通过QML摄像头应用,您可以立即了解如何使用Qt Multimedia模块,特别是MediaDevices和VideoOutput QML类型,使用户能够切换连接到设备的任何摄像头并实时查看输出。

以下是与摄像头切换器相关的代码片段(来自CamerListButton.qml第29-40行):

  //

   CameraListPopup {

       id: popup

       anchors.rightMargin: 16

       visible: opacity > 0

       model: mediaDevices.videoInputs

 

       MediaDevices {

           id: mediaDevices

       }

       onSelected: popup.toggle()

   }

 

 

这两个元素只是本示例中的一小部分,因此我强烈建议您查看完整文档并亲自尝试。

 

车载文档

示例 - 媒体播放器

媒体播放器演示的屏幕截图

随着车辆变得越来越复杂,用户偏好也发生了改变,提供各种格式的支持和文档的需求也发生了巨大变化。虽然目前围绕AR/VR的发展势头良好,并且当您准备好迈出这一步时我们也为您提供了支持,但今天的许多用户可能更愿意使用基于视频的指南和说明。

借助Qt Creator中包含的媒体播放器示例,您可以获得一个功能齐全的媒体播放器,包括所有需要的基本控件、主题甚至播放控制。通过此示例,您可以快速了解如何提供链接到外部托管内容的车内播放器,让用户观看指导或支持视频

面向未来的构建策略

本博文中重点介绍的示例主要满足了UI/UX方面的即时需求。与此同时,其他高级的IV未来(如扩展现实、互联互通和数字孪生)也可使用Qt框架进行开发和测试。请查看我们的IV演示以获取灵感。

无论您在寻找简单的示例或演示以更好地理解如何使用Qt,还是需要关于Qt模块、QML类型和C++类的全面文档(这些被许多领先的OEM和一级供应商在工业、商业甚至消费车辆领域广泛使用),我们都为您提供了支持。

有兴趣尝试Qt吗?注册免费试用

 

Comments

Subscribe to our blog

Try Qt 6.11 Now!

Download the latest release here: www.qt.io/download

Qt 6.11 is now available, with new features and improvements for application developers and device creators.

We're Hiring

Check out all our open positions here and follow us on Instagram to see what it's like to be #QtPeople.