“With the development of social economy, cars have become an indispensable means of transportation in people’s work and life. In the current automotive industry, various Electronic control systems have been developed for safety, comfort, convenience, low pollution, and low cost.This paper designs an intelligent vehicle-mounted system based on ARM9 S3C2410A, which can realize vehicle positioning and data communication between the vehicle and the control center through GPS global positioning system and GPRS wireless communication technology, and build a CAN bus control module to collect the main parts of the vehicle Working status, real-time monitoring of the main technical parameters of the car, and through the LCD module
With the development of social economy, cars have become an indispensable means of transportation in people’s work and life. In the current automotive industry, various electronic control systems have been developed for safety, comfort, convenience, low pollution, and low cost. This paper designs an intelligent vehicle-mounted system based on ARM9 S3C2410A, which can realize vehicle positioning and data communication between the vehicle and the control center through GPS global positioning system and GPRS wireless communication technology, and build a CAN bus control module to collect the main parts of the vehicle The main technical parameters of the car are monitored in real time, and the integrated information of the car information is displayed through the LCD module.
1 Functions of smart car system
The in-vehicle intelligent navigation terminal should have the following functions:
Vehicle positioning refers to obtaining the current location of the vehicle through the GPS global positioning system, including information such as longitude, latitude, movement speed, standard time, and altitude;
Network communication uses GPRS wireless communication technology to keep in touch with the monitoring center to obtain road traffic conditions in real time, providing a basis for intelligent management of traffic roads;
Fault detection It detects the main technical parameters of the car in real time through the CAN bus;
Information Display It displays the vehicle location, dispatch information and the detected technical parameters of the car through the LCD liquid crystal screen.
The intelligent vehicle system can implement other functions according to user needs, such as adding automatic alarm function through GPRS automatic alarm, expanding audio equipment and IDE interface equipment to increase entertainment functions, connecting image acquisition equipment through USB interface, and video monitoring inside and outside the vehicle.
2 Intelligent vehicle hardware system design
This system uses S3C2410A as the main control module, and expands 64 MBN and Flash to store startup code and embedded Linux operating system, etc.; 64 MB SDRAM is used as the system runtime memory; LCD provides a better human-computer interaction interface, And connect with GPS module through serial port, connect with GPRS module through UART asynchronous serial port, connect with CAN bus through SPI interface, use CAN bus to connect sensors to detect the main technical parameters of the car. The system block diagram is shown in Figure 1.
2.1 Main control module
S3C2410A is a 16/32-bit RISC embedded microprocessor based on ARM920T core designed by South Korea’s Samsung company for handheld devices and high cost-effectiveness, low power consumption and low price. It uses a 5-level pipeline, rich in resources; with independent 16 KB instruction Cache and 16 KB data Cache, 64 MB SDRAM, 64 MB NandFLAsH, LCD controller, RAM controller, NAND memory controller, 3-way UART, 4 channels of DMA, 4 channels of timers with PWM, parallel I/O ports, 8 channels of 10-bit ADC, Touch Screen interface, I2C interface, I2S interface, 2 USB interface controllers, 2 channels of SPI, the maximum operating frequency is up to 203 MHz.
2.2 GPS module
The GPS module mainly completes the reception and processing of GPS positioning information. According to the requirements of design performance and the consideration of saving system cost, the GPS25-LVC receiver of GARMIN is selected, which has a built-in GPS25OEM board. The interface between the receiver and the main control module adopts the RS 232 compatible TTL serial port mode, so it is connected to the serial port 1 of the S3C2410A in the design. The signal line between GPS-25LVC and S3C2410A only needs to connect the TXD1 of GPS25-LVC and TXD1 of S3C2410A. In addition, connect the ground wire and power wire of GPS25-LVC to the ground wire and 5 V power supply of the main control board.
2.3 GPRS module
The GPRS module mainly completes the communication between the vehicle and the vehicle, and the vehicle and the control center. In this system, the GPRS module uses MC35. The data input/output interface of MC35 is actually a UART, which can be directly connected with the UART interface in S3C2410.
2. 4 CAN bus module
The CAN bus module can connect this system with other vehicle-mounted modules to complete the collection of vehicle status information and further control. The CAN bus module mainly includes the CAN bus controller and transceiver. The MCP2510 of Microchip and the PCA82C250 of Philips are selected here. Among them, the CAN bus controller MCP2510 implements the CAN bus protocol, and the CAN bus transceiver PCA82C250 provides the interface between the protocol controller and the physical transmission line. Because CAN bus controller MCP2510 has SPI interface, therefore, connect it with SPI0 of S3C2410A in the system.
2.5 Fault detection module
The fault detection module mainly detects the main technical parameters of the car and displays it on the LCD display. If a fault is detected, an alarm signal will be issued. The main technical parameters tested in this paper include fuel consumption, braking force, steering force, engine temperature, coolant temperature, headlights, and interior noise and exhaust. This module mainly converts various signals into electric signals through various sensors, and then uses signal processing circuit to process the electric signals accordingly, so that it can carry out data transmission with the CAN bus module.
2. 6 LCD module
The LCD module is used to display information and provide a good human-computer interaction interface. The processor S3C2410 of the main control module of this system has a built-in LCD controller and supports STN-LCD and TFT-LCD. This article chooses Sharp’s TFT-LCD module LQ080V3DG01, which has a resolution of 640×480 and a color depth of 18 bits, which can be directly connected to the LCD interface of S3C2410A.
3 Intelligent vehicle system software design
Because Linux has many advantages such as open source code, convenient tailoring, and convenient transplantation, this system chooses embedded Linux as the software operating platform. Embedded Linux is to transplant the Linux kernel to the S3C2410A platform. The embedded Linux operating system not only makes software development more flexible, but also improves the reliability of the entire system. The specific process of the software design is shown in Figure 2.
The cross-compiler environment is a comprehensive development environment composed of compilers, linkers and interpreters. BootLoader is the first piece of software code that the system is powered on and runs, which is similar to the BIOS of a PC plus the boot program in the MBR of the hard disk. It can initialize hardware devices and establish a map of memory space, so as to bring the system’s software and hardware environment to a suitable state, and prepare a suitable environment for the final call of the operating system kernel or user applications. The transplantation of Linux operating system is to move the Linux kernel to S3C2410A after re-cutting and compiling. The following mainly describes the writing of each module driver and application program.
3.1 The realization of GPS positioning function
The basic idea of GPS module software design is as follows: first receive the complete NMEA0183 sentence, and then extract the relevant data (time, latitude, longitude, speed), and then send these data to display or send out, and can be saved for future viewing.
Since the GPS module communicates with S3C2410A through serial port 1, this article designs the corresponding serial port communication program under the Linux system. The specific steps of serial port programming are as follows:
(1) Initialization of serial port 1: Set the communication mode of serial port 1 to 8 data bits, 1 stop bit, and no parity bit. The baud rate is 4 800 b/s.
(2) Receive ASCII code character information frame by frame.
(3) Data processing for each frame of ASCII code character information.
In the process of data processing, the following serial communication ideas are designed for the required positioning information requirements:
① Use “$GPRMC” as the filter condition to receive positioning sentences.
②The 59 characters after “$GPRMc” are useful information, so “59” is used as the basis for judging the integrity of the positioning sentence.
③In the process of data reception, there are often two situations. One is that each frame will get a complete sentence starting with “$GPRMC”, and the other is that the second half of the previous frame is before the next frame. A complete positioning statement composed of one part.
3.2 Realization of GPRS communication module
The GPRS module uses the GPRS wireless network to realize the wireless transmission of data, thereby setting up a communication bridge between different vehicles or vehicles and the control center. Therefore, the function of the software is mainly to establish a wireless connection and transmit data according to the GPRS communication protocol.
The communication of the GPRS module is mainly realized through the serial port driver. The embedded Linux kernel has provided support for the serial device. Therefore, when configuring the kernel compilation options, you only need to select the support for the serial device to realize the connection to the GPRS module. Serial data communication function. In order to achieve communication with the Internet, PPP and TCP/IP protocols need to be selected when configuring the kernel compilation options. In this way, once the network connection is established, the application can be used to realize the communication of network data.
The data link layer of this system uses the PPP protocol, which is a character-oriented protocol designed to transmit data packet connections between two peer entities. It uses the extensible link control protocol LCP to establish, configure, and Test the data link. Use the network control protocol family NCP to establish and configure different network layer protocols, and allow the use of multiple network layer protocols. A PPP session is divided into four steps: connection establishment, connection quality control, network layer protocol configuration and connection termination.
The embedded Linux system kernel is derived from the Linux kernel and retains support for TCP/IP and other network protocols. There is no big difference between writing a network application program on an embedded Linux system and writing a network application program on Linux. Usually, it can be transplanted to an embedded Linux system with only a small modification. So far, the GPRS module is completely integrated into the embedded terminal.
3. 3 CAN module realization
The tasks such as sending and receiving messages to be completed by the CAN bus driver are all developed around the CAN bus controller, so the driver is mainly to operate the internal registers of the controller MCP2510. The initialization of CAN bus controller MCP2510 is carried out according to the following steps:
(1) Software reset and enter configuration mode;
(2) Set the CAN bus baud rate;
(3) Close the interrupt and set the ID filter;
(4) Switch MCP2510 to normal state;
(5) Clear the receiving and sending buffers;
(6) Turn on the receive buffer and turn on the interrupt.
The system not only can realize vehicle positioning and data communication between the vehicle and the control center through GPS and GPRs, but also can detect the main technical parameters of the car through the CAN bus, which provides a reliable guarantee for the intelligent management of traffic roads and the safe driving of the car.