Agricultural OEM Krone bets on Qt software library for development of their terminal / First prototype read in less than three months
585 horsepower, 15.6 litres engine displacement and an up to 9 metre wide cutterhead – forage harvesters are among the most powerful agricultural machines. It takes a lot more technology and know-how to drive such a vehicle than a car. The driver terminal of a forage harvester must process information from more than 30 components like motor, cutterhead, metal detector or grinder within tenths of a second. The terminal additionally provides a diagnosis system. The agricultural OEM Krone from Lower Saxony has built all these functions into the touch-screen terminal of its forage harvester Big X 480/580. The HMI software of the terminal was developed with the GUI and application library Qt.
“The result is a revolution in the driver cabin”, says Heiner Brüning, the product manager of the Big X and Big M at Krone. “We are setting a new standard with our terminal with respect to ease of use, clear layout and flexibility – especially helped by touch input, which our drivers increasingly regard as a must-have feature. According to Brüning, Krone has always built world-class machines, but struggled a bit to come to peace with the new possibilities of smartphones. “Now we have a leg up on our competition with respect to usability as well.”
The GUI and application library Qt (pronounced “cute”) and the GUI design language QML played an essential role in developing the new terminal. Qt, which is based on the programming language C++, enables the cross-platform development of applications with graphical user interfaces (GUIs). QML enables non-developers like UI and web designers to build GUIs with Qt. Qt is used successfully in many industries. In-flight entertainment systems, in-car infotainment systems, set-top boxes, TVs, audio systems and home appliances of well-known companies like Panasonic, Magneti-Marelli, LG, Free, Loewe and Netflix are all developed with Qt.
Software developed with Qt runs without any changes on different operating systems like Windows, Linux and QNX and on different processor architectures like ARM and Intel. Brüning: “Qt being cross-platform enabled as to get quick feedback for every step during development. We could integrate users and partners into the development right from the beginning such that the terminal suited their needs.”
Terminal as Interface between Driver and Machine
The terminal is the central interface between driver and machine. The driver of a Big X 480/580 forage harvester can access data of more than 30 components from the cabin. He can monitor and even change the data. The terminal receives up to 1000 pieces of information per second from the components in the machine and shows this information on the display. The terminal can keep up with displaying this flood of data, because the GUI rendering is accelerated by a decicated GPU using OpenGL and the data processing happens in a thread of its own. The communication between the GUI and worker thread is done exclusively with Qt signals and slots, which renders explicit data synchronisation superfluous. The developers used QML for the visible part of the terminal and Qt and C++ for the non-visible part.
The short harvesting season for maize of six weeks put quite some pressure on Krone. Burkhard Stubert, the lead developer for terminal, explains: “We had a very aggressive schedule, because a first prototype of the terminal had to be ready for the maize harvest in less than three months. Qt and QML helped us to achieve this feat.” This extremely fast-paced development was made possible by a close collaboration of Stubert (Embedded Use), the UI designer Alexander Bücken (BTism), two excellent developers from Krone and occasionally an experienced developer from e-GITS.
Stubert goes on: “Touch interaction worked perfectly fine in the lab, but proved tricky on the field because of the vibrations caused by 585-horsepower engine. The touch screen of harvester is pretty different to that of a smartphone. It must be less sensitive and must not respond to light touches.” Such problems can only be detected through regular and frequent feedback from drivers on the field.
Stubert is excited about developing GUIs with Qt: “Qt is well-suited for agricultural applications, because the open-source library Qt is very powerful, flexible and free. Qt is constantly improved. Support from the Qt community is excellent.”
The Big X 480/580 does its duty on the fields since spring 2014. Krone has decided to use Qt for other new development projects as well.
Figures and Facts
- Touch screen with 1024×768 resolution
- More than 100 different screens
- Day and night mode
- Support for German, English, French and Italian (more languages coming)
- Settings for a harvesting season
- Counters for harvested area, diesel consumption and driven distance for invoicing the farmers
- On-board diagnostics for 20 components including motor, cutterhead and cutting drum
- Calibration guided by wizards
The above text is my translation of a press release from German into English. The press release was issued by Krone, KDAB and me in time for the Qt Developer Days 2014 in Berlin and San Francisco.
The press release can be found, for example, at the following sites: