BACKGROUND

Modern construction machines have dramatically increased the efficiency of performing various construction projects. For example, earthmoving machines employing automatic slope control systems are able to grade a project area using fewer passes and in less time than what was previously done manually. As another example, modern asphalt pavers and other road makers have allowed replacement of old roads and construction of new roads to occur on the order of hours and days instead of what once took place over weeks and months. Construction crews also now comprise fewer individuals due to the automation of various aspects of the construction process. Much of the technological advances of construction machines are owed in part to the availability of accurate sensors that allow real-time monitoring of the condition and position of a machine's components and/or the environment surrounding the machine. Despite the improvements in modern construction machines, new systems, methods, and techniques are still needed.

SUMMARY

In a first aspect of the present invention, a construction machine is provided. The construction machine may include a body including a front frame and a yoke pin. The construction machine may also include a body angle sensor configured to detect body angle data corresponding to movement of the body. The construction machine may further include a yoke pin angle sensor configured to detect yoke pin angle data corresponding to rotation of the yoke pin. The construction machine may further include a front 3D positioning device mounted to the body and configured to detect a geospatial position of the body within a world space. The construction machine may further include a drawbar coupled to the body via a first articulating connection. The construction machine may further include a drawbar angle sensor configured to detect drawbar angle data corresponding to movement of the drawbar. The construction machine may further include a blade coupled to the drawbar via a second articulating connection. The construction machine may further include a blade angle sensor configured to detect blade angle data corresponding to movement of the blade.

The construction machine may further include one or more processors configured to perform operations. The operations may include receiving, from the body angle sensor, the body angle data. The operations may also include receiving, from the drawbar angle sensor, the drawbar angle data. The operations may further include receiving, from the blade angle sensor, the blade angle data. The operations may further include receiving, from the front 3D positioning device, the geospatial position of the body within the world space. The operations may further include calculating, based on the drawbar angle data and the blade angle data, a first and a second position on the blade within a machine space. In some embodiments, the machine space includes a machine-space reference point positioned within the construction machine. The operations may further include calculating, based on the body angle data, the geospatial position, and the first and second positions on the blade within the machine space, a first and a second position on the blade within the world space. The operations may further include causing movement of at least one of the first articulating connection and the second articulating connection based on the first and second positions on the blade within the world space.

In some embodiments, the body angle sensor is mounted to the front frame, the drawbar angle sensor is mounted to the drawbar, the blade angle sensor is mounted to the blade, and the front 3D positioning device is mounted to the front frame. In some embodiments, the geospatial position of the body is a geospatial position of the front frame. In some embodiments, the construction machine includes a rear 3D positioning device mounted to a cab of the body and configured to detect a geospatial position of the cab. In some embodiments, the operations include receiving, from the rear 3D positioning device, the geospatial position of the cab, calculating, based on the geospatial position of the front frame and the geospatial position of the cab, a machine heading of the construction machine, and causing movement of at least one of the first articulating connection and the second articulating connection based on the machine heading. In some embodiments, the machine-space reference point is the first articulating connection. In some embodiments, calculating the first and second positions on the blade within the machine space includes calculating a first and a second vector beginning at the machine-space reference point and ending at the first and second positions on the blade within the machine space. In some embodiments, the first and second positions on the blade within the machine space are located at opposite ends along a bottom tip of the blade. In some embodiments, the operations include calculating, based on the body angle data and the geospatial position of the body, a space translation variable.

In a second aspect of the present invention, a machine control system is provided. The machine control system may include a body angle sensor configured to detect body angle data corresponding to movement of a body of a construction machine. In some embodiments, the body includes a front frame. The machine control system may also include a yoke pin angle sensor configured to detect yoke pin angle data corresponding to rotation of a yoke pin. In some embodiments, the body includes the yoke pin. The machine control system may further include a front 3D positioning device configured to detect a geospatial position of the body within a world space. The machine control system may further include a drawbar angle sensor configured to detect drawbar angle data corresponding to movement of a drawbar of the construction machine. In some embodiments, the drawbar is coupled to the body via a first articulating connection. The machine control system may further include a blade angle sensor configured to detect blade angle data corresponding to movement of a blade of the construction machine. In some embodiments, the blade is coupled to the drawbar via a second articulating connection.

The machine control system may further include one or more processors configured to perform operations. The operations may include receiving, from the body angle sensor, the body angle data. The operations may also include receiving, from the drawbar angle sensor, the drawbar angle data. The operations may further include receiving, from the blade angle sensor, the blade angle data. The operations may further include receiving, from the front 3D positioning device, the geospatial position of the body within the world space. The operations may further include calculating, based on the drawbar angle data and the blade angle data, a first and a second position on the blade within a machine space. In some embodiments, the machine space includes a machine-space reference point positioned within the construction machine. The operations may further include calculating, based on the body angle data, the geospatial position, and the first and second positions on the blade within the machine space, a first and a second position on the blade within the world space. The operations may further include causing movement of at least one of the first articulating connection and the second articulating connection based on the first and second positions on the blade within the world space.

In some embodiments, the body angle sensor is mounted to the front frame, the drawbar angle sensor is mounted to the drawbar, the blade angle sensor is mounted to the blade, and the front 3D positioning device is mounted to the front frame. In some embodiments, the geospatial position of the body is a geospatial position of the front frame. In some embodiments, the machine control system includes a rear 3D positioning device mounted to a cab of the body and configured to detect a geospatial position of the cab. In some embodiments, the operations include receiving, from the rear 3D positioning device, the geospatial position of the cab, calculating, based on the geospatial position of the front frame and the geospatial position of the cab, a machine heading of the construction machine, and causing movement of at least one of the first articulating connection and the second articulating connection based on the machine heading. In some embodiments, the machine-space reference point is the first articulating connection. In some embodiments, calculating the first and second positions on the blade within the machine space includes calculating a first and a second vector beginning at the machine-space reference point and ending at the first and second positions on the blade within the machine space. In some embodiments, the first and second positions on the blade within the machine space are located at opposite ends along a bottom tip of the blade. In some embodiments, the operations include calculating, based on the body angle data and the geospatial position of the body, a space translation variable.

In a third aspect of the present invention, a method of operating a construction machine is provided. The method may include receiving, from a body angle sensor, body angle data corresponding to movement of a body of a construction machine. In some embodiments, the body includes a front frame. The method may further include receiving, from a yoke pin angle sensor, yoke pin angle data corresponding to rotation of a yoke pin. In some embodiments, the body includes the yoke pin. The method may further include receiving, from a front 3D positioning device mounted to the body, a geospatial position of the body within the world space. The method may further include receiving, from a drawbar angle sensor, drawbar angle data corresponding to movement of a drawbar of the construction machine. In some embodiments, the drawbar is coupled to the body via a first articulating connection. The method may further include receiving, from a blade angle sensor, blade angle data corresponding to movement of a blade of the construction machine. In some embodiments, the blade is coupled to the drawbar via a second articulating connection. The method may further include calculating, based on the drawbar angle data and the blade angle data, a first and a second position on the blade within a machine space. In some embodiments, the machine space includes a machine-space reference point positioned within the construction machine. The method may further include calculating, based on the body angle data, the geospatial position, and the first and second positions on the blade within the machine space, a first and a second position on the blade within the world space. The method may further include causing movement of at least one of the first articulating connection and the second articulating connection based on the first and second positions on the blade within the world space.

In some embodiments, the body angle sensor is mounted to the front frame, the drawbar angle sensor is mounted to the drawbar, the blade angle sensor is mounted to the blade, and the front 3D positioning device is mounted to the front frame. In some embodiments, the geospatial position of the body is a geospatial position of the front frame. In some embodiments, the method includes receiving, from a rear 3D positioning device mounted to a cab of the body, the geospatial position of the cab, calculating, based on the geospatial position of the front frame and the geospatial position of the cab, a machine heading of the construction machine, and causing movement of at least one of the first articulating connection and the second articulating connection based on the machine heading. In some embodiments, the machine-space reference point is the first articulating connection. In some embodiments, calculating the first and second positions on the blade within the machine space includes calculating a first and a second vector beginning at the machine-space reference point and ending at the first and second positions on the blade within the machine space. In some embodiments, the first and second positions on the blade within the machine space are located at opposite ends along a bottom tip of the blade.

