Reverse engineering may be mistaken for a serious infringement of intellectual property rights, but in practical application, it may protect intellectual property owners. For example, in the field of integrated circuits, if a company is suspected of infringing intellectual property rights, it can use reverse engineering technology to find evidence.
Reverse engineering, also known as reverse technology, protects intellectual property owners and tries to confirm whether competing products infringe patents or copyrights.
catalogue
1 generate power
2 function
3 mechanical equipment
4 reverse engineering
5 method implementation
6 related operating software
7 hardware
Eight popular technologies
R&D
system
key technology
9 Relevant laws
10 extension application
Motivational editing
The reasons for reverse engineering are as follows:
● Interface design. Because of interoperability, reverse engineering is used to find cooperation agreements between systems.
● Military or commercial secrets. Stealing the latest research results or product prototypes of enemies or competitors.
● Improve the document. When the original documents are insufficient, and the system is updated and the original designer is absent, reverse engineering is used to obtain the required data to supplement the explanation or understand the latest state of the system.
● Software upgrade or update. Due to the change of function, compliance, security and other requirements, reverse engineering is used to understand the existing or legacy software systems, so as to evaluate the work needed to update or transplant the systems.
● Making unauthorized/authorized copies.
● Academic/learning purposes.
● Cancel copy protection and login permission in disguised form.
● File loss: In the case of reverse engineering, the file of a special equipment has been lost (or not at all), and the project leader cannot be found. A complete system often needs to be redesigned on the basis of the old system, which means that the only way to integrate the original functions and carry out the project is to use reverse engineering to analyze the existing fragments and redesign them.
● Product analysis: used to investigate the operation mode, composition, budget estimation and identify potential infringement of products.
Making game plug-ins: Understand the game operation mechanism through reverse engineering, and then realize the plug-in function by modifying the memory value, modifying the code in the memory, calling the internal function and bypassing the protection mechanism.
Action editing
Reverse engineering is widely used in new product development and product modification design, product imitation, quality analysis and testing. Its functions are:
1, shortening the design and development cycle of products and speeding up the upgrading of products;
2. Reduce the cost and risk of developing new products;
3. Accelerate product modeling and serialization design;
4. It is suitable for the manufacture of single-piece and small-batch parts, especially molds, which can be divided into direct molding and indirect molding. Direct molding method: the rapid direct molding method based on RP technology is to directly manufacture and mold the results of mold CAD through RP system. This method does not need to use RP system to make samples, nor does it rely on traditional mold manufacturing technology. It is especially suitable for metal mold manufacturing, and it is a promising mold manufacturing method. Indirect mold making method: Indirect mold making method is to use RP technology to make the prototype of product parts, take the prototype as the mother mold, mold core or mold making tool (grinding mold), and then combine traditional mold making technology to make the required mold.
Mechanical equipment editing
With the popularization of computer-aided design, reverse engineering has become a method to build a three-dimensional virtual model through CAD, CAM, CAE or other software according to the existing physical components. The process of reverse engineering adopts the method of measuring the size of the actual object and making it into a 3D model. Physical objects can be measured by 3D scanning technology such as CMM, laser scanner, structured light source converter or X-ray tomography scanner. These measurement data are usually regarded as point sets, lacking topological information, and are usually made into more useful formats, such as polygonal meshes, NURBS curves or CAD models. Because the vertex cloud itself is not as intuitive as the model in 3D software, such as 3-matic, Imageware, PolyWorks, Rapidform or Geomagic, these softwares all provide the function of transforming the vertex cloud into a visible image or a format that can be recognized by other applications, such as 3D CAD, CAM and CAE.
At the same time, reverse engineering will be needed to apply real geometric figures to commercial activities in the virtual digital development environment, such as digitizing three-dimensional data of own products or competitors. By this means, we can analyze the operation mode of products, the composition of components, estimate the budget and identify potential infringement.
Value engineering is also a similar commercial means. However, the purpose of value engineering is to find ways to save money by reverse constructing and analyzing products.
Reverse engineering editor
Reverse engineering (also called reverse engineering) is a description of the product design process. At the beginning of 2007, China's relevant laws renamed reverse engineering, recognizing the legitimacy of reverse technology used in learning and research.
In the general concept of engineers and technicians, the product design process is a process from design to product, that is, the designer first conceives the shape, performance and approximate technical parameters of the product in his mind, then completes various data models in the detailed design stage, and finally transfers this model to the R&D process to complete the whole design and R&D cycle of the product. This product design process is called "forward design" process. Reverse engineering product design can be considered as a process from product to design. Simply put, reverse engineering product design is the process of deriving product design data (including various design drawings or data models) from existing products. In this sense, the application of reverse engineering in industrial design has a long history. For example, the hull lofting design commonly used in early shipbuilding industry is a good example of reverse engineering.
With the wide application of computer technology in various fields, especially the rapid development of software development technology, it has become the main object of software reverse engineering technology to infer its data structure, architecture and programming information by disassembling and reading the source code based on a certain software. The purpose of software reverse technology is to learn and draw lessons from advanced technology, especially when you don't have suitable documents in your hand and really need to realize the function of a certain software. Because of this, in order to monopolize technology, many softwares require users to agree not to do reverse research before software installation.
The implementation of reverse engineering is a multi-field and multi-disciplinary collaborative process.
The method of realizing editing
There are many ways to realize software reverse engineering, and there are three main ways:
1. Analyze the observation results obtained through information exchange.
It is most commonly used in protocol reverse engineering, including the use of bus analyzer and packet sniffer. After connecting to a computer bus or network and successfully intercepting communication data, the behavior of the bus or network can be analyzed to create a communication implementation with the same behavior. This method is especially suitable for reverse engineering of device drivers. Sometimes, tools specially made by hardware manufacturers, such as JTAG ports or various debugging tools, are also helpful for reverse engineering of embedded systems. For Microsoft's Windows system, the popular underlying debugger is SoftICE.
2. Disassembly, that is, using disassembler, translates the original machine code of the program into assembly code that is easier to read and understand. This applies to any computer program, especially to people who are not familiar with machine code. The popular related tools are OllyDebug and IDA.
3. decompilation, that is, using decompiler, attempts to reproduce the source code of high-level language from the machine code or bytecode of the program.
Related operating software editing
Image software
Imageware produced by American EDS Company is the most famous reverse engineering software, which is being widely used in the design and manufacturing fields of automobiles, aviation, aerospace, consumer appliances, molds, computer parts and so on. The software has a huge user base, including BMW, Boeing, General Motors, Chrysler, Ford, Raytheon, Toyota and other internationally renowned companies. And domestic enterprises such as Shanghai Volkswagen, Shanghai Jiaotong University, Shanghai Delphi and Chengdu Aircraft Manufacturing Company.
In the past, the software was mainly used in aerospace and automobile industries, because these two fields require high aerodynamic performance, so the aerodynamic performance should be seriously considered at the beginning of product development. The conventional design process is to design the structure according to the needs of industrial modeling, then send the sludge model to the wind tunnel laboratory for aerodynamic performance measurement, and then modify the model repeatedly according to the experimental results until satisfactory results are obtained, so that the final sludge model is the model that meets the needs. How to accurately input the shape of sludge model into a computer to become an electronic model requires the use of reverse engineering software. Firstly, the lattice data of the model surface is measured by a three-coordinate measuring instrument, and then the 1 class surface can be obtained by processing it with reverse engineering software (such as Imageware surfacer).
With the progress of science and technology and the continuous improvement of consumption level, many other industries have begun to use reverse engineering software for product design. Take the mouse produced by Microsoft as an example. As far as its function is concerned, it only needs three buttons to meet the use requirements. However, how to make the mouse feel the best and not easily feel tired after long-term use is a problem that manufacturers need to seriously consider. Therefore, Microsoft first made several models for users to evaluate according to ergonomics, then directly modified the models according to the evaluation opinions until everyone was satisfied, and finally generated CAD data from the model data by using the reverse engineering software Imageware. When the product was put on the market, it was widely recognized by users with its novel appearance, smooth curve, good feel and ergonomic principle, and its market share increased greatly.
The main products of Imageware reverse engineering software are:
Surfacer- reverse engineering tool and 1 class surface generation tool
Conclusion-Compare and evaluate measurement data and CAD data.
Build it-provide real-time measurement capabilities and verify the manufacturability of products.
Rpm- generate rapid prototyping data
View- Similar to Verdict, it is mainly used to provide 3D reports.
Imageware adopts NURBS technology, and the software is powerful and easy to apply. Imageware does not require much hardware, and can run on various platforms: UNIX workstations and PC computers, and its operating system can be UNIX, NT, Windows95 and other platforms.
Because Imageware has advanced reverse engineering technology, the product has occupied a large market share once it is launched, and the software revenue is growing rapidly at the rate of 47% every year.
Surfacer is the main product of Imageware, which is mainly used in reverse engineering. Its data processing process follows the principle of point-curve-surface, the process is simple and clear, and the software is easy to use. The process is as follows:
First, point process.
Read in dot matrix data.
Surfacer can receive almost all coordinate measurement data, in addition, it can also receive other formats, such as STL, VDA and so on.
Align the separated grids (if necessary).
Sometimes, due to the complex shape of the part, all the data cannot be obtained by one scan, or the part is too big to be scanned at one time, so it is necessary to move or rotate the part, which will get many separate meshes. Surfacer can use special point information such as cylinder, sphere and plane to accurately align the grid.
Judge the lattice and remove noise points (that is, measurement error points).
Due to the limitation of measuring tools and methods, sometimes some noise points appear. Surfacer has many tools to judge the lattice, remove noise and ensure the accuracy of the results.
Plan how to create a surface by observing and judging the visual lattice.
A part is composed of many separate surfaces, and for each surface, we can judge how to form it according to its characteristics. For example, if the surface can be generated directly from the grid of points, you can consider using this grid directly; If the surface needs to use multi-segment curve skin, you can consider the segmentation of interception points. Planning ahead can avoid detours in the future.
Create a point grid or point line segment as needed.
Surfacer can provide various tools to generate meshes and split points. These tools are flexible and convenient to use, and can also generate multiple points at a time.
Second, the curve creation process
Judge and decide which type of curve to generate.
The curve can pass through the grid accurately, or it can be very smooth (capturing the main shape of the curve represented by the grid), or it is in between.
Create a curve.
Create curves as needed, and adjust the curves by changing the number of control points. When the number of control points increases, the shape fits well, while when the number of control points decreases, the curve is smoother.
Diagnose and modify curves.
We can judge the smoothness of a curve by its curvature, check the consistency between the curve and the lattice, and change the continuity (connection, tangency and curvature continuity) between the curve and other curves. Surfacer provides many tools to adjust and modify curves.
Third, the process of surface creation.
Decide which surface to generate.
Like curves, we can consider generating more accurate surfaces, smoother surfaces (such as 1 class surfaces), or both, which can be decided according to the needs of product design.
Create a surface.
There are many methods to create surfaces, such as directly generating fitting freeform with lattice, and generating curves and surfaces through skin, sweep and four boundary lines. Or combining lattice and curve information. You can also generate surfaces by other methods, such as fillet, crossing the bridge deck, etc.
Diagnose and modify surfaces.
Compare the matching degree between the surface and the mesh, check the smoothness of the surface and its continuity with other surfaces, and make modifications, such as aligning the surface with the mesh, adjusting the control points of the surface to make the surface smoother, or reconstructing the surface.
Chris Chatburn, a design engineer of Triumph Motorcycle Co., Ltd. in the UK, said: "With Surfacer, we can complete more design cycles in a shorter time, which can reduce our design time by 50%."
The newly released Surfacer 10.6 software fully integrates the high-performance tools of the following workflows:
Flexible surface creation tool: It is very convenient to create surfaces directly from curves, surfaces or measurement data in an elastic design environment, and it supports Betzl and NURBS surfaces. Users can choose an appropriate surface method and benefit from combining the advantages of the two methods.
Dynamic surface modification tool: allows users to explore the design theme in an interactive way, and can immediately see whether it is beautiful and whether the idea conforms to the engineering concept. Through careful construction process, the standards of design, engineering analysis and manufacturing are all taken into account, so there is no need to re-check the standards every time the surface is modified.
Real-time diagnosis tool for curved surface: It can provide many methods such as continuity of arbitrary cross section, reflection line, highlight line, spectrogram, curvature nephogram, reflection diagram under cylindrical light source irradiation, etc., and can find surface defects at any time in design.
Effective surface continuity management tool: in the case of complex surface stitching, even if the surface is moved and modified, the curvature continuity between the surface and the connected surface can be ensured, avoiding the boring manual readjustment process.
Strong scanning data processing ability: according to the rainbow diagram method (which is equivalent to assuming that rain falls from above, and the difference of rain speed is caused by shape difference) and the curvature change cloud diagram method (for a completely smooth class 1 surface, the curvature change is equal to zero, and this value will be different for two different surfaces), the main features of the product can be quickly captured, and each corresponding surface can be quickly established, thus avoiding trouble.
Because Imageware has incomparable powerful functions in computer-aided surface detection, surface modeling, rapid prototyping and so on, it deserves to be a leader in the field of reverse engineering.
Geomagic studio
Geomagic Studio, a reverse engineering and three-dimensional detection software produced by Raindrop in the United States, can easily create perfect polygon models and meshes from scanned point cloud data, and can automatically convert them into NURBS surfaces. This software is also the most widely used reverse engineering software except Imageware.
Geomagic Studio mainly includes five modules: qualification, shape, packaging, extraction and capture. The main functions include:
Automatically convert point cloud data into polygons.
Quickly reduce the number of polygons (extraction)
Convert polygons into NURBS surfaces
Surface analysis (tolerance analysis, etc. )
Output file formats (IGS, STL, DXF, etc. ) match CAD/CAM/CAE.
1. Product model obtained from CAD model
2. Read the CAD model into Geomagic Studio.
3.CAD design model and point cloud data scanned from actual model (different coordinate systems)
4. Automatic matching between scanned data and CAD model.
5. Automatic alignment between scanned data and CAD model
6. Errors are visually displayed in color graphics.
7. Users can mark any point error.
8. The appraisal results can be output in HTML format.
CopyCAD
CopyCAD is a powerful reverse engineering system software produced by DELCAM Company in Britain, which can make existing parts or solid models generate 3D CAD models. This software provides a complex tool for generating CAD surfaces from digitized data. CopyCAD can receive data from coordinate measuring machine tools and track machine tools and laser scanners at the same time.
CopyCAD's simple user interface allows users to make it in the shortest time, and can quickly master its functions, even for first-time users. Users who use CopyCAD will be able to quickly edit digitized data and generate high-quality complex surfaces. The software system can completely control the selection of surface boundaries, and then automatically generate smooth surfaces according to the set tolerances. At the same time, CopyCAD can also ensure the continuity of tangents between connected surfaces.
The main functions of the software are as follows:
Digitized point data input
Pipeline drawings and triangle model files
Numerical control coordinate measuring machine tool
Separate ASCII code and NC file
Laser scanner, 3D scanner and SCANTRON
PC ArtCAM
Renishaw MOD file
Point operation
You can add, subtract, delete, move, hide and mark points.
The three-dimensional deviation of the model can be compensated to measure the probe size.
Ability to transform, scale, rotate and mirror models.
Able to cut planes, polygons or other models.