With the widespread application of electronic products, various power supply devices are used, and the reliability of power supply equipment is directly related to the safety and accuracy of system operation. Therefore, the inspection of these power supply devices is very important. Electronic load is a device that comprehensively tests the output characteristics and reliability (aging discharge) of equipment or conversion devices that output electrical energy in the power supply system, such as generators, AC/DC, DC/AC converters, batteries, rectifiers, and inductors, capacitors and other components. There are many shortcomings in the widely used electronic loads now, such as only being able to work in a single-machine panel operation mode, lacking the upper computer monitoring function, lacking a graphical interface for data display, and not being intuitive and user-friendly; the test process must be operated by personnel throughout the process, and programming control testing cannot be performed; there is no Ethernet network interface, and remote communication and control cannot be performed. The network-based electronic load system has the following outstanding advantages over the traditional electronic load system:
(1) Testing work is performed centrally on the host computer. Automatic testing reduces the labor intensity of testers, reduces redundant personnel, and improves testing efficiency.
(2) It is convenient to reflect the power supply test status in a timely, accurate, comprehensive, intuitive, efficient and continuous manner, which is conducive to scientific management;
(3) Remote monitoring can preserve a large amount of work data for a long time and use it as a basis for scientific testing and analysis.
At present, traditional electronic loads usually use RS232, RS485 or CAN buses for network communication. However, the effective radius of these networks is short and they are isolated from the Internet network, so it is impossible to use modern network management to achieve large-scale and efficient remote monitoring. In view of the above shortcomings, this paper uses Samsung's high-performance ARM processor S3C2440 as the core to develop an Ethernet-based electronic load monitoring system, which is of great significance for realizing remote automated testing of power supply equipment.
1 Overall structure of the monitoring system
The electronic load monitoring system is a communication network with ARM as the core. The system structure is shown in Figure 1.
ARM, as a server in Ethernet communication, constitutes a node on the network and has an independent IP address. The host computer, as a client, accesses different IP addresses to communicate with ARM servers at different nodes on the network and connects or monitors the electronic load on a certain node. The control command sent by the host computer to the load via Ethernet is received by the ARM network controller and then sent to the electronic load via the RS232 bus through the ARM network controller. The electronic load uploads various data of the tested power supply and various parameters of the load operation to ARM via the RS232 bus according to the received control command. ARM uploads the data from the load to the host computer via Ethernet using the TCP/IP protocol. ARM can connect multiple loads by expanding the serial port and expand the network through the router to realize the parallel operation of multiple ARM systems and improve the load capacity of the entire monitoring system.
2 ARM Network Controller Hardware Design
The ARM system hardware uses Samsung's ARM chip S3C2440, which is based on the 32-bit ARM920T core, with a nominal operating frequency of 400 MHz, and is equipped with a 64 MBytes Nand Flash and two 32 MBtyes SDRAMs. The network chip uses DM9000A, and is equipped with a MAX3232 expansion serial port to connect to the electronic load. The structure diagram is shown in Figure 2.
3 ARM Network Controller Software Design
The operating system of the ARM embedded network controller uses Windows CE 5.0, which is a 32-bit, multi-threaded, multi-tasking operating system. It is also a modular operating system. You can select, combine and configure the modules and components of Windows CE 5.0 to create a user version of the operating system. Windows CE 5.0 meets the real-time requirements of the measurement and control system through interrupt nesting and priority processing mechanisms, and has a human-machine interface and application development tools similar to desktop systems .
In the development of Windows CE 5.0, there are two important aspects, one is kernel customization, the other is application development.
3.1 Windows CE Kernel Customization
Due to the diversity of application environments, different kernel customizations are required for Windows CE systems. Using Microsoft's PlatformBuilder integrated development environment, certain system modules are added, deleted, and modified based on the characteristics of electronic load network monitoring, including adding serial communication support, Ethernet communication support, ActiveSync support (communication support during software debugging), etc. In addition, the registry mode is changed to HIVE mode, so that the data is stored in Flash after power failure to realize the program's self-startup and parameter power-off preservation functions.
3.2 ARM communication software development
The ARM network controller serves as a bridge between the load and the host computer, realizing the interconnection between the RS232 bus and Ethernet to complete the remote network monitoring function of the electronic load. Therefore, the ARM-side communication software functions include: serial communication with multiple electronic loads; communication with the host computer based on the TCP/IP protocol, providing a visual interface to display the current network connection parameters and status, and users can set network connection parameters such as baud rate and IP address through the touch screen. The system provides a connection log for users to review. The core function is to realize the communication interconnection between the RS232 bus and Ethernet. The interconnection module adopts a multi-threaded calling method to ensure the real-time communication of the system.
The communication frame format is defined as 26 bits in length, with the following format: synchronization header, load address, command word, 4 to 25 bits for related information content, and check code.
(1) The synchronization header is AAH, which occupies 1 bit;
(2) The payload address ranges from 0 to FE, occupies 1 bit, and determines the target payload or source payload of the frame.
(3) The command word occupies 1 bit and indicates the function of the frame;
(4) Bits 4 to 25 are command parameters and feedback parameters.
Socket is the basic operation unit of network communication that supports TCP/IP protocol. Through Socket programming, you can easily access TCP/IP to develop Ethernet communication programs. The server-side program workflow of TCP-based Socket programming in Embedded VC++ is as follows:
(1) Create a socket Socket();
(2) Bind the socket to a local address and port bind();
(3) Set the socket to * mode and receive the request from the host computer (listen);
(4) Wait for the host computer request. When the request comes, accept the connection request and return a new socket accept() corresponding to this connection;
(5) Use the returned socket to communicate with the host computer (send/reev);
(6) Close the socket.
Serial communication in Windows CE is similar to that in desktop Windows. The serial port is opened by the CreateFile function, and the ReadFile and WriteFile functions are used to read and write serial port data.
Modify the registry to automatically run the communication software after the ARM system is powered on: First, initialize the serial port and Ethernet, create a separate receiving thread and sending thread for each serial port, and after the Socket* is connected to the host computer, create a data receiving and sending thread connected to the host computer. When the serial port receiving thread receives data, it triggers the corresponding callback function and calls the Socket sending thread to send the data to the host computer. When the host computer sends data to the ARM server, the Socket receiving thread triggers the corresponding callback function and calls the corresponding serial port sending thread to forward data to the specified target load according to the load address in the frame. The workflow is shown in Figure 3. [page]
The user interface provides various communication parameter settings, server control, system connection status display, and log record display functions. The software interface captured using Remote Zoomin in Embedded VC++ is shown in Figure 4.
4. Design of host computer monitoring software
The upper computer monitoring software uses Delphi as the development environment to control the electronic load to run in different working modes such as constant current mode, constant resistance mode, constant power mode, etc. According to the real-time feedback data of the electronic load, the changes in the load's voltage, current, power and other parameters during the entire working process are displayed and recorded in various forms such as images and texts. At the same time, the transient operation data of the load is comprehensively analyzed and the relevant performance indicators are calculated. The upper computer, as the client in the monitoring network, uses Intelnet Direct (Indy) controls. Indy is a set of open source Internet components that use blocking communication. In order to avoid blocking the main thread in the communication link, a separate receiving thread is created to realize network communication. The software workflow is shown in Figure 5.
During the initialization process, the host computer scans the network according to the set IP address and port range, obtains the operating status of the ARM server in the network, and returns the available ARM server IP address and port. The user selects an available target ARM server to complete the network connection of the load monitoring system and realize the host computer's monitoring of the load. The host computer monitoring software sends control commands to the target load at set time intervals, such as status parameter query commands. After receiving the command, the load sends return data, and the monitoring software obtains the current operating status information of the load based on the return data.
The host computer monitoring software uses multiple pages to dynamically generate a separate monitoring interface for each load to ensure the effective use of system resources. The display of the global operating status of the load in the public control area and the global control function button are retained to facilitate the observation of the operating status of all loads and complete the synchronization of multiple loads. The working status of the monitoring software is shown in Figure 6.
5 Conclusion
This paper proposes an ARM-based electronic load network monitoring system, gives the structure of the system's hardware and software, and makes full use of the advantages of Ethernet to achieve flexible and reliable communication. This system can complete the operation monitoring of the entire electronic load system, making up for the shortcomings of the current electronic load monitoring system on the market. This system has been successfully applied to the power supply test system of a power supply laboratory of a scientific research unit. Compared with the traditional system, it expands the monitoring range and improves the power supply test efficiency.
Previous article:Analysis of ZigBee Technology Intelligent Control of Urban LED Street Light System
Next article:Realization of railway data real-time acquisition system based on S3C2410
- Popular Resources
- Popular amplifiers
Professor at Beihang University, dedicated to promoting microcontrollers and embedded systems for over 20 years.
- LED chemical incompatibility test to see which chemicals LEDs can be used with
- Application of ARM9 hardware coprocessor on WinCE embedded motherboard
- What are the key points for selecting rotor flowmeter?
- LM317 high power charger circuit
- A brief analysis of Embest's application and development of embedded medical devices
- Single-phase RC protection circuit
- stm32 PVD programmable voltage monitor
- Introduction and measurement of edge trigger and level trigger of 51 single chip microcomputer
- Improved design of Linux system software shell protection technology
- What to do if the ABB robot protection device stops
- Keysight Technologies Helps Samsung Electronics Successfully Validate FiRa® 2.0 Safe Distance Measurement Test Case
- Innovation is not limited to Meizhi, Welling will appear at the 2024 China Home Appliance Technology Conference
- Innovation is not limited to Meizhi, Welling will appear at the 2024 China Home Appliance Technology Conference
- Huawei's Strategic Department Director Gai Gang: The cumulative installed base of open source Euler operating system exceeds 10 million sets
- Download from the Internet--ARM Getting Started Notes
- Learn ARM development(22)
- Learn ARM development(21)
- Learn ARM development(20)
- Learn ARM development(19)
- Learn ARM development(14)
- Does any enthusiastic netizen have the manual of the following chip (JRL21)? It's strange, I can't find it on Baidu.
- Answers to eight classic questions in PCB design!
- Comparison between NFC, RFID, infrared and Bluetooth
- MSP430 Clock Analysis
- Prize-giving event | Stand on NI's shoulders and explore the mysteries of data together!
- A summary of the most downloaded electronic technical materials this week (2020.6.8~12)
- HPS calls have no input or output pins
- MPPT solar lithium battery charger based on single chip microcomputer
- Data sharing: A brief review of the 2018 National Undergraduate Electronic Design Competition TI Cup and sharing of preparation experience
- STM32 assignment question