Building Your Next Industrial Cockpit with Qt
December 23, 2024 by Patrick Thurman | Comments
Digitalization is driving radical changes in customer demands and expectations across industries. Industries where software-defined products already represent the norm, like consumer appliances and mobile devices, are now also setting usability standards for areas that have traditionally operated through analogic interfaces.
In the Industrial Vehicles manufacturing sector, the need to increase productivity and reduce costs is pushing companies to examine new ways of building products that leverage software to enhance usability, increase security, automate operations, optimize through AI, and more. Software-defined Industrial Vehicles provide operators with familiar functionality and UX—experienced on their cars, smartphones, or even in gaming—and leverage data and sensors to operate with ease in demanding situations.
Yet, porting a smartphone-like experience to an industrial vehicle like, say, an excavator, is not a trivial task. Below we provide some insights and use cases where Qt Framework helps in this direction, namely:
-
Quick Intro to QML and Qt Quick
-
Examples to Get You Started
-
Building for Tomorrow
Brief Intro to QML and Qt Quick
As the vast majority of industrial vehicles (IVs henceforth) utilize some form of embedded SOC, we will look at QML and Qt Quick which is best suited for these. Roughly, for those new here, QML (Qt Modeling Language) is a declarative user interface markup language, while Qt Quick provides all the basic types necessary for creating user interfaces with QML. The key benefits of QML and Qt Quick are that they are designed to:
- Run anywhere, on any device
- Enable greater flexibility in UI/ UX
- Be easy to start, with customizable pre-built components
- Native performance
Qt Quick has been applied for decades to a wide range of industrial applications, needing to meet high certification and usability standards. It is extremely effective for design and product teams to meet the everchanging desires of users and handle different vehicle classes and hardware. One core factor of this efficiency is the ability to keep the application logic and user interface separate to ease upgradability, reusability, and longevity.
Additionally, QML and Qt Quick adopt a declarative syntax, largely resembling web UI languages, which makes them easy to learn and understand also for non-developers—I’m also speaking here from personal experience as someone with no formal training, who has primarily worked with web technologies.
Examples to Get You Started
While there is an extensive list of QML Types and Qt Quick examples available, there are a few that can be highlighted for their ability to help any IV manufacturer develop some typical features. Just a note for the long-time Qt users: while none of these are new, who doesn’t love a good classic?
Integrated Cameras
Example – QML Camera Application
As work sites become more and more crowded, vehicle operators need to be able to quickly view their entire vehicle surroundings. The combination of video and sensor data allows operators to see in real-time any person, machine, or obstacle that might cause a collision or issue.
With the QML Camera Application, you can get an instant example of how to utilize Qt Multimedia and more specifically the MediaDevices and VideoOutput QML types to allow users to switch between any camera connected to the device and view the output in real-time.
To show just how easy something like a dynamic camera selector is with QML here is the snippet related to the switcher (line 29-40 of CamerListButton.qml):
//
CameraListPopup {
id: popup
anchors.rightMargin: 16
visible: opacity > 0
model: mediaDevices.videoInputs
MediaDevices {
id: mediaDevices
}
onSelected: popup.toggle()
}
These two elements are only a very small part of all that is included in this example, so I highly recommend you check the complete documentation and try it out for yourself.
In-Vehicle Documentation
Example - Media Player
As vehicles become more complex and user preferences change, the need to provide support and documentation in various formats has dramatically changed too. While the current momentum around AR/VR is well-motivated and we have you covered when you’re ready to make that leap, many users today would be happy with video-based guides and instructions.
With the Media Player example included in Qt Creator, you are provided with a fully functional media player including all the needed basic controls, themes, and even control over playback. With this example, you can quickly see how to provide an in-vehicle player that links to externally hosted content to let users have instructional or support videos.
Building for Tomorrow
The examples highlighted in this blog primality serve immediate needs around UI/UX. At the same time, other advanced IV futures—like XR, interconnectivity, and digital twins—can be developed and tested with Qt Framework. Check our IV demos for some inspiration.
Whether you're looking for a simple example or demo to better understand how to utilize Qt or need comprehensive documentation around all of the Qt Modules, QML types, and C++ classes utilized by many of the leading OEMs and Tier 1s across the industrial, commercial, and even the consumer vehicle space, we have you covered.
➤ Interested in trying Qt? Sign up for a Free Trial
Blog Topics:
Comments
Subscribe to our newsletter
Subscribe Newsletter
Try Qt 6.8 Now!
Download the latest release here: www.qt.io/download.
Qt 6.8 release focuses on technology trends like spatial computing & XR, complex data visualization in 2D & 3D, and ARM-based development for desktop.
We're Hiring
Check out all our open positions here and follow us on Instagram to see what it's like to be #QtPeople.