Embedded software test platform for artillery fire control system

Equipment composition

The Etest_CPS system is mainly composed of a hardware part and a software part. The hardware part is composed of PCI chassis, PCI controller and various PCI interface boards. The software part consists of test design software modules, test execution service software modules, test execution client software modules, equipment resource management software modules and other main software modules, as well as curve data generation, CRC plug-in generation and diagnosis, test data recording and viewing, and application protocol generation Tools, application agreement template management, test report generation and other series of tools.

Main functions of each module

(1) Hardware part

The hardware part of Etest adopts standard cabinet form, the host adopts PCI industrial control computer, and various interface boards adopt PCI bus interface cards. The indicators of the main hardware parts are as follows:

① Chassis

Standard 19" 4U high desktop chassis
supports PCI boards, 10 slots,
DC fan and inline air duct specially designed ventilation slots,
4 80×80×25 (mm) 12V fans at the bottom of the chassis

②Controller

Chipset: Intel GM45 + ICH9M
Memory: 8GB DDR III 1066MHz, users can expand by themselves.
Hard disk: 500GB user removable and replaceable

③ARINC429 module

Support channel configuration: 2 sending and receiving channels each
Support 100K/50K/48K/12.5KBPS and user-defined baud rate
Support FIFO and Schedule two transmission modes
Support SDI and Label two reception filtering modes
Support Time Stamping
Support interrupt, External trigger

④1553B module

Fully comply with the MIL-STD-1553B protocol
Dual channels and BC, RT, BM multi-function
support 1M/2M/4Mbps and user-defined baud rate
Each channel is dual redundant A, B channel
frame interval and message interval time can be Software settings
Support time stamp, resolution 1μs,
support self-test, error injection,
support interrupt, support external trigger

⑤ RS232/422/485 serial port module

Communication protocol: Asynchronous RS232/422/485 can be set by software.
Number of channels: 8 channels each for RS232/422/485.
Baud rate, customized according to user needs, up to 8M
data bit length, stop bit, check bit software can be set to
two Two data receiving methods: protocol receiving and transparent receiving. When receiving
protocol, you can set the receiving frame header.
When receiving transparently, you can set the filter.
Provide FIFO empty and full interrupt flags.
Receiving FIFO: 32M RAM space in total.
Sending FIFO: 2Kbyte transmission FIFO
support per channel Interrupt, external trigger

⑥ CAN module

Compatible with CAN2.0A and CAN2.0B protocol, support standard frame and extended frame;
number of channels: 4
support two-way transmission, CAN send, CAN receive
support time stamp, accuracy 1μs
DC2500V electrical isolation protection
support data frame, remote frame format;
CAN control The baud rate of the device is optional and configurable between 5Kbps-1Mbps;

⑦ AD module

64 channels single-ended/32 channels differential input
Single channel sampling rate up to 1MSPS
input range optional ±100V/±40V/±10V
ADC resolution: 16bit
range file, programmable
32KByte/channel FIFO
external trigger function

⑧ DA imitation

64-channel output
DAC resolution: 16bit
output voltage: ±10V
output accuracy: 0.2%FSR
output impedance: 10Ω
maximum drive current: 10mA/channel

⑨ Optically isolated discrete I/O module

64 channels of optically isolated discrete input/output,
each channel of optical isolation,
switch support 28V/OPEN, GND/OPEN
support wide input voltage range -60V~+60V
support maximum switch voltage ±60V
support self-recovery circuit breaker protection current

(2) Test design software module

The test design software module models the system to be tested and its external interfaces, performs protocol editing and analysis, creates test monitoring, establishes hardware planning, creates and manages test cases, and determines the number of interface devices to be prepared for testing. Its main functions include:
 Carrying out test plan management, the operations for the test plan include: create a plan, open a plan, and save a plan.
 Each test plan can contain one or more test items. The existence of multiple test items enables each test plan to complete the design of multiple test items, which facilitates the integration test of multiple configuration items into the system.
 The test project has operations of creating, renaming, deleting and viewing attributes.
 Graphically describe the system under test, the peripheral system and the external interface of the system under test, including the number and type of interfaces, including RS422, 1553B, CAN, AD, DA, DI, DO, CT, Freq-CT, TCP and other types; able to set interface parameters.
 Create an interface protocol, and use the protocol description language to describe the protocol, including packet header, packet tail, check, etc., describe each field type and encoding method, as well as branch, loop and other structures.
 In order to meet the needs of various data communication, the protocol field has a wealth of types, including: integer (unsigned and signed, 8-bit/16-bit/32-bit/custom length), floating-point type, Boolean type, conditional statement Type, branch statement type, calculated field, check field, array field.
 Create test monitoring, describe the monitoring content and display form of real-time data monitoring, and set alarm conditions.
 Users can add test monitoring to the test monitoring module and add data monitoring instruments on the monitoring panel, and bind the protocol fields of different types of monitoring instruments or the results of field calculations according to a certain formula, so as to monitor the pointers or values ​​of the instruments at runtime The change of the data visually shows the change of the data during the test communication.
 The test monitoring toolbar manages all test monitoring instruments, including digital meters, disc meters, graphs, enumerated types, etc. Select the appropriate monitoring instrument and drag it to the appropriate position on the monitoring panel to add the monitoring instrument to the monitoring panel. Drag the edge of the monitoring instrument with the mouse to adjust its size.
 Open the "Properties" tab, you can modify the properties of the test instrument. The most important attribute is the "protocol segment" attribute, which indicates the data source of the monitoring instrument.
 Through the expand button on the right side of the "Protocol Segment" property, you can open the "Binding Data Protocol" dialog box, which displays all the protocols and protocol segments in the simulation model of the current project.
 The data source of the test instrument can be either a protocol field or a formula composed of several protocol fields.
 Enter the protocol field or the formula composed of the protocol field in the input box at the lower part of the "Binding Data Protocol" dialog box. Double-click the desired field name to add the field name to the cursor position of the custom formula.
 Create a test hardware plan, determine the interface board equipment to be used for the test, and the resources corresponding to the interface board equipment.
 Create test cases and provide management methods for test cases, including grouping, deleting, renaming, etc.
 The content of creating test cases, including the use of test scripts to describe the test process, including variable definitions, conditional statements, loop statements, output statements, mathematical operations, function definitions, etc.
 Provides an extended interface for test scripts, which can realize data interaction and automatic data analysis to the DUT, and parse the bit stream into meaningful user data.
 Provide a way of timing control, and be able to perform specified operations in accordance with a certain timing.
 Provide the operating environment setting method, set the IP address and port number of the simulation model server, data center server, test execution server and client during the test operation.
 Provide the function of configuring standard input and output monitoring, and determine the type configuration of standard input and output monitoring.
 Provide a test script execution mode, which can run the test script selected by the user; the user can choose to terminate the script running.
 Able to view output information and error information.

(3) Test execution service software module

The test execution software module is the main part of the automated test execution software. It cooperates with the client software to drive test data and perform automated test execution. Mainly realize the following functions:
 Provide process scheduling service background running program, with the help of process scheduling agent, according to the design of the test design software, start the test execution, client, server and other processes on the PCI controller, and pass the process scheduling service Coordinate the operating logic of each software.
 Provide the background running program of the simulation model server, analyze the simulation model established by the test design through the simulation model server, and realize the simulation analysis service of data transmission and reception during test execution.
 Provide the data center server background running program. During the execution of the test case, the data center server will centrally and uniformly process the receiving and sending receipts in the channel to ensure the distributed realization of data monitoring.
 Provide the use case server background running program to analyze and process the execution process of the test cases written in the test design.
 Provide standard input and output monitoring window program, which can display the debugging information during the operation of simulation model server, data center server, client process and use case server.
 Analyze the variable definitions, conditional sentences, loop sentences, output sentences, mathematical operations, function definitions and other sentences in the test script, and perform corresponding operations.
 Analyze the test script extension interface to realize data sending/receiving and data analysis to the system under test.
 Analyze the test script and operate in accordance with the timing control requirements.
 The test data injection package sent to the client software; the test data output package sent by the client software is received.
 Immediately stop the execution of test cases according to user requirements.
 Record and display the execution results of test cases.

(4) Test execution of client process and data monitoring module

The test execution client process and data monitoring module runs on the PCI controller. Mainly realize the following functions:
 Provide device driver function, realize the driving ability of 1553B, CAN, RS422, RS232, AD/DA/DI/DO and other interface boards.
 The test execution client software and the test execution software both run in the PCI controller, and use the memory mechanism to exchange data.
 Use the configured communication parameters in the test design software to communicate with the DUT.
 Provide a convenient way of hardware board expansion to facilitate the integration of new hardware boards.
 Receive the test data injection packet sent from the test execution software, convert the data format, and send it to the DUT through the communication board.
 Receive the test data output package sent from the DUT and forward it to the test execution software.
 After logging in to the test service software, all test monitoring interfaces designed by the test design software are displayed, and one or more test monitoring panels can be selected for test monitoring.
 Run the specified test monitoring, display the specified test data in real time during the test execution, and provide data monitoring methods such as digital instruments, dashboards, enumeration items, and graphs.
 It can display the test data in test execution in real time;
 It can display the test data in the parsed protocol data format, or it can display the test data in binary, octal, hexadecimal.
 Data filtering conditions can be set to realize the function of displaying specific data on the interface.
 Data alarm conditions can be set. When a certain characteristic data appears, the software will display the data that meets the alarm conditions in a conspicuous form.
 You can query data, you can query the message of a certain period of time, or you can query the data of a certain protocol field.
 You can perform statistics on the specified data, and you can also view the data curve graph.

(5) Equipment resource management software module

The equipment resource management software module provides the test equipment and channel management functions supported by the system, and provides an interface for system equipment expansion. It mainly realizes the following functions:
 Add and delete system equipment.
 Modify the number of system equipment.
 Add and delete channels included in the device.
 Modify the number and type of channels included in the device.
 Save the device information to the device resource file and use it in the test design software.

(6) Auxiliary tools

The tool software provides some commonly used software tools for embedded system testing, mainly including the following software modules:
 Curve data generation tool;
with curve data editing, coordinate selection, curve data reading, curve data storage and other functions, to cooperate with the test execution software , Provide a test data generation method.
 Application protocol interface debugging assistant;
serial port (RS232/422/485) debugging assistant with application protocol analysis function, which can realize the setting of the serial port (RS232/422/485) interface, data transmission and reception, and automatically resolve to the upper application when receiving, When sending, the interface data packet is automatically formed according to the application data.
 Test data recording and viewing tool;
during test execution, the data during test execution can be recorded for viewing and analysis after the test execution, including protocol selection, data filtering, and alarm condition setting functions.
 Application protocol generation tool;
provides tabular editing function of application protocol, and can set the field composition, field type, field default value, etc. of the protocol.
 Agreement template management tool;
store the written application agreement as an agreement template to realize the reuse of the agreement and realize the management of the template library, including functions such as adding templates, importing templates, and editing templates.
 CRC plug-in diagnostics and CRC plug-in generator
provide the design function of the CRC check algorithm, can design a custom CRC algorithm, diagnose the correctness of the algorithm, and finally form the CRC field algorithm plug-in in the protocol description language.
 Test report generation tool It
has the functions of editing and managing test report templates and automatically generating test reports.

Guess you like

Origin blog.csdn.net/weixin_45013592/article/details/114433641