Targeted removal of material in construction and manufacturing

The robotic system addresses the challenge of labor-intensive drywall finishing by sensing surface characteristics and executing precise sanding plans, achieving a smooth finish with minimal damage and improved efficiency.

WO2025199405A1PCT designated stage Publication Date: 2025-09-25CANVAS CONSTRUCTION INC
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/US2025/020860
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-03-22
Filing Date
2025-03-21
Publication Date
2025-09-25

AI Technical Summary

Technical Problem

Drywall finishing, particularly achieving a smooth finish through targeted material removal, is labor-intensive and challenging for robotic systems due to variations in seam types, surface profiles, and material application parameters, which can lead to damage or uneven results.

Method used

A robotic system with a control system that senses surface characteristics, selects a tailored sanding plan, and executes precise sanding passes using various end effectors to achieve a visually smooth finish while minimizing damage to drywall panels.

Benefits of technology

The robotic system effectively removes material with precision, ensuring a smooth finish and reducing human intervention by adapting to different seam types and surface profiles, thus enhancing efficiency and quality in drywall finishing.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure US2025020860_25092025_PF_FP_ABST
    Figure US2025020860_25092025_PF_FP_ABST
Patent Text Reader

Abstract

Drywall finishing is a labor intensive task. Robotics can be designed and configured to perform drywall finishing tasks with little to no human intervention. As with many robotics applications, it is not trivial to design systems to accomplish tasks that a skilled manual worker would perform. One type of drywall finish involves targeted removal of material, e.g., via sanding, to achieve a visually smooth finish without damaging the drywall panels or over removal of the material. An exemplary robotic system can accomplish targeted removal of material by sensing characteristics of a target surface that has a seam and material deposited onto the seam, and selecting an appropriate sanding plan based on the characteristics. The robotic system can be controlled to remove a portion of the material according to the selected sanding plan.
Need to check novelty before this filing date? Find Prior Art

Description

TARGETED REMOVAL OF MATERIAL IN CONSTRUCTION AND MANUFACTURINGCROSS-REFERENCE TO RELATED APPLICATION(S)

[0001] This application claims priority to and / or receives benefit from U.S. Provisional Application No. 63 / 568,971, filed on 22 March 2024, titled, TARGETED REMOVAL OF MATERIAL IN CONSTRUCTION AND MANUFACTURING. The U.S. Provisional Application is hereby incorporated by reference in its entirety.TECHNICAL FIELD

[0002] The present disclosure generally relates to robotic systems, and, more specifically, to targeted removal of material using a robotic system in construction and / or manufacturing.BACKGROUND

[0003] In construction, surface finishing, such as drywall finishing, is a labor intensive task that is often completed by skilled, trained, and experienced professionals. One part of dry wall finishing is to apply a joint compound or material that can fill in some areas of the surface so that a smooth, flat finish can later be achieved by sanding. A professional may use a handheld spray gun to spray and apply a layer of joint compound onto the surface. A professional may use an electric sander to sand down the surface.

[0004] There are different levels of drywall finishing. In some cases, a level 4 or L4 finish is desired. Drywall boards may be fastened to the walls or ceiling. Joint tape may be put on seams between drywall boards. Joint tape may be embedded by one or more coats of joint compound can be applied to the tape. One or more coats of joint compound may cover dry wall screw holes. Sanding may be performed to achieve a smooth surface.BRIEF DESCRIPTION OF THE DRAWINGS

[0005] The various advantages and features of the present technology will become apparent by reference to specific implementations illustrated in the appended drawings. A person of ordinary skill in the art will understand that these drawings show only some examples of the present technology and would not limit the scope of the present technology to these examples.Furthermore, the skilled artisan will appreciate the principles of the present technology as described and explained with additional specificity and detail through the use of the accompanying drawings.

[0006] FIGS. 1 and 2 are exemplary perspective drawings of an exemplary robotic system, according to some aspects of the disclosed technology.

[0007] FIG. 3 is a block diagram illustrating components of an exemplary robotic system, according to some aspects of the disclosed technology.

[0008] FIG. 4 is a drawing illustrating an exemplary robotic system, according to some aspects of the disclosed technology.

[0009] FIGS. 5A, 5B, and 5C illustrate views of a building component.

[0010] FIGS. 6A, 6B, 6C, and 6D illustrate an example application process where a coating is applied to a joint.

[0011] FIGS. 7A, 7B, 7C, and 7D illustrate a wall assembly 700 including a plurality of substrate pieces 510A, 510B, 510C, 510D.

[0012] FIGS. 8 A and 8B illustrate different seams having material deposited thereon, according to some aspects of the disclosed technology.

[0013] FIGS. 9 A and 9B illustrate surface profiles of a butt seam having material deposited thereon, according to some aspects of the disclosed technology.

[0014] FIGS. 10A and 10B illustrate surface profiles of a factory seam having material deposited thereon, according to some aspects of the disclosed technology.

[0015] FIGS. 11 A and 1 IB illustrate centerlines of seams having material deposited thereon, according to some aspects of the disclosed technology.

[0016] FIGS. 12A and 12B illustrate centerlines of seams having material deposited thereon, according to some aspects of the disclosed technology.

[0017] FIG. 13 is a block diagram illustrating components of an exemplary robotic system, according to some aspects of the disclosed technology.

[0018] FIG. 14 is a block diagram illustrating components of an exemplary robotic system, according to some aspects of the disclosed technology.

[0019] FIG. 15 illustrates exemplary passes of a sanding end effector, according to some aspects of the disclosed technology.

[0020] FIG. 16 illustrates exemplary passes of a sanding end effector, according to some aspects of the disclosed technology.

[0021] FIG. 17 illustrates exemplary passes of a sanding end effector, according to some aspects of the disclosed technology.

[0022] FIG. 18 illustrates exemplary passes of a sanding end effector and exemplary parameters for controlling a positioning system and a sanding end effector, according to some aspects of the disclosed technology.

[0023] FIG. 19 illustrates exemplary passes of a sanding end effector and exemplary parameters for controlling a positioning system and a sanding end effector, according to some aspects of the disclosed technology.

[0024] FIG. 20A-J illustrates exemplary variations of smoothing passes of a sanding end effector and exemplary parameters for controlling a positioning system and a sanding end effector, according to some aspects of the disclosed technology.

[0025] FIG. 21 illustrates exemplary passes of a sanding end effector and exemplary parameters for controlling a positioning system and a sanding end effector, according to some aspects of the disclosed technology.

[0026] FIG. 22 illustrates exemplary passes of a sanding end effector, according to some aspects of the disclosed technology.

[0027] FIG. 23 illustrates exemplary passes of a sanding end effector, according to some aspects of the disclosed technology.

[0028] FIG. 24 illustrates exemplary passes of a sanding end effector and exemplary parameters for controlling a positioning system and a sanding end effector, according to some aspects of the disclosed technology.

[0029] FIG. 25 illustrates exemplary passes of a sanding end effector and exemplary parameters for controlling a positioning system and a sanding end effector, according to some aspects of the disclosed technology.

[0030] FIGS. 26 A and 26B illustrate surface profiles of a butt seam having material deposited thereon before sanding and after sanding, according to some aspects of the disclosed technology.

[0031] FIGS. 27 A and 27B illustrate surface profiles of a factory seam having material deposited thereon before sanding and after sanding, according to some aspects of the disclosed technology.

[0032] FIG. 28 is a block diagram illustrating components of an exemplary robotic system, according to some aspects of the disclosed technology.

[0033] FIG. 29 illustrates exemplary passes of a sanding end effector and exemplary parameters for controlling a positioning system and a sanding end effector, according to some aspects of the disclosed technology.

[0034] FIG. 30 illustrates exemplary passes of a sanding end effector and exemplary parameters for controlling a positioning system and a sanding end effector, according to some aspects of the disclosed technology.

[0035] FIG. 31 is a flow diagram illustrating a method for targeted removal of material, according to some aspects of the disclosed technology.

[0036] FIG. 32 is a flow diagram illustrating a method for targeted removal of material, according to some aspects of the disclosed technology.

[0037] FIG. 33 is a flow diagram illustrating a method for targeted removal of material, according to some aspects of the disclosed technology.

[0038] FIG. 34 is a block diagram of an exemplary computing device, according to some embodiments of the disclosure.

[0039] FIG. 35 illustrates exemplary passes of a sanding end effector and exemplary parameters for controlling a positioning system and a sanding end effector, according to some aspects of the disclosed technology.

[0040] FIG. 36 illustrates exemplary passes of a sanding end effector and exemplary parameters for controlling a positioning system and a sanding end effector, according to some aspects of the disclosed technology.

[0041] FIG. 37 is a flow diagram illustrating a method for targeted removal of material, according to some aspects of the disclosed technology.DETAILED DESCRIPTION

[0042] The detailed description set forth below is intended as a description of various configurations of the subject technology and is not intended to represent the only configurations in which the subject technology may be practiced. The appended drawings are incorporated herein and constitute a part of the detailed description. The detailed description includes specific details for the purpose of providing a more thorough understanding of the subject technology. However, it will be clear and apparent that the subject technology is not limited to the specific details set forth herein and may be practiced without these details. In some instances, structures and components are shown in block diagram form to avoid obscuring the concepts of the subject technology.

[0043] Overview

[0044] Dry wall finishing is a labor intensive task. Robotics can be designed and configured to perform drywall finishing tasks with little to no human intervention. As with many roboticsapplications, it is not trivial to design systems to accomplish tasks that a skilled manual worker would perform. One type of drywall finish involves targeted removal of material, e.g., via sanding, to achieve a visually smooth finish without damaging the drywall panels or over removal of the material. An exemplary robotic system can accomplish targeted removal of material by sensing characteristics of a target surface that has a seam and material deposited onto the seam and selecting an appropriate sanding plan based on the characteristics. The robotic system can be controlled to remove a portion of the material according to the selected sanding plan.

[0045] The robotic system may include a control system. A control system, as used herein, may perform one or more functions such as perception, mapping / localization, planning, and actuation / movement control. The control system may perform operations that enable the robotic system to operate autonomously or with little human input / intervention. The control system may cause the robotic system to carry out tasks, such as targeted application / deposition of material and targeted removal of the material.

[0046] Different types of seams, after having material applied thereon, may have different surface profiles. How the material was applied (e.g., the parameters used for applying the material by the robotic system) may also result in different surface profiles. Misalignment of a spray tip used in applying the material may result in different surface profiles. Degradation (e.g., tip wear) of a spray tip used in applying the material may also result in different surface profiles. An offset of a centerline used in applying the material relative to the actual centerline of the seam may also result in different surface profiles. Presence or absence of studs, fasteners, and / or beams may also result in different surface profiles. Presence or absence, and / or types of intersections where dry wall boards meet may also result in different surface profiles. The target surface may have different characteristics. A control system may determine or derive characteristics of the target surface.

[0047] A sanding plan having one or more types of sanding passes can be tailor made to the type of seam, the surface profile, and / or the parameters used for applying the material to achieve a visually smooth finish and to ensure minimal damage to the dry wall boards. Different preset sanding plans may be provided to a control system. The control system may select a most suitable sanding plan to be executed based on characteristics of the target surface. The control system may determine a suitable sanding plan based on the characteristics of the target surface.

[0048] Exemplary types of sanding passes making up different sanding plans may include overlapping passes, feathering passes, non-overlapping passes, smoothing passes, etc.Examples of sanding passes are illustrated in FIGS. 15-25, and 35-36. Sanding passes may have associated parameters, and the parameters may be based on the line indicating the centerline of the seam.

[0049] For the robotic system to execute the sanding plan with precision, a control system may determine a line indicating a centerline of the seam. The accuracy of the line (e.g., the location and its extent / length) can impact the execution of the sanding plan. Offsets or errors in the line relative to the actual centerline of the seam may cause damage of the dry wall boards, under removal of material, and / or over removal of material. The sanding end effector may remove material in the wrong places if the location and / or extent / length line are inaccurate. The line may be confirmed by user input. The control system may use the line to determine parameters for the positioning system and / or the sanding end effector for execution of the sanding plan.

[0050] In some cases, the robotic system may track the degradation of sandpaper used by the sanding end effector. The robotic system can determine an expected degradation of the sandpaper. The robotic system can compensate for the degradation. The robotic system can perform a dust removal operation to improve the health of the sandpaper.

[0051] In some cases, the extent of material applied and / or removed may take into account the type of intersection that a particular seam forms with another seam. For a T-shaped intersection, the material may be applied up to a centerline of the other seam, and an extent / length of the line indicating the particular seam may end at the centerline of the other seam (e.g., sanding passes removing material do not extend over the centerline of the other seam). For a plus-sign- shaped intersection, the material may be applied past and over a centerline of the other seam, and an extent / length of the line may cross / intersect the centerline of the other seam (e.g., sanding passes removing material extend past and over the centerline of the other seam).

[0052] In some embodiments, the sanding end effector is an electric sander suitable for drywall finishing. The sanding end effector may include a vacuum to collect dust particles. In some cases, the sanding end effector may be a random orbital sander. The random orbital sander may include a circular sanding pad that moves in random orbital motion and spins / rotates. In some cases, the sanding end effector may be an orbital sander. The orbital sander may include a rectangular / square sanding pad that moves with orbital motion. In some cases, the sanding end effector may be a belt sander that uses a continuous loop of sandpaper belt that moves at high speed. In some cases, the sanding end effector may be a disc sander that has a circular sandpaper disc that spins or rotates.

[0053] Exemplary robotic systems, such as a robotic system suitable for surface finishing

[0054] FIGS. 1 and 2 are exemplary perspective drawings of an exemplary robotic system 100, according to some aspects of the disclosed technology. The robotic system 100 may be placed at a work site to perform surface finishing tasks. The robotic system 100 comprises one or more of: a base unit 101, a robotic arm 108, and an end effector 116. The base unit 101 can include one or more of, among other things, a positioning system 102, a support 104 coupled to the positioning system 102, and a lift system 106 that can control the height of the support 104. Robotic arm 108 can include a base end 184 and a distal end 144. The end effector 116 may be coupled to the distal end 144 of the robotic arm 108. The base end of robotic arm 108 can be coupled to the support 104.

[0055] The positioning system 102, the lift system 106, and the robotic arm 108 illustrate possible positioning mechanisms of a robotic system. Each positioning mechanism may have different degrees of freedom and / or limitations. The positioning mechanisms may cooperate to allow the end effector 116 to achieve a certain three-dimensional position within a work site. Other robotic positioning mechanisms are envisioned by the disclosure.

[0056] The positioning system 102 may change the (ground) position of the base unit 101 and can move the base unit 101. The positioning system 102 can be a coarse positioning system to mobilize the robotic system within a work site (enabling the end effector 116 to reach a region in space within the work site). The lift system 106 may change the height of support 104, such that the robotic arm 108 coupled to the support 104 may be able to reach higher regions in space within the work site. The robotic arm 108 may change a three-dimensional position of an end effector 116 within a three-dimensional space around the robotic system. The robotic arm can be a fine positioning system to mobilize the end effector 116 to a specific point in space within the work site.

[0057] The positioning system 102 may include a drive train system. As shown, the drive train system includes wheels. In some cases, the drive train system includes tracks. The drive train system is controllable to relocate the robotic system 100, on the ground, to and from different locations within an area. The drive train system may be controlled by a user. The positioning system 102 may navigate within the area autonomously (e.g., based on instructions or control signals generated by a control system).

[0058] In FIG. 1 , lift system 106 is in an unextended position. In FIG. 2, the lift system 106 is in an extended position, lifting the support 104 upwards. Lift system 106 may lift the support 104 up and down to change the height of the support 104. Lift system 106 can aid the robotic arm 108 to reach a larger range of positions.

[0059] The robotic arm 108 can comprise any suitable robotic arm or positioning stage system, which can include pneumatic actuators, electric actuators, and the like. Examples of robotic arm 108 includes articulated arm, cartesian robot arm, cylindrical robot arm, delta robot arm, spherical robot arm, Selective Compliance Articulated Robot Arm (SCARA), etc. Robotic arm 108 may include links joined together by arm joints. Robotic arm 108 can change the position of end effector 116 on the distal end of robotic arm 108 within a three-dimensional workspace of robotic arm 108. The robotic arm 108 can have any suitable number of degrees of freedom. In some embodiments, the distal end of robotic arm 108, e.g., a wrist of robotic arm 108, may be able to rotate or revolve the end effector 116. In some embodiments, the distal end of robotic arm 108, e.g., a wrist of robotic arm 108, may be able to change the angle or direction of the end effector 116. Robotic arm 108 may be controlled by a user. Robotic arm 108 may change position within the workspace autonomously (e.g., based on instructions or control signals generated by a control system). Other types of fine positioning mechanisms that can change one or more of the position, rotational position, and angular direction of the end effector 116 are envisioned by the disclosure.

[0060] In some embodiments, the robotic system 100 can comprise one or more modular and / or multi-use end effector 116, which can be configured for various drywalling, construction, manufacturing, fabrication, or other tasks. For example, as discussed herein, end effectors such as end effector 116 can be configured for substrate planning, substrate hanging, applying coating or joint compound to hung substrate, spraying, sanding the coating, painting, scraping, smoothing, applying tape, drilling, vibrating, measuring, applying pressure, sculpting, and the like. Such end effectors may be selectively coupled to or decoupled from the robotic system 100 to configure it with an end effector corresponding to a particular task. In some cases, end effector 116 may include a plurality of selectively triggerable / controllable end effectors (e.g., end effectors may have electronic triggers to turn on or off, and / or electronic controls to modulate settings of a given end effector).

[0061] The robotic system 100 may include sensors 110, 112a, 112b, 114a, 114b, 186a, and 186b. Sensors can generate sensor data for a perception system. Sensors can generate sensor data for a localization system.

[0062] Sensor(s) 110 may include a distance / range sensor. Sensors 114a and 114b may include distance / range sensors. Examples of distance / range sensors may include, e.g., capacitive sensor, ultrasonics sensor, time-of-flight sensor, structured light sensor, light detection and ranging sensor (LIDAR), radio detection and ranging sensor (RADAR), etc. Sensors 110, 114a, and 114b may generate data that can measure the robotic system 100’s distance from a wall.Sensors 110, 114a, and 114b may generate data that can assist a localization system to determine the robotic system 100’s location within the worksite. Sensors 110, 114a, and 114b may generate data that can detect obstacles and / or other objects in the surroundings of the robotic system 100.

[0063] Sensors 112a and 112b may include a camera or imaging system (e.g., infrared camera, thermal camera, stereo cameras, structured light camera, etc.). In one example, sensors 112a and 112b are 180-degree field of view cameras. Sensors 112a and 112b can capture images and video of the surroundings (almost 360-degree field of view) of the robotic system 100. The images and video may offer situation awareness of the robotic system 100.

[0064] Sensors 186a and 186b may include a camera or imaging system (e.g., infrared camera, thermal camera, stereo cameras, structured light camera, etc.). Sensor 186b is shown in dashed lines since sensor 186b is located on a different side of support 104 not seen in the perspective view. Sensors 186a and 186b may be positioned and configured to capture images or video of a surface in front of sensors 186a and 186b (e.g., a wall in front of robotic system 100 or a wall next to a side of robotic system 100). Images captured by sensors 186a and 186b may be provided to a perception system and / or a localization system.

[0065] In some cases, robotic system 100 may include cameras or imaging systems having a field of view pointing in any suitable direction away from the robotic system 100. For example, robotic system 100 may include a camera or imaging system pointing upwards towards a ceiling. Robotic system 100 may include a camera or imaging system pointing downwards towards a floor. In some cases, robotic system 100 may include one or more cameras or imaging systems that can change its field of view (e.g., panning towards a different direction, zooming in or out, etc.).

[0066] Robotic system 100 may include one or more processors 172 and one or more non- transitory computer-readable media 174 to store instructions and / or data. The instructions may be executed by the one or more processors 172 to implement one or more functionalities relating to sensor data processing, localization, perception, planning, and controls. The data may include data generated by the sensors. The data may include data generated by the one or more processors 172.

[0067] Robotic system 100 may include an output device 170. The output device 170 may include a display, such as touch-sensitive screen. The output device 170 may include an audio speaker. The output device 170 may output (e.g., display) status information about the surface finishing information. The output device 170 may output audible information (e.g., speech, sound, etc.) to a user operating the robotic system 100. The audible information may includestatus information about the surface finishing information. The audible information may include audio instructions from a remote operator at a remote user input system 194. In some cases, the output device 170 may receive user input and operate as an input device as well.

[0068] Robotic system 100 may include a network adapter 180. Network adapter 180 may offer wireless and / or wired connectivity to the one or more processors 172 for computing devices which are near the robotic system 100 or computing devices remote from the robotic system 100. Network adapter 180 may be communicably coupled to a local area network (not shown explicitly in the FIG.). Network adapter 180 may be communicably coupled to a public communications network (e.g., cellular network 196).

[0069] In some embodiments, a local operator may operate and interact with the robotic system 100 using a user input system 192 that is near the robotic system 100 (e.g., at the same work site). The user input system 192 may be wirelessly communicably coupled with the one or more processors 172 via network adapter 180. The user input system 192 may be communicably coupled with the one or more processors 172 via a wired connection via network adapter 180. User input system 192 may be a mobile device, such as a smartphone or a tablet. User input system 192 may include user input interfaces and / or user output interfaces. User input system 192 may include a computing system. User input system 192 may have a graphical user interface. The graphical user interface may display information from systems such as perception system, localization system, planner, and controls. A local operator may provide user input using user input system 192. A local operator may send commands to the robotic system 100 (e.g., to start execution of a task, to control positioning system 102, etc.) using user input system 192.

[0070] In some embodiments, a remote operator may remotely operate and interact with the robotic system 100 using a remote user input system 194 that is remote from the robotic system 100 (e.g., not at the work site). The remote user input system 194 may be wirelessly communicably coupled with the one or more processors 172 via network adapter 180, over a cellular network 196 (e.g., 5G cellular network). The remote user input system 194 may include a computing system. The remote user input system 194 may receive sensor data captured by sensors of the robotic system 100. The remote user input system 194 may implement similar functionalities as the user input system 192. Remote user input system 194 may include user input interfaces and / or user output interfaces. Remote user input system 194 may have a graphical user interface. The graphical user interface may display information from systems such as perception system, localization system, planner, and controls. Graphical user interface may display video feeds from sensors 112a and 112b to monitor the surroundings of the roboticsystem. A remote operator may provide user input using remote user input system 194. A remote operator may send commands to the robotic system 100 (e.g., to start execution of a task, to control positioning system 102, etc.) using remote user input system 194. In some cases, the remote user input system 194 may implement expert functionalities such as debugging of the robotic system. In some cases, the remote user input system 194 may implement expert functionalities such as controls of the robotic arm 108 and / or lift system 106.

[0071] FIG. 3 is a block diagram illustrating components of an exemplary robotic system, according to some aspects of the disclosed technology. Robotic system 300 can be a surface finishing system.

[0072] Robotic system 300 may include a base unit 370, a robotic arm 380, and one or more end effectors 350. For simplicity, the passages may refer to an end effector 350. The base unit 370 may include platform 302 and a cart 306, with a lift 304 disposed between the platform 302 and cart 306. A base end 384 (end that is attached to platform 302) of the robotic arm 380 may be physically coupled to the base unit 370, e.g., at platform 302, or at cart 306. Cart 306 can be disposed at or near the ground and may be movable by wheels 308 or other mechanisms such as a belt with treads. The lift 304 can raise platform 302 up and down, if used. In some examples, lift 304 may include a scissor lift or other suitable height adjustment mechanisms that can raise and lower platform 302 relative to the cart 306.

[0073] Robotic system 300 may include sensors 344. Sensors 344 may include one or more of: visible spectrum camera, radio detection and ranging (RADAR), LIDAR system, sound navigation and ranging (SONAR) system, camera (e.g., infrared camera, thermal camera, stereo cameras, structured light camera, and the like), laser scanners, time-of-flight sensors, inertial measurement unit (IMU), a vision system, capacitive sensors, temperature sensors, impedance sensors, pressure sensors, audio sensors, humidity sensor, air flow sensors, proximity sensors, laser curtains, force and torque sensors, limit switches, rotameter, spring and piston flow meter, ultrasonic flow meter, turbine meter, paddlewheel meter, variable area meter, positive displacement, vortex meter, pitot tube or differential pressure meters, magnetic meters, conductivity sensor, and depth or thickness sensors, and the like. In some cases, sensors 344 may be provided with robotic arm 380. In some cases, sensors 344 may be provided with the end effector 350. Sensors 344 may generate a three-dimensional depth map of a target surface, plotting depth / distance data across a first dimension and a second dimension. In some cases, depth data may be generated by stitching different scans of the target surface (scanning from different poses relative to the target surface and potentially at different times). Sensors 344 may generate two-dimensional depth data (or extract the two-dimensional depth data fromthe three-dimensional depth map), plotting depth data along a line in the first dimension and the second dimension.

[0074] Robotic system 300 may include one or more input interfaces (not explicitly depicted in FIG. 3) that allow for various systems to couple with the robotic system 300. The one or more input interfaces may allow for resources provided by such systems to be provided to the robotic arm 380 and / or the end effector 350 coupled at a distal end 382 (end that has the end effector 350 affixed thereto) of the robotic arm 380. For example, a pneumatic source, a power source, a vacuum source, a paint source, a coating or joint compound source, or the like can be coupled to robotic system 300, at any suitable location of the robotic system 300.

[0075] In various embodiments, robotic arm 380 can comprise one or more suitable robotic arms or positioning systems, which can include pneumatic actuators, electric actuators, and the like. The robotic arm 380 can have any suitable number of degrees of freedom. Robotic arm 380 may include sensors to detect positioning of various parts of the robotic arm 380, and optionally objects or people in the vicinity of the robotic arm 380. In some cases, the robotic arm 380 may include a lifting mechanism or height adjustment mechanism, in combination with other positioning system(s) operable to adjust position of a distal end 382 of the robotic arm 380 in space.

[0076] In some cases, the robotic arm 380 may be replaced by or supplemented with other types of positioning system such as a gantry (XY) positioning system (as illustrated in FIG. 4). A gantry positioning system may include a first end that is affixed to the base unit 370, and an attachment end. The gantry positioning system may have a first track for moving the attachment end in a first direction and a second track for moving the attachment end in a second direction perpendicular to the first direction. In some cases, the one or more end effectors 350 may be attached to the attachment end of the gantry positioning system, and the position of the one or more end effectors 350 may be adjusted using the gantry positioning system. In addition to the gantry positioning system, the robotic system 300 may include a fine movement component that connects the one or more end effectors 350 to the attachment end of the gantry positioning system. The fine movement component may adjust a position the one or more end effectors 350. The fine movement component may rotate the orientation of one or more end effectors 350 (e.g., to adjust a fan bias angle of a spraying end effector). The fine movement component can perform a flicking movement in some cases.

[0077] An end effector 350 can be coupled or affixed at the distal end 382 of the robotic arm 380. In some examples, the robotic system 300 can comprise modular and / or multi-use end effectors 350, which can be configured for various material application tasks, wall, ceilingand / or floor preparation, wall, ceiling and / or floor finishing, drywalling tasks, construction tasks, or other tasks. For example, as discussed herein, end effectors 350 can be configured for substrate planning, substrate hanging, applying coating or joint compound to hung substrate, sanding the coating, painting, and the like. Although various examples herein relate to surface finishing, further embodiments of the robotic system 300 can be configured for any suitable tasks, including other construction tasks, manufacturing tasks, gardening tasks, farming tasks, inspection tasks, compliance tasks, planning tasks, domestic tasks, and the like. Accordingly, the discussions herein related to dry walling and construction should not be construed to be limiting on the wide variety of tasks that the robotic system 300 can be configured for.

[0078] End effectors 350 can comprise various suitable devices, including a cutting device, hanging device, coating device, sanding device, painting device, vacuum device, a sprayer (or spraying device), fastening device, screwing device, fastener driver device, impact device, scraping device, vibrational device, tape application device, measuring device, material removal device, testing device, fan device, suction device, grinding device, heat application device, welding device, burning device, etching device, mixing device, sawing device, router or shaping device, tying device, bending device, riveting device, and the like. Other suitable devices can be part of an end effector 350 and can be selected based on any desired task that the end effector 350 may be used for. For various end effectors 350, proper alignment relative to the distal end 382 of robotic arm 380 may impact accuracy and / or precision of the end effector 350 in performing the task. Components of end effectors 350 may become misaligned in pitch, roll, and / or yaw directions.

[0079] The robotic system 300 can further include a control system 334, which may include one or more of perception system 340, mapping and localization 392, planning 394, movement system 342, and actuation system 396. Control system 334 can perform one or more operations such as perception, mapping / localization, planning, actuation / movement control. The control system may perform operations that enable the robotic system 300 to operate autonomously or with little human input / intervention. The control system 334 may cause the robotic system 300 to carry out tasks, such as targeted application / deposition of material and targeted removal of the material.

[0080] Perception system 340 may receive input from the sensors 344 and perceive the environment surrounding the robotic system 300. Perception system 340 may determine location of seams of a wall assembly (or part of a building structure). Perception system 340 may determine the locations of structural components of a wall assembly (or part of a building structure). Perception system 340 may determine one or more characteristics of a target surface.

[0081] Mapping and localization 392 may receive map data and / or input from sensors 344 and use the information to determine the robotic system 300 within a space. Mapping and localization 392 may construct a map representation of the environment of robotic system 300. The map may include a three-dimensional map of the environment. The map may include a floor plan or building plan. The map may capture spatial layout, including walls, floors, ceilings, obstacles, location of other robotic system(s), building features (windows, outlets, doorways), etc. Mapping and localization 392 may determine the position or location of robotic system 300 within the map, e.g., based on the map data and / or input from sensors 344. Mapping and localization 392 help robotic system 300 perform tasks at appropriate locations within the environment.

[0082] Planning 394 may determine how robotic system 300 should perform a task or to execute an action. Planning 394 may receive information from perception system 340 and / or mapping and localization 392 to create a plan for executing a task. Planning 394 may receive feedback information from movement system 342 and / or actuation system 396. The plan may include tool path parameters. The plan may include requirements on the tool path parameters. Planning 394 may make decisions for how robotic system 300 would carry out the task or execute the action. Planning 394 may provide a plan to movement system 342 and / or actuation system 396. Planning 394 may update the plan based on new information from perception system 340 and / or mapping and localization 392.

[0083] Movement system 342 may generate commands based on the plan provided by planning 394. Movement system 342 may determine commands to actuate elements of the robotic system 300 to move one or more of: the robotic arm 380, lift 304, and wheels 308. Such commands may be generated for an electric motor, pneumatic actuators, piezoelectric actuator, and the like. In some cases, the movement system 342 may command lift 304 to control the height of lift 304. In some cases, the movement system 342 may command wheels 308 to control the position and heading of the base unit 370. In some cases, the movement system 342 may command the robotic arm 380 to move, change the orientation of, rotate, or otherwise configure the end effector 350 (e.g., relative to a wall, ceiling, or floor). The commands may be transmitted as one or more signals to actuators of robotic system 300.

[0084] Actuation system 396 may generate commands based on the plan provided by planning 394. The commands may electronically trigger operations of the one or more end effectors 350. The commands may electronically change settings or operation modes of the one or more end effectors 350. The commands may be transmitted as one or more signals to one or more end effectors 350.

[0085] Control system 334 may include a user interface 332 (e.g., communicably coupled to control system 334 via wired or wireless means). User interface 332 may generate output to one or more users of robotic system 300.

[0086] Robotic system 300 may include dust removal tool 356. In some cases, one or more end effectors 350 includes a sanding end effector. The sandpaper of the sanding end effector may be clogged with dust. Planning 394 can track degradation of the sandpaper and create a plan for the robotic system 300 to use the dust removal tool 356 to remove dust from the sandpaper. Dust removal tool 356 may include a drum or dedusting surface. Robotic arm 380 may be commanded to tap the sanding end effector on the drum to cause the dust to be removed from the sandpaper. Dust removal tool 356 may include a brush. Robotic arm 380 may be commanded to slide the sandpaper of the sanding end effector over the brush to cause the dust to be removed from the sandpaper.

[0087] FIG. 4 is a drawing illustrating an exemplary robotic system 400, according to some aspects of the disclosed technology. Robotic system 400 may include a base unit 101, an end effector 116, a gantry XY positioning system (as one example of a positioning system) having track 402 for moving in a first direction and track 404 for moving in a second direction perpendicular to the first direction. The end effector 116 may be attached to the gantry positioning system, and the position of the end effector 116 may be adjusted using the gantry positioning system. The speed of the end effector 116 may be controllable by controlling the gantry positioning system. In addition to the gantry positioning system, the robotic system 400 may include a mechanical component 410 that can rotate the orientation of end effector 116 (e.g., to adjust a fan bias angle of a spraying end effector). The mechanical component 410 can perform a flicking movement in some cases.

[0088] Understanding drywall boards, joints, wall assemblies, and associated surface finishing tasks

[0089] FIGS. 5A, 5B, and 5C illustrate views of a building component, which in this case is substrate 510. Substrate 510 may be a drywall board. FIG. 5A illustrates a front view of substrate 510. FIG. 5B illustrates a cross-section cut through substrate 510 along line B-B. FIG. 5C illustrates a cross-section cut through substrate 510 along line A-A. The substrate 510 comprises a first dimension DI and a second dimension D2 and edges 508a, 508b, 508c, and 508d. The substrate has a thickness of tl. Substrate 510 is rectangular. The first dimension DI and the second dimension D2 are perpendicular to one another. The first dimension DI is larger than the second dimension D2. The edges 508b and 508d are tapered edges, which taper fromthe thickness tl down to t2. The edges 508a and 508c are flat edges, are of a constant thickness tl and do not taper.

[0090] Substrate 510 can be installed in one or more orientations. When attached to studs, substrate 510 may be attached in a first orientation where the first dimension is oriented at a first angle or a second orientation where the first dimension is oriented at a second angle. For example, when substrate 510 is attached to vertically oriented studs, the substrate 510 may be placed in either a vertical orientation or a horizontal orientation. In the vertical orientation, the first dimension DI is vertically aligned. In the horizontal orientation, the first dimension DI is horizontally aligned.

[0091] In other embodiments, a profile of the edges 508a, 508b, 508c, and 5O8d may vary. For example, the location of tapered edges and flat edges may be swapped (e.g., the edges 508b and 508d are flat edges and the edges 508a and 508c are tapered edges). In still other examples, all of the edges 508a, 508b, 508c, and 508d may be of a single type. In an embodiment, all of the edges 508a, 508b, 508c, and 508d are tapered edges. In another embodiment, all of the edges 508a, 508b, 508c, and 508d are flat edges.

[0092] Joints are formed by abutting edges of adjacent components, such as substrate 510. For example, abutting edges of adjacent boards of substrate form a joint. The terms “joint” and “seam” are used interchangeably in the present disclosure. A tapered joint (also known as a “factory” joint) is formed by abutting tapered edges of adjacent components. A tapered joint creates a valley in which coating material can be applied to create a level surface relative to a face of the substrate 510. A butt joint is formed by abutting flat edges of adjacent components. In contrast to tapered joints, butt joints lack a formal valley in which a coating material can lie to create a level surface. Creating the appearance of flatness is easier for tapered joints than it is for butt joints because the valley in tapered joints can hide much of the coating material. In contrast, for butt joints, much of the material extends beyond the plane of the surface of the substrate. A mixed joint (also known as a bastard joint) is formed by abutting a tapered edge and a flat edge of adjacent components. Mixed joints have only a portion of the valley for the coating material.

[0093] During coating work, a robotic system (e.g., the robotic system 100 as illustrated in FIGS. 1-2, the robotic system 300 as illustrated in FIG. 3, and the robotic system 400 as illustrated in FIG. 4) can apply a layer of coating material to joints that may have a thickness that is greater than is conventionally manually applied by human workers to allow for a sanding system (e.g., a sanding end effector) to sand down the compound to a desired plane. For example, in some examples, manual joint compound application mud can be profiled to taperfrom high points. The robotic system can apply a thicker layer than normal, enabling a sanding system to sand down high points to be level to the adjacent surfaces.

[0094] FIGS. 6 A, 6B, 6C, and 6D illustrate an example coating application process where a coating is applied to a joint. FIGS. 6A and 6B illustrate an example coating applied to a tapered joint 620A formed by abutting edges 508b and 508d of substrates 510A and 510B, respectively. FIGS. 7C and 7D illustrate an example coating applied to a butt joint 620B formed by abutting edges 508a and 508c of substrates 510A and 510B, respectively. Joint tape 640 may be embedded in a coating material 650, which attaches the joint tape 640 to the respective substrates. An end effector generates a coating spray 600 to apply the coating 630 in one or more layers to the joints. Such an application process can be performed by a robotic system (e.g., the robotic system 100 as illustrated in FIGS. 1-2, the robotic system 300 as illustrated in FIG. 3, and the robotic system 400 as illustrated in FIG. 4) in various embodiments. The thickness of the coating 630 being applied to the pieces of substrate defining the joints can allow for a sanding system to be used to sand back portions of coating 630 to hide the joints, joint tape, and / or a high point therein.

[0095] In FIGS. 6A and 6B, the thickness of the coating 630 being applied to the pieces of substrate 510A, 510B defining the tapered joint 620A can allow for a sanding system to be used to sand back high portions of coating 630 to hide the joint tape 640 and create a level surface. The high portions of coating 630 can be caused by the tapered joint 620A, the joint tape 640, feature, raised stud, defect, or any combination thereof. The tapered joint 620A creates a valley in which the coating 630 can be applied to create a level surface relative to a face of the substrate 510.

[0096] In FIGS. 6C and 6D, the thickness of the coating 630 being applied to the pieces of substrate 510A, 510B defining the butt joint 620B can allow for a sanding system to be used to sand back portions of coating 630 to hide the joint tape 640, smooth an exposed surface of the coating, and / or create the appearance of a level surface. While butt joints lack the valley of a tapered joint, butt joints are given the appearance of flatness by creating a slow continuous slope to hide the high point.

[0097] In some examples, creating the appearance of flatness is different for tapered joints and the butt joints. In tapered joints, the valley is recessed relative to a face of the substrate and, therefore, can hide much of the coating material 650. In butt joints, much of the material extends beyond the face of the substrate of the substrates 510A and 510B. Thus, the high points (relative to the face of the substrate) are often higher on butt joints than on tapered joints. These high points can impede the appearance of flatness. Thus, the high points are sanded backtowards the face of the substrate to improve the appearance of flatness. As the height of the high point increases (e.g., for butt joints), systems and methods disclosed herein may increase the width of the coating. The increased width provides more distance over which to gradually taper the material from the high point to the face of the substrate and, thereby, improve the appearance of flatness.

[0098] The substrate 510 and sprayed coating 630 can be used as a stand-alone wall coating system for single-coat applications or as part of a multi-coat wall coating system. A multi-coat wall coating system can comprise two or more layers of the same or different materials applied manually and / or with automation. This can allow for an automated application of a coating 630 to the substrate 510 with desirable structural properties to be followed by an application of a coating 630 with desirable aesthetic finishing properties.

[0099] FIGS. 7A, 7B, 7C, and 7D illustrate a wall assembly 700 including a plurality of substrate pieces 510A, 510B, 510C, 510D. The wall assembly 700 comprises a header 710 and footer 720, with a plurality of studs 730 extending therebetween as shown in FIG. 7A. As shown in FIG. 8B, the substrate pieces 510A, 510B, 510C, 510D are coupled to the studs 730 via a plurality of fasteners 740 (e.g., screws, nails, and the like) that extend through each of the substrate pieces 510A, 510B, 510C, 510D and into the studs 730. Adjacent ones of the substrate pieces 510A, 510B, 510C, 510D create seams including a vertical seam 620V and a horizontal seam 620H as indicated in FIGS. 7B, 7C, and 7D. A substrate piece may include a drywall board.

[0100] FIG. 7C illustrates a coating material 650 coating seams 620H and 620V. In some examples, the coating material 650 imbeds a joint tape (e.g., similar to the joint tape 640 that of FIGS. 6A, 6B, 6C, and 6D).

[0101] As illustrated in FIG. 7D, a robotic system as disclosed herein can selectively apply a coating 630 to the seams 620H and 620V leaving portions of the substrate pieces 510A, 510B, 510C, 510D without the coating 630. The coating 630 covers the coating material 650. The coating 630 is applied in bands around the seams 620H and 620V. The coating 630 covering the seam 620H lies in a band of width W 1 and is approximately centered about the centerline of the seam 620H. A centerline of a seam may be referred to herein as the line indicating or representing the location and length / extent of the seam. The coating 630 covering the seam 620V lies in a band of width W2 and is approximately centered about the centerline of the seam 620V. In each case the coating 630 is not applied outside of a threshold around the seam. A robotic system may execute various processes and methods to apply the coating 630.

[0102] Applying the coating 630 in bands around the seams 620H and 620V can include, e.g., applying the coating within a threshold distance of a centerline of each of the seams 620H and 620V. For the seam 620H, the threshold distance is half of the width Wl. For the seam 620V, the threshold distance is half of the width W2. In each case, the coating 630 is not applied outside of the respective threshold distances from the centerlines of the seams 620H and 620V.

[0103] In some examples, the width of the coating 630 may be set to different values based on the type of seam, orientation of the seam, orientation of the one or more components, an edge type, quality of the seam, desired level of finish, coating composition, and combination thereof. For example, the coating 630 may be applied to butt seams in a band of width W 1 and applied to tapered seams in a band of width W2, where Wl is greater than W2. Unlike tapered seams, butt seams do not create a valley in which the coating 630 can sit and lie flat with the substrate. The larger width for butt seams provides more space to gently taper the coating 630 to create the appearance of flatness at the butt seam.

[0104] The robotic system 100 as illustrated in FIGS. 1-2, the robotic system 300 as illustrated in FIG. 3, and the robotic system 400 as illustrated in FIG. 4 can be used in a variety of situations, such as to deposit material onto a surface with accuracy and / or precision and / or to remove a portion of material from a surface with accuracy and / or precision.

[0105] One example of such a situation is to accurately and selectively apply or deposit material in a region while avoiding depositing material in another region. Another situation is to selectively apply or deposit material with a certain thickness with accuracy. Another situation is to selectively remove material in a region while avoiding removing material in another region. Another situation is to selectively remove a certain depth of material with accuracy. Another situation is to selectively remove material in a way to ensure a certain thickness of material remains on the surface with accuracy. Another situation is to selectively remove material in a way to ensure the surface is visually flat.

[0106] The robotic system 100 as illustrated in FIGS. 1-2, the robotic system 300 as illustrated in FIG. 3, and the robotic system 400 as illustrated in FIG. 4 can be used in selectively applying material to cover joints and to selectively remove the material to achieve a desired surface finish.

[0107] FIGS. 8A and 8B illustrate different seams having material deposited thereon, according to some aspects of the disclosed technology.

[0108] FIG. 8A shows substrate pieces 510E, 510F, 510G, 510H, and 5101 arranged in the manner shown. Substrate pieces 510E and 51 OF may form a butt seam 802. Substrate pieces 510G and 51 OH may form a butt seam 808. Substrate pieces 51 OH and 5101 may form a buttseam 810. Substrate pieces 510E, 510F, 510G, 510H, and 5101 together may form a factory seam 806.

[0109] Butt seam 802 may form a T-shaped intersection with factory seam 806, where an end of butt seam 802 may end at an edge of substrate piece 51 OH. Butt seam 808 may form a T- shaped intersection with factory seam 806, where an end of butt seam 808 may end at an edge of substrate piece 510E. Butt seam 810 may form a T-shaped intersection with factory seam 806, where an end of butt seam 810 may end at an edge of substrate piece 510F.

[0110] Material 824 may be selectively applied to cover factory seam 806, according to the processes illustrated in FIGS. 7C and 7D. Material 824 may have a width WF. Application of material 824 may extend across the length of factory seam 806.

[0111] Material 804 may be selectively applied to cover butt seam 802, according to the processes illustrated in FIGS. 7C and 7D. Material 804 may have a width WB. Application of material 804 may extend to (or may not go beyond) a centerline of factory seam 806. Extent of application of material 804 may overlap with material 824, e.g., up to a distance of half of WF. Application of material 804 may overlap with material 824 in area 814.

[0112] Material 854 may be selectively applied to cover butt seam 808, according to the processes illustrated in FIGS. 7C and 7D. Material 854 may have a width WB- Application of material 854 may extend to (or may not go beyond) a centerline of factory seam 806. Extent of application of material 854 may overlap with material 824, e.g., up to a distance of half of WF. Application of material 854 may overlap with material 824 in area 816.

[0113] Material 834 may be selectively applied to cover butt seam 810, according to the processes illustrated in FIGS. 7C and 7D. Material 834 may have a width WB- Application of material 834 may extend to (or may not go beyond) a centerline of factory seam 806. Extent of application of material 834 may overlap with material 824, e.g., up to a distance of half of WF. Application of material 834 may overlap with material 824 in area 818.

[0114] In some embodiments, width WB may be greater than with WF.

[0115] With T-shaped intersections, material may be doubly applied in one or more areas of the target surface. Material 804 for the butt seam 802 and material 824 for the factory seam 806 may be applied to area 814. Thickness of material 804 and material 824 in area 814 may be significantly higher than areas outside of area 814. Material 854 for the butt seam 808 and material 824 for the factory seam 806 may be applied to area 816. Thickness of material 854 and material 824 in that area 816 may be significantly higher than areas outside of area 816. Material 834 for the butt seam 810 and material 824 for the factory seam 806 may be appliedto area 818. Thickness of material 834 and material 824 in that area 818 may be significantly higher than areas outside of area 818.

[0116] FIG. 8B shows substrate pieces 510J, 510K, 510L, and 510M arranged in the manner shown. Substrate pieces 510J, 510K, 510L, and 510M together may form a butt seam 852. Substrate pieces 510J, 510K, 510L, and 510M together may form a factory seam 862.

[0117] Butt seam 852 may form a plus-sign-shaped intersection (e.g., a criss-cross intersection) with factory seam 862. Butt seam 852 crosses factor}' seam 862 in the shape of a plus sign + or a cross -|-.

[0118] Material 874 may be selectively applied to cover factory seam 862, according to the processes illustrated in FIGS. 7C and 7D. Material 874 may have a width WK Application of material 874 may extend across the length of factory seam 806.

[0119] Material 894 may be selectively applied to cover butt seam 852, according to the processes illustrated in FIGS. 7C and 7D. Material 894 may have a width WB- Application of material 894 may extend across (or go beyond) a centerline of factory seam 862. Extent of application of material 894 may overlap with material 824, e.g., for a distance of the entire width WF. Application of material 894 may overlap with material 824 in area 820.

[0120] In some embodiments, width WB may be greater than width WF.

[0121] With plus-sign-shaped intersections, material may be doubly applied in one or more areas of the target surface. Material 894 for the butt seam 852 and material 874 for the factory seam 862 may be applied to area 820 of the intersection surrounding the crossing point. Thickness of material 894 and material 874 in area 820 may be significantly higher than areas outside of the intersection.

[0122] Challenges with depositing material and / or removal o f material with accuracy and / or precision

[0123] FIGS. 9 A and 9B illustrate surface profiles of a butt seam having material deposited thereon, according to some aspects of the disclosed technology. The surface profiles after having material selectively deposited onto the butt seam may have a center hump 902 near the centerline of the butt seam. The surface profiles after having material selectively deposited onto the butt seam may have two side humps 904 and 906 at a distance away from the centerline of the butt seam. The surface profiles after having material selectively deposited onto the butt seam may generally be bumpy, even at a distance away from the centerline of the butt seam and can be unappealing if left unsanded or treated.

[0124] FIGS. 10A and 10B illustrate surface profiles of a factory seam having material deposited thereon, according to some aspects of the disclosed technology. The surface profilesafter having material selectively deposited onto the factory seam may have a center hump or raised plateau-like region 1002 near the centerline of the factory seam. The surface profiles after having material selectively deposited onto the factory seam may generally be bumpy, even at a distance away from the centerline of the factory seam and can be unappealing if left unsanded or treated.

[0125] In practice, robotic systems do not have sensors or time to thoroughly sense the target surface to obtain surface profiles such as ones seen in FIGS. 9 A, 9B, 10 A, and 10B. One technical challenge is to be able to perform targeted removal of material to achieve a visually smooth surface without having a detailed surface profile or a complete surface profile of the target surface.

[0126] One insight from the surface profiles such as ones seen in FIGS. 9A, 9B, 10A, and 10B is that the surface profile may exhibit certain characteristics (e.g., certain hump(s), bumpiness, etc.) based on the type of the seam. The characteristics may be located at a certain distance from the centerline of the seam.

[0127] Another insight from the surface profiles such as ones seen in FIGS. 9A, 9B, 10A, and 10B is that the surface profile may depend on how the material was applied onto the seam. The material may have been selectively applied onto the seam according to a centerline of the seam.

[0128] Knowing the precise location and extent / length of the centerline of the seam can impact how material may be selectively applied onto the target surface and / or how material may be selectively removed from the target surface.

[0129] FIGS. 11 A and 1 IB illustrate centerlines of seams having material deposited thereon, according to some aspects of the disclosed technology. Material 1108 may be applied to a butt seam formed by substrate pieces 510E and 51 OF. Line 1102 may indicate the location and extent / length of the centerline of the butt seam. Material 1106 may be applied to a factory seam formed by substrate pieces 510E, 510F, 510G, 510H, and 5101. Line 1104 may indicate the location and extent / length of the centerline of the factory seam.

[0130] FIGS. 12A and 12B illustrate centerlines of seams having material deposited thereon, according to some aspects of the disclosed technology. Material 1208 may be applied to a butt seam formed by substrate pieces 510J, 510K, 510L, and 510M. Line 1202 may indicate the location and extent / length of the centerline of the butt seam. Material 1206 may be applied to a factory seam formed by substrate pieces 510J, 510K, 510L, and 510M. Line 1204 may indicate the location and extent / length of the centerline of the factory seam.

[0131] In some embodiments, the centerline of a seam may be sensed or determined by a perception system. In some embodiments, the centerline of a seam may be provided and / orconfirmed by a user. The centerline of a seam may be represented by a line having a certain location within the environment of the robotic system. The line may have a length. The line may have end points which are connected by the extent of the line.

[0132] In some embodiments, a robotic system may project the determined line onto the target surface. In some embodiments, a robotic system may superimpose the determined line onto a camera image of the target surface and display the camera image with the line to a user.

[0133] Potential solutions to address the challenges with depositing material and / or removal of material with accuracy and / or precision

[0134] FIG. 13 is a block diagram illustrating components of an exemplary robotic system 1300, according to some aspects of the disclosed technology. FIG. 14 is a block diagram illustrating components of the exemplary robotic system 1300, according to some aspects of the disclosed technology.

[0135] Exemplary robotic system 1300 may include control system 1310 (e.g., which may be similar to control system 334 of FIG. 3). Exemplary robotic system 1300 may include one or more coarse positioning systems 1330 (e.g., to coarsely change the position and / or pose of the exemplary robotic system 1300). Exemplary robotic system 1300 may include one or more fine positioning systems 1332 (e.g., to finely change the position and / or pose of the sanding end effector 1334). Exemplary robotic system 1300 may include sanding end effector 1334. Control system 1310 may transmit signals to control one or more of: one or more coarse positioning systems 1330, one or more fine positioning systems 1332, and sanding end effector 1334.

[0136] Exemplary robotic system 1300 may include one or more user input / output device(s) 1364 (e.g., a display, a speaker, a device implementing a user interface, etc.). Control system 1310 may transmit information to one or more user input / output device(s) 1364. Control system 1310 may receive information from one or more user input / output device(s) device(s) 1364.

[0137] Exemplary robotic system 1300 may include sensor(s) 1302 such as sensors described herein.

[0138] Control system 1310 may include mapping and localization 1308. Mapping and localization 1308 may be similar to mapping and localization 392 of FIG. 3. Mapping and localization 1308 may receive sensor data from sensor(s) 1302. Mapping and localization 1308 may receive map data 1306 (e.g., floor plan, building plan, map information, etc.). Mapping and localization 1308 may receive user input 1304 (e.g., information provided via one or more user input / output device(s) 1364). Mapping and localization 1308 may determine locations of features of the environment, e.g., locations of walls, locations of ceilings, locations of floors, locations of windows, locations of openings, locations of doors, locations and arrangements ofsubstrate pieces, orientations of substrate pieces, locations of seams formed by the substrate pieces, etc. The locations may be defined within a frame of reference of exemplary robotic system 1300. Mapping and localization 1308 may maintain and update the locations of features of the environment in a three-dimensional map. Mapping and localization 1308 may maintain and update the location of exemplary robotic system 1300 in the three-dimensional map. Mapping and localization 1308 may maintain and update the location (position and pose) of one or more coarse positioning systems 1330 and / or one or more fine positioning systems 1332 in the three-dimensional map.

[0139] Control system 1310 may include target surface characteristics determination 1320. Target surface characteristics determination 1320 may determine characteristics of the target surface. Characteristics may include a line indicating a centerline of a seam. Characteristics may include a type of seam (e.g., factory seam, butt seam, mixed seam, etc.). Characteristics may include a type of intersection formed by the seams (e.g., a T-intersection, a plus-sign- intersection, etc.). Characteristics may include presence of obstacles (e.g., a comer, a door frame, a window frame). Characteristics may include a surface profile (e.g., height or depth information of the target surface). Characteristics may include presence and / or locations of humps.

[0140] Target surface characteristics determination 1320 may include seam centerline determination 1322. Seam centerline determination 1322 may determine a line that accurately represents the location and extent / length centerline of the seam in three-dimensional space. Seam centerline determination 1322 may receive information from mapping and localization 1308 to assist with the determination of the line. Locations and arrangement of substrate pieces may be used to determine the line. Seam centerline determination 1322 may receive sensor data from sensor(s) 1302 (e.g., camera images) to assist with the determination of the line. Seam centerline determination 1322 may use computer vision and / or machine learning to determine the line based on camera images. Seam centerline determination 1322 may receive user input 1304 to assist with the determination of the line. User input 1304 may include a line drawn by a user via a user interface onto a camera image of the target surface captured by sensor(s) 1302. Lines drawn by users may be similar to line 1102, line 1104, line 1202, and line 1204 of FIGS. 11 A, 11B, 12A, and 12B. User input 1304 may include a user specifying or confirming the centerline of the seam via a user interface. Seam centerline determination 1322 may translate the line provided by user input 1304 into a line that represents the location and extent / length centerline of the seam in three-dimensional space within the frame of reference of exemplary robotic system 1300.

[0141] Target surface characteristics determination 1320 may include seam type determination 1324. Seam type determination 1324 may receive information from mapping and localization 1308 to assist with the determination of the type of the seam. Orientation and / or arrangement of substrate pieces may be used to determine the type of the seam formed by the substrate pieces. Seam type determination 1324 may receive sensor data from sensor(s) 1302 (e.g., camera images) to assist with the determination of the type of the seam. Seam type determination 1324 may use computer vision and / or machine learning to identify the type of the seam based on camera images. Seam type determination 1324 may receive user input 1304 to assist with the determination of the type of the seam. User input 1304 may include a user specifying or confirming the type of the seam via a user interface.

[0142] Target surface characteristics determination 1320 may include surface profile determination 1326. Surface profile determination 1326 may receive historical parameters information 1390 to assist with determination of the surface profile or expected surface profile. Historical parameters information 1390 may include parameters used to control exemplary robotic system 1300 or another robotic system to apply material onto the seam. The parameters may include parameters used by a spraying end effector and the one or more fine positioning systems 1332 to apply material onto the target surface. Parameters may include arm speed, desired thickness, spraying pressure, angle of the spraying end effector, spray shape of the spraying end effector, type of material applied, distance from the target surface when material was being sprayed, passes / paths taken by the spraying end effector, etc. Historical parameters information 1390 may include parameters used to control exemplary robotic system 1300 or another robotic system to create the target surface. Historical parameters information 1390 may include timing information, which may indicate how long ago the material was applied onto the seam. Surface profile determination 1326 may receive sensor data from sensor(s) 1302 (e.g., camera images, depth images, etc.) to assist with determination of surface profile. Surface profile determination 1326 may use computer vision and / or machine learning to identify the features of the surface profile (e.g., location of humps) based on camera images. Surface profile determination 1326 may use signal processing and / or machine learning to identify the features of the surface profile (e.g., location of humps) based on depth images.

[0143] In some embodiments, sensor(s) 1302 may include a depth / distance scanner that can offer depth data, e.g., in the form of a three-dimensional depth map of a target surface, plotting depth / distance data across a first dimension and a second dimension, or in the form of two- dimensional depth data, plotting depth / distance data along a line in the first dimension and the second dimension. Target surface characteristics determination 1320 may include extractfeatures from scan 1398. Extract features from scan 1398 may process the depth data and extract one or more features about the target surface. Examples of features can include location of peaks, location of valleys, number of peaks, number of valleys, variability or variance of depth / distance, magnitude of a peak, size of a peak, magnitude of a valley, size of a valley, standard deviation of depth / distance, one or more statistics, mean depth / distance, number of sharp edges, amount of sharp edges, location of sharp edges, roughness, smoothness, etc. Extract features from scan 1398 may apply smoothing to the depth data before extracting features from the depth data. Extract features from scan 1398 may fit the depth data to a best- fit model corresponding to a particular type of seam before extracting features based on one or more model coefficients of the fitted data. Extract features from scan 1398 may input the depth / distance data into a machine learning model (e.g., a convolutional neural network, a vision transformer model, etc.) to extract one or more features about the target surface. Extract features from scan 1398 may input the depth / distance data into a digital signal processing algorithm (e.g., computer vision algorithms, gradient operators, Laplacian operators, Histogram of Oriented Gradients, Gabor filters, wavelet transforms, Canny edge detection, feature histograms for 3D geometric feature extraction, Hough transforms, etc.) to determine one or more features about the target surface. In some cases, extract features from scan 1398 may generate a segmentation map or a classification map as features, where pixels of the map may indicate a certain classification. Examples of classifications can include, e.g., peak, valley, smooth, rough, do-not-sand, sand hard, sand light, etc.).

[0144] One or more characteristics (and / or features) determined by target surface characteristics determination 1320 may be provided to sanding plan determination 1388. Sanding plan determination 1388 has the technical task to create a plan to remove material from the target surface based on the one or more characteristics (and / or features). Sanding plan determination 1388 may determine a sanding plan that is best suited to create a visually flat surface based on the one or more characteristics (and / or features). A sanding plan can include one or more passes of sanding end effector 1334. Exemplary passes and associated parameters for executing the passes are illustrated in FIGS. 15-25, and 35-36.

[0145] Determining a sanding plan by sanding plan determination 1388 may include selecting one or more passes from predefined passes to be made by the sanding end effector 1334 based on the one or more characteristics. Determining a sanding plan by sanding plan determination 1388 may include determining a sanding plan based on the one or more characteristics (and / or features). Determining a sanding plan by sanding plan determination 1388 may include selecting a sanding plan from predefined sanding plans, e.g., different sanding plans 1484.Different sanding plans 1484 may differ in the number of passes 1492 to be performed by the sanding end effector 1334 in the sanding plan. Different sanding plans 1484 may have passes of different types of passes 1494 to be performed by the sanding end effector 1334 in the sanding plan. Different sanding plans 1484 may have passes at different relative distances to the centerline of a seam 1496 be performed by the sanding end effector 1334 in the sanding plan.

[0146] In embodiments where extract features from scan 1398 is implemented in target surface characteristics determination 1320, sanding plan determination 1388 may vary number of passes 1492 and / or types of passes 1494 based on the one or more features extracted by extract features from scan 1398. A type of pass may be selected based on a roughness of the target surface. A number of passes may be adjusted based on the roughness of the target surface. In some cases, sanding plan determination 1388 may adjust relative distance of passes to centerline of a seam 1496 based on the one or more features extracted by extract features from scan 1398. The relative distance of passes to centerline of a seaml496 may be offset based on the location of peaks.

[0147] Sanding plan determination 1388 may determine a sanding plan based on the type of seam. Sanding plan determination 1388 may determine a sanding plan based on the surface profile. Sanding plan determination 1388 may determine a sanding plan based on an expected surface profile and / or expected characteristics of the surface profile.

[0148] The sanding plan determined by sanding plan determination 1388 may be output to a user via user input / output device(s) 1 64. Different sanding plans 1484 may be output to user via user input / output device(s) 1364.

[0149] The sanding plan determined by sanding plan determination 1388 may be provided to parameters determination 1386. Parameters determination 1386 may determine tool path parameters for controlling one or more of: one or more coarse positioning systems 1330, one or more fine positioning systems 1332, and sanding end effector 1334. The tool path parameters may be determined based on the sanding plan. The tool path parameters may be determined based on the line determined indicating the centerline of the seam provided by target surface characteristics determination 1320. The tool path parameters may be determined based on one or more characteristics of the target surface provided by target surface characteristics determination 1320. The tool path parameters may be determined based on one or more features of the target surface provided by extract features from scan 1398 implemented in target surface characteristics determination 1320. The tool path parameters may be determined based on information from mapping and localization 1308. Different parameters 1488 may includelocations / paths of sanding end effector in three-dimensional space 1412 in the frame of reference of exemplary robotic system 1300. The locations may form a path or a line in the three-dimensional space representing movement of the sanding end effector in the three- dimensional space. Different parameters 1488 may include speed of robotic arm 1414 (e.g., speed of movement of one or more fine positioning systems 1332). Different parameters 1488 may include force of the sanding end effector 1416 to be applied onto the target surface. Different parameters 1488 may include rotational speed of sanding end effector 1418. Different parameters 1488 may include operating mode of sanding end effector 1420 (e.g., random orbital mode, orbital mode, no orbital movement, etc.). Different parameters 1488 may include different sandpaper grit of sanding end effector 1422. Parameters determination 1386 may determine parameters according to the determined sanding plan and the line indicating the centerline of the seam provided by target surface characteristics determination 1320. The parameters may be set by parameters determination 1386 to cause the passes to be executed at specific distances from the line. The parameters may be set by parameters determination 1386 to cause the passes to be executed to not extend beyond the extent / length of the line. The parameters may be converted into signals to be transmitted to one or more of: one or more coarse positioning systems 1330, one or more fine positioning systems 1332, and sanding end effector 1334.

[0150] The parameters determined by parameters determination 1386 may be output to user via user input / output device(s) 1364. Different parameters 1488 may be output to user via user input / output device(s) 1364.

[0151] In embodiments where extract features from scan 1398 is implemented in target surface characteristics determination 1320, parameters determination 1386 may determine different parameters 1488 based on the one or more features extracted by extract features from scan 1398. In one example, rotational speed of sanding end effector 1418 may be adjusted based on the magnitude of a peak. In one example, speed of the robotic arm 1414 may be adjusted based on the magnitude of a peak. In one example, force of sanding end effector 1416 may be adjusted based on the magnitude of a peak. In one example, operating mode of sanding end effector 1420 may be adjusted based on the size of a peak. In one example, operating mode of sanding end effector 1420 may be adjusted based on roughness. In one example, locations of sanding end effector in 3D space 1412 may be adjusted based on a location of a peak. It is envisioned that other parameters illustrated herein may be adjusted based on the one or more features extracted by extract features from scan 1398.

[0152] Exemplary sandins passes that can be used to form different sanding plans

[0153] FIGS. 15-25, and 35-36 illustrate a variety of passes that can form different sanding plans. In each figure, the line indicating the centerline of a seam is shown as line 1502. A portion of the target surface having a portion of a seam is shown as coupon 1504. While START and END are depicted in FIGS. 15-25, and 35-36, the timing or order of the passes may be reversed. In some cases, the passes may be performed in an order that is different from what is depicted. In some cases, the passes may be performed out of order. In some cases, the passes of a sanding plan may be performed by a single robotic system. In some cases, the passes of a sanding plan may be performed by a plurality of robotic systems, each performing a subset of the passes of the sanding plan. The timing and order may depend on whether the fine positioning system of the robotic system is already near a start point or an end point.

[0154] FIGS. 15-17 illustrate passes which may form a sanding plan suitable for removing material applied to a butt seam.

[0155] FIG. 15 illustrates exemplary passes of a sanding end effector, according to some aspects of the disclosed technology. The passes may be used in a sanding plan determined for sanding a butt seam. The passes may include overlapping passes 1508 at a first distance from the line 1502 to remove a center hump that may be present in the surface profile. The first distance may be set at a value to ensure that overlapping passes 1508 overlap each other. Overlapping passes 1508 may overlap each other to remove more material from the target surface than non-overlapping passes. In some cases, overlapping passes 1508 may not overlap each other. The passes may include two side passes 1510 at a second distance from the line 1502 remove side humps that may be present in the surface profile. The second distance may be larger than the first distance.

[0156] FIG. 16 illustrates exemplary passes of a sanding end effector, according to some aspects of the disclosed technology. The passes may be used in a sanding plan determined for sanding a butt seam. The passes may include one or more smoothing passes 1606 to smooth or flatten an area having line 1502 as a centerline of the area. The area may have a width that is defined by a distance from the line (e.g., the width of the area may be twice the distance). One or more smoothing passes 1606 may cover the area. One or more smoothing passes 1606 may overlap each other to remove more material from the target surface than non-overlapping passes. In some cases, one or more smoothing passes 1606 may not overlap each other. One or more smoothing passes 1606 create a visually flat surface. One or more smoothing passes 1606 may remove material in a way that is free of visual artifacts (e.g., unwanted lines or grid like artifacts). Additional variations of one or more smoothing passes 1606 are illustrated in FIGS. 20A-J.

[0157] FIG. 17 illustrates exemplary passes of a sanding end effector, according to some aspects of the disclosed technology. The passes may be used in a sanding plan determined for sanding a butt seam. The passes may include feathering passes 1702 at a third distance from the line 1502 to remove material (e.g., splatter from spraying the material) that may be present on the target surface. The material being removed may be at or near the interface of the material applied to cover the seam and the paper that is on the drywall board. The third distance may be larger than the first distance and the second distance. In some cases, feathering passes 1702 may be optional.

[0158] FIG. 18 illustrates exemplary passes of a sanding end effector and exemplary parameters for controlling a positioning system and a sanding end effector, according to some aspects of the disclosed technology. FIG. 19 illustrates exemplary passes of a sanding end effector and exemplary parameters for controlling a positioning system and a sanding end effector, according to some aspects of the disclosed technology. FIG. 19 illustrates additional details of the passes previously shown in FIG. 15. As depicted, the passes may start at point 1802, and end at point 1816.

[0159] The line between point 1806 and point 1808 may form a first one of the overlapping passes 1508. The first one of the overlapping passes 1508 may make contact with the target surface (shown as coupon 1504) and can move in a first direction at the distance from line 1906 (e.g., a distance from line 1502). The line between point 1810 and point 1810 may form a second one of the overlapping passes 1508. The second one of the overlapping passes 1508 may make contact with the target surface (shown as coupon 1504) and can move in a second direction (opposite of the first direction) at the distance from line 1906. The first one of the overlapping passes 1508 and the second one of the overlapping passes 1508 may have an overlap 1904. The overlapping passes 1508 may move in a direction that is parallel to line 1502.

[0160] The line between point 1808 and point 1810 may form a first transitional pass of the sanding end effector making contact with the target surface (shown as coupon 1504). The first transitional pass may connect an end point of the first one of the overlapping passes 1508 with a beginning point of the second one of the overlapping passes 1508.

[0161] The line between point 1802 and point 1804 may form a first one of the side passes 1510 at distance from line 1902 (e.g., a distance from line 1502). The first one of the side passes 1510 may make contact with the target surface (shown as coupon 1504). The first one of the side passes 1510 may move in the second direction at the distance from line 1902. The line between point 1814 and point 1816 may form a second one of the side passes 1510 at distancefrom line 1902. The second one of the side passes 1510 may make contact with the target surface (shown as coupon 1504). The second one of the side passes 1510 may move in the first direction at the distance from line 1902. The side passes 1510 may move in a direction that is parallel to line 1502. Distance from line 1902 is significantly greater than distance from line 1906.

[0162] The line between point 1804 and point 1806 may form a second transitional pass of the sanding end effector making contact with the target surface (shown as coupon 1504). The second transitional pass may connect an end point of the first one of the side passes 1510 with a beginning point of the first one of the overlapping passes 1508. The line between point 1812 and point 1814 may form a third transitional pass of the sanding end effector making contact with the target surface. The third transitional pass may connect an end point of the second one of the overlapping passes 1508 with a beginning point of the second one of the side passes 1510.

[0163] Various types of passes illustrated in FIGS. 18-19 may be associated with different parameters because different types of passes may be designed to remove material from the target surface differently. Different types of passes may be designed with different goals. Overlapping passes such as overlapping passes 1508 may be designed to remove more material from the target surface than side passes 1510. In some embodiments, a transitional pass may remain in contact with the target surface because lifting off may spread dust to the environment and / or take too much time. A transitional pass may be designed to move the sanding end effect from one pass to another pass as quickly as possible without removing a lot of material on the way to the next pass. With such a goal, parameters for the transitional pass may be set differently than overlapping passes 1508 and / or side passes 1510. For example, the speed of the robotic arm may be faster / higher for the transitional pass than overlapping passes 1508 and / or side passes 1510. For example, the rotational speed of the sanding end effector may be set slower / lower (e.g., set at a lower setting) for the transitional pass than overlapping passes 1508 and / or side passes 1510. For example, the force to be applied by the sanding end effector onto the target surface may be set lower (e.g., less force) for the transitional pass than overlapping passes 1508 and / or side passes 1510.

[0164] FIG. 20A-J illustrates exemplary variations of smoothing passes of a sanding end effector and exemplary parameters for controlling a positioning system and a sanding end effector, according to some aspects of the disclosed technology. The smoothing passes may span across or cover at least a portion of an area defined by distance from line 2070 (e.g., a distance from line 1502). Line 1502 may be a centerline of the area being covered by thesmoothing passes. In some cases, smoothing passes may include a combination of passes (overlapping each other) having different patterns to create a visually smooth surface. The area may have a width that is twice the distance from line 1502. The area may have a length that is the length of line 1502 indicating the length of the seam. Distance from line 2070 may be the same as distance from line 1902. Distance from line 2070 may be greater than distance from line 1902. The area may not extend beyond distance from line 2070.

[0165] A smoothing pass may be designed to lightly remove material from the surface as a. With such a goal, parameters for the transitional pass may he set differently than overlapping passes 1508 and / or side passes 1510. For example, the speed of the robotic arm may be faster / higher for the smoothing pass than overlapping passes 1508 and / or side passes 1510. For example, the rotational speed of the sanding end effector may be set slower / lower (e.g., set at a lower setting) for the smoothing pass than overlapping passes 1508 and / or side passes 1510. For example, the force to be applied by the sanding end effector onto the target surface may be set lower (e.g., less force) for the smoothing pass than overlapping passes 1508 and / or side passes 1510.

[0166] FIG. 20A illustrates smoothing passes that run perpendicularly to line 1502. The line between point 2002 and point 2004 may form a first one of the smoothing passes making contact with the target surface. The first one of the smoothing passes may move in a direction along a line that is perpendicular to line 1502. The line between point 2006 and point 2008 may form a second one of the smoothing passes making contact with the target surface. The second one of the smoothing passes may move in a direction along a line that is perpendicular to line 1502. The first one of the smoothing passes may move in an opposite direction as the second one of the smoothing passes. The line between point 2004 and point 2006 may form a transitional pass making contact with the target surface and connecting an end point of the first one of the smoothing passes with a beginning point of the second one of the smoothing passes. This transitional pass may have similar characteristics as the transitional passes illustrated in FIGS. 18-19. The smoothing passes may include further smoothing pass(es) and transitional pass(s). In some cases, adjacent smoothing passes may have overlap 2080. In some cases, adjacent smoothing passes may not overlap each other. The length of the transitional pass(s) may be adjusted to ensure a certain amount of overlap or non-overlap between adjacent smoothing passes.

[0167] FIG. 20B illustrates smoothing passes that run along lines which are oblique to line 1502. The smoothing passes may include one or more passes of the sanding end effector making contact with the target surface and moving along one or more lines that are oblique toline 1502. In some cases, adjacent smoothing passes may overlap each other. In some cases, adjacent smoothing passes may not overlap each other.

[0168] FIG. 20C illustrates randomized smoothing passes that run along lines which are oblique to line 1502. The smoothing passes may include one or more passes of the sanding end effector making contact with the target surface and moving along one or more lines that are oblique to line 1502. The oblique angle formed by line 1502 and a line that is oblique to line 1502 may include a random variation. The oblique angle may be allowed to randomly vary within a range of degrees. The length of a transitional pass connecting the smoothing passes may include a random variation. The length of the transitional pass may be allowed to randomly vary within a range of centimeters. Randomization can help avoid leaving machine-like artifacts on the target surface and offer a more natural visual look to the target surface. In some cases, adjacent smoothing passes may overlap each other. In some cases, adjacent smoothing passes may not overlap each other.

[0169] In some embodiments, other types of randomized smoothing passes following a randomized path may be used to cover the area defined by distance from line 2070. The randomized path may represent a random walk between points of a grid within the area. The randomized path may connect a set of points that are randomly sampled in the area.

[0170] FIG. 20D illustrates smoothing passes that run perpendicularly to line 1502 and in the same direction. Transitional paths illustrated in FIG. 20D may connect adjacent smoothing passes (e.g., an end point of one smoothing pass with a beginning point of a second smoothing pass) and may cross over line 1502. Transitional paths illustrated in FIG. 20D may have similar characteristics as the transitional passes illustrated in FIGS. 18-19.

[0171] FIG. 20E illustrates a curved smoothing pass that avoids having comers in the path of the smoothing pass. The curved smoothing pass may make contact with the target surface and covers at least a portion of the area defined by distance from line 2070. The robotic arm in some cases may stop at a corner. By avoiding comers or an abrupt change in direction of the pass, the robotic arm may maintain a substantially constant speed, which in turn may enable the sanding end effector to a consistent amount of material at different points along the path. Maintaining a constant arm speed may result in a more natural and / or smooth surface.

[0172] FIG. 20F illustrates mirrored versions of curved smoothing passes that avoids having comers in the path of the smoothing pass. The curved smoothing passes mirror each other about line 1502. One of the curved smoothing pass may be a mirrored version of the other curved smoothing pass flipped about the line 1502. The curved smoothing passes may make contact with the target surface and covers more of the area defined by distance from line 2070 than thearea covered by a single curved smoothing pass. The curved smoothing passes may overlap each other.

[0173] FIG. 20G illustrates a curled smoothing pass that avoids having corners in the path of the smoothing pass. The curled smoothing pass may make contact with the target surface and covers at least a portion of the area defined by distance from line 2070. In some cases, a mirrored version flipped about line 1502 may be added (e.g., similar to the example shown in FIG. 20F).

[0174] FIG. 20H illustrates a spiraling smoothing pass that follows a square shaped spiral. The spiraling smoothing pass may make contact with the target surface and covers at least a portion of the area defined by distance from line 2070.

[0175] FIG. 20H illustrates a spiraling smoothing pass that follows a square with rounded comers shaped spiral to avoid having corners in the path of the smoothing pass. The spiraling smoothing pass may make contact with the target surface and covers at least a portion of the area defined by distance from line 2070.

[0176] FIG. 201 illustrates a spiraling smoothing pass that follows a square with rounded comers shaped spiral to avoid having corners in the path of the smoothing pass. The spiraling smoothing pass may make contact with the target surface and covers at least a portion of the area defined by distance from line 2070.

[0177] FIG. 20J illustrates a spiraling smoothing pass that follows a circular shaped spiral to avoid having comers in the path of the smoothing pass. The spiraling smoothing pass may make contact with the target surface and covers at least a portion of the area defined by distance from line 2070.

[0178] For spiraling smoothing passes, the pass may start on the outside of the spiral and end in the center of the spiral. In some cases, the pass may start in the center of the spiral and end on the outside of the spiral.

[0179] FIG. 21 illustrates exemplary passes of a sanding end effector and exemplary parameters for controlling a positioning system and a sanding end effector, according to some aspects of the disclosed technology. The passes may include feathering passes 1702. A line from point 2102 to point 2104 may form a first feathering pass of feathering passes 1702. The first feathering pass of the sanding end effector may make contact with the target surface and move in a first direction at distance from line 2180 (e.g., a distance from line 1502). A line from point 2106 to point 2108 may form a second feathering pass of feathering passes 1702. The second feathering pass of the sanding end effector may make contact with the target surface and move in a second direction (opposite of the first direction) at distance from line 2180.

[0180] Distance from line 2180 may be greater than distance from line 2070. Distance from line 2180 may be greater than distance from line 1902 and distance from line 1906.

[0181] The sanding end effector may be lifted off from the target surface (illustrated as coupon 1504) by a positioning system (e.g., a fine positioning system) between point 2104 and point 2016. The sanding end effector may be lifted off from the target surface (illustrated as coupon 1504) by a positioning system (e.g., a fine positioning system) between an end point of the first feathering pass and a starting point of the second feathering pass. While lifting off the sanding end effector by the positioning system can take time to execute, it may be desirable to not remove any material from the target surface between the feathering passes.

[0182] The material being removed by feathering passes 1702 may be at or near the interface of the material applied to cover the seam and the paper that is on the drywall board. Distance from line 2180 may be about half or a little over half of a width of the material that is applied to the seam (e.g., width WB or width WF as shown in FIGS. 8A-8B, 9A-9B, 11A-11B, and 12A-12B). The goal of feathering passes 1702 is to remove splattering of material at the interface while not damaging the paper layer of the dry wall boards. Arm speeds used for feathering passes 1702 may be faster than arm speeds used for passes to remove hump(s) and / or smoothing passes. Rotational speeds of the sanding end effector used for feathering passes 1702 may be slower than rotational speeds used for passes to remove hump(s) and / or smoothing passes. Forces applied by the sanding end effector onto the target surface (illustrated as coupon 1504) used for feathering passes 1702 may be lower than forces used for passes to remove hump(s) and / or smoothing passes.

[0183] FIGS. 22-23 illustrate passes which may form a sanding plan suitable for removing material applied to a factory seam.

[0184] FIG. 22 illustrates exemplary passes of a sanding end effector, according to some aspects of the disclosed technology. The passes may be used in a sanding plan determined for sanding a factory seam. The passes may include overlapping passes 2202 at a first distance from the line 1502 to remove a center hump or a plateau-like region that may be present in the surface profile. The first distance may be set at a value to ensure that overlapping passes 2202 overlap each other. Overlapping passes 2202 may overlap each other to remove more material from the target surface than non-overlapping passes. In some cases, overlapping passes 2202 may not overlap each other.

[0185] FIG. 23 illustrates exemplary passes of a sanding end effector, according to some aspects of the disclosed technology. The passes may be used in a sanding plan determined for sanding a factory seam. The passes may include feathering passes 2302 at a third distance fromthe line 1502 to remove material (e.g., splatter from spraying the material) that may be present on the target surface. The material being removed may be at or near the interface of the material applied to cover the seam and the paper that is on the drywall board. The third distance may be larger than the first distance associated with overlapping passes 2202. In some cases, feathering passes 2302 may be optional.

[0186] FIG. 24 illustrates exemplary passes of a sanding end effector and exemplary parameters for controlling a positioning system and a sanding end effector, according to some aspects of the disclosed technology. FIG. 24 illustrates additional details of the passes previously shown in FIG. 22. As depicted, the passes may start at point 2402, and end at point 2408.

[0187] The line between point 2402 and point 2404 may form a first one of the overlapping passes 2202. The first one of the overlapping passes 2202 may make contact with the target surface (shown as coupon 1504) and can move in a first direction at the distance from line 2490 (e.g., a distance from line 1502). The line between point 2406 and point 2408 may form a second one of the overlapping passes 2202. The second one of the overlapping passes 2202 may make contact with the target surface (shown as coupon 1504) and can move in a second direction (opposite of the first direction) at the distance from line 2490. The first one of the overlapping passes 2202 and the second one of the overlapping passes 2202 may have an overlap 2480. The overlapping passes 2202 may move in a direction that is parallel to line 1502.

[0188] The line between point 2404 and point 2406 may form a transitional pass of the sanding end effector making contact with the target surface (shown as coupon 1504). The transitional pass may connect an end point of the first one of the overlapping passes 2202 with a beginning point of the second one of the overlapping passes 2202. In some embodiments, a transitional pass may remain in contact with the target surface because lifting off may spread dust to the environment and / or take too much time. A transitional pass may be designed to move the sanding end effect from one pass to another pass as quickly as possible without removing a lot of material on the way to the next pass. With such a goal, parameters for the transitional pass may be set differently than overlapping passes 2202. For example, the speed of the robotic arm may be faster / higher for the transitional pass than overlapping passes 2202. For example, the rotational speed of the sanding end effector may be set slower / lower (e.g., set at a lower setting) for the transitional pass than overlapping passes 2202. For example, the force to be applied by the sanding end effector onto the target surface may be set lower (e.g., less force) for the transitional pass than overlapping passes 2202.

[0189] FIG. 25 illustrates exemplary passes of a sanding end effector and exemplary parameters for controlling a positioning system and a sanding end effector, according to some aspects of the disclosed technology. The passes may include feathering passes 2302. A line from point 2502 to point 2504 may form a first feathering pass of feathering passes 2302. The first feathering pass of the sanding end effector may make contact with the target surface and move in a first direction at distance from line 2590 (e.g., a distance from line 1502). A line from point 2506 to point 2508 may form a second feathering pass of feathering passes 2302. The second feathering pass of the sanding end effector may make contact with the target surface and move in a second direction (opposite of the first direction) at distance from line 2590.

[0190] Distance from line 2590 may be greater than distance from line 2490.

[0191] The sanding end effector may be lifted off from the target surface (illustrated as coupon 1504) by a positioning system (e.g., a fine positioning system) between point 2504 and point 2506. The sanding end effector may be lifted off from the target surface (illustrated as coupon 1504) by a positioning system (e.g., a fine positioning system) between an end point of the first feathering pass and a starting point of the second feathering pass. While lifting off the sanding end effector by the positioning system can take time to execute, it may be desirable to not remove any material from the target surface between the feathering passes.

[0192] The material being removed by feathering passes 2302 may be at or near the interface of the material applied to cover the seam and the paper that is on the drywall board. Distance from line 2590 may be about half or a little over half of a width of the material that is applied to the seam (e.g., width WB or width WF as shown in FIGS. 8A-8B, 9A-9B, 1 1A-11B, and 12A-12B). The goal of feathering passes 2302 is to remove splattering of material at the interface while not damaging the paper layer of the dry wall boards. Arm speeds used for feathering passes 2302 may be faster than arm speeds used for passes to remove hump(s). Rotational speeds of the sanding end effector used for feathering passes 2302 may be slower than rotational speeds used for passes to remove hump(s). Forces applied by the sanding end effector onto the target surface (illustrated as coupon 1504) used for feathering passes 2302 may be lower than forces used for passes to remove hump(s).

[0193] In some cases, the sensed centerline may be offset from the actual centerline, due to the joint tape being applied at a slight offset from the actual centerline. In some cases, the location of humps to be sanded down is not exactly at the expected distance from the centerline (e.g., due to tip wear, tip misalignment, etc.). Sanding along a straight tool path that is not aligned at the peak of the hump but at the slope of the hump may cause over removal of material in the valley, leading to an uneven surface. To alleviate the issue, a sinusoid and / or a square wavecan be superimposed or overlaid on the straight tool path, as seen in the passes illustrated in FIGS. 35-36. The passes can avoid over removal of material by allowing sanding to occur over a wider region along the straight tool path to adequately remove the hump, even if the sensed centerline is offset or that the hump is not located exactly at the expected distance from the centerline.

[0194] Exemplary sandins results achieving a visually flat surface profile

[0195] FIGS. 26 A and 26B illustrate surface profiles of a butt seam having material deposited thereon before sanding and after sanding, according to some aspects of the disclosed technology. FIGS. 27A and 27B illustrate surface profiles of a factory seam having material deposited thereon before sanding and after sanding, according to some aspects of the disclosed technology. Resulting surface profiles after sanding using a sanding profile illustrated herein may appear visually flat due to the lack of humps, even if the surface profiles are not completely flat in height.

[0196] Potential solutions to address degradation of sandpaper and reducing waste

[0197] FIG. 28 is a block diagram illustrating components of an exemplary robotic system 1300, according to some aspects of the disclosed technology. Control system 1310 may include one or more components to track and address degradation of sandpaper on the sanding end effector. By appropriately compensating or addressing degradation of sandpaper, less waste is produced because fewer sandpaper pieces would be prematurely thrown away.

[0198] Control system 1310 may include sandpaper degradation tracker 2802. In some embodiments, sandpaper degradation tracker 2802 may receive historical parameters information 1390 and use the historical parameters information 1390 to determine an expected degradation of sandpaper used by the sanding end effector and a model of the sandpaper. The model may receive historical parameters information 1390 as input and output the expected degradation of sandpaper. In some cases, historical parameters information 1390 may track usage information of the sandpaper. The usage information may be used to determine an expected degradation of the sandpaper. In some embodiments, sandpaper degradation tracker 2802 may receive sensor data from sensor(s) 1302 sensing the target surface during and / or after the sanding end effector has been used (e.g., to remove a portion of material from the target surface). The sensor data may provide information about the efficacy of the sandpaper on the target surface for a given set of parameters. For the same set of parameters, sandpaper with a higher degree of degradation may remove less material from the target surface than sandpaper with a lesser degree of degradation. The sensor data may measure how much material the sandpaper was able to remove. The sensor data can be compared against a baseline to determinethe efficacy. Sandpaper degradation tracker 2802 may determine an expected degradation of sandpaper based on the parameters used (e.g., from historical parameters information 1390) and the sensor data. In some embodiments, sandpaper degradation tracker 2802 may receive features of the target surface from target surface characteristics determination 1320 (e.g., extract features from scan 1398) to determine an expected degradation of sandpaper. The features may provide information about the efficacy of the sandpaper on the target surface for a given set of parameters and allow sandpaper degradation tracker 2802 to assess the degradation of the sandpaper. In some embodiments, sandpaper degradation tracker 2802 may receive user input 1304 that may provide information about the degradation of the sandpaper. A user may indicate in user input 1304 that the sandpaper has been changed to a new piece of sandpaper. Sandpaper degradation tracker 2802 may reset the expected degradation in accordance with user input 1304.

[0199] The expected degradation determined by sandpaper degradation tracker 2802 may be provided to recommendation engine 2804. Recommendation engine 2804 may recommend one or more actions or cause one or more actions to be taken based on the expected degradation.

[0200] In some embodiments, recommendation engine 2804 may determine that the expected degradation crosses a degradation threshold. Recommendation engine 2804 may output a recommendation to a user (e.g., via user input / output device(s) 1364) to change the sandpaper in response to determining that the expected degradation crosses the degradation threshold.

[0201] In some embodiments, recommendation engine 2804 may determine that the expected degradation crosses a degradation threshold. Recommendation engine 2804 may transmit further signals to one or more of the positioning system and the sanding end effector in response to determining that the expected degradation crosses the degradation threshold. The further signals cause the sanding end effector to perform a dust removal operation (e.g., using dust removal tool 356 of FIG. 3).

[0202] The expected degradation determined by sandpaper degradation tracker 2802 may be provided to parameters determination 1386. Parameters determination 1386 may determine parameters for a sanding plan in a way to compensate for the expected degradation.

[0203] In some embodiments, parameters determination 1386 may increase an amount of force to be applied by the sanding end effector onto the target surface to compensate for the expected degradation. In some embodiments, parameters determination 1386 may decrease an arm speed of the positioning system when the sanding end effector makes contact with the target surface to compensate for the expected degradation. In some embodiments, parameters determination1386 may increase a rotational speed of the sanding end effector when the sanding end effector makes contact with the target surface to compensate for the expected degradation.

[0204] Accounting for different types of intersections formed by seams

[0205] In some cases, parameters determination 1386 of FIGS. 13-14 and 28 may determine parameters according to the sanding plan, the line indicating a centerline of a seam, and a type of intersection formed by the seam with a further seam.

[0206] The parameters may be set by parameters determination 1386 to cause the passes to be executed for a seam that forms a T-shaped intersection with another seam to not go past a centerline of the other seam. FIG. 29 illustrates exemplary passes of a sanding end effector and exemplary parameters for controlling a positioning system and a sanding end effector, according to some aspects of the disclosed technology. Passes for removing material from a butt seam 802 stop at a centerline of the factory seam 806 when the butt seam 802 forms a T- shaped intersection with the factory seam 806.

[0207] The parameters may be set by parameters determination 1386 to cause the passes to be executed for a seam that forms a plus-sign-shaped intersection with another seam to go past and over a centerline of the other seam. FIG. 30 illustrates exemplary passes of a sanding end effector and exemplary parameters for controlling a positioning system and a sanding end effector, according to some aspects of the disclosed technology. Passes for removing material from butt seam 852 do not stop at and goes past a centerline of the factory seam 862 when the butt seam 852 forms a plus-sign-shaped intersection with the factory seam 862.

[0208] Exemplary methods for targeted removal of material

[0209] FIG. 31 is a flow diagram illustrating a method 3100 for targeted removal of material, according to some aspects of the disclosed technology. Method 3100 may be carried out by one or more parts of a control system described herein. Method 3100 may be executed by one or more computing devices 3400 of FIG. 34.

[0210] In 3102, a control system may receive sensor data from one or more sensors sensing a target surface, the target surface having a seam, and material applied onto the seam.

[0211] In 3104, the control system may determine characteristics of the target surface based on the sensor data, the characteristics comprising a line indicating a centerline of the seam, and a type of the seam.

[0212] In 3106, the control system may determine a first sanding plan based on the type of the seam, wherein the first sanding plan comprises at least a subset of: first overlapping passes at a first distance from the line, second passes at a second distance from the line, and one or more third smoothing passes covering an area having the line as a centerline of the area.

[0213] In 3108, the control system may determine parameters for controlling one or more of the positioning system and the sanding end effector according on the first sanding plan and the line.

[0214] In 3110, the control system may transmit signals to one or more of the positioning system and the sanding end effector according to the parameters, wherein the signals cause the sanding end effector to remove a portion of the material from the target surface.

[0215] FIG. 32 is a flow diagram illustrating a method 3200 for targeted removal of material, according to some aspects of the disclosed technology. Method 3200 may he carried out hy one or more parts of a control system described herein. Method 3200 may be executed by one or more computing devices 3400 of FIG. 34.

[0216] In 3202, a control system may receive sensor data from one or more sensors sensing a target surface, the target surface having a seam, and material applied onto the seam.

[0217] In 3204, the control system may determine characteristics of the target surface based on the sensor data, the characteristics comprising a surface profile of the target surface and a line indicating a centerline of the seam.

[0218] In 3206, the control system may determine a first sanding plan based on the surface profile, wherein the first sanding plan comprises at least a subset of: first overlapping passes at a first distance from the line, second passes at a second distance from the line, and third smoothing passes covering an area having the line as a centerline of the area.

[0219] In 3208, the control system may determine parameters for controlling one or more of the positioning system and the sanding end effector according on the first sanding plan and the line.

[0220] In 3210, the control system may transmit signals to one or more of the positioning system and the sanding end effector according to the parameters, wherein the signals cause the sanding end effector to remove a portion of the material from the target surface.

[0221] FIG. 33 is a flow diagram illustrating a method 3300 for targeted removal of material, according to some aspects of the disclosed technology. Method 3300 may be carried out by one or more parts of a control system described herein. Method 3300 may be executed by one or more computing devices 3400 of FIG. 34.

[0222] In 3302, a control system may receive parameters used for controlling one or more of a positioning system and a spraying end effector to spray material onto a seam of a target surface.

[0223] In 3304, the control system may receive a line indicating the seam.

[0224] In 3306, the control system may determine expected characteristics of the target surface based on the parameters.

[0225] In 3308, the control system may determine a first sanding plan based on the expected characteristics, wherein the first sanding plan comprises at least a subset of: first overlapping passes at a first distance from the line, second passes at a second distance from the line, and third smoothing passes covering an area having the line as a centerline of the area.

[0226] In 3310, the control system may determine parameters for controlling one or more of the positioning system and the sanding end effector according on the first sanding plan and the line; and

[0227] In 3312, the control system may transmit signals to one or more of the positioning system and the sanding end effector according to the parameters, wherein the signals cause the sanding end effector to remove a portion of the material from the target surface.

[0228] FIG. 37 is a flow diagram illustrating a method 3700 for targeted removal of material, according to some aspects of the disclosed technology. Method 3700 may be carried out by one or more parts of a control system described herein. Method 3700 may be executed by one or more computing devices 3400 of FIG. 34.

[0229] In 3702, a control system may optionally determine starting conditions (e.g., perform one or more operations associated with one or more of seam centerline determination 1322, seam type determination 1324, and surface profile determination 1326 of the FIGS.).

[0230] In 3704, the control system may cause a depth / distance sensor to scan the target surface and receive depth / distance data from the sensor.

[0231] In 3706, the control system may extract one or more features based on the depth / distance data (e.g., perform operations associated with extract features from scan 1398 of the FIGS.).

[0232] In 3730, the control system may assess based on the features whether the target surface has sufficient quality. If yes, method 3700 proceeds to END in 3720. If no, method 3700 proceeds to 3708.

[0233] In 3708, the control system may determine sanding profile parameters based on the one or more features extracted in 3706 (e.g., perform operations associated with one or more of sanding plan determination 1388 and parameters determination 1386 of the FIGS.)

[0234] In 3710, the control system may transmit signals to one or more of the positioning system and the sanding end effector according to the sanding profile parameters, wherein the signals cause the sanding end effector to remove a portion of the material from the target surface.

[0235] After sanding, method 3700 may return to scan the target surface in 3704.

[0236] Exemplary computing device

[0237] FIG. 34 is a block diagram of an apparatus or a system, e.g., an exemplary computing device 3400, according to some embodiments of the disclosure. One or more computing devices 3400 may be used to implement the functionalities described with the FIGS, and herein. A number of components are illustrated in the FIG. 34. can be included in the computing device 3400, but any one or more of these components may be omitted or duplicated, as suitable for the application. In some embodiments, some or all of the components included in the computing device 3400 may be attached to one or more motherboards. In some embodiments, some or all of these components are fabricated onto a single system on a chip (SoC) die. Additionally, in various embodiments, the computing device 3400 may not include one or more of the components illustrated in FIG. 34, and the computing device 3400 may include interface circuitry for coupling to the one or more components. For example, the computing device 3400 may not include a display device 3406, and may include display device interface circuitry (e.g., a connector and driver circuitry) to which a display device 3406 may be coupled. In another set of examples, the computing device 3400 may not include an audio input device 3418 or an audio output device 3408 and may include audio input or output device interface circuitry (e.g., connectors and supporting circuitry) to which an audio input device 3418 or audio output device 3408 may be coupled.

[0238] The computing device 3400 may include a processing device 3402 (e.g., one or more processing devices, one or more of the same types of processing device, one or more of different types of processing device). The processing device 3402 may include electronic circuitry that process electronic data from data storage elements (e.g., registers, memory, resistors, capacitors, quantum bit cells) to transform that electronic data into other electronic data that may be stored in registers and / or memory. Examples of processing device 3402 may include a CPU, a GPU, a quantum processor, a machine learning processor, an artificial intelligence processor, a neural network processor, an artificial intelligence accelerator, an application specific integrated circuit (ASIC), an analog signal processor, an analog computer, a microprocessor, a digital signal processor, a field programmable gate array (FPGA), a tensor processing unit (TPU), a data processing unit (DPU), etc.

[0239] The computing device 3400 may include a memory 3404, which may itself include one or more memory devices such as volatile memory (e.g., DRAM), nonvolatile memory (e.g., read-only memory (ROM)), high bandwidth memory (HBM), flash memory, solid state memory, and / or a hard drive. Memory 3404 includes one or more non-transitory computer-readable storage media. In some embodiments, memory 3404 may include memory that shares a die with the processing device 3402.

[0240] In some embodiments, memory 3404 includes one or more non-transitory computer- readable media storing instructions executable to perform operations described herein, such as the method 3100 illustrated in FIG. 31, method 3200 illustrated in FIG. 32, method 3300 illustrated in FIG. 33, and method 3700 illustrated in FIG. 37.

[0241] Memory 3404 may store instructions that encode one or more exemplary parts. Exemplary parts, such as one or more parts of control system 334, and one or more parts of control system 1310, may be encoded as instructions and stored in memory 3404 are depicted. The instructions stored in the one or more non-transitory computer-readable media may be executed by processing device 3402.

[0242] In some embodiments, memory 3404 may store data, e.g., data structures, binary data, bits, metadata, files, blobs, etc., as described with the FIGS, and herein. Exemplary data, such as sensor data, user input, parameters, sanding plans, etc., may be stored in memory 3404.

[0243] In some embodiments, memory 3404 may store one or more machine learning models (and or parts thereof) that are used in at least one of the control system 1310 or in the robotic system 100 as illustrated in FIGS. 1-2, the robotic system 300 as illustrated in FIG. 3, and the robotic system 400 as illustrated in FIG. 4. Memory 3404 may store training data for training the one or more machine learning models. Memory 3404 may store input data, output data, intermediate outputs, intermediate inputs of one or more machine learning models. Memory 3404 may store instructions to perform one or more operations of the machine learning model. Memory 3404 may store one or more parameters used by the machine learning model. Memory 3404 may store information that encodes how processing units of the machine learning model are connected with each other.

[0244] In some embodiments, the computing device 3400 may include a communication device 3412 (e.g., one or more communication devices). For example, the communication device 3412 may be configured for managing wired and / or wireless communications for the transfer of data to and from the computing device 3400. The term "wireless" and its derivatives may be used to describe circuits, devices, systems, methods, techniques, communications channels, etc., that may communicate data through the use of modulated electromagnetic radiation through a nonsolid medium. The term does not imply that the associated devices do not contain any wires, although in some embodiments they might not. The communication device 3412 may implement any of a number of wireless standards or protocols, including but not limited to Institute for Electrical and Electronic Engineers (IEEE) standards including Wi-Fi (IEEE 802.10 family), IEEE 802.16 standards (e.g., IEEE 802.16-2005 Amendment), Long- Term Evolution (LTE) project along with any amendments, updates, and / or revisions (e.g., advanced LTE project, ultramobile broadband (UMB) project (also referred to as "3GPP2"), etc.). IEEE 802.16 compatible Broadband Wireless Access (BWA) networks are generally referred to as WiMAX networks, an acronym that stands for worldwide interoperability for microwave access, which is a certification mark for products that pass conformity and interoperability tests for the IEEE 802.16 standards. The communication device 3412 may operate in accordance with a Global System for Mobile Communication (GSM), General Packet Radio Service (GPRS), Universal Mobile Telecommunications System (UMTS), High Speed Packet Access (HSPA), Evolved HSPA (E-HSPA), or LTE network. The communication device 3412 may operate in accordance with Enhanced Data for GSM Evolution (EDGE), GSM EDGE Radio Access Network (GERAN), Universal Terrestrial Radio Access Network (UTRAN), or Evolved UTRAN (E-UTRAN). The communication device 3412 may operate in accordance with Code-division Multiple Access (CDMA), Time Division Multiple Access (TDMA), Digital Enhanced Cordless Telecommunications (DECT), Evolution-Data Optimized (EV-DO), and derivatives thereof, as well as any other wireless protocols that are designated as 3G, 4G, 5G, and beyond. The communication device 3412 may operate in accordance with other wireless protocols in other embodiments. The computing device 3400 may include an antenna 3422 to facilitate wireless communications and / or to receive other wireless communications (such as radio frequency transmissions). The computing device 3400 may include receiver circuits and / or transmitter circuits. In some embodiments, the communication device 3412 may manage wired communications, such as electrical, optical, or any other suitable communication protocols (e.g., the Ethernet). As noted above, communication device 3412 may include multiple communication chips. For instance, a first communication device 3412 may be dedicated to shorter-range wireless communications such as Wi-Fi or Bluetooth, and a second communication device 3412 may be dedicated to longer-range wireless communications such as global positioning system (GPS), EDGE, GPRS, CDMA, WiMAX, LTE, EV-DO, or others. In some embodiments, a first communication device 3412 may be dedicated to wireless communications, and a second communication device 3412 may be dedicated to wired communications.

[0245] The computing device 3400 may include power source I power circuitry 3414. The power source / power circuitry 3414 may include one or more energy storage devices (e.g., batteries or capacitors) and / or circuitry for coupling components of the computing device 3400to an energy source separate from the computing device 3400 (e.g., DC power, AC power, etc.).

[0246] The computing device 3400 may include a display device 3406 (or corresponding interface circuitry, as discussed above). Display device 3406 may include any visual indicators, such as a heads-up display, a computer monitor, a projector, a touchscreen display, a liquid crystal display (LCD), a light-emitting diode display, or a flat panel display, for example.

[0247] The computing device 3400 may include an audio output device 3408 (or corresponding interface circuitry, as discussed above). The audio output device 3408 may include any device that generates an audible indicator, such as speakers, headsets, or earbuds, for example.

[0248] The computing device 3400 may include an audio input device 3418 (or corresponding interface circuitry, as discussed above). The audio input device 3418 may include any device that generates a signal representative of a sound, such as microphones, microphone arrays, or digital instruments (e.g., instruments having a musical instrument digital interface (MIDI) output).

[0249] The computing device 3400 may include a GPS device 3416 (or corresponding interface circuitry, as discussed above). The GPS device 3416 may be in communication with a satellite-based system and may receive a location of the computing device 3400, as known in the art.

[0250] The computing device 3400 may include a sensor 3430 (or one or more sensors). The computing device 3400 may include corresponding interface circuitry, as discussed above). Sensor 3430 may sense physical phenomenon and translate the physical phenomenon into electrical signals that can be processed by, e.g., processing device 3402. Examples of sensor 3430 may include: capacitive sensor, inductive sensor, resistive sensor, electromagnetic field sensor, light sensor, camera, imager, microphone, pressure sensor, temperature sensor, vibrational sensor, accelerometer, gyroscope, strain sensor, moisture sensor, humidity sensor, distance sensor, range sensor, time-of-flight sensor, pH sensor, particle sensor, air quality sensor, chemical sensor, gas sensor, biosensor, ultrasound sensor, a scanner, etc.

[0251] The computing device 3400 may include another output device 3410 (or corresponding interface circuitry, as discussed above). Examples of the other output device 3410 may include an audio codec, a video codec, a printer, a wired or wireless transmitter for providing information to other devices, haptic output device, gas output device, vibrational output device, lighting output device, home automation controller, or an additional storage device.

[0252] The computing device 3400 may include another input device 3420 (or corresponding interface circuitry, as discussed above). Examples of the other input device 3420 may includean accelerometer, a gyroscope, a compass, an image capture device, a keyboard, a cursor control device such as a mouse, a stylus, a touchpad, a bar code reader, a Quick Response (QR) code reader, any sensor, or a radio frequency identification (RFID) reader.

[0253] The computing device 3400 may have any desired form factor, such as a handheld or mobile computer system (e.g., a cell phone, a smart phone, a mobile Internet device, a music player, a tablet computer, a laptop computer, a netbook computer, a personal digital assistant (PDA), a personal computer, a remote control, wearable device, headgear, eyewear, footwear, electronic clothing, etc.), a desktop computer system, a server or other networked computing component, a printer, a scanner, a monitor, a set-top box, an entertainment control unit, a vehicle control unit, a digital camera, a digital video recorder, an Intemet-of-Things device, or a wearable computer system. In some embodiments, the computing device 3400 may be any other electronic device that processes data.

[0254] Select examples

[0255] Example 1 provides a method for targeted removal of material, including receiving sensor data from one or more sensors sensing a target surface, the target surface having a seam, and material applied onto the seam; determining characteristics of the target surface based on the sensor data, the characteristics including a line indicating a centerline of the seam, and a type of the seam; determining a first sanding plan based on the type of the seam, where the first sanding plan includes at least a subset of: first overlapping passes at a first distance from the line, second passes at a second distance from the line, and one or more third smoothing passes covering an area having the line as a centerline of the area; determining parameters for controlling one or more of a positioning system and a sanding end effector according on the first sanding plan and the line; and transmitting signals to one or more of the positioning system and the sanding end effector according to the parameters, where the signals cause the sanding end effector to remove a portion of the material from the target surface.

[0256] Example 2 provides the method of example 1 , further including receiving user input confirming the line via a user interface.

[0257] Example 3 provides the method of example 1 or 2, further including receiving user input confirming the type of the seam via a user interface.

[0258] Example 4 provides the method of any one of examples 1-3, where the first overlapping passes include a first pass of the sanding end effector making contact with the target surface and moving in a first direction at the first distance from the line; and a second pass of the sanding end effector making contact with the target surface and moving in a second direction opposite of the first direction at the first distance from the line.

[0259] Example 5 provides the method of example 4, where the first pass and the second pass overlap each other.

[0260] Example 6 provides the method of example 4 or 5, where the first sanding plan further includes a first transitional pass of the sanding end effector making contact with the target surface and connecting an end point of the first pass with a beginning point of the second pass.

[0261] Example 7 provides the method of example 6, where: the first transitional pass has a first arm speed for the positioning system; the first pass has a second arm speed for the positioning system; the second pass has a third arm speed for the positioning system; and the first arm speed is faster than one or more of: the second arm speed and the third arm speed.

[0262] Example 8 provides the method of example 6 or 7, where: the first transitional pass has a first rotational speed for the sanding end effector; the first pass has a second rotational speed for the sanding end effector; the second pass has a third rotational speed for the sanding end effector; and the first rotational speed is slower than one or more of: the second rotational speed and the third rotational speed.

[0263] Example 9 provides the method of any one of examples 6-8, where: the first transitional pass has a first force to be applied by the sanding end effector onto the target surface; the first pass has a second force to be applied by the sanding end effector onto the target surface; the second pass has a third force to be applied by the sanding end effector onto the target surface; and the first force is smaller than one or more of: the second force and the third force.

[0264] Example 10 provides the method of any one of examples 1-9, where the first sanding plan further includes first side passes at a third distance from the line.

[0265] Example 11 provides the method of example 10, where the first side passes include a third pass of the sanding end effector making contact with the target surface and moving in a second direction at the third distance from the line; and a fourth pass of the sanding end effector making contact with the target surface and moving in a first direction opposite of the first direction at the third distance from the line.

[0266] Example 12 provides the method of example 11, where the first sanding plan further includes a second transitional pass of the sanding end effector making contact with the target surface and connecting an end point of the third pass with a beginning point of the first overlapping passes; and a third transitional pass of the sanding end effector making contact with the target surface and connecting an end point of the first overlapping passes with a beginning point of the fourth pass.

[0267] Example 13 provides the method of any one of examples 10-12, where the third distance is greater than the first distance.

[0268] Example 14 provides the method of any one of examples 10-13, where the third distance is smaller than the second distance.

[0269] Example 15 provides the method of any one of examples 1-14, where the second distance is greater than the first distance.

[0270] Example 16 provides the method of any one of examples 1-15, where the second passes include a fifth pass of the sanding end effector making contact with the target surface and moving in a first direction at the second distance from the line; and a sixth pass of the sanding end effector making contact with the target surface and moving in a second direction opposite of the first direction at the second distance from the line.

[0271] Example 17 provides the method of example 16, where the sanding end effector is lifted, by the positioning system, off the target surface between the fifth pass and the sixth pass.

[0272] Example 18 provides the method of any one of examples 1-17, where an arm speed for the positioning system associated with the first overlapping passes is slower than an arm speed for the positioning system associated with the second passes.

[0273] Example 19 provides the method of any one of examples 1-18, where a rotational speed for the sanding end effector associated with the first overlapping passes is higher than a rotational speed for the sanding end effector associated with the second passes.

[0274] Example 20 provides the method of any one of examples 1-19, where a force applied by the sanding end effector onto the target surface associated with the first overlapping passes is higher than a force applied by the sanding end effector onto the target surface associated with the second passes.

[0275] Example 21 provides the method of any one of examples 1-20, where the one or more third smoothing passes further includes a seventh pass of the sanding end effector making contact with the target surface and moving along a first line that is perpendicular to the line; and an eighth pass of the sanding end effector making contact with the target surface and moving in along a second line that is perpendicular to the line.

[0276] Example 22 provides the method of example 21 , where the one or more third smoothing passes further includes a sixth transitional pass of the sanding end effector making contact with the target surface and connecting an end point of the seventh pass with a beginning point of the eighth pass.

[0277] Example 23 provides the method of example 21 or 22, where the seventh pass moves in a third direction and the eighth pass moves in the third direction.

[0278] Example 24 provides the method of example 21 or 22, where the seventh pass moves in a third direction and the eighth pass moves in a fourth direction opposite of the third direction.

[0279] Example 25 provides the method of any one of examples 1-24, where the one or more third smoothing passes further includes a ninth pass of the sanding end effector making contact with the target surface and moving along a third line that is oblique to the line; and an tenth pass of the sanding end effector making contact with the target surface and moving in along a fourth line that is oblique to the line.

[0280] Example 26 provides the method of example 25, where the one or more third smoothing passes further includes a seventh transitional pass of the sanding end effector making contact with the target surface and connecting an end point of the ninth pass with a beginning point of the tenth pass.

[0281] Example 27 provides the method of any one of examples 1-26, where the one or more third smoothing passes further includes one or more first randomized passes of the sanding end effector following a randomized path, making contact with the target surface, and covering the area.

[0282] Example 28 provides the method of any one of examples 1-27, where the area does not extend beyond a fourth distance from the line.

[0283] Example 29 provides the method of any one of examples 1-28, where the one or more third smoothing passes further includes a first spiraling pass of the sanding end effector making contact with the target surface and covering the area.

[0284] Example 30 provides the method of any one of examples 1-29, where the one or more third smoothing passes further includes a first curved pass of the sanding end effector making contact with the target surface and covering the area.

[0285] Example 31 provides the method of example 30, where the one or more third smoothing passes further includes a second curved pass of the sanding end effector making contact with the target surface and covering the area, where the second curved pass is a mirrored version of the first curved pass flipped about the line.

[0286] Example 32 provides the method of any one of examples 1-31, further including determining an expected degradation of sandpaper used by the sanding end effector based on the parameters and a model of the sandpaper.

[0287] Example 33 provides the method of any one of examples 1-32, further including receiving sensor data from the one or more sensors sensing the target surface during and / or after the sanding end effector has removed the portion of the material from the target surface;and determining an expected degradation of sandpaper used by the sanding end effector based on the parameters and the sensor data.

[0288] Example 34 provides the method of example 32 or 33, further including determining that the expected degradation crosses a degradation threshold; and outputting a recommendation to a user to change the sandpaper in response to determining that the expected degradation crosses the degradation threshold.

[0289] Example 35 provides the method of any one of examples 32-34, further including determining that the expected degradation crosses a degradation threshold; and transmitting further signals to one or more of the positioning system and the sanding end effector in response to determining that the expected degradation crosses the degradation threshold, where the further signals cause one or more of the positioning system and the sanding end effector to perform a dust removal operation.

[0290] Example 36 provides the method of any one of examples 32-35, further including increasing an amount of force to be applied by the sanding end effector onto the target surface to compensate for the expected degradation.

[0291] Example 37 provides the method of any one of examples 32-36, further including decreasing an arm speed of the positioning system when the sanding end effector makes contact with the target surface to compensate for the expected degradation.

[0292] Example 38 provides the method of any one of examples 32-37, further including increasing a rotational speed of the sanding end effector when the sanding end effector makes contact with the target surface to compensate for the expected degradation.

[0293] Example 39 provides the method of any one of examples 1-38, where the characteristics further includes a type of intersection the seam forms with a further seam.

[0294] Example 40 provides the method of example 39, where determining the parameters further based on the type of intersection the seam forms with a further seam.

[0295] Example 41 provides a method for targeted removal of material, including receiving sensor data from one or more sensors sensing a target surface, the target surface having a seam, and material applied onto the seam; determining characteristics of the target surface based on the sensor data, the characteristics including a surface profile of the target surface and a line indicating a centerline of the seam; determining a first sanding plan based on the surface profile, where the first sanding plan includes at least a subset of: first overlapping passes at a first distance from the line, second passes at a second distance from the line, and one or more third smoothing passes covering an area having the line as a centerline of the area; determining parameters for controlling one or more of a positioning system and a sanding end effectoraccording on the first sanding plan and the line; and transmitting signals to one or more of the positioning system and the sanding end effector according to the parameters, where the signals cause the sanding end effector to remove a portion of the material from the target surface.

[0296] Example 42 provides the method of example 41, where the method includes one or more aspects in one or more of examples 1-40.

[0297] Example 43 provides a method for targeted removal of material, including receiving parameters used for controlling one or more of a positioning system and a spraying end effector to spray material onto a seam of a target surface; receiving a line indicating the seam; determining expected characteristics of the target surface based on the parameters; determining a first sanding plan based on the expected characteristics, where the first sanding plan includes at least a subset of: first overlapping passes at a first distance from the line, second passes at a second distance from the line, and one or more third smoothing passes covering an area having the line as a centerline of the area; determining parameters for controlling one or more of a positioning system and a sanding end effector according on the first sanding plan and the line; and transmitting signals to one or more of the positioning system and the sanding end effector according to the parameters, where the signals cause the sanding end effector to remove a portion of the material from the target surface.

[0298] Example 44 provides the method of example 43, where the method includes one or more aspects in one or more of examples 1-40.

[0299] Example 45 provides a robotic system: one or more sensors; a positioning system having a first end and a second end, where the positioning system is affixed to a base unit at the first end, and the positioning system is to change position of the second end; a sanding end effector affixed to the second end of the positioning system; and a control system to perform a method according to any one of examples 1-44.

[0300] Example 46 provides one or more non-transitory computer-readable-media for storing instructions, which when executed by one or more processors, cause the one or more processors to perform a method according to any one of examples 1 -44.

[0301] Example A provides an apparatus comprising means to perform a method according to any one of examples 1-44.

[0302] Example B provides a method according to method 3700 of FIG. 37.

[0303] Example C provides a robotic system: one or more sensors; a positioning system having a first end and a second end, where the positioning system is affixed to a base unit at the first end, and the positioning system is to change position of the second end; a sanding end effectoraffixed to the second end of the positioning system; and a control system to perform a method according to example B.

[0304] Example 46 provides one or more non-transitory computer-readable-media for storing instructions, which when executed by one or more processors, cause the one or more processors to perform a method according to example B

[0305] Example A provides an apparatus comprising means to perform a method according to Example B.

[0306] Variations and other notes

[0307] The detailed description, such as the "Select examples" section, provide various examples of the embodiments disclosed herein.

[0308] While some embodiments are described with respect to surface finishing, the techniques described herein may be applied to depositing insulation materials and / or fireproofing materials onto a surface. Some of the techniques are described with walls as an example. However, the techniques can also be applied to other types of building surfaces or structures, such as interior surfaces, exterior surfaces, building surfaces, ceilings, floors, etc. The techniques described herein may be applied to painting of a surface. The techniques described herein may be applied to fabrication and manufacturing.

[0309] The detailed description of illustrated implementations of the disclosure, including what is described in the Abstract, is not intended to be exhaustive or to limit the disclosure to the precise forms disclosed. While specific implementations of, and examples for, the disclosure are described herein for illustrative purposes, various equivalent modifications are possible within the scope of the disclosure, as those skilled in the relevant art will recognize. These modifications may be made to the disclosure in light of the detailed description.

[0310] For purposes of explanation, specific numbers, materials and configurations are set forth in order to provide a thorough understanding of the illustrative implementations. However, it will be apparent to one skilled in the art that the present disclosure may be practiced without the specific details and / or that the present disclosure may be practiced with only some of the described aspects. In other instances, well known features are omitted or simplified in order not to obscure the illustrative implementations.

[0311] Further, references are made to the accompanying drawings that form a part hereof, and in which are shown, by way of illustration, embodiments that may be practiced. It is to be understood that other embodiments may be utilized, and structural or logical changes may be made without departing from the scope of the present disclosure. Therefore, the detailed description is not to be taken in a limiting sense.

[0312] Various operations may be described as multiple discrete actions or operations in turn, in a manner that is most helpful in understanding the disclosed subject matter. However, the order of description should not be construed as to imply that these operations are necessarily order dependent. In particular, these operations may not be performed in the order of presentation. Operations described may be performed in a different order from the described embodiment. Various additional operations may be performed or described operations may be omitted in additional embodiments.

[0313] For the purposes of the present disclosure, the phrase “A or B” or the phrase "A and / or B" means (A), (B), or (A and B). For the purposes of the present disclosure, the phrase “A, B, or C” or the phrase "A, B, and / or C" means (A), (B), (C), (A and B), (A and C), (B and C), or (A, B, and C). The term "between," when used with reference to measurement ranges, is inclusive of the ends of the measurement ranges.

[0314] The description uses the phrases "in an embodiment" or "in embodiments," which may each refer to one or more of the same or different embodiments. The terms "comprising," "including," "having," and the like, as used with respect to embodiments of the present disclosure, are synonymous. The disclosure may use perspective-based descriptions such as "above," "below," "top," "bottom," and "side" to explain various features of the drawings, but these terms are simply for ease of discussion, and do not imply a desired or required orientation. The accompanying drawings are not necessarily drawn to scale. Unless otherwise specified, the use of the ordinal adjectives “first,” “second,” and “third,” etc., to describe a common object, merely indicates that different instances of like objects are being referred to and are not intended to imply that the objects so described must be in a given sequence, either temporally, spatially, in ranking or in any other manner.

[0315] In the detailed description, various aspects of the illustrative implementations will be described using terms commonly employed by those skilled in the art to convey the substance of their work to others skilled in the art.

[0316] The terms “substantially,” “close,” “approximately,” “near,” and “about,” generally refer to being within + / - 20% of a target value as described herein or as known in the art. Similarly, terms indicating orientation of various elements, e.g., “coplanar,” “perpendicular,” “orthogonal,” “parallel,” or any other angle between the elements, generally refer to being within + / - 5-20% of a target value as described herein or as known in the art.

[0317] In addition, the terms “comprise,” “comprising,” “include,” “including,” “have,” “having” or any other variation thereof, are intended to cover a non-exclusive inclusion. For example, a method, process, or device, that comprises a list of elements is not necessarilylimited to only those elements but may include other elements not expressly listed or inherent to such method, process, or device. Also, the term “or” refers to an inclusive “or” and not to an exclusive “or.”

[0318] The systems, methods and devices of this disclosure each have several innovative aspects, no single one of which is solely responsible for all desirable attributes disclosed herein. Details of one or more implementations of the subject matter described in this specification are set forth in the description and the accompanying drawings.

Claims

Claims1. A method for targeted removal of material, comprising: receiving sensor data from one or more sensors sensing a target surface, the target surface having a seam, and material applied onto the seam; determining characteristics of the target surface based on the sensor data, the characteristics comprising a line indicating a centerline of the seam, and a type of the seam; determining a first sanding plan based on the type of the seam, wherein the first sanding plan comprises at least a subset of: first overlapping passes at a first distance from the line, second passes at a second distance from the line, and one or more third smoothing passes covering an area having the line as a centerline of the area; determining parameters for controlling one or more of a positioning system and a sanding end effector according on the first sanding plan and the line; and transmitting signals to one or more of the positioning system and the sanding end effector according to the parameters, wherein the signals cause the sanding end effector to remove a portion of the material from the target surface.

2. The method of claim 1, further comprising: receiving user input confirming the line via a user interface.

3. The method of claim 1, further comprising: receiving user input confirming the type of the seam via a user interface.

4. The method of claim 1 , wherein the first overlapping passes comprise: a first pass of the sanding end effector making contact with the target surface and moving in a first direction at the first distance from the line; and a second pass of the sanding end effector making contact with the target surface and moving in a second direction opposite of the first direction at the first distance from the line.

5. The method of claim 4, wherein the first pass and the second pass overlap each other.

6. The method of claim 4, wherein the first sanding plan further comprises:a first transitional pass of the sanding end effector making contact with the target surface and connecting an end point of the first pass with a beginning point of the second pass.

7. The method of claim 6, wherein: the first transitional pass has a first arm speed for the positioning system; the first pass has a second arm speed for the positioning system; the second pass has a third arm speed for the positioning system; and the first arm speed is faster than one or more of: the second arm speed and the third arm speed.

8. The method of claim 6, wherein: the first transitional pass has a first rotational speed for the sanding end effector; the first pass has a second rotational speed for the sanding end effector; the second pass has a third rotational speed for the sanding end effector; and the first rotational speed is slower than one or more of: the second rotational speed and the third rotational speed.

9. The method of claim 6, wherein: the first transitional pass has a first force to be applied by the sanding end effector onto the target surface; the first pass has a second force to be applied by the sanding end effector onto the target surface; the second pass has a third force to be applied by the sanding end effector onto the target surface; and the first force is smaller than one or more of: the second force and the third force.

10. The method of claim 1, wherein the first sanding plan further includes: first side passes at a third distance from the line.

11. The method of claim 10, wherein the first side passes comprise: a third pass of the sanding end effector making contact with the target surface and moving in a second direction at the third distance from the line; anda fourth pass of the sanding end effector making contact with the target surface and moving in a first direction opposite of the first direction at the third distance from the line.

12. The method of claim 11 , wherein the first sanding plan further comprises: a second transitional pass of the sanding end effector making contact with the target surface and connecting an end point of the third pass with a beginning point of the first overlapping passes; and a third transitional pass of the sanding end effector making contact with the target surface and connecting an end point of the first overlapping passes with a beginning point of the fourth pass.

13. The method of claim 10, wherein the third distance is greater than the first distance.

14. The method of claim 10, wherein the third distance is smaller than the second distance.

15. The method of claim 1, wherein the second distance is greater than the first distance.

16. The method of claim 1, wherein the second passes comprise: a fifth pass of the sanding end effector making contact with the target surface and moving in a first direction at the second distance from the line; and a sixth pass of the sanding end effector making contact with the target surface and moving in a second direction opposite of the first direction at the second distance from the line.

17. The method of claim 16, wherein the sanding end effector is lifted, by the positioning system, off the target surface between the fifth pass and the sixth pass.

18. The method of claim 1, wherein an arm speed for the positioning system associated with the first overlapping passes is slower than an arm speed for the positioning system associated with the second passes.

19. The method of claim 1, wherein a rotational speed for the sanding end effector associated with the first overlapping passes is higher than a rotational speed for the sanding end effector associated with the second passes.

20. The method of claim 1, wherein a force applied by the sanding end effector onto the target surface associated with the first overlapping passes is higher than a force applied by the sanding end effector onto the target surface associated with the second passes.

21. The method of claim 1, wherein the one or more third smoothing passes further comprises: a seventh pass of the sanding end effector making contact with the target surface and moving along a first line that is perpendicular to the line; and an eighth pass of the sanding end effector making contact with the target surface and moving in along a second line that is perpendicular to the line.

22. The method of claim 21 , wherein the one or more third smoothing passes further comprises: a sixth transitional pass of the sanding end effector making contact with the target surface and connecting an end point of the seventh pass with a beginning point of the eighth pass.

23. The method of claim 21 , wherein the seventh pass moves in a third direction and the eighth pass moves in the third direction.

24. The method of claim 21 , wherein the seventh pass moves in a third direction and the eighth pass moves in a fourth direction opposite of the third direction.

25. The method of claim 1, wherein the one or more third smoothing passes further comprises: a ninth pass of the sanding end effector making contact with the target surface and moving along a third line that is oblique to the line; and an tenth pass of the sanding end effector making contact with the target surface and moving in along a fourth line that is oblique to the line.

26. The method of claim 25, wherein the one or more third smoothing passes further comprises: a seventh transitional pass of the sanding end effector making contact with the target surface and connecting an end point of the ninth pass with a beginning point of the tenth pass.

27. The method of claim 1, wherein the one or more third smoothing passes further comprises: one or more first randomized passes of the sanding end effector following a randomized path, making contact with the target surface, and covering the area.

28. The method of claim 1, wherein the area does not extend beyond a fourth distance from the line.

29. The method of claim 1, wherein the one or more third smoothing passes further comprises: a first spiraling pass of the sanding end effector making contact with the target surface and covering the area.

30. The method of claim 1, wherein the one or more third smoothing passes further comprises: a first curved pass of the sanding end effector making contact with the target surface and covering the area.

31. The method of claim 30, wherein the one or more third smoothing passes further comprises: a second curved pass of the sanding end effector making contact with the target surface and covering the area, wherein the second curved pass is a mirrored version of the first curved pass flipped about the line.

32. The method of claim 1 , further comprising: determining an expected degradation of sandpaper used by the sanding end effector based on the parameters and a model of the sandpaper.

33. The method of claim 1, further comprising:receiving sensor data from the one or more sensors sensing the target surface during and / or after the sanding end effector has removed the portion of the material from the target surface; and determining an expected degradation of sandpaper used by the sanding end effector based on the parameters and the sensor data.

34. The method of claim 32, further comprising: determining that the expected degradation crosses a degradation threshold; and outputting a recommendation to a user to change the sandpaper in response to determining that the expected degradation crosses the degradation threshold.

35. The method of claim 32, further comprising: determining that the expected degradation crosses a degradation threshold; and transmitting further signals to one or more of the positioning system and the sanding end effector in response to determining that the expected degradation crosses the degradation threshold, wherein the further signals cause one or more of the positioning system and the sanding end effector to perform a dust removal operation.

36. The method of claim 32, further comprising: increasing an amount of force to be applied by the sanding end effector onto the target surface to compensate for the expected degradation.

37. The method of claim 32, further comprising: decreasing an arm speed of the positioning system when the sanding end effector makes contact with the target surface to compensate for the expected degradation.

38. The method of claim 32, further comprising: increasing a rotational speed of the sanding end effector when the sanding end effector makes contact with the target surface to compensate for the expected degradation.

39. The method of claim 1, wherein the characteristics further includes a type of intersection the seam forms with a further seam.

40. The method of claim 39, wherein determining the parameters further based on the type of intersection the seam forms with a further seam.

Citation Information

Patent Citations

  • Method of making an optical element

    KR1020230150775A

  • Automated drywall sanding system and method

    US20180281143A1

  • Automatic Generation of Toolpaths

    US20180348730A1

  • Apparatus and method for surface finishing

    US20190054615A1

  • System and method for autonomously scanning and processing a part

    US20220347843A1