1 Introduction
The electronicization of automobiles is one of the important signs of the development of modern automobiles. At present, the use of electronic devices in every car in the world has become a major indicator of the level of this car. In order to strengthen the market competitiveness, 16-32-bit microprocessors are widely used abroad, and more advanced sensors are widely used to expand the function of the car from the control and management of the car itself to such a large system as "car-person-environment" Information acquisition, processing and control.
2 Classification of automotive electronic products and application of embedded technology
According to the impact on the driving performance of automobiles, automotive electronic products can be classified into two categories. The first category is car control electronics-automotive electronic control devices. Automobile electronic control devices must be used in conjunction with on-board mechanical systems, so-called "electromechanical combination" automotive electronic devices. They include engine, chassis, body electronic control, such as electronic fuel injection system, brake antilock control, anti-skid control, traction control, electronically controlled suspension, electronically controlled automatic transmission, electronic power steering, etc. The other category is in-vehicle electronics-in-vehicle automotive electronic devices. On-board automotive electronic devices are electronic devices that can be used independently in an automotive environment and have no direct relationship with the performance of the car itself. They include car information systems (driving computers), navigation systems, car audio and TV entertainment systems, in-vehicle communication systems, and Internet access devices.
The technical basis of automotive electronics is embedded technology. In the past few decades, embedded technology has developed rapidly. With the advent of the post-PC era, computing is widely embedded in applications, and embedded systems will become the main way of computing in the future. Application traction and changes in the computing environment have driven the development of embedded technologies. The combination of embedded technology and industry has driven the development of the industry. The electronic and informatization of automobiles is the application of embedded technology in the automobile industry.
Car control electronic products are functional unit devices such as electronic control unit (ECU) and smart sensor (Smart Sensor) distributed on the car. These devices are connected together by a bus to form a subsystem. They can communicate with their own protocols, such as Lin, J1939, etc. Different subsystems also form a larger network through the bus. Among them, the smart sensor (Smart Sensor) is a unity of sensors and transmitters based on the industrial field bus, CPU as the processing core, and digital communication as the transmission method. Compared with traditional Sensors, Smart Sensors have added digital communication functions, are network-oriented, and have networking capabilities.
3 Vehicle control electronic product system platform-OSEK / VDX
In order to meet the needs of the development of increasingly large and complex automotive electronic control software, to achieve the portability of application software and compatibility between control modules of different manufacturers. In 1993, the German automotive industry jointly launched the open system and interface of automotive electronics-OSEK / VDX (Open Systems and the Corresponding InteRFaces For AutomoTIve Electronics) specification, which aims to provide an open structure for distributed control units on automobiles Industry standard. The OSEK / VDX specification provides a more comprehensive definition and regulation of the automotive electronic control software development platform from the aspects of real-time operating system RTOS (RealTIme OperaTIng System), software interface, communication and network management.
The set of solutions it proposes is the future development direction of automotive electronic software development. At present, some companies have introduced operating systems that conform to the OSEK / VDX specifications and have been certified by the OSEK / VDX committee, such as OSEK Works, OSEKOS, and OSEKTurbo. OSEK / VDX standard includes the following four parts: OSEK / VDX operating system specification (OSEK OperaTIng System, OSEK OS), OSEK / VDX communication specification (OSEK Communication, OSEK COM), OSEK / VDX network management specification (OSEK Network Management, OSEK NM ) And OSEK / VDX implementation language (OSEK Implementation Language, OSEK OIL). Using an embedded real-time operating system that conforms to the OSEK / VDX standard can improve the reuse rate of product codes, reduce development costs, and shorten product development cycles. The application architecture using an embedded real-time operating system compatible with the OSEK / VDX standard is shown in Figure 1.
Figure 1 OSK / VDX compatible operating system application architecture
The operating system part (OS), communication part (COM), network management part (NM), implementation language part (OIL), operation debugging interface part (ORTI), etc. of the OSEK specification are introduced below.
3.1 OSEK OS specification
The OSEK OS specification defines the implementation mechanism and application programming interface (API) of the operating system kernel, including task management mechanism, interrupt handling mechanism, event mechanism, resource management mechanism, alarm management mechanism, etc. and related standard application programming interfaces. For the realization mechanism of OSEK OS specification, please refer to our website.
3.2 OSEK COM specification
OSEK COM Specification (OSEK Communication Specification) provides a unified communication environment for automotive ECU application software. By defining application software communication interfaces, as well as ECU internal communication and ECU external communication, the OSEK COM specification improves the portability of application software modules. OSEK COM provides a variety of services to facilitate sending data between tasks and tasks, between interrupt service programs and interrupt service programs, and between tasks and interrupt service programs.
The purpose of the OSEK COM specification is to support portability, reuse, and mutual cooperation of application software. The application program interface hides the difference between internal and external communication, as well as different communication protocols, bus systems, and networks.
The communication in OSEK COM is based on messages. The message includes application specific data. Messages and message attributes are statically configured through the OSEK implementation language (OIL). The content and usage of the message have nothing to do with OSEK COM. OSEK COM allows 0-length messages to exist. In the case of internal communication, the interaction layer IL (Interaction Layer) makes the message data immediately sent to the receiver. In the case of external communications, IL compresses one or more messages into a specified interactive layer protocol data unit (IPDU) and passes them to the lower layer for processing, as shown in Figure 2. The functionality of internal communication is a subset of the functionality of external communication. The message manager in the interaction layer is based on message objects. The message object exists on the sending end is the "sending message object", and the receiving object exists on the "receiving message object".
Figure 2 Simple model of message sending and receiving in OSEK COM
The data communicated between the interaction layer and the lower layer is organized as I? PDUs and includes one or more messages. A message must occupy consecutive bits in the I? PDU and cannot be separated, and cross in the I? PDUs. In I? PDUs, messages are arranged in bits. The size of the message is stated in bits. The interaction layer provides an application program interface (API) to process messages. The API includes services for initialization, data transfer, and communication management. The service that transmits messages on the network is non-blocking. A service that sends messages may not be able to return to a final sending state because the transmission in the network is still in progress. OSEK COM provides a notification mechanism for applications to determine the status of transmission or reception.
3.3 OSEK NM specification
For automotive ECU products produced by different manufacturers, they tend to be connected to the network through serial data exchange. Therefore, in order to avoid duplication of labor and shorten development time, there needs to be a basic standard. The OSEK NM specification (OSEK Network Management system specification) provides a network connection standard for improving the network interconnection capabilities of ECU products. The purpose of OSEK NM mission is to improve the safety and reliability of ECU product network communication. The OSEK NM specification specifies the network management mechanism and application programming interface (API). ECU products using the OSEK NM specification have the following functions:
â—† After authorization, each node must be accessible;
â—† In the case of failure to allow access, with the maximum tolerance limit;
â—† Support network diagnosis.
As a basic configuration, the network management implementation that complies with the OSEK specification must be applied to all nodes of the network. Each node can obtain the status information of the entire network within a specified interval. OSEK NM provides two mechanisms for network monitoring: one is indirect monitoring through the messages of the monitoring application; the other is direct monitoring using a marking mechanism for specific network management. OSEK NM includes the following parts:
â—† Interface (API) between OSEK NM and application program;
â—† Algorithm for node monitoring;
â—† Interface between OSEK NM and OSEK COM;
â—† Algorithm for transition to sleep state;
â—† OSEK NM protocol data unit (NMPDU).
Figure 3 illustrates the position of OSEK NM in the entire system and its relationship with other parts.
Figure 3 OSEK NM position in the system
3.4 OSEK implementation language specification
In order to achieve the goal of software portability, the OSEK OIL Specification (OSEK Implementation Language Specification) defines a method of configuring and using the OSEK application. Figure 4 shows an application development process that complies with the OSEK specification. OIL files can be handwritten or generated by system configuration tools.
Figure 4 Application development process based on the OSEK specification
OIL provides a mechanism for configuring OSEK applications in specific CPUs. Each CPU corresponds to an OIL description, and all OSEK system objects are described by OIL objects. The OIL description of the OSEK application is a combination of a group of OIL objects, and the CPU is a container of these OIL objects. OIL explicitly defines all standard attributes for each OIL object. Each OSEK application can define additional special execution attributes and references. Each OSEK application can limit the value range of each attribute.
Objects in OIL include: CPU (processor), OS (operating system), Appmode (application mode), Isr (interrupt service), Resource (resource), Task (task), Counter (counter), Event (event) ), Alarm (alarm), Com (communication subsystem), Message (message), Ipdu (interactive layer protocol data unit), NM (network management).
3.5 OSEK ORTI specification
The OSEK ORTI specification (OSEK Run? Time InteRFace Specification) provides a unified interface for OSEK operating system development tools. Through OSEK ORTI, the debugging tool can obtain and display the operating state and performance of the operating system, the status of various tasks, the status of various operating system objects and other information. The ORTI file is generated by the system generator during the system generation phase. ORTI uses the KIOL language to pass the operating system kernel information to the debugger, and also defines some syntax rules for the OSEK standard objects. ORTI information is provided through ASCII text files. Since OSEK / VDX is based on static configuration, ORTI does not support dynamic representation and configuration data.
The OSEK ORTI specification includes Part A and Part B: Part A introduces the language of the Kernel Object Interface Language (KOIL) defined by ORTI for the debugging tool; Part B describes the OSEK / VDX standard objects, attributes and them Meaning.
3.5.1 ORTI file structure
The ORTI file contains a version information part, a declaration part and an information part. The version information section describes the version of KOIL and the kernel. For ORTI, the kernel version is the version number of the ORTI standard. The declaration part declares the kernel type used in the ORTI implementation, which is equivalent to the structure declaration in C language. It describes the method of accessing the data contained in the kernel object. This section specifies the display name of a given attribute. The information section contains all the methods declared in the declaration section of a given system, and describes the method of calculating or referencing the required attributes. The information section also provides static values ​​and expressions for the required attributes.
3.5.2 Standard ORTI objects and attributes
The OS object contains attributes such as running tasks, running priorities, running interrupt handlers, operating system services, recent errors, and current application mode.
Task object, including priority, status, stack, activity status, context and other attributes.
The context object contains two attributes, address and size.
The stack object contains four attributes: size, base address, stack direction, and fill mode.
The alarm object contains five attributes such as alarm time, period, status, action, and counter.
The resource object contains three attributes: status, resource lock, and priority.
The message container object contains five attributes such as message name, type, queue size, queue counter, and current message address.
4 Development process of vehicle control electronics
Car control electronic products are embedded systems that combine software and hardware. In order to save resources and shorten the product development cycle, generally should adopt the program of simultaneous development of software and hardware, as shown in Figure 5. The development tools of vehicle control electronic products provide good support for the simultaneous development and debugging of software and hardware. The software development of car control electronic products is divided into functional description, software design, code generation, advanced debugging under operating system environment and other steps. The hardware development of vehicle control electronic products is divided into hardware description, hardware design, hardware debugging and other steps. After the software design is completed, the verification on the virtual ECU platform is completed by using the corresponding tools. When the hardware design is completed, the hardware and software integration debugging is performed together with the hardware. Through this development method, shorten the time to market.
Figure 5 Parallel development plan of software and hardware
At present, the software development process of automotive vehicle control electronic products is a "V" -shaped development process, as shown in Figure 6. The "V" shaped development process is divided into five stages, namely functional design, prototype simulation, code generation, hardware-in-the-loop simulation-HIL, calibration.
Figure 6 Software development process of vehicle control electronics
The main tool used in the functional design phase is MATLAB. Through the use of Simulink, Stateflow and other tools provided by MATLAB, complete the tasks of control scheme design, function module design, control algorithm design, etc., and carry out preliminary simulation work. The main tool used in the prototype simulation phase is DSPACE. Use the rapid control prototype provided by dSPACE-RCP tool to complete the offline simulation work. Before starting this stage, you need to use Real Time Workshop, Targetlink and other tools to complete the conversion of the code generated by Simulink and Stateflow to standard C code. In the process of conversion to standard C code, an embedded real-time operating system that conforms to the OSEK specification can be added as needed. The main tool used in the code production phase is CodeWarrior. Through the use of compilers, debuggers and other tools provided by CodeWarrior, the conversion from standard C code to product code on the target hardware platform is completed. Figure 7 shows the code generation process of vehicle control electronic products.
Figure 7 Car control electronic product code generation process
Conclusion
China's independent development of automotive vehicle control products is still in its infancy. This article briefly introduces the system platform of vehicle control products-the OSEK / VDX specification, and gives a simple vehicle control electronic development model based on the OSEK / VDX specification. In this model, developers are required to use internationally mainstream development tools to improve development efficiency and shorten development time.
Universal Vacuum Cleaner Ac Motor
Universal Vacuum Cleaner Ac Motor,Ac Motor Vacuum Cleaner,Ac Motor For Vacuum Cleaner,Mini Vacuum Cleaner Motor
Zhoushan Chenguang Electric Appliance Co., Ltd. , https://www.vacuum-cleaner-motors.com