The present application requests the benefit of U.S. provisional patent application 62/851,219, filed on 5/22 of 2019, entitled "WELD MONITORINGSYSTEMS WITH UNKNOWN DOWNTIME DISABLING [ welding monitoring system with unknown downtime ]", the contents of which are incorporated herein by reference in their entirety.
Detailed Description
Some examples of the present disclosure relate to a distributed welding monitoring system with job tracking. Conventional weld monitoring systems require an operator to provide monitoring input in order to work effectively. Conventionally, the monitoring input would be entered at a local monitoring station. However, local monitoring stations are designed to be stationary and may be difficult to transport. In addition, some working environments are relatively large. In such environments, the welding equipment may be very remote from the local monitoring station, requiring movement of the local monitoring station or long trips between the welding equipment and the local monitoring station.
The present disclosure contemplates a distributed welding monitoring system that allows a welding operator to provide monitoring input via a lightweight handheld user device such as a mobile device (e.g., a smart phone, tablet computer, laptop computer, personal digital assistant, etc.). The user equipment may in turn communicate the monitoring input to a central monitoring station. Such a distributed monitoring system eliminates the need for long trips or weight lifts, allowing operators to instead use convenient lightweight equipment to enter monitoring inputs.
In some examples, the distributed weld monitoring system organizes monitoring data around a particular job and/or job session. For example, the work may be the construction of a vehicle chassis for a large excavator. In such examples, each job session may correspond to a period of time that an operator is working on the vehicle chassis. As another example, the work may be the construction of the entire excavator, and each work session may correspond to a period of time during which the operator is working on any aspect of the excavator. In some examples, each job is associated with a plurality of job sessions. In some examples, each job session is associated with a single job, a single welding device, and/or a single operator. By organizing the monitoring data according to jobs and job sessions as it is collected, the monitoring data may be viewed and/or analyzed from each job and/or job session after the job ends. For example, a distributed weld monitoring system may be able to determine how much time, material, and/or other resources are spent completing a job (and/or one or more particular job sessions), which may be used for billing, accounting, quality assurance, performance review, future planning, and the like.
In some examples, job and job session data collection may also allow monitoring of data analysis while the job is still in progress. For example, the distributed weld monitoring system may estimate the percentage of completion of a job as the job proceeds. For example, one or more operating parameters (e.g., man-hours, arc or welding time, number of welds, amount of cladding material, etc.) may be estimated that the operation requires a certain amount. In such examples, the distributed welding monitoring system may be capable of estimating the percentage of completion based on a comparison of the estimated job requirement(s) and the recorded job data.
Because the distributed welding monitoring system performs best when the operator regularly provides monitoring input, in some examples, the distributed welding monitoring system may take steps that encourage operator input. In some examples, this incentive may take the form of disabling one or more welding devices being used by the operator until operator input is imminent.
Fig. 1 illustrates an exemplary welding system 100 and a local monitoring station 200. As shown, the welding system 100 includes a welding torch 118 and a workpiece holder 117 connected to the welding power supply 108. As shown, the local monitoring station 200 is electrically coupled (and/or in electrical communication) with the welding-type power supply 108. In some examples, the local monitoring station 200 may also communicate with the welding torch 118 (e.g., via the welding power supply 108).
In the example of fig. 1, the operator 116 is manipulating the welding torch 118 near the welding table 112. In some examples, the welding table 112 may be and/or include a clamping system configured to hold one or more workpieces 110. In some examples, the clamping system may include one or more workpiece holders 117 (e.g., manual holders and/or pneumatic holders). In some examples, the workpiece(s) 110 may be independent of the welding table 112, e.g., free standing elements such as structural steel elements, pipelines, or bridges. Although a human operator 116 is shown in fig. 1, in some examples, the operator 116 may be a robotic and/or automated welding machine.
In the example of fig. 1, the welding torch 118 is connected to the welding power supply 108 via a weld cable 126. The clamp 117 is also connected to the welding type power supply 108 via a clamp cable 115. The welding-type power supply 108 in turn communicates with the local monitoring station 200, such as via a conduit 130. In some examples, the welding power supply 108 may alternatively or additionally include wireless communication capabilities (e.g., wireless communication circuitry) by which wireless communication may be established with the local monitoring station 200.
In the example of fig. 1, the welding torch 118 is a welding gun configured as Gas Metal Arc Welding (GMAW). In some examples, the welding torch 118 may include an electrode holder (i.e., a tip) configured to Shield Metal Arc Welding (SMAW). In some examples, the welding torch 118 may include a welding torch and/or electrode configured as a Gas Tungsten Arc Welding (GTAW). In some examples, the welding torch 118 may include a welding gun configured as flux-cored wire arc welding (FCAW). In some examples, the welding torch 118 may additionally or alternatively include an electrode. In the example of fig. 1, the welding torch 118 includes a trigger 119. In some examples, the trigger 119 may be actuated by the operator 116 to trigger a welding-type operation (e.g., an arc).
In the example of fig. 1, the welding-type power supply 108 includes (and/or is connected to) a wire feeder 140. In some examples, the wire feeder 140 houses a wire spool for providing wire electrodes (e.g., solid wire, cored wire, coated wire) to the welding torch 118. In some examples, the wire feeder 140 further includes motorized rollers configured to feed wire electrodes (e.g., from a spool) to the welding torch 118 and/or retract wire electrodes (e.g., to a spool) from the welding torch 118.
In the example of fig. 1, the welding power supply 108 also includes (and/or is connected to) a gas source 142. In some examples, the gas source 142 supplies shielding gas and/or a shielding gas mixture to the welding torch 118 (e.g., via the cable 126). As used herein, shielding gas may refer to any gas (e.g., CO2, argon) or gas mixture that may be provided to an arc and/or weld pool in order to provide a particular local atmosphere (e.g., to shield the arc, improve arc stability, limit formation of metal oxides, improve humidity of the metal surface, alter the chemistry of the weld deposit, etc.).
In the example of fig. 1 and 2, the welding power supply 108 also includes an operator interface 144. In the example of fig. 1, the operator interface 144 includes one or more adjustable inputs (e.g., knobs, buttons, switches, keys, etc.) and/or outputs (e.g., a display screen, lights, speakers, etc.) on the welding power supply 108. In some examples, the operator interface 144 may include remote controls and/or a pendant (pendant). In some examples, the operator 116 may use the operator interface 144 to input and/or select one or more welding parameters (e.g., voltage, current, gas type, wire feed speed, workpiece material type, filler type, etc.) and/or welding operations of the welding power supply 108. In some examples, the operator interface 144 may further include one or more receptacles configured to connect to (and/or receive) one or more external memory devices (e.g., floppy disks, optical disks, digital video disks, flash drives, etc.).
In the example of fig. 1, the welding-type power supply 108 includes power conversion circuitry 132 configured to receive input power (e.g., from utility power, a generator, etc.) and convert the input power to welding-type output power. In some examples, power conversion circuitry 132 may include circuit elements (e.g., transformers, rectifiers, capacitors, inductors, diodes, transistors, switches, etc.) capable of converting input power to output power. In some examples, power conversion circuitry 132 may also include one or more controllable circuit elements. In some examples, the controllable circuit element may include circuitry configured to change state (e.g., fire, open/close, close/open, etc.) based on one or more control signals. In some examples, the state(s) of the controllable circuit elements may affect the operation of the power conversion circuitry 132, and/or affect characteristics (e.g., current/voltage amplitude, frequency, waveform, etc.) of the output power provided by the power conversion circuitry 132. In some examples, the controllable circuit element may include, for example, a switch, a relay, a transistor, and the like. In examples where the controllable circuit element comprises a transistor, the transistor may comprise any suitable transistor, such as MOSFET, JFET, IGBT, BJT or the like.
As shown, the welding power supply 108 further includes control circuitry 134 electrically connected to and configured to control the power conversion circuitry 132. In some examples, control circuitry 134 may include processing circuitry (and/or one or more processors) and analog and/or digital memory. In some examples, the control circuitry 134 is configured to control the power conversion circuitry 132 to ensure that the power conversion circuitry 132 generates the appropriate welding-type output power to perform the desired welding-type operation.
In some examples, the control circuitry 134 is also electrically connected to and/or configured to control the wire feeder 140 and/or the gas source 142. In some examples, the control circuit 134 may control the wire feeder 140 to output the welding wire at a target speed and/or direction. For example, the control circuitry 134 may control the motor of the wire feeder 140 to feed the wire electrode into the welding torch 118 (and/or retract the wire electrode 250 from the welding torch) at a target speed. In some examples, the welding power supply 108 may control the gas source 142 to output a target type and/or amount of gas. For example, the control circuitry 134 may control a valve in communication with the gas source 142 to regulate the gas delivered to the welding torch 118.
In the example of fig. 1, the welding system 100 further includes several sensors 150. In some examples, the sensor 150 may be configured to sense, detect, and/or measure various welding data of the welding system 100. For example, the sensor 150 may sense, detect, and/or measure a voltage and/or current of power received by the welding-type power supply 108, the power conversion circuitry 132, and/or the welding torch, and/or a voltage and/or current of power output by the welding-type power supply 108 and/or the power conversion circuitry 132. As another example, the sensor 150 may sense, detect, and/or measure the speed (e.g., speed and/or wire feed direction) of the wire feeder 140 and/or the type of welding wire fed by the wire feeder 140. As another example, the sensor 150 may sense, detect, and/or measure a gas type and/or a gas flow from the gas source 142 (e.g., through a valve) to the welding torch 118. As another example, the sensor 150 may sense, detect, and/or measure a trigger signal (e.g., pull, release, etc.) of the welding torch 118 and/or a clamping signal (e.g., clamp, unclamp, etc.) of the clamp 117. In some examples, control circuitry 134 may be in communication with sensor 150 and/or otherwise configured to receive information from sensor 150.
In some examples, the welding operation (and/or welding process) may begin when the operator 116 activates the trigger 119 of the welding torch 118 (and/or otherwise activates the welding torch 118). During a welding operation, welding-type power provided by the welding-type power supply 108 may be applied to an electrode (e.g., a wire electrode) of the welding torch 118 to generate a welding arc between the electrode and the one or more workpieces 110. The heat of the arc may melt filler material (e.g., welding wire) and/or a portion of the workpiece 110, thereby creating a molten weld pool. Movement of the welding torch 118 (e.g., by an operator) may move the weld pool to produce one or more welds 111.
When the welding operation is complete, the operator 116 may release the trigger 119 (and/or otherwise deactivate the welding torch 118). In some examples, the control circuitry 134 may detect that the welding operation has been completed. For example, the control circuitry 134 may detect a trigger release signal via the sensor 150. As another example, the control circuitry 134 may receive a torch deactivation command (e.g., where the welding torch 118 is manipulated by a robot and/or an automated welding machine) via the operator interface 144.
In some examples, the control circuitry 134 may detect certain welding data related to the welding power supply 108, the clamp 117, the table 112, and/or the welding torch 118 during the welding process (e.g., via the sensor 150). In some examples, the control circuitry 134 is configured to transmit this welding data (e.g., via a data transmission object (dto)) to the local monitoring station 200. In some examples, the control circuitry 134 may be configured to transmit the welding data to the local monitoring station 200 in real-time during the welding operation, periodically, and/or after the welding operation.
Fig. 2 illustrates an example local monitoring station 200 electrically (and/or communicatively) connected to several example welding power supplies 108 and/or welding torches 118. As shown, the local monitoring station 200 is also electrically (and/or communicatively) connected to a User Interface (UI) 202 and a local data store 204. In some examples, local data store 204 includes a database. In some examples, the local data store 204 is configured to store and/or organize welding data, monitoring inputs entered by the operator 116 (or other person), and/or other relevant information.
In some examples, the user interface 202 may include a touch screen interface and/or one or more input devices (e.g., mouse, keyboard, buttons, knobs, microphones, etc.) and/or output devices (e.g., display screen, speakers, etc.). In some examples, user interface 202 may further include one or more receptacles configured to connect to (and/or receive) one or more external memory devices (e.g., floppy disks, optical disks, digital video disks, flash drives, etc.). In operation, an operator 116 or other user may provide input to and/or receive output from the local monitoring station 200 via the user interface 202. Although shown as separate components in the example of fig. 2, in some examples, UI 202 and/or local data store 204 may be part of local monitoring station 200.
Fig. 2 additionally shows exemplary components of a local monitoring station 200. As shown, the local monitoring station 200 includes communication circuitry 206, processing circuitry 208, and memory 210 interconnected with one another via the same electrical bus. In some examples, the processing circuitry 208 may include one or more processors. In some examples, communication circuitry 206 may include one or more wireless adapters, wireless cards, cable adapters, wire adapters, dongles, radio Frequency (RF) devices, wireless communication devices, bluetooth devices, IEEE802.11 compliant devices, wiFi devices, cellular devices, GPS devices, ethernet ports, network ports, lightning-arrest cable ports, and the like. In some examples, the communication circuitry 206 may be configured to facilitate communications via one or more wired media and/or protocols (e.g., ethernet cable(s), universal serial bus cable(s), etc.) and/or wireless media and/or protocols (e.g., near Field Communications (NFC), ultra-high frequency radio waves (commonly referred to as bluetooth), IEEE802.11 x, zigbee, HART, LTE, Z-Wave, wireless HD, wiGig, etc.). In some examples, the local monitoring station 200 may be implemented by a desktop computer or a local server computer. In some examples, memory 210 may store local data store 204. In the example of fig. 2, the memory stores a local monitor 800, discussed further below.
Fig. 3 illustrates an example of a distributed weld monitoring system 300. As shown, the distributed welding monitoring system 300 includes a central monitoring station 302 electrically (and/or communicatively) connected to several local monitoring stations 200, each of which is electrically (and/or communicatively) connected to several welding devices 399. In some examples, each welding device 399 includes a welding-type power supply 108, an output of the welding-type power supply 108 (e.g., for a multi-output welding-type power supply 108), a welding torch 118, a gas source 142, a wire feeder 140, a clamp 117, and/or one or more other welding-type devices (e.g., a polishing device, a grinding device, an induction heating device, etc.). In the example of fig. 3, central monitoring station 302 is further electrically (and/or communicatively) connected to central data store 400.
In the example of fig. 3, the central monitoring station 302 is additionally communicatively connected with a user device 350. Although only one user device 350 is depicted in the example of fig. 3, for simplicity, in some examples, multiple user devices may be in communication with the central monitoring station 302. In some examples, user device 350 may be implemented by a mobile device (e.g., a smart phone, tablet computer, laptop computer, personal digital assistant, etc.).
In the example of fig. 3, the user device 350 includes communication circuitry 356, processing circuitry 358, memory 360, and a Human Machine Interface (HMI) 352 interconnected with each other via the same electrical bus. In some examples, the processing circuitry 358 may include one or more processors. In some examples, the communication circuitry 356 may include one or more wireless adapters, wireless cards, cable adapters, wire adapters, dongles, radio Frequency (RF) devices, wireless communication devices, bluetooth devices, IEEE 802.11 compliant devices, wiFi devices, cellular devices, GPS devices, ethernet ports, network ports, lightning-arrest cable ports, and the like. In some examples, the communication circuitry 356 may be configured to facilitate communication via one or more wired media and/or protocols (e.g., ethernet cable(s), universal serial bus cable(s), etc.) and/or wireless media and/or protocols (e.g., near Field Communication (NFC), ultra-high frequency radio waves (commonly referred to as bluetooth), IEEE 802.11x, zigbee, HART, LTE, Z-Wave, wireless HD, wiGig, etc.).
In some examples, HMI 352 may include a touch screen interface and/or one or more input devices (e.g., keyboard, buttons, knobs, microphones, etc.) and/or output devices (e.g., display screen, speakers, etc.). In some examples, HMI 352 may further include one or more containers configured to connect with (and/or receive) one or more external memory devices (e.g., floppy disks, optical disks, digital video disks, flash drives, etc.). In operation, the operator 116 or other user can provide input (e.g., monitor input) to and/or receive output from the user device 350 via the HMI 352. In the example of fig. 3, the memory stores a user device monitor 600 discussed further below.
Fig. 3 additionally illustrates exemplary components of the central monitoring station 302. As shown, the central monitoring station 302 includes communication circuitry 306, processing circuitry 308, and memory 310 interconnected with one another via the same electrical bus. In some examples, processing circuitry 308 may include one or more processors. In some examples, communication circuitry 306 may include one or more wireless adapters, wireless cards, cable adapters, line adapters, dongles, radio Frequency (RF) devices, wireless communication devices, bluetooth devices, IEEE 802.11 compliant devices, wiFi devices, cellular devices, GPS devices, ethernet ports, network ports, lightning-arrest cable ports, and the like. In some examples, communication circuitry 306 may be configured to facilitate communications via one or more wired media and/or protocols (e.g., ethernet cable(s), universal serial bus cable(s), etc.) and/or wireless media and/or protocols (e.g., near Field Communications (NFC), ultra-high frequency radio waves (commonly referred to as bluetooth), IEEE 802.11x, zigbee, HART, LTE, Z-Wave, wireless HD, wiGig, etc.). In some examples, the central monitoring station 302 may be implemented by a desktop computer or a central server computer. In some examples, memory 310 may store a central data store 400. In the example of fig. 3, memory 310 stores a central monitoring program 700, discussed further below.
Fig. 4 shows a more detailed example of a central data store 400. In some examples, central data store 400 and local data store 204 may be similar (or identical in structure). In some examples, central data store 400 and/or local data store 204 may be implemented via one or more databases, database tables, and/or other data structures.
In the example of fig. 4, the central data store 400 stores welding device information 402, user information 404, activity information 406, and custom domain information 408. In some examples, the central data store 400 may also include additional information, such as local monitoring station information, central monitoring station information, and/or other related information. In some examples, welding device information 402, user information 404, activity information 406, custom domain information 408, and/or other information may be modified by user input (e.g., via user device 350 and/or local monitoring station 200 by a user having particular administrative privileges), program input, and/or other suitable means.
In some examples, the welding device information 402 may include one or more welding device identifications. In some examples, each welding device identification may be uniquely associated with a particular welding device 399 and information about the welding device 399 such as a device type (e.g., MIG welding gun, TIG welding torch, wire feeder, AC welding-type power supply, DC welding-type power supply, gas source, etc.), device location, approved user of the device, approved job of the device, associated local monitoring station 200, manufacturer, model number, serial number, maintenance history, software version, etc. In some examples, user information 404 may include one or more user identifications. In some examples, each user identification 452 may be associated with a particular user (e.g., operator 116) and information about the user, such as name, age, experience, credentials, credential level, device approved for the user, job approved for the user, login credentials, work plan(s), training history, operation history, assigned tasks, assigned workflow items, assigned workflows, and the like.
In some examples, activity information 406 may include information regarding various known activities and/or recorded activities that occur during job session 450. Such activities may include, for example, activities related to the welding device (e.g., normal operation, maintenance operation, start-up operation, shutdown operation, etc.), maintenance activities, quality assurance activities, replenishment activities, replacement activities, rest activities, activities related to errors, training activities, conference activities, and/or other activities. In some examples, some or all of the activities may be associated with one or more time stamps that indicate the date and/or time when the activity has occurred and/or is expected to occur. In some examples, some or all of the activities may be associated with one or more custom domains. In some examples, each activity may be uniquely associated with an activity identification.
In some examples, custom domain information 408 may include information regarding various custom domains used by distributed welding monitoring system 300. In some examples, custom domain information 408 may include one or more custom domain identifications. In some examples, each custom domain identification may be uniquely associated with a particular custom domain. In some examples, the custom domain information 408 may include other information about each custom domain, such as a name, type (e.g., boolean, text, drop-down list, number, date, check box, radio button, etc.), input option (e.g., drop-down option, check box, radio button, etc.), prompt(s) (e.g., input: wire feed speed, wire type, wire size, gas type, work sheet identification, operator certification level, work piece material, seam number, operational advice, operational issues, corrective action, management instructions, etc.), description (e.g., contracts necessary/optional for each person or particular user/job/device, etc.), associated job 420, associated activity, associated user, associated welding device 399, and/or other relevant information.
In some examples, custom domains may be associated with different jobs 420, welding devices 399, users, activities, etc. to collect different information from users according to jobs 420, welding devices 399, users, activities, etc. For example, a user (and/or administrator) may create a digital custom field and associated prompts to interrogate the wire field and associate the custom field with all wire feeder welding equipment 399. In such an example, each time a user begins a job session 450 and designates a wire feeder as welding equipment 399, a wire size custom field and prompt will be presented. As another example, a user (and/or administrator) may create a boolean custom domain and associated hints to ask if a certain certificate level has been reached and associate the custom domain with certain jobs 420 (e.g., more complex jobs). In such an example, the credential level custom field and hint will be presented each time the user starts the job session 450 for that particular job 420. In some examples, the entry populated into the custom domain (i.e., custom domain entry 456) may be stored in central data store 400 (and/or a local data store) and/or associated with a particular job session 450.
Fig. 5 illustrates an exemplary custom domain setup screen 500. In some examples, custom domain setup screen 500 may be presented to a user (e.g., a user with administrative privileges) during setup of distributed welding monitoring system 300. As shown, custom domain setup screen 500 allows entry of names, descriptions, help information, and domain types. As shown, custom domain setup screen 500 also allows custom domains to be marked as either required or optional via button 502.
In the example of FIG. 4, central data store 400 also stores data related to several jobs 420. As shown, each job 420 includes several job sessions 450. FIG. 4 further illustrates exemplary monitoring data associated with each job 420 and job session 450. As shown, each job 420 is associated with a job identification 422, one or more session identifications 424, an on/off timestamp 426, an approved user 428, and an approved welding device 430.
As shown, each job session 450 is associated with an open/close timestamp 426, a user identification 452, a job identification 422, a session identification 424, a custom domain 454, a custom domain entry 456, device data 458, and activity data 460. In some examples, custom domain 454 may be stored as part of the entire job 420, rather than as a separate job session 450 or as a complement to a separate job session. In some examples, each job 420 and/or job session 450 may be more or less associated data than shown in the example of fig. 4. For example, each job 420 may be associated with a written description of the job 420, an expiration date, a specification, a schematic, an estimated number of hours and/or time to complete an arc, a budget, and/or other information and/or material related to the job 420.
In some examples, each job 420 is associated with a job identification 422, which job identification 422 is not associated with any other job 420. In some examples, each job session 450 is associated with a job session identification 424, which job session identification 424 is not associated with any other job session 450. In some examples, each user is associated with a user identification 452, the user identification 452 not being associated with any other user. In some examples, each welding device 399 is associated with a welding device identification that is not associated with any other welding device 399. In some examples, each job identification 422, user identification 452, and/or device identification may be automatically generated by central data store 400, local data store 204, central monitoring station 302, or local monitoring station 200.
In some examples, one or more (or none) job sessions 450 may be associated with job 420 through session identification 424 of job 420. In some examples, one or more (or none) of the users may be associated with job 420 through approved user 428 of job 420. In some examples, one or more (or none) welding devices 399 may be associated with job 420 by approved welding device 430 of job 420. In this manner, the monitoring data of distributed weld monitoring system 300 may be organized according to job 420 and job session 450.
In some examples, the open/close timestamp 426 of each job 420 and/or job session 450 may include a timestamp representing the date and/or time that the job 420 and/or job session 450 was opened and/or closed. In some examples, each open job 420 and/or job session 450 may have an open timestamp. However, in some examples, job 420 and/or job session 450 may only have a closing timestamp if job 420 and/or job session 450 have been closed. Thus, in some examples, job 420 and/or job session 450 that is still open may not have a closing timestamp to identify job 420 and/or job session 450 as open. In some examples, each job 420 and/or job session 450 may additionally or alternatively be associated with an explicit flag indicating whether job 420 and/or job session 450 is open or closed.
In some examples, approved user 428 of each job 420 includes data identifying (e.g., via user identification 452) one or more operators 116 who are approved to engage in job 420. In some examples, this information may be used by the distributed welding monitoring system 300 to determine what jobs 420 to present to the user as options when starting a job session 450, compiling a report, performing an analysis, and the like. In some examples, approved welding devices 430 of each job 420 include data identifying (e.g., via welding device identification) one or more welding devices 399 approved to engage in job 420. In some examples, this data may be used by distributed weld monitoring system 300 to determine what welding device 399 to present to a user as an option when starting job session 450, compiling a report, performing an analysis, and so forth.
In the example of fig. 4, each job session 450 is associated with a single user (e.g., via user identification 452) and a single job 420 (e.g., via job identification 422). In some examples, each job session 450 is associated with only a single user, and no job session 450 may be associated with more than one user. In some examples, each job session 450 is also associated with only a single job 420, and no job session 450 may be associated with more than one job 420.
In the example of fig. 4, each job session 450 is also associated with one or more (or none) custom domains 454. In some examples, each custom domain 454 associated with job session 450 (and/or job 420) is also associated with one of the custom domains of custom domain information 408. Custom domain entries 456 shown in FIG. 4 as part of a job session 450 include entries entered by a user (e.g., via HMI 352 of user device 350) in one or more custom domains 454.
In the example of fig. 4, each job session 450 is associated with welding equipment data 458. In some examples, each job session 450 may be associated with a single welding device 399 (or not associated with welding device 399), and no job session 450 may be associated with more than one welding device 399. In some examples, welding device data 458 may include data identifying individual welding devices 399 associated with job session 450 as long as such welding devices 399 are present. For example, the welding device data 458 may include welding device identifications corresponding to the welding device identifications of the welding device information 402. In some examples, welding device data 458 may additionally include welding data received from welding device 399. For example, welding data may be continuously collected from welding equipment 399 by local monitoring station 200 and stored in welding equipment data 458 of local data store 204, which may then be synchronized with welding equipment data 458 of the central data store. In some examples, the welding device data 458 may additionally include one or more timestamps associated with the welding data.
In the example of fig. 4, each job session 450 is also associated with activity data 460. In some examples, activity data 460 may include data related to one or more activities occurring during job session 450. In some examples, each activity may be related to a welding device 399 that operator 116 is using, or to some activity unrelated to welding device 399. In some examples, activity data 460 may include one or more time stamps associated with each activity (e.g., marking a time period during which an activity is occurring). In some examples, one or more activities of each job session 450 may be automatically determined by distributed weld monitoring system 300 (e.g., using known activities stored in activity information 406), selected by the user from several options (e.g., pulled from activity information 406), and/or manually entered by the user.
Fig. 6a is a flow chart illustrating an exemplary user device monitoring program 600 of the distributed weld monitoring system 300. In some examples, the user device monitor 600 may be implemented as machine-readable instructions stored in the memory 360 of the user device 350 and/or executed by the processing circuitry 358 of the user device 350. In some examples, for example, user device monitor 600 may be a web-based application that is sent to user device 350 and/or executed through a web browser. In some examples, the user device monitor program 600 may communicate with the central monitor station 302 and/or the local monitor station 200 during operation of the user device monitor program 600 (e.g., via the communication circuitry 356 of the user device 350).
In the example of fig. 6a, the user device monitor 600 begins at block 602 where a user logs in using user credentials. In some examples, the user device 350 may send the credentials to the central monitoring station 302 at block 602 and wait for a positive response before proceeding to block 604 of the user device monitor 600. In some examples, central monitoring station 302 may access user information 404 of central data store 400 to verify user credentials.
In the example of fig. 6a, the user equipment monitor 600 allows several options at blocks 604-608 after block 602. At blocks 604-608, the user is given the option to start a new job session 450 (block 604), present the user with a list of existing job sessions 450 (block 606), or analyze the monitoring data stored in the central data store 400. In some examples, the user may be presented with more or fewer options than shown in fig. 6 a. For example, if the user credentials are associated with certain management privileges, the user may be presented with additional management options. These additional management options may include, for example, the option to create and/or edit information (and/or contacts) associated with job 420, welding device information 402, custom domain information 408, activity information 406, local monitoring station 200, central monitoring station 302, user information 404, user device 350, and/or other aspects of distributed welding monitoring system 300 (see, e.g., fig. 5). As another example, the user may be given only the option to present the user with a list of existing job sessions 450 (block 606) or analyze job 420 and/or job sessions 450 if their user credentials are associated with sufficient administrative privileges.
In the example of fig. 6a, if the user selects to start a new job session 450 at block 604, the user device monitor 600 proceeds to block 610. Block 610 is further explained below. In the example of fig. 6a, if the user selects to list an existing job session 450 at block 606, the user device monitor 600 proceeds to block 612. At block 612, the user device sends a query request to the central monitoring station 302, receives a response from the central monitoring station 300 that includes the result data of the query request, and outputs the result data to the user via the HMI 352 of the user device 350.
In some examples, the query request sent to central monitoring station 300 at block 612 may request data related to one or more job sessions 450 that meet certain search criteria. In some examples, the search criteria can be entered by the user via the HMI 352 of the user device 350. In some examples, the search criteria may include one or more jobs 420, welding devices 399, on/off time stamps 426, activity, status (e.g., on or off), and/or other monitoring data. In some examples, the user's credentials may be automatically included as part of the search criteria. In some examples, the user (and/or user identification 452) may be a selectable search criteria (e.g., where a logged-in user has credentials associated with certain administrative privileges).
Fig. 6b shows an example of a session list screen 620 that may be displayed to a user at block 612 of the user device monitor 600 via the HMI 352 of the user device 350. As shown, the session list tab 624 is selected and highlighted such that the session list tab 624 is larger than the new session tab 622 and the analysis tab 626. User filter 626 has been set to "my session" to automatically use the current login credentials for the search criteria. In some examples, if "all sessions" are instead selected, session inventory screen 620 may allow for entry of some identifying information (e.g., name, user identification 452, etc.) for different operators. As shown, the session list screen 620 further displays a job 420, a welding device 399, an on/off timestamp 426, and an active search criteria field 628. In some examples, more or fewer search criteria fields 628 may be presented.
In the example of FIG. 6b, refresh button 630 may be selected to submit a query request. As shown, the query request has been submitted and the data returned by the central monitoring station 300 is displayed in the results table 632. In the example of FIG. 6b, results table 632 is organized by row, with information for the same job session 450 displayed in the same row. As shown, each row of results table 632 also includes a selectable edit button 634. In some examples, selection of edit button 634 may allow the user to make changes to some or all of the information related to job session 450 corresponding to that row of results table 632. In some examples, edit button 634 may be displayed or selected only when the user's credentials are associated with certain administrative privileges.
In the example of fig. 6a, if the user selects to analyze at block 608, the user device monitor 600 proceeds to block 614. At block 614, the user device monitor 600 provides an analysis of the data stored in the central data store 400. For example, the user device 350 may send a query request to the central monitoring station 302 along with an analysis request for a particular analysis to be performed (similar to block 612). In some examples, the query request may use one or more of the search criteria described above in connection with block 612.
In some examples, the analysis request may be a time-based analysis such that the user device monitor 600 may present query result data returned from the central monitoring station 302 in a time-synchronized graph, chart, graph, or other suitable form showing data over a period of time. In some examples, the analysis request may be used for comparison of data (e.g., monitoring data of one job 420a versus monitoring data of another job 420 b). In some examples, the analysis request may be used for completion estimation (e.g., percent completed, percent incomplete) and/or estimated completion time (e.g., arc time, man-hour time, session time, etc.) for one or more jobs 420. In some examples, such an estimate may be based on recorded information of job 420 (e.g., entered at and/or after setup) and/or recorded monitoring information of distributed welding monitoring system 300 (e.g., arc time, session time, equipment normal activity time, etc.). In some examples, the user device monitor 600 may receive analytics data from the central monitoring station 300 and present the analytics data to the user via the HMI 352 of the user device 350.
In the example of fig. 6a, after any of blocks 610-614, the user device monitor 600 proceeds to block 616. At block 616, the user device monitor program 600 checks whether the user device monitor program 600 should end. In some examples, user device monitor 600 may be ended at block 616 in response to an explicit request by the user to end user device monitor 600 (e.g., by closing user device monitor 600 and/or an associated web browser), an logout request by the user, and an end command received from central monitor station 302, and/or other suitable actions and/or inputs. If the user equipment monitor 600 determines that the user equipment monitor 600 should end, an indication that the user equipment monitor 600 is about to end may be sent to the central monitoring station 302 along with any other data necessary before the user equipment monitor 600 ends. If the user device monitor 600 determines that the user device monitor 600 should not end, the user device monitor 600 returns to block 604.
Fig. 6c is a flow chart illustrating an exemplary implementation of the start new job session box 610 of the exemplary user device monitor 600 of fig. 6 a. As shown, start new job session block 610 begins at block 640. At block 640, user device monitor 600 prompts the user to enter job session data 642, for example, via one or more input fields presented to the user through HMI 352 of user device 350. In some examples, the job session data may include an identification of job 420, custom domain 454, custom domain entry 456, welding device data 458, activity data 460, and/or other job session data 642. In some examples, some job session data may not need to be entered (e.g., if welding device 399 is not used, welding device data 458 is not needed).
In some examples, user device monitor 600 may require identification of a job before allowing custom domain entries, welding device data 458, and/or activity data 460 to be entered. In some examples, user device monitor 600 may provide the user with input options and/or input prompts for custom fields 454, welding device data 458, activity data 460, and/or other job session data 642, for example, via drop-down boxes, check boxes, and/or dialog buttons. In some examples, user device monitor 600 may send a request to central monitoring station 302 to obtain input options and/or input prompts, for example, in response to a user activating an entry of an input field (e.g., clicking a drop down box) or some other job session data. In some examples, user device monitor 600 may provide some or all of user-entered job session data 642 to central monitoring station 302 in response to user input and/or selection of one or more input options. In some examples, the input options and/or input prompts provided by central monitoring station 302 may depend on the user (e.g., the user's credentials and/or associated privileges) and/or on the entered job session data 640.
In the example of fig. 6c, after block 640, the user device monitor 600 proceeds to block 644. In some examples, the transition from block 640 to block 644 may occur in response to a user action, such as activating start session button 698 (see, e.g., fig. 6 d). In some examples, user device monitor 600 may need to complete some or all of job session data 642 before allowing start session button 698 to be activated and block 644 to be performed. At block 644, user device monitor 600 attempts to start a new job session 450 using the entered job session data in block 640. For example, user device monitor 600 may send some or all of job session data 642 to central monitor station 300 along with a request to start a new job session 450.
In the example of fig. 6c, after block 644, the user device monitor 600 proceeds to block 646. At block 646, user device monitor 600 receives a signal from central monitor station 302 indicating whether the request to start a new job session 450 was successful or failed. If so, the user device monitor 600 returns to block 640. If the request to start a new job session 450 is successful, user device monitor 600 starts job session 450 and proceeds to block 648.
In the example of fig. 6c, at block 648, user device monitor 600 retrieves (e.g., requests and/or receives) a job session report from central monitoring station 302. In some examples, at block 648, user device monitor 600 may additionally provide information from the job session report to the user (e.g., via HMI 352 of user device 350). In some examples, the job session report may include welding data and/or welding related data, such as arc count, consumable cost, cladding amount, current, voltage, wire feed speed, gas flow, torch operating angle, torch travel angle, torch tip-to-workpiece distance, torch travel speed, torch orientation, arc length, and/or other suitable parameters related to operation of the welding apparatus. In some examples, the job report may additionally or alternatively include other information about the job session 450, such as an on/off timestamp 426 of the job session 450, a last updated timestamp, activity, and/or other related information related to the job session 450.
In the example of fig. 6c, after block 648, the user device monitor 600 proceeds to block 650. At block 650, user device monitor 600 checks whether there is a new activity associated with job session 450, such as a new activity transmitted by central monitoring station 302 or entered via HMI 352 of user device 350. If so, the user device monitor 600 updates the current activity at block 652. In some examples, updating the current activity at block 652 may include sending the current activity to the local monitoring station 200 (e.g., via SignalR). In some examples, user device monitor 600 may request and/or receive information regarding which local monitor station 200 sent the current activity at (or before) block 650.
In some examples, user device monitor 600 may receive one or more custom input fields 454 (and/or custom input cues) and/or one or more requests for updated custom field entries 456 from central monitor station 302 and/or local monitor station 200 in response to updated current activity. In some examples, the user device monitor 600 can provide one or more custom input fields 454 (and/or custom input cues) to a user via the HMI 352. In some examples, the user device monitor 600 may communicate any user input related to one or more custom input fields 454 (and/or requests for updated custom field entries 456) to the central monitoring station 302. In the example of fig. 6c, after block 652, the user device monitor 600 repeats block 648.
In the example of fig. 6c, if there is no new activity at block 650, the user device monitor 600 proceeds to block 654. At block 654, user device monitor 600 checks whether job session 450 should end. In some examples, job session 450 may be ended at block 654 in response to an explicit request by the user to end job session 450 (e.g., by activating an end session button), an exit login request by the user, and an end command received from central monitoring station 302, and/or other suitable actions and/or inputs. If the user device monitor 600 determines at block 654 that the job session 450 should end, an indication that the job session 450 should end is sent to the central monitoring station 302 along with any other data needed to end the job session. Thereafter, the user device monitor 600 returns to block 616 of fig. 6 a. If user device monitor 600 determines that job session 450 should not end, user device monitor 600 returns to block 648.
Fig. 6d illustrates an exemplary new session screen 699 that may be displayed to a user via the HMI 352 of the user device 350 at block 610 of the user device monitor 600. In some examples, the new session screen 699 may be displayed within a web browser of the user device 350. As shown, the new session tab 622 is selected and highlighted such that the new session tab 622 is larger than the session list tab 624 and the analysis tab 626. In the example of FIG. 6d, the new session screen 699 includes a job input field 696, a welding device input field 694, an active input field 688, and several custom field cues 692 and custom input fields 690. As shown, the job input field 696, the welding device input field 694, and the activity input field 688 are drop-down boxes, while the custom input field 690 includes a drop-down box, a number field, and an on/off (i.e., boolean) button. The new session screen 699 further includes an information panel 686 that can be updated with information related to the job session 450 during the job session 450. The new session screen 699 further includes a start session button 698 that can be activated by a user to start the job session 450. In some examples, the start session button 698 may become an end session button after a session starts.
Fig. 7a is a flow chart illustrating an exemplary central monitoring procedure 700 of the central monitoring station 302. In some examples, central monitoring program 700 may be implemented as machine readable instructions stored in memory 310 of central monitoring station 302 and/or executed by processing circuitry 308 of central monitoring station 302. In some examples, multiple instances of the central monitoring program 700 may be executed simultaneously in order to accommodate multiple instances of the user device 350 and/or the user device monitoring program 600. In some examples, central monitoring program 700 may communicate with local monitoring station 200 and/or user equipment 350 during operation of central monitoring program 700 (e.g., via communication circuitry 306 of central monitoring station 302).
In the example of fig. 7a, a central monitoring program 700 begins at block 702. At block 702, the central monitoring program 700 receives user credentials from the user device 350 and either authenticates the user credentials (e.g., using the user information 404 of the central data store 400) or denies the user credentials after authentication fails. In either case, the central monitoring program 700 transmits one or more corresponding signals representing the user authentication result to the user device 350.
In the example of fig. 7a, after block 702, the central monitoring program 700 proceeds to block 704. At blocks 704-708, central monitoring program 700 responds to the request received from user device 350 (e.g., via one or more signals) to begin a new job session 450 (block 704), process the query (block 706), and/or process the analysis (block 708). In some examples, central monitor 700 may be configured to respond to more or fewer requests. For example, if user credentials are associated with certain management privileges, central monitor 700 may be configured to respond to one or more signals indicating one or more management requests. Such additional management requests may include, for example, requests to create and/or edit information (and/or associations) related to job 420, job session 450, welding equipment information 402, user information 404, activity information 406, custom domain information 408, local monitoring station 200, central monitoring station 302, user equipment 350, and/or other aspects of distributed welding monitoring system 300 (see, e.g., fig. 5). In some examples, if the user credentials received at block 702 are not associated with appropriate administrative privileges, the central monitor 700 may respond negatively (e.g., error, rejection, denial, etc.) to administrative, query, and/or analysis requests.
In the example of fig. 7a, if a request to start a new job session 450 is received at block 704 (e.g., from user device 350), then central monitor 700 proceeds to block 710. Block 710 is further explained below. In the example of fig. 7a, if a query request is received at block 706, the central monitor 700 proceeds to block 712. At block 712, central monitor 700 receives the query request and the search criteria on which the query is to be based, and queries central data store 400 using the search criteria. The central monitoring program 700 then sends the query results back to the user device 350.
In the example of fig. 7a, if an analysis request is received at block 708, the central monitoring program 700 proceeds to block 714. At block 714, the central monitor 700 receives a query request along with search criteria and analysis requests. Similar to block 712, the central monitor 700 executes a query using the search criteria, and the central data store 400 returns query result data in response to the query. The central monitoring program 700 further formats, constructs, and/or processes the query result data based on the analysis request so that the query result data may be presented to the user appropriately in a useful and/or executable format. For example, the central monitor 700 may receive an analysis request for time-synchronized query result data, and the central monitor 700 may format and/or construct the query result data such that the query result data may be presented in a time-synchronized graph, chart, graph, or other suitable form that shows data over a period of time. As another example, the analysis may be used for comparison of data, and the central monitoring program 700 formats and/or constructs the query result data such that the query result data may be presented in a graph, chart, graph, or other suitable form that shows comparison of data based on or more criteria (e.g., identified in the analysis request). As another example, the analysis may be used to estimate the completion (e.g., percent completed, percent incomplete) and/or estimate the completion time (e.g., arc time, man-hour time, session time, etc.) of one or more jobs 420. In such examples, central monitoring program 700 may query central data store 400 to determine how much time (e.g., arcing time, session time, device normal activity time, etc.) is required to estimate job 420 and/or how much time has been recorded for job 420 (e.g., in all of its associated job sessions 450, some portion of the associated job sessions 450 subject to date/time constraints, etc.), and return analysis results based on this processing.
In the example of FIG. 7a, after any of blocks 710-714, the central monitoring program 700 proceeds to block 716. At block 716, the central monitor 700 checks whether the central monitor 700 should end. In some examples, central monitoring program 700 may end at block 716 in response to an explicit request by the user, an logout request by the user, and/or other suitable actions and/or inputs. If the central monitoring program 700 determines that the central monitoring program 700 should end, an indication that the user device monitoring program 600 is to end may be sent to the user device 350 and/or the local monitoring station 200 along with any suitable information. If the central monitor 700 determines that the central monitor 700 should not end, the central monitor 700 returns to block 704.
FIG. 7b is a flow chart illustrating an exemplary implementation of the start new job session box 710 of the exemplary central monitor 700 of FIG. 7 a. As shown, a start new job session block 710 begins at block 720. At block 720, central monitoring program 700 sends job session data 642 to user device 350. For example, central monitor 700 may provide one or more jobs 420 for selection by a user. Central monitor 700 additionally receives job session data 642, e.g., a selection (and/or identification) of job 420, from user device 350. In some examples, multiple iterations of sending and receiving job session data 642 (e.g., custom domain 454, custom domain entry 456, welding device data 458, activity data 460, and/or other job session data 642) may occur at block 720. In some examples, it may not be necessary to receive some job session data (e.g., welding equipment data 458 if operator 116 is not using welding equipment 399).
In some examples, central monitor 700 may also provide selection options (e.g., options of custom domain entry 456, welding device data 458, activity data 460, and/or other job session data 642) and/or custom domain 454 based on job session data 642 and/or user credentials provided at block 720. In some examples, this may occur in response to a user activating an input field (e.g., clicking a drop down box) or input of some job session data 642. In some examples, central monitor 700 may query central data store 400 to determine one or more selection options and/or custom fields 454. In such examples, central monitor 700 may use user credentials (and/or associated privileges) and/or some or all of received job session data 642 as search criteria. For example, the central monitoring program 700 may receive a request for selection options for welding equipment 399 and the central monitoring program 700 may query the central data store 400 (e.g., welding equipment information 402) to determine what welding equipment 399 may be used in view of the current user and/or the currently selected job 420. The result data of the query may then be sent to the user device 350 in response to the request.
In the example of fig. 7b, after block 720, the central monitoring program 700 proceeds to block 724. At block 724, the central monitor 700 checks whether a request to start a new session has been received. If such a request has not been received, the central monitoring program 700 returns to block 720. If a request to start a new session has been received, the central monitoring program proceeds to block 725.
In the example of fig. 7b, central monitor 700 determines if there has been an open job session 450 with job session data 642 input from block 720. In some examples, this determination may include querying central data store 400 to see if there is a job session 450 associated with certain search criteria (e.g., user credentials and/or one or more of the input job session data 642 (e.g., welding device data 458)) entered at block 720. If such a job session 450 is present, central monitor 700 may then determine whether job session 450 is open, such as, for example, whether job session 450 has an open timestamp and no close timestamp (e.g., in open/close timestamp 426).
In the example of fig. 7b, if there is an open job session 450 associated with the search criteria, the central monitoring program 700 returns to block 720 and sends an error signal (and/or cause of the error) to the user device 350. If there is no open job session 450 associated with the search criteria, then central monitor 700 proceeds to block 728. At block 728, central monitor 700 creates a new job session 450 in central data store 400 using job session data 642 entered at block 720. In some examples, central monitoring program 700 may also send a signal to user device 350 indicating that a new job session 450 was successfully created.
In the example of fig. 7b, after block 728, the central monitoring program 700 proceeds to block 730. At block 730, central monitor 700 synchronizes central data store 400 with local data store 204. In some examples, the synchronization at block 730 may occur in response to a synchronization request from local monitoring station 200 (and/or local data store 204), a job report request from user device 350, and/or expiration of a threshold synchronization period (e.g., stored in memory 310 and/or central data store 400). In some examples, central data store 400 may need to be synchronized with local data store 204 to retrieve welding data received at local data store 204 from welding device 399 associated with job session 450. In some examples, central monitoring program 700 may determine which local monitoring station 200 to synchronize with based on welding device 399 associated with newly created job session 450. In addition, the local monitoring station 200 may perform activity tracking functions and store data related to the activity in the local data store 204 until synchronized. In examples where no welding equipment 399 is associated with the new job session 450, the central monitoring program 700 may synchronize with the default or nearest local monitoring station 200.
In the example of fig. 7b, after block 730, the central monitoring program 700 proceeds to block 732. At block 732, central monitor 700 sends a job session report to user device 350. In some examples, the job session report may include activity tracking information, welding data, timestamp information, and/or other data associated with job session 450. In some examples, the job session report sent to the user device 350 at block 732 may be used by the user device 350 to update its information panel 686 and/or otherwise present to the user.
In the example of fig. 7b, after block 732, the central monitoring program 700 proceeds to block 734. At block 734, central monitor 700 determines whether job session 450 should end. In some examples, central monitor 700 may determine that job session 450 should end at block 734 in response to a signal from user device 350 requesting that job session 450 end, a determination that job 420 associated with job session 450 has ended, and/or other appropriate actions and/or inputs. If central monitor 700 determines that the job session should not end, central monitor 700 returns to block 730. If central monitor 700 determines that job session 450 should end, central monitor 700 proceeds to block 736.
In the example of fig. 7b, central monitor 700 closes job session 450 at block 736. In some examples, central monitoring program 700 may send a signal to user device 350 and/or local monitoring station 200 along with any necessary data indicating that job session 450 is closed. After block 736, the central monitoring program 700 returns to block 716 of FIG. 7 a.
Fig. 8a is a flow chart illustrating an exemplary local monitoring procedure 800 of the local monitoring station 200. In some examples, the local monitoring program 800 may be implemented as machine-readable instructions stored in the memory 210 of the local monitoring station 200 and/or executed by the processing circuitry 208 of the local monitoring station 200. In some examples, local monitoring program 800 may communicate with central monitoring station 302 and/or one or more welding devices 399 during operation of local monitoring program 800 (e.g., via communication circuitry 206 of local monitoring station 200). In some examples, for example, multiple instances of local monitoring program 800 may be executed concurrently in order to accommodate multiple welding devices 399 and/or multiple instances of central monitoring program 700. Although fig. 8a shows the start and end of local monitor 800 for purposes of illustration, in some examples, local monitor 800 may be continuously executed, repeated, and/or looped.
In the example of fig. 8a, the local monitor 800 begins at block 802. At block 802, the local monitoring program 800 receives welding data from one or more welding devices 399 in communication with the local monitoring station 200. The welding data is further stored in a local data store 204. In some examples, the welding data may include data related to the operation of the welding apparatus 399, such as arc count, amount of cladding, current, voltage, wire feed speed, gas flow, torch operating angle, torch travel angle, torch tip to work piece distance, torch travel speed, torch orientation, arc length, and/or other suitable data related to the operation of the welding apparatus 399. In some examples, welding device 399 may continuously or periodically transmit welding data to local monitoring station 200 while welding device 399 performs welding operations. In some examples, welding device 399 may transmit welding data to local monitoring station 200 in response to a request from local monitoring station 200.
In the example of fig. 8a, after block 802, the local monitor 800 proceeds to block 804. At block 804, the local monitor 800 processes event tracking operations, such as weld tracking and/or part tracking operations. For example, the local monitoring program 800 may analyze the welding data received at block 802 to detect certain events (e.g., workflow events, part tracking events, trigger activation/deactivation events, arc start/stop events, etc.). For example, welding apparatus 399 may transmit welding data describing data read by sensor 150 indicative of an event (e.g., a spool change, loading of workpiece 110). In such examples, the local monitoring station 200 may determine that an event has occurred, in view of which event, execute certain instructions (e.g., display a schematic, issue an alarm, etc.). In some examples, local monitor 800 may store data representing detected events and/or instructions in local data store 204. In some examples, local monitoring program 800, when stored in local data store 204, may associate data and/or instructions representative of detected events with welding device 399 from which welding data was received and/or job session 450 associated with welding device 399.
In the example of fig. 8a, after block 804, the local monitor 800 proceeds to block 806. At block 806, the local monitor 800 processes the activity tracking operation. In some examples, the activity tracking at block 806 determines what current activity should be recorded and/or associated with job session 450 and/or welding device 399. The activity tracking operation of block 806 is further explained below with reference to fig. 8 b.
In the example of fig. 8a, after block 806, the local monitor 800 proceeds to block 808. At block 808, the local monitor 800 synchronizes the local data store 204 with the central data store 400. In some examples, the synchronization at block 808 may occur in response to a synchronization request from the central monitoring station 302, expiration of a threshold synchronization period (e.g., stored in memory 210 and/or local data store 204), and/or some other occurrence. After block 808, the local monitor 800 ends.
Fig. 8b is a flow chart illustrating an exemplary implementation of the activity tracking block 806 of the exemplary local monitor 800 of fig. 8 a. As shown, activity tracking block 806 begins with block 810, wherein local monitor 800 determines whether current activity should be recorded as activity associated with welding device 399. In some examples, this determination may include determining whether welding data has been received recently (e.g., within a certain threshold period of time) from welding device 399 (e.g., welding device 399 associated with open job session 450). As shown, if welding data has been recently received, the local monitor 800 proceeds to block 812 where, at block 812, the local monitor 800 analyzes the welding data, determines an activity related to the welding device based on the welding data, and sets the current activity to an activity related to the welding device. After block 812, local monitor 800 ends. However, if at block 810 the local monitor 800 determines that the current activity is not an activity related to a welding device, the local monitor 800 proceeds to block 814.
At block 814, the local monitoring program 800 determines whether the local monitoring station 200 has received user-entered activity, e.g., from the user device 350 (e.g., via SignalR). If no user entered activity has been received, the local monitor 800 proceeds to block 820, which is discussed further below. If a user entered activity has been received, the local monitor 800 proceeds to block 816 where the current activity is set to the user entered activity at block 816. After block 816, local monitor 800 proceeds to block 818 where welding apparatus 399 is enabled, at block 818. After block 818, the local monitor 800 ends.
In some examples, welding device 399 may be enabled by transmitting a signal from local monitoring station 200 to welding device 399. For example, the signal may indicate a request to enable welding device 399. In some examples, welding apparatus 399 may be a welding-type power supply 108 having power conversion circuitry 132 that outputs welding-type power only when control circuitry 134 sends control signals to controllable switching elements of power conversion circuitry 132. In some examples, the control circuitry 134 may be configured to stop sending control signals to the controllable switching elements in response to the disable signal received from the local monitoring station 200 and to resume sending control signals to the controllable switching elements in response to the enable signal received from the local monitoring station 200.
In some examples, the welding apparatus 399 may be a welding power supply 108, a wire feeder 140, or a gas source 142 that provides only power, welding wire, and/or gas in response to a trigger signal received from the welding torch 118. In such examples, welding device 399 may be configured to ignore the trigger signal in response to a disable signal received from local monitoring station 200, and/or to cease to ignore the trigger signal in response to an enable signal received from local monitoring station 200. In some examples, the welding device 399 may be a welding torch 118 that stops sending trigger signals in response to a disable signal received from the local monitoring station 200 and resumes sending trigger signals in response to an enable signal received from the local monitoring station 200.
In the example of fig. 8b, if no user entered activity has been received, the local monitor 800 proceeds to block 820. At block 820, local monitor 800 determines whether a threshold time has elapsed since there has been activity entered by the user (e.g., block 814) or automatically determined activity associated with welding device 399 (e.g., block 810). In some examples, the threshold time period may be stored in the memory 210 of the local monitoring station 200, transmitted from the central monitoring station 302, programmatically determined (e.g., by the processing circuitry 208 of the local monitoring station 200), entered by a user, and/or otherwise provided. If the threshold time has not elapsed, the local monitor 800 ends. If the threshold time has elapsed, the local monitor 800 determines that some downtime exists and proceeds to block 822.
In the example of fig. 8b, the local monitor 800 determines if the downtime is due to some known activity. In some examples, this determination may include determining whether there are any known activities that overlap in time with the current date/time (e.g., stored with activity information 406). For example, activity information 406 may indicate that there is a planned rest, shift, maintenance, replenishment, replacement, training, meeting, or other activity that is planned to occur at or near the current time. In some examples, the determination may further include determining whether any known activities that overlap in time are also associated with a user operating welding device 399 and/or with current job session 450. In some examples, the determination may include additional or alternative considerations.
In the example of fig. 8b, if the local monitor 800 determines at block 822 that downtime is due to a known activity, that known activity is set to current activity at block 824 and is associated with a period of time spanning the threshold period of block 820 until the current time at block 824. After block 824, the local monitoring program 800 ends. However, if the local monitor 800 determines that there is no known activity due to downtime, then at block 826, the local monitor 800 prompts the user for some activity due to downtime. In some examples, a signal indicating the prompt for activity is sent to the user device 350 (e.g., via SignalR) and/or the prompt is presented on the UI 202 of the local monitoring station 200. As shown, the local monitoring program 800 additionally disables the welding device 399 at block 826 such that no further welding operations can be performed using the welding device 399 until a certain activity is determined. Such disabling may prompt the user to provide activity to which downtime may be attributed, which may further ensure that the distributed welding monitoring system 300 receives all necessary information for monitoring. After block 826, the local monitor 800 returns to block 810.
The distributed weld monitoring system 300 allows for the input of monitoring data via a user device 350 that can be more easily transported within a wide operating environment than the local monitoring station 200. Additionally, by organizing the monitoring data according to job 420 and job session 450 as it is collected, the monitoring data may be viewed and/or analyzed from each job and/or job session after the job is over or even while the job is still ongoing, which may facilitate analysis. Because the distributed welding monitoring system performs best when the operator periodically provides monitoring input, in some examples, the distributed welding monitoring system 300 may also take steps to encourage operator input, such as by, for example, disabling one or more welding devices 399 that are being used by the operator 116 until operator input is imminent.
The present methods and/or systems may be implemented in hardware, software, or a combination of hardware and software. The present methods and/or systems may be implemented in a centralized fashion in at least one computing system or in a distributed fashion where different elements are spread across several interconnected computing systems or cloud systems. Any kind of computing system or other apparatus adapted for carrying out the methods described herein is suited. A typical combination of hardware and software could be a general purpose computing system with a program or other code that, when being loaded and executed, controls the computing system such that it carries out the methods described herein. Another exemplary embodiment may include an application specific integrated circuit or chip. Some implementations may include a non-transitory machine-readable (e.g., computer-readable medium (e.g., flash drive, optical disk, magnetic storage disk, etc.) having one or more lines of code stored thereon that are executable by a machine to cause the machine to perform a process as described herein.
While the present method and/or system has been described with reference to certain implementations, it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted without departing from the scope of the present method and/or system. In addition, many modifications may be made to adapt a particular situation or material to the teachings of the disclosure without departing from the scope thereof. Therefore, it is intended that the present method and/or system not be limited to the particular embodiments disclosed, but that the present method and/or system will include all embodiments falling within the scope of the appended claims.
As used herein, "and/or" refers to any one or more of a plurality of items in a manifest that are connected by "and/or". For example, "x and/or y" refers to any element in the three element set { (x), (y), (x, y) }. In other words, "x and/or y" means "one or both of x and y". As another example, "x, y, and/or z" refers to any element in the seven-element set { (x), (y), (z), (x, y), (x, z), (y, z), (x, y, z) }. In other words, "x, y, and/or z" refers to "one or more of x, y, and z".
As used herein, the terms "e.g. (e.g.),)" and "e.g." for example "lead to a list of one or more non-limiting examples, instances, or illustrations.
As used herein, the terms "connected," connected to, "and" connected, "refer to structural and/or electrical connections, whether attached, adhered, connected, joined, fastened, connected, and/or otherwise secured, respectively. As used herein, the term "attached" refers to attaching, combining, connecting, joining, fastening, tying, and/or otherwise securing. As used herein, the term "connected" refers to attaching, coupling, engaging, fastening, associating, and/or otherwise securing.
As used herein, the terms "circuitry" and "circuitry" refer to physical electronic components (i.e., hardware) as well as any software and/or firmware ("code") that may configure, be executed by, and/or otherwise be associated with hardware. As used herein, for example, a particular processor and memory may constitute a first "circuit" when executing a first line or lines of code and a second "circuit" when executing a second line or lines of code. As used herein, circuitry is "operable" and/or "configured" to perform a function when the circuitry includes the hardware and/or code necessary to perform the function (if necessary), regardless of whether execution of the function is disabled or enabled (e.g., via user-configurable settings, factory adjustments, etc.).
As used herein, control circuitry may include digital and/or analog circuitry, discrete and/or integrated circuitry, microprocessors, DSPs, etc., located on one or more boards forming part or all of the controller and/or software, hardware, and/or firmware for controlling the welding process and/or equipment such as a power source or wire feeder.
As used herein, the term "processor" refers to processing devices, apparatus, programs, circuits, components, systems, and subsystems, whether implemented in hardware, software in tangible form, or both, and whether or not they are programmable. The term "processor" as used herein includes, but is not limited to, one or more computing devices, hardwired circuitry, signal modifying devices and systems, devices and machines for controlling systems, central processing units, programmable devices and systems, field programmable gate arrays, application specific integrated circuits, systems on a chip, systems including discrete components and/or circuits, state machines, virtual machines, data processors, processing facilities, and combinations of any of the foregoing. The processor may be, for example, any type of general purpose microprocessor or microcontroller, digital Signal Processing (DSP) processor, application Specific Integrated Circuit (ASIC), graphics Processing Unit (GPU), reduced Instruction Set Computer (RISC) processor with Advanced RISC Machine (ARM) cores. The processor may be connected to and/or integrated with the memory device.
As used herein, the terms "memory" and/or "memory device" refer to computer hardware or circuitry for storing information for use by a processor and/or other digital device. The memory and/or memory device may be any suitable type of computer memory or any other type of electronic storage medium such as, for example, read-only memory (ROM), random-access memory (RAM), cache memory, compact disc read-only memory (CDROM), electro-optic memory, magneto-optic memory, programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), computer-readable media, and the like. The memory may include, for example, non-transitory memory, non-transitory processor-readable medium, non-transitory computer-readable medium, nonvolatile memory, dynamic RAM (DRAM), volatile memory, ferroelectric RAM (FRAM), first-in-first-out (FIFO) memory, last-in-first-out (LIFO) memory, stack memory, nonvolatile RAM (NVRAM), static RAM (SRAM), cache, buffer, semiconductor memory, magnetic memory, optical memory, flash card, compact flash card, memory card, secure digital memory card, mini-card, expansion card, smart card, memory stick, multimedia card, photo card, flash device, subscriber Identity Module (SIM) card, hardware drive (HDD), solid State Drive (SSD), and the like. The memory may be configured to store code, instructions, applications, software, firmware, and/or data and may be external to the processor 130, internal to the processor 130, or both internal and external to the processor 130.
For convenience, the term "power" is used throughout this specification, but also includes relevant metrics such as energy, current, voltage, and enthalpy. For example, controlling "power" may involve controlling voltage, current, energy, and/or enthalpy, and/or controlling based on "power" may involve controlling based on voltage, current, energy, and/or enthalpy.
As used herein, welding-type power refers to power suitable for welding, cladding, brazing, plasma cutting, induction heating, carbon arc cutting and/or hot wire welding/preheating (including laser welding and laser cladding), carbon arc cutting or scraping, and/or resistive preheating.
As used herein, welding-type power supply and/or power source refers to any device capable of supplying power to welding, cladding, brazing, plasma cutting, induction heating, laser heating (including laser welding, hybrid laser welding and laser cladding), carbon arc cutting or cladding, and/or resistive preheating when power is applied thereto, including, but not limited to, transformer-rectifiers, inverters, converters, resonant power supplies, quasi-resonant power supplies, switch-mode power supplies, and the like, as well as control circuitry and other auxiliary circuitry associated therewith.
Disabling of circuitry, actuators, and/or other hardware may be accomplished via hardware, software (including firmware), or a combination of hardware and software, and may include physical disconnection, power-down, and/or software control that limits the implementation of commands to activate the circuitry, actuators, and/or other hardware. Similarly, the enabling of circuitry, actuators, and/or other hardware may be accomplished via hardware, software (including firmware), or a combination of hardware and software, using the same mechanisms as disabling.