Engineering legends-manufacturing plane

Source: Internet
Author: User
Tags benchmark
Engineering legends-manufacturing plane

Mo Huafeng

 

 


One of my cousins was an engineer. I had an apprenticeship in the factory in my early years. Later I went to college and got a master's degree. I had a solid theoretical and practical skills. Once, he asked me a question: how is the tablet used by the fitter?
. The fitter's plate is actually a hard iron plate with a very smooth surface that can reach a flatness of less than 1mm. The fitter uses the plate as the benchmark for assembly, measurement, processing, and so on. I want
I didn't want to answer: Use a more flat plane as the benchmark to process the flat. He asked me one more question: how is the flat plane processed? Now I want to talk about it. That's right. How did we make a flat plane?

Then he told me that it was actually very simple. The basic processing process is as follows: first, prepare three iron slabs and planer them. This is rough processing, and three flat plates are not very flat. What we do below is the key.
The process is not very complex, but it takes some effort to describe it in words. For convenience, create three iron plates A, B, and C. First, apply a "Blue oil" on the Board (in fact, it is a blue-purple
Oily dyeing agent, commonly known as blue oil), and then cover the B Board to study. As a result, some areas on board B will be stained with blue oil. Then the worker used a scraper to scrape the colored area. After the scratch, place B on one side. The C board is also placed on the board, and it is also scraped. To put it simply, the Board is used as the benchmark to scrape B and C.
Next, use plate B as the benchmark to scrape C and. Next, use the C plate as the benchmark to scrape a and B. As a result, the three boards take turns to "sit down" (as a benchmark) and process the other two. Until the flatness meets the requirements.

The key to the entire processing process is that at the beginning, several plates were not flat. When we use a as the benchmark to develop the plates B and C, the highlights of A (or both highlights) will be stained on the other two surfaces.
Output Color. After the scratch, the dyeing areas will be removed. In principle, after the scratch, the concave and convex sides of the B and C plates should be the same. Because they are processed on the basis of a, they should all complement. B burst
C is also prominent. Therefore, when B is used as the benchmark for C scratch, the truly prominent part is removed (relative to the real plane ). Of course, in fact, the three boards are uneven, and the-based scratch
The resulting B and C are not completely concave and convex. Therefore, it is necessary to use three plates in turn as the benchmark and perform repeated scraping to gradually approach the target.

In mechanical processing, the benchmark is always indispensable. However, when processing a tablet (or platform), the plane must be taken as the benchmark. The problem arises: a plane is an abstract concept, and there is no visible model.
Something is called a plane ". However, some basic principles can be used to create such an abstract benchmark. The more basic the object is, the more difficult it is to find the physical benchmark. At this time, the basic physical and
Learning principlesInvariantTo obtain a virtual benchmark. For example, my doctoral thesis from my university tutor is to check the surface smoothness of the CD disk, and the precision must reach the nano level. The method used is the interference of light. For example, international standard units, such as meters and seconds, are also based on the light of a specific wavelength, using the principle of constant speed of light.
Similar to machining, Basic Principles are also required for some basic tasks of software development.


I have
Dream. Of course, my dream is not as great as Dr. King. My real dream is the dream of washing my feet, taking off my clothes, getting into bed, snoring, and doing. I dreamed that I was compiling
. Forms, big and small, are filled with buttons, ComboBox, grid, and other controls, and databases are floating in the distance. The data jumps around. I still remember the head length
The task assigned by the boss at the corner of the corner: Drive data to the interface and database. When I waved the mouse in my hand and pushed a group of data to form, they shouted, "this is not what we look like !" When I wave my hands
When another group of data is pushed to the database, they are also moaning: "This is not what we look like !"
"This is not what we look like !" That's what data is saying. Think about it too. The interface is either a button or an editing box, which is really different from the data. The database is not a table, but an association. You have to split the poor data into eight pieces before you can include them. My God, what should I do?
I admit that I have never had such a dream. I edited it ALL :).
The impedance mismatch between the data in the program and the interface, data storage, and database has been a problem for a long time. Various attempts, such as object databases and Orm, have more or less problems. If we look back at some "old" technologies, we may be enlightened.

When bell
When they created UNIX, labs masters came up with a very cutting-edge idea: Everything is a file. Of course, in UNIX, they only partially achieve this goal. The hearts of the ox are unwilling and have gone through thousands
Xin wanbitter, finally realized this dream in Plan 9. Now let's put the story of the ups and downs aside, simply looking at the usefulness of this avant-garde "Everything is a file.
Since "Everything is a file", that is to say, everything is a file. To be exact, everything canView as a file. Therefore, everything, such as system parameters, device statuses, graphical interfaces, and communication ports, can be processed as files. Another point is very important. Since files are available, directories are indispensable. Since the beginning of UNIX, the file directory is a family. If you treat the directory as a file, it is not too much.

Take the interface as an example. There is a form with buttons and grid on it. We regard form as a directory, and the button is a file in the directory. If you want to operate the button, such
Enable/disable, modify button text, control 3D effects, and so on, you can write data to the "file" of the button. Of course, if you delete this "file", the button will also
It disappears. Grid is a directory, and the rows and columns in it are also directories, while cells are files. To add a row or column, create a directory. To add cells, add files to the directory.

Let's take a look at other things. Take me as an example. Yes, I. It is actually my information. First, my information is stored in a piece of data. Data blocks are further divided into several sub-blocks to store different information, such as names,
Gender, birthday, home address, home location, etc. These sub-data blocks can be further subdivided. For example, names can be divided into surnames and names (if in ancient times, there may be other sub-data blocks and numbers. Now, there may be another nickname, English
Text name, French name or something), birthday is divided into year, month, and day, residential address is divided into country, province, city, district, and so on. If you expand the information in a hierarchical manner, you will find that this is no different from a directory structure.
If I need to fill in my information on an interface, it is actually converting a directory structure containing files into another directory structure form. The same operation can be further promoted to all resources, as long as we can map any kind of resources into files and directories.

However, there is a lot of data that does not exist in the form of a tree (that is, a directory structure), they are more likely to be graphs. In this case, we only need to strip the desired part in the form of a tree, that is, the so-called spanning tree, to the object
Structure to achieve our goal. In fact, the file system can form a graph through link, but there are restrictions on the use. If we really try to construct such a unified resource access system, we can break through these
.
Since all resources come down to a structure, that is, the directory-file structure, data generation, transmission, conversion, and so on are all under a data model, there will be no impedance mismatch problem.

In fact, the word "file" has been alienated and has nothing to do with serious documents. The so-called "file" is only a form, not a lump of data that is actually stored on the disk. It looks like,
Features and behaviors are like files. It may be physically a piece of memory, a port, or a database field. But no matter what its true background is, it is eventually dressed as
Files, which can be operated as files, accessed as files, and managed as files.

Furthermore, it may be easier for people to understand if we abandon the title of "document" and use more modern terms. Such as nodes, resources, streams, or other terms that exist or do not exist. (Phase
Citic people who love Chinese traditional culture may name it "Tao" or "Yuan" or something ). No matter what the name is, the essence of it is that resources are segmented by their content to form a tree structure.
Structure. In addition, the relationships between different resources (or data) further organize resources (or data) into more complex graphs. Thus forming a unified but highly abstract system.

How to access such a system? First, you need to locate a resource. Or the file system prompts us. In the file system, locate a file by path. To locate a resource, you can also use
Path. For example, if there is a grid named mygrid on the Interface mentioned above, you can locate the cells in the 5th columns of row 3rd, which is nothing more than mygrid/row5/col3.
/Cell. To increase the search capability, you can add filtering conditions to the path and the retrieval direction. The path can also be written as mygrid/row [5]/COL [3].
/Cell, or simply write it as mygrid/cell [ROW = 5 and
Col = 3]. Okay. What does this look like? Those familiar with XML may have already shouted, "this is XPath !". Yes, this is XPath. You can search the required resources in the tree or graph.
Language. With the support of this path, we can retrieve the required data in a unified resource model and construct the required results.

To eliminate impedance mismatch, We need to unify the expressions (or data models) of different data sources (resources ). This requires us to examine the abstract features of various data resources in essence. Logically,
Data, devices, and interfaces are composed of different parts, and each part is composed of smaller parts. This continuous subdivision can eventually form a tree structure. This kind of structure is vividly described in "Everything is a file ".
. The relationship between resources turns this model into a more general graph structure. Whatever it is, it gives us a unified resource access model, so that we have the opportunity to minimize unnecessary
Pipeline Code to improve our production efficiency.


To make a tablet, we need a plane as the benchmark. In order to obtain this nonexistent benchmark, we need to use essential principles to guide the processing method. Similarly, to eliminate impedance mismatch,
We have to go deep into the nature of the problem and analyze the fundamental abstract features of data and resources to obtain a model suitable for all resource access. Therefore, basic problems still need to be solved in essence.
.
Of course, it takes a long time for a worker to scrape a qualified tablet. Creating a unified resource access system is a persistent and hard job.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.