CN110825412B - LabVIEW-based controller program refreshing system and method - Google Patents

LabVIEW-based controller program refreshing system and method Download PDF

Info

Publication number
CN110825412B
CN110825412B CN201911059494.XA CN201911059494A CN110825412B CN 110825412 B CN110825412 B CN 110825412B CN 201911059494 A CN201911059494 A CN 201911059494A CN 110825412 B CN110825412 B CN 110825412B
Authority
CN
China
Prior art keywords
operator
data
controller
refreshing
service
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201911059494.XA
Other languages
Chinese (zh)
Other versions
CN110825412A (en
Inventor
李然
吴炎花
陈建平
徐吉林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Electric Group Corp
Original Assignee
Shanghai Electric Group Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Electric Group Corp filed Critical Shanghai Electric Group Corp
Priority to CN201911059494.XA priority Critical patent/CN110825412B/en
Publication of CN110825412A publication Critical patent/CN110825412A/en
Application granted granted Critical
Publication of CN110825412B publication Critical patent/CN110825412B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Testing And Monitoring For Control Systems (AREA)
  • Debugging And Monitoring (AREA)

Abstract

The invention discloses a brushing system, a method, a medium and electronic equipment of a LabVIEW-based controller program, wherein the brushing system comprises a front panel control operator, a service flow control operator, a CAN data receiving and transmitting operator and a file data analysis operator: the front panel controls the operator to receive the configuration requirements; the service flow control operator forwards the configuration requirement to a file data analysis operator; the file data analysis operator reads a pre-stored binary file according to a configuration requirement, analyzes the binary file into data blocks, and the service flow control operator is also used for integrating the data blocks into the refreshing service and starting the refreshing process service flow; the CAN data transceiver operator is used for sending the service to the controller, and the controller is used for executing the service and updating the data of the controller program by using the data blocks. The software architecture of the technical scheme of the invention has flexible structure, low dependency among operators and stronger expansibility.

Description

LabVIEW-based controller program refreshing system and method
Technical Field
The invention relates to the technical field of computers, in particular to a LabVIEW-based controller program refreshing system, a LabVIEW-based controller program refreshing method, a LabVIEW-based controller program refreshing medium and electronic equipment.
Background
The basic principle of the controller program refreshing, which can also be called data filling, is as follows: the external data refreshing tool sends data information to the controller through a communication network, so that timely management and updating of the controller data are realized.
The commonly used method for refreshing the controller program in the prior art is to use a BDM (Background Debugging Mode, background debug mode) port to perform Flash (brushing), however, the method needs to open the controller to refresh the bare board, and for the packaged controller, the operation steps are complicated, and the labor cost is high. In addition, the software program refreshing method adopts a traditional process-oriented software architecture, and when the refreshing flow is changed, the whole software architecture needs to be redesigned and inspected, and the main program is modified, so that the reliability and maintainability of the software are reduced, the software test items are increased, and the labor cost and the time cost are further increased.
Disclosure of Invention
The invention aims to overcome the defects of high cost and low maintainability in the process of brushing a controller program in the prior art, and provides a brushing system, a brushing method, a brushing medium and electronic equipment of the controller program based on LabVIEW.
The invention solves the technical problems by the following technical scheme:
a LabVIEW-based controller program flashing system comprising a front panel control operator, a service flow control operator, a CAN data transceiver operator, and a file data parsing operator:
the front panel control operator is used for receiving configuration requirements of a user, wherein the configuration requirements comprise file paths;
the front panel control operator is further configured to communicate the configuration requirements to the service flow control operator, which is configured to forward the configuration requirements to the file data parsing operator;
the file data analysis operator is used for reading a pre-stored binary file according to the file path in the configuration requirement and analyzing the binary file into data blocks, and the file data analysis operator is also used for transmitting the data blocks to the service flow control operator;
the service flow control operator is used for controlling a refreshing process service flow, the refreshing process service flow comprises a plurality of services, the plurality of services comprise refreshing services, the service flow control operator is also used for integrating the data blocks into the refreshing services and starting the refreshing process service flow;
the service flow control operator is further used for sequentially sending a plurality of services to the CAN data transceiver operator, the CAN data transceiver operator is used for sending the services to a controller, and the controller is used for executing the services and updating data of the controller program by using the data blocks in the refreshing service.
Preferably, the system further comprises a swipe recording operator;
the front panel control operator is further used for generating a refreshing log and transmitting the refreshing log to the refreshing record operator, the refreshing record operator is used for receiving and summarizing the refreshing log, and the refreshing log comprises one or more of refreshing time, refreshing flow, refreshing times and refreshing results.
Preferably, the swipe record operator is further configured to store the swipe log in a hard disk.
Preferably, the CAN data transceiver operator also preprocesses the service to form a CAN message; the CAN data receiving and dispatching operator is also used for controlling CAN hardware so that the CAN hardware sends the CAN message to the controller;
and/or the number of the groups of groups,
after the controller executes the service, the CAN data transceiver operator is further used for receiving receipt information sent by the controller, wherein the receipt information is used for indicating whether the controller executes the service correctly.
Preferably, the controller has a controller address;
the file data analysis operator is further used for deleting redundant data in the binary file to obtain the data block matched with the controller address, wherein the redundant data is data which does not belong to a data interval defined by the controller address;
and/or the number of the groups of groups,
the file data analysis operator is further used for adding missing data in the binary file to obtain the data block matched with the controller address, wherein the missing data refers to data which belongs to a data interval defined by the controller address and has no corresponding numerical value in the binary file.
A method for brushing a controller program, wherein the method is realized by using the brushing system of the controller program based on LabVIEW;
the brushing method comprises the following steps:
the front panel control operator receives a configuration requirement of a user, wherein the configuration requirement comprises a file path;
the front panel control operator transmits the configuration requirements to the service flow control operator, which forwards the configuration requirements to the file data parsing operator;
the file data analysis operator reads a pre-stored binary file according to the file path in the configuration requirement, analyzes the binary file into data blocks, and transmits the data blocks to the service flow control operator;
the service flow control operator also integrates the data blocks into a flushing service and starts a flushing process service flow; the service flow control operator controlling the flushing process service flow, the flushing process service flow comprising a plurality of services, the plurality of services comprising a flushing service;
the service flow control operator also sequentially sends a plurality of services to the CAN data transceiver operator, and the CAN data transceiver operator sends the services to a controller;
the controller executes the service and updates the data of the controller program with the data blocks in the swiping service.
Preferably, the brushing method further comprises:
the front panel control operator generates a refreshing log and transmits the refreshing log to the refreshing record operator, the refreshing record operator receives and gathers the refreshing log, and the refreshing log comprises one or more of refreshing time, refreshing flow, refreshing times and refreshing results.
Preferably, after the swipe record operator gathers the swipe log, the swipe log is also stored in the hard disk.
Preferably, the step of the CAN data transceiver operator transmitting the service to the controller includes: the CAN data receiving and dispatching operator preprocesses the service to form a CAN message; the CAN data receiving and dispatching operator is also used for controlling CAN hardware so that the CAN hardware sends the CAN message to the controller;
and/or the number of the groups of groups,
the step of the controller executing the service further comprises: the CAN data transceiver operator also receives receipt information sent by the controller, wherein the receipt information is used for indicating whether the controller executes the service correctly.
Preferably, the controller has a controller address;
the step of the file data parsing operator parsing the binary file into data blocks includes:
the file data analysis operator deletes redundant data in the binary file to obtain a data block matched with the controller address, wherein the redundant data is data which does not belong to a data interval defined by the controller address;
and/or the number of the groups of groups,
the file data analysis operator is used for supplementing missing data in the binary file to obtain a data block matched with the controller address, wherein the missing data is data which belongs to a data interval defined by the controller address and has no corresponding numerical value in the binary file.
An electronic device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, the processor implementing the steps of the aforementioned method of flushing the controller program when the computer program is executed.
A computer readable storage medium having stored thereon a computer program which when executed by a processor performs the steps of the aforementioned method of flushing a controller program.
The invention has the positive progress effects that: the system, the method, the medium and the electronic equipment for brushing the controller program based on LabVIEW provided by the invention are used for executing the controller program brushing according to the configuration information of the user by constructing the framework formed by the front panel control operator, the service flow control operator, the CAN data receiving and transmitting operator and the file data analyzing operator. In addition, the method is used as a general software architecture, can be used for the design and rapid development of various controller refreshing software, and has strong expansibility.
Drawings
Fig. 1 is a block diagram showing the configuration of a refreshing system based on a LabVIEW controller program in embodiment 1 of the present invention.
Fig. 2 is a block diagram of a system for refreshing a LabVIEW-based controller program according to embodiment 2 of the present invention.
Fig. 3 is a flowchart of a method for flushing a controller program in embodiment 3 of the present invention.
Fig. 4 is a flowchart of a method for refreshing a controller program in embodiment 4 of the present invention.
Fig. 5 is a schematic diagram of the structure of an electronic device implementing the method of brushing a controller program in embodiment 5 of the present invention.
Detailed Description
The invention is further illustrated by means of the following examples, which are not intended to limit the scope of the invention.
Example 1
The present embodiment provides a brushing system based on a LabVIEW controller program, as shown in fig. 1, the brushing system 1 may include a front panel control operator 10, a service flow control operator 11, a CAN data transceiver operator 12, and a file data parser operator 13.
The LabVIEW in the embodiment is very suitable for rapid development as a program development environment programmed by a graphic language, but has the defects of poor program readability, high maintenance cost and the like when a program with complex structure, multiple threads and cross logic is built. For mainstream programming languages, such as java, c#, c++, etc., a computer programming architecture for Object-oriented programming (OOP) is used, which has higher reusability, flexibility, and extensibility. An operator Framework (Actor Framework) under LabVIEW can be compatible with an OOP design thought on the basis of graphical programming, so that the characteristic of quick development of LabVIEW is reserved, and the advantages of encapsulation and inheritance in OOP are absorbed.
The functions of each operator in the LabVIEW operator architecture can be understood as abstract thread functions, but unlike a common computer thread, the operators are independent of each other and independently execute the assigned functions.
The function of each of the operators is defined within an empty operator, for example: the front panel control operator 10 may define a progress bar for displaying the progress of data transmission, binary file suffix name judgment, refresh mode selection, refresh result prompt dialog, CAN initialization failure feedback dialog, continuous multiple refresh, and the like. In the file data parsing operator 13, a write-through file address field, a CRC check algorithm, a data block padding format of 0xFF, and the like may be defined. In the service flow control operator 11, security algorithms, service types, service flow control factories, etc. may be defined. In the CAN data transceiver 12, CAN be defined as kvaser CAN, the driving of the CAN be encapsulated, CAN channel CAN be set to 0, baud rate is set to 500k, interactive ID (identity) CAN be defined, ID identification of the received message is added, the controller 3 is added to keep on-line message identification and transmission, and message filling format is defined as 0x55.
It should be noted that, a class to be relied on may be added to the private attribute of the operator, and the operator may complete the configured function by calling the related class, where a class refers to a set of objects with the same attribute and method, and each class may provide a uniform abstract description for all objects belonging to the class. Each class may also be refined into multiple subclasses, e.g., a message parsing class is an abstract class that may include subclasses of single frame, first frame, continuous frame, and flow control, among others.
In this embodiment, the front panel control operator is configured to receive a configuration requirement of a user, where the configuration requirement includes a file path; the file is a binary file.
Specifically, the user may set different configuration requirements according to different applications, for example, the configuration requirements may further include a brushing mode (brushing APP (application) or brushing calization (Calibration parameter) or both brushing), a brushing number (single brushing or multiple brushing), and so on. For different scenarios, the user need only change or select different configuration requirements on the interface, and need not have the technician reprogram in the background of the system.
The front panel control operator 10 is further configured to communicate the configuration requirements to the service flow control operator 11, the service flow control operator 11 being configured to forward the configuration requirements to the document data parsing operator 13;
the service flow control operator 11 can be seen as an orchestrator of the service flow within the flushing system 1, and can provide various abstract services according to the needs of the user.
The file data analysis operator 13 is configured to read a pre-stored binary file according to a file path in the configuration requirement, and analyze the binary file into a data block, and the file data analysis operator 13 is further configured to transmit the data block to the service flow control operator 11;
preferably, the controller 3 has a controller address; the file data parsing operator 13 may delete redundant data in the binary file to obtain the data block matched with the controller address, where the redundant data is data not included in the data section defined by the controller address. For example: if the data address in the data block is 0x00-0x1F and the controller address is defined as 0x00-0x0F, the data with the address of 0x10-0x1F is redundant data, and at this time, the file data parsing operator 13 may delete the data with the address of 0x10-0x1F and only retain the data corresponding to the data interval 0x00-0x 0F.
The file data parsing operator 13 may add missing data in the binary file to obtain the data block matched with the controller address, where the missing data is data belonging to a data interval defined by the controller address, and the binary file has no corresponding numerical value. For example: if the data address in the data block is 0x00-0x0A and the controller address is defined as 0x00-0x0F, the file data parsing operator 13 may fill the missing data address 0x0B-0x0F with data 0xFF to complement the missing data, so that the data in the data block meets the requirement of the data format in the data section defined by the controller address.
The service flow control operator 11 is configured to control a flushing process service flow, where the flushing process service flow includes a plurality of services, and a plurality of the services includes a flushing service, and the service flow control operator 11 is further configured to integrate the data blocks into the flushing service and start the flushing process service flow;
the service flow control operator 11 is further configured to sequentially send a plurality of the services to the CAN data transceiver operator 12, the CAN data transceiver operator 12 is configured to send the services to the controller 3, and the controller 3 is configured to execute the services and update the data of the controller program with the data blocks in the swipe service.
In this embodiment, the service request refers to a service defined in the ISO 14229 protocol standard, and the service types may be plural, and some services may further include sub-services. The flushing process service flow may typically include tens of services, such as: the flushing process starts service, data erasure service, flushing service, request download service, transfer data service, request transfer exit service, etc.
Since the plurality of services are sequentially executed in a certain order, the execution order of the plurality of services may be determined by a specific flushing requirement. The service flow control operator 11 can timely judge and feed back the status of the refreshing process and the refreshing progress in the process of executing a plurality of services, wherein the status of the refreshing process can indicate whether each service is executed successfully, if the previous service is executed successfully, the next service can be executed continuously, and if the previous service is executed successfully, the prompt message of the execution failure can be sent to the front panel control operator 10. The progress of the flushing may indicate which service has been currently performed and which service needs to be performed next.
Preferably, the format of the data block may be a. Hex format or a. S19 format.
Specifically, the CAN data transceiver operator 12 also pre-processes the service to form a CAN message; the CAN message formed after preprocessing accords with the requirement of the ISO15765 standard (a diagnosis protocol on a CAN bus) on the data format. The CAN data transceiver operator 12 is further configured to control the CAN hardware 2, so that the CAN hardware 2 sends the CAN message to the controller 3.
After the controller 3 performs the service, the CAN data transceiver 12 is further configured to receive receipt information sent by the controller 3, where the receipt information is used to indicate whether the controller 3 performs the service correctly. Specifically, the receipt information of the controller 3 is also transmitted back to the CAN data transceiver operator 12 through the CAN hardware 2, the CAN data transceiver operator 12 performs standardized processing on the receipt information, so that the data format of the receipt information also meets the requirement of the ISO15765 standard, the CAN data transceiver operator 12 CAN transmit the processed receipt information to the service flow control operator 11, and the service flow control operator 11 determines whether the service is successfully executed and whether the next service needs to be executed according to the reply information of the controller 3, and sends the determination result to the front panel control operator 10.
The front panel control operator 10 may also display the status information of the brushing process during the execution of the brushing.
In addition, since a plurality of controller programs may be included in one controller 3, the flushing of each controller program may be sequentially performed by the architecture in the present embodiment until the plurality of controller programs are all flushed.
The refreshing system of the LabVIEW-based controller program provided by the embodiment is used for executing the controller program refreshing according to the configuration information of the user by constructing a framework formed by a front panel control operator, a service flow control operator, a CAN data receiving and transmitting operator and a file data analyzing operator, and the data transmission adopts hierarchical design and step-by-step transmission, so that the data CAN be traced and managed conveniently. The software architecture is flexible in structure, single in responsibility of each operator, isolated in interface and low in dependency among operators. Abstract the functional class, increase the independence among various types, facilitate the dependence and call. In addition, each UDS (unified diagnosis) service is defined by using an abstract service class, and a factory mode is used for managing service flows, so that the method can be used for designing and rapidly developing various controller flashing software, and has strong expansibility.
Example 2
The present embodiment provides a brushing system based on LabVIEW controller program, as shown in FIG. 2, the brushing system 1 is further improved on the basis of the embodiment.
Specifically, the swipe system 1 further includes a swipe recording operator 14; in the write-through record operator 14, a format, a storage location, storage information, and the like of the write-through record file may be defined.
The front panel control operator 10 is further configured to generate a swipe log, and transmit the swipe log to the swipe recording operator 14, where the swipe recording operator 14 is configured to receive and aggregate the swipe log, and the swipe log includes one or more of a swipe time, a swipe flow, a number of swipes, and a swipe result.
Further, the swipe recording operator 14 may also store the swipe log in the hard disk 4. Therefore, the data related to the refreshing process is stored, and the subsequent historical data searching or error correction verification is facilitated.
Example 3
The present embodiment provides a method for brushing a controller program, as shown in fig. 3, which is implemented by using the brushing system of the LabVIEW-based controller program in embodiment 1;
the brushing method may include the steps of:
step S1: the front panel control operator receives a configuration requirement of a user, wherein the configuration requirement comprises a file path;
step S2: the front panel control operator transmits the configuration requirements to the service flow control operator, which forwards the configuration requirements to the file data parsing operator;
step S3: the file data analysis operator reads a pre-stored binary file according to the file path in the configuration requirement, analyzes the binary file into data blocks, and transmits the data blocks to the service flow control operator;
step S4: the service flow control operator also integrates the data blocks into a flushing service and starts a flushing process service flow; the service flow control operator controlling the flushing process service flow, the flushing process service flow comprising a plurality of services, the plurality of services comprising a flushing service;
step S5: the service flow control operator also sequentially sends a plurality of services to the CAN data transceiver operator, and the CAN data transceiver operator sends the services to a controller;
step S6: the controller executes the service and updates the data of the controller program with the data blocks in the swiping service.
In this embodiment, the controller has a controller address, and when executing step S3, the file data parsing operator deletes redundant data in the binary file to obtain a data block matched with the controller address, where the redundant data is data that does not belong to a data interval defined by the controller address; and/or the file data analysis operator is used for supplementing missing data in the binary file to obtain a data block matched with the controller address, wherein the missing data is data which belongs to a data interval defined by the controller address and has no corresponding numerical value in the binary file.
When executing the step S5, the CAN data receiving and dispatching operator preprocesses the service to form a CAN message; the CAN data receiving and dispatching operator is also used for controlling CAN hardware so that the CAN hardware sends the CAN message to the controller;
further, after the controller executes the service, the CAN data transceiver operator also receives receipt information sent by the controller, wherein the receipt information is used for indicating whether the controller executes the service correctly.
According to the method for refreshing the controller program, the framework formed by the front panel control operator, the service flow control operator, the CAN data receiving and transmitting operator and the file data analyzing operator is adopted, so that the controller program refreshing is executed according to the configuration information of the user, the data transmission adopts hierarchical design and step-by-step transmission, and the data CAN be traced and managed conveniently. The software architecture is flexible in structure, single in responsibility of each operator, isolated in interface and low in dependency among operators. Abstract the functional class, increase the independence among various types, facilitate the dependence and call. In addition, each UDS (unified diagnosis) service is defined by using an abstract service class, and a factory mode is used for managing service flows, so that the method can be used for designing and rapidly developing various controller flashing software, and has strong expansibility.
Example 4
The present embodiment provides a method for flushing a controller program, as shown in fig. 4, which is further improved on the basis of embodiment 3.
The brushing method in this embodiment is implemented using the brushing system of the LabVIEW-based controller program in embodiment 2; specifically, the brushing method includes, in addition to the respective steps in embodiment 3, the following steps:
step S7: the front panel control operator generates a refreshing log and transmits the refreshing log to the refreshing record operator, the refreshing record operator receives and gathers the refreshing log, and the refreshing log comprises one or more of refreshing time, refreshing flow, refreshing times and refreshing results.
After the swipe record operator gathers the swipe log, the swipe method further includes step S8: and the brushing record operator stores the brushing log into a hard disk.
The data related to the refreshing process can be saved by the refreshing method provided by the embodiment, so that subsequent historical data searching or error correction verification is facilitated.
Example 5
The present invention also provides an electronic device, as shown in fig. 5, where the electronic device may include a memory, a processor, and a computer program stored on the memory and executable on the processor, where the processor executes the computer program to implement the steps of the brushing method in the foregoing embodiment 3 or embodiment 4.
It should be understood that the electronic device shown in fig. 5 is merely an example, and should not be construed as limiting the functionality and scope of use of embodiments of the present invention.
As shown in fig. 5, the electronic device 5 may be embodied in the form of a general purpose computing device, such as: which may be a server device. The components of the electronic device 5 may include, but are not limited to: the at least one processor 51, the at least one memory 55, a bus 52 connecting the various system components, including the memory 55 and the processor 51.
The bus 52 may include a data bus, an address bus, and a control bus.
The memory 55 may include volatile memory, such as Random Access Memory (RAM) 551 and/or cache memory 552, and may further include Read Only Memory (ROM) 553.
The memory 55 may also include a program tool 555 (or utility) having a set (at least one) of program modules 554, such program modules 554 including, but not limited to: an operating system, one or more application programs, other program modules, and program data, each or some combination of which may include an implementation of a network environment.
The processor 51 executes various functional applications and data processing such as the steps of the flushing method in embodiment 3 or embodiment 4 of the present invention by running a computer program stored in the memory 55.
The electronic device 5 may also communicate with one or more external devices 6, such as a keyboard, pointing device, etc. Such communication may be through an input/output (I/O) interface 53. Also, the model-generated electronic device 5 may also communicate with one or more networks (e.g., a local area network, LAN, wide area network, WAN, and/or public network) via the network adapter 54.
As shown in fig. 5, the network adapter 54 may communicate with other modules of the model-generated electronic device 5 via the bus 52. Those skilled in the art will appreciate that although not shown, other hardware and/or software modules may be used in connection with the model-generating electronic device 5, including but not limited to: microcode, device drivers, redundant processors, external disk drive arrays, RAID (disk array) systems, tape drives, data backup storage systems, and the like.
It should be noted that although in the above detailed description several units/modules or sub-units/modules of an electronic device are mentioned, such a division is only exemplary and not mandatory. Indeed, the features and functionality of two or more units/modules described above may be embodied in one unit/module in accordance with embodiments of the present invention. Conversely, the features and functions of one unit/module described above may be further divided into ones that are embodied by a plurality of units/modules.
Example 6
The present embodiment provides a computer-readable storage medium having stored thereon a computer program which, when executed by a processor, implements the steps of the brushing method in embodiment 3 or embodiment 4.
More specific ways in which the computer-readable storage medium may be employed include, but are not limited to: portable disk, hard disk, random access memory, read only memory, erasable programmable read only memory, optical storage device, magnetic storage device, or any suitable combination of the foregoing.
In a possible embodiment, the invention may also be implemented in the form of a program product comprising program code for causing a terminal device to carry out the steps of implementing the brushing method in embodiment 3 or embodiment 4, when the program product is run on the terminal device.
Wherein the program code for carrying out the invention may be written in any combination of one or more programming languages, the program code may execute entirely on the user device, partly on the user device, as a stand-alone software package, partly on the user device, partly on a remote device or entirely on the remote device.
While specific embodiments of the invention have been described above, it will be appreciated by those skilled in the art that this is by way of example only, and the scope of the invention is defined by the appended claims. Various changes and modifications to these embodiments may be made by those skilled in the art without departing from the principles and spirit of the invention, but such changes and modifications fall within the scope of the invention.

Claims (8)

1. A system for brushing a controller program based on LabVIEW, which is characterized by comprising a front panel control operator, a service flow control operator, a CAN data transceiver operator and a file data analysis operator:
the front panel control operator is used for receiving configuration requirements of a user, wherein the configuration requirements comprise file paths;
the front panel control operator is further configured to communicate the configuration requirements to the service flow control operator, which is configured to forward the configuration requirements to the file data parsing operator;
the file data analysis operator is used for reading a pre-stored binary file according to the file path in the configuration requirement and analyzing the binary file into data blocks, and the file data analysis operator is also used for transmitting the data blocks to the service flow control operator;
the service flow control operator is used for controlling a refreshing process service flow, the refreshing process service flow comprises a plurality of services, the plurality of services comprise refreshing services, the service flow control operator is also used for integrating the data blocks into the refreshing services and starting the refreshing process service flow;
the service flow control operator is further configured to sequentially send a plurality of services to the CAN data transceiver operator, where the CAN data transceiver operator is configured to send the services to a controller, and the controller is configured to execute the services and update data of the controller program using the data blocks in the flashing service;
the CAN data receiving and dispatching operator also preprocesses the service to form a CAN message; the CAN data receiving and dispatching operator is also used for controlling CAN hardware so that the CAN hardware sends the CAN message to the controller;
and/or the number of the groups of groups,
after the controller executes the service, the CAN data transceiver operator is further used for receiving receipt information sent by the controller, wherein the receipt information is used for indicating whether the controller executes the service correctly;
the controller has a controller address;
the file data analysis operator is further used for deleting redundant data in the binary file to obtain the data block matched with the controller address, wherein the redundant data is data which does not belong to a data interval defined by the controller address;
and/or the number of the groups of groups,
the file data analysis operator is further used for adding missing data in the binary file to obtain the data block matched with the controller address, wherein the missing data refers to data which belongs to a data interval defined by the controller address and has no corresponding numerical value in the binary file.
2. The LabVIEW based controller program swiping system of claim 1 further comprising a swiping record operator;
the front panel control operator is further used for generating a refreshing log and transmitting the refreshing log to the refreshing record operator, the refreshing record operator is used for receiving and summarizing the refreshing log, and the refreshing log comprises one or more of refreshing time, refreshing flow, refreshing times and refreshing results.
3. The LabVIEW controller program based swiping system according to claim 2, wherein said swiping log operator is further configured to store said swiping log in a hard disk.
4. A method of flushing a controller program, characterized in that the method of flushing is implemented with a LabVIEW-based controller program flushing system according to any one of claims 1-3;
the brushing method comprises the following steps:
the front panel control operator receives a configuration requirement of a user, wherein the configuration requirement comprises a file path;
the front panel control operator transmits the configuration requirements to the service flow control operator, which forwards the configuration requirements to the file data parsing operator;
the file data analysis operator reads a pre-stored binary file according to the file path in the configuration requirement, analyzes the binary file into data blocks, and transmits the data blocks to the service flow control operator;
the service flow control operator also integrates the data blocks into a flushing service and starts a flushing process service flow; the service flow control operator controlling the flushing process service flow, the flushing process service flow comprising a plurality of services, the plurality of services comprising a flushing service;
the service flow control operator also sequentially sends a plurality of services to the CAN data transceiver operator, and the CAN data transceiver operator sends the services to a controller;
the controller executes the service and updates the data of the controller program by using the data blocks in the refreshing service;
the step of the CAN data receiving and transmitting operator transmitting the service to the controller comprises the following steps: the CAN data receiving and dispatching operator preprocesses the service to form a CAN message; the CAN data receiving and dispatching operator is also used for controlling CAN hardware so that the CAN hardware sends the CAN message to the controller;
and/or the number of the groups of groups,
the step of the controller executing the service further comprises: the CAN data receiving and dispatching operator also receives receipt information sent by the controller, wherein the receipt information is used for indicating whether the controller executes the service correctly;
the controller has a controller address;
the step of the file data parsing operator parsing the binary file into data blocks includes:
the file data analysis operator deletes redundant data in the binary file to obtain a data block matched with the controller address, wherein the redundant data is data which does not belong to a data interval defined by the controller address;
and/or the number of the groups of groups,
the file data analysis operator is used for supplementing missing data in the binary file to obtain a data block matched with the controller address, wherein the missing data is data which belongs to a data interval defined by the controller address and has no corresponding numerical value in the binary file.
5. The method of flushing a controller program of claim 4, wherein the method of flushing further comprises:
the front panel control operator generates a refreshing log and transmits the refreshing log to the refreshing record operator, the refreshing record operator receives and gathers the refreshing log, and the refreshing log comprises one or more of refreshing time, refreshing flow, refreshing times and refreshing results.
6. The method for flushing a controller program according to claim 5, wherein the flushing log is stored in a hard disk after the flushing log is summarized by the flushing log operator.
7. An electronic device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, characterized in that the processor implements the steps of the method of flushing a controller program according to any of claims 4-6 when the computer program is executed by the processor.
8. A computer readable storage medium having stored thereon a computer program, characterized in that the computer program when executed by a processor realizes the steps of the method of flushing a controller program according to any of claims 4-6.
CN201911059494.XA 2019-11-01 2019-11-01 LabVIEW-based controller program refreshing system and method Active CN110825412B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911059494.XA CN110825412B (en) 2019-11-01 2019-11-01 LabVIEW-based controller program refreshing system and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911059494.XA CN110825412B (en) 2019-11-01 2019-11-01 LabVIEW-based controller program refreshing system and method

Publications (2)

Publication Number Publication Date
CN110825412A CN110825412A (en) 2020-02-21
CN110825412B true CN110825412B (en) 2023-06-02

Family

ID=69552212

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911059494.XA Active CN110825412B (en) 2019-11-01 2019-11-01 LabVIEW-based controller program refreshing system and method

Country Status (1)

Country Link
CN (1) CN110825412B (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113448596A (en) * 2020-03-24 2021-09-28 上海汽车集团股份有限公司 Vehicle controller flashing system and method and related equipment
CN111475174A (en) * 2020-03-31 2020-07-31 东风汽车集团有限公司 Device and method for online writing and configuration of vehicle-mounted gateway
CN113759871B (en) * 2021-08-26 2023-09-01 东风商用车有限公司 Multi-controller refreshing method, device, equipment and readable storage medium
CN114326663B (en) * 2021-12-20 2024-04-19 浙江鸿泉电子科技有限公司 Visual operation graphical programming system for vehicle CAN bus UDS diagnosis

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010017775A1 (en) * 2008-08-13 2010-02-18 奇瑞汽车股份有限公司 Controller area network (can) bus based control method for refreshing codes of vehicle’s electronic controller
CN103853573A (en) * 2012-12-05 2014-06-11 联想(北京)有限公司 Information processing method and electronic equipment
CN104281469A (en) * 2014-08-26 2015-01-14 东风电子科技股份有限公司 Method and system for realizing refreshing and writing of ECU (Electronic Control Unit) program
DE102017215556A1 (en) * 2016-10-24 2018-04-26 Lear Corporation METHOD FOR PROGRAMMING ELECTRONIC VEHICLE CONTROL MODULES
CN109324813A (en) * 2018-08-16 2019-02-12 深圳市元征科技股份有限公司 Electronic control system writes with a brush dipped in Chinese ink method, apparatus and computer media
CN110134422A (en) * 2019-04-19 2019-08-16 东风汽车集团有限公司 System and method based on OBD and CAN bus downloading flash drive upgrade controller software

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010017775A1 (en) * 2008-08-13 2010-02-18 奇瑞汽车股份有限公司 Controller area network (can) bus based control method for refreshing codes of vehicle’s electronic controller
CN103853573A (en) * 2012-12-05 2014-06-11 联想(北京)有限公司 Information processing method and electronic equipment
CN104281469A (en) * 2014-08-26 2015-01-14 东风电子科技股份有限公司 Method and system for realizing refreshing and writing of ECU (Electronic Control Unit) program
DE102017215556A1 (en) * 2016-10-24 2018-04-26 Lear Corporation METHOD FOR PROGRAMMING ELECTRONIC VEHICLE CONTROL MODULES
CN109324813A (en) * 2018-08-16 2019-02-12 深圳市元征科技股份有限公司 Electronic control system writes with a brush dipped in Chinese ink method, apparatus and computer media
CN110134422A (en) * 2019-04-19 2019-08-16 东风汽车集团有限公司 System and method based on OBD and CAN bus downloading flash drive upgrade controller software

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
曾宇文 ; .基于LabVIEW实现Flash Bootloader刷写方法的研究.科技视界.2017,(第09期),全文. *
汪春华 ; 白稳峰 ; 刘胤博 ; 张玉稳 ; .基于CAN总线UDS服务BootLoader应用开发.电子测量技术.2017,(第02期),全文. *

Also Published As

Publication number Publication date
CN110825412A (en) 2020-02-21

Similar Documents

Publication Publication Date Title
CN110825412B (en) LabVIEW-based controller program refreshing system and method
US9182755B2 (en) Automated operator interface generation in a control system
US8832579B2 (en) System for creation and management of industrial automation and information solutions and services
CN111443940A (en) Complete software life cycle management method and platform based on DevOps
EP1906275B1 (en) Natively retaining project documentation in a controller
CN108984388A (en) A kind of method and terminal device generating automatic test cases
CN107766448A (en) Rule-based satellite telemetering data analysis system
EP4124956A1 (en) Automated system and method for detection and remediation of anomalies in robotic process automation environment
CN106487712B (en) For accessing the method, apparatus and server of multiple external systems
CN113050929A (en) Intelligent contract development, operation and maintenance integrated platform based on HyperLegger Fabric
CN113325810A (en) Automatic data interaction method
CN111159301A (en) Data creating method, device, equipment and storage medium based on intelligent contract
CN113919158A (en) Simulation method and device for flight control panel and storage medium
CN116643950B (en) FaaS-based cloud native application automatic operation and maintenance method
CN114610597A (en) Pressure testing method, device, equipment and storage medium
CN109086380B (en) Method and system for compressing and storing historical data
CN116044867A (en) Hydraulic system control method, system, equipment and medium based on automatic programming
CN115114147A (en) Test system based on structured description language
CN115037587A (en) Method, device, equipment and storage medium for automatically issuing network equipment configuration
CN113392002A (en) Test system construction method, device, equipment and storage medium
KR102668334B1 (en) Method for managing interface, interface governance system, and a storage medium storing a computer-executable program to manage the interface
CN114217899B (en) Data persistence method, device, electronic equipment and storage medium
CN115658134A (en) Software version control method, device, equipment and storage medium
CN113128187B (en) Form generation method, device and system
CN117149166B (en) Method and device for generating data docking code of electromagnetic water meter

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant