Patent ID: 12217414

DETAILED DESCRIPTION

FIG.1is a perspective view of a system100scanning a dump body54of a haul truck50. A job site10may include multiple locations designated for particular purposes. For example, the job site10can include a load location (not shown), where at least one excavator20(hereinafter “excavator20”) can load one or more haul trucks50(hereinafter “haul truck50”) with material. The job site10can also include one or more dump locations (not shown) where the haul truck50, with or without the help of the excavator20, can unload material carried by the haul truck50. In another example, the haul trucks can be loaded or unloaded at a location that is not on the job site10.

The excavator20can be configured to load or unload the haul truck50. The excavator20can include a platform22, at least one ground-engaging unit (hereinafter “ground-engaging unit24”), and a digging and dropping system25. In one or more examples, the excavator20can be any type of machine used for digging material on a jobsite.

The platform22can be configured to hold an operator of the excavator20that controls the excavator20. As shown inFIG.1, the platform22can extend longitudinally between and away from the ground-engaging units24. The ground-engaging units24and the digging and dropping system25can be attached to the platform22.

The ground-engaging units24can be configured to move the excavator20in forward and backward directions along the ground surface. As shown inFIG.1, the ground-engaging units24can be tracked assemblies or crawlers. In another example, the ground-engaging units24can be wheels, such as inflatable or hard tires, or any other ground-engaging device used for navigating construction vehicles.

The digging and dropping system25can be configured to dig up and drop material on the job site10. The digging and dropping system25can include a boom26, a stick member30, bucket34, and a bucket cylinder36.

The boom26can attach to and extend from the platform22. The boom26can mechanically couple the platform22and the stick member30. The boom26can include at least one boom cylinder28(hereinafter “boom cylinders28”). The boom cylinders28can be attached to the boom26on one end and attached to the platform22on the other end. The boom cylinders28can expand and retract to move the boom26in relation to the platform22.

The stick member30can be pivotally attached to the boom26. The stick member30can extend from the boom26. The stick member30can mechanically couple the boom26and the bucket34. The stick member30can include at least one stick member cylinder32(hereinafter “stick member cylinder32”). The stick member cylinder32can attach to the stick member30on one end and attach to the boom26on another end. The stick member cylinders32can expand and retract to move the stick member30in relation to the boom26.

The bucket34can be configured to pierce the surface and pick up the material on the job site10. The bucket34can be pivotally attached to the stick member30opposite from where the stick member30attaches to the boom26. The bucket34can include at least one bucket cylinder36(hereinafter “bucket cylinders36”). The bucket cylinders36can attach to the stick member30on one end and attach to the bucket34on another end. The bucket cylinders36can expand and retract to move the bucket in relation to the stick member30.

The boom26, the boom cylinders28, the stick member30, the stick member cylinders32, the bucket34, and the bucket cylinders36can be controlled by the operator using an operator controller (not shown) to move the position of the bucket34and pick up and drop a material.

The platform22can include a power source40. The power source40can be provided in any number of different forms including, but not limited to, internal combustion engines, electric motors, hybrid engines, or any power source used to power construction equipment. Power from the power source40can be transmitted to various components and systems of the excavator20, such as the ground-engaging units24or the digging and dropping system25.

The excavator20can be controlled by one or more controllers (hereinafter “controller42”). The controller42can include one or more processors, microprocessors, microcontrollers, electronic control modules (ECMs), electronic control units (ECUs), programmable logic controller (PLC), or any other suitable means for electronically controlling functionality of the excavator20.

The haul truck50can be configured to haul and unload material on or off of the job site10. The haul truck50can include a frame52, a dump body54, a platform56, and ground-engaging units58.

The frame52can be configured to provide structural support and rigidity to the other components of the haul truck50. For example, the dump body54, the platform56, and the ground-engaging units58can all be attached to the frame52. Thus, the frame52can be exposed to many stresses and strains while the haul truck50is filled, haul truck50navigates around the job site10or off of the job site10, and while the haul truck50is unloaded.

The dump body54can be configured to receive material from the excavator20or any other piece of equipment that can load material into the dump body54. The dump body54can be attached to at least one haul body cylinder (not shown). The dump body54can be pivotally attached to the frame52. The haul body cylinders can be attached to the frame52and the dump body54such that when the haul body cylinders expand the dump body54can rotate about their connection to the frame52to tip the dump body54upward, and when the haul body cylinders retract, the dump body54can rotate about their connection to the frame52to level out the dump body54with the frame52.

The ground-engaging units58can be configured to move the haul truck50in forward and backward directions along the ground surface. As shown inFIG.1, the ground-engaging units58can be wheels, such as inflatable or hard tires. In another example, the ground-engaging units58can be tracked assemblies or crawlers, or any other ground-engaging device used for navigating construction vehicles.

The platform56can be configured to hold an operator of the haul truck50and controls (e.g., human machine interface) that control the haul truck50. As shown inFIG.1, the platform can extend longitudinally between and away from the ground-engaging units58. The platform56can include a power source70and a controller72.

The power source70can be configured to power various components of the haul truck50. The power source70can be provided in any number of different forms including, but not limited to, internal combustion engines, electric motors, hybrid engines, or any power source used to power construction equipment. Power from the power source70can be transmitted to various components and systems of the haul truck50, such as the ground-engaging units58or the haul body cylinders60.

The controller72can be configured to control various components of the haul truck50. The controller72can include one or more processors, microprocessors, microcontrollers, electronic control modules (ECMs), electronic control units (ECUs), programmable logic controller (PLC), or any other suitable means for electronically controlling functionality of the haul truck50.

As shown inFIG.1, a system for measuring carryback (hereinafter “system100”) can be used on the job site10or other locations such as between a loading location and a dumping location, for example. The system100can be configured to identify a type of dump bed, calculate an amount of caryback in the dump bed, and update an accounting of material moved on the job site10. The system100can include at least one scanning device102such as a 3D scanner, camera, or other device for capturing three-dimensional information about the interior of the dump body. As shown inFIG.1, the scanning device102can be installed on the boom26of the excavator20such that the scanning device102can have the dump body54within a field of view104. In one or more examples, the scanning device102can be installed on the stick member30of the excavator20such that the scanning device102can have the dump body54within a field of view104. In yet another example, the scanning device102can be installed anywhere else on the excavator20, such that the scanning device102can have the dump body54within a field of view104. The scanning device102and the field of view104will be discussed in more detail below with relation toFIG.4.

FIG.2is a perspective view of the scanning device102of the system100scanning the dump body54of the haul truck50. As shown inFIG.2, the scanning device102can be mounted on post170(e.g., in addition to or as an alternative to a scanning device installed on the excavator). In one or more examples, the post170may be tall enough such that the scanning device102can have the dump body54of the haul truck50within the field of view104when the haul truck50parks, drives, or otherwise passes under or by the scanning device102. In one or more examples, the post170can be located on the job site10. In another example, the post170can be located off the job site10, in any location that the haul truck50can drive. For example, the post170can be located on a side of a road or other pathway of one or more haul trucks. In one or more examples, the post170may be positioned a set distance away from the job site10, such that drivers can get their truck scanned by the scanning device102and the system100can alert the job site that the haul truck (e.g., haul truck50) is near the job site10(e.g., leaving or approaching).

FIG.3is a perspective view of the dump body54of the haul truck50. The dump body54can include an interior surface62, at least one sidewall64(hereinafter “sidewalls64”), a floor66, and a truck wall68. As shown inFIG.3, each of the sidewalls64can extend from opposite ends of the floor66. The truck wall68can extend from the floor at an end that is nearest a haul truck (not shown). Thus, the truck wall68can be configured to extend away from the floor66until it reaches a height of the sidewalls64, and then extend away from the sidewalls64to help protect the platform56of the haul truck50. The interior surface62is defined by the sidewalls64, the floor66, and the truck wall68. The interior surface62can define a volume V of the dump body54.

The dump body54show inFIG.3is just one example of a dump body. However, dump bodies come in all different shapes and sizes. In one or more examples, a dump body can have higher or shorter sidewalls. In one or more examples, a dump body can have a higher or shorter truck wall. In one or more examples, a dump body can have a longer or a shorter floor. In one or more examples, a dump body can combine any of the combinations of higher or shorter sidewalls, higher or shorter truck wall, or a longer or shorter floor. Thus, as one or more of these dump body parameters change, an interior surface and volume of the dump body can also change. Therefore, the system100(shown inFIGS.1and2, and discussed in further detail below) can be able to detect a dump body type and determine a volume V thereof. Still further, while dump bodies of haul trucks are contemplated and shown, carryback can occur in a variety of other devices and systems.

In one or more examples, the system100may be configured to identify any type of truck and define a set of criteria for determining geometric parameters of the dump body to compare to one or more stored scans and find carryback within the dump body.

FIG.4is a schematic diagram of the system100used to detect carryback in the dump body54(FIGS.1-3) of the haul truck50(FIGS.1-2). The system100can include a first controller200, a second controller208, and a computer231. In one or more examples, the first controller200, the second controller208, and the computer231can be combined in various combinations. For example, the first controller200and the second controller208can be combined to interact with the computer231. In another example, the first controller200can be combined with the computer231to interact with the second controller208. In yet another example, the second controller208can be combined with the computer231to interact with the first controller200.

The first controller200can include one or more processors, microprocessors, microcontrollers, electronic control modules (ECMs), electronic control units (ECUs), programmable logic controller (PLC), or any other suitable means for processing image or three-dimensional data captured by the scanning device102and communicated to the second controller208and the computer231. The first controller200may include a storage medium or memory accessible by the controller200, for example, in the form of a floppy disk, hard drive, optical medium, random access memory (RAM), read-only memory (ROM), or any other suitable computer-readable storage medium commonly used in the art (each referred to as a “database”), which can be in the form of a physical, non-transitory storage medium. As shown inFIGS.1and2, the first controller200can be installed within the system100. In one or more examples, the first controller200can be a controller onboard the excavator20(e.g., controller42(shown inFIG.1)). In the case of the scanning device102being arranged on a post170, the controller200may be present on the post170or at a back office location, for example.

The first controller200can be in electrical communication with one or more scanning devices102. In one or more examples, the first controller200can be in electrical communication with two scanning devices102. The scanning device102can be configured to capture images (motion (i.e., continuous video images), stationary (i.e., photos taken at a set frequency)) or three-dimensional data within the field of view104and communicate those images and/or data back to the first controller200. In one or more examples, the scanning device102can be a stereo camera (i.e., 2 monochrome and 1 color camera modules). In another example, the scanning device102can be any other kind of camera that can be used to detect carryback within the dump body of a dump truck. In still other examples, the scanning device102can include a three-dimensional scanner or other surface capturing system.

Each scanning device102can define a field of view104. To increase or decrease the field of view104, the scanning device102can be adjusted (e.g., moved farther or closer to the objects) or more scanning devices102can be added to increase the total field of view104of the system100. In even more examples, the scanning device102can be adjusted to increase the field of view104. For example, a lens (not pictured) of the scanning device102can be added (or changed) to the scanning device102to increase the width of the field of view104. There are many other alterations (zoom, focal point adjustments, etc.) that can be made to the scanning device102to improve the field of view104and/or adjust the clarity, accuracy, and/or precision of the captured imagery or data.

In the examples shown inFIGS.1and2, one scanning device102can be installed on the boom (e.g., the boom26) of the excavator (e.g., the excavator20). In another example, one of the scanning device102can be installed on the boom (e.g., the boom26), and another of the scanning device102can be installed on the stick member (e.g., the stick member30) of the excavator (e.g., the excavator20). In yet another example, one or two of the scanning devices102can be installed on the boom and/or the stick member of the excavator. In one or more examples, any number of scanning devices102can be added to the boom or the stick member of the excavator to provide the quality of images captures and to improve the view104. Additionally or alternatively, one or more scanning devices102can be installed on one or more posts170.

The first controller200can also include a vision processing electronic control module202. The vision processing electronic control module202can be configured to receive the captured images or data from any and/or all of the scanning devices102and process the captured images or data for transmission to the second controller208and the computer231. The vision processing electronic control module202can be in communication with any of the scanning devices102of the system100to receive and aggregate the captured images or data from the various scanning devices102. The vision processing electronic control module202can also be electrically connected to a gateway electronic control module204.

The gateway electronic control module204can enable the communication of the aggregated captured images or data from the vision processing electronic control module202to a modem206. Thus, the gateway electronic control module204can enable the aggregated captured images or data to be wirelessly communicated via the modem206to any of the second controller208and the computer231.

The second controller208can include one or more processors, microprocessors, microcontrollers, electronic control modules (ECMs), electronic control units (ECUs), programmable logic controller (PLC), or any other suitable means for processing image or three-dimensional data communicated from the first controller200or the computer231. The second controller208may include a storage medium or memory accessible by the second controller208, for example, in the form of a floppy disk, hard drive, optical medium, random access memory (RAM), read-only memory (ROM), or any other suitable computer-readable storage medium commonly used in the art (each referred to as a “database”), which can be in the form of a physical, non-transitory storage medium. The second controller208can be configured, at least, to receive the aggregated captured images or data from the first controller200, process the aggregated captured images or data, identify a type of dump body captured in the images, complete an accounting based on the processed aggregated captured images or data, and communicate with the first controller200and the computer231. The second controller208can process the aggregated captured images from the first controller200into known scans of known dump bodies of known haul trucks. As discussed above, the second controller208can include a computer-readable storage medium, the computer-readable storage medium may store a variety of information types including: baseline model repository210, a truck id list212, a driver id list214, a driver app location216, an excavator ID218, a trigger threshold data220, scan comparator algorithms222, a truck type list224, a truck type three-dimensional computer-aided design models (hereinafter “truck type 3D CAD models226”), an inventory management program228. The second controller208can also include a modem230.

The baseline model repository210can be configured to store known scans of known truck body types. The aggregated scans of known dump bodies and haul trucks from the second controller208can be stored in the baseline model repository210and used as reference scans for other operations performed by the second controller208. Further, the second controller208can update the stored scans in the baseline model repository210if a known dump body has a scan resulting in a higher or lower volume than the previous baseline scan. Each scan stored in the baseline model repository210can be identified by a truck identification pin211or a driver identification pin213.

The truck id list212can be configured to store information about one or more trucks that drive on the job site10(FIG.1). The truck identification pin211of the trucks can be stored on the truck ID list212. As a truck navigates the job site10, the system100can store all information (e.g., a truck location, an amount of material moved by truck, a time the truck has been on the jobsite, or any other information related to the truck on the job site) on the second controller208.

The driver id list214can be configured to store information about one or more drivers that drive on the job site10. The driver identification pin213of drivers can be stored in the driver ID list214. As the driver navigates the job site10, the system100can store all information (e.g., a driver location, an amount of material moved by the driver, a time the driver has been on the jobsite, or any other information related to the one or more drivers on the job site) on the second controller208.

The driver app location216can be configured to store a location of a driver on or off the job site10. In one or more examples, the location of the driver can be shared with the second controller208via the computer231. In another example, the location of the driver can be shared with the second controller208by one or more controllers on the haul truck or other work machine (e.g., the controller72onboard the haul truck50). The second controller208can use the location of the driver to automatically alert other equipment operators (e.g., an operator of the excavator20) when the haul truck is ready to be loaded or unloaded.

The excavator ID218can be configured to store information about one or more excavators on the job site10. The information stored in the excavator ID218can include loading capacity (e.g., size of the boom and the bucket), and locations of the excavators.

The trigger threshold data220can be collected and stored for each type of dump body to signal to the second controller208when carryback is detected, a new scan of the dump body should be performed, or a new baseline should be stored in the baseline model repository210. The trigger threshold data220can include various geometries of the dump body. For example, the trigger threshold data220can be a length of a floor or a height of a sidewall of the dump body. In another example, the trigger threshold data220can be a volume of an interior surface (e.g., interior surface62of the dump body54). In yet another example, the trigger threshold data220can be any other parameter that can be detected by the system100that can signal that carryback is detected, or that the system100needs to be updated. In one or more examples, the trigger threshold data220includes a surface profile of an interior surface of a dump body.

The trigger threshold data220may be set for any data collected on the dump body of the haul truck. In some examples, the trigger threshold data220may account for noise and/or inaccuracies in the measurement system. Thus, the trigger threshold data220may be set at a value above the known variation in the system. For example, if the system has a known error of five percent, the trigger threshold data220can be set to any measurement above five percent. In one or more examples, the system100may use a flatness score of an interior surface of the dump body. The system100may analyze previous scans or models of the truck body to define boundaries of a piece of planar geometry. In one or more examples, a neural network, or a machine learning system may be used to automatically detect and define boundaries of a piece of planar geometry on the dump body of the dump truck. The system100may take a known image of an empty dump body and a scan captured by the system and generate a point cloud map of the stored image and the scan captured by the system. A defined area of each of the point cloud maps may be rectified such that the plane is in line with an XY plane. Therefore, a height difference between the highest and lowest points of the point cloud map of the known image of an empty dump body and the scan captured by the system may be a flatness score of the XY plane. Thus, the trigger threshold data220can be configured to reduce false alarms of detecting carryback and/or determining a new baseline scan is required.

The truck type list224can be configured to store a list of known truck types (e.g., dump bodies with recognized interior surface shapes) stored in the second controller208. The truck type list224can be sent to another controller (e.g., first controller200, computer231, or any other controller that is in wireless communication with the system100) to share the stored truck types. For example, if the system100scans a dump body and does not recognize the truck type, the system100can prompt a driver to select their dump body type from the truck type list224.

The truck type 3D CAD models226can be stored on the second controller208as models of known dump body types. In one or more examples, the truck type 3D CAD models226can include truck types from known manufacturers or their partners. In one or more examples, a 3D model can be created of a new truck. In another example, a new truck, which is not a known truck type, can be 3D modeled and added to the truck type 3D CAD models226. The truck type 3D CAD models226can provide exact, substantially exact, and/or relatively accurate dimensions of a dump body of a haul truck per a 3D CAD model. In one or more examples, exact dimensions may be accurate to a same or similar level as the manufacturing tolerances of the CAD models or manufacturing drawings, for example. The dimensions of the 3D CAD models stored in the truck type 3D CAD models226can be used by the scan comparator algorithms222.

The scan comparator algorithms222can be executed to compare a scan captured from a first controller (e.g., first controller200) with a known scan stored on a database (e.g., baseline model repository210or the truck type 3D CAD models226). The scan comparator algorithms222can include a neural network to continually compare a new scan from a first controller with a known scan previously stored on the system100. Neural networks can be statistical analysis algorithms that compare frequencies of different object primitives to define an input and/or output correlation. Therefore, the system100may capture images of different truck types and label the captured images with a boundary of truck, images, and labels of various truck types. As the neural network receives and analyzes more and more trucks, the neural network can generate matrix of weights. For example, the neural network may generate coefficients in a massive n-dimensional curve fit. The dimensional curve fits of the known images or scans may then be compared against unlabelled data to determine if a target accuracy of the neural network has been achieved. In examples, neural networks may be configured for specific tasks. For example, neural networks may be configured for image recognition. A neural network configured for image recognition may be able to analyze custom data sets (e.g., labeled pictures of machines, or dump bodies) and may perform specific tasks (e.g., identify a type of machine or dump body in a picture, outline a segment of an image that shows a dump body of a dump truck.

In another example, the scan comparator algorithms222can compare a new scan with a computer-aided design (CAD) model of a known dump body. If a known scan or a known 3D CAD model matches the truck type, the scan comparator algorithms222can determine a difference in volume (e.g., the volume V ofFIG.3) of the scanned dump body and the scan of the known dump body or the known 3D CAD model. If no CAD model is available, the scan comparator algorithms222can include a bilateral comparator secondary test and a flatness comparator secondary test.

The bilateral comparator secondary test of the scan comparator algorithms222may use a neural network to divide the scanned area in half along a length of the floor of the truck body and compare each half of the divided scanned area to the other half of the divided scanned area. In some examples, as discussed above, the neural network may analyze a captured image of a dump body and determine an area of the captured image that corresponds to a dump body of a haul truck. The area that corresponds to a dump body of a haul truck may be extracted from a disparity map as a 3D point cloud and rectified to an XY plane. The neural network may then divide the 3D point cloud along a center by a y axis and compare a height of each point on one half to a height of the corresponding point of each point from the other half. If the difference between the divided scanned areas exceeds a threshold value stored in the trigger threshold data220the second controller208can identify the dump body as containing carryback and/or flag the dump body for scrapeout.

The flatness comparator secondary test of the scan comparator algorithms222can identify geometric features of the dump body (e.g., corners, planes, or intersections) and calculate a flatness score for each planar feature (e.g., the floor66, the sidewalls64, or the truck wall68). In one or more examples, the system100may use a neural network to analyze a scan for a flatness score. For example, a neural network can take a captured image and define planes on an interior of the dump body. The neural network can then make a 3D cloud map on the planes, and rectify the 3D cloud map on an XY axis. The neural network can then compare the maximum and minimum height values to generate a flatness score for each of the planes of the interior of a dump body of the haul truck. If the flatness score of any of the planar features of the dump body is greater than a maximum threshold value, or less than a negative threshold value, stored in the trigger threshold data220the second controller208can identify the dump body as containing carryback and/or flag the dump body for scrape out.

Therefore, by comparing two scans, comparing a scan and a 3D CAD model, the bilateral comparator secondary test, or the flatness comparator secondary test, the scan comparator algorithms222can predict carryback is present in the dump body of a dump truck.

The inventory management program228can be configured to receive inputs from various systems of the system100. For example, the inventory management program228can use the baseline model repository210, the truck id list212, the driver id list214, the driver app location216, and the excavator ID218to track the location of equipment on the job site10and calculate a theoretical amount of material moved by the machines. The inventory management program228can also use the trigger threshold data220, the scan comparator algorithms222, the truck type list224, and the truck type 3D CAD models226, to automatically remove a calculated volume of the carryback from the theoretical amount of material moved by the machines to more accurately account for material on the job site10. In one or more examples, the inventory management program228can also alert an excavator (e.g., the excavator20) that carryback is within a haul truck (e.g., the haul truck50) to prevent the excavator from overloading the haul truck. Thus, inventory management system228can help ensure haul trucks are not overloaded (e.g., are within the Department of Transportation weight limits) before leaving the job site10.

The modem230can be configured to allow the second controller208to wirelessly communicate with the first controller200and the computer231. The modem230can include a gateway control module that can allow aggregated information to be shared between the second controller208and other controllers or computers of the system100.

The computer231can be configured to help a driver of a truck communicate with other components of the system100. The computer231can be a cell phone, tablet, laptop, or any other kind of computer that can be located within a truck, or on the job site10that a driver can access to communicate with other components of the system100. For example, the driver can communicate with the second controller208to provide a driver ID, a truck ID, and a position of the truck they are driving. For example, the computer231can include a driver ID232, a truck ID234, a location236, and a modem238.

The driver ID232can be configured to communicate a unique identification of the driver to the second controller208so that the second controller208can download and upload information regarding the driver. The driver ID232can be assigned to the driver before the driver enters the job site (e.g., the job site10) for the first time, or as the driver enters the job site for the first time.

The truck ID234can be configured to communicate a unique identification of the truck to the second controller208so that the second controller208can download and upload information regarding the truck. Since drivers can drive multiple trucks, the truck ID234can also be tracked. The truck ID234can be assigned to a truck either before the first time the truck drives on the job site or after the truck drives on the job site.

The location236can be the location of the computer at any giving time. The location236can be measured by a global positioning sensor or some other location device. The location236can communicate the location of the computer231whether the computer231is on the job site, or off the job site.

The modem238can be configured to allow the computer231to wirelessly communicate with the first controller200and the second controller208. The modem238can include a gateway control module that can allow aggregated information to be shared between the computer231and other controllers or computers of the system100.

In one or more examples, the first controller200and the second controller208can communicate job information to the computer231. For example, the second controller208can communicate an amount of payload loaded into the haul truck50, and an amount of time that it took to load the haul truck50. In another example, the second controller208can communicate a total amount of payload moved by the dump truck50on the job site10. In yet another example, any of the information on the first controller200and the second controller208can be shared with the computer231.

INDUSTRIAL APPLICABILITY

In one or more operating examples of the disclosed system, the system100can include a truck onboarding program500and a carryback detection program600.

FIG.5is a flowchart showing the truck onboarding program500. When a new truck (e.g., the haul truck50) enters a job site (e.g., the job site10), the system100can run the truck onboarding program500. The truck onboarding program500is configured to gather and communicate information to one or more controllers so the information can be stored or used in various calculations while the truck is on the job site. In one example, the onboarding program500can be installed on a back-office controller (e.g., the second controller208). In another example, the onboarding program500can be installed on machinery (e.g., a controller on an excavator, truck, or any other machine on a job site).

At step502, the program can generate a new truck ID for a new truck on the job site. The new truck ID is a unique truck ID that can be tied to the truck for the life of the truck or during the presence of the truck on the job site. The new truck ID can be attached to any additional information that is collected by the truck onboarding program500.

At step504, the program can initiate a truck scan. In one example, the controller (e.g., the second controller208) can wirelessly communicate with another controller (e.g., the first controller200), to capture a scan of a dump body of the truck. As discussed above, the scan of a dump body can occur by a controller installed on an excavator. In another example, the scan of a dump body can occur by a controller mounted to a post (e.g., post170). In yet another example, the scan of a dump body can occur by a controller off the job site.

At step506, the controller (e.g., the first controller200) can scan the dump body of the truck, the controller can aggregate the scan and wirelessly send the scan to the back office. The back office can store this scan on a database (e.g., the baseline model repository210) to reference against all future scans. When stored on the baseline model repository210the baseline scan will be linked to the truck identification pin (e.g., truck identification pin211) and the driver identification pin (e.g., driver identification pin213) of the haul truck and the driver.

At step508, the back office can compare the scan received from the controller and scans of known truck beds stored in a repository (e.g., the baseline model repository210) to detect a truck type of the truck scanned by the controller.

At step510, the controller (e.g., the second controller208) can compare the scan received of the dump body of the haul truck with 3D CAD models stored on the controller (e.g., the truck type 3D CAD models226). If a 3D CAD model exists, the controller can run a comparator function (e.g., the scan comparator algorithms222) to compare the scan of the dump body and the 3D CAD model of the dump body. If there is no 3D CAD model of the dump body type, the controller can use one or more secondary threshold tests.

At step512, the controller can run the secondary thresholds test (e.g., the bilateral comparator and/or the flatness comparator of the scan comparator algorithms222). The controller can include a prompt that has an operator, job site supervisor, or an engineer select a bilateral comparator or a flatness comparator secondary test. In another example, the controller can run both a bilateral comparator and a flatness comparator secondary test to combine and/or compare the results. In yet another example, a neural network installed on the controller (e.g., second controller208) can scan the dump body to find a similar dump body to determine whether a bilateral comparator and/or a flatness comparator secondary test should be run.

At step514, the controller can run the bilateral comparator secondary test by dividing the scan in half along the length of a floor of the dump body and comparing each half of the divided scan to the other half of the divided scan. The bilateral comparator secondary test can then determine if any carryback is present by detecting differences between the halves of the scan.

At step516, the controller can run the flatness comparator secondary test by identifying geometric features of the dump body (e.g., corners, planes, or intersections) and calculate a flatness score for each planar feature (e.g., a floor, a sidewall, or a truck wall) of the dump body. The lack of flatness detected by the flatness comparator secondary test can be indicative of carryback being present in a dump body.

At step518, the controller can send a signal to a computer or a controller on the haul truck (e.g., computer231) or on the excavator (e.g., first controller200) that the dump body needs carryback scraped out if a comparator function outputs a volumetric number across a threshold value. In one example, a controller can compare a known scan (or 3D CAD model) to a new scan and the comparator can output a positive value that is above the positive threshold value to indicate carryback is present. In another example, the controller can compare a new scan to a known scan (or 3D CAD model) and the comparator can out a negative value below a threshold value to indicate carryback is present.

At step520, the controller can send a signal to a computer or a controller on the haul truck (e.g., computer231) or on the excavator (e.g., first controller200) that the dump body needs a baseline scan recaptured if a comparator function outputs a positive or negative value above or below a threshold value. For example, if the comparator function compares a known scan to a new scan and the new scan appears to have a larger volume than the known scan the controller can send a signal to the computer or controller on the haul truck or the excavator that the dump body needs a new baseline scan.

FIG.6is a flowchart showing the carryback detection program600. The carryback detection program can be configured to detect carryback in a known or a unknown dump body (e.g., the dump body54) of a haul truck (e.g., the haul truck50).

At step602, a computer (e.g., computer231) can send a truck ID and a driver ID (e.g., truck identification pin211and driver identification pin213) to the back office (e.g., second controller208). The computer can send the truck ID and driver ID before a haul truck enters the job site, or after the haul truck enters the job site (e.g., the job site10).

At step604, the computer can send a truck position to the back office. The position of the truck can be used to track the location of the truck on and off the job site. For example, the position of the truck can determine when the truck is a set distance away from the job site. In another example, the back office can determine when the truck is in (or approaching) a position to be loaded or unloaded by an excavator. The location of the truck can be stored on a database on the controller (e.g., driver app location216).

At step606, the back office can compare the position of a truck to an excavator position fence. The distance away from the excavator fence can be directed to the excavator to let them know how long they have until the haul truck will need to be unloaded. This can give the excavator an estimate of how long they can continue working on their current task before they will need to go load or unload the haul truck.

At step608, the back office can alert an excavator when a haul truck has arrived. The excavator position fence can be set up by the back office to automatically notify an excavator as a truck crosses a fence that the truck will need to be loaded or unloaded. Alerting the excavator can allow the excavator to drive over to position before the truck gets there to maximize the efficiency on the job site.

At step610, the back office can alert the computer (e.g., computer231) and the controller (e.g., second controller208) that the truck does not have a baseline scan, and the controller can capture and send a baseline scan to the back office. Alternatively or additionally, the baseline scan can be captured while the truck is enroute between fill and dump locations, for example.

At step612, the excavator can enable a new truck fill operation. The new truck fill operation can log data regarding the filling of the truck (e.g., filling time, filling quantity (based on measurement systems installed on the excavator), filling location, filling pattern, or any other data that could be useful to know about how the haul truck was loaded by the excavator).

At step614, a neural network on one of the controllers (e.g., first controller200or second controller208) continually analyzes the scans received from a scanning device102to determine a location of a dump body on a haul truck. In one or more examples, trucks or excavators may include a QR code or an April tag to help the system100identify a truck type.

At step616, the scanning device102on a boom of an excavator (e.g., the excavator20) continuously scans the dump body as the excavator loads material into the dump body.

At step618, the controller (e.g., first controller200) can send a scan (e.g., the scan of a dump body or a scan of a loading operation from an excavator) of the dump body to the back office (e.g., second controller208).

At step620, the back office can compare a scan (e.g., the scan of a dump body or a scan of a loading operation from an excavator) of the dump body against a stored baseline scan, a 3D CAD model of a known dump body type, a bilateral comparator, or the flatness comparator to compare the scan and obtain volume differential values.

At step622, the back office can send an alert to the dump truck and the excavator to scrape out the carryback in the dump body if any of the comparative functions output a value above or below a threshold value. For example, the comparator can output a positive value indicative of carryback in the dump body of the haul truck (e.g., when a volume of the scan of the dump body is subtracted from a volume of a known scan or 3D model). In another example, the comparator can output a negative value indicative of carryback in the dump body of the haul truck (e.g., when a volume of a known scan or 3D model is subtracted from a volume of the scan of the dump body).

At step624, the back office can send a recapture baseline scan message to the dump truck and the excavator if any of the comparative functions output a value above or below a threshold value. For example, the comparator can output a positive value indicative of the need for a new baseline scan of the dump body of the haul truck (e.g., when a volume of a known scan or 3D model is subtracted from a volume of the scan of the dump body). In another example, the comparator can output a negative value indicative of the need for a new baseline scan of the dump body of the haul truck (e.g., when a volume of the scan of the dump body is subtracted from a volume of a known scan or 3D model).

The above-detailed description is intended to be illustrative, and not restrictive. The scope of the disclosure should, therefore, be determined with references to the appended claims, along with the full scope of equivalents to which such claims are entitled.