Design of human-machine interface based on Android vehicle virtual instrument

Abstract A software development platform using Google's Android as the vehicle-based virtual instrument man-machine interface was proposed. Implementing the human-machine interface of the virtual instrument on the framework of the Android system, expounding how to tailor and adjust the existing system framework of Android, so that the system is more in line with the requirements of the human-machine interface of the vehicle virtual instrument, and design the virtual instrument man-machine with the components provided by Android. The various functional logic modules of the interface make the module design more reasonable. The coupling between modules is smaller. The human-machine interface based on REAL210 is designed. The results show that the virtual instrument based on Android has richer functions, more friendly operation, easy upgrade and maintenance, and can better meet the needs of users.
Key words virtual instrument; Android; human-machine interface; architecture; APK

The vehicle virtual instrument man-machine interface is the main interface for the driver to obtain the vehicle working condition data, which is convenient for the driver to comprehensively grasp the working state of the car in real time, and effectively interact with the vehicle for human-machine interaction, which is of great significance for ensuring safe and stable driving of the car. Currently commonly used are Windows CE and Linux operating systems. The Windows CE operating system is stable and has complete technical support, but it is expensive, the source code is closed, and the network can use less resources. The biggest advantage of the Linux operating system is free and open source, which is the mainstream operating system of the vehicle information display system, but It is not based on mobile devices and does not fully meet the needs of mobile devices.
Android is an open, open source mobile platform developed by Google based on the open source operating system Linux. The current mainstream embedded platform is well supported. The superior performance of the Android system has been verified on a variety of mobile devices. It includes the operating system user interface and applications and does not have any proprietary barriers that have previously hampered innovation in the mobile industry. This paper proposes to use Android as the vehicle virtual instrument software development platform to realize the human-machine interface of virtual instrument on the application framework provided by Android.

1 system hardware system Although Android is an application framework and application developed as a mobile phone software platform, its essence is an embedded software development platform. If Android is used for the development of the vehicle virtual instrument system, the characteristics of the instrument system application need to be adjusted. The hardware platform used by the system is REAL210, and the CPU processing speed is 600 MHz to 1 GHz, based on the Cortex-A8 architecture. The main hardware modules in the system are audio module, CAN module, liquid crystal display module, serial port and Ethernet communication module, as shown in Figure 1.

This article refers to the address: http://


2 Android software system customization Because Android was originally designed based on mobile phone software development platform, and most of the modules are designed for mobile communication, in order to save development board resources, it is necessary to cut unnecessary components in Android system. Keep the necessary minimum system. Therefore, the framework must be modified to remove modules related to calls, text messages, and so on. Leave only the necessary core modules for Android, including Package Manager, System Service, Input Service, Hardware SerVice, and System Server. By modifying the loading process of System Server, you can remove the unnecessary services and modules, and also implement the driver of the underlying hardware, re-compile the Linux 2.6 kernel, and package the function library on the basis of the driver implementation, so that Android The application accesses the underlying driver through JNI. The customized and modified Android system architecture is shown in Figure 2.


The application of the vehicle virtual instrument human-machine interface needs to be re-developed, mainly the interface module, the CAN module, the data access module and the alarm module. The CAN module is designed as a Service. The data access module is designed as a Content Provider. The notification mode adopted by the alarm module is Broadcast Receiver and Notifica. After the system is powered on, the CAN module is first started in the Android System Server, and then the program of the main interface is started.

3 The design of the application and the system architecture that implements the application. The information of each APK provided by the PackageManager is called in the menu mode for each function module.
3.1 CAN module CAN module is used for data acquisition and processing. After the CAN module receives the data, it must parse the data to determine the type of data received. The final result is the value you need. The calculation method is to extract the corresponding original number according to the byte position of the data field in which the parameter is located, and then obtain the parameter value according to the resolution and the offset corresponding to the parameter, and the parameter value is calculated as: parameter value=parameter original number× Resolution + offset. By programming the actual engine state values ​​represented by the data, the current vehicle state can be accurately displayed in the vehicle real-time function module.
3.2 Data Access Module The data access module of the program uses the built-in SQLite database of the Android system to automatically store and store some important vehicle status information, which is convenient for analysis and maintenance, and plays the role of the car “black box”. The stored vehicle condition information can be played back directly on the instrument interface by clicking the playback button, and the situation during the car's travel is truly reproduced.
First call. openOrCreateDatabase() creates vehicle_database. Db database, then configure SQLite database properties to pass. Create a data table to define: travel date, factory information, vehicle speed, speed signal, start, stop time, exercise mileage, alarm information, etc. The data received by the black box is passed in the format defined by the data table. Insert() inserts data into the data table, passing. Delete() specifies the date to delete expired data. To display historical data, you need to first get the year, month, and day entered by the user through DatePicker, and extract the specific date value, and put the condition into the SQL query statement. Query() to query, define a Cursor return result, and then create a data adapter to map the Cursor results directly to the corresponding TextView in the ListView.
3.3 Function Module The function module is used to monitor and control the display of vehicle speed, engine speed, water temperature, fuel and alarm events. The functional module interface of the system design is shown in Figure 3.


3.4 Alarm Module The alarm module itself is a Broadcast Receiver, which is responsible for receiving alarm events, overspeed, oil quantity, water temperature, oil pressure, etc. of other modules, and writing these information into the database, and calling the alarm display interface to display the corresponding information. Or prompt in the status bar by Notification. In the Android system, all applications communicate with each other through Binder. This IPC mechanism is implemented based on the underlying Linux driver. Compared with the traditional interprocess communication mechanism, its execution is more efficient and better. Scalability.

4 Conclusion Using Android as the framework developed by human-machine interface, through the refinement of each functional module, the system design can be more reasonable, the module structure is more independent, and it is easy to carry out software maintenance and code secondary development, based on Android application framework design. Each module can be freely modified and replaced, which improves the system's customizability. Although Android is a mobile phone software development platform, with its excellent system architecture design and concept, more and more vehicle virtual instruments will adopt Android as the platform. Development Platform.

Hand Blenders 2 In 1

Hand Blenders 2 In 1 including plastic or stainless steel Stick Blender and breaker cup.

Description for Hand Blenders 2 In 1

200W,250W, 300W,700W

One, two, three, five speeds optional

600ml, 800ml breaker cup optional

Slim ergonomic design

Carton box: 44.5*33.5*45cm   16pcs/ctn

20'GP: 6912pcs   40'HQ: 16448pcs

Stainless steel hand blender 2 in 1

Hand Blenders 2 In 1

Hand Blenders 2 In 1,Stainless Steel Hand Blender,Electric Hand Blender,Mini Hand Blender

Flying Electronic Co., Ltd ,

This entry was posted in on