Work equipment such as lifts and telehandlers, as well as smaller devices including generators, power tools, and unpowered implements sometimes require tracking, tasking, monitoring, and servicing at a work site. Managers and operators of work equipment typically rely on discrete systems, applications, and methods to perform these functions for each piece of equipment.
One exemplary embodiment relates to a local fleet connectivity system including a plurality of machines. Each machine includes an implement and a prime mover configured to drive the implement and is coupled to a connectivity module configured to wirelessly communicate with connectivity modules of the other machines to form a local network. A first machine of the plurality of machines includes a first connectivity module including a first local wireless transceiver. At least one of the connectivity modules is configured to communicate with a computing module via an external network. The system further includes a first device coupled to a local wireless module. The local wireless module is configured to wirelessly communicate with the first local wireless transceiver to connect to the local network. The local wireless module is not configured to directly connect to the external network.
In some aspects of the local fleet connectivity system, the local wireless module communicates via BLE or RFID. In some aspects, the computing module is configured to determine a distance from the first machine to the first device based on a received signal strength indication of a signal from the local wireless module at the first local wireless transceiver. In some aspects, at least one other machine includes a local wireless transceiver, wherein the computing module is configured to estimate a location of the first device based on received signal strength indications of a signal from the local wireless module at each of the local wireless transceivers. In some aspects, the computing module is configured to receive, from the first connectivity module, an indication that the first local wireless transceiver detects a signal from the local wireless module; and update, in response to receiving the indication, a database to associate the first device with the local fleet connectivity system. In some aspects, the computing module is further configured to determine that the first local wireless transceiver has begun detecting the signal after previously not detecting the signal; and send, in response to the determination, a notification to a user device that the local wireless module has recently been detected. In some aspects of the local fleet connectivity system, the computing module is further configured to receive, from the first connectivity module, a second indication that the first local wireless transceiver no longer detects a signal from first local wireless module; update, in response to receiving the second indication, the database to disassociate the first device with the local fleet connectivity system; and send, in response to receiving the second indication, a notification to a user device that the local wireless module has recently been removed from the local fleet connectivity system.
In some aspects, the local wireless module is communicably coupled to a controller of the first device, the local wireless module configured to receive device information from the controller and to transmit the device information to the first local wireless transceiver. In some aspects, the device information includes one or more of a battery charge level, a fuel level, an activation status, or device malfunction information. In some aspects, the local wireless module is communicably coupled to a controller of the first device, and the controller is configured to receive control instructions from the computing module via the first local wireless transceiver and the local wireless module. In some aspects, the system further includes a connectivity hub, wherein the at least one connectivity module is configured to communicate with an external computer network via wireless communication with the connectivity hub.
Another exemplary embodiment relates to a non-transitory computer-readable storage medium having instructions stored thereon. The instructions, upon execution by a processor, cause the processor to receive a first indication from a first connectivity module of a first machine of a local fleet connectivity system indicating that the first connectivity module detects a signal from a local wireless module of a device. The instructions further cause the processor to update a database to associate the device with the local fleet connectivity system in response to receiving first the indication.
In some aspects, the first indication includes a first signal strength indication indicating the strength of the signal detected by the first connectivity module, and the instructions further cause the processor to determine a distance from the first machine to the device based on the first signal strength indication. In some aspects, the instructions further cause the processor to receive a second indication from a second connectivity module of a second machine of the local fleet connectivity system. The second indication indicates that the second connectivity module detects the signal from the local wireless module. The second indication includes a second signal strength indication indicating the strength of the signal detected by the second connectivity module. The instructions further cause the processor to estimate a location of the device based on the first signal strength indication and the second signal strength indication. In some aspects, estimating the location of the device is further based on a GPS location of the first machine and a GPS location of the second machine.
In some aspects, the instructions further cause the processor to transmit control instructions for the device to the first connectivity module, receipt of the control instructions causing the first connectivity module to transmit the control instructions to the local wireless module. In some aspects, the instructions further cause the processor to receive, from the local wireless module via the first connectivity module, device information relating to the device. In some aspects, the device information includes one or more of a battery charge level, a fuel level, an activation status, or device malfunction information. In some aspects, the instructions further cause the processor to determine that the first connectivity module has begun detecting the signal after previously not detecting the signal. The instructions further cause the processor to transmit a notification to a user device that the device has joined the local fleet connectivity system in response to the determination. In some aspects, the instructions further cause the processor to receive, from the first connectivity module, a second indication that the first connectivity module no longer detects a signal from first local wireless module, update, in response to receiving the second indication, the database to disassociate the device with the local fleet connectivity system, and transmit, in response to receiving the second indication, a notification to a user device that the device has recently been removed from the local fleet connectivity system.
Another exemplary embodiment relates to a method of enabling communication between a device and a cloud computing system via a work machine. The method includes connecting, by a work machine via a short-range wireless communication protocol, to a device and connecting, by the work machine via a second wireless communication protocol, to a cloud computing system. The method further includes receiving, by the work machine, information from the device via the short-range wireless communication protocol and transmitting, by the work machine based on receiving the information, the information to the cloud computing system via the second wireless communication protocol.
This summary is illustrative only and is not intended to be in any way limiting. Other aspects, inventive features, and advantages of the devices or processes described herein will become apparent in the detailed description set forth herein, taken in conjunction with the accompanying figures, wherein like reference numerals refer to like elements.
Managers and operators of work equipment typically rely on discrete systems, applications, and methods to perform functions for each piece of equipment. It is therefore desirable to provide a means to electronically connect work equipment on a work site and integrate tracking, tasking, monitoring, and service support functions on a common local fleet connectivity platform to improve efficiency and reduce costs.
Before turning to the figures, which illustrate the exemplary embodiments in detail, it should be understood that the present application is not limited to the details or methodology set forth in the description or illustrated in the figures. It should also be understood that the terminology is for the purpose of description only and should not be regarded as limiting.
One exemplary implementation of the present disclosure relates to a local fleet connectivity system (e.g., an interactivity and productivity tool for local fleet connectivity). The local fleet connectivity system may include a network of communicatively connected work machines. Network connections between work machines and other nodes connected to the system may include low energy wireless data networks, mesh networks, satellite communications networks, cellular networks, or wireless data networks. In some implementations, the network of work machines may be a local fleet connectivity system initiated by automatic exchange of networking messages between different machines in the plurality of communicatively connected work machines. In some implementations, a network node is associated with each machine in the plurality of networked machines. In some implementations, a first machine extends a connection to a second machine in proximity to the first machine on a work site to establish a network link at the work site. A work site network may be established among a fleet of work machines at the work site where machines connect with other nearby machines in a mesh network. In some implementations, network access is enabled according to one or more access codes. Access to machine-specific data for one or more machines connected to the network is provided according to the one or more access codes. In some implementations, interconnectivity and productivity related data is exchanged via connectivity modules. The connectivity module may be communicatively connected to a machine controller. The connectivity module may be a self-contained unit. The controller may host one or more interconnectivity and productivity applications. The one or more connectivity and productivity applications hosted by the plurality of controllers may be local instances of a remotely hosted master interconnectivity and productivity application. Connectivity modules may connect to and interconnect through a connectivity hub. In some examples, the connectivity hub may be a device located at a work site that connects to work machines in proximity to the hub via a local network (e.g., a wireless mesh network). In other examples, the connectivity hub may be a remote server.
Referring to the figures generally, various exemplary embodiments disclosed herein relate to systems and methods for a local fleet connectivity system to enhance interactivity and productivity of fleets of work machines on work sites. For example, Bluetooth Low Energy (BLE) Machine-to-Machine (M2M) communication protocols may be used to expand communication at a work site/jobsite via a local fleet connectivity system. In a further example, physical coding sublayer internet protocol (PCS IP) coded instructions (e.g., applications) are used to provide interfaces between work machine software applications in various formats (e.g., MAC, PMA, etc.) and other devices (e.g., mobile user devices). PCS IP may be used, for example, in media independent local fleet connectivity applications within the local fleet connectivity system. In another example, the local fleet connectivity system uses Bluetooth Low Energy (BLE) Machine-to-Machine (M2M) communication protocols at a work site/jobsite to generate and exchange machine driven notifications in a highly efficient and very low error rate by sharing a mesh network. In traditional work site information systems, these notifications are human driven notifications requiring a human operator to physically generate a message and command transmission. As such, traditional work site information systems are inefficient and prone to human error. In another example, machines communicate across a wireless mesh network (e.g., a BLE M2M network) by sending messages across nodes that are created by different machines. One machine may extend a connection with one nearby machine to a network of machines to connect to various machines across a work site. Machines and users may access machine-specific data from those machines that are associated with a common code (e.g. a customer key, identification information, etc.) if accessed using one type of access account (e.g. a customer account with access to all work machines operated by that customer) or access machine-specific data from all of the connected machines if accessed using another type of access account (e.g. a manufacturer account with access to all machines produced by that manufacturer). In a further example, the local fleet connectivity system may provide work site network masking and visibility by means of asset keys to ensure system security and data confidentiality. In another example, the local fleet connectivity system may determine generation and routing of machine generated push messages. These messages may be routed to specific machines based on system-determined or user input criteria.
In the embodiments described, work machines function as micro eco-systems within a macro eco-system. An eco-system may operate at the level of a work site, a collection of work sites supervised by a business unit, a collection of machines operated by a business at multiple sites, a population of machines manufactured by an original equipment manufacturer and operated at many sites by different operators, a business enterprise including many machines from different manufactures supported and monitored by different providers but all interconnected by a common fleet interactivity and productivity platform enabled by interoperable data collection/communications/control/indicator devices provided to each machine in the eco-system. In the embodiments described, the interoperable data collection/communications/control/indicator devices provide near (e.g., at a work site) and far (e.g., remote fleet management node) connectivity and services. Near connectivity and services may include, for example, machine location, machine to machine meshing, service interactions, etc. Far connectivity and services may include, for example, fleet management, incident notification, asset control and status including time and geo-location fencing.
In some implementations, the local fleet connectivity system provides an array of products and functions to improve productivity and reduce ownership costs based on a very high degree of automated machine to machine connectivity that enables exchanges of data and commands and analysis of fleet data that are not possible with traditional work machine tracking, management, telematics systems. For example, the disclosed local fleet connectivity system may create work site ad hoc fleets, automatically check in and check out equipment from a rental or other fleet management application, wirelessly connect with machine components and systems, including machine databuses, to diagnose and troubleshoot faults, remotely determine machine health, functional, and operational status, perform data analytics for user (e.g. users interacting with the system via user devices) and machines connected to the system, and locate individual machines and fleets of machines on any work site at any time.
As shown in
A user interface 32 is arranged in communication with the prime mover 24 and the implement 28 to control operations of the work machine 20. The user interface 32 includes a user input 36 that allows a machine operator to interact with the user interface 32, a display 40 for communicating to the machine operator (e.g., a display screen, a lamp or light, an audio device, a dial, or another display or output device), and a control module 44.
As the components of
The control system 60 generates a range of inputs, outputs, and user interfaces. The inputs, outputs, and user interfaces may be related to a jobsite, a status of a piece of equipment, environmental conditions, equipment telematics, an equipment location, task instructions, sensor data, equipment consumables data (e.g. a fuel level, a condition of a battery), status, location, or sensor data from another connected piece of equipment, communications link availability and status, hazard information, positions of objects relative to a piece of equipment, device configuration data, part tracking data, text and graphic messages, weather alerts, equipment operation, maintenance, and service data, equipment beacon commands, tracking data, performance data, cost data, operating and idle time data, remote operation commands, reprogramming and reconfiguration data and commands, self-test commands and data, software as a service data and commands, advertising information, access control commands and data, onboard literature, machine software revision data, fleet management commands and data, logistics data, equipment inspection data including inspection of another piece of equipment using onboard sensors, prioritization of communication link use, predictive maintenance data, tagged consumable data, remote fault detection data, machine synchronization commands and data including cooperative operation of machines, equipment data bus information, operator notification data, work machine twinning displays, commands, and data, etc.
The sensor array 68 can include physical and virtual sensors for determining work machine states, work machine conditions, work machine locations, loads, and location devices. In some embodiments, the sensor array includes a GPS device, a LIDAR location device, inertial navigation, or other sensors structured to determine a position of the equipment 20 relative to locations, maps, other equipment, objects, or other reference points.
In one configuration, the control system 60 is embodied as machine or computer-readable media that is executable by a processor, such as processor 52. As described herein and amongst other uses, the machine-readable media facilitates performance of certain operations to enable reception and transmission of data. For example, the machine-readable media may provide an instruction (e.g., command, etc.) to, e.g., acquire data. In this regard, the machine-readable media may include programmable logic that defines the frequency of acquisition of the data (or, transmission of the data). The computer readable media may include code, which may be written in any programming language including, but not limited to, Java or the like and any conventional procedural programming languages, such as the “C” programming language or similar programming languages. The computer readable program code may be executed on one or more processors, and either local or remote processors. In the latter scenario, the remote processors may be connected to each other through any type of network (e.g., CAN bus, etc.).
In another configuration, the control system 60 is embodied as hardware units, such as electronic control units. As such, the control system 60 may be embodied as one or more circuitry components including, but not limited to, processing circuitry, network interfaces, peripheral devices, input devices, output devices, sensors, etc. In some embodiments, the control system 60 may take the form of one or more analog circuits, electronic circuits (e.g., integrated circuits (IC), discrete circuits, system on a chip (SOCs) circuits, microcontrollers, etc.), telecommunication circuits, hybrid circuits, and any other type of “circuit.” In this regard, the control system 60 may include any type of component for accomplishing or facilitating achievement of the operations described herein. For example, a circuit as described herein may include one or more transistors, logic gates (e.g., NAND, AND, NOR, OR, XOR, NOT, XNOR, etc.), resistors, multiplexers, registers, capacitors, inductors, diodes, wiring, and so on). The control system 60 may also include programmable hardware devices such as field programmable gate arrays, programmable array logic, programmable logic devices or the like. The control system 60 may include one or more memory devices for storing instructions that are executable by the processor(s) of the control system 60. The one or more memory devices and processor(s) may have the same definition as provided below with respect to the memory device 56 and processor 52. In some hardware unit configurations, the control system 60 may be geographically dispersed throughout separate locations in the machine. Alternatively, and as shown, the control system 60 may be embodied in or within a single unit/housing, which is shown as the controller 44.
In some embodiments, the control module 44 includes the processing circuit 48 having the processor 52 and the memory device 56. The processing circuit 48 may be structured or configured to execute or implement the instructions, commands, and/or control processes described herein with respect to control system 60. The depicted configuration represents the control system 60 as machine or computer-readable media. However, as mentioned above, this illustration is not meant to be limiting as the present disclosure contemplates other embodiments where the control system 60, or at least one circuit of the control system 60, is configured as a hardware unit. All such combinations and variations are intended to fall within the scope of the present disclosure.
The hardware and data processing components used to implement the various processes, operations, illustrative logics, logical blocks, modules and circuits described in connection with the embodiments disclosed herein (e.g., the processor 52) may be implemented or performed with a general purpose single- or multi-chip processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general purpose processor may be a microprocessor, or, any conventional processor, or state machine. A processor also may be implemented as a combination of computing devices, such as a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration. In some embodiments, the one or more processors may be shared by multiple circuits (e.g., control system 60 may include or otherwise share the same processor which, in some example embodiments, may execute instructions stored, or otherwise accessed, via different areas of memory). Alternatively or additionally, the one or more processors may be structured to perform or otherwise execute certain operations independent of one or more co-processors. In other example embodiments, two or more processors may be coupled via a bus to enable independent, parallel, pipelined, or multi-threaded instruction execution. All such variations are intended to fall within the scope of the present disclosure.
The memory device 56 (e.g., memory, memory unit, storage device) may include one or more devices (e.g., RAM, ROM, Flash memory, hard disk storage) for storing data and/or computer code for completing or facilitating the various processes, layers and modules described in the present disclosure. The memory device 56 may be communicably connected to the processor 52 to provide computer code or instructions to the processor 52 for executing at least some of the processes described herein. Moreover, the memory device 56 may be or include tangible, non-transient volatile memory or non-volatile memory. Accordingly, the memory device 56 may include database components, object code components, script components, or any other type of information structure for supporting the various activities and information structures described herein.
As shown in
The work machine 202 is communicably connected to a control module 206 via a connection 204. Connectivity between the work machine 202 and the control module 206 may be wired or wireless thus providing the flexibility to integrate the control module with the work machine 202 or to temporarily attach the control module 206 to the work machine 202. The control module 202 may be configured or may be reconfigurable in both hardware and software to interface with a variety of work machines 202, 212, 214. The control module 206 may include an integral power source or may draw power from the work machine 202 or another external source of power. Control modules 206 may be installed on or connected to products (e.g., third party products) 212, 214 not configured by the original product manufacturer with a control module 206.
The work machine 202 communicably connects to the local fleet connectivity system 200 via a machine-to-X (M2X) module 290. The M2X module 290 is communicably connected to the control module 206. The M2X module 290 establishes one or more communications channels 208, 210 with a connectivity module 218. The connectivity module 218 provides a plurality of links between one or more work machines 202, 212, 214 and the local fleet connectivity system 200. The local fleet connectivity system applications run by the M2X modules 290 or control modules 206 on one or more work machines 202 to exchange commands, codes (e.g., a customer key) and data between work machines 202, 212, 214, and user devices 272 via the connectivity module 218 to form a network of interconnections among machines, devices, or nodes. Each machine and device connected to the local fleet connectivity system 200 may establish an individual node. Data is exchanged between the different machines and devices by sending the data across the various nodes. For example, a first machine 202 may connect to a second machine 202 that is disposed proximate to the first machine 202. The second machine 202 may be connected to a third machine 202, which may be connected to a fourth machine 202, and so on. Data may be exchanged between any and all of the machines 202 through the various connections via at least one connectivity module 218. Connections between machines and user devices in the local fleet connectivity system 200 may, for example, be provided by a wireless mesh network.
The connectivity module 218 includes hardware 220, further including antennas, switching circuits, filters, amplifiers, mixers, and other signal processing devices for a plurality of wavelengths, frequencies, etc., software hosted on a non-volatile memory component 222, and a communications manager 226. The communications manager 226 includes processing circuits with communications front ends 224, 228, and 230 for one or more signal formats and waveforms including, for example, Bluetooth, Bluetooth low energy, Wi-Fi, cellular, optical, and satellite communications. The connectivity module 218 may function as a gateway device connecting work machine 202 to other work machines 202, 212, 214, other network devices, remote networks 244, 272, 276, and 280, beacons, scheduling or other fleet management and coordination systems.
In some embodiments, the control module 44 of a machine is configured to automatically establish a link (e.g., communicably connect) between various machines 202 and other devices (e.g., user device 272) to each other via at least one connectivity module 218. For example, a control module 44 associated with a machine 202 may be configured to detect other machines, devices, and systems that are capable of communicably connecting to the machine 202 via the connectivity module 218. For example, a first machine 202 may be disposed at a location. A sensor from the sensor array 68 of the first machine 202 may be able to detect at least one other machine 202, 212, 214 disposed at the location (e.g., intercept or sense a signal from other machines indicating their proximity, etc.). In some embodiments, the sensor may detect a plurality of other machines 202, 212, 214. In some embodiments, the first machine may be programmed to connect with any machine it detects. In other embodiments, the first machine may be programmed to only connect with machines of a certain classification. A classification may be any identifiable characteristic of a machine. For example, the classification may be a type of machine (e.g., boom lift, scissor lift, etc.), a phase of a project for which the machine is being used for (e.g., Phase I, Phase II, etc.), a load capacity of the machine (e.g., machines with a load capacity under a predetermined threshold, etc.), a manufacturer of the machine, an operator of a machine, a classification code provided to the machine, a location of the machine, etc. The control module 44 of the first machine 202 may identify the classifications of the detected machines by receiving data indicative of the classification from each of the detected machines via a connectivity module 218. The control module 44 may determine which of the classifications of the detected machines match the classification of the first machine 202 by comparing the classifications of the detected machines with the classification of the first machine 202. Responsive to determining which of the detected machines have matching classifications, the control module 44 may link the first machine 202 with those detected machines. For example, the first machine 202 may be used for Phase II of a project, and the first machine 202 may be programmed to only link with other machines being used for the same phase. Therefore, the control module 44 may be configured to connect the first machine 202 with other detected machines that are also being used for Phase II of the project. In another example, the first machine 202 may be disposed on work site A and may be programmed to only link with other machines disposed on work site A. Therefore, based on the geographic boundaries of work site A and the locations of the detected machines, the control module may be configured to connect the first machine 202 with those detected machines disposed within work site A.
The local fleet connectivity system 200 may communicably connect a plurality of work machines with each other such that data, signals, commands, etc. can be exchanged amongst the machines. The connections between the machines may be established via a mesh network. The mesh network may persist regardless of machines, and other devices, arriving at and leaving from a work site. For example, a local fleet connectivity system 200 may comprise a mesh network connecting a plurality of work machines together that are disposed at a work site. The connectivity between the machines persists even when one of the plurality of work machines leaves the work site or a new work machine comes to the work site. The mesh connecting the plurality of machines may be persistent and constant. The mesh may also be continuously changing to accommodate additional machines or devices or to remove certain machines or devices. In some embodiments, the mesh may remain active such that data may be exchanged at any moment between the plurality of machines. In other embodiments, the mesh may be programmed to only provide connections between the machines at certain times (e.g., during working hours, etc.) or only between certain machines. The mesh may remain active when connecting only work machines. In other embodiments, the mesh may include other devices (e.g., user devices, etc.) between which data may be exchanged.
The local fleet connectivity system 200 provides connectivity between work machines 202, 212, 214 and remotely hosted user interfaces 272, network portals 276, application interfaces/application programming interfaces 280, data storage systems 256, cloud and web services 268, and product development tool and application hubs 244 that function as an Internet of Things (IoT) system for operation, control, and support of work machines 202, 212, 214 and users of work machines. For example, a plurality of work machines 202, 212, 214 disposed at a location that are connected to each other may be configured to connect to at least one user device by the control module 44 via the connectivity module 218. The user device may be disposed at the location or may be disposed at a remote location. Any connections between the machines, the user device, or other network devices, including connections 232, 234, 238, 242, 252, 254, 270, 274, and 278 between nodes connected to the local fleet connectivity system 200, may include, for example, cellular networks, or other existing or new means of digital connectivity. The links between the machines and devices enables data to be exchanged between the plurality of machines 202, 212, 214 and the user device. The local fleet connectivity system 200 allows for the coordination of multiple machines 202, 212, 214 within the same work site, or fleet wide control. For example, a work machine 202 may remotely report the results of a self-inspection to a user via a user device 272.
Product development tool and application hubs 244 may include tools and applications for internal visualizations 246, customer subscription management 248, device provisioning 250, external systems connectors 262, device configuration management 264, user/group permissions 260, asset allocation 258, fleet management, compliance, etc.
According to an exemplary embodiment, within the local fleet connectivity system 200, the control module 44 is configured to receive, via the connectivity module 218, a command from another network device (e.g., a user device). For example, a user of the user device may want a machine 202 to move from a first position to a second position (e.g., move from a first location to a second location, move from an inactive/storage position to an active/operational position, etc.). The control module 44 may receive a command indicating the task of moving from the first position to the second position from the user device via the connectivity module 218. Responsive to receiving the command, the control module 44 may activate the machine to perform the task.
In another embodiment, the control module 44 may be configured to determine that the machine 202 is not capable of performing the task indicated by the command. For example, the control module 44 may be configured to determine a battery level is too low, a part of the machine is broken or missing, the machine is not equipped to perform the task (e.g., the boom of the boom lift is not long enough, the load of the task exceeds the load capacity of the machine, etc.), etc. For example, to detect a low batter level, the control module 44 may be configured to receive a low voltage or no voltage indicating that the machine has no, or too little, power. To detect a load exceeds the load capacity of the machine, the control module 44 may be configured to receive an indication from a sensor (e.g., a pressure sensor) that the pressure applied to the machine 202 is above the predetermine load capacity. Other sensors on the machine 202 may indicate when a part is broken or missing.
Responsive to determining the machine 202 is not capable of performing the task indicated by the command, the control module 44 may be configured to generate a notification indicating the machine is not capable of performing the task. The notification may include details regarding the specific machine (e.g., machine number, time spent at the location, specific location of machine at the location, load capacity, etc.). The notification may include details regarding the task indicated by the command. The notification may include details regarding why the machine is not capable of performing the task (e.g., broken parts, wrong machine, low battery, etc.). If the machine malfunctioned (broken part, low battery, parts aren’t moving properly, etc.), the notification may include instructions on how to fix the problem, which part needs repair, where to buy a replacement part, etc. The control module 44 may be configured to transmit the notification to a user device, or other network device, to notify a user of the inability to perform the task.
In some embodiments, the control module 44, via the connectivity module 218, may be configured to identify a different machine that is capable of performing the task indicated by the command. For example, the control module 44 may be configured to receive data from a second machine 202 indicating all parts are functioning properly (e.g., data from a self-inspection from the second machine 202), the battery is fully charged, the load capacity exceeds the load of the task, etc. The control module 44 may be configured to recommend the second machine 202 as a replacement for the first machine 202 to the user device. In another embodiment, the control module 44 may be able to automatically send, via the connectivity module 218, the command to the second machine 202.
In another embodiment, when the control module 44 determines a machine 202 is malfunctioning, the control module 44 may be configured to designate the machine 202 as inoperable. Based on the designation, the control module 44 may be configured to actuate a visual indicator (e.g., a light, a beacon, etc.). The visual indicator may be indicative of an inoperable state. In some embodiments, a specific visual indicator may correspond to a specific malfunction. For example, the control module 44 may be configured to change a color of a light, change a pulse of the light, change the number of lights, etc. based on what caused the malfunction. For example, a steady red light may indicate a low battery and a flashing red light may indicate a broken part.
In some embodiments, when a machine 202 is designated as inoperable, the machine 202 may be removed from the location. The control module 202 may be configured to determine that the machine 202 is no longer at the location. For example, the control module 44 may have a GPS system that can determine when the machine 202 is no longer at the site. Upon removal, the control module 44 may be configured to disconnect the machine from the other machines at disposed at the location.
According to another exemplary embodiment, within the local fleet connectivity system 200, the control module 44 is configured to receive, via the connectivity module 218, a request from a network device (e.g., a user device) to access machine-specific data corresponding to a plurality of linked machines. In some embodiments, the machine-specific data provided to the network device responsive to receiving the request is limited based on the machine or based on the type of data. For example, a user may have access to only a subset of the plurality of machines. The control module 44 may be configured to identify at least one of the plurality of machines is associated with the user based on an access indicator included in the request. The access indicator may be any information indicative of an association of the machine with the user. For example, the access indicator may be an access code, a customer key, user credentials (user name and password), identification information, the type of account being used (e.g., customer account, manufacturer account, technician account, etc.), etc. Memory device 56 of the control module 44 may be configured to store instructions regarding which machines are associated with which access indicator. The control module 44 may be configured to compare the access indicator received via the request with the instructions stored in the memory device 56 to determine which machine-specific data to provide to the user device. Upon identification of which machines are associated with the access indicator, the control module 44, via the connectivity module 218, may be configured to provide machine-specific data corresponding to the identified machines to the user device.
In another example, a user may have access to all of the plurality of machines, but only to specific information. For example, a customer may only have access to current data (e.g., e.g., current battery level, current location on a job site, current authorized operators, etc.). A manufacturer may have access to all data, including current data and historical data (e.g., average battery life, previous jobs completed, results of previously-performed self-inspections, etc.). Similar to the example above, the control module 44 may be configured to identify a subset of the machine-specific data that is associated with an access indicator that is included in the request and provide that subset of machine-specific data to the user device.
Any of the data 310, 312, 314, 316, 318 exchanged between the various connected devices and the connectivity module 320 may be further exchanged with other connected devices. For example, sensor data 310 from the auxiliary sensors 302 may be received by the connectivity module 320 and then further transmitted to the user device 308 such that a user of the user device 308 can see what the auxiliary sensor 302 detected. In response to viewing the data via the user device 308, the user can provide a command via the user device 308 that can be received by the connectivity module 320 and further transmitted to the device being commanded. For example, a sensor 302 may detect that the battery of the work machine 304 is getting low. The sensor 302 may send the low battery reading to the connectivity module 320, which is further transmitted to the user device 308. Upon receiving the indication of the lower battery, the user may command the work machine 304 to return to its storing orientation (e.g., collapsed state). The command may be sent to the work machine 304 via the connectivity module 320. Any of the devices 302, 304, 306, 308, 324 may communicate with each other via the communication module 320.
The local fleet connectivity system 200 allows for the coordination of multiple machines 324, 304 within the same work site, or a fleet wide control. For example, if a first work machine 304 is required to accomplish a task collaboratively with a second work machine 324, a user interacting with a user device 308 may provide commands to the first work machine 304 and second work machine 324 to execute the task in collaboration.
Referring now to
Referring now to
As shown in
As shown in
In some embodiments, connectivity hub 718 has a connectivity module 218 to (a) provide the functionalities described herein in place of or in addition to a machine that has a connectivity module 218, (b) broadcast a site identifier, or (c) connect to an external internet to flow data to and from the jobsite that is provided across the mesh.
Referring to
As shown in
As shown in
As shown in
According to the exemplary embodiment shown in
As shown in
As shown in
As shown in
According to an exemplary embodiment, the platform assembly is a structure that is particularly configured to support one or more workers. In some embodiments, the platform assembly includes an accessory or tool configured for use by a worker. Such tools may include pneumatic tools (e.g., impact wrench, airbrush, nail gun, ratchet, etc.), plasma cutters, welders, spotlights, etc. In some embodiments, the platform assembly includes a control panel to control operation of the work machines 20 (e.g., the turntable, the boom, etc.) from the platform assembly. In other embodiments, the platform assembly includes or is replaced with an accessory and/or tool (e.g., forklift forks, etc.).
Referring now to
Referring now to
Referring now to
Referring now to
In some embodiments, at operation 1506, the machine is selected for dispatch to a work site. At operation 1508, the machine is delivered to the work site. At operation 1510, the machine links (e.g., communicably connects) with other machines or connectivity hubs at the work site by establishing a wireless connection with the other machines or connectivity hubs. Operation 1510 may include establishing, by at least one control module via at least one connectivity module, a connection between a plurality of machines disposed at a location. The link between a plurality of machines enables an exchange of data, codes, keys, etc. between the connected machines. In some embodiments, establishing the connection may be performed automatically. For example, when the machine arrives at the work site, the control module may detect a plurality of machines disposed at a location. In some embodiments, the machine may connect with all the detected machines. In other embodiments, the machine may only connect with a subset of the detected machines. A control module of a machine may receive input indicating which machines it may connect to. For example, only machines of the same type (e.g., boom lifts) may connect, only machines made by the same manufacturer may connect, or only machines within a predetermined geographical area may connect to each other. For example, a control module of the machine may receive an input identifying a designated geographical area on a map that corresponds to a work site. The input may indicate that any machine disposed within the designated geographical area may be connected with each other. In other words, the input may define the boundaries of the local fleet connectivity system. In another example, the input may indicate that any machine within a predetermined radius may connect with each other.
In other embodiments, the machine may connect with other machines based on an identification or classification of the machine. The classification may be based on a variety of factors including, but not limited to, a phase of a project the machine is being used for (e.g., a phase I machine), type of machine (e.g., boom lift, telehandler, scissor lift, etc.), size of machine (e.g., based on weight, dimensions, load capacity, etc.), who is authorized to use the machine (e.g., all machines operated by person A can be connected), etc. For example, a first subset of machines may be identified as A machines and a second subset of machines may be identified as B machines. The control module may identify a classification of each of the plurality of machines. The control module may then determine which of the plurality of machines have a classification that matches the classification of the delivered machine. Responsive to determining which of the plurality of machines have matching classifications, the control module may link the plurality of machines that have the matching classifications together via at least one connectivity module.
Data, codes, keys, etc. may be shared among the connected machines in order to facilitate the combination and organization of information regarding all of the machines. For example, once connected, a person authorized to access all information regarding the group of machines will have access to the information regarding all of the connected machines (e.g., locations, statuses, repair requirements, etc.) without having to search for each machine individually.
At operation 1512, the connected machines and connectivity hubs form a local fleet connectivity network at the work site. Each of the machines and hubs may comprise a node of the local fleet connectivity network. At operation 1514, the local fleet connectivity network connects with additional machines and network devices (e.g., a user device) delivered to the work site and with offsite nodes connected to the local fleet connectivity system. Connecting to the offsite notes enables the machines to provide data to devices at a remote location. For example, when a machine malfunctions, a notification may be transmitted to a technician at a remote location via a user device. The notification, via an application associated with the connectivity module, may provide the technician with specific details regarding the specific machine and the specific malfunction (e.g., components of the machine that need to be replaced, how to fix the problem, where to buy parts, etc.).
In some embodiments, at operation 1516, connected machines, user devices, and nodes on one or more networks interconnected via the local fleet connectivity system exchange data and commands. The exchange of data and commands may enable the system to perform tasks, report statuses, place orders, track locations, monitor functions, etc. according to system provided permissions. For example, the system may be able to receive inputs and provide outputs based on the type of account that is being used to access the machine. For example, an operator working at a work site may be able to perform different tasks and view different data than a technician or manufacturer of the machine. In some embodiments, a machine accessed by the operator may be able to track locations of all the connected machines at the specific work site, while a machine accessed by the manufacturer may be able to track locations of all connected machines at any work site. For another example, a machine accessed by the operator may be able to transmit a signal indicating a malfunction in the machine. The machine accessed by a technician may be able to access details regarding the malfunction, troubleshoot the malfunction, access instructions on how to best fix the malfunction, and assist in ordering parts required to repair the machine based on the malfunction.
In some embodiments, at operation 1516, a control module of a machine may receive, via a connectivity module, a command from at last one user device the command may include a task to be performed. Based on the command, the control module may activate the machine to perform the task. For example, the task may be for the machine to move from a first location at a work site to a second location at a work site. The control module may activate an engine of the machine such that the machine moves to the identified location. In some embodiments, instead of completing a task, the control module may determine the machine is not capable of performing the task. For example, the control module 44 may determine a battery level is too low, a part of the machine is broken or missing, the machine is not equipped to perform the task (e.g., the boom of the boom lift is not long enough, the load of the task exceeds the load capacity of the machine, etc.), etc. For example, to detect a low batter level, the control module 44 may receive a low voltage or no voltage indicating that the machine has no, or too little, power. To detect a load exceeds the load capacity of the machine, the control module 44 may receive an indication from a sensor (e.g., a pressure sensor) that the pressure applied to the machine 202 is above the predetermine load capacity. Other sensors on the machine 202 may indicate when a part is broken or missing.
Responsive to determining the machine 202 is not capable of performing the task indicated by the command, the control module 44 may generate a notification indicating the machine is not capable of performing the task. The notification may include details regarding the specific machine (e.g., machine number, time spent at the location, specific location of machine at the location, load capacity, etc.). The notification may include details regarding the task indicated by the command. The notification may include details regarding why the machine is not capable of performing the task (e.g., broken parts, wrong machine, low battery, etc.). If the machine malfunctioned (broken part, low battery, parts aren’t moving properly, etc.), the notification may include instructions on how to fix the problem, which part needs repair, where to buy a replacement part, etc. The control module 44 may transmit the notification to a user device, or other network device, to notify a user of the inability to perform the task.
In some embodiments, the control module 44, via the connectivity module 218, may identify a different machine that is capable of performing the task indicated by the command. For example, the control module 44 may receive data from a second machine 202 indicating all parts are functioning properly (e.g., data from a self-inspection from the second machine 202), the battery is fully charged, the load capacity exceeds the load of the task, etc. The control module 44 may recommend the second machine 202 as a replacement for the first machine 202 to the user device. In another embodiment, the control module 44 may automatically send, via the connectivity module 218, the command to the second machine 202.
In another embodiment, when the control module 44 determines a machine 202 is malfunctioning, the control module 44 may designate the machine 202 as inoperable. Based on the designation, the control module 44 may actuate a visual indicator (e.g., a light, a beacon, etc.). The visual indicator may be indicative of an inoperable state. In some embodiments, a specific visual indicator may correspond to a specific malfunction. For example, the control module 44 may change a color of a light, change a pulse of the light, change the number of lights, etc. based on what caused the malfunction. For example, a steady red light may indicate a low battery and a flashing red light may indicate a broken part.
In some embodiments, at operation 1518, at the completion of an assignment or at the detection of a fault condition requiring off site maintenance, the machine is designated for pick up. In some embodiments, the machine may send a notification to a remote user device indicating that the machine is to be removed from the work site. At operation 1520, the designated machine is picked up at the work site. Upon pick up, the machine may be disconnected from the local network. The disconnection may be done manually (e.g., user turns off or disengages the connectivity module of the machine) or automatically (e.g., machine determines it is no longer on the work site and disconnects from the network). For example, the control module 44 may have a GPS system that can determine when the machine 202 is no longer at the site. Upon removal, the control module 44 may be configured to disconnect the machine from the other machines at disposed at the location. In some embodiments, a new status of the machine is identified in the local fleet connectivity system. For example, when connected to the local fleet connectivity system, the machine may indicate a status of connected, operational, ready, etc. Upon disconnection, the machine may indicate a status of disconnected, inoperable, being serviced, etc.
In some embodiments, at operation 1522, the designated machine is reset (e.g., fueled, charged, serviced, repaired, upgraded, etc.) and made available for a new assignment within the local fleet connectivity system. In some embodiments, the machine may be returned to the same work site and connected to the same local fleet connectivity system. In other embodiments, the machine may be sent to a new work site and connected to a new local fleet connectivity system. Method 1500 may be performed any number of times for any machine and can include any number of local fleet connectivity systems.
In some embodiments, additional devices that do not include connectivity modules 708, 712, 716, including unpowered devices, may be connected to a local network of machines in a local fleet connectivity system via local wireless technology. For example, smaller power tools, unpowered hand tools, and other unpowered implements may be equipped with one or more local wireless modules configured to communicate with local wireless transceivers of the machine connectivity modules 708, 712, 716 as discussed above. The modules may communicate, for example, via Radio-frequency identification (RFID), Bluetooth Low Energy (BLE) or other short-range, low-bandwidth communication protocols. The local wireless modules may not be configured to communicate directly with external computer networks. Instead, the connectivity modules 708, 712, 716 of the machines may act as access points for the local wireless modules to communicate with an external network. In some embodiments, the local wireless modules may be simple RFID or BLE tags coupled to the devices that generate a signal that can be detected by the local wireless transceivers.
Referring now to
As described above, the connectivity modules 708, 712, 716 may be configured to communicate with each other and with a cloud computing system 722 or other external computer network (e.g., the internet), either directly (e.g., through a cellular or satellite connection) or via a connectivity hub 718. The local wireless modules 1612, 1614 may not be configured to communicate or capable of communicating directly with an external computer network and in some embodiments may not be configured to communicate directly with the connectivity hub 718. The local wireless modules 1612, 1614 may, however, communicate with an external computer network through the connectivity modules 708, 712, 716 of the machines 702, 703, 706. Thus, the connectivity modules 708, 712, 716 may act as gateways for the local wireless modules 1612, 1614 to connect to external networks. The local fleet connectivity system may include one or more computing modules (e.g., computers, servers, processing circuits, etc.) communicably connected to the local network via at least one connectivity module 708, 712, 716 or the connectivity hub 281. The computing module may be, for example, a control module 206 of a machine, a processor located in the connectivity hub 718, or a remote server (e.g., in the cloud 722). The computing module may receive data from the local wireless modules 1612, 1614 via the connectivity modules 708, 712, 716 and in some cases may send data and/or instructions to the local wireless modules 1612, 1614 via the connectivity modules 708, 712, 716.
In some embodiments, the computing module may be configured to determine a distance from their machines 706, 703, 702 to the devices 1602, 1604 based on a signal strength indication (e.g., received signal strength indication (RSSI)) of the signal from the local wireless module 1612, 1614 at the local wireless transceiver the connectivity modules 708, 712, 716. A strong RSSI may indicate that the local wireless module 1612, 1614 is close in distance to the connectivity module 708, 712, 716, while a weaker RSSI may indicate that the local wireless module 1612, 1614 is farther away from the connectivity module 708, 712, 716. The local wireless transceiver of the connectivity module 708 may detect a signal from the local wireless module 1612 comprising a BLE tag indicating a low RSSI. The connectivity module 708 may transmit the RSSI to the computing module, and the computing module may determine that the local wireless module 1612, and therefore the device 1602, is just inside the range of the BLE tag, and may determine or estimate that the device 1602 is about 90-100 meters from the machine 706. If there is a stronger RSSI at the connectivity module 708, the computing module may determine that the device 1602 is closer to the machine 706.
In some embodiments, a signal from a local wireless module 1612, 1614, may be received by more than one connectivity module 708, 712, 716. For example, as shown in
In some embodiments, the computing module may manage a database of devices and machines connected to the local fleet connectivity system, or a plurality of local fleet connectivity systems. The database may be stored, for example, in the cloud 722. A user may access the database via a user device to monitor which of the machines and devices are present at a jobsite. The computing module may receive an indication from a connectivity module 708, 712, 716 that its local wireless transceiver has detected a signal from a local wireless module 1612, 1614 of a device. The computing module may then update the database to associate the device with the local fleet connectivity system. When a device initially connects to a local fleet connectivity system after previously having been disconnected, the computing module may send a notification to a user device that the device has been detected at the jobsite and is connected to the local fleet connectivity system. For example, the computing module may determine that the local wireless transceiver has begun detecting a signal from a local wireless module 1612, 1614 that was not previously detected. The computing module may send the notification to the user device in response to determining that the local wireless transceiver has begun detecting the signal. When a signal from a local wireless module 1612, 1614 stops being detected by any of the local wireless transceivers, the computing module may update the database to disassociate the first device with the local fleet connectivity system and/or send a notification to a user device that the device is no longer detected at the jobsite and the local wireless module 1612, 1614 has recently been removed from the local fleet connectivity system. This can help prevent theft and mistaken transfers of equipment, as the user may be notified when a device is unexpectedly moved off the jobsite.
Referring now to
In some embodiments, control instructions may be sent to the controller of a device via the local wireless module 1712, 1714, and the controller may control the device based on the control instructions. Thus, a user may remotely control a device 1702, 1704 by sending control instructions from a user device. By way of example, a user may access, via a user device, a database (e.g., stored in the cloud 722) containing information from machines and devices in the local network of the local fleet connectivity system 1700. The controller of the portable generator 1704 may continuously or periodically send an activation status via the local wireless module 1714 to the connectivity module 708, 712, 716. The connectivity module 708, 712, 716 may then relay the activation status to the cloud 722, where the database can be updated. A user may access the database via a user device and see that the portable generator 1704 is currently turned on and consuming fuel. If, for example, it is currently a holiday and the jobsite is closed, the user may send an instruction to deactivate the portable generator 1704. For example, the user may send the instruction from the user device to the cloud 722, the cloud 722 may then relay the instruction to the connectivity module 708, 712, 716, and the connectivity module 708, 712, 716 may relay the instruction to the local wireless module 1714. The controller of the portable generator 1704 may then receive the instruction from the local wireless module 1714 and deactivate the portable generator 1704. Thus, the local wireless modules 1712, 1714 may operate in substantially the same manner as the connectivity modules 708, 712, 716, except that they may not be configured to directly communicate with external networks like the internet or the cloud 722 without a local gateway, such as the connectivity modules 708, 712, 716. Any controllable feature of the device can be controlled by the user device using these methods.
Referring now to
Referring to
At operation 1902 of the process 1900, a first indication from a first connectivity module of a first machine of a local fleet connectivity system, is received. The first indication indicates that the first connectivity module is within a signal range of and detects a signal from a local wireless module of a device. At operation 1904 of the process 1900, a database is updated to associate the device with the local fleet connectivity system in response to receiving first the indication. The database may identify the machines and devices in multiple local fleet connectivity systems formed by and among the machines and devices. Each local fleet connectivity system may, for example, be associated with a jobsite. The association of a machine or device with the jobsite may indicate that the device or machine is currently located on the jobsite and is either directly connected to the computing module via the external network or is within range with at least one other node (e.g., another machine, a connectivity hub, etc.) configured to connect to the computing module via the external network. The first indication that the first connectivity module detects a signal from a local wireless module of a device may include a first signal strength indication indicating the strength of the signal detected by the first connectivity module. The computing module may determine a distance from the first machine to the device based on the first signal strength indication.
At operation 1906 of the process 1900, a second indication from a second connectivity module of a second machine of a local fleet connectivity system, is received, indicating that the second connectivity module is within a signal range of and detects the signal from the local wireless module of the device. The second indication may include a first signal strength indication indicating the strength of the signal detected by the second connectivity module. The computing module may determine a distance from the second machine to the device based on the second signal strength indication. At operation 1908 of the process 1900, a location of the device may be estimated based on the first signal strength indication and the second signal strength indication. The estimation of the location may also be based on a GPS location of the first machine and a GPS location of the second machine.
At operation 1910 of the process 1900, control instructions for the device may be transmitted to the first connectivity module, receipt of the control instructions causing the first connectivity module to transmit the control instructions to the local wireless module. At operation 1912 of the process 1900 device information relating to the device may be received from the local wireless module via the first connectivity module. The device information may include a battery charge level, a fuel level, an activation status, and/or device malfunction information. At operation 1914 of the process 1900, it may be determined that the first connectivity module has begun detecting the signal after previously not detecting the signal. In response to the determination, a notification may be transmitted to a user device that the device has joined the local fleet connectivity system. At operation 1916 of the process 1900, an indication from the second connectivity module may be received, indicating that the first connectivity module no longer detects a signal from first local wireless module. In response to receiving the second indication, a database may be updated to disassociate the device with the local fleet connectivity system, and a notification may be transmitted to a user device indicating that the device has recently been removed from the local fleet connectivity system.
As utilized herein, the terms “approximately,” “about,” “substantially”, and similar terms are intended to have a broad meaning in harmony with the common and accepted usage by those of ordinary skill in the art to which the subject matter of this disclosure pertains. It should be understood by those of skill in the art who review this disclosure that these terms are intended to allow a description of certain features described and claimed without restricting the scope of these features to the precise numerical ranges provided. Accordingly, these terms should be interpreted as indicating that insubstantial or inconsequential modifications or alterations of the subject matter described and claimed are considered to be within the scope of the disclosure as recited in the appended claims.
It should be noted that the term “exemplary” and variations thereof, as used herein to describe various embodiments, are intended to indicate that such embodiments are possible examples, representations, or illustrations of possible embodiments (and such terms are not intended to connote that such embodiments are necessarily extraordinary or superlative examples).
The term “coupled” and variations thereof, as used herein, means the joining of two members directly or indirectly to one another. Such joining may be stationary (e.g., permanent or fixed) or moveable (e.g., removable or releasable). Such joining may be achieved with the two members coupled directly to each other, with the two members coupled to each other using one or more separate intervening members, or with the two members coupled to each other using an intervening member that is integrally formed as a single unitary body with one of the two members. If “coupled” or variations thereof are modified by an additional term (e.g., directly coupled), the generic definition of “coupled” provided above is modified by the plain language meaning of the additional term (e.g., “directly coupled” means the joining of two members without any separate intervening member), resulting in a narrower definition than the generic definition of “coupled” provided above. Such coupling may be mechanical, electrical, or fluidic. For example, circuit A communicably “coupled” to circuit B may signify that the circuit A communicates directly with circuit B (i.e., no intermediary) or communicates indirectly with circuit B (e.g., through one or more intermediaries).
While various circuits with particular functionality are shown in
As mentioned above and in one configuration, the “circuits” of the control system 60 may be implemented in machine-readable medium for execution by various types of processors, such as the processor 52 of
While the term “processor” is briefly defined above, the term “processor” and “processing circuit” are meant to be broadly interpreted. In this regard and as mentioned above, the “processor” may be implemented as one or more general-purpose processors, application specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), digital signal processors (DSPs), or other suitable electronic data processing components structured to execute instructions provided by memory. The one or more processors may take the form of a single core processor, multi-core processor (e.g., a dual core processor, triple core processor, quad core processor, etc.), microprocessor, etc. In some embodiments, the one or more processors may be external to the apparatus, for example, the one or more processors may be a remote processor (e.g., a cloud-based processor). Alternatively or additionally, the one or more processors may be internal and/or local to the apparatus. In this regard, a given circuit or components thereof may be disposed locally (e.g., as part of a local server, a local computing system, etc.) or remotely (e.g., as part of a remote server such as a cloud-based server). To that end, a “circuit” as described herein may include components that are distributed across one or more locations.
Embodiments within the scope of the present disclosure include program products comprising machine-readable media for carrying or having machine-executable instructions or data structures stored thereon. Such machine-readable media can be any available media that can be accessed by a general purpose or special purpose computer or other machine with a processor. By way of example, such machine-readable media can include RAM, ROM, EPROM, EEPROM, or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to carry or store desired program code in the form of machine-executable instructions or data structures and which can be accessed by a general purpose or special purpose computer or other machine with a processor. Combinations of the above are also included within the scope of machine-readable media. Machine-executable instructions include, for example, instructions and data which cause a general purpose computer, special purpose computer, or special purpose processing machines to perform a certain function or group of functions.
Although the figures and description may illustrate a specific order of method steps, the order of such steps may differ from what is depicted and described, unless specified differently above. Also, two or more steps may be performed concurrently or with partial concurrence, unless specified differently above. Such variation may depend, for example, on the software and hardware systems chosen and on designer choice. All such variations are within the scope of the disclosure. Likewise, software implementations of the described methods could be accomplished with standard programming techniques with rule-based logic and other logic to accomplish the various connection steps, processing steps, comparison steps, and decision steps.
Although this description may discuss a specific order of method steps, the order of the steps may differ from what is outlined. Also, two or more steps may be performed concurrently or with partial concurrence. Such variation will depend on the software and hardware systems chosen and on designer choice. All such variations are within the scope of the disclosure. Likewise, software implementations could be accomplished with standard programming techniques with rule-based logic and other logic to accomplish the various connection steps, processing steps, comparison steps, and decision steps.
References herein to the positions of elements (e.g., “top,” “bottom,” “above,” “below,” “between,” etc.) are merely used to describe the orientation of various elements in the figures. It should be noted that the orientation of various elements may differ according to other exemplary embodiments, and that such variations are intended to be encompassed by the present disclosure.
Although only a few embodiments of the present disclosure have been described in detail, those skilled in the art who review this disclosure will readily appreciate that many modifications are possible (e.g., variations in sizes, dimensions, structures, shapes and proportions of the various elements, values of parameters, mounting arrangements, use of materials, colors, orientations, etc.) without materially departing from the novel teachings and advantages of the subject matter recited. For example, elements shown as integrally formed may be constructed of multiple parts or elements. It should be noted that the elements and/or assemblies of the components described herein may be constructed from any of a wide variety of materials that provide sufficient strength or durability, in any of a wide variety of colors, textures, and combinations. Accordingly, all such modifications are intended to be included within the scope of the present inventions. Other substitutions, modifications, changes, and omissions may be made in the design, operating conditions, and arrangement of the preferred and other exemplary embodiments without departing from scope of the present disclosure or from the spirit of the appended claims.
This Application claims the benefit of and priority to U.S. Provisional Pat. No. 63/340688, filed May 11, 2022, which is hereby incorporated by reference herein in its entirety.
Number | Date | Country | |
---|---|---|---|
63340688 | May 2022 | US |