In recent years, data transmission in the field of embedded wireless networking is mostly based on 802.x or WI-FI technology, and is implemented with wireless network cards or wireless routers. At present, there are also embedded related designs based on mobile phone wireless data transmission, but most of them are monitoring designs based on 2.5G technology SMS mode. On this basis, a video image transmission system based on 3G wireless transmission module under embedded Linux system is designed. The SOC high-performance video codec Hi3510 is adopted, which has powerful video processing functions and realizes real-time encoding and transmission of D1 picture quality. Therefore, this system design realizes video transmission on 3G mobile network.
1 Overall design of the system
Hi3510 is selected as the encoding process of video data, and DTM6211 wireless module is selected to send and process video data. Figure 1 is a block diagram of the working principle of the system. Its overall working principle is: the data collected by the camera is input into the main mode TW2834 chip through the PAL CVBS signal, and after A/D conversion, it is transmitted by BT. 656 interface receives the signal converted into CIF format, and
stores the received image data into the external memory SDROM through the AHB bus; Hi3510 reads the video data in the external memory, performs H. 264 encoding, including intra-frame prediction, inter-frame prediction, DCT transformation, quantization, entropy coding, etc., and stores the encoded raw code stream in the peripheral device; the video data in the peripheral device is sent to the wireless module through the USB port via the test board, and the UDP data transmission setting control work of the wireless module is controlled by sending AT commands through the RS232 interface of Hi3510 via the test board, and then the wireless module encapsulates the data into an IP data packet that conforms to the UDP format, and finally sends it to the network using the PS service.
2 System Hardware Design
2.1 Video Processing Module
The video processing module collects video signals from the remote camera. The analog video signals are input into TW2834 in the CVBS signal format. TW2834 is a video controller with built-in PAL/NTSC video decoder, color controller and PAL/NTSC video encoder, which mainly completes the conversion of analog signals to digital signals. After decoding, the converted digital signals are input into the Hi3510 processor through the BT656 interface for H.264 encoding.
The video processing module uses Hi3510, which is a video compression chip based on the H.264BP algorithm. It adopts a multi-core highly integrated SoC architecture of ARM+DSP+hardware acceleration engine. It has powerful video processing functions, can realize real-time encoding of DVD quality, can adapt to various network environments, ensure the clarity and real-time performance of the picture, and the low-bitrate H.264 encoding technology greatly reduces the network storage space, and ensures network security by integrating DES/3DES encryption and decryption hardware engines. Figure 2 is the logic block diagram of Hi3510.
Hi3510 contains a series of video codec coprocessors to improve the speed of encoding and decoding. The video codec part completes the image motion estimation/compensation, DCT/IDCT transformation, quantization/inverse quantization, zigzag scanning and loop filtering. Finally, the encoded video data is stored in the external memory SDROM.
2.2 Video transmission module
Figure 3 is the internal principle block diagram of the wireless transmission module. DTM6211 is a 60-pin 0.5mm pitch board-to-board connector and an antenna connector. The cable matching the antenna connector can be connected to the antenna MHF Plug Cable Assembly. The serial communication uses RS232, which can be connected to the Hi3510 serial port. The module uses a 5-wire connection method and hardware flow control is enabled by default. The USB interface can be used as a communication port and a debugging port. As a USB Device, it follows the USB2.0 protocol specification and supports the maximum rate of FULL SPEED (12 Mb/s). The transmission part uses the SMA (FEMALE) interface to feed the antenna, and the external antenna uses a rod antenna.
The DTM6211 interface has two UART interfaces, and UART1 is used as the AT command receiving port of Hi3510, and the transmission speed is set to 115 200 b/s. The UART1 signal definition is shown in Table 1. The USB interface of the module is used as a communication port for the transmission of video data, and its interface signal definition is shown in Table 2.
2.3 Module Hardware Connection
Hi3510 and DTM6211 are connected through a test board. The main function of the test board is to connect the USB and UART ports of Hi3510 and DTM6211, which plays a role of physical interface conversion and also serves as a storage for USIM cards. For the connection between USB and UART, just connect the USB port and RS232 interface of the Hi3510 board to the corresponding interface of the test board, and directly plug the DTM6211 pin interface into the test board. The hardware circuit of the main part of the USIM card in the test board is shown in Figure 4.
The RF interface of the DTM62ll module includes an antenna connector, which is connected to the external antenna through a cable. The antenna connector uses I-PEX's 20279-001E-01, and the connecting cable uses Suzhou Wanxu Electronics HM5A-12289-A1DE's 50 mm long double-terminal cable. The antenna connector end Plug Cable Assembly uses MHFⅡPlug Cable Assembly.
3 System Software Design
3.1 Operating System and Driver Design
Hi3510's embedded Linux-2.6.14 kernel operating system is selected. Before development, it is necessary to build a development environment. You can install a Fedoral 9.0 server, build a cross compiler, and install the SDK package. SDK is a software development tool based on the Hi3510 video evaluation board. It contains various tools used in Linux-related application development and is the most basic platform software for user development. Bootloader uses uboot-1.1.4 to initialize the hardware device and download the Linux kernel through the network port. The kernel can be customized by making menuconfig, removing irrelevant parts of the system, reducing the kernel, and finally using the mkimage tool to make the configured kernel into an image file, which can be downloaded to Hi3510 through the network port.
The wireless transmission module can realize its driver part in the kernel by reconfiguring the kernel Usb Serial Driver option, but the PID and VID of the Usb Driver need to be set as the ID of this module, and recompile to support the wireless transmission module.
The steps to change the ID are as follows:
First enter linux-2.6.14\drivers\usb\serial, open the file option. c, and define two macros in it (VID of DTM6211: 0x1AB7 PID: Ox6000):
3.2 Video processing software design
The video processing software mainly performs H. 264 compression, the parameters involved in the encoding need to be configured by calling the API provided by the SDK, including the picture group length (GOP), encoding frame rate (frames/second), quantization parameter (maxqp), bit rate (b/s) and user data insertion, and then the compressed raw stream is sent to the USB port. In order to improve the compression rate, the GOP is set to 15; in order to reduce network data traffic, the encoding rate is set to 8 frames/second; the value of the quantization parameter is selected between 30 and 40. The overall design process is shown in Figure 5.
Regarding the configuration of the camera, open() opens the /dev/misc/tw2834dev camera device file, completes the selection of normal as PAL format and mode as GIF format; configures the input common attributes, first opens the video encoder, and closes the video input channel, then completes the settings of the working mode as slave mode, the interface type of VIU and A/D converter BT656, the channel distribution mode 4-way CIF, BT656 as field mode, and the video memory consumption as 1Ox1 024x1 024.
After VSTART enters the channel number, a thread needs to be created to complete the subsequent data storage and forwarding, using the pthread_create() function, and then executing the thread venc_start(). The core program is as follows:
3.3 Wireless module control design
The wireless module DTM6211 provides a TCP/IP protocol stack, which can use the PS service channel to send IP packets and use AT instructions to configure and control the TCP/IP protocol stack. The APP processor is used to configure the TCP/IP related environment and register the UDP port. The APP processor sends the data to be sent directly to the module, which encapsulates the data into an IP packet that conforms to the UDP format and then sends it to the 3G network using the PS service channel. The control flow is shown in Figure 6.
The power-on initialization part mainly completes the activation of the SIM card, TCP/IP protocol stack and network registration; the activation scene mobile part mainly completes the parameter settings of PDP and context, including configuring the use of IP protocol, applying for an uplink speed of 1.5 MB/s, and establishing a packet transmission route for the user plane. After completing the above initialization work, it is necessary to establish a listening port number of 13000, specify the destination address 218.18.141.79 and port number 3000 to send data in UDP mode, and finally specify the number of bytes to be sent. After the data is sent, the UDP port number and other related resources are released.
4 Conclusion
The Hi351O+Linux solution is adopted. Its built-in SDK development package reduces the difficulty of application development. At the same time, Hi3510 itself adopts the technology of ARM+DSP+hardware acceleration engine, has powerful video processing functions, and has the advantages of low cost and low development difficulty. With the DTM62ll wireless transmission module, the data is packaged in UDP through AT instructions, and finally the video data packet is sent to the 3G network. The test results show that the uplink transmission rate of data is 150-200 KB/s due to the influence of network environment. This system can be used for remote network monitoring applications. Compared with the SMS monitoring method of 2.5G technology, users can obtain more effective information.
Previous article:Buck Switching Regulator AP1510 and Its Application
Next article:RL512G signal amplifier circuit
Recommended ReadingLatest update time:2024-11-17 00:33
- Popular Resources
- Popular amplifiers
- Wireless Sensor Network Technology and Applications (Edited by Mou Si, Yin Hong, and Su Xing)
- Siemens PLC Programming Technology and Application Cases (Edited by Liu Zhenquan, Wang Hanzhi, Yang Kun, etc.)
- 西门子S7-12001500 PLC SCL语言编程从入门到精通 (北岛李工)
- Siemens Motion Control Technology and Engineering Applications (Tongxue, edited by Wu Xiaojun)
Professor at Beihang University, dedicated to promoting microcontrollers and embedded systems for over 20 years.
- Innolux's intelligent steer-by-wire solution makes cars smarter and safer
- 8051 MCU - Parity Check
- How to efficiently balance the sensitivity of tactile sensing interfaces
- What should I do if the servo motor shakes? What causes the servo motor to shake quickly?
- 【Brushless Motor】Analysis of three-phase BLDC motor and sharing of two popular development boards
- Midea Industrial Technology's subsidiaries Clou Electronics and Hekang New Energy jointly appeared at the Munich Battery Energy Storage Exhibition and Solar Energy Exhibition
- Guoxin Sichen | Application of ferroelectric memory PB85RS2MC in power battery management, with a capacity of 2M
- Analysis of common faults of frequency converter
- In a head-on competition with Qualcomm, what kind of cockpit products has Intel come up with?
- Dalian Rongke's all-vanadium liquid flow battery energy storage equipment industrialization project has entered the sprint stage before production
- Allegro MicroSystems Introduces Advanced Magnetic and Inductive Position Sensing Solutions at Electronica 2024
- Car key in the left hand, liveness detection radar in the right hand, UWB is imperative for cars!
- After a decade of rapid development, domestic CIS has entered the market
- Aegis Dagger Battery + Thor EM-i Super Hybrid, Geely New Energy has thrown out two "king bombs"
- A brief discussion on functional safety - fault, error, and failure
- In the smart car 2.0 cycle, these core industry chains are facing major opportunities!
- The United States and Japan are developing new batteries. CATL faces challenges? How should China's new energy battery industry respond?
- Murata launches high-precision 6-axis inertial sensor for automobiles
- Ford patents pre-charge alarm to help save costs and respond to emergencies
- New real-time microcontroller system from Texas Instruments enables smarter processing in automotive and industrial applications
- Torque motor???
- It's time to test your eyesight
- 12V lithium battery, is there any suitable charging circuit recommended?
- I2C operation of RSL10 and reading of acceleration measurement data of KX023
- The input voltage of the boost circuit is 9 to 16V. The output voltage range is 31V to 50V. How do I calculate the inductance?
- Register and download to win practical gifts! Have you used ECal? Do you know Rcal?
- QUARTUS 9.0 simulation output is always low level
- PI understands fast charging needs better. Download product information to win gifts!
- Experience using Python in MakeCode
- How to not set a password in AP mode