Electronic device, computer-implemented system and distance measurement method

Through the dual laser measuring device and its integrated system with the mobile handheld computing device, efficient measurement and automation processing of the vertical distance between the two surfaces is achieved, and the problem of insufficient automation of measurement in the prior art is solved, and efficiency and accuracy in construction projects are improved.

CN114527474BActive Publication Date: 2025-02-28M H 帕诺蒂安 +1
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202210070534.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2020-11-03
Filing Date
2021-02-26
Publication Date
2025-02-28
Estimated Expiration
2041-02-26

AI Technical Summary

Technical Problem

Existing laser measuring devices are not automated enough when measuring the vertical distance between two surfaces and are difficult to directly use in the material selection and ordering process in building construction projects.

Method used

A dual laser measuring device (DLMD) and an integrated system with a mobile handheld computing device are provided. Through a plurality of laser emitting devices and light detection devices, the vertical distance between two target surfaces is calculated using a triangulation method, and the full process from measurement to material ordering is automated through a DLMD application.

Benefits of technology

Improves measurement accuracy and efficiency, reduces time and cost in construction projects, and achieves a high-integration interface from measurement to material ordering, improving overall efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

An electronic device, computer-implemented system, and distance measurement method are disclosed for measuring the dimensions of a building or other structure, calculating other quantities based on the measured dimensions, selecting building construction or finishing materials, ordering materials, and saving the measured dimensions and a list of ordered materials in a data storage device. All steps of the process from measuring to ordering materials can be performed using a DLMD application running on a mobile computing device.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] This application is a divisional application of the Chinese invention patent application with the application date of February 26, 2021, application number 202110219442.5, and invention name “Dual laser measuring device and online ordering system using the same”. Technical Field

[0002] The present application generally relates to measuring devices. More specifically, the present application relates to a dual laser measuring device (DLMD) for measuring distances, which is used as a stand-alone device or with a smartphone. Summary of the invention

[0003] A first aspect of the present application provides an electronic device for distance measurement, the device comprising:

[0004] a first plurality of laser emitting devices for emitting a plurality of laser beams toward a first target surface, wherein each laser emitting device in each adjacent pair of the first plurality of laser emitting devices emits a laser beam at a non-zero angle relative to a laser beam emitted from another laser emitting device in the same adjacent pair of the first plurality of laser emitting devices;

[0005] a second plurality of laser emitting devices for emitting a plurality of laser beams toward a second target surface, wherein each laser emitting device in each adjacent pair of the second plurality of laser emitting devices emits a laser beam at a non-zero angle relative to a laser beam emitted from another laser emitting device in the same adjacent pair of the second plurality of laser emitting devices; and

[0006] A plurality of light detection devices are used to detect reflections of the first plurality of laser beams and the second plurality of laser beams reflected after respectively striking the first target surface and the second target surface.

[0007] A second aspect of the present application provides a computer-implemented system for distance measurement, the system comprising:

[0008] mobile handheld computing devices;

[0009] a dual laser measurement device, i.e., DLMD, coupled to the mobile handheld computing device via a data interface;

[0010] a plurality of laser emitting devices coupled to the DLMD and arranged to emit laser beams in different directions; and

[0011] The DLMD application program, ie, the DLMD app, is installed on the mobile handheld computing device, and the DLMD app includes a software routine for calculating the distance between two target points based on a triangulation method.

[0012] A third aspect of the present application provides a distance measurement method, the method comprising:

[0013] projecting a first plurality of laser beams at different angles toward a first target surface;

[0014] projecting a second plurality of laser beams at different angles toward a second target surface;

[0015] detecting a first plurality of reflections of the first plurality of laser beams reflected from the first target surface;

[0016] detecting a second plurality of reflections of the second plurality of laser beams reflected from the second target surface; and

[0017] A perpendicular distance between the first target surface and the second target surface is calculated based on a triangulation method applied to the first detected plurality of reflections and the second detected plurality of reflections. BRIEF DESCRIPTION OF THE DRAWINGS

[0018] The accompanying drawings are presented to facilitate understanding of the subject matter sought to be protected when considered in conjunction with the following description.

[0019] Figure 1 An embodiment of a network computing environment in which the present disclosure may be practiced is shown;

[0020] Figure 2 It shows that it can be Figure 1 An embodiment of a computing device for use in a network computing environment;

[0021] Figure 3 An example measurement arrangement for measuring the dimensions of a building using a DLMD device is shown. Figure 2 The described computing device is coupled to a computing device similar to that described above;

[0022] Figure 4A Shows Figure 3 Example detail of a front view of an example DLMD device;

[0023] Figure 4B Shows Figure 4A Example detail of an AA cross-sectional side view of an example DLMD device;

[0024] Figure 4C An example one-dimensional (1-D) measurement of the vertical distance between two opposing walls of a building is shown;

[0025] Figure 4D An example 1-D measurement of the point-to-point (PP) distance between two opposing walls of a building is shown;

[0026] Figure 4EAn example triangulation pyramid for calculating the vertical distance between two opposing walls of a building is shown.

[0027] Figure 5 An example smartphone is shown with a DLMD software application (app) installed thereon;

[0028] Fig. 6A shows an example overview of the DLMD application and its various screens used during a measurement process;

[0029] Figure 6B An example DLMD application start screen and user introduction screen are shown;

[0030] Figure 6C An example DLMD application product category selection screen is shown;

[0031] Fig.6D An example DLMD application manual measurement input screen is shown;

[0032] Fig. 6E An example DLMD application DLMD status screen and measurement type selection screen are shown;

[0033] Fig. 6F An example DLMD application 1-D distance measurement screen and database are shown;

[0034] Figure 6G An example DLMD application surface area (2-D) measurement screen is shown;

[0035] Figure 6H An example DLMD application room dimensions (3-D) measurement screen is shown;

[0036] Fig. 7A An example DLMD application material selection screen is shown;

[0037] Figure 7B shows an example DLMD application product search and search filter screen;

[0038] Figure 7C An example DLMD application product selection screen is shown;

[0039] Figure 8 shows an example DLMD application image and annotation creation screen;

[0040] Fig. 9A An example DLMD application other measurement selection screen is shown;

[0041] Fig. 9B An example DLMD application Other - Concrete Slab Measurement screen is shown;

[0042] Fig. 9C An example DLMD application Other - Pipeline System Measurements screen is shown;

[0043] Fig.9D shows an example DLMD application Other-Partial Surface Measurement screen; and

[0044] Fig.9E An example DLMD application Other - Drywall Measurement screen is shown. DETAILED DESCRIPTION

[0045] Although the present disclosure is described with reference to several illustrative embodiments described herein, it should be clear that the present disclosure should not be limited to such embodiments. Therefore, the description of the embodiments provided herein is illustrative of the present disclosure and should not limit the scope of the claimed disclosure. In addition, although the following description refers to a specific DLMD application screen, it will be understood that the present disclosure can be used with other types of DLMD application screen configurations.

[0046] Briefly described below, a system and method including a DLMD coupled to a mobile computing device is disclosed for measuring the dimensions of a building or other structure, calculating other quantities based on the measured dimensions, selecting construction or finishing materials for the building, ordering materials, and saving the measured dimensions and a list of ordered materials in a data storage device. All steps of this process from measuring to ordering materials can be performed using a DLMD application, as further described below with reference to the accompanying drawings.

[0047] In various embodiments, a computer-implemented integrated system for purchasing construction products is disclosed, comprising: a mobile handheld computing device; a dual laser device coupled to the mobile handheld computing device via a data interface; a DLMD application installed on the mobile handheld computing device, the dual laser application comprising a laser activation button for causing the dual laser devices to simultaneously project laser beams in opposite directions to measure the distance between two points. Also included is a product category selection interface for selecting a product category for a construction project, a product selection interface for selecting a specific product for a construction project, and a product ordering interface for ordering a specific product from a supplier.

[0048] In various embodiments, a measuring device is disclosed, comprising: a laser measuring accessory coupled to a mobile handheld computing device; and at least one photodetection unit coupled to each of opposite sides of the laser measuring accessory, wherein the at least one photodetection unit on each of opposite sides of the laser measuring accessory is used to project a plurality of laser beams, each of the plurality of laser beams being projected at a different angle relative to the other laser beams.

[0049] In various embodiments, a computer-implemented method for construction product purchasing is disclosed, comprising: selecting a product category for measurement using a DLMD application running on a mobile handheld computing device, activating a dual laser device to project multiple light beams onto opposite sides of the dual laser device to perform distance measurements for the selected product category, transmitting the distance measurements to the mobile handheld computing device; selecting a specific product to be purchased using the DLMD application, and purchasing the selected product using the DLMD application.

[0050] Building contractors, construction workers, and private do-it-yourself (DIY) workers generally must go through a similar process as outlined above. For example, a contractor who wants to continue work on a building, remodel a room or kitchen, paint a room, or perform plumbing and electrical work in a house must go through the process of measuring the dimensions of walls, floors, windows, etc., selecting appropriate materials (such as paint and wood, etc.) for the task at hand, and ordering the selected materials from a building material supplier or hardware store.

[0051] This is a time-consuming and disjointed process. The various steps in the process are completed using different tools, at different times, and often by different people. In a disjointed process where the tools are not integrated, each piece of information must be communicated across separate steps. For example, a contractor managing a construction project might carefully measure the required distances and record the measurements. Later, the contractor can use the measurements to estimate the surface area of ​​walls and floors or the perimeter of a room. Next, the contractor may have to visit a hardware store or browse its website to see what product options are available. After that, the contractor must visit the store or order the products online on the website or by phone to get the materials needed for the project. Each of these steps may have to be performed by different contractors. For example, one contractor may perform the measurements, while another contractor may select the materials, and yet another contractor may go to purchase the materials. To complete these tasks, contractors must provide various data to other contractors, which can be error-prone and time-consuming. For example, ordering the wrong amount of paint or the wrong color of paint causes delays and increases the cost of the project.

[0052] Many laser devices are available on the market for measuring distances. As mentioned above, the measurement of distances is one step in the overall process of carrying out a construction project. The remaining steps are not directly relevant to the laser measuring devices that exist today, and these devices do not play a role in performing other steps besides measuring. These devices only produce point-to-point measurements, which are then passed on to the next stage of the project. The laser device also does not automatically ensure that the distance measured is the vertical distance between two parallel walls. The person using the measuring device can use other devices (such as a level, etc.) to measure vertical distances, but the laser device itself does not automatically perform this function. Therefore, when the shortest distance between two surfaces is being measured, the accuracy of the measurement may be compromised.

[0053] Therefore, a need exists for an apparatus for providing a highly integrated interface that delivers highly integrated services for construction projects to reduce project time, increase project accuracy, reduce costs, and improve overall efficiency.

[0054] Exemplary Operating Environment

[0055] Figure 1 Components of an illustrative environment in which the present disclosure may be practiced are shown. Not all of the components shown may be required to practice the present disclosure, and the arrangement and type of components may be changed without departing from the spirit or scope of the present disclosure. System 100 may include a local area network (LAN) and a wide area network (WAN), collectively shown as network 106, a wireless network 110, a gateway 108 configured to connect remote and / or different types of networks together, client computing devices 112-118, and server computing devices 102-104.

[0056] Below about Figure 2 One embodiment of a computing device that may be used as one of the client computing devices 112-118 is described in more detail. However, in brief, the client computing devices 112-118 may include virtually any device capable of receiving and sending messages over a network such as the wireless network 110. Such devices include portable devices such as cellular phones, smart phones, display pagers, radio frequency (RF) devices, music players, digital cameras, infrared (IR) devices, personal digital assistants (PDAs), handheld computers, laptop computers, wearable computers, tablet computers, or integrated devices that combine one or more of the foregoing devices, etc. The client device 112 may include virtually any computing device that is typically connected using a wired communication medium, such as a personal computer, a multiprocessor system, a microprocessor-based or programmable consumer electronics product, a network PC, etc. In one embodiment, one or more of the client devices 112-118 may also be configured to operate on a wired and / or wireless network.

[0057] Client devices 112-118 typically vary widely in capabilities and features. For example, a cellular phone may have a numeric keypad and a few lines of monochrome LCD display on which only text can be displayed. In another example, a web-enabled client device may have a touch-sensitive screen, a stylus, and several lines of color LCD display on which both text and graphics can be displayed.

[0058] The web-enabled client device may include a browser application configured to receive and send web pages, web-based messages, etc. The browser application may be configured to receive and display graphics, text, multimedia, etc. using virtually any web-based language, including wireless application protocol messages (WAP), etc. In one embodiment, the browser application may be enabled to use one or more of Handheld Device Markup Language (HDML), Wireless Markup Language (WML), WMLScript, JavaScript, Standard Generalized Markup Language (SMGL), Hypertext Markup Language (HTML), Extensible Markup Language (XML), etc., to display and send information.

[0059] The client computing devices 112-118 may also include at least one other client application that is configured to receive content from another computing device, including but not limited to the server computing devices 102-104. The client application may include the ability to provide and receive text content, multimedia information, and the like. The client application may also provide information identifying itself, including type, capabilities, name, and the like. In one embodiment, the client device 112-118 may uniquely identify itself by any of a variety of mechanisms, including a telephone number, a mobile identification number (MIN), an electronic serial number (ESN), a mobile device identifier, a network address (such as an IP (Internet Protocol) address, etc.), a media access control (MAC) layer identifier, or other identifier. The identifier may be provided in a message sent to another computing device, etc.

[0060] The client computing devices 112-118 may also be configured to communicate messages to another computing device, such as via email, Short Message Service (SMS), Multimedia Messaging Service (MMS), Instant Messaging (IM), Internet Relay Chat (IRC), Mardam-Bey's IRC (mIRC), Jabber, etc. However, the present disclosure is not limited to these messaging protocols, and virtually any other messaging protocol may be employed.

[0061] The client device 112-118 may also be configured to include a client application that enables a user to log in to a user account that may be managed by another computing device. For example, such a user account may be configured to enable a user to receive emails, send / receive IM messages, SMS messages, access selected web pages, download scripts, applications, or various other content, or perform various other actions over a network. However, the management of messages may also be performed without logging into a user account or otherwise accessing and / or downloading content. Therefore, a user of the client device 112-118 may use any of a variety of client applications to access content, read web pages, receive / send messages, etc. In one embodiment, for example, a user may use a browser or other client application to access a web page hosted by a Web server implemented as a server computing device 102. In one embodiment, messages received by the client computing device 112-118 may be stored in a non-volatile memory such as a flash memory and / or PCM across a communication session and / or between power cycles of the client computing device 112-118.

[0062] The wireless network 110 may be configured to couple client devices 114-118 to the network 106. The wireless network 110 may include any of a variety of wireless subnets, which may also cover independent ad hoc networks, etc., to provide infrastructure-oriented connectivity for the client devices 114-118. Such subnets may include mesh networks, wireless LAN (WLAN) networks, cellular networks, etc. The wireless network 110 may also include an autonomous system of terminals, gateways, routers, etc. connected by wireless radio links, etc. These connectors may be configured to move freely and randomly and organize themselves arbitrarily, so that the topology of the wireless network 110 can change rapidly.

[0063] The wireless network 110 may also employ a variety of access technologies, including second generation (2G), third generation (3G), fourth generation (4G), and most recently fifth generation (5G) radio access for cellular systems, WLANs, wireless router (WR) meshes, and the like. Access technologies such as 2G, 3G, and future access networks may enable wide area coverage for mobile devices such as client devices 114-118 with varying degrees of mobility. For example, the wireless network 110 may enable radio connectivity through radio network access such as Global System for Mobile Communications (GSM), General Packet Radio Service (GPRS), Enhanced Data GSM Environment (EDGE), WEDGE, Bluetooth, Low Energy (LE) Bluetooth, High Speed ​​Downlink Packet Access (HSDPA), Universal Mobile Telecommunications System (UMTS), Wi-Fi, Zigbee, Wideband Code Division Multiple Access (WCDMA), and the like. In essence, the wireless network 110 may include virtually any wireless communication mechanism by which information may be communicated between the client devices 102-104 and another computing device, a network, and the like.

[0064] The network 106 is configured to Figure 1 One or more servers, depicted in FIG. 1 as server computing devices 102-104 and their respective components, are coupled to other computing devices, such as client device 112, and to client devices 114-118 via wireless network 110. Network 106 is enabled to employ any form of computer-readable media for communicating information from one electronic device to another electronic device. Furthermore, network 106 may include the Internet in addition to a local area network (LAN), a wide area network (WAN), a direct connection such as through a universal serial bus (USB) port, other forms of computer-readable media, or any combination thereof. On an interconnected set of LANs, including those based on different architectures and protocols, a router acts as a link between the LANs, enabling messages to be sent from one to another.

[0065] In various embodiments, the arrangement of system 100 includes components that can be used in and form various network architectures. Such architectures may include peer-to-peer, client-server, two-tier, three-tier or other multi-tier (n-tier) architectures, MVC (Model View Controller) and MVP (Model View Presenter) architectures, etc. Each of these is briefly described below.

[0066] Peer-to-peer architecture entails the use of protocols such as P2PP (Peer-to-Peer Protocol) for cooperative, often symmetrical and independent communication and data transfer between peer client computers without the use of a central server or associated protocols.

[0067] The client-server architecture includes one or more servers and multiple clients that connect to and communicate with the servers through some predetermined protocols. For example, a client computer connected to a web server via a browser and related protocols (such as HTTP, etc.) can be an example of a client-server architecture. The client-server architecture can also be considered a 2-tier architecture.

[0068] Two-tier, three-tier, and generally n-tier architectures are those in which different functions are separated and isolated from each other by using well-defined hardware and / or software boundaries. As already mentioned, an example of a two-tier architecture is a client-server architecture. In a 2-tier architecture, the presentation layer (or tier) that provides the user interface is separated from the data layer (or tier) that provides the data content. The business logic that processes the data can be distributed between the two layers.

[0069] The three-tier architecture goes a step further than the two-tier architecture because it also provides a logic layer between the presentation layer and the data layer to handle application data processing and logic. Business applications often fall into and are implemented in this layer.

[0070] MVC (Model-View-Controller) is a conceptual many-to-many architecture where the Model, View, and Controller entities can communicate directly with each other. This is in contrast to a 3-tier architecture where only adjacent tiers can communicate directly.

[0071] MVP (Model-View-Presenter) is a modification of the MVC model where the Presenter entity is similar to the middle tier of a 3-tier architecture and includes the application and logic.

[0072] The communication link within the LAN typically includes a twisted pair or coaxial cable, while the communication link between networks can utilize analog telephone lines, including all or part of dedicated digital lines of T1, T2, T3 and T4, integrated services digital network (ISDN), digital subscriber line (DSL), wireless links including satellite links or other communication links known to those skilled in the art. In addition, remote computers and other related electronic devices can be remotely connected to the LAN or WAN via a modem and a temporary telephone link. The network 106 may include any communication method by which information can be transmitted between computing devices. In addition, the communication medium can generally realize the transmission of computer-readable instructions, data structures, program modules or other types of content without limitation. By way of example, the communication medium includes wired media such as twisted pairs, coaxial cables, optical fibers, waveguides and other wired media and wireless media such as acoustic, RF, infrared and other wireless media.

[0073] In various embodiments, the client computing devices 112-118, the networks 106 and 110, and the server computing devices 102 and 104 can operate in real time. As is well known in the relevant computing fields, the term "real time" can mean one or more of several operating characteristics. One aspect of real time is having a computing deadline that must be completed, often in milliseconds or microseconds. For example, for a deadline of 4 milliseconds from the request time, obtaining data records from a database within 4 milliseconds meets the deadline, and therefore in a specific case defined in this way, this will be considered as real-time performance. Another aspect of real-time computing is that data at one location in a memory, storage device, display, or record is updated by a computing device at a rate substantially the same as that at which the computing device receives new data from other sources. For example, if a computing device receives financial stock information at a specific rate (such as 10 data records per second, etc.), then if the display of such data is also updated at the same rate on the display screen, the real-time requirement will be considered to be met. Yet another aspect of real-time computing is the control of a physical or virtual (software process) process where data or signals processed and / or provided by a computing device must arrive at the process before a particular step in the process is completed and terminated. For example, if a computing device (such as a microcontroller, etc.) in an automobile is controlling the engine intake via a fuel injector, the signal cannot reach the fuel injector after the engine intake valve is closed. The signal must arrive at the fuel injector before the intake step in the engine operating cycle is completed to control the flow of gases into the engine. In this regard, the deadline for the calculation is set by the duration of the process step, rather than by a fixed time constant.

[0074] Exemplary Computing Device Configuration

[0075] Figure 2 It shows that it can be expressed Figure 1 The exemplary computing device 200 of any of the server and / or client computing devices shown in FIG. Depending on the desired functionality, the computing device represented by computing device 200 may include more than Figure 2 For example, a mobile computing device may include a transceiver 236 and an antenna 238, while Figure 1 The server computing device 102 may not include these components. Those skilled in the art will appreciate that the integration scope of the components of the computing device 200 may be different from the scope shown. Figure 2 Some components of computing device 200 shown in FIG. 2 may be integrated together as a unit. For example, NIC 230 and transceiver 236 may be implemented as an integrated unit. In addition, alternatively, different functions of a single component may be separated and implemented across several components. For example, different functions of I / O processor 220 may be separated into two or more processing units.

[0076] Continue to refer Figure 2 , the computing device 200 includes an optical storage device 202, a central processing unit (CPU) 204, a memory module 206, a display interface 214, an audio interface 216, an input device 218, an input / output (I / O) processor 220, a bus 222, a non-volatile memory 224, various other interfaces 226-228, a network interface card (NIC) 320, a hard disk 232, a power supply 234, a transceiver 236, an antenna 238, a tactile interface 240, and a global positioning system (GPS) unit 242. The memory module 206 may include software such as an operating system (OS) 208 and various software applications, and / or software modules / components 210-212. Such software modules and components may be stand-alone application software, or components such as DLLs (dynamic link libraries) of larger application software. The computing device 200 may also include Figure 2 For example, computing device 200 may also include an illuminator (e.g., a lamp), a graphical interface, and a portable storage medium such as a USB drive. Computing device 200 may also include other processing units, such as a math coprocessor, a graphics processor / accelerator, and a digital signal processor (DSP).

[0077] Optical storage 202 may include an optical drive for using optical media such as CDs (compact disks), DVDs (digital video disks), etc. Optical storage 202 may provide an inexpensive way to store information for archival and / or distribution purposes.

[0078] Central processing unit (CPU) 204 may be the main processor for executing software programs in computing device 200. CPU 204 may represent one or more processing units that obtain software instructions from memory module 206 and execute such instructions to perform calculations and / or transfer data between various data sources and data destinations, such as hard disk 232, I / O processor 220, display interface 214, input device 218, non-volatile memory 224, etc.

[0079] The memory module 206 may include RAM (random access memory), ROM (read only memory), and other storage means mapped to an addressable memory space. The memory module 206 illustrates one of many types of computer storage media for storing information such as computer readable instructions, data structures, program modules, or other data. The memory module 206 may store a basic input / output system (BIOS) for controlling the low-level operation of the computing device 200. The memory module 206 may also store an OS 208 for controlling the general operation of the computing device 200. It will be appreciated that the OS 208 may include a UNIX or LINUX operating system, for example. TM A general-purpose operating system such as a version of Windows Mobile TM , or OS 208 may in turn include or interface with a Java Virtual Machine (JVM) module that enables control of hardware components and / or operating system operations via Java applications.

[0080] The memory module 206 may also include one or more different areas (via address space and / or other means) that the computing device 200 may utilize to store applications and / or other data, etc. For example, an area of ​​the memory module 206 may be set aside and used to store information describing various functions of the computing device 200, device identifiers, etc. Such identification information may then be provided to another device based on any of various events, including being sent as part of a header during communication, being sent upon request, etc. A common software application is a browser program, which is generally used to send information to or receive information from a web server. In one embodiment, the browser application is enabled to display and send messages using Handheld Device Markup Language (HDML), Wireless Markup Language (WML), WMLScript, JavaScript, Standard Generalized Markup Language (SMGL), Hypertext Markup Language (HTML), Extensible Markup Language (XML), etc. However, any of a variety of other web-based languages ​​may also be used. In one embodiment, using the browser application, a user may view articles or other content on a web page using one or more highlighted portions as target objects.

[0081] The display interface 214 may be coupled to a display unit (not shown) such as a liquid crystal display (LCD), a gas plasma, a light emitting diode (LED), or any other type of display unit that may be used with the computing device 200. The display unit coupled to the display interface 214 may also include a touch-sensitive screen that is arranged to receive input from an object such as a stylus or a finger from a human hand. The display interface 214 may also include an interface for other visual status indicators such as a light emitting diode (LED), a light array, etc. The display interface 214 may include both hardware and software components. For example, the display interface 214 may include a graphics accelerator for rendering graphics-intensive output on the display unit. In one embodiment, the display interface 214 may include software and / or firmware components that work in conjunction with the CPU 204 to render graphical output on the display unit.

[0082] The audio interface 216 is arranged to generate and receive audio signals such as human voice sounds, etc. For example, the audio interface 216 may be coupled to a speaker and a microphone (not shown) to enable communication with a human operator (such as voice commands, etc.), and / or generate audio confirmations for some actions.

[0083] The input device 218 may include various device types arranged to receive input from a user, such as a keyboard, a keypad, a mouse, a touchpad, a touch screen (described with respect to the display interface 214), a multi-touch screen, a microphone for voice command input (described with respect to the audio interface 216), and the like.

[0084] The I / O processor 220 is generally used to handle transactions and communications with peripheral devices such as mass storage devices, networks, input devices, displays, etc., which couple the computing device 200 to the outside world. In small, low-power computing devices such as some mobile devices, the functions of the I / O processor 220 can be integrated with the CPU 204 to reduce hardware cost and complexity. In one embodiment, the I / O processor 220 can be the main software interface with all other devices and / or hardware interfaces (such as optical storage device 202, hard disk 232, interfaces 226-228, display interface 214, audio interface 216, and input device 218, etc.).

[0085] An electrical bus 222 internal to the computing device 200 may be used to couple various other hardware components (such as the CPU 204, memory module 206, I / O processor 220, etc.) to one another for transferring data, instructions, status, and other similar information.

[0086] The non-volatile memory 224 may include memory built into the computing device 200 or a portable storage medium such as a USB drive that may include a PCM array, flash memory including NOR and NAND flash memory, a pluggable hard drive, etc. In one embodiment, the portable storage medium may behave similarly to a disk drive. In another embodiment, the portable storage medium may present an interface different from a disk drive, for example, a read-only interface for loading / providing data and / or software.

[0087] The other interfaces 226-228 may include other electrical and / or optical interfaces for connecting to various hardware peripheral devices and networks, such as IEEE 1394, also known as FireWire, a universal serial bus (USB), a small computer serial interface (SCSI), a parallel printer interface, a universal synchronous asynchronous receiver transmitter (USART), a video graphics array (VGA), a super VGA (SVGA), etc.

[0088] The network interface card (NIC) 230 may include circuitry for coupling the computing device 200 to one or more networks, and is generally constructed for use with one or more communications protocols and technologies, including, but not limited to, Global System for Mobile Communications (GSM), Code Division Multiple Access (CDMA), Time Division Multiple Access (TDMA), User Datagram Protocol (UDP), Transmission Control Protocol / Internet Protocol (TCP / IP), SMS, General Packet Radio Service (GPRS), WAP, Ultra-Wide Band (UWB), IEEE 802.16 Worldwide Interoperability for Microwave Access (WiMax), SIP / RTP, Bluetooth, Wi-Fi, Zigbee, UMTS, HSDPA, WCDMA, WEDGE, or any of a variety of other wired and / or wireless communications protocols.

[0089] The hard disk 232 is generally used as a mass storage device for the computing device 200. In one embodiment, the hard disk 232 can be a ferromagnetic stack of one or more disks forming a disk drive embedded in or coupled to the computing device 200. In one embodiment, the hard disk drive 232 can be implemented as a solid-state device configured to behave as a disk drive (such as a flash-based hard disk drive, etc.). In another embodiment, the hard disk drive 232 can be a remote storage device accessible through the network interface 230 or another interface 226, but acts as a local hard disk drive. Those skilled in the art will understand that other techniques and configurations can be used to present the hard disk drive interface and functionality to the computing device 200 without departing from the spirit of the present disclosure.

[0090] Power supply 234 provides power to computing device 200. Rechargeable or non-rechargeable batteries may be used to provide power. Power may also be provided by an external power source, such as an AC adapter or a powered docking cradle that replenishes and / or recharges the battery.

[0091] The transceiver 236 generally represents a transmitter / receiver circuit for wired and / or wireless transmission and reception of electronic data. The transceiver 236 can be a standalone module or integrated with other modules such as the NIC 230. The transceiver 236 can be coupled to one or more antennas for wireless transmission of information.

[0092] Antenna 238 is generally used for wireless transmission of information in conjunction with transceiver 236, NIC 230 and / or GPS 242, for example. Antenna 238 can represent one or more different antennas that can be coupled to different devices and tuned to different carrier frequencies configured to communicate using corresponding protocols and / or networks. Antenna 238 can be of various types, such as omnidirectional antennas, dipole antennas, slot antennas, helical antennas, etc.

[0093] The haptic interface 240 is configured to provide tactile feedback to a user of the computing device 200. For example, the haptic interface may be used to cause the computing device 200 or an input device coupled to the computing device 200 (such as a game controller) to vibrate in a particular manner when an event occurs (such as a car crashing into an object in a video game).

[0094] The global positioning system (GPS) unit 242 can determine the physical coordinates of the computing device 200 on the surface of the earth, which is usually output as a location of latitude and longitude values. The GPS unit 242 can also use other geolocation mechanisms, including but not limited to triangulation, assisted GPS (AGPS), E-OTD, CI, SAI, ETA, BSS, etc., to further determine the physical location of the computing device 200 on the surface of the earth. It should be understood that under different conditions, the GPS unit 242 can determine the physical location within millimeters for the computing device 200. In other cases, the determined physical location may be less accurate, such as within one meter or a significantly larger distance. However, in one embodiment, the mobile device represented by the computing device 200 can provide other information that can be used to determine the physical location of the device through other components, including, for example, a MAC (media access control) address.

[0095] Figure 3 An example measurement arrangement 300 is shown for measuring dimensions of a building using a DLMD device similar to that described above with respect to FIG. Figure 2308. The DLMD 307 is coupled to a computing device similar to the computing device described above. In various embodiments, the measurement arrangement 300 includes a reference frame having a designated X-axis 301, a Y-axis 302, and a Z-axis 303, the reference frame defining a portion of a 3-D space or room having walls 304, a floor 305, and a ceiling 306. The DLMD 307 is coupled to a mobile computing device 308 for projecting laser beams 313 and 315 to points 314 and 316, respectively, on opposite walls of the room. The DLMD 307 may have a plurality of laser (light) sources 311 and a laser detector 312. The mobile computing device 308 may include a software icon 309 and a hardware button 310 for an application.

[0096] In various embodiments, the DLMD 307 is designed to be coupled with a mobile computing device 308 to transmit laser measurement data to the mobile computing device 308 for further calculation, analysis and processing. The laser light source can be located on opposite sides of the DLMD 307, facing opposite directions 180 degrees apart, to simultaneously measure the distance between two opposite walls of a room from any point in the room. In this way, there is no need to use a laser device to one wall or one end of the measured distance or measured line and shine a laser beam to the other end of the measured line. The DLMD 307 can be located at any point along the (1-D) measured line and simultaneously measure the distance from the DLMD 307 to the two end points of the line. Adding the two measured distances from the DLMD 307 to the two end points of the measured line yields the length of the line. Such flexibility to place the DLMD 307 anywhere along the measured line improves efficiency and accuracy because it eliminates the reliance on the location or placement of the laser device during the measurement process.

[0097] In various embodiments, DLMD 307 may be coupled to mobile computing device 308 via various wired, direct, or wireless interfaces, as described above with respect to Figure 2 and the following about Figure 5 Further described.

[0098] Figure 4A Shows Figure 3 Detail of the front view 400 of an example DLMD device. In various embodiments, the DLMD 307 includes laser measurement modules 401 and 407, each of which has laser photodetection units 402, 403, 404 and 408, 409, 410, respectively. Each of the photodetection units 402-404 and 408-410 includes a laser emitter or source and a light detection device, such as with respect to Figure 4BAs further described. Each laser emitter in the photodetection units 402-404 and 408-410 projects separate laser beams 413, 414, 415 and 416, 417, 418, respectively, at the target endpoint of the measured linear distance. As shown in the figure, each laser beam is projected at a slightly different angle relative to the adjacent laser beams, which are separated by angles 405 (A), 406 (B) and 414 (C) and 412 (D).

[0099] In various embodiments, the laser emitters may generate laser beams having the same frequency or different frequencies. Having the same laser frequency reduces the design complexity and configuration overhead of the DLMD 307 device, and may reduce costs due to the larger number of identical devices. However, since the light detection device may detect reflections of adjacent laser beams, accuracy may be affected to some extent. Moreover, since the scattering of reflected light returning from a longer distance is higher, the actual measurement distance may be reduced.

[0100] Having different frequencies allows tuning the respective light detection means to the respective frequencies to be detected upon reflection and thus reduces the likelihood of detecting a false reflection of the laser beam. In this way, the accuracy and range (distance) of the measurement can be improved.

[0101] Laser measurement modules 401 and 407 can be located at different locations on DLMD 307. In one embodiment, as discussed primarily herein, laser measurement modules 401 and 407 are positioned to face opposite directions separated by 180 degrees. In another embodiment, laser measurement modules can be placed on DLMD 307 to face directions separated by 90 degrees (not shown in the figure), thereby allowing two vertical dimensions to be measured simultaneously. In such a configuration, the angle between the directions that the laser measurement modules are facing is 90 degrees. Using this embodiment, DLMD 307 can be placed at a corner where two adjacent walls of a room meet, and both walls are measured simultaneously. In yet another configuration, the laser measurement modules can be placed at variable angles relative to each other. In this configuration, they can be placed at 45 degrees, 90 degrees, 180 degrees, or any other angle relative to each other. This embodiment allows non-vertical walls (i.e., rooms that are not square or rectangular) to be quickly measured in one measurement rather than in two separate measurements (once for each wall).

[0102] In various embodiments, the laser measurement device can operate based on one of several methods. One method is time of flight (TOF), in which the round trip propagation time of a laser beam and its reflection from a measurement target are measured, and the distance of the measurement target (object) is calculated based on the speed of light. Another method is single beam triangulation, in which a collimated laser emitter is used to illuminate the measurement target. A camera lens displaced laterally from the collimated laser light source will receive the reflected laser beam returned from the target and project it behind the camera lens onto an array of photodetectors. Knowing the displacement distance between the laser emitter and the camera lens and the position of the reflected beam sensed on the detector array of the photodetector, this allows the distance to the target to be calculated using similar triangular geometry. Another method of using lasers to measure distance is phase shift detection. In this method, the optical power is modulated at a constant frequency. The sine wave frequency generated by the master oscillator of the laser generation circuit modulates the DC current of the laser diode. After the laser beam is reflected from the target, an avalanche photodiode collects a portion of the laser beam. The measurement of the distance is calculated based on the phase shift between the photocurrent of the avalanche photodiode and the modulated emission laser beam.

[0103] Figure 4B Shows Figure 4A Detail of an example AA cross-sectional side view 450 of an example DLMD device. In various embodiments, the side view 450 includes a DLMD 307 having a laser measurement module 401 having laser photodetection units 402, 403, and 404. These laser photodetection units include laser emitters 451, 452, and 453, respectively, and light detection devices 454, 455, and 456. The light detection devices 454-456 each receive and detect reflected light rays 457, 458, and 459, respectively, generated by laser beams 413, 414, and 415 after respectively hitting a measurement target object such as a wall.

[0104] In various embodiments, the laser emitters 451-453 are configured and mounted to face slightly different directions, as represented by angles 405 (A) and 406 (B). This configuration allows the laser beams 413-415 to be projected at slightly different angles onto the measurement target object (e.g., a wall, pillar, door, etc.). In distance (the distance between two opposing sides of a structure, such as two opposing walls, etc.) measurements using dual lasers, the intention is often to measure the vertical distance between the two opposing walls so that the floor area or other straight-line distance along the room can be obtained. For example, if the length of a water pipe or electrical wire required to pass between two opposing walls is being measured, the shortest distance is required, which is the vertical distance between the two opposing walls. This is in relation to Figure 4C and 4D Further description.

[0105] To obtain the perpendicular distance between two opposing surfaces that are walls, three different laser beams 413-415 may be used. Each of the laser beams 413-415 strikes a target object (e.g., a wall surface) at a different point and measures a different distance from the DLMD 307. These different distances may be used in a triangulation calculation to calculate the perpendicular distance between the two opposing surfaces. In a mathematical sense, perpendicular distance is generally measured between two parallel planes. An example of two parallel planes are two opposing and parallel walls in a room. Figure 4E The triangulation process is further described.

[0106] In some measurements, the goal may be to measure the length of a line between two arbitrary points that are some distance apart. For example, one end of the line may be at the corner of a door, and the other end may be at the corner of a window that is not in a plane parallel to the plane of the door. Thus, in the case of such point-to-point (not necessarily perpendicular) measurements, triangulation is not used. In such a case, the triangulation feature may be turned off, for example, by using one of the laser emitters, such as the center laser emitter 452.

[0107] Due to the inherent inaccuracies contained in handheld laser measurement devices, a single measurement may not be sufficiently reliable or accurate for the desired level of accuracy. The sources of such inaccuracies often come from shaking of the hand holding the DLMD 307 during the measurement, and poor visibility during observation of the location where the laser beams 413-415 are projected and the location where the laser dots appear on the measurement target object. In order to reduce inaccuracies and increase the reliability and repeatability of the measurements, the laser beams 413-415 can be projected tens or hundreds of times per second (e.g., 50 to 500 times per second) on the measurement target object using a rapid sequence of laser pulses, which form a pulse train. The measured distances obtained from the individual pulses in the pulse train can be averaged to obtain the final measurement result.

[0108] Other calculations may be performed instead of averaging to obtain the final measurement. For example, some criteria may be used to weight each measurement produced by each pulse, and then a weighted average calculation may be applied to determine the final measurement. For example, the weight assigned to each measurement may be based on the intensity of the reflected light beams 457-459 detected by the light detection devices 454-456. Another method for determining the final measurement may be the application of a voting algorithm such as the Boyer-Moore majority voting algorithm. In a voting algorithm, an input, event, or measurement of interest having different observed values ​​when repeated is obtained, and the value that occurs most frequently across multiple attempts is selected as the most likely or representative value of the input or event.

[0109] In some embodiments, laser emitters 451-453 may each have the same wavelength or frequency as the other laser emitters. In such embodiments, light detection devices 454-456 may be physically smaller (compared to the size of a single unit) than those light detection devices in a photodetection unit used in a single unit configuration. Figure 4B 454-456 can also be pointed in the direction of their corresponding laser beams 413-415 to further enhance their selective detection of the corresponding reflected beams 457-459.

[0110] In some embodiments, the laser emitters 451-453 may each have a different wavelength and frequency. In such an embodiment, each light detection device 454-456 may be tuned to detect the same frequency as its corresponding laser emitter. In this way, cross-detection of other reflected beams is reduced. The size of the light detection devices 454-456 may also be increased to enhance the capture of the reflected beams 413-415 without the risk of detecting reflected beams of other laser emitters, which may lead to erroneous measurements, especially for triangulation.

[0111] In some embodiments, Figure 4A As shown in , multiple laser beams on each of the opposite sides of the DLMD 307 may be used, while in other embodiments, a single laser beam may be used on each side of the DLMD. In the latter embodiment, the single laser beam on each side may be dynamically and at a fast rate directed to slightly different directions in a time slice based approach to effectively perform the same function as multiple laser beams fixed to point in different directions. A time slice is a predetermined short period of time on the order of a few microseconds to a few milliseconds. In computer processing and digital timing at both the hardware level and the software level for high performance systems, each time slice may be used to run a specific process. Multithreaded software systems running on a single CPU use time slices to allocate processing time to different software threads and / or processes running in parallel. Time slices are actually a fast serial operation, not parallel, because only one process can be run on a CPU at a time (or any hardware device performs only one action). However, multiple low-level processes that are switching at much higher speeds (one or more orders of magnitude higher) appear to be running in parallel compared to the longer time scales at the application level. Thus, for example, compared to the time it takes a human hand to shake (which might tremble a few times per second while trying to hold an unsupported object in mid-air), a laser beam that changes angle thousands of times per second will appear and behave like several simultaneous laser beams, if the timeslice is short enough for practical purposes.

[0112] The change in angle or direction of the projected laser beam can be changed mechanically, electrically or optically. Mechanically, a high rate vibration device can be used to physically move a directionally constrained laser beam. Electrically, different laser semiconductor segments can be excited at a desired rate to radiate laser light in different directions. Optically, a mirror arrangement can be used to deflect the laser light at different angles. In these single photodetector unit embodiments, the cost and size of the device can be reduced.

[0113] In some embodiments, multiple laser beams on opposite sides of DLMD 307 may be generated by a single laser light source (and a single photodetector) using the electrical, mechanical, or optical methods described above. For example, laser beams on opposite sides of DLMD 307 may be generated by a single laser light source and projected in opposite directions through opposite sides of DLMD 307 and / or projected at different angles relative to other previously projected laser beams using a mechanical rotating mirror. For such configurations where multiple laser beams are projected using one laser light source, time slicing processing may have to be used to distinguish laser beams projected in different directions.

[0114] In various embodiments, multiple laser light sources (emitters) and light detection devices can be integrated into one physical package that is segmented or partitioned to behave like multiple photodetection units. In other embodiments, discrete laser emitters can be used, and the light detection device can be integrated to independently detect the reflection of each discrete laser emitter. For example, the photodetection device can be implemented and manufactured on the same substrate to reduce costs and improve detection accuracy. The partitioned photodetection device can have two or four segments.

[0115] Figure 4C An example 1-D measurement 470 of the vertical distance between two opposing walls of a building is shown. In various embodiments, the 1-D measurement 470 includes a space having long sides or walls 471a and 471b of the space and short sides or walls 472a and 472b of the space, a DLMD device 473 projecting laser beams 474a and 474b onto walls 471a and 472b, respectively.

[0116] As also described above, when the shortest or perpendicular distance between two planes (such as two facing walls, such as walls 472a and 472b) is required, more than one laser beam (or a single time-sliced ​​laser beam) pointing in different directions can be used to allow triangulation of several beams (e.g., three beams) and calculate the perpendicular distance between two parallel planes of interest. When the user activates the laser, the multiple laser beams, their corresponding directions, the detection of reflected beams, and the application of triangulation are all automatically applied by the DLMD 473. The DLMD 473 returns the final perpendicular distance measurement to the user.

[0117] Figure 4D An example 1-D measurement 480 of a point-to-point (PP) distance between two opposing walls of a building is shown. In some embodiments, the 1-D measurement 480 includes a space having long sides or walls 481a and 481b of the space and short sides or walls 482a and 482b of the space, a DLMD 483a that projects laser beams 484a and 484b to arbitrary points on the walls 482a and 482b, respectively. As shown, a DLMD 483b that may be the same as the DLMD device 483a may project laser beams 485a and 485b to other arbitrary points on the walls 482a and 482b.

[0118] In various embodiments, the distance between arbitrary points on planes or surfaces that may be parallel or may be non-parallel (such as non-parallel walls 482a and 482b, etc.) can be measured without using triangulation. In these embodiments, a single laser beam may be sufficient to measure the point-to-point distance between two arbitrary points. For example, DLMD 483a or 483b (the same DLMD used at different times) can measure arbitrary point-to-point distances as selected by the user. This application of DLMD may be useful when the measurement must be the distance between selected points rather than the perpendicular distance between the planes on which the measurement points lie.

[0119] Figure 4E An example triangulation pyramid 490 is shown for calculating the vertical distance between two opposing walls of a building. The triangulation pyramid 490 is used to calculate the vertical distance between a source point in space and an arbitrary plane based on three separate points projected from the source point onto the arbitrary plane. The triangulation pyramid 490 includes projection sides 491a, 491b, and 491c between a plane ABC defined by projection points 492a, 492b, and 492c and a source point 493a. The distance 494 between the source point 493a and the center point 493b is the vertical distance between the source point and the arbitrary plane.

[0120] Projection sides 491a-491c may be formed by a laser beam projected onto plane ABC, which may be a measurement target object such as a wall, etc. Having obtained the measured projection sides 491a-491c, a vertical distance 494 may be calculated as described in the following equation with reference to the alphabetic (non-numerical) reference numerals in the drawings. In application, DLMD may simultaneously project one such laser triangulation pyramid per side onto each of two opposing walls between which the vertical distance is to be measured.

[0121] In the Decatriene coordinate system, we have point D(x,y,H). Assume that we have distances a, b, c from point D, where DA=a, DB=b, DB=c and angles ≮ADB=γ, ≮ADC=β, ≮BDC=α. Triangle △ABC is on plane xy, and assume that the starting point of the Decatriene coordinate system is placed in point A(0,0,0) and the x-axis points along line AC. In this case, we get C(0,0,b 1 )、B(x 1 ,y 1 ,0) and O(x,y,0). We need to calculate the height H of the pyramid DABC, DO⊥(ABC).

[0122] Using two points P(P x ,P y ,P z )、Q(Q x ,Q y ,Q z )

[0123] |PQ| 2 =(Q x -P x ) 2 +(Q y -P y ) 2 +(Q z -P z ) 2

[0124] And the law of cosines obtains a system of equations to obtain the height of the pyramid DABC.

[0125]

[0126] Simplifying the first three equations, we get

[0127]

[0128] Get from it

[0129]

[0130]

[0131]

[0132] Figure 5An example smart phone 500 is shown with a DLMD software application (app) installed thereon. In various embodiments, the smart phone 500 may include a body 501 to which the DLMD may be physically (mechanically and electrically) coupled, hardware buttons 502, 503, and 504, various icons and applications (such as an email application 505, a phone application 506, an Internet application 507, a search field 508, and a DLMD application 509.

[0133] In various embodiments, the smart phone 500 may have Figure 2 500. In other embodiments, a dedicated computing device such as a mobile handheld computing device may be used instead of a smart phone to perform the calculations required to use the data obtained by the DLMD, and / or to run the DLMD application 509 and other software required for project construction. The mobile handheld device generally fits in one person's hand and can be operated with one or two hands, and weighs a few hundred grams (usually less than one kilogram), which can be easily carried without undue burden. However, due to the availability, popularity and power of modern smart phones, smart phone 500 is a readily available and suitable device for this purpose. The smart phone can be a device running Google TM Android TM Operating system or Apple TM iPhone TM An operating system and an application suitable for running on the corresponding operating system. Other similar smartphone devices and operating systems may also be used if they are computationally powerful and flexible enough.

[0134] In some embodiments, the DLMD may be coupled to the smartphone 500 via a data interface, through which data may be transferred between the DLMD and the smartphone. The data interface may include a near field communication (NFC) wireless protocol, a Bluetooth TM 、ZigBee TM , BLE, Z-Wave or other Internet of Things (IoT) wireless protocols. The DLMD may also be coupled to the smartphone 500 via a hardwired data interface such as a universal serial bus (USB), a proprietary interface, or a combination of both. Such a hardwired data interface may be coupled between the DLMD and the smartphone 500 via a direct connector or via a short cable. In some embodiments, the data interface between the DLMD and the smartphone may include a power line that also powers the DLMD circuitry.

[0135] In various embodiments, the DLMD application 509 may be a computer program that is designed to run on a computer such as Android. TM or Apple's iOSTM The DLMD application 509 may include various data files used by the application for its settings and operations. The data files may include initialization files, system files, configuration files, resource files, local databases, registry files, and other similar data files that the DLMD application 509 can read and load into the memory when the user starts it. Alternatively or additionally, the DLMD application can read the initialization data or other information required when starting the application from a remote source on a computer network such as a remote database, remote file, etc. The information stored in these data files may include default values ​​for some measurements, such as standard ceiling heights (e.g., 8-foot or 10-foot ceilings), concrete slab thickness, etc. The DLMD application can also load information previously written by the user into a local or remote database via the DLMD application itself.

[0136] In various embodiments, some or all of the functions performed by the smart phone 500 may be partially or fully implemented by hardware and / or software deployed within the DLMD 307. In these embodiments, the DLMD may not be coupled to a separate and distinct device such as a smart phone or other handheld computing device, but may be an independent device that includes all or a subset of the functions and facilities described herein. An independent version of the DLMD 307 may be appropriately designed and constructed to include the desired functionality. For example, it may include a touch-sensitive display, some hardware buttons, local storage, network hardware and software, etc. Therefore, even though the description herein is presented with respect to a smart phone or handheld computing device, all descriptions are equivalent and equally appropriately applicable to an independent version of the DLMD.

[0137] Fig. 6A An example overview 600 of the DLMD application 509 and the various screens used by it during the measurement process are shown. Figure 5 ) includes a smartphone start screen 601, a user introduction screen 602, a product type or category selection screen 603, a manual measurement input screen 604, a laser measurement and initialization screen 605, a 1-D point-to-point laser measurement screen 606, a 2-D laser measurement screen 607, a 3-D laser measurement screen 608, and a material selection screen 609. Most of the screens listed above may be referred to as super screens, which when expanded include several other screens, which are further described in more detail in the corresponding figures labeled next to these screens. However, in the following description of Fig. 6A In the description, for simplicity and brevity, the super screen is described as an individual screen.

[0138] In various embodiments, the overall material or product ordering process of the DLMD application 509 can be divided into three stages: measurement of relevant dimensions and calculation of other derived quantities (such as surface area, etc.), selection of product categories and application of dimensions to categories, and selection of specific materials and direct ordering of the selected materials. These stages and steps are described in more detail below. Overview 600 shows arrows connecting different screens. In some screens, multiple arrows may enter or leave the screen. Each arrow within or outside the screen is an optional or conditional path that the user can take, based on the options selected by the user in the previous screen, depending on the user's purpose or conditions existing at the time of the transition. These conditions are described below. In some embodiments, selecting a store (see Fig. 7A ) or product categories can be performed from more than one screen and in any order, as described in detail below. For example, a user may first take a measurement and then identify a desired store to purchase materials from, whereas a user may first select a store and perform the measurement. Similarly, a user may select product types or measurement results in a different order. In general, a user may collect relevant data in any convenient order, as long as all relevant data for a product type is identified and / or collected during the process, and there are no dependencies between one step and the previous or next step.

[0139] In various embodiments, the start screen 601 may include an identification of the DLMD application 509, the application version, any account information such as a user name, project number, etc. Those skilled in the art will appreciate that these elements may be designed in many ways using graphical user interface (GUI) elements including alphanumeric input fields, drop-down selection lists, radio buttons, etc. From this screen, the user may proceed to a user introduction screen 602.

[0140] In various embodiments, the user introduction screen 602 provides introductory information about the DLMD application 509 and how it is generally used. Such an introduction may include an overview of the process. If the user has experience with the DLMD application 509, the introductory information may be skipped. Next, depending on the user's preference, the user may enter one of the product type selection screen 603, the manual measurement screen 604, or the laser measurement and initialization screen 605. If the user wants to first select the product type and then perform measurements for the selected product category, the user may enter the product type selection screen 603 from screen 602. After the measurement results have been obtained, the user may eventually transition from screen 603 through the intermediate measurement screen to the material selection screen 609, the last screen in the process. Alternatively, the user may transition directly from screen 602 to the measurement screen 604 or 605, and ultimately to screen 603 and then to screen 609.

[0141] In various embodiments, at the product type selection screen 603, the user may be provided with a list or menu of various product categories available for construction-related projects, such as plumbing products, wood products, paint products, carpet, etc. Once the user selects the desired product (such as paint, etc.), the user may proceed to one of the manual measurement screens 604 or the laser measurement screens 605. If screen 603 is entered after obtaining laser measurements (from measurement screens 604 or 606-608), a transition will be made to the material selection screen 609. The DLMD application 509 may track user selections, such as product category selections, etc., in a memory and / or database.

[0142] In various embodiments, when DLMD 307 (see Figure 3 ) is not connected to the smartphone, is not ready, or cannot be used for some reason. Also, if the user already has the desired measurements (e.g., obtained from a blueprint of the building being measured), the user may choose to manually enter the known measurements instead of re-measuring them using the DLMD 307. In this screen, the user may be presented with a user interface (UI) including a numeric keypad to enter the known measurements for storage in the database of the DLMD application 509 for further processing. From this screen, the user may transition to the material selection screen 609 or the product type selection screen 603 (if no product type was selected prior to entering screen 604), and then to screen 609.

[0143] In various embodiments, the laser measurement screen 605 presents a UI to the user to select the type of measurement the user wants to use. The measurement type may include straight-line distance (1-D), surface measurement (2-D), room size measurement (3-D), or other measurements, as described below. Fig. 6E Depending on the measurement type, the user may enter one of screens 606, 607 or 608.

[0144] In various embodiments, the point-to-point (1-D) measurement screen 606 allows the user to measure a straight line distance or line between two selected points located on some surface of the building or space being measured. The measured line can be a perpendicular distance between two parallel surfaces such as two opposing walls in a room, or any non-perpendicular distance between two points. Once the measurement is obtained using the DLMD 307, the user can transition from this screen to the material selection screen 609 or the product type selection screen 603 (if a product type was not selected before entering screen 604), and then transition to screen 609.

[0145] In various embodiments, the surface (2-D) measurement screen 607 allows the user to measure two edges or sides of a surface such as a floor or wall. The measured distance can be used to calculate the 2-D surface. Once the measurement value is obtained using the DLMD 307, the user can transition from this screen to the material selection screen 609 or the product type selection screen 603 (if a product type was not selected before entering the screen 604), and then transition to the screen 609.

[0146] In various embodiments, the room dimensions (3-D) measurement screen 608 allows the user to measure three edges or sides of a room or space in the building being measured. From this screen, the user can transition to the material selection screen 609 or the product type selection screen 603 (if a product type was not selected prior to entering screen 604), and then to screen 609 once the measurements have been obtained using the DLMD 307.

[0147] In various embodiments, the material selection screen 609 is used to select a specific material based on previously obtained measurements, such as a specific amount of paint of a specific color, etc. This is the last screen in the process, and a purchase order for the selected material can be placed from this screen.

[0148] Figure 6B An example DLMD application start screen and user introduction screen 610 are shown. In various embodiments, the configuration includes a start screen 601 and a user introduction screen 602 (see Fig. 6A ), the user introduction screen 602 is expanded into several more introduction screens 611, 613, and 615. The first introduction screen 611 includes icons 612 for representing the measurement phase of the material ordering process. The second introduction screen 613 includes icons 614 for representing the material type selection and other sizing phases of the material ordering process. And the third introduction screen 615 includes icons 616 for representing the specific material selection and purchase phases of the material ordering process.

[0149] In various embodiments, each of the three introductory screens 611 , 613 , and 615 may include a diagram and description to briefly describe and explain to a new user the three stages of the material ordering process using the DLMD application 509 .

[0150] Figure 6C An example DLMD application product category selection screen 620 is shown. In various embodiments, the product category selection screen 620 includes a product type screen 621 and a guide screen 625, which are Fig. 6AThe product type screen 621 may include an indication and / or title 622 of a product category 623, wherein the selected category 624 determines the content of a guide screen 625 for transition. The guide screen 625 may include tiles and / or indications 626 and a measurement start button 627 for transitioning to a measurement screen.

[0151] In various embodiments, product categories related to the construction project appear on the product type screen for user selection. Product types or categories may include tile, hardwood, carpet, paint, lumber, plumbing, molding, drywall, wiring, paint primer, stone, window coverings, doors and window frames, vinyl flooring, etc.

[0152] In various embodiments, the product type may be presented as a button or hot link that the user can click to select. The product type may be presented in alternative ways, such as by a drop-down list, a selection list, a check box, a radio button, etc. Once the user has selected a product category, the screen switches to the guidance screen 625. The guidance screen 625 may present instructions or information related to the required measurements of the selected product type. For example, if the user selects paint, the guidance screen 625 may suggest to the user that in order to purchase paint, the user must measure the surface area of ​​the wall. As another example, if the user selects pipe, the guidance screen 625 may suggest to the user that the linear distance is required to know how many feet of pipe the user must purchase.

[0153] In various embodiments, the product category selected by the user may be saved by a user action such as pressing a save button (not shown in this figure), or the product category may be automatically saved by the DLMD application 509 for use in other screens later in the process (such as described below). Fig. 7A screens in the , etc.) to be retrieved later.

[0154] In various embodiments, the user may click button 627 to move to the measurement screen.

[0155] It will be appreciated that one or more GUI elements, such as buttons, hot links, pointers, and drop-down lists, may be implemented as software elements, hardware elements, or a combination of hardware and software elements. For example, a laser activation button (e.g., see Fig. 6FThe laser activation button 651d in the example may be implemented as a hardware button on the DLMD, a hardware button assigned to that function on a smartphone to which the DLMD is coupled, any such hardware button coupled with a GUI button on the DLMD application 509, and any other such combination of hardware buttons and elements and / or software buttons and elements that perform the intended function. In general, one skilled in the art will appreciate that the DLMD application 509 has a software routine corresponding to and coupled with each GUI element or hardware button to carry out the function intended and indicated by the GUI element. For example, a "save" GUI or hardware button intended to save certain data may have a corresponding software routine within the DLMD application 509 that executes a data transfer instruction to save the data on a storage device.

[0156] Fig.6D An example DLMD application manual measurement input screen 630 is shown. In various embodiments, the manual measurement input screen 630 includes a dialog screen 631 having a manual measurement button 632, a measurement type screen 633 having a 1-D measurement button 634a, a 2-D measurement button 634b, a 3-D measurement button 634c, and an other measurement button 634d. The screens generated by pressing any of the measurement type buttons include: a 1-D data input screen 635a having one data entry field for entering a measured distance, and a keyboard including a save button 636a for storing the entered data in a data storage device 637. Other similarly generated screens include a 2-D data input screen 635b having two data entry fields and a keypad with a save button 636b, a 3-D data input screen 635c having three data entry fields and a keypad with a save button 636c, and an other data input screen 635d having one or more data entry fields and a keyboard with a save button 636d.

[0157] In various embodiments, each measurement type button 634a-634d selected by the user causes a transition to a corresponding data input screen 635a-635d, in which the user can manually input data. Each data input screen 635a-635d has a plurality of user-selectable data input fields that match the required dimensions of a particular type of measurement. For example, for 1-D length measurement, one data input field is required, while for 2-D and 3-D measurements, two and three data input fields are provided, including a length field and a width field, or a length field, a width field, and a height field. Once the user has manually input the data and reviewed the correctness of the data, the input data can be stored in the data storage device 637 using the save button.

[0158] In various embodiments, the data storage device 637 may include a disk drive, volatile memory, or any other type of non-volatile storage system. The data storage device 637 may be located locally on the smartphone coupled to the DLMD, or may be accessible via a DLMD. Figure 1 In other embodiments, storage device 637 may be implemented as a combination of local storage and cloud-based storage, so that DLMD can be used both online and offline (when no computer network (such as the Internet, etc.) is available).

[0159] In some embodiments, the data storage device 637 can be used to recall or retrieve previously saved data for review or reuse during manual data entry, or to overwrite laser measurement results. To retrieve stored data, an additional user interface (not shown in the figures disclosed herein for simplicity) can be used based on the construction project identifier and the data record identifier to access the appropriate record in the storage device. In various applications, some UIs are known for data interfaces to search and / or retrieve information from a database or data storage.

[0160] In various embodiments, other measurement buttons 634d and other data entry screens 635d are used to measure other types of dimensions such as concrete slabs, which may have special dimensions such as length, width, and fixed slab thickness. There may be other measurement types that fall into this category where various measurements and dimensions are required.

[0161] Fig. 6E An example DLMD application DLMD status screen and measurement type selection screen 640 are shown. In various embodiments, the DLMD status screen 640 includes a first laser status screen 641 showing laser doors or gates 641a and 641b in a closed state as indicated by a cross mark (X). A second laser status screen 642 shows laser shutters or gates 642a and 642b as one in an open state (indicated by a circle: O) and the other in a closed state. A third laser status screen 643 shows laser gates 643a and 643b as both in an open state. The measurement type selection screen 644 has several GUI elements for selecting a measurement type and subsequent measurement screens, including a 1-D (linear distance) measurement type 644a, a 2-D (surface) measurement type 644b, a 3-D (room size) measurement type 644c, and other measurement types 644d.

[0162] In various embodiments, the laser emitters 451-453 (see Figure 4B ) may have an electronic or mechanical device that acts as a shutter or gate that can enable or disable the laser emitter to project a beam. To enable or disable the laser, a shutter may be used to physically block the beam or electronically disable the laser device from generating a laser beam. Depending on the type of measurement desired or required, the user may select one of the laser states 641, 642, or 643. Specifically, if both laser gates 641a and 641b are closed, laser measurement is not possible, and the user may use manual data entry screens 635a-635d to enter measurement data. In the case of opening only one laser gate, the user may want to use the DLMD as a single-sided laser measurement device, such as measuring from one end of a line to the other end. In the case of opening both laser gates, the user uses the DLMD as a double-sided measurement device as described herein. In various embodiments, the laser states 641-643 may be selected by using various common GUI-based elements such as radio buttons, drop-down lists, check boxes, etc. (not shown). For example, a user may choose to have a laser state 642 in which a laser light source on one side of DLMD 307 is active or turned on while the other side remains inactive or turned off. In some embodiments, a user may select a single laser light source for use on each side of DLMD 307 from a plurality of laser light sources disposed within each side of DLMD 307.

[0163] In various embodiments, the user selects a measurement type from the measurement type screen 644 to measure dimensions in a building or space using the DLMD photodetection units 402-404. Specifically, the user can select one of the measurement type buttons 644a-644d and transition to one of the measurement screens 606, 607, or 608, as described below.

[0164] Fig. 6FAn example DLMD application 1-D distance measurement screen 650 and database are shown. In various embodiments, the laser activation screen 651 includes a data field 651a, measurement mode buttons 651b and 651c, and a laser activation button 651d. The data presentation screen 652 includes a length data field 652a, a calculated or derived dimension field 652b, an add button 652c, an added length data field 652h and a derived field 652i, a save button 652d, an edit button 652e, and a select product category 652f. The edit screen 653 includes a data entry edit field 653a, a keypad 653b. The data storage device 637 is used to store and save the measured length data in a database 654 having various fields, including data 654a, item ID 654b, length data 654c, width data 654d, height data 654e, other data 654f (which may have more than one subfield), a product identifier 654g, and a product price 654h. A number of other fields 654i may be incorporated into the database 654 to store other relevant data, such as user input data, project addresses, cost limits for each product, and the like.

[0165] In various embodiments, the laser activation screen 651 is the first screen that the user encounters in this type of measurement. The measurement mode buttons 651b and 651c are used to specify which of the two measurement modes the user wants to use. These two modes include a vertical measurement mode and a point-to-point mode. Figure 4C-4E As described, the perpendicular mode is the shortest (perpendicular) distance between two parallel planes, while the point-to-point mode measures the distance between two arbitrary points, which may be on two parallel planes (such as two opposing walls in a rectangular room, etc.) or on any other surface.

[0166] In various embodiments, the user may select the vertical mode button 651b to apply the vertical measurement mode. In this mode, the DLMD uses triangulation to obtain the vertical distance between two parallel planes. Selecting the PP mode button 651c will disable the triangulation mode and will use one of the laser emitters from the multiple laser emitters available on each side of the DLMD.

[0167] In various embodiments, the user activates the laser by clicking on the laser activation button 651d to start the actual laser measurement. The user will hold the DLMD device at a position between the points to be measured, such as Figure 3 , 4Cand 4D, and clicks the laser activation button 651d to measure and record the distance. By using the add other button 652c, the user repeats the process for each dimension to be measured and for additional dimensions added for additional measurements, such as performing the same measurement for another nearby space, etc.

[0168] In various embodiments, once the laser activation button 651d is pressed and a measurement is taken, a data presentation screen 652 appears on the smartphone to show the measurement in the data field 652a. A derived dimension 652b is also calculated and displayed. In the case of a 1-D measurement, the derived dimension is the same as the measured value, but for multiple dimensions, the derived dimension is generally different, as described further below.

[0169] In various embodiments, the user uses the save button 652d to store and save the obtained measurement results in the database measurement history 654. In some embodiments, the DLMD application 509 (see Figure 5 ) to automatically save all or some of the measurement results. In some embodiments, such configuration settings can be built-in for some application versions, while in other embodiments, the configuration settings can be changed by the user.

[0170] In various embodiments, a user may edit the measurements made by the DLMD using the edit button 652e. This feature may be useful when the user knows certain information about the space being measured, or certain information is not reflected in the laser measurement for other reasons. For example, if the space being measured is not rectangular and has some corners that are not included in the measurements of the space, the user may enter a slightly larger number to purchase more material to cover the unmeasured corners.

[0171] In each embodiment, once the edit button 652e is clicked, an edit screen 653 is presented to provide the user with a UI for editing the measurement result. Initially, a data field 653a with a measurement value is displayed. The user can use a keypad 653b to edit the number displayed in the data field 653a.

[0172] In various embodiments, the database measurement history 654 can be a simple table of parameters and values, a relational database, multiple database tables, or other types of organized data storage suitable for saving, searching, and retrieving data items. The UI for database searching and data retrieval can be one of any available public interfaces, which is not shown in the figure to maintain clarity and simplicity.

[0173] In each embodiment, if in reference Fig. 6AIf the path taken before attempting to measure does not go through the super screen (or screen set) 603 to select a product category, the user can use the select product category selection button 662h. If the user has already selected a product category, the product category selection button 662h can be set to an inactive state (such as "grayed out" as is conventionally known) by the DLMD application, or the user may simply not use it.

[0174] Figure 6G An example DLMD application surface area (2-D) measurement screen 660 is shown. In various embodiments, the laser activation screen 661 includes a length data field 661a and a width data field 661b, a field selection indicator 661c, measurement mode buttons 661d and 661e, and a laser activation button 661f. The data presentation screen 662 includes a length data field 662a, a width data field 662b, a perimeter calculation or export field 662c, a surface area calculation field 662d, an add button 662e for adding more length and width data fields, a save button 662f, an edit button 662g, and a select product category 662h. The edit screen 663 includes a length data entry edit field 663a, a width data entry edit field 663b, a data field selection indicator 663c, and a keypad 663d. The data storage device 637 is used to store and save the measured length data in a database 654 having various fields, as described above with respect to Fig. 6F described (not repeated in this figure).

[0175] In various embodiments, the laser activation screen 661 is the first screen that the user encounters in this type of measurement. The measurement mode buttons 661d and 661e are used to specify which of the two measurement modes the user wants to use. Fig. 6F As described, the two modes include a vertical measurement mode and a point-to-point mode. Even in a 2-D type of measurement, more than one measurement may be made, but each measurement is a linear distance measurement (length or width), and the measurement mode is applicable. Thus, mode options are provided for most or all types of measurements.

[0176] In various embodiments, field selection indicator 661c indicates which of the two data fields 661a and 661b is selected as the next dimension to be measured. A data field may be selected by various methods in the GUI environment, such as clicking on the field or using a selection arrow (not shown). Once a data field is selected for measurement, the user may activate it by clicking on laser activation button 661f to begin the actual laser measurement. The user will hold the DLMD device at a position between the points to be measured, such as Figure 3 , 4Cand 4D, and clicks the laser activation button 661f to measure and record the distance. By using the add other button 662c, the user repeats the process for each dimension to be measured and for additional dimensions added for additional measurements, such as performing the same measurement for another nearby space, etc.

[0177] In various embodiments, once the laser activation button 661f is pressed and a measurement is taken, a data presentation screen 662 appears on the smartphone to show the measurements in data fields 662a and 662b. Derived dimensions 662c and 662d are also calculated and displayed. In the case of 2-D measurements, the derived dimensions may include the perimeter and surface area (such as floor area, etc.) of the measured space, which are calculated based on the measurement numbers in data fields 662a and 662b.

[0178] In various embodiments, the user uses the save button 662f to store and save the obtained measurement results and derived dimension values ​​in the database measurement history 654. In some embodiments, the DLMD application 509 (see Figure 5 ) to automatically save all or some of the measurement results. In some embodiments, such configuration settings can be built-in for some application versions, while in other embodiments, the configuration settings can be changed by the user.

[0179] In various embodiments, a user may edit the measurements made by the DLMD using the edit button 662g. This feature may be useful when the user knows certain information about the space being measured, or certain information is not reflected in the laser measurement for other reasons. For example, if the space being measured is not rectangular and has some corners that are not included in the measurements of the space, the user may enter a slightly larger number to purchase more material to cover the unmeasured corners.

[0180] In each embodiment, once the edit button 662g is clicked, an edit screen 663 is presented to provide a UI for editing the measurement results for the user. Initially, data fields 663a and 663b with the measurement values ​​are displayed. The user can use a keypad 663d to edit the numbers displayed in the data fields 663a and 663b. The user can select one of the data input fields 663a and 663b by various GUI methods, such as clicking on a data field or moving a data selection indicator 663c to a desired data field, etc.

[0181] In various embodiments, the database measurement history 654 is as described above with respect to Fig. 6F described.

[0182] In each embodiment, reference Fig. 6AIf the path taken before attempting a measurement did not go through the super screen (or screen set) 603 to select a product category, the user can use the select product category selection button 662h. If the user has already selected a product category, the product category selection button 662h may be set to an inactive state (such as conventionally known as "grayed out") by the DLMD application, or the user may simply not use it.

[0183] Figure 6H An example DLMD application room dimensions (3-D) measurement screen 670 is shown. In various embodiments, the laser activation screen 671 includes a length data field 671a, a width data field 671b, and a height data field 671c, a data field indicator 671d, measurement mode buttons 671e and 671f, and a laser activation button 671g. The data presentation screen 672 includes a length data field 672a, a width data field 672b, a height data field 672c, a perimeter calculation or export field 672d, a floor area 672e, a surface area calculation field 662f, an add button 672g for adding more length, width, and height data fields, a save button 672h, an edit button 672i, and a select product category 672j. The edit screen 673 includes a length data entry edit field 673a, a width data entry edit field 673b, a height data entry field 673c, a data field selection indicator 663d, and a keypad 673e. The data storage device 637 is used to store and save the measured length data in a database 654 having various fields, as described above with respect to Fig. 6F described (not repeated in this figure).

[0184] In various embodiments, the laser activation screen 671 is the first screen that the user encounters in this type of measurement. The measurement mode buttons 671e and 671f are used to specify which of the two measurement modes the user wants to use. Fig. 6F As described, the two modes include a vertical measurement mode and a point-to-point mode. Even in a 3-D type measurement, more than one measurement may be made, but each measurement is a linear distance measurement (length, width, or height), and the measurement mode is applicable. Thus, mode options are provided for most or all types of measurements.

[0185] In various embodiments, field selection indicator 671d indicates which of the three data fields 671a-671c is selected as the next dimension to be measured. A data field may be selected by various methods in the GUI environment, such as clicking on the field or using a selection arrow (not shown). Once a data field is selected for measurement, the user may activate it by clicking on laser activation button 671g to begin the actual laser measurement. The user will hold the DLMD device at a position between the points to be measured, such as Figure 3 , 4C and 4D, and clicks the laser activation button 671g to measure and record the distance. By using the add other button 672g, the user repeats the process for each dimension to be measured and for additional dimensions added for additional measurements, such as performing the same measurement for another nearby space, etc.

[0186] In various embodiments, once the laser activation button 671g is pressed and a measurement is taken, a data presentation screen 672 appears on the smartphone to show the measurements in data fields 672a, 672b, and 672c. Derived dimensions 672d, 672e, and 672f are also calculated and displayed. In the case of 3-D measurements, the derived dimensions may include the perimeter of the measured space, the surface area (such as floor area or wall area, etc.), and the wall area 672, which is calculated based on the measurement numbers in data fields 672a, 672b, and 672c.

[0187] In various embodiments, the user uses the save button 672h to store and save the obtained measurement results and derived dimension values ​​in the database measurement history 654. In some embodiments, the DLMD application 509 (see Figure 5 ) to automatically save all or some of the measurement results. In some embodiments, such configuration settings can be built-in for some application versions, while in other embodiments, the configuration settings can be changed by the user.

[0188] In various embodiments, a user may edit the measurements made by the DLMD using the edit button 672i. This feature may be useful when the user knows certain information about the space being measured, or certain information is not reflected in the laser measurement for other reasons. For example, if the measured space is not rectangular and has some corners that are not included in the measurement of the space, the user may enter a slightly larger number to purchase more material to cover the unmeasured corners.

[0189] In various embodiments, once the edit button 672i is clicked, an edit screen 673 is presented to provide a UI for the user to edit the measurement results. Initially, data fields 673a, 673b, and 673c with the measurement values ​​are displayed. The user can use a keypad 673e to edit the numbers displayed in the data fields 673a, 673b, and 673c. The user can select one of the data input fields 673a, 673b, and 673c by various GUI methods, such as clicking on a data field or moving a data selection indicator 673d to a desired data field, etc.

[0190] In various embodiments, the database measurement history 654 is as described above with respect to Fig. 6F As described.

[0191] In each embodiment, if in reference Fig. 6A If the path taken before attempting to measure does not go through the super screen (or screen set) 603 to select a product category, the user can use the select product category selection button 672j. If the user has already selected a product category, the product category selection button 672j can be set to an inactive state (such as "grayed out" as is conventionally known) by the DLMD application, or the user may simply not use it.

[0192] Fig. 7A An example DLMD application material selection screen 700 is shown. In various embodiments, the material selection screen 700 includes a material selection start screen 701 that displays a product category 702 that a user has previously selected and a store search field 703. Also included is a store search screen 704 that has a store search field 705 and a store information display area 706. The material selection screen 700 also includes a product search screen 707 (described below with respect to FIG. Figure 7B ), a product results screen 708 associated with the data storage device 637 and the database 654. The product results screen 708 includes a list of specific products 709, 710, and 711 that match all of the search criteria set by the user. Each product listing also includes an add button 709a, 710a, and 711a, respectively, to add the selected product to the shopping cart 712. Once the shopping cart is complete, the user can use the order button 713 to place an order with the selected store that provides the construction products.

[0193] In various embodiments, the material selection start screen 701 displays a product category 702 retrieved by the DLMD application 509 from its previously saved database records based on a user selection. The product category is required to list the relevant products that fall into the selected category. For example, if the user previously selected the "Paint" category in the process, this category can be used in most or all subsequent screens to guide the required measurements and products presented for selection. In this example, in order to determine the amount of paint required, the area of ​​the surface to be painted (such as walls and doors, etc.) is required. Therefore, the DLMD application 509 will default to suggesting or presenting a 2-D measurement type based on the selected product category. And during a specific product selection, the DLMD application 509 retrieves and presents paint products for the user selection, rather than wood or carpet products.

[0194] In various embodiments, the store search screen 704 provides a UI to search for local or online stores for the purpose of purchasing products by the user via the DLMD application 509 integrated environment. The store search can be based on keywords, store name, location (e.g., using a zip code), store address, store name or ID, etc. Upon completion of the search, a list of stores can be presented to the user in the information display area 706. When the user selects a particular store, store information such as name, ID, location, map, etc. can be displayed in the information display area 706. The stores listed in the information area can be physical stores or online stores that can be used to purchase products. The DLMD application 509 can also save and store this information in a database and / or other memory or data storage device for the duration of the measurement and purchase process.

[0195] In various embodiments, the product search screen 707 (described below) Figure 7B Description) allows the user to search for specific products in the selected product category and from the selected store. The results of the product search are presented in the product results screen 708.

[0196] In various embodiments, the product results screen 708 lists candidate specific products that meet the search criteria in the product search step in the search screen 707. The user can select one or more specific products from the list presented in the product results screen 708 and click the save button 712 to save the product selection to the database 654 stored on the data storage device 637. The specific products are actual products with assigned stock keeping unit (SKU) numbers and can be purchased, which is contrary to the abstract product type. The user can add the specific products that the user intends to purchase to the shopping cart 712 by clicking the add button (709a, 710a and 711a) of the appropriate product. Once all the specific products intended to be purchased have been added to the shopping cart 712, the user can click the order button 713 to transfer the order list including the selected specific products to the store selected on the screen 704 and displayed in the information area 706. The data symbolically saved in the shopping cart 712 can actually be stored in the volatile or non-volatile memory on the smart phone or in the data storage device 637.

[0197] In various embodiments, an electronic data interchange (EDI) system may be used to transmit an order list including a selected specific product to a selected store. EDI systems are generally used to transmit business-related data between business partners or between a business and a provider of goods or services for the business. These data may be in the form of files containing purchase orders, invoices, shipping documents, payment documents, inventory information, etc. The EDI system specifies standardized formats for documents and various data types, and all computer systems with EDI systems installed can understand and process these documents and data types. For example, the EDI system may specify various date formats, such as "month / day / year", currency formats such as "$xxxx.yy", etc. The DLMD application 509 or other applications installed on a smart phone may include EDI functionality. Examples of EDI systems include Fishbowl. TM and TrueCommerce EDI TM .

[0198] In various embodiments, when the user clicks the order button 713, an EDI function is activated to perform various formatting and transmission tasks, obtain the data stored in the shopping cart 712, put the data into EDI format and transmit it to the selected store. The EDI function can use the network and / or cellular data transmission capabilities available on the smart phone. Once the order is transmitted to the store, the construction project product ordering process using the DLMD application 509 is completed.

[0199] Figure 7BAn example DLMD application product search and search filter screen 725 is shown. In various embodiments, the product search and search filter screen 725 includes a product search screen 726 having a product category 726a, a set filter button 726b, and a product ID button 726c. Upon activation of the product ID button 726c, a product ID screen 727 including an ID input field 727a is presented. A first search filter screen 728 includes an identification of a product category 728a and search criteria related to a particular product category selected. The first search filter screen 728 shows an example of a set of search filters related to the "Paint" category, including selectable search options interior paint 728b, exterior paint 728c, brands 728d listing specific brands including a selected brand 728e, colors 728f, and price range 728g with price range 728h and a selected price 728i, as well as other related search filters for the listed product category 728a. A product review and selection super screen 729 is also included, and information about the search criteria for the selected product category 728a is provided. Figure 7C The product review and selection super screen 729 is further described.

[0200] In various embodiments, the product search screen 726 displays the previously selected and saved product categories that are automatically retrieved and displayed by the DLMD application 509. In order to search for products, the user can first use the set filter button 726b to switch to the first search filter, which is a set of preliminary search criteria related to and associated with the selected product category 726a (same as 728a). In general, each search criterion has a type and a value. For example, one standard of the paint product category has a type "color", which can take different values ​​such as "green", "red", "white", etc. Another example is the standard type "gloss", which has values ​​"matt", "silk", etc. In this screen, the user can select various values ​​for the search criteria, such as by selecting the check box next to the value under the standard type. Some standards may have a continuous range of values, while other standards have discrete values. Examples of discrete value standards are the color and gloss mentioned above. An example of a continuous value standard is price. For these standards, a continuous value range that can be presented as a slider 728h can be used. The user can set the slider to the desired price selection 728i to represent the price point. The product search criteria are automatically determined by the DLMD application 509 based on the product type selection and presented to the user on this screen for setting the search criteria.

[0201] In various embodiments, if the user clicks on the product ID button 726c in the product search screen 726, a product ID input screen 727 is presented. The product ID input field 727a can be used to enter a known product identifier (ID), such as a SKU number, a manufacturer product number, or other identification that can fully specify the product and distinguish it from any other product. This situation may be useful when the user has previously purchased a product and wants to reorder the same product for another project. If the user knows what product is needed, the product search filter will be bypassed and the user can directly transition to product selection and purchase. Otherwise, the user will set the search criteria using the first search filter 728 for the selected product category, search for products that meet the selected criteria, and make a specific product selection from the search results.

[0202] Figure 7CAn example DLMD application product selection screen 750 is shown. In various embodiments, the product selection screen 750 includes a second search filter screen 751 showing an example list of criteria related to the "Coatings" product category previously selected by the user and saved by the DLMD 509 application, including colors 751a, industrial coatings 751b, coating additives 751c, and other similar and related criteria. The shopping by color screen 752 includes a title indicating which of several search criteria the user has selected to further refine the search, a number of colors 752b for selection, and the selected color 752c. The next level of search refinement green screen 753 shows an example green that has been selected, and presents further shades of green 753a and the selected shade of green 753b. The screen may also present a color set button or hot link 753c and a designer color button 753d. The selected color causes a specification screen 754 to be loaded. The example specification screen 754 shows the shade 753b of green applied to the walls 754a and 754b of the room to help the user visualize the color applied to the room. The example specification screen 754 also includes description 754c, price 754d, paint gloss 754e, container size, rating and other associated and useful attributes of the selected product. These attributes shown on each screen vary with the product type, as further described below. The search criteria selected by the user until this stage may match more than one product. Therefore, several groups of specifications 755 with their own several groups of specifications 755a can be shown on the specification screen 754. A sorting screen 756 listing several sorting criteria (such as, sorting by price 756a, brand name 756b and other sorting criteria 756c, etc.) can be applied to the search results to place the search results in the order the user likes, so as to facilitate review and selection. A selection screen 757 may be presented showing the results of application of the sorting criteria, in this example Paint-1 757a, Paint-2 757b, and other sorted products 757c.

[0203] In various embodiments, in addition to the search criteria of the first search criteria 728 for filtering products, the second search filter 751 is also adapted to display second search criteria for different product types. That is, the first search filter and the second search filter will present criteria suitable for each product type. For example, if the product type is "paint", the criteria are similar to those given in the above examples, while if the product type is "pipe", the search filters and criteria may include pipe diameter, pipe length, pipe material (e.g., copper, steel, plastic, etc.), etc., none of which may be applicable to paint products.

[0204] In various embodiments, further levels of search criteria such as screens 752 and 753 are more detailed and refined criteria related to the original product category and applicable to each product type. For example, if the original product category is "wood", the more detailed search criteria may include wood types such as birch or maple. Generally speaking, the first search filter screen 728 ( Figure 7B ), second search filter screen 751, shop by color 752 (example), and green screen 753 (example) form a multi-level hierarchy of filters for providing more specific search criteria, with each of the multiple levels configured and presented based on higher level criteria. Higher level criteria are general and first in time, while lower level criteria are more detailed and later in time. For example, first, select the high level product category "Paint", then select the next level criterion "Color" (such as, green, etc.), and then select a more detailed criterion (such as "Shade" of green).

[0205] In each embodiment, the specification screen 754 is also adapted to present information related to any product matching all criteria in all levels of the hierarchy filter. In most cases, the specification screen 754 will have multiple products and corresponding specifications.

[0206] Figure 8 An example DLMD application image and annotation creation screen 800 is shown. The image and annotation creation screen 800 includes a measurement screen 801 with scroll bars 802 for scrolling up and down a long application screen that may not fit completely on a smartphone screen, measurement fields 801a and 801b, measurement mode buttons 801c and 801d, a camera button 803, an annotation button 804, images 805a and 805b, and an annotation area 806 with annotations 806a and 806b. The image and annotation creation screen 800 may also include an annotation edit screen 810 for entering or editing annotations for a measurement, an annotation edit area 811, a new annotation button 813a, an annotation delete button 813b, an annotation save button 813c, other annotation edit buttons 813d, and a software keyboard element 812. The image and annotation creation screen 800 may also include an image details screen 820 for viewing the image and entering or editing an image title, a selected image area 821 , an image title field 822 , an add image title button 823 , and a software keyboard element 824 .

[0207] Even though the image and annotation creation screen 800 are shown in separate figures to improve clarity, it should be understood that all elements and functionality shown and described with respect to screens 801, 810, and 820 may be integrated with or an integral part of all measurement screens in the previous figures. This is because the addition of an image, annotation, description, or title may accompany any measurement of any type, whether it is manually entered or obtained through laser measurement. Therefore, in some embodiments, all measurement screens shown herein should be interpreted as having Figure 8 810c and 810d), including camera button 803, annotation button 804, images 805a and 805b, and annotation area 806 and annotations 806a and 806b, and other additional elements shown on screens 810 and 820, which are integrated on the same measurement screen or provide indirect access to such additional elements via hot links or screen navigation buttons or other GUI navigation elements. For example, in some embodiments, Fig.6D , 6F , 6G, and 6H may have the elements shown in these figures, and may also have Figure 8 The elements depicted in . The surface area measurement screen 801 is shown as a representative measurement example. The same configuration with image and annotation features can be deployed in any other measurement screen.

[0208] In various embodiments, once a user accesses Fig.6D , 6F , 6G and 6H with one of the measurement screens having image and annotation features, the camera button 803 can be used to take a photo of the measurement area. For example, if the user is measuring the length of a corridor (1-D), the surface of a wall (2-D) or the size of a room (3-D), by pressing the camera button 803, the user can also take a photo of the corridor, wall or room being measured. One or more photos can be taken for each measurement. As previously described, images 805a and 805b and other images generated by taking photos can be stored in the database 654 and associated with the measurements made and the corresponding products selected. These photos can also be displayed as thumbnails on the screen 801 along with the measurements and other data. Scroll bars 802 can be used to move the screen content up and down to view various parts of the screen such as images and annotations.

[0209] In various embodiments, the details of the image can be viewed in a separate screen 820. For example, a user can click on image 805b to view an enlarged version 821 of image 805b, which can reveal some details that may not be visible in the thumbnail. Add a title button 823 can be used to create a title for the image using a keyboard 824 or other input device. The title will also appear on the measurement screen 801 next to the corresponding image.

[0210] In each embodiment, the note button 804 can be used to add notes and annotations to the measurement carried out in any measurement screen. Clicking the note button 804 can start the note editing screen 810 to type or create a note 811. Once entering the note editing screen 810, pressing the new button 813a just allows the use of keyboard 812 or other input methods to create a new note, which will appear in the note area 806 once the new note is saved using the "Save" button 813c. Any number of notes can be created. Delete button 813b can also be used to delete notes. Other public edit buttons 813d (such as font selection, as bold and italic text effects, underline, formatting, etc.) can also be deployed on this screen.

[0211] Fig. 9A An example DLMD application other measurement selection screen 900 is shown. To avoid confusion, the term "other" as used in the context of measurements herein means measurement types other than those explicitly described previously (e.g., see Fig.6D ) (e.g., length (1-D), surface (2-D), and room size (3-D)). In various embodiments, the other measurement selection screen 900 includes a screen 901a with selection buttons 901b-901e. Button 901b is used to select a concrete slab measurement, button 901c is used to select a ductwork measurement, button 901d is used to select a partial surface measurement, and button 901e is used to select a drywall measurement.

[0212] In various embodiments, each button 901b-901e leads to a different screen for measurements of other corresponding measurement types as indicated. Figure 9B-9E Each of the other measurement screens shown in Fig.6D A specific instance or version of screen 635d is shown in FIG. Figure 9B-9E The other measurement types shown in are examples of other measurement types. Other measurement types may be added without departing from the spirit of the disclosure herein.

[0213] Other measurement types (including those disclosed herein and similar types not described) differ from 1-D, 2-D, and 3-D measurement types in that not all dimensions of other measurement types are explicitly measured. Rather, some dimensions of other measurement types are implicit, standard, assumed, defaulted, or otherwise determined without actual and direct measurement. In 1-D, 2-D, and 3-D measurements, all dimensions required are explicitly measured using a laser device or manually and entered into the corresponding data fields. For example, to measure the surface area of ​​a wall or floor, both the length and width dimensions are measured. Although described below with respect to Figure 9B-9E In other measurement types described, some required measurements are not made, but are assumed to have specific values. For example, to determine how much concrete may be needed for a foundation, only the width and length of the foundation are measured, and the thickness (or height / depth) of the concrete slab is assumed to have a standard value such as four inches or six inches. These implicit measurements can be included in a data file such as a configuration or initialization file that the DLMD application 509 uses during installation or initialization of the application. These implicit or standard measurements are generally associated with an appropriate and specific type of measurement and / or product and are used when using that specific type of measurement. Before using the DLMD application 509 to make measurements, the user can periodically update or configure such implicit measurements in the application.

[0214] Fig. 9B An example DLMD application other concrete slab measurement screen 920 is shown. In various embodiments, the other concrete slab measurement screen 920 includes a measurement screen 921 having a length field 921a, a width field 921b, a field selection indicator 921c, measurement mode selection buttons 921d and 921e, and a laser beam activation button 921f. The data presentation screen 922 includes a length data field 922a, a width data field 922b, a perimeter calculation or export field 922c, a surface area calculation field 922d, a volume calculation field 922e, an add button 922f for adding more length and width data fields, a save button 922g, an edit button 922h, and a select product category 922i. The edit screen 923 includes a length data entry edit field 923a, a width data entry edit field 923b, a data field selection indicator 923c, and a keypad 923d. The data storage device 637 is used to store and save the measured length data in a database 654 having various fields, as described above with respect to Fig. 6F described (not repeated in this figure).

[0215] In various embodiments, the laser activation screen 921 is the first screen that the user encounters in this type of measurement. The measurement mode selection buttons 921d and 921e are used to specify which of the two measurement modes the user wants to use. Fig. 6F As described, the two modes include a vertical measurement mode and a point-to-point mode. Even in a 2-D type of measurement, more than one measurement may be made, but each measurement is a linear distance measurement (length or width), and the measurement mode is applicable. Thus, mode options are provided for most or all types of measurements.

[0216] In various embodiments, field selection indicator 921c indicates which of the two data fields 921a and 921b is selected as the next dimension to be measured. A data field may be selected by various methods in the GUI environment, such as clicking on the field or using a selection arrow (not shown). Once a data field is selected for measurement, the user may activate it by clicking on laser activation button 921f to begin the actual laser measurement. The user will hold the DLMD device in position between the points to be measured, such as Figure 3 , 4C and 4D, and clicks the laser activation button 921f to measure and record the distance. By using the add other button 922f, the user repeats the process for each dimension to be measured and for additional dimensions added for additional measurements, such as performing the same measurement for other nearby spaces, etc.

[0217] In various embodiments, the default or implicit dimension for other concrete slabs is the depth or thickness of the concrete slab that remains uniform over its surface area. The thickness of the concrete slab may vary for different construction projects and applications. For example, for a driveway, the slab may be four inches thick, while for a multi-story building or parking structure, the foundation slab may be several feet thick. Several default values ​​may be stored in a data file of the DLMD application 509, from which the user may select a default value for the project at hand to use when making other concrete slab measurements.

[0218] In various embodiments, once the laser activation button 921f is pressed and a measurement is taken, a data presentation screen 922 appears on the smartphone to show the measurements in data fields 922a and 922b. Derived dimensions 922c-922e are also calculated and displayed. In the case of a concrete slab measurement, the derived dimensions may include the perimeter of the measured space, the surface area (such as floor area, etc.), and the volume of concrete required (which are calculated based on the measurement numbers in data fields 922a and 922b), as well as the implicit or default concrete slab thickness measurement stored in the application data file and provided by the DLMD application 509.

[0219] In various embodiments, the user uses the save button 922g to store and save the obtained measurement results and derived dimension values ​​in the database measurement history 654. In some embodiments, the DLMD application 509 (see Figure 5 ) to automatically save all or some of the measurement results. In some embodiments, such configuration settings can be built-in for some application versions, while in other embodiments, the configuration settings can be changed by the user.

[0220] In various embodiments, a user may edit the measurements made by the DLMD using the edit button 922h. This feature may be useful when the user knows certain information about the space being measured, or certain information is not reflected in the laser measurement for other reasons. For example, if the measured space is not rectangular and has some corners that are not included in the measurement of the space, the user may enter a slightly larger number to purchase more material to cover the unmeasured corners.

[0221] In each embodiment, once the edit button 922h is clicked, an edit screen 923 is presented to provide the user with a UI for editing the measurement result. Initially, data fields 923a and 923b with the measurement values ​​are displayed. The user can use a keypad 923d to edit the numbers displayed in the data fields 923a and 923b. The user can select one of the data input fields 923a and 923b by various GUI methods, such as clicking on the data field or moving the data selection indicator 923c to the desired data field, etc.

[0222] In various embodiments, the database measurement history 654 is as described above with respect to Fig. 6F described.

[0223] In each embodiment, reference Fig. 6A , if the path taken before attempting a measurement did not go through the super screen (or screen set) 603 to select a product category, the user may use the Select Product Category button 922i. If the user has already selected a product category, the Select Product Category button 922i may be set to an inactive state (such as "greyed out" as is conventionally known) by the DLMD application, or the user may simply not use the Select Product Category button 922i.

[0224] Fig. 9CAn example DLMD application other piping system measurement screen 940 is shown. In various embodiments, the other piping system measurement screen 940 includes a measurement screen 941 having a length field 941a and a manual input area field 941b, a field selection indicator 941c, measurement mode selection buttons 941d and 941e, and a laser beam activation button 941f. The data presentation screen 942 includes a length data field 942a, a manual input data field 942b, a volume calculation field 942c, a weight calculation field 942d, an add button 942e for adding more length and width data fields, a save button 942f, an edit button 942g, and a select product category 942h. The edit screen 943 includes a length data entry edit field 943a, an area data entry edit field 943b, a data field selection indicator 943c, and a keypad 943d. The data storage device 637 is used to store and save the measured length data in a database 654 having various fields, as described above with respect to Fig. 6F described (not repeated in this figure).

[0225] In various embodiments, the laser activation screen 941 is the first screen that the user encounters in this type of measurement. The measurement mode buttons 941d and 941e are used to specify which of the two measurement modes the user wants to use. Fig. 6F As described, the two modes include a vertical measurement mode and a point-to-point mode.

[0226] In various embodiments, field selection indicator 941c indicates which of the two data fields 941a and 941b is selected as the next dimension to be measured or manually filled in. As previously described, a data field may be selected by various methods in the GUI environment, such as clicking on the field or using a selection arrow (not shown), etc. Once a data field is selected for measurement, the user may activate it by clicking on the laser activation button 941f to begin the actual laser measurement. The user will hold the DLMD device in position between the points to be measured, such as Figure 3 , 4C and 4D, and clicks the laser activation button 941f to measure and record the distance. By using the add other button 942e, the user repeats the process for each dimension to be measured and for additional dimensions added for additional measurements, such as performing the same measurement for another nearby space, etc.

[0227] In various embodiments, the default or implicit dimensions for the other duct system are its area and weight per linear foot, which remain uniform over the length of the duct system or at least over each portion of the length of the duct system. The area and weight density (weight per linear foot) of the duct system may be different for different construction projects and applications. For example, for a single-family home, the duct system area may be one square foot, while for a commercial building or larger house, the duct system area may be two square feet. Several default values ​​may be stored in the data file of the DLMD application 509, from which the user may select a default value for the project at hand to use when making the other duct system measurements.

[0228] In various embodiments, once the laser activation button 941f is pressed and a measurement is taken, a data presentation screen 942 appears on the smartphone to show the measurements in data fields 942a and 942b. Derived dimensions 942c and 942b are also calculated and displayed. In the case of other ductwork measurements, the derived dimensions may include the volume and weight (weight density or gross weight) of the ductwork per unit length for the measured space (which are calculated based on the measurement numbers in data field 942a and manual entry field 942b), as well as implicit or default ductwork measurements stored in the application data file and provided by the DLMD application 509.

[0229] In various embodiments, the user uses the save button 942f to store and save the obtained measurement results and derived dimension values ​​in the database measurement history 654. In some embodiments, the measurement history can be saved based on the configuration settings in the DLMD application 509 (see Figure 5 ) to automatically save all or some of the measurement results. In some embodiments, such configuration settings may be built-in for some application versions, while in other embodiments, the configuration settings may be changed by the user.

[0230] In various embodiments, a user may edit the measurements made by the DLMD using edit button 942g. This feature may be useful when the user knows certain information about the space being measured, or certain information is not reflected in the laser measurement for other reasons. For example, if the space being measured is not rectangular and has some corners that are not included in the measurement of the space, the user may enter a slightly larger number to purchase more material to cover the unmeasured corners.

[0231] In each embodiment, once the edit button 942g is clicked, an edit screen 943 is presented to provide a UI for editing the measurement result for the user. Initially, data fields 943a and 943b with the measured value and the input value are displayed respectively. The user can use a keypad 943d to edit the numbers displayed in the data fields 943a and 943b. The user can select one of the data input fields 943a and 943b by various GUI methods, such as clicking on the data field or moving the data selection indicator 943c to the desired data field, etc.

[0232] In various embodiments, the database measurement history 654 is as described above with respect to Fig. 6F As described.

[0233] In each embodiment, as described above, reference Fig. 6A , if the path taken before attempting a measurement did not go through the super screen (or screen set) 603 to select a product category, the user may use the Select Product Category button 942h. If the user has already selected a product category, the Select Product Category button 942h may be set to an inactive state (such as conventionally known as "grayed out") by the DLMD application, or the user may simply not use the Select Product Category button 942h.

[0234] Fig.9D An example DLMD application other partial surface measurement screen 960 is shown. In various embodiments, the other partial surface measurement screen 960 includes a measurement screen 961 having a length field 961a, a width field 961b, a height data field 961c, and a manual input wall selection field 961d, a field selection indicator 961e, measurement mode selection buttons 961f and 961g, and a laser beam activation button 961h. The data presentation screen 962 includes a length data field 962a, a width data field 962b, a height data field 962c, a manual input wall selection data field 962d, a perimeter calculation field 962e, a floor area calculation field 962f, a wall area calculation field 962g, a selected wall manual input field 962h, an add button 962i for adding more length, width, height, and wall selection data fields, a save button 962j, an edit button 962k, and a select product category 962l. The editing screen 963 includes a length data input edit field 963a, a width data input edit field 963b, a height data input edit field 963c, a manual wall selection data input edit field 963d, a data field selection indicator 963e, and a keypad 963f. The data storage device 637 is used to store and save the measured length data in a database 654 having various fields, as described above with respect to Fig. 6F described (not repeated in this figure).

[0235] In various embodiments, the laser activation screen 961 is the first screen that the user encounters in this type of measurement. The measurement mode buttons 961f and 961g are used to specify which of the two measurement modes the user wants to use. Fig. 6F As described, the two modes include a vertical measurement mode and a point-to-point mode.

[0236] In various embodiments, field selection indicator 961e indicates which of the four data fields 961a-961d is selected as the next dimension to be measured or manually filled in. As previously described, a data field may be selected by various methods in the GUI environment, such as clicking on the field or using a selection arrow (not shown), etc. Once a data field is selected for measurement, the user may activate it by clicking on the laser activation button 961h to begin the actual laser measurement. The user will hold the DLMD device in position between the points to be measured, such as Figure 3 , 4C and 4D, and clicks the laser activation button 961h to measure and record the distance. By using the add other button 962i, the user repeats the process for each dimension to be measured and for additional dimensions added for additional measurements, such as performing the same measurement for other nearby spaces, etc.

[0237] In various embodiments, other partial surfaces do not have default or implicit dimensions used in the measurement. Instead, the user may use the wall selection field 961d to enter a selection of walls numbered in a predetermined sequence. Even though the entire room or space may be measured, the selected walls are those that require certain material categories, such as paint, etc. The walls may be numbered as shown in the figure or using any other predetermined numbering convention. Non-measurement default values ​​or implicit values ​​used to calculate derived or calculated values, such as the selected wall area data field 962h, etc., are included in the wall selection field 961d. It will be understood that even though the description herein is for reference only to the selected wall area data field 962h, etc., the default values ​​may be used to calculate the derived or calculated values. Fig.9D The other partial surface examples described describe partial wall surfaces, but other partial surfaces such as ceilings, floors, countertops, etc. can also be measured. Different DLMD application 509 screens may be required for each type of partial surface (such as walls, floors, etc.). Alternatively, the same partial surface screen 961 can be used, but with additional buttons or drop-down lists that can be used to select which type of partial surface to be measured. Depending on the selection of the partial surface type, the numbering convention can be different, or a different specification method can be used to specify which partial surface is to be used for measurement and / or purchase of materials covering the surface. The material can be paint, carpet, or other surface-related types of materials and products.

[0238] In various embodiments, once the laser activation button 961h is pressed and a measurement is taken, a data presentation screen 962 appears on the smartphone to show the measurements in data fields 962a-962d. Derived dimensions or values ​​962e-962h are also calculated and displayed. In the case of other partial surface measurements, the derived dimensions may include the perimeter of the room, the floor area, and the selected wall area, which are calculated based on the measurement numbers in the data fields 962a-962c and the manual input field 962d.

[0239] In various embodiments, the user uses the save button 962j to store and save the obtained measurement results and derived dimension values ​​in the database measurement history 654. In some embodiments, the measurement history can be saved based on the configuration settings in the DLMD application 509 (see Figure 5 ) to automatically save all or some of the measurement results. In some embodiments, such configuration settings may be built-in for some application versions, while in other embodiments, the configuration settings may be changed by the user.

[0240] In various embodiments, a user may edit the measurements made by the DLMD using the edit button 962k. This feature may be useful when the user knows certain information about the space being measured, or certain information is not reflected in the laser measurement for other reasons. For example, if the space being measured is not rectangular and has some corners that are not included in the measurements of the space, the user may enter a slightly larger number to purchase more material to cover the unmeasured corners.

[0241] In various embodiments, once the edit button 962k is clicked, an edit screen 963 is presented to provide the user with a UI for editing the measurement results. Initially, data fields 963a-963d with measured values ​​and input values ​​are displayed. The user can use a keypad 963f to edit the numbers displayed in the data fields 963a-963d. The user can select one of the data input fields 963a-963d by various GUI methods, such as clicking on a data field or moving a data selection indicator 963e to a desired data field, etc.

[0242] In various embodiments, the database measurement history 654 is as described above with respect to Fig. 6F described.

[0243] In each embodiment, as described above, reference Fig. 6A, if the path taken before attempting a measurement did not go through the super screen (or screen set) 603 to select a product category, the user may use the Select Product Category button 9621. If the user has already selected a product category, the Select Product Category button 9621 may be set to an inactive state (such as conventionally known as "grayed out") by the DLMD application, or the user may simply not use the Select Product Category button 9621.

[0244] Fig.9E An example DLMD application other drywall measurement screen 980 is shown. In various embodiments, the other drywall measurement screen 980 includes a measurement screen 981 having a length field 981a, measurement mode selection buttons 981b and 981c, and a laser beam activation button 981d. The data presentation screen 982 includes a length data field 982a, a surface area calculation or export field 982b, a calculation field for a number of panels 982c, an add button 982d for adding more length data fields, a save button 982e, an edit button 982f, and a select product category 982g. The edit screen 983 includes a length data entry edit field 983a and a keypad 983b. The data storage device 637 is used to store and save the measured length data in a database 654 having various fields, as described above with respect to Fig. 6F described (not repeated in this figure).

[0245] In various embodiments, the measurement screen or laser activation screen 981 is the first screen a user encounters in this type of measurement. Measurement mode selection buttons 981b and 981c are used to specify which of the two measurement modes the user wants to use. Fig. 6F As described, the two modes include a vertical measurement mode and a point-to-point mode.

[0246] In various embodiments, the user activates the laser beam activation button 981d by clicking it to start the actual laser measurement. The user will hold the DLMD device in position between the points to be measured, such as Figure 3 , 4C and 4D, and clicks the laser activation button 981d to measure and record the distance. By using the add other button 982d, the user repeats the process for each dimension to be measured and for additional dimensions added for additional measurements, such as performing the same measurement for other nearby spaces, etc.

[0247] In various embodiments, the default or implicit dimensions for other drywall are its panel width and panel thickness, which are generally available in standard prefabricated sizes. The size and type (length, width, thickness, and material) of drywall panels may vary for different construction projects and applications. For example, for a personal home, a drywall panel may be 4'x8' (4 feet by 8 feet) constructed of sheet rock or gypsum, while for a commercial facility or building, the panels may be larger, thicker, and made of fiberglass reinforced material for fire resistance. Several default values ​​for each of the panel length and thickness dimensions may be stored in a data file of the DLMD application 509, from which the user may select a default value for the project at hand to use when making the other drywall measurements.

[0248] In various embodiments, once the laser activation button 981d is pressed and a measurement is taken, a data presentation screen 982 appears on the smartphone to show the measurement in the data field 982a. Derived dimensions 982b and 982c are also calculated and displayed. In the case of drywall measurements, the derived dimensions may include the total surface area and the number of panels required to cover that surface area. The implicit or default panel width stored in the application data file and provided by the DLMD application 509 may be used to determine the number of panels of the default width required to cover the measured length 981a.

[0249] In various embodiments, the user uses the save button 982e to store and save the obtained measurement results and derived dimension values ​​in the database measurement history 654. In some embodiments, the measurement history can be saved based on the configuration settings in the DLMD application 509 (see Figure 5 ) to automatically save all or some of the measurement results. In some embodiments, such configuration settings may be built-in for some application versions, while in other embodiments, the configuration settings may be changed by the user.

[0250] In various embodiments, a user may edit the measurements made by the DLMD using edit button 982f. This feature may be useful when the user knows certain information about the space being measured, or certain information is not reflected in the laser measurement for other reasons. For example, if the space being measured is not rectangular and has some corners that are not included in the measurements of the space, the user may enter a slightly larger number to purchase more material to cover the unmeasured corners.

[0251] In each embodiment, once the edit button 982f is clicked, an edit screen 983 is presented to provide the user with a UI for editing the measurement result. Initially, a data field 983a with a measurement value is displayed. The user can use a small keyboard 983b to edit the number displayed in the data field 983a.

[0252] In various embodiments, the database measurement history 654 is as described above with respect to Fig. 6F described.

[0253] In each embodiment, as described above, reference Fig. 6A , if the path taken before attempting a measurement did not go through the super screen (or screen set) 603 to select a product category, the user may use the Select Product Category button 982g. If the user has already selected a product category, the Select Product Category button 982g may be set to an inactive state (such as conventionally known as "grayed out") by the DLMD application, or the user may simply not use the Select Product Category button 982g.

[0254] It will be understood that each step of the above-mentioned process and the combination of steps can be implemented by computer program instructions. These program instructions can be provided to the processor to produce a machine so that the instructions executed on the processor can realize the specified action. The computer program instructions can be executed by the processor so that the processor performs a series of operating steps, thereby producing a computer-implemented process so that the instructions executed on the processor provide the steps for realizing the action. The computer program instructions can also enable at least some operating steps to be performed in parallel. In addition, some steps can also be performed across more than one processor, such as may occur in a multi-processor computer system. In addition, without departing from the scope or spirit of the present disclosure, the described one or more steps or the combination of steps can also be performed simultaneously with other steps or the combination of steps, or even performed in an order different from the described order.

[0255] Therefore, the steps of the described process or method support a combination of techniques for performing a specified action, a combination of steps for performing a specified action, and program instructions for performing a specified action. It will also be understood that each step and combination of steps described can be implemented by a dedicated hardware-based system that performs the specified action or step, or a combination of dedicated hardware and computer instructions.

[0256] It will also be understood that unless explicitly stated or specified, the steps described in the process are not sequential and may not necessarily be performed or occur in the order described or depicted. For example, step A in the same process described before step B in the same process may actually be performed after step B. In other words, unless otherwise specified, the set of steps in the process to achieve the end result may occur in any order.

[0257] The claimed invention may be varied in light of the above specific embodiments. Although the above description details certain embodiments of the invention and describes the best mode contemplated, no matter how detailed the above text appears, the claimed invention may be practiced in many ways. The details of the system may vary greatly in its implementation details, yet still be covered by the claimed invention disclosed herein.

[0258] The use of a particular term in describing certain features or aspects of the present disclosure should not be taken as implying that the term is redefined herein to be limited to any particular characteristic, feature, or aspect of the present disclosure with which the term is associated. In general, unless such a term is expressly defined in the Detailed Description section above, the terms used in the appended claims should not be interpreted as limiting the claimed invention to the specific embodiments disclosed in the specification. Therefore, the actual scope of the claimed invention encompasses not only the disclosed embodiments, but also all equivalent ways of practicing or implementing the claimed invention.

[0259] Those skilled in the art will understand that, in general, the terms used herein, and especially in the appended claims (e.g., the bodies of the appended claims), are generally intended as "open" terms (e.g., the term "including" should be interpreted as "including but not limited to", the term "having" should be interpreted as "having at least", the term "comprising" should be interpreted as "including but not limited to", etc.). Those skilled in the art will also understand that if a specific number of an introduced claim recitation is intended, such intent will be explicitly recited in the claim, and in the absence of such recitation, no such intent is present. For example, as an aid to understanding, the following appended claims may contain the use of the introductory phrases "at least one" and "one or more" to introduce claim recitations. However, even in cases where the same claim includes the introductory phrases "one or more" or "at least one" and an indefinite article such as "a" or "an" (e.g., "a" and / or "an" should generally be interpreted as meaning "at least one" or "one or more"), the use of such phrases should not be interpreted as implying that the introduction of the indefinite article "a" or "an" to a claim recitation limits any particular claim containing such introduced claim recitation to an invention containing only one such recitation; the same is true for the use of the definite article used to introduce a claim recitation. In addition, even if a specific number of an introduced claim recitation is explicitly recited, those skilled in the art will recognize that such recitation should generally be interpreted as meaning at least the recited number (e.g., a mere recitation of "two recitations" without other modifiers generally means at least two recitations, or two or more recitations). Furthermore, in those cases where a convention similar to “at least one of A, B, and C, etc.” is used, generally speaking, it is intended that the convention be interpreted in a sense such that a person skilled in the art will understand the convention in such a manner (e.g., “a system having at least one of A, B, and C” will include, but is not limited to, systems having only A, only B, only C, A and B together, A and C together, B and C together, and / or systems having A, B, and C together, etc.). In those cases where a convention similar to “at least one of A, B, or C, etc.” is used, generally speaking, it is intended that the convention be interpreted in a sense such that a person skilled in the art will understand the convention in such a manner (e.g., “a system having at least one of A, B, or C” will include, but is not limited to, systems having only A, only B, only C alone, A and B together, A and C together, B and C together, and / or systems having A, B, and C together, etc.). A person skilled in the art will also understand that, in fact, any disjunctive words and / or phrases presenting two or more alternative terms, whether in the specification, claims, or drawings, should be understood to contemplate the possibility of including one, any, or all of these terms. For example, the phrase "A or B" will be understood to include the possibilities of "A" or "B" or "A and B."It will also be understood that any phrase in the form of "A / B" shall mean any one of "A," "B," "A or B," or "A and B." This construction includes the phrase "and / or" itself.

[0260] The above description, examples and data provide a complete description of the manufacture and use of the claimed invention. Since many embodiments of the claimed invention can be made without departing from the spirit and scope of the present disclosure, the invention resides in the claims appended hereto. It should also be understood that the present disclosure is not limited to the disclosed embodiments, but is intended to cover various arrangements included within the spirit and scope of the broadest interpretation, thereby covering all such modifications and equivalent arrangements.

[0261] CROSS-REFERENCE TO RELATED APPLICATIONS

[0262] This patent application is a continuation of U.S. patent application No. 17 / 088,481, filed on November 3, 2020, entitled “DUAL LASER MEASUREMENT DEVICEAND ONLINE ORDERING SYSTEM USING THE SAME”, which is a continuation-in-part (CIP) of U.S. application No. 16 / 506,750, filed on July 9, 2019, entitled “DUAL LASER MEASUREMENT DEVICEAND ONLINE ORDERING SYSTEM USING THE SAME”. This application claims the benefit of provisional application No. 62 / 695,286, filed on July 9, 2018, the disclosure of which is expressly incorporated herein by reference in its entirety and its filing date is hereby claimed under 35 U.S.C. §120.

Claims

1. An electronic device for distance measurement, the device comprising: a first plurality of laser emitting devices for emitting a first plurality of laser beams toward a first target surface, wherein each laser emitting device in each adjacent pair of the first plurality of laser emitting devices emits a laser beam at a non-zero angle relative to a laser beam emitted from another laser emitting device in the same adjacent pair of the first plurality of laser emitting devices; a second plurality of laser emitting devices for emitting a second plurality of laser beams toward a second target surface, wherein each laser emitting device in each adjacent pair of the second plurality of laser emitting devices emits a laser beam at a predetermined non-zero angle relative to a laser beam emitted from another laser emitting device in the same adjacent pair of the second plurality of laser emitting devices; and a plurality of light detection devices for detecting reflections of the first plurality of laser beams and the second plurality of laser beams reflected after respectively striking the first target surface and the second target surface, wherein the first plurality of laser beams are incident on the plane of the first target surface to create a triangulation pyramid having three sides between the first plurality of laser emitting devices and the plane of the first target surface, each side being one of the first plurality of laser beams, wherein a height of the triangulation pyramid is equal to a vertical distance between the first plurality of laser emitting devices and the plane of the first target surface, and wherein the height of the triangulation pyramid is calculated based on the three sides of the triangulation pyramid and the predetermined non-zero angle between the first plurality of laser beams. 2 . The electronic device according to claim 1 , further comprising a calculation device for calculating the distance between the first target surface and the second target surface. 3 . The electronic device of claim 1 , further comprising a user interface that allows selection of an operating mode of the electronic device.

4. The electronic device according to claim 1, wherein: Each laser emitting device of the first plurality of laser emitting devices operates at a frequency that is the same as a frequency of each laser emitting device of other laser emitting devices of the first plurality of laser emitting devices.

5. The electronic device according to claim 1, wherein: Each laser emitting device of the first plurality of laser emitting devices operates at a frequency that is different from a frequency of each laser emitting device of other laser emitting devices of the first plurality of laser emitting devices.

6. The electronic device according to claim 5, wherein: Each light detecting device of the plurality of light detecting devices is tuned to detect a corresponding reflection at a corresponding frequency.

7. The electronic device according to claim 1, wherein: The first plurality of laser emitting devices and the second plurality of laser emitting devices are directed in opposite directions separated by 180 degrees.

8. The electronic device according to claim 1, wherein: Each laser emitting device of the first plurality of laser emitting devices is paired with a corresponding each light detecting device of the plurality of light detecting devices to form a photoelectric detection unit.

9. The electronic device according to claim 2, wherein: The distance between the first target surface and the second target surface is calculated based on one of time of flight (TOF) and a phase shift between emitted light and a corresponding reflection of the emitted light.

10. A computer-implemented system for distance measurement, the system comprising: mobile handheld computing devices; a dual laser measurement device, i.e., DLMD, coupled to the mobile handheld computing device via a data interface; a plurality of laser emitting devices, the plurality of laser emitting devices being coupled to the DLMD and arranged to emit laser beams in different directions; as well as a DLMD application, namely a DLMD app, installed on the mobile handheld computing device, the DLMD app including a software routine for calculating the distance between two target surfaces, wherein the laser beam is incident on a plane of each of the two target surfaces to create a triangulation pyramid between the DLMD and each of the two target surfaces, the triangulation pyramid having three sides on each of the two target surfaces, each side of each triangulation pyramid being one of the laser beams, wherein a height of each triangulation pyramid in the triangulation pyramid is respectively equal to a perpendicular distance between the DLMD and a plane of each of the two target surfaces, and wherein the height of each triangulation pyramid is calculated based on the three sides of the corresponding triangulation pyramid and a predetermined non-zero angle between the laser beams.

11. The computer implemented system of claim 10, further comprising a plurality of light detection devices, each light detection device of the plurality of light detection devices being paired with a corresponding laser emitting device of the plurality of laser emitting devices.

12. The computer implemented system of claim 10, further comprising a mechanism for deflecting the laser beam toward a modified direction.

13. The computer-implemented system of claim 10, wherein: Each laser beam in the plurality of laser beams operates at a different frequency.

14. The computer-implemented system of claim 10, wherein: The DLMD app uses a voting algorithm to calculate the distance between two target points.

15. The computer-implemented system of claim 10, wherein: The plurality of laser emitting devices emit laser beams as pulses at a rate between 10 and 500 pulses per second.

16. A distance measurement method, the method comprising: projecting a first plurality of laser beams toward a first target surface at different predetermined angles; projecting a second plurality of laser beams toward a second target surface at different predetermined angles; detecting a first plurality of reflections of the first plurality of laser beams reflected from the first target surface; detecting a second plurality of reflections of the second plurality of laser beams reflected from the second target surface; as well as calculating a perpendicular distance between the first target surface and the second target surface based on a triangulation method applied to the first detected plurality of reflections and the second detected plurality of reflections, wherein the first plurality of laser beams are incident on the plane of the first target surface to create a triangulation pyramid having three sides between sources of the first plurality of laser beams and the plane of the first target surface, each side being one of the first plurality of laser beams, wherein the height of the triangulation pyramid is equal to a perpendicular distance between a source of the first plurality of laser beams and a plane of the first target surface, and wherein the height of the triangulation pyramid is calculated based on three sides of the triangulation pyramid and the predetermined angles between the first plurality of laser beams.

17. The method of claim 16, further comprising averaging the time of a plurality of laser pulses to calculate the distance.

18. The method according to claim 16, wherein: The first plurality of laser beams are projected from a single laser emitting device using a time slicing method.

19. The method according to claim 16, wherein: The first plurality of laser beams and the second plurality of laser beams are projected in opposite directions.

20. The method according to claim 16, wherein: Calculating the vertical distance between the first target surface and the second target surface based on the triangulation method includes: for each target surface, calculating the vertical distance H from the dual laser measurement device, i.e., DLMD, to the corresponding target surface based on parameters a, x, and y and based on the following formula, and adding the vertical distances of the corresponding target surfaces together, wherein the parameters a, x, and y are functions of the beam reflected from the corresponding target surface: Wherein, a is the distance from the DLMD to the origin of the coordinate system established on the target surface, and x and y are the x-coordinate and y-coordinate of the projection of the DLMD on the target surface in the coordinate system, respectively.

Citation Information

Patent Citations

  • Dual laser measuring device and online ordering system using the same

    US11037315B2

  • Method For Creating A Spatial Model With A Hand-Held Distance Measuring Device

    CN106871878A

  • Hand-held laser range finder

    CN110895338A