Intelligent wiring system
Through the intelligent wiring system, the wiring process is automated using host and end node positioning and indicator devices, the problem of manual wiring in the prior art is solved, and efficient and accurate wiring operations are achieved.
Patent Information
- Application Number
- CN202411842757.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-13
- Publication Date
- 2025-04-25
AI Technical Summary
In the prior art, the cable production process completely relies on manual sample drawings and checking the length of the wire, which is time-consuming and labor-consuming and susceptible to human factors, resulting in slow wiring speed.
An intelligent wiring system is designed, including a host, an end-node positioning device, an end-node indication device and a wiring table. The host is used to design input conversion, automatic layout and information storage, and the end node positioning device and the end node indication device are used to indicate the wiring path.
By automating the wiring process, the wiring efficiency and accuracy are improved, the manual error rate and cost are reduced, and the precise utilization and efficient wiring of the wire are achieved.
Smart Images

Figure CN119891033A_ABST
Abstract
Description
Technical Field
[0001] The invention relates to an intelligent wiring system, belonging to the technical field of large-scale equipment wiring harness wiring. Background Art
[0002] Wiring is an important step in the production process of cable network products. At present, most of them adopt manual wiring. In the manual wiring process, first, the operator should insert steel nails as winding nodes at the corresponding positions of the wiring table according to the appearance design documents of the cable, and then use electrical tape to paste the branch direction of the cable and paste the endpoint name at the endpoint position. Finally, query the design file to determine the laying path. This process method template relies more on the operator's experience and judgment, requiring them to read the drawing, paste, and measure at the same time. They may also need to adjust the splicing method and number of wiring tables at any time to complete the production of the template drawing and the search for wiring direction. In this process, the operator needs to read the drawing, paste, measure and plan the path of each wire, and arrange it manually, relying more on the operator's experience and judgment, which is not only time-consuming and labor-intensive, but also easily affected by human factors, resulting in a slow wiring speed.
[0003] In order to improve the production efficiency of cable network products, reduce manual errors, and improve the efficiency and accuracy of wire harness wiring, there is an urgent need for an intelligent wiring system to replace the traditional manual wiring method, which can automatically convert the design input files, automatically generate wiring plans and wiring paths, thereby improving wiring efficiency and quality and reducing wiring costs. Summary of the invention
[0004] The technical problem to be solved by the present invention is: to overcome the deficiencies of the prior art, solve the problem of completely relying on manual production of sample drawings and checking the length of wires in the cable production process, save labor costs for cable production, and have huge market application prospects.
[0005] The purpose of the present invention is achieved through the following technical solutions:
[0006] An intelligent wiring system includes a host, an end node positioning device, an end node indicating device, and a wiring table. The host is used to realize functions such as design input conversion, outline drawing, automatic layout, information storage, chart output, and communication with the end node positioning device and the end node indicating device; the end node positioning device indicates the placement position of the end node indicating device to the user based on the position information of the end point, node, inflection point and other single points on the wiring table sent by the host; the end node indicating device parses the indicator light switch information sent by the host to indicate the wiring path; the wiring table is an operating platform with equidistant positioning holes and fixed length and width, which can be used to fix the end node positioning device, place the end node indicating device, place the cable harness, etc.
[0007] The end node positioning device is mainly composed of a pan-tilt head, a laser, a printer, a scanner, a battery, a charging box, a storage box, a main frame, and a quick-fix tooling structure; the pan-tilt head controls the laser pen according to the horizontal angle and pitch angle sent by the host to indicate the placement position of the end node indication device to the user; the printer prints the end node name, the end node positioning device number and other information to assist manual operation and verification; the scanner is used to scan the end node indication device, the end node name, and the one-dimensional or two-dimensional barcode information on the wire label, and bind the single point and end node indication device; the battery is used to power the pan-tilt head, laser pen, printer, and charging box; the charging box is used to charge the end node indication device; the storage box is used to store items such as the end node indication device; the main frame is used to place the host, end node indication device and other devices required for the wiring system; the quick-fix tooling structure realizes the quick installation and disassembly of the main frame and the wiring table.
[0008] The end node indicator device is composed of UART-WiFi transparent transmission module ESP-12F, lithium battery, voltage regulator module, resistor and capacitor, buzzer, transistor, switch, indicator light, connector, etc. Its main function is to communicate with the host through ESP-12F via WIFI, perform indication actions such as wiring endpoints, nodes, paths, and abnormal alarm prompts, etc. The specific working process and functional division are as follows:
[0009] (1) As a slave, it communicates with the host through WIFI through a custom protocol to realize communication reception, analysis and return functions;
[0010] (2) Control the buzzer and multiple indicator lights with different meanings;
[0011] (3) Modify the target server IP and its own ID built into the end node indicator device through the serial port;
[0012] (4) Use the ADC port to collect the lithium battery voltage in real time and issue an alarm when the battery level is lower than the set value. This command will be sent continuously at intervals of 30 seconds and does not require a host response.
[0013] (5) Send heartbeat packets to the host regularly. After receiving the heartbeat packets sent by the host, the host replies with the same command. When the end node indicator device sends three heartbeat packets and does not receive a reply from the host computer, it is considered that the connection is disconnected, and the end node indicator device issues an alarm prompt, thereby ensuring that the connection between the end node indicator device and the host is stable and continuous.
[0014] A wiring method using the above intelligent wiring system includes several parts: design input conversion, margin adjustment, virtual cable, automatic layout, statistical inspection, and wiring indication.
[0015] (1) Design input conversion
[0016] The design input conversion part realizes the extraction of graphic information directly from the cable design file and determines the connection relationship of the branches based on the results of the graphic extraction, and establishes the mapping relationship between the branches and the text.
[0017] The design file input conversion includes two parts: graphic extraction and drawing analysis.
[0018] Graphics extraction: Read the cable design file saved in DXF file format. The data structure of this file is simple and easy to understand, and it is easy to read, and it stores all the information of the cable. Extract the straight line marking information and text marking information in the cable design file, regroup and classify each graphic element according to the branch layout characteristics, and parse it into branch feature data.
[0019] Specifically, the straight line marking in the cable design file is read, and the length, upper deviation, and lower deviation in the straight line marking are extracted. The length, upper deviation, and lower deviation in the marking are the length, upper deviation, and lower deviation of this branch. The positions of the two endpoints of the marked straight line are stored and recorded as the starting point and end point of this branch respectively; the text marking information in the cable design file is read, the content of the text marking is extracted, and the position information of the text marking is stored.
[0020] Drawing analysis: Determine the connection relationship between branches based on the results of graphic extraction, and establish a mapping relationship between branches and text.
[0021] Specifically, first, determine whether any two branches have overlapping points. If there are overlapping points, the two branches are connected, and the overlapping points are nodes. Repeat this process until all branches are determined. The branch points that do not overlap with other branches are endpoints. Secondly, calculate the distance between each endpoint and the text annotation in turn, and set the text with the closest distance as the name of this endpoint until all endpoints are determined.
[0022] (2) Margin adjustment
[0023] In order to weld and fix the wires in the connector later, the model of the connector's tail hood is a key reference factor. Different tail hood models often correspond to different sizes. Therefore, the margin adjustment realizes the function of reserving a specific length of wire margin for the connector according to the tail hood model, ensuring a perfect match between the wire and the tail hood interface, avoiding the problem of the wire being too long or too short, and reducing the operator's work of measuring and marking the reserved wire length.
[0024] Specifically, the tail hood model of the connector in the cable list is read, the wire length required by the stored tail hood of the model is queried, and a tail hood margin branch of the length is added to the end point of this branch.
[0025] (3) Virtual Cable
[0026] According to the design input conversion results, the harness trunk and branches of each order are arranged in 1:1 order, and the sample layout is carried out step by step to ensure that each branch has no interference with the trunk and branches of the same order, forming a primary sample diagram. The configuration of the primary sample diagram is as close to the schematic diagram as possible, so that users can intuitively check the results of the design input.
[0027] The specific steps are as follows:
[0028] The longest branch among all branches is defined as the trunk; branches directly connected to the trunk are called first-order branches, and so on.
[0029] First, coordinate transformation is performed. The coordinates of the endpoints and nodes obtained in the design input conversion part in the DXF design file are changed to the coordinates on the system software canvas. The minimum value of x and the minimum value of y in the DXF design file are calculated and recorded as DXF_xmin and DXF_ymin; the coordinates of the trunk on the canvas are recorded as (x, y), and the starting point of the trunk is updated, calculated according to the following formula:
[0030] x=(DXF_Start.x()-DXF_xmin)*cos(0)+(DXF_Start.y()-DXF_ymin)*sin(0);
[0031] y=(DXF_xmin-DXF_Start.x())*sin(0)+(DXF_Start.y()-DXF_ymin)*cos(0);
[0032] The end point of the trunk is calculated by the length and angle of the branch, and the coordinate value of the trunk is stored. Each order of branches is updated in turn until all branches are updated.
[0033] Secondly, handle the intersecting branches. The branch with fewer high-order branches in the two intersecting branches is used as the moving branch, and the other branch is used as the fixed branch; the number of nodes on the path from the starting point of the moving branch to the main branch and the number of nodes on the path from the end point of the branch to the main branch are calculated respectively; the end with fewer nodes is set as the fixed point, and the other end is the moving point; a straight line is drawn from the fixed point to the two end points of the intersecting straight line, and the length of the straight line is the length of the moving branch, recorded as l1 and l2, and the angle between l1 and l2 and the x-axis is calculated. According to the angle with the x-axis, the straight lines l1 and l2 are rotated toward the outside of the fixed branch according to the parameters set by the automatic layout rules; each rotation is calculated whether there is still an intersection between l1 and l2 and the fixed branch; if so, continue to rotate; if not, update all branches connected to this moving branch.
[0034] Finally, the branches are drawn on the system software canvas according to the branch coordinates.
[0035] (4) Automatic layout
[0036] The system automatically calculates and determines the location and direction of cable branches and the splicing method of wiring tables based on automatic layout rules, cable characteristics, and operational convenience. It can also accept manual intervention and adjustment to achieve efficient cable wiring.
[0037] The system adjusts the spacing and turning points of the primary template drawing generated by the outline drawing according to factors such as automatic layout rules, cable characteristics and operational convenience, and designs the splicing method of the wiring table. It directly calculates the coordinate position of the branch on the wiring table and can accept manual intervention and adjustment to achieve efficient cable wiring.
[0038] Automatic layout includes three parts: pre-placement of wiring tables, space optimization, and grid adjustment.
[0039] Pre-placed wiring table:
[0040] The wiring table is an operating platform with equidistant positioning holes and a fixed length and width.
[0041] A horizontal wiring table is a wiring table that is placed parallel to the long side of the table. The direction from the upper left corner to the upper right corner of the wiring table is defined as the positive direction of the x-axis, and the reverse direction is the negative direction of the x-axis; the direction from the upper left corner to the lower left corner of the wiring table is defined as the positive direction of the y-axis, and the reverse direction is the negative direction of the y-axis.
[0042] Specifically, first, the host reads the automatic layout rules set by the user, creates an adjacency list for all branches; calculates the rectangular area of all branch coordinates; starts from the upper left corner of the rectangular area of the branch coordinates, calculates the number and coordinates of horizontal wiring tables that can be placed in the rectangular area; stores the number and coordinates of wiring tables that exceed k wiring tables in the y-axis direction, and determines in turn whether each branch is in the area where the exceeded wiring tables are located. If so, calculates the intersection of the branch and the wiring table, calculates the branch interruption position according to the automatic layout rules, adds an inflection point, and one end of the branch (which is within the number of wiring tables set by the rules) is located. The point on the wiring table is called a fixed point), and the other end of the branch (the point on the wiring table that exceeds the number of wiring tables set by the rule is called a mobile point) is moved to place it in other wiring tables; two new branches are formed, namely, the fixed point to the inflection point and the inflection point to the mobile point; all branches connected to the mobile point are found, and the new positions of the points connected to the mobile point are calculated according to the new positions of the mobile point, and the points connected to the mobile point become new mobile points; until all the connection points of the mobile points are updated; execute S51 to S54 until all branches on the wiring table p are moved to the wiring table area that meets the rule settings.
[0043] Space optimization: The system combines automatic layout rules to remove wiring tables that have fewer or shorter branches or only contain branches with tail cover margins.
[0044] The specific steps include:
[0045] The system reads the automatic layout rules set by the user, calculates the coordinates and number of branches on the edge wiring table of the layout, and if the edge wiring table does not contain any branches or the branches it contains only occupy a small area of the wiring table (set by the user), or the branches contained in the wiring table are tail cover margins, then an inflection point is added to the branch and it is moved to other wiring tables. If the branch is also connected to other branches, the connecting branches of the branch are also moved. After all the branches on this wiring table are moved, this wiring table is deleted.
[0046] Grid adjustment: The system adjusts the ends, nodes, and inflection points of the harness appropriately based on the automatic layout results and the grid positions on the wiring table to facilitate the fixation and subsequent operations of these points. Finally, a harness sample diagram is formed.
[0047] Determine in turn whether the two ends of the branch coincide with the positioning holes on the wiring table. If they coincide, this branch does not need to be adjusted. If they do not coincide, update the starting point and the end point of the branch to the nearest grid point; calculate whether the length of the branch at this time meets the requirements of length and upper and lower deviations; if they do, the adjustment of the branch ends; if not, calculate the number of branches connected to the starting point and the end point of the branch, and use the side with more branch points connected to the branch endpoint as the fixed point to move the other endpoint. If the current branch is longer than the required length, move this endpoint in the direction of the fixed point. If the branch is shorter than the requirement, move this endpoint in the direction of the moving point of the straight line. After the movement is completed, determine whether the length requirements are met. If they are met, update the coordinate position of the branch, and update the coordinate position of the branch connected to the branch.
[0048] (5) Statistical test
[0049] By reading the wiring table of the fixed-format cable design file, the types and quantities of all wires on each end connector are counted. The types and quantities of all wires on each end connector are intuitively displayed to facilitate checking whether the wire laying results are correct, reduce the manual calculation process, and improve wiring efficiency.
[0050] Specifically, a wiring table in a fixed format is read, and the endpoint names and terminal numbers of all wiring point 1 and wiring point 2 in the wiring table are extracted; the information in the wiring table is read in sequence, the names of the endpoints and the models of the wires are stored, and the number of wires of different models is counted.
[0051] (6) Cable laying instructions
[0052] The wiring indication function is used to assist users in wiring operations and improve wiring accuracy and efficiency. The host reads the names of the first and last endpoints through the scanner, calculates the path between the two endpoints, and sends commands to the end node indication device. The end node indication device parses the command sent by the host and turns on or off its own status indicator.
[0053] Specifically, read the names of the first and last endpoints; use the Floyd algorithm to check the paths between all vertex pairs in each iteration, and shorten the path by adding intermediate vertices. If the new path is shorter than the known path, the path matrix will be updated to finally obtain the shortest path between the first and last endpoints, and store the names of all endpoints, nodes, and inflection points on the path; search for the IP and ID of the end node indicator corresponding to each point in turn until all the end node indicator devices on this path are opened; and close all the end node indicator devices opened in the last path indication; place the wire bundle on the path indicated by the end node according to the path indicated by the end node.
[0054] Compared with the prior art, the present invention has the following beneficial effects:
[0055] 1. The present invention can improve wiring efficiency, reduce wiring errors, and reduce wiring costs;
[0056] 2. The present invention reserves the wire length according to the tail cover model, which can realize the accurate utilization of the wire and avoid waste;
[0057] 3. The present invention realizes the extraction and reorganization of key information of cable shape by analyzing the layer information of cable design files in DXF format, and uses QT drawing engine to create virtual cables 1:1, automatically splice wiring tables, layout cable branches, generate wiring plans, and combine end node positioning devices to indicate endpoint and node positions, and can automatically calculate and indicate wiring paths according to endpoint information of wire harnesses, breaking through key technologies such as drawing analysis, branch layout, and path optimization;
[0058] 4. The present invention can quickly and efficiently fix the wiring system body on the wiring table, and can replace different wiring tables in a quick-disassembly and quick-assembly manner through tooling. BRIEF DESCRIPTION OF THE DRAWINGS
[0059] Figure 1 It is a schematic axial view of the overall structure of the present invention;
[0060] Figure 2 Input conversion step flow chart for the design of the present invention;
[0061] Figure 3 A flowchart of the steps of the virtual cable of the present invention;
[0062] Figure 4 is a flowchart of the steps of automatic layout of the present invention;
[0063] Figure 5 A flow chart showing the steps of laying out the wiring diagram of the present invention. DETAILED DESCRIPTION
[0064] To make the objectives, technical solutions and advantages of the present invention more clear, the embodiments of the present invention will be further described in detail below with reference to the accompanying drawings.
[0065] like Figure 1 As shown, the wiring system in the present invention includes: a host, an end node positioning device, an end node indicating device, and a wiring table.
[0066] The host is installed on the main frame of the end node positioning device through positioning bolts to realize functions such as drawing reading and analysis (design input conversion), appearance drawing, automatic layout, information storage, chart output, and communication with the end node positioning device and the end node indicating device;
[0067] The end node positioning device includes a laser, a pan / tilt, a printer, a scanner, a battery, a charging box, a storage box, a main frame, and a quick-fixing tooling structure; the pan / tilt controls the laser pen according to the horizontal angle and pitch angle sent by the host to indicate the placement position of the end node indicating device to the user; the printer prints the end node name, the end node positioning device number and other information to assist manual operation and verification; the scanner is used to scan the end node indicating device, the end node name, and the one-dimensional or two-dimensional barcode information on the wire label to bind the single point and the end node indicating device; the battery provides power for the pan / tilt, laser pen, printer, and charging box; the charging box charges the end node indicating device; the storage box stores items such as the end node indicating device; the main frame is used to place the host, the end node indicating device and other devices required for the wiring system; the quick-fixing tooling structure realizes the quick installation and disassembly of the main frame and the wiring table.
[0068] The end node indicating device is taken out from the main frame of the end node positioning device when in use, and is put back to the corresponding position on the main frame when it needs to be charged or stored; its function is to parse the indicator light switch information sent by the host and indicate the wiring path.
[0069] like Figure 2 As shown, the steps of designing input conversion in the present invention include:
[0070] Graphics extraction: Read the cable design file saved in DXF file format. The data structure of this file is simple and easy to understand, and it is easy to read, and it stores all the information of the cable. Extract the straight line marking information and text marking information in the cable design file, regroup and classify each graphic element according to the branch layout characteristics, and parse it into branch feature data.
[0071] The specific steps of graph extraction are as follows (assuming the number of branches is greater than 1):
[0072] S1 opens the file;
[0073] Whether S2 is straight line marking information
[0074] S21: if the information is straight line marking information, extract the length, upper deviation, and lower deviation of the straight line marking, and execute S3;
[0075] If S22 is not straight line information, jump to S4;
[0076] The length, upper deviation and lower deviation in S3 are the length, upper deviation and lower deviation of this branch. The positions of the two end points of the marked straight line are stored as the starting point and the ending point of this branch respectively, and then jump to S7;
[0077] S4: Is it text annotation information?
[0078] If S41 is a text annotation, extract the content of the text annotation and store the position information of the text annotation:
[0079] If S42 is not a text mark, execute S5;
[0080] Is S5 the end of the file?
[0081] If yes, S51, the file reading is completed.
[0082] If not, S52 jumps to S2.
[0083] The specific steps of drawing analysis are as follows:
[0084] S1: Assume that the total number of branches stored in the graph extraction is n, and initialize branch i to 0 and j to 0;
[0085] S2 reads the starting point coordinates and the ending point coordinates of branch i;
[0086] S3 reads the starting point coordinates and the ending point coordinates of branch j;
[0087] S4 determines whether branch i and branch j have overlapping points;
[0088] S41 Whether the starting point of branch i coincides with the starting point of branch j
[0089] If they coincide, S42 connects the starting point of branch i and the starting point of branch j, and the point is a node, and the process jumps to S5; if they do not coincide, S43 is executed;
[0090] S43 Whether the starting point of branch i coincides with the end point of branch j
[0091] If they coincide, S44 connects the starting point of branch i and the ending point of branch j, and the point is a node, and jumps to S5; if they do not coincide, execute S45;
[0092] Whether the termination point of branch i of S45 coincides with the starting point of branch j
[0093] S46 If they coincide, connect the termination point of branch i and the starting point of branch j. This point is the node, and jump to S5; if not, execute S47;
[0094] S47 Whether the termination point of branch i coincides with the termination point of branch j
[0095] S48 Connect the termination point of branch i and the termination point of branch j. This point is the node;
[0096] S5 Judge whether j < n holds
[0097] S6 If branch j is not the last branch, j++, jump to S3; if branch j is the last branch, execute S61;
[0098] S61 Whether the starting point of branch i is a node
[0099] S62 If the starting point of branch i is not a node, then the starting point of branch i is an endpoint, and jump to S7;
[0100] S63 Whether the termination point of branch i is a node
[0101] S64 If the termination point of branch i is not a node, then the termination point of branch i is an endpoint, and jump to S7;
[0102] S7 Judge whether i < n holds
[0103] S71 If branch i is not the last branch, let i++, j = 0, and continue to execute S2 to S7;
[0104] S72 If branch i is the last branch, jump to S8;
[0105] S8 Initialize the endpoint k to 0, the text annotation p to 0. Assume the total number of endpoints is m and the total number of text annotations is q;
[0106] S9 Calculate the distance d between the endpoint k and the text annotation p;
[0107] S10 Judge whether p = 0 holds
[0108] S101 If it is the first text annotation content, jump to S112;
[0109] S102 If it is not the first text annotation content, execute S11;
[0110] S11 Judge whether d < dmin holds
[0111] S111 If the currently calculated distance d is greater than the minimum value dmin, jump to S12;
[0112] S112 Update the content of the text annotation p closest to the current endpoint k as Textp with dmin = d;
[0113] S12 Determine whether p < q holds
[0114] S121 If p is not the last annotation, p++, jump to S9;
[0115] S122 If p is the last annotation, p = 0, execute S13;
[0116] S13 Determine whether k < m holds
[0117] S131 If k is not the last endpoint, k++, p = 0, jump to S9;
[0118] S132 If k is the last endpoint, the name of endpoint k is the text annotation content Textp when dmin;
[0119] As Figure 3 shown, the steps of the virtual cable in the present invention include:
[0120] S1 Calculate the minimum value of x and the minimum value of y in the DXF design file, denoted as DXF_xmin and DXF_ymin;
[0121] S2 Update the coordinates of the starting point of the backbone on the canvas;
[0122] S3 Calculate the coordinates of the termination point of the backbone;
[0123] S4 Initialize i = 0; j = 0, assume the number of branches of the i-th order is n, and there are a total of p-th order branches;
[0124] S5 Whether the j-th branch of the i-th order has a branch of the i + 1-th order
[0125] S51 If it exists, assume that the total number of branches of the i + 1-th order is m, initialize k = 0, and jump to S6;
[0126] S52 If it does not exist, jump to S9;
[0127] S6 Update the coordinates of the k-th branch of the i + 1-th order connected by the coordinates of the j-th branch of the i-th order;
[0128] S7 Determine whether k > m holds
[0129] S71 If so, jump to S8;
[0130] S72 If not, k++, jump to S6;
[0131] S8 Determine whether j > n holds
[0132] S81 If yes, jump to S9;
[0133] S82 If no, j++, k = 0, jump to S6;
[0134] S9 Determine whether i > p holds
[0135] S91 If yes, jump to S10;
[0136] S92 If no, i++, j = 0, jump to S5;
[0137] S10 Initialize a = 0, b = 0, and assume there are q branches in total;
[0138] S11 Determine whether branch a and branch b intersect
[0139] S111 If yes, jump to S12;
[0140] S112 If no, b++, jump to S11;
[0141] S12 Calculate the total number of high - order branches Anum connected by branch a;
[0142] S13 Calculate the total number of high - order branches Bnum connected by branch b;
[0143] S14 Determine whether Anum < Bnum holds
[0144] S141 If yes, branch b is the fixed branch and branch a is the moving branch;
[0145] S142 If no, branch a is the fixed branch and branch b is the moving branch;
[0146] S15 Calculate the number of nodes Snum on the path from the starting point of the moving branch to the main branch;
[0147] S16 Calculate the number of nodes Enum on the path from the ending point of the moving branch to the main branch;
[0148] S17 Determine whether Snum < Enum holds
[0149] S171 The starting point is the moving point and the ending point is the fixed point
[0150] S172 The ending point is the moving point and the starting point is the fixed point
[0151] S18 Draw lines from the fixed point to the two endpoints of the intersecting line, and the length of the line is the length of the moving branch, denoted as l1, l2;
[0152] S19 Calculate the angles between l1, l2 and the x-axis, angle1 and angle2;
[0153] S20 Update angle1 and angle2;
[0154] S21 Redraw l1 and l2 based on angle1 and angle2;
[0155] S22 Whether there is still an intersection point between l1 and the fixed branch;
[0156] S221 If not, execute S23;
[0157] S222 If there is, execute S24;
[0158] S23 Whether there is still an intersection point between l1 and other branches
[0159] S231 If not, update this moving branch and all the branches it is connected to, and jump to S25;
[0160] S232 If there is, execute S24;
[0161] S24 Whether there is still an intersection point between l2 and the fixed branch
[0162] S241 If not, update this moving branch and all the branches it is connected to, and execute S25;
[0163] S242 If there is, jump to S20;
[0164] S25 Judge whether b < q holds
[0165] S251 If yes, draw branch a, b = 0, and jump to S11;
[0166] S252 If not, execute S26;
[0167] S26 Judge whether a < q holds
[0168] S262 If not, a++, and jump to S11;
[0169] S261 If yes, end.
[0170] As Figure 4 shown, the steps of the automatic layout in the present invention include:
[0171] The automatic layout includes three parts: pre-placement wiring table, space optimization, and grid adjustment.
[0172] Among them, the wiring table is an operating platform with equally spaced positioning holes and having a fixed length and width.
[0173] A horizontal wiring table is a wiring table when the operator is parallel to the long side of the wiring table. The direction from the upper left corner to the upper right corner of the wiring table is defined as the positive direction of the x-axis, and the reverse direction is the negative direction of the x-axis; the direction from the upper left corner to the lower left corner of the wiring table is the positive direction of the y-axis, and the reverse direction is the negative direction of the y-axis.
[0174] Pre-placed wiring table:
[0175] S1 reads the automatic layout rules set by the user, including the maximum number of wiring tables k that can be spliced in the y-axis direction, the minimum distance d between the branch and the wiring table boundary, the minimum length l of the branch adding an inflection point, and the area a of the wiring table occupied by the branch on the edge wiring table;
[0176] S2 creates an adjacency list (undirected graph) with the number of vertices and edges of the graph;
[0177] S3 calculates the rectangular area (Xmin, Ymin, Xmax, Ymax) of all branch coordinates;
[0178] S4 starts from the upper left corner of the rectangular area of the branch coordinates, and calculates the number and coordinates of the horizontal wiring tables that can be placed in the rectangular area;
[0179] S5 stores the number p and coordinates of the wiring tables that exceed k wiring tables in the y-axis direction;
[0180] S6 Initialize branch i=0, wiring table j=0;
[0181] S7 Is branch i on wiring table j?
[0182] If S71 is yes, calculate the intersection of the branch and the wiring table j, calculate the branch break position according to the rule (the minimum distance between the inflection point and the wiring table boundary), add the inflection point, move one end of the branch (the point on the wiring table that does not exceed the number of wiring tables set by the rule is called a fixed point), and move the other end of the branch (the point on the wiring table that exceeds the number of wiring tables set by the rule is called a moving point) to place it in another wiring table;
[0183] S711 forms two new branches, namely, from the fixed point to the inflection point and from the inflection point to the moving point;
[0184] S712 finds all branches connected to the moving point and calculates their
[0185] The new position of the connected point, the connected point becomes the new moving point;
[0186] S713 executes S712 until all the connection points of the moving points are updated;
[0187] If S72 is negative, i++, jump to S7;
[0188] Judge whether the branch i>m holds
[0189] S81 If yes, execute S9;
[0190] S82 If no, i++, jump to S7;
[0191] S9 Judge whether j>n holds
[0192] S91 If no, j++, jump to S7;
[0193] S92 If yes, the pre-placement wiring table part ends.
[0194] Space optimization:
[0195] S1 Set the branch i = 0, the wiring table j = 0, the total number of branches is m, and the total number of edge wiring tables is p;
[0196] S2 Judge whether the branch i is on the wiring table j
[0197] S21 If it exists, judge whether the area occupied by i and its connected branches on the wiring table is less than a, or whether the branch i is the tail cover margin
[0198] S211 If yes, add an inflection point to the branch, move it to other wiring tables, and if the branch also connects other branches, move the connected branches of the branch as well;
[0199] S212 If no, jump to S3;
[0200] S22 If it does not exist, i++, jump to S3;
[0201] S3 Judge whether i>m holds
[0202] S31 If yes, judge whether the wiring table j contains branches
[0203] S32 If no, i++, jump to S2;
[0204] S321 If it does not contain, remove the wiring table j;
[0205] S322 If it contains, jump to S4;
[0206] S4 Judge whether j<p holds
[0207] S41 If yes, i = 0, j++, jump to S2;
[0208] S42 If no, end.
[0209] Grid adjustment:
[0210] S1 Set the total number of branches as m, and initialize i to 0;
[0211] Do the two ends of S2 branch i coincide with the positioning holes on the wiring table?
[0212] If S21 overlaps, this branch does not need to be adjusted;
[0213] If they do not overlap, S22 updates the starting point and the ending point of the branch to the nearest grid point;
[0214] S3 calculates whether the length of branch i meets the requirements of length and upper and lower deviations
[0215] If S31 is satisfied, jump to S4;
[0216] If S32 is not satisfied, the number of branches connected to the starting point and the end point of the branch is calculated, and the branch with the largest number of branch points connected to the branch endpoint is used as a fixed point, and the other endpoint is used as a moving point;
[0217] S33 if the current branch is longer than the required length, move the moving point in the direction from the moving point to the fixed point; if the branch is shorter than the required length, move the endpoint in the direction from the fixed point to the moving point of the branch;
[0218] After S34 moves, determine whether the branch meets the length requirement.
[0219] If S341 is satisfied, update the coordinate position of the branch and the coordinate position of the branch connected to it, and jump to S4;
[0220] If S342 is not satisfied, execute S33;
[0221] S4 determines whether i>m is true
[0222] S41 does not execute to the last branch, i++, jump to S2;
[0223] S42 is executed to the last branch, and the grid adjustment is completed.
[0224] like Figure 5 As shown, the line laying indication step in the present invention includes:
[0225] S1 reads the endpoint 1 name;
[0226] S2 reads the endpoint 2 name;
[0227] S3 uses the Floyd algorithm. In each iteration, it checks the paths between all pairs of vertices and shortens the paths by adding intermediate vertices. If the new path is shorter than the known path, it updates the path matrix and finally obtains the shortest path from endpoint 1 to endpoint 2. It stores the names of all endpoints, nodes, and inflection points on the path (a total of n).
[0228] S4 initializes i to 0;
[0229] S5 searches for the IP and ID of the end node indicator device corresponding to the i-th point;
[0230] S6 Whether the end node indication device corresponding to the i-th point is turned on in the last path indication
[0231] S61: If the end node indicating device corresponding to the i-th point is not turned on, a command to turn on the end node indicating device corresponding to the i-th point is sent, and S7 is executed;
[0232] If S62 is already open, no operation is required and S7 is executed;
[0233] S7: Whether the end node indicator devices corresponding to all points on the path are turned on;
[0234] S71 If the end node indication devices on this path are not all turned on, jump to S5
[0235] S72: If all the end node indication devices on the path are turned on, execute S8;
[0236] S8 initializes j to 1, and sets the total number of nodes on the previous path to m;
[0237] S9 reads the name of the point j that was lit during the last path indication;
[0238] S11 determines whether point j is in this path
[0239] S111: If point j is not in the current path, find the IP and ID of the end node indicator device corresponding to point j; send a command to close the end node indicator device corresponding to point j;
[0240] S112: If point j is in the current path, no operation is required, and S12 is executed;
[0241] S12 determines whether j>m is true
[0242] S121 if j is not the last point, j++, jump to S11;
[0243] S122 If point j is the last point, execute S13;
[0244] S13 places the wire bundle on the path according to the path indicated by the end node.
[0245] The contents not described in detail in the specification of the present invention belong to the common knowledge of those skilled in the art.
[0246] Although the present invention has been disclosed as above in the form of a preferred embodiment, it is not intended to limit the present invention. Any person skilled in the art may make possible changes and modifications to the technical solution of the present invention by using the methods and technical contents disclosed above without departing from the spirit and scope of the present invention. Therefore, any simple modifications, equivalent changes and modifications made to the above embodiments based on the technical essence of the present invention without departing from the content of the technical solution of the present invention shall fall within the protection scope of the technical solution of the present invention.
Claims
1. An intelligent wiring system, characterized in that: It includes a host, an end node positioning device, an end node indicating device, and a wiring table; The host is used to realize design input conversion, outline drawing, automatic layout, information storage, chart output, and communication with the end node positioning device and the end node indicating device; The end node positioning device indicates to the user the placement position of the end node indicating device based on the position information of a single point on the wiring table sent by the host; the end node indicating device parses the indicator light switch information sent by the host to indicate the wiring path; the wiring table is an operating platform with equidistant positioning holes and a fixed length and width, which is used to fix the end node positioning device, place the end node indicating device, and place the cable harness.
2. The intelligent wiring system according to claim 1, characterized in that: The end node positioning device includes a pan / tilt, a laser, a printer, a scanner, a main frame, and a fast fixing tooling structure; the pan / tilt controls the laser pen according to the horizontal angle and pitch angle sent by the host to indicate the placement position of the end node indicating device to the user; the printer prints the end node name and the end node positioning device number to assist manual operation and verification; the scanner is used to scan the end node indicating device, the end node name, and the one-dimensional or two-dimensional barcode information on the wire label to bind the single point and the end node indicating device; The main frame is used to place the host and end node indicator devices; The tooling structure is quickly fixed to achieve rapid installation and disassembly of the main frame and wiring table.
3. The intelligent wiring system according to claim 2, characterized in that: The end node positioning device also includes a battery, a charging box, and a storage box; the battery provides power for the gimbal, laser pen, printer, and charging box; the charging box charges the end node indicating device; and the storage box stores the end node indicating device.
4. A wiring method using the above intelligent wiring system, characterized in that: It includes design input conversion, margin adjustment, virtual cable, automatic layout, statistical inspection, and wiring instructions. Design input conversion, realize direct extraction of graphic information from cable design files and determine the connection relationship of branches based on the results of graphic extraction, and establish the mapping relationship between branches and text; The margin adjustment function reserves a specific length of wire margin for the connector tail shell model to ensure the perfect match between the wire and the tail shell interface, avoid the problem of the wire being too long or too short, and reduce the operator's work of measuring and marking the reserved wire length; Virtual cable, according to the design input conversion result, arrange the harness trunk and branches of each order in 1:1 order, and carry out sample layout step by step to ensure that each branch has no interference with the trunk and branches of the same order, forming a primary sample diagram; Automatic layout, automatically calculates and determines the location and direction of cable branches and the splicing method of wiring tables, and can accept manual intervention and adjustment; Statistical inspection, by reading the wiring table of the fixed-format cable design file, counting the types and quantities of all wires on each end connector; It also intuitively displays the types and quantities of all wires on each end connector, making it easier to check whether the wire laying results are correct; For line laying indication, the host reads the names of the first and last endpoints through the scanner, calculates the path between the two endpoints, and sends a command to the end node indication device. The end node indication device parses the command sent by the host and turns on or off its own status indicator light.
5. The wiring method according to claim 4, characterized in that: Design input conversion includes two parts: graphic extraction and drawing analysis: Graphics extraction: read the cable design file saved in the form of DXF file, extract the straight line marking information and text marking information in the cable design file, regroup and classify each graphic element according to the branch layout characteristics, and parse it into branch feature data; Drawing analysis: Determine the connection relationship between branches based on the results of graphic extraction, and establish a mapping relationship between branches and text.
6. The wiring method according to claim 5, characterized in that: Graphic extraction includes reading the straight line marking in the cable design file, extracting the length, upper deviation and lower deviation in the straight line marking, the length, upper deviation and lower deviation in the marking are the length, upper deviation and lower deviation of this branch, storing the positions of the two endpoints of the marked straight line, and recording them as the starting point and end point of this branch respectively; reading the text marking information in the cable design file, extracting the content of the text marking, and storing the position information of the text marking.
7. The wiring method according to claim 5, characterized in that: Drawing analysis: First, determine whether any two branches have overlapping points. If there are overlapping points, the two branches are connected, and the overlapping points are nodes. Repeat this process until all branches are determined. The branch point that does not overlap with other branches is the endpoint; secondly, the distance between each endpoint and the text annotation is calculated in turn, and the text closest to it is set as the name of this endpoint until all endpoints are determined.
8. The wiring method according to claim 4, characterized in that: Virtual Cable includes the following steps: Define the longest branch among all branches as the trunk; the branch directly connected to the trunk is called the first-order branch, and so on; First, coordinate transformation is performed: the coordinates of the endpoints and nodes obtained in the design input conversion part in the DXF design file are changed to the coordinates on the system software canvas; Secondly, deal with the intersecting branches: the branch with fewer connected high-order branches among the two intersecting branches is used as a moving branch, and the other branch is used as a fixed branch; Calculate the number of nodes on the path from the starting point of the mobile branch to the main branch, and the number of nodes on the path from the end point of the branch to the main branch; set the end with fewer nodes as a fixed point, and the other end as a mobile point; draw a straight line from the fixed point to the two end points of the intersecting straight line, the length of the straight line is the length of the mobile branch, recorded as l1 and l2, calculate the angle between l1 and l2 and the x-axis, and according to the angle with the x-axis, rotate the straight lines l1 and l2 toward the outside of the fixed branch according to the parameters set by the automatic layout rules; calculate whether there are still intersections between l1 and l2 and the fixed branch after each rotation; If it exists, continue to rotate; if it does not exist, update all branches connected to this moving branch; Finally, the branches are drawn on the system software canvas according to the branch coordinates.
9. The wiring method according to claim 4, characterized in that: Automatic layout includes three parts: pre-placement of wiring tables, space optimization, and grid adjustment; Pre-place the wiring table, define the direction from the upper left corner to the upper right corner of the wiring table as the positive direction of the x-axis, and the opposite direction as the negative direction of the x-axis; the direction from the upper left corner to the lower left corner of the wiring table is the positive direction of the y-axis, and the opposite direction is the negative direction of the y-axis; Space optimization, combined with automatic layout rules, removes wiring tables with fewer or shorter branches or those that only contain tail cover margin branches; Grid adjustment, based on the automatic layout results and combined with the grid position on the wiring table, adjust the ends, nodes, and inflection points of the harness to facilitate the fixation and subsequent operations of these points, and finally form a harness template diagram.
10. The wiring method according to claim 4, characterized in that: The statistical test includes: reading a wiring table in a fixed format, extracting the endpoint names and terminal numbers of all wiring point 1, and the endpoint names and terminal numbers of wiring point 2 in the wiring table; reading the information in the wiring table in sequence, storing the names of the endpoints and the models of the wires, and counting the number of wires of different models to facilitate verification of whether the results of the wire laying are correct.