Determination of updated drilling plan

By simulating the drilling and chiseling process, the drilling and chiseling plan is detected and updated, the collision problem between the drilling and chiseling parts is solved, and the efficiency and feasibility of drilling and chiseling are improved.

CN119836512APending Publication Date: 2025-04-15SANDVIK MINING & CONSTR OY
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202380066552.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2022-09-20
Filing Date
2023-09-20
Publication Date
2025-04-15

AI Technical Summary

Technical Problem

The existing drilling and chiseling technology is difficult to effectively avoid collisions between the drilling frame components and the drilling surface, resulting in the infeasibility and inefficiency of the drilling and chiseling plan.

Method used

By using computer program code to cooperate with the processor, a 3D model of the drilling surface, a 3D model of the drilling frame component and a kinematic model are obtained, a simulation of the drilling plan is performed, a simulated collision is detected, and the drilling plan is updated according to the detection results, and the starting point of the hole is adjusted to avoid collisions.

Benefits of technology

Effective simulation and update of the drilling plan before drilling is achieved, avoiding collision between the drilling frame components and the drilling surface, and improving the efficiency and feasibility of drilling.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119836512A_ABST
    Figure CN119836512A_ABST
Patent Text Reader

Abstract

An apparatus may obtain a 3D model of a drilling face and a 3D model of a component of a drill rig, a kinematic model of the drill rig, and a drilling plan indicative of a starting point and an ending point of a plurality of holes to be drilled on the drilling face. The apparatus may perform a simulation of the drilling plan based on the 3D model of the drilling face and the components of the drill rig and the kinematic model of the drill rig, and detect a simulated collision between the components of the drill rig and the drilling face or between the components of the drill rig based on the simulation, where the simulated collision is associated with simulating drilling of at least one of the plurality of holes. The apparatus may determine an updated drilling plan in response to detecting the simulated collision, the updated drilling plan including an adjusted starting point for the at least one of the plurality of holes.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Various exemplary embodiments relate generally to the field of drilling. Some exemplary embodiments relate to updating a drilling plan based on a 3D model of a drilling face and a drill stand. Background Art

[0002] A drill stand may be used to drill holes in a drilling surface such as, for example, a rock face. For example, an underground drill stand may be configured to drill holes for explosives in a mining application. A surface drill stand may be configured for the same purpose in a surface environment. In such applications, it may be desirable to carefully plan the location of the hole so that the intended result is achieved by applying the explosive. The drill stand may be equipped with one or more booms to enable drilling of the hole in the planned location. Summary of the invention

[0003] This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter.

[0004] According to a first aspect, a drilling control device is disclosed. The drilling control device may include: at least one processor; and at least one memory including computer program code, the at least one memory and the computer program code being configured to, together with the at least one processor, cause the device to at least: obtain a three-dimensional (3D) model of a drilling surface; obtain a 3D model of at least one component of a drill frame and a kinematic model of the drill frame; obtain a drilling plan indicating a plurality of start points and end points of a plurality of holes to be drilled on the drilling surface; perform a simulation of the drilling plan based on the 3D model of the drilling surface, the 3D model of the at least one component of the drill frame and the kinematic model of the drill frame; detect a simulated collision between the at least one component of the drill frame and the drilling surface or between components of the drill frame based on the simulation, wherein the simulated collision is associated with simulating drilling of the at least one hole of the plurality of holes; and determine an updated drilling plan in response to detecting the simulated collision, the updated drilling plan including an adjusted start point of the at least one hole of the plurality of holes.

[0005] According to an exemplary embodiment of the first aspect, the computer program code may be configured to, together with the at least one processor, cause the device to: maintain the end point of the at least one hole among the multiple holes in an updated drilling plan, wherein the end point of the at least one hole among the multiple holes was previously included in the drilling plan; adjust the end point of the at least one hole among the multiple holes toward an adjusted starting point of the at least one hole among the multiple holes, or adjust the end point of the at least one hole among the multiple holes toward the adjusted starting point so that the distance between the adjusted starting point and the end point is substantially equal to the distance between the starting point and the end point of the at least one hole among the multiple holes.

[0006] According to an exemplary embodiment of the first aspect, the computer program code may be configured to, together with the at least one processor, cause the device to: determine a position of a drilling unit of the drill frame based on a simulation, wherein the position of the drilling unit is associated with a simulated collision; determine a position of the drilling unit from the determined position of the drilling unit to an end point of the at least one hole among the plurality of holes; and adjust a starting point of the at least one hole among the plurality of holes based on the determined position.

[0007] According to an exemplary embodiment of the first aspect, the computer program code may be configured to, together with the at least one processor, cause the device to: determine at least one candidate starting point of the at least one hole among the plurality of holes; perform a second simulation of drilling the at least one hole among the plurality of holes using the at least one candidate starting point based on a 3D model of the drilling surface, a 3D model of the at least one component of the drill frame and a kinematic model of the drill frame; and adjust the starting point of the at least one hole among the plurality of holes based on the second simulation so that no simulated collision occurs between the at least one component of the drill frame and the drilling surface or between components of the drill frame.

[0008] According to an exemplary embodiment of the first aspect, the computer program code may be configured to, together with the at least one processor, cause the device to: adjust the starting point of at least one of the multiple holes based on the 3D model of the drilling surface, the 3D model of the at least one component of the drill frame and the kinematic model of the drill frame, so that no simulated collision occurs between the at least one component of the drill frame and the drilling surface or between components of the drill frame.

[0009] According to an exemplary embodiment of the first aspect, the computer program code may be configured to, with the at least one processor, cause the apparatus to: perform a mapping between a plurality of start and end points and a 3D model of the drilling face.

[0010] According to an exemplary embodiment of the first aspect, the at least one component of the drill rack comprises at least one of: a first boom, a second boom, a first drilling unit coupled to the first boom, a second drilling unit coupled to the second boom, at least one boom portion of the first boom or at least one boom portion of the second boom.

[0011] According to an exemplary embodiment of the first aspect, the computer program code may be configured to, with the at least one processor, cause the apparatus to: scan the drilling face to obtain a 3D model of the drilling face.

[0012] According to an exemplary embodiment of the first aspect, the computer program code may be configured to, with the at least one processor, cause the apparatus to: scan the drilling face in response to detecting that the drill stand reaches the planned drilling position.

[0013] According to an exemplary embodiment of the first aspect, the computer program code may be configured to, with the at least one processor, cause the apparatus to: initiate drilling of the plurality of holes based on the updated drilling plan.

[0014] According to an exemplary embodiment of the first aspect, the apparatus comprises a drilling stand.

[0015] According to an exemplary embodiment of the first aspect, the computer program code may be configured to, with the at least one processor, cause the apparatus to: receive the 3D model of the drilling face from the drill rig to obtain the 3D model of the drilling face; and send an updated drilling plan to the drill rig.

[0016] According to an exemplary embodiment of the first aspect, the apparatus comprises a drilling control device, wherein the drilling control device is external to the drill stand.

[0017] According to a second aspect, a method for controlling a drill frame is disclosed. The method may include: obtaining a three-dimensional (3D) model of a drilling surface; obtaining a 3D model of at least one component of the drill frame and a kinematic model of the drill frame; obtaining a drilling plan indicating a plurality of start points and end points of a plurality of holes to be drilled on the drilling surface; performing a simulation of the drilling plan based on the 3D model of the drilling surface, the 3D model of the at least one component of the drill frame and the kinematic model of the drill frame; detecting a simulated collision between the at least one component of the drill frame and the drilling surface or between components of the drill frame based on the simulation, wherein the simulated collision is associated with simulating drilling of the at least one hole of the plurality of holes; and determining an updated drilling plan including an adjusted start point of the at least one hole of the plurality of holes in response to detecting the simulated collision.

[0018] According to an exemplary embodiment of the second aspect, the method may include: maintaining the end point of the at least one hole among the multiple holes in the updated drilling plan, wherein the end point of the at least one hole among the multiple holes was previously included in the drilling plan; adjusting the end point of the at least one hole among the multiple holes toward the adjusted starting point of the at least one hole among the multiple holes; or adjusting the end point of the at least one hole among the multiple holes toward the adjusted starting point so that the distance between the adjusted starting point and the end point is substantially equal to the distance between the starting point and the end point of the at least one hole among the multiple holes.

[0019] According to an exemplary embodiment of the second aspect, the method may include: determining a position of a drilling unit of the drill frame based on a simulation, wherein the position of the drilling unit is associated with a simulated collision; determining a position of the drilling unit reaching an end point of the at least one hole among the plurality of holes from the determined position of the drilling unit; and adjusting a starting point of the at least one hole among the plurality of holes based on the determined position.

[0020] According to an exemplary embodiment of the second aspect, the method may include: determining at least one candidate starting point of the at least one hole among the multiple holes; performing a second simulation of drilling the at least one hole among the multiple holes using the at least one candidate starting point based on a 3D model of the drilling surface, a 3D model of the at least one component of the drill frame and a kinematic model of the drill frame; and adjusting the starting point of the at least one hole among the multiple holes based on the second simulation so that no simulated collision occurs between the at least one component of the drill frame and the drilling surface or between components of the drill frame.

[0021] According to an exemplary embodiment of the second aspect, the method may include: adjusting the starting point of at least one of the multiple holes based on the 3D model of the drilling surface, the 3D model of the at least one component of the drill frame and the kinematic model of the drill frame, so that no simulated collision occurs between the at least one component of the drill frame and the drilling surface or between the components of the drill frame.

[0022] According to an exemplary embodiment of the second aspect, the method may comprise performing a mapping between a plurality of start points and end points and a 3D model of the drilling face.

[0023] According to an exemplary embodiment of the second aspect, the at least one component of the drill rack comprises at least one of: a first boom, a second boom, a first drilling unit coupled to the first boom, a second drilling unit coupled to the second boom, at least one boom portion of the first boom or at least one boom portion of the second boom.

[0024] According to an exemplary embodiment of the second aspect, the method may include: scanning the drilling surface to obtain a 3D model of the drilling surface.

[0025] According to an exemplary embodiment of the second aspect, the method may include: in response to detecting that the drill stand reaches the planned drilling position, scanning the drilling face.

[0026] According to an exemplary embodiment of the second aspect, the method may comprise initiating drilling of the plurality of holes based on the updated drilling plan.

[0027] According to an exemplary embodiment of the second aspect, the method may be performed by a drilling rig.

[0028] According to an exemplary embodiment of the second aspect, the method may include: receiving the 3D model of the drilling face from the drill rig to obtain the 3D model of the drilling face; and transmitting the updated drilling plan to the drill rig.

[0029] According to an exemplary embodiment of the second aspect, the method may be performed by a drilling control device, wherein the drilling control device is external to the drilling mast.

[0030] According to a third aspect, a device is disclosed. The device may include means for performing the method according to the second aspect or any exemplary embodiment thereof.

[0031] According to a fourth aspect, a computer program or a computer program product is disclosed. The computer program or the computer program product may comprise instructions which, when executed by a device, cause the device to perform the method according to the second aspect or any exemplary embodiment thereof.

[0032] According to a seventh aspect, a (non-transitory) computer-readable medium is disclosed. The (non-transitory) computer-readable medium may include program code, which, when executed by a device, causes the device to perform the method according to the second aspect or any example thereof.

[0033] According to some aspects, the subject matter of the independent claims is provided. Some further aspects are defined in the dependent claims. By reference to the following description considered in conjunction with the accompanying drawings, many of the attendant features will be more readily understood as they become better appreciated. BRIEF DESCRIPTION OF THE DRAWINGS

[0034] The accompanying drawings, which are included to provide a further understanding of the exemplary embodiments and constitute a part of this specification, illustrate exemplary embodiments and together with the description help explain the exemplary embodiments. In the drawings:

[0035] Figure 1 An example of a drill stand including a drilling controller is shown;

[0036] Figure 2 An example of a drill mast communicatively coupled to a remote drilling controller is shown;

[0037] Figure 3 An example of a drilling unit is shown;

[0038] Figure 4 An example of a flow chart for determining an updated drilling plan is shown;

[0039] Figure 5 An example of simulating the updating of collision and hole starting points is shown;

[0040] Figure 6 An example of weighted control of at least one component of a drill stand is shown;

[0041] Figure 7 shows an example of a device configured to practice one or more exemplary embodiments; and

[0042] Figure 8 An example of a method for controlling a drilling rig is shown.

[0043] In the drawings, the same reference numerals are used to refer to the same components. DETAILED DESCRIPTION

[0044] Reference will now be made to a number of embodiments, examples of which are illustrated in the accompanying drawings. The description provided below in conjunction with the drawings is intended as a description of this example and is not intended to represent the only form in which this example may be constructed or utilized. The description sets forth the functions of the example and the sequence of steps for constructing and operating the example. However, the same or equivalent functions and sequences may be implemented by different examples.

[0045] The drilling rig can be operated based on the drilling plan to achieve the desired result, for example, to extend the tunnel by applying explosives at the drilled hole. The drilling plan may include the start and end points of one or more holes. The human operator, for example, can control the drilling rig locally while sitting in the cabin of the drilling rig, or can control the drilling rig via remote control. The operator can monitor and manually control the boom of the drilling rig to avoid collisions between the boom and the drilling surface (for example, the pit wall of the tunnel) or between the booms themselves. If a hole cannot be drilled without a collision, for example, if the hole cannot be reached, the operator can use his / her own judgment to manually position the boom in the adjusted position and drill a hole from that position. However, in an automatic drilling control system, it may be desirable to handle this situation without human intervention. In addition, the adjusted position determined by the operator may not be optimal for blasting the surface.

[0046] A reactive boom collision monitoring / avoidance system may be used to avoid collisions. However, in this case, decisions may be made reactively and therefore it may not be possible to predict whether a planned hole is reachable or drillable. For example, if the starting point of a planned hole is inside the drilling face, the hole may be unreachable. In this case, the boom may not reach the target regardless of whether collision avoidance is applied.

[0047] Exemplary embodiments of the present disclosure enable the drilling plan to be updated prior to drilling so that the desired results are still achieved when explosives are applied at the drilled hole. Thus, collisions can be avoided and the efficiency of the drilling procedure is improved.

[0048] According to an exemplary embodiment, an apparatus may obtain a 3D model of a drilling surface and components of a drill frame, a kinematic model of the drill frame, and a drilling plan indicating start and end points of a plurality of holes to be drilled on the drilling surface. The apparatus may perform a simulation of the drilling plan based on the 3D model of the components of the drilling surface and the drill frame and the kinematic model of the drill frame, and detect a simulated collision between components of the drill frame and the drilling surface or between components of the drill frame based on the simulation, wherein the simulated collision is associated with simulating the drilling of at least one hole of the plurality of holes. The apparatus may determine an updated drilling plan including an adjusted start point of the at least one hole of the plurality of holes in response to detecting the simulated collision.

[0049] Figure 1 An example of a drill mast including a drilling controller is shown. Although the drill mast 100 is shown as an underground drill mast, exemplary embodiments of the present disclosure may also be applied to other types of drilling machines, such as, for example, a surface drill mast. The drill mast 100 may include a rock drill mast. The drill mast 100 may be an automatic drill mast, such as an automatic underground drill mast or an automatic surface drill mast. An automatic mining vehicle operating in an automatic mode (e.g., an automatic underground drill mast) may be configured to, for example, receive a task to be performed, sense the environment of the mobile mining vehicle, and autonomously perform the task while taking the environment into account. An automatic mining vehicle operating in an automatic mode may be configured to operate independently, but may be operated under external control in certain operating areas or conditions (such as during an emergency). The axis x represents the forward drive direction of the drill mast 100. The axis z represents the vertical direction, which in this example is toward the top of the tunnel. The drill mast 100 may include a movable carrier 110 and at least one boom 120 connected to the movable carrier 110. The movable vehicle 110 may include equipment for moving or stabilizing the drilling rig 100, such as, for example, a motor, wheels, or stabilizer jacks. Figure 1 Two booms 120 are shown in FIG. 1 , but the drilling rack 100 may generally include one or more (eg, two, three, four, . . . ) booms 120 .

[0050] The drilling unit 130 may be coupled to a distal end portion of the boom 120. Figure 3An example of a drilling unit is provided in , but in general, the drilling unit 130 may include a feed system configured to keep the drill bit in contact with the drilling face 140 and enable the drill rod to move along the feed beam during drilling. The boom 120 may include a plurality of boom sections, a movable carrier 110, and / or a drilling unit 130 coupled to each other by a joint 122. The controllable joint enables the drilling unit 130 to be placed in a desired position and orientation relative to the drilling face 140. The drilling face 140 may include at least a portion of a tunnel wall, at least a portion of a tunnel roof, and / or at least a portion of a tunnel floor, such as near the end of the tunnel. The drilling face 140 may include an in-situ rock surface of the tunnel, such as near the drilling location of the drill frame 100. The in-situ rock surface may include at least some of the tunnel wall, the tunnel floor, and / or the roof of the tunnel near the end of the tunnel.

[0051] The drill rig 100 may include at least one sensor 112 for scanning the environment of the drill rig 100, such as a drilling face 140. The sensor 112 may include, for example, one or more of the following: a camera, a radio detection and ranging (radar) sensor, or a light detection and ranging (lidar) sensor. The sensor 112 may be configured to scan the drilling face 140, for example to obtain a three-dimensional (3D) model of the drilling face 140. The camera may be used to extract depth information of the drilling face 140, for example by comparing two images taken at slightly different positions (e.g., by two camera units). Alternatively, the sensor 112 may include a time-of-flight (ToF) camera, which may be configured to determine the distance between the camera and a point of the drilling face 140 by measuring the round-trip time of an artificial light signal provided by a laser or a light emitting diode (LED). The lidar sensor may be configured to determine the distance to different points of the drilling face 140 by aiming a laser at the drilling face 140 and measuring the time for the reflected light to return to a receiver of the lidar sensor. The radar sensor may be configured to transmit electromagnetic energy towards the drill face 140 and observe echoes returning from the drill face 140 to determine the distance to different points of the drill face 140. Thus, the 3D model of the drill face may be fixed to or known relative to the coordinate system of the drill frame 100.

[0052] The drilling rig 100 may be configured to scan the drilling face 140 using at least one sensor 112, for example, in response to detecting that the drilling rig 100 has reached the planned drilling position. Thus, a 3D model of the drilling face 140 may be represented relative to the planned drilling position. This enables mapping between points of a coordinate system that is stationary relative to the drilling rig 100 and points of a coordinate system of the drilling face 140. The planned drilling position may be included in a drilling plan that may be pre-configured locally at the drilling rig 100 (e.g., stored at a memory of the drilling rig 100) or received from another device (e.g., a remote drilling controller). The 3D model of the drilling face may be provided as point cloud data indicating the position of the drilling face 140.

[0053] The drilling rig 100 may include a drilling controller 114. The drilling controller 114 may be communicatively coupled to the sensor 112, for example to receive scanned sensor data from the sensor 112, or to request the sensor 112 to initiate scanning of the drilling face 140. The drilling controller 114 may, for example, be provided as a software application resident on a memory and executable by a processor. Figure 7 Examples of devices suitable for implementing the drilling controller 114 are provided in . The drilling controller 114 may include or be communicatively coupled to various functions, blocks or applications for implementing the functionality of the drilling controller 114. For example, the drilling controller 114 may include or be communicatively coupled to a data management server, which may be configured to store information of drilling plans, tunnel lines, point clouds or mesh representations of tunnel lines or contours, mine map point clouds, etc. The drilling controller 114 may include a drilling navigation application that is configured to control or enable a human user to control the navigation of the drill mast 100, such as moving it to a planned drilling position and determining the relative position of the drilling plan relative to the drill mast 100 and the drilling face 140. The drilling controller 114 may include a drilling simulator that is configured to perform simulations of the movement of components of the drill mast, such as based on requests from the drilling navigation application. The simulations may be used, for example, to obtain advance knowledge of the boom position for a round of drilling prior to actual movement of the boom at the drilling face 140. The simulation enables a collision-free design of the drilling plan to be determined.

[0054] The drilling controller 114 may be configured to determine and / or maintain a drilling plan, a 3D model of at least one component of the drilling mast 100 (e.g., a 3D model of the boom 120 and / or a 3D model of the drilling unit 130). The 3D model of the at least one component of the drilling mast 100 may include, for example, 3D geometric data of the component obtained from a computer-aided design (CAD) model of the corresponding physical component. The drilling controller 114 may also be configured to determine and / or maintain a kinematic model of the drilling mast 100. The kinematic model may include information about the dimensions of one or more booms 120 or parts thereof, the properties of one or more joints 122 (e.g., their degrees of freedom), constraints between moving components of the drilling mast 100, etc. Thus, the kinematic model may enable modeling of the movement of components of the drilling mast 100 (e.g., the boom 120 and / or the associated drilling unit 130). The 3D model of the at least one component may be provided as point cloud data indicating a surface of the at least one component. Point cloud data may include a plurality of data points representing, for example, the distance between the drill rig 100 and objects in the environment of the drill rig 100 at a particular moment in time. Individual points included in the point cloud may be represented, for example, by X and Y coordinates or X, Y and Z coordinates relative to a particular coordinate system.

[0055] Alternatively, the drilling controller 114 may be external to the drill rig 100, such as at an external drilling control device 202, such as Figure 2 As shown. The drilling control device 202 may be, for example, a server located remotely from the drilling rig 100 (e.g., outside the tunnel). The functionality of the drilling controller 114 may also be distributed between the drilling rig 100 (e.g., a local drilling controller of the drilling rig 100) and an external drilling control device 202. Information may be exchanged between the drilling controller 114 and the drilling rig 100 via a communication interface including any suitable wireless or wired connection. Figure 7 An example of a suitable communication interface is described. The drilling controller 114 may be configured to determine and / or maintain a drilling plan. The 3D model and kinematic model of the drill frame 100 may be stored locally at the drilling controller 114, for example, based on a preconfiguration of the model. Alternatively, the drilling controller 114 may be configured to receive one or more models from the drill frame 100 or a data management server. The drilling controller 114 may also be configured to receive, for example, scanned sensor data of the sensor 112 from the drill frame 100, and the drilling controller 114 may be configured to generate a 3D model of the drilling face 140. Alternatively, the drilling controller 114 may be configured to obtain the 3D model by receiving a 3D model of the drilling face 140 generated by the drill frame 100 based on the scanned sensor data. Therefore, exemplary embodiments of the present disclosure may be implemented locally at the drill frame 100 and / or at a remote drilling control system.

[0056] Return to reference Figure 1 , the drilling plan may include a corresponding starting point ( ) and the end point ( ) is one or more holes 150. The start and end points of the holes can be represented in a reference coordinate system for planning drilling. Using the position of the drill frame 100 relative to the reference coordinate system, the drilling controller 114 can be configured to map the start and end points of the holes 150 to a 3D model of the drilling face 140 obtained based on a scan of the drilling face 140 caused by the drill frame 100. Alternatively, the drilling controller 114 can be configured to map the 3D model obtained by scanning the drilling face 140 to a coordinate system for presenting the start and end points of the holes 150. Typically, the drilling controller 114 can be configured to perform a mapping between the start and end points and the 3D model of the drilling face 140. This helps to simulate the drilling plan at the 3D model of the drilling face 140. However, it should be noted that the synchronization between the reference coordinate system and the coordinate system of the drill frame 100 can be performed in any suitable manner.

[0057] Figure 1 Two examples of holes that cannot be drilled are provided in FIG. Hole 151 cannot be drilled because its starting point ( ) is located below the ground level of the tunnel. On the other hand, the hole 152 cannot be drilled due to the bump 142 located at the bottom surface of the tunnel, because the bump 142 prevents the drilling unit 130 from reaching the desired drilling position. However, such a situation can be detected by simulation using a 3D model of the drilling face 140, a 3D model of the components of the drilling frame 100 and a kinematic model of the drilling frame 100. The starting points of these holes can then be adjusted so that drilling to the original end point can be achieved, as will be further described below. Since the drilling controller 114 can be located at the drilling frame 100 or outside the drilling frame, the simulation can be performed as an onboard simulation at the drilling frame 100 or as a remote simulation at an external drilling control device 202 including the drilling controller 114.

[0058] Figure 3An example of a drilling unit is shown. The drilling unit 130 may include a feed beam 131 and a rock drill 132 supported thereon. The rock drill 132 may include a shank at the front end of the rock drill 132 for connecting a tool, such as a drill rod 133, which includes a drill bit 134 or is configured to be coupled to the drill bit 134. In addition, the drilling unit 130 may include one or more rod handling devices 135, such as a tool holding device, a tool changing device or manipulator and / or a tool magazine or storage. In addition to this, one or more additional devices 136 may be supported to the feed beam 131. The 3D model of the at least one component of the drilling frame 100 may include a 3D model of any of the above-mentioned components of the drilling unit 130. However, it should be noted that the 3D model of the component of the drilling frame 100 does not need to be an accurate 3D model of the component. For example, in order to simulate collisions, an approximate 3D model may be used to represent the approximate size of the component. This can reduce the computational complexity while still providing sufficient accuracy.

[0059] Figure 4 An example of a flow chart for determining an updated drilling plan is shown. Some operations of the flow chart may be performed by a drilling controller 114, which may be located at the drilling rig 100 or external to the drilling rig 100, such as at an external drilling control device 202. Some operations, such as scanning the drilling face or the drilling itself, may be performed by the drilling rig 100.

[0060] At operation 401, the drill rig 100 may be configured to scan a drilling face 140, for example using a sensor 112. The drill rig 100 may be configured to generate a 3D model of the drilling face 140 based on sensor data obtained by scanning the drilling face 140. The 3D model 402 of the drilling face 140 may be provided to the drilling controller 114, which may be configured to store the model in a memory. Alternatively, the drilling controller 114 may be configured to generate a 3D model of the drilling face 140 based on sensor data provided by the sensor 112. The drilling controller 114 may be configured to obtain a 3D model 403 of at least one component of the drill rig 100, including, for example, a 3D model of the boom 120 and / or the drilling unit 130. The drilling controller 114 may be configured to obtain a kinematic model 404 of the drill rig 100 or a portion / component thereof. The drilling controller 114 may be configured to obtain a drilling plan 405. The 3D model 403, the kinematic model 404, and / or the drilling plan 405 may be retrieved from a memory of the drilling controller 114 or received from another device, such as a data management server. As described above, the drilling plan 405 may indicate the starting point ( ) and the end point ( ).

[0061] At operation 406 , the drilling controller 114 may be configured to initiate analysis of the next hole of the drilling plan.

[0062] At operation 407, the drilling controller 114 may be configured to determine whether the analyzed hole is drillable. The drilling controller 114 may be configured to perform a simulation of the analyzed hole of the drilling plan 406. The simulation may be based on the 3D model 402 of the drilling face 140, the 3D model 403 of the at least one component of the drilling frame 100, and the kinematic model 404 of the drilling frame 100. The simulation of the drilling plan 405 may include determining whether a simulated collision occurs between a component of the drilling frame 100 (e.g., the drilling unit 130, the boom 120, or a portion thereof) and the drilling face 140. The simulation of the drilling plan 405 may include determining whether a simulated collision occurs between components of the drilling frame 100. The collision may include an unintentional (physical) contact between a first object and a second object. The first object may include a first portion of the drilling frame 100. The second object may include a second portion of the drilling frame 100 or an object in the environment of the drilling frame 100. The drilling controller 114 is configured to detect simulated collisions, for example, between a first boom of the drilling rig 100 and a drilling face 140, between the first boom and the second boom of the drilling rig 100, between a first drilling unit (coupled to the first boom) and the drilling face 140, between a first drilling unit (coupled to the first boom of the drilling rig 100) and a second drilling unit (coupled to the second boom of the drilling rig 100), between the first drilling unit and the second boom (or a portion thereof), or between at least one boom portion of the first or second boom and the drilling face 140. A simulated collision may be detected if point cloud data of components of the drilling rig 100 and / or the drilling face 140 overlap when the drilling unit 130 is placed or moved to a desired drilling position. The drilling controller 114 may be configured to determine a desired position of the drilling unit 130 based on the analyzed start and end points of the hole.

[0063] Figure 5An example of a simulated collision is shown. The axis x again represents the forward drive direction of the drilling rig 100. The axis y represents another horizontal axis, which in this example is towards the left pit wall of the tunnel relative to the forward drive direction. The drilling controller 114 can be configured to simulate the movement of the drilling unit 130 from its initial position towards the left pit wall. At a certain point, the drilling controller 114 can be configured to detect that the point cloud data of the drilling unit 130 and the point cloud data of the drilling face 140 overlap. Based on the detected collision, the drilling controller 114 can be configured to determine a possible position of the drilling unit 130 (e.g., the closest possible position to the drilling surface 140) for drilling the analyzed hole. However, it should be noted that movement to the desired drilling position may be prevented by a collision of components other than the drilling unit 130. For example, a simulated collision may be detected between the boom 120 and the drilling face 140 (or another boom) even if the drilling unit 130 would fit into the desired drilling position.

[0064] When drilling from the determined possible position of the drilling unit 130 and starting drilling from the planned starting point 501, determining whether the analyzed hole is drillable may include determining a resulting endpoint 502. If the resulting endpoint 502 is not the same as the planned endpoint 503 or is within a threshold distance from the planned endpoint 503, the drilling controller 114 may be configured to determine the hole as not drillable.

[0065] Return to reference Figure 4 If the drilling controller 114 determines that the hole is not drillable (e.g., due to a simulated collision), the drilling controller 114 may move back to operation 406 to analyze the next hole of the drilling plan 405. If the hole is drillable (e.g., no simulated collision is detected), the drilling controller 114 may move to operation 408 to adjust the starting point of the hole.

[0066] At operation 408 , the drilling controller 114 may be configured to adjust the starting point of the analyzed hole. Figure 5Also shown is an update of the hole of the drilling plan 405. In order to update the drilling plan 405, the drilling controller 114 may be configured to determine an adjusted starting point 504 of the analyzed hole. The adjusted starting point may be determined such that drilling can be performed from the determined possible position of the drilling unit 130 to the planned end point 503. However, the planned end point 503 may be maintained in the drilling plan 405. Maintaining this end point helps to obtain a successful blast, thereby at least approximately resulting in the desired profile of the tunnel. However, the end point may always be maintained, for example, if the drill head 134 will not reach the planned end point 503 when drilling from the adjusted starting point 504. The drilling controller 114 may therefore be configured to adjust the planned end point 503 towards the adjusted starting point 504, for example based on the length of the drill rod 133 or generally based on the available drilling depth of the drilling unit 130. Alternatively, the drilling controller 114 may be configured to adjust the planned endpoint 503 towards the adjusted starting point 504 such that the distance between the adjusted starting point 504 and the adjusted endpoint is substantially equal to the distance between the planned starting point 501 and the planned endpoint 503. This helps to achieve a successful blast and keep the resulting tunnel profile at least close to the desired profile.

[0067] In one example, the drilling controller 114 may be configured to determine a location of the drilling unit 130 based on the simulation, wherein the location is associated with the simulated collision. The location may be the exact location of the simulated collision, or a location near the collision location. The location of the drilling unit 130 may be represented in any suitable manner, such as by a location of two points of the drilling unit 130, or a location of one point of the drilling unit 130 associated with a posture, such as an orientation relative to one or more axes (e.g., yaw, pitch, roll). Based on the determined location, the drilling controller 114 may be configured to determine a position (e.g., location and / or orientation) that can reach the planned end point 503 from the determined location. Then, the drilling controller 114 may be configured to determine an adjusted starting point 504 of the analyzed hole based on the determined rotation, such that when the drilling unit 130 is rotated according to the determined rotation, the adjusted starting point 504 is located between the planned end point 503 and the drilling unit 130 (e.g., drill head 134).

[0068] This example may include manipulating positioning set points by the drilling controller 114, for example, to move the drill head 134 to the planned starting point 501. One set point may represent a point within a trajectory for moving a component of the drilling rig 100, such as the drill head 134, to a target position. A set of positioning set points may be defined between an initial position of the component and a target position to define the trajectory. The target position may be the planned starting point 501. For example, the last set point may be the planned starting point. The rotation set point may similarly represent a point of the component when the component is rotated to the planned orientation. The drilling controller 114 may be configured to, for example, simulate movement of the boom 120 and / or other components of the drilling rig 100 toward the starting point of the analyzed hole, such as at a predetermined speed. The drilling controller 114 may be configured to determine a target position of the drilling unit 130 based on the starting point of the analyzed hole. The drilling controller 114 may be configured to determine a target rotation based on the planned starting and ending points using geometric calculations. If a simulated collision is detected (e.g. based on a minimum threshold of the distance between the drilling unit 130 and the drilling face 140), the drilling controller 114 may be configured to update the target position to the current position of the drilling unit 130. The drilling controller 114 may be configured to update the target rotation such that the target rotation is determined according to the planned end point and the current position of the drilling unit 130. The drilling controller 114 may be configured to: if the distance is too low, manipulate the final position target relative to the obstacle. The drilling controller 114 may be configured to segment the point cloud and predefine the correct yielding direction for each point cloud. For example, the point cloud may be segmented into a plurality of subsets, each of which is associated with a different yielding direction away from the drilling face 140, or is generally associated with an obstacle. The drilling controller 114 may determine the yielding direction by the surface normal of the 3D model of the drilling face 140 at the collision point. For example, a first subset of the point cloud where the closest portion of the drilling face 140 is the first portion of the drilling face (e.g., the left pit wall relative to the forward drive direction of the drill rig 110) can be associated with a first yield direction (e.g., to the right). A second subset where the closest portion of the drilling face is the second portion of the drilling face 140 (e.g., the pit top) can be associated with a second yield direction (e.g., downward), which can be different from the first yield direction. Thus, different yield directions can be associated with different subsets of the point cloud, such as the left pit wall, the right pit wall, the pit top, the pit bottom, or the end of the tunnel. The drilling controller 114 can determine an updated starting point by moving the starting point to the yield direction associated with the location (in the point cloud data) of the simulated collision. This enables the generation of an updated drilling plan to be accelerated because the expected direction for adjusting the starting point is readily available after the simulated collision is detected.

[0069] Figure 6An example of weighted control of at least one component of a drilling mast is shown. Controlling the movement of a component of a (simulated) drilling mast 100, such as, for example, a boom 120 and / or a drilling unit 130, may be based on weighting of control signals of a collision avoidance system 602 configured to avoid collisions and a positioning system 604 configured to move the component in order to reach a planned drilling position, such as to enable the drilling mast 100 to reach both the start and end of an associated hole. For example, the positioning system 604 may be configured to cause an attractive force via a virtual (simulated) valve 606 that moves a component of the drilling mast 100 toward an obstacle (e.g., a portion of the drilling face 140) or another component of the drilling mast 100 near the planned drilling position. The collision avoidance system 602 may be configured to cause a repulsive force via the virtual valve 606 that limits or prevents movement of a component of the drilling mast 100 toward an obstacle. Thus, when the component(s) are in the rejection zone (e.g., within a threshold distance from an obstacle), hybrid positioning may be applied. A collision-free drilling position may be determined based on a stable point of attractive and repulsive forces. In a simulation, the virtual valve 606 may be configured to model a real valve, for example, by providing a motion request or position change request for a motion joint in a desired direction. A position set point may be obtained from the collision avoidance system 602. A rotation set point may be obtained from the positioning system 604. The control signals of the collision avoidance system 602 and the positioning system 604 may be weighted by multiplication, respectively. and The results of the multiplications can be summed to obtain a combined control signal for the virtual valve 606. In one example, .For example, and This provides a good balance between attractive and repulsive forces, allowing a smooth approach to a suitable drilling position while avoiding collisions. This method can also be used when detecting "collisions" in a simulation environment.

[0070] In one example, a brute force-like approach may be used to adjust the starting point of the analyzed hole. In this approach, the drilling controller 114 may be configured to test different starting points to find a starting point that enables collision-free drilling to the planned end point 503. The drilling controller 114 may be configured to determine candidate starting points, such as randomly selected points around the planned starting point 501. The drilling controller 114 may then be configured to perform a second simulation, again based on the 3D model of the drilling face 140, the 3D models of components of the drill frame 100 (e.g., the boom 120 and / or the drilling unit 130), and the kinematic model of the drill frame 100. The simulation may be performed one of the candidate starting points at a time to detect whether the candidate starting point enables collision-free drilling of the analyzed hole.

[0071] Various methods may be used to perform the simulation for different candidate starting points. For example, the drilling controller 114 may be configured to iterate the simulation for candidate starting points starting from the point closest to the planned starting point 501 and continuing in increasing order of distance to the planned starting point 501. Using this method, the drilling unit may be configured to determine the adjusted starting point as the first identified candidate starting point for achieving collision-free drilling. Alternatively, the drilling controller 114 may be configured to iterate the simulation with different candidate starting points regardless of their distance to the planned starting point 501. In this case, the drilling controller 114 may be configured to continue iterating the candidate starting points even if it finds a starting point that enables collision-free drilling. The adjusted starting point may be selected as the candidate starting point that is closest to the planned starting point 105 and that enables collision-free drilling. Thus, the starting point may be adjusted so that no simulated collision occurs in the case of the adjusted starting point. In Figure 4 In the example of , the adjusted point may be point 504 .

[0072] In one example, the starting point of the analyzed hole may be adjusted based on analytically finding a point that enables collision-free drilling to the planned end point 503. The analysis may include calculating a position of the drilling unit 130 that is sufficiently far from the drilling face 140 and is a possible position of the drilling unit taking into account the kinematic model based on the 3D model of the drilling face 140, the 3D models of the components of the drill frame 100, and the kinematic model of the drill frame 100. For example, the drilling controller 114 may analytically determine Figure 5 The possible positions of the drilling unit 130 are shown and the adjusted starting point 504 is determined accordingly.

[0073] At operation 409, the drilling controller 114 may be configured to determine whether there are more holes to be analyzed, in other words, whether it has analyzed the holes of the drilling plan 405. If there are additional holes to be analyzed, the drilling controller 114 may be configured to move back to operation 406 to analyze the next planned hole. By iterating operations 407 and 408 for the holes of the drilling plan 405, the drilling controller 114 may be configured to determine an updated drilling plan in which the starting point of at least one hole is adjusted, for example as described with reference to operation 408. The drilling controller 114 may be configured to determine the updated drilling plan in response to detecting at least one simulated collision. When updating the drilling plan, the drilling controller 114 may update the starting point of the hole that will cause the collision while maintaining the identifier of the hole in the drilling plan. Alternatively, the drilling controller 114 may be configured to delete or mark the hole that will cause the collision as invalid and create a new hole with a different identifier, an adjusted starting point, and an original planned end point or an adjusted end point. Voiding and replacing the original hole with another hole can help visualize updates in the drilling plan, such as for documentation of changes.

[0074] At operation 410, the drilling controller 114 may be configured to cause the start of drilling. If the drilling controller 114 is located outside the drill rig 100, such as Figure 2 , the drilling controller 114 may be configured to cause the drilling mast 100 to start drilling by sending a request or command to start drilling to the drilling mast 100. The drilling controller 114 may be configured to send an updated drilling plan to the drilling mast 100, for example, before or together with sending the request or command to start drilling. The drilling mast 100 may be configured to start drilling in response to receiving a command or request to start drilling from the drilling controller 114, regardless of whether the drilling controller 114 is located at the drilling mast 100 or outside the drilling mast 100. When the drilling controller 114 is located outside the drilling mast 100, the drilling mast 100 may include a local drilling controller ( Figure 2 405) to perform drilling based on or according to the updated drilling plan received from the external drilling controller 114. Starting drilling after the update of the drilling plan 405 can improve the efficiency of the drilling program because drilling does not need to be interrupted due to encountering a hole that cannot be drilled.

[0075] Figure 7An example of an apparatus configured to practice one or more exemplary embodiments is shown. The apparatus 700 may be or include a drilling control apparatus, such as a server communicatively coupled to the drilling mast 100, a drilling control device located at the drilling mast 100, an external drilling control device 202, a drilling controller 114, the drilling mast 100 itself, or generally any device or system configured to implement the functionality described herein. Although the apparatus 700 is shown as a single device, it should be understood that the functionality of the apparatus 700 may be distributed to multiple devices where applicable.

[0076] The device 700 may include at least one processor 702. The at least one processor 702 may include, for example, one or more of a variety of processing devices, such as, for example, a coprocessor, a microprocessor, a controller, a digital signal processor (DSP), a processing circuit with or without an accompanying DSP, or various other processing devices including integrated circuits such as, for example, application specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), microcontroller units (MCUs), hardware accelerators, special purpose computer chips, etc.

[0077] The device 700 may also include at least one memory 704. The at least one memory 704 may be configured to store, for example, computer program code, such as operating system software and application software. The memory 704 may include one or more volatile memory devices, one or more non-volatile memory devices, and / or a combination of the above. For example, the memory may be embodied as a magnetic storage device (such as a hard disk drive, etc.), an optical magnetic storage device, or a semiconductor memory (such as a mask ROM, a PROM (programmable ROM), an EPROM (erasable PROM), a flash ROM, a RAM (random access memory), etc.). The memory 704 is provided as an example of a (non-transitory) computer-readable medium. The term "non-transitory" as used herein is a limitation of the medium itself (i.e., it is tangible, not a signal), rather than a limitation on data storage persistence (e.g., RAM vs. ROM). The at least one memory 704 may also be implemented separately from the device 700, for example as a computer-readable (storage) medium, examples of which include a memory stick, a compact disc (CD), etc.

[0078] When the device 700 is configured to implement a certain function, individual components and / or multiple components (for example, the at least one processor 702 and / or the at least one memory 704) of the device 700 may be configured to implement the function. In addition, when the at least one processor 702 is configured to implement an individual function, the function may be implemented using, for example, a program code 706 included in the at least one memory 704.

[0079] The functions described herein may be performed, at least in part, by one or more computer program product components, such as software components. According to an exemplary embodiment, the device 700 includes a processor or processor circuit, such as a microcontroller, configured by a program code 706, which, when executed, performs an embodiment of the operations and functions described herein. The program code 706 is provided as an example of an instruction that, when executed by the at least one processor 702, causes the operation of the device 700.

[0080] For example, the drilling controller 114 may be at least partially implemented as a program code configured to cause the device to perform the functions of the drilling controller 114. Similarly, the transmission of data (e.g. sensor data, 3D or kinematic models or drilling plans) through an internal or external communication interface of the drilling rig 100 may be controlled by software.

[0081] Alternatively or in addition, the functions described herein may be performed at least in part by one or more hardware logic components. For example, but not limited to, illustrative types of hardware logic components that may be used include field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), complex programmable logic devices (CPLDs), graphics processing units (GPUs), neural processing units (NPUs), tensor processing units (TPUs), etc.

[0082] The device 700 may include a communication interface 708 configured to enable the device 700 to send and / or receive information. The communication interface 708 may include an internal or external communication interface, such as a radio interface between the drill rig 100 and the external drilling control device 202. The device 700 may also include other components and / or functions, such as a user interface (not shown) including at least one input device and / or at least one output device. The input device may take various forms, such as a keyboard, a touch screen, or one or more embedded control buttons. The output device may, for example, include a display, a speaker, etc. The user interface may enable a human user to monitor various operations, such as, for example, the generation of an updated drilling plan, the visualization of the execution of the updated drilling plan, etc.

[0083] The device 700 may be configured to perform or cause to be performed any aspect of the method described herein. In addition, the computer program or computer program product may include instructions for causing the device 700 to perform any aspect of the method described herein when executed by the device 700. In addition, the device 700 may include means for performing any aspect of the method described herein. In one example, the device includes the at least one processor 702, and the at least one memory 704 includes a program code 706 (instructions), which is configured to cause the device 700 to perform the method when executed by the at least one processor 702. Generally, computer program instructions can be executed on a device that provides general processing functions. Such a device may be embedded in, for example, a computer, a server, etc. The method may therefore be computer-implemented, for example based on an algorithm that can be executed by a general processing function, an example of which is the at least one processor 702. The device 700 may include means for transmitting or receiving information, such as one or more wired or wireless (e.g., radio) transmitters or receivers, which may be coupled to or configured to be coupled to a transmitter or receiver of one or more antennas or a wired communication interface.

[0084] Figure 8 An example of a method for controlling a drilling rig is shown. The method may be based on a program code 706 , for example, which is performed by the drilling controller 114 or the drilling rig 100 when the program code is executed by the drilling control device 202 or the drilling rig 100 .

[0085] At 801 , the method may include obtaining a three-dimensional (3D) model of a drill face.

[0086] At 802 , the method may include obtaining a 3D model of at least one component of a drill frame and a kinematic model of the drill frame.

[0087] At 803, the method may include obtaining a drilling plan indicating a plurality of start points and end points of a plurality of holes to be drilled in a drilling face.

[0088] At 804 , the method may include performing a simulation of the drilling plan based on the 3D model of the drilling face, the 3D model of the at least one component of the drill frame, and a kinematic model of the drill frame.

[0089] At 805 , the method may include detecting a simulated collision between the at least one component of the drill frame and a drilling surface or between components of the drill frame based on a simulation, wherein the simulated collision is associated with simulating drilling of at least one hole of the plurality of holes.

[0090] At 806 , the method may include determining an updated drilling plan in response to detecting the simulated collision, the updated drilling plan including an adjusted starting point for the at least one hole in the plurality of holes.

[0091] Various examples of methods are explained above with respect to the functionality of the drilling controller 114, the drilling control device 202 and / or the drilling rig 100, and therefore will not be repeated here. It will be understood that the described exemplary embodiments may be combined in different ways, unless expressly not permitted.

[0092] Exemplary embodiments of the present disclosure enable the simulation of the drilling plan to be performed on-site (e.g., at the tunnel) even before a single hole is drilled. Based on the simulation, the drilling controller 114 can identify any holes in the drilling plan that cannot be drilled before drilling is started. The drill rig 100 can move to reach the hole, or other actions can be taken, such as updating the start and / or end point of the hole. The inability to reach the planned hole may be caused by obstacles (e.g., rocks), limitations in the kinematics of the boom, or other impossible positions of components of the drill rig 100. This situation can be detected and avoided by simulation. The drilling plan can be updated to improve drillability without significantly affecting the blasting results pre-designed / verified by the blasting modeling tool. The efficiency of drilling can be improved because expected problems with drilling can be actively avoided before they occur. For example, even a severe fracture deficiency in the tunnel pit wall will not interrupt the drilling process, so the drilling / blasting of the tunnel will proceed faster because the fracture deficiency can be taken into account when updating the drilling plan. For example, if necessary, the fracture deficiency can be blasted separately in the same detonation.

[0093] Although the subject matter has been described with language specific to structural features and / or actions, it should be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or actions described above. On the contrary, the specific features and actions described above are disclosed as examples of implementing the claims, and other equivalent features and actions are intended to fall within the scope of the claims.

[0094] It should be understood that the benefits and advantages described above may relate to one embodiment or may relate to several embodiments. The embodiments are not limited to embodiments that solve any or all of the problems described or embodiments that have any or all of the benefits and advantages described. It will also be understood that reference to "an" item may refer to one or more of those items.

[0095] The steps or operations of the methods described herein may be performed in any suitable order, or may be performed simultaneously where appropriate. In addition, each step frame may be deleted from any method without departing from the scope of the subject matter described herein. The various aspects of any exemplary embodiment described above may be combined with the various aspects of any other exemplary embodiment described to form other exemplary embodiments without losing the effect sought.

[0096] The term "comprising" is used herein to mean including the identified methods, step blocks or elements, but such step blocks or elements do not comprise an exclusive list and the method or apparatus may contain additional step blocks or elements.

[0097] As used herein, “at least one of: ” and “at least one of ” and similar expressions (wherein a list of two or more elements is combined by “and” or “or”) mean at least any one of the elements, or at least any two or more of the elements, or at least all of the elements. The term “or” may be understood to also encompass the case of including two items separated by “or”. Therefore, “or” may be understood as an inclusive “or” rather than an exclusive “or”.

[0098] Although a topic may be referred to as the "first" or "second" topic, this does not necessarily indicate any order or importance of the topics. Instead, such an attribute may be used solely for the purpose of distinguishing between topics.

[0099] It should be understood that the above description is given as an example only, and various modifications may be made by those skilled in the art. The above description, examples and data provide a complete description of the structure and use of exemplary embodiments. Although various embodiments have been described above with a certain degree of particularity or with reference to one or more separate embodiments, those skilled in the art may make many changes to the disclosed embodiments without departing from the scope of this specification.

Claims

1. A drilling control device comprising a drilling simulator, the drilling simulator being configured to perform a simulation of the movement of at least one component of a drill frame, the device comprising: at least one processor; as well as at least one memory including computer program code, the at least one memory and the computer program code being configured to, with the at least one processor, cause the apparatus to at least: Obtaining a three-dimensional (3D) model of the drilled surface; obtaining a 3D model comprising 3D geometrical data of at least one component of a drilling mast and a kinematic model of the drilling mast, the at least one component comprising at least one boom, and the kinematic model of the drilling mast enabling the movement of the at least one boom to be modeled; obtaining a drilling plan indicating a plurality of starting points and end points of a plurality of holes to be drilled in the drilling face; performing a simulation of the drilling plan based on the 3D model of the drilling face, the 3D model of the at least one component of the drill frame and a kinematic model of the drill frame; detecting a simulated collision between the at least one component of the drill stand and the drilling face based on the simulation, wherein the simulated collision is associated with simulating drilling of at least one hole of the plurality of holes; as well as In response to detecting the simulated collision, an updated drilling plan is determined, the updated drilling plan including an adjusted starting point for the at least one hole in the plurality of holes.

2. The apparatus of claim 1 , wherein the computer program code is further configured to, with the at least one processor, cause the apparatus to: maintaining an endpoint of the at least one hole in the plurality of holes in the updated drilling plan, wherein the endpoint of the at least one hole in the plurality of holes was previously included in the drilling plan, adjusting the end point of the at least one of the plurality of holes toward the adjusted start point of the at least one of the plurality of holes, or The end point of the at least one hole among the plurality of holes is adjusted toward the adjusted start point so that a distance between the adjusted start point and the end point is substantially equal to a distance between a start point and an end point of the at least one hole among the plurality of holes.

3. The apparatus according to claim 1 or 2, wherein the computer program code is further configured to, together with the at least one processor, cause the apparatus to: determining a location of a drilling unit of the drill stand based on the simulation, wherein the location of the drilling unit is associated with the simulated collision; determining a position of the drilling unit from the determined location of the drilling unit to an end point of the at least one hole of the plurality of holes; and A starting point of the at least one hole in the plurality of holes is adjusted based on the determined position.

4. The apparatus according to claim 1 or 2, wherein the computer program code is further configured to, together with the at least one processor, cause the apparatus to: determining at least one candidate starting point for the at least one well of the plurality of wells; performing a second simulation of drilling the at least one hole of the plurality of holes using the at least one candidate starting point based on the 3D model of the drilling face, the 3D model of the at least one component of the drill frame, and a kinematic model of the drill frame; and A starting point of the at least one hole of the plurality of holes is adjusted based on the second simulation so that no simulated collision occurs between the at least one component of the drill stand and the drilling face.

5. The apparatus according to claim 1 or 2, wherein the computer program code is further configured to, together with the at least one processor, cause the apparatus to: Based on the 3D model of the drilling surface, the 3D model of the at least one component of the drill frame and the kinematic model of the drill frame, a starting point of the at least one hole among the plurality of holes is adjusted so that no simulated collision occurs between the at least one component of the drill frame and the drilling surface.

6. The apparatus according to any one of claims 1 to 5, wherein the computer program code is further configured to, together with the at least one processor, cause the apparatus to: A mapping between the plurality of start and end points and the 3D model of the drilling face is performed.

7. The device according to any one of claims 1 to 6, wherein: The at least one component of the drilling mast comprises at least one of the following: First boom, The second boom, a first drilling unit coupled to the first boom, a second drilling unit coupled to the second boom, at least one boom section of a first boom, or At least one boom section of the second boom.

8. The apparatus according to any one of claims 1 to 7, wherein the computer program code is further configured to, together with the at least one processor, cause the apparatus to: The drilled surface is scanned to obtain a 3D model of the drilled surface.

9. The apparatus of claim 8, wherein the computer program code is further configured to, with the at least one processor, cause the apparatus to: The drilling face is scanned in response to detecting that the drill stand has reached a planned drilling position.

10. The apparatus according to any one of claims 1 to 9, wherein the computer program code is further configured to, with the at least one processor, cause the apparatus to: Drilling of the plurality of holes is initiated based on the updated drilling plan.

11. The device according to any one of claims 1 to 10, wherein: The equipment includes the drilling stand.

12. The apparatus according to any one of claims 1 to 7, wherein the computer program code is further configured to, with the at least one processor, cause the apparatus to: receiving the 3D model of the drilling face from the drill frame to obtain the 3D model of the drilling face; and The updated drilling plan is transmitted to the drill stand.

13. Apparatus according to claim 12, wherein the apparatus comprises a drilling control device, wherein the drilling control device is external to the drill stand.

14. A method performed by an apparatus comprising a drilling simulator configured to perform a simulation of movement of at least one component of a drilling frame, the method comprising: Obtaining a three-dimensional (3D) model of the drilled surface; obtaining a 3D model comprising 3D geometrical data of at least one component of a drilling mast and a kinematic model of the drilling mast, the at least one component comprising at least one boom, and the kinematic model of the drilling mast enabling the movement of the at least one boom to be modeled; obtaining a drilling plan indicating a plurality of starting points and end points of a plurality of holes to be drilled in the drilling face; performing a simulation of the drilling plan based on the 3D model of the drilling face, the 3D model of the at least one component of the drill frame and a kinematic model of the drill frame; detecting a simulated collision between the at least one component of the drill stand and the drilling face based on the simulation, wherein the simulated collision is associated with simulating drilling of at least one hole of the plurality of holes; as well as In response to detecting the simulated collision, an updated drilling plan is determined, the updated drilling plan including an adjusted starting point for the at least one hole in the plurality of holes.

15. A computer program comprising instructions which, when executed by a device comprising a drilling simulator configured to perform a simulation of movement of at least one component of a drill stand, cause the device to at least: Obtaining a three-dimensional (3D) model of the drilled surface; obtaining a 3D model comprising 3D geometrical data of at least one component of a drilling mast and a kinematic model of the drilling mast, the at least one component comprising at least one boom, and the kinematic model of the drilling mast enabling the movement of the at least one boom to be modeled; obtaining a drilling plan indicating a plurality of starting points and end points of a plurality of holes to be drilled in the drilling face; performing a simulation of the drilling plan based on the 3D model of the drilling face, the 3D model of the at least one component of the drill frame and a kinematic model of the drill frame; detecting a simulated collision between the at least one component of the drill stand and the drilling face based on the simulation, wherein the simulated collision is associated with simulating drilling of at least one hole of the plurality of holes; as well as In response to detecting the simulated collision, an updated drilling plan is determined, the updated drilling plan including an adjusted starting point for the at least one hole in the plurality of holes.