In general, the present invention relates to a system that controls motion of a tool. More particularly, the present invention relates to proportional jog controls for the tool.
Automation of a machine tool can be achieved with computer numerical control (CNC), which involves a controller executing a part program to operate the machine tool. The degree of automation can be extensive. For instance, the part program can be generated based on a computer-aided design (CAD) file and include instructions for moving the machine tool, activating the machine tool, configuring parameters of the machine tool, etc. In general, modern CNC machines enable an operator to create a workpiece easily by inputting a CAD file.
However, despite this high level of automation, manual control of the machine tool is often desired. For example, during an initial configuration stage, when a controller is first coupled to a CNC-enabled machine tool, the machine tool may be manually shifted to an origin point. Such manual control can be effected via physical manipulation of the machine tool, or via an operator panel of the controller.
In the case of manual control via the operator panel, a plurality of buttons and/or switches are provided. The plurality of buttons can include a series of jog controls to control a position and movement of the machine tool. The series of jog controls can comprise, for example, eight jog buttons arranged in the four cardinal directions as well as the four diagonal directions. Conventionally, such jog buttons operate as digital on/off switches. That is, when a jog button is depressed, the machine tool is jogged in a corresponding direction until the jog button is released.
Further, a speed at which the machine tool is jogged upon operation of the jog button corresponds to a full jogging feed rate of system (machine tool and controller). Accordingly, it can be difficult to precisely position the machine tool manually. For instance, because the machine tool may jerk at the full jog feed rate and, thus, inadvertently overshoot a target position, a series of back-and-forth operations with the jog button can be required.
In accordance with an embodiment of the present invention, a controller for a machining apparatus is provided. The controller can include a jogging control operable by an operator to alter a position of a tool of the machining apparatus. The jogging control is configured, upon engagement by the operator, to generate a jogging input signal having a variable magnitude. The jogging input signal can be dependent on a position, of the plurality of positions, to which the jogging control is engaged. The controller can further include a motion controller configured to output a variable motor drive signal to a motor of the machining apparatus in response to the jogging input signal, wherein the variable motor drive signal is proportional to the jogging input signal.
In accordance with another embodiment of the present invention, a method is described. The method includes receiving an input signal from a jogging control, the input signal having a variable magnitude based upon a degree of activation of the jogging control by an operator. In addition, the method can include generating a jogging output signal that is proportional to the input signal. Further, the method includes outputting a motor drive signal to a motor of the machining apparatus in accordance with jogging output signal.
In yet another embodiment of the present invention, a system is provided. The system includes a machining apparatus for performing a machining operation on a workpiece. The machining apparatus includes an implement that performs the machining operation and one or more motors coupled to the implement. The one or more motors are controllable to change a position of the implement relative to the workpiece. The system further includes a controller having a motion controller, a control application, and an operator panel. The operator panel provides a set of jogging controls respectively corresponding to forward or reverse directions of the one or more motors. The set of jogging controls are respectively configured to output variable signals corresponding to respective degrees of engagement by an operator. The variable signals from the set of jogging controls are processed by the control application to generate jogging output signals which are proportional thereto. The motion controller generates motor drive signals based on the jogging output signals. The motor drive signals drive the one or more motors in the forward or reverse directions at a speed proportional to the degrees of engagement of the set of jogging controls.
These and other objects of this invention will be evident when viewed in light of the drawings, detailed description and appended claims.
The invention may take physical form in certain parts and arrangements of parts, a preferred embodiment of which will be described in detail in the specification and illustrated in the accompanying drawings which form a part hereof, and wherein:
Embodiments of the invention relate to systems and methods for jog operations performed on a machining apparatus. As utilized herein, a “machining apparatus” is a device or system for performing a machining operation. A machining operation can include various actions performed on a workpiece such as, but not limited to, cutting, marking, routing, grinding, milling, lathing, sawing, drilling, boring, etc. The jog operations involve a variable feed rate generated proportionally to an degree to which a jog control is engaged by an operator. Exemplary embodiments will now be described with reference to the drawings. The examples and drawings are illustrative only and not meant to limit the invention, which is measured by the scope and spirit of the claims. Like reference numerals refer to like elements throughout.
Controller 102 can include an embedded computer 110 having a processor 112, a data store 114, and an interface 116. The processor 112 is configured to execute computer-executable instructions, including at least the part program for causing the machining apparatus 104 to perform the machining operation. The processor 112 can also execute computer-executable instructions for an operating system; the control application for loading the part program, starting/stopping the part program, configuring the machining apparatus 104 or parameters of the part program, generating the part program, manually effecting operations on the machining apparatus 104, or the like; or any other program or application. The computer-executable instructions for the control application, the operating system, the part program, etc., can be retained on a non-transitory, computer-readable medium such as data store 114. According to an embodiment, data store 114 can include volatile storage (e.g., a random access memory, a data cache, a register) and/or non-volatile storage such as a hard drive, flash memory, removable media (e.g., floppy disk, USB drive, optical disc, etc.), a ROM, etc. For the purposes of this description, the various forms of computer-readable media described above are collectively shown and referred to as data store 114.
The embedded computer 110 further includes an interface 116 to couple processor 112 and data store 114, and subsequently the programs and applications executing thereon, to other components of the controller 102. Interface 116 can include various wired or wireless interfaces or connection points. For instance, interface 116 can include video ports, serial ports, parallel ports, USB ports, or other communication ports. Interface 116 can also include a wireless interface to enable communications via a wireless protocol such as WiFi or other wireless LAN protocol; Bluetooth, Wireless USB, or other similar RF protocol; a cellular radio protocol; an infrared protocol; or the like.
According to another aspect, controller 102 can include a user interface 120. The user interface 120 can comprise a display 122, which can be a touch display capable of supplying visual output and receiving user input, and an operator panel 124. Operator panel 124 can includes various physical switches, buttons, knobs, dials, and the like, which are operable by a user to control various functions of the controller 102. As indicated in
As further shown in
While
As mentioned previously, operator panel 124 enables an operator to execute manual control operations on machining apparatus 104. For example, the operator can jog the tool 150 to a desired or target position, change a height of tool 150, or the like. Turning to
As described above, jog controls, like those depicted as jog controls 210, are conventionally digital buttons. That is, the jog controls merely output a digital on/off signal depending on whether the button is depressed or not. In other words, a degree of depression is neither measured nor output. Accordingly, upon activation of a jog control button, the tool 150 lurches at a full jogging feed rate. This can result in scenarios illustrated in
In accordance with an aspect, jog controls 210 can be proportional controls that enable a variable jog speed in proportion to a degree of activation of the controls. For instance, jog controls 210 can be pressure-sensitive buttons that respectively output a signal that indicates a pressure exerted on the button. The signal output can be variable between no signal corresponding to an off or unengaged position and a maximum signal corresponding to a maximally on or fully engaged position. Based upon a position to which the button is engaged between the off position and the fully engaged position, a corresponding signal between no signal and the maximum signal is output. Turning to
The variable output signal of the jog controls 210 can be processed by motion controller 130 to modulate (i.e., attenuate or amplify) the motor output signal transmitted to motors 140. For instance, the motor output signal can vary from no output to a maximum output corresponding to the full jogging feed rate of the system depending on the output signals from the jog controls 210. In other words, according to one aspect, an output signal generated by a user operating the jog controls 210 can be directly routed to motors 140 via motion controller 130 of the controller 102. According to another example, the variable output signal of the jog controls 210 can be provided to the embedded computer 110. In this example, an internal parameter, such as a feed rate parameter of the software, can be manipulated to effectuate a variable jogging speed dependent on the magnitude to which the jog controls 210 are engaged.
Turning to
As described above, the jog control input signal 502 is proportional to a degree of activation of jog controls 210. Moreover, the jog control output signal 504 is proportional to the jog control input signal 502, thereby making the jog control output signal 504 proportional to the degree of activation of jog controls 210. That is, a level of the jog control output signal 504 corresponds to a level of the jog control input signal 502 according to a relationship. For instance, a one-to-one relationship can be utilized such that the level of the jog control output signal 504 matches the level of the jog control input signal 502. According to another example, the respective levels of the jog control input signal 502 and jog control output signal 504 can align within respective scales. That is, given the level of the jog control input signal 502 in an input scale from a zero input signal to a maximum input signal, the level of the jog control output signal 504 can be a proportional or equivalent level within an output scale from a zero output signal to a maximum output signal. For instance, when at the level of the jog control input signal 502 is 75% of the maximum input signal, then the jog control output signal 504 is 75% of the maximum output signal. In yet other example, the jog control input signal 502 is multiplied or attenuated by a predetermined factor to generate the jog control output signal 504. The foregoing are some examples of proportional relationships between the jog control input signal 502 and the jog control output signal 504 and the claims appended hereto are not limited to the relationships described above. It is to be appreciated that other relationships are contemplated and can be employed with the claimed subject matter. Moreover, it is to be appreciated that a proportional relationship between the signal emitted from the jog controls 210 and the jog control input signal 502 can be one of the relationships described above, or some other relationship, and, accordingly, can be the same relationship that exists between the jog control input signal 502, or a different proportional relationship.
The control application 500 can implement the relationship between the jog control input signal 502 and the jog control output signal 504 in a variety of ways including direct manipulation of the signals 502, 504, via processing in software, manipulation of software parameters or variables, etc. According to an aspect, the control application 500 can include a feed rate control module 520 that receives the jog control input signal 502, processes the signal 502, and generates the jog control output signal 504. The feed rate control module 520 maintains two variables—a feed rate variable 522 and an override variable 524. The feed rate variable 522 can be established according to one configuration from configurations 510. The set of configurations 510 include a job feed rate configuration 512, a preset feed rate configuration 514, a potentiometer-controlled feed rate configuration 516, and a full feed rate configuration 518. The job feed rate configuration 512 sets the feed rate variable 522 to an embedded feed rate value from a part program. The preset feed rate configuration 514 sets the feed rate variable 522 to a user-selected value. The potentiometer-controlled feed rate configuration 516 sets the feed rate variable 522 to a system maximum but activates potentiometer 220 to enable modification of the feed rate in real time. The full feed rate configuration 518 sets the feed rate variable 522 to the system maximum but disables the potentiometer 220.
With conventional, non-proportional digital jog controls, the tool 150 is jogged according to the set feed rate variable 522 whenever one of jog controls 210 is actuated. In other words, with conventional systems, the jog control output signal 504 is generated based on a value of feed rate variable 522, without consideration of a value or level of the jog control input signal 502. When the feed rate variable 522 is established according to the potentiometer-controlled feed rate configuration 516, it is to be appreciated that the jog control output signal 504 can also be influenced by the potentiometer 520 in addition to the value of the feed rate variable 522.
However, in accordance with an aspect, the jog control output signal 504 is generated with respect to a level or value of the jog control input signal 502 which, in turn, is determined based on an amount of pressure applied to or a degree of activation of jog controls 210. As shown in
According to another example, the override variable 524 can be utilized to enable the potentiometer-controlled feed rate configuration 516. In such example, the feed rate variable 522 is set to a system maximum and the override variable 524 holds a scaled value of the system maximum according to a setting of the potentiometer 220. In conventional systems, the feed rate control module 520 generates the jog control output signal 504 based on the scaled value maintained by the override variable 524. Alternatively, the override variable 524 can hold the setting of the potentiometer 220 as opposed to the scaled value. In this alternative, the feed rate control module 520 scales the value of the feed rate variable 522 according to the value of the override variable 524 to generate the jog control output signal 504. In an aspect, the feed rate control module 520 can temporarily utilize the override variable 524 to proportionally scale the feed rate variable 522 based on the jog control input signal 502. After processing the jog control input signal 502 and generating the jog control output signal 504, the feed rate control module 520 can restore the override variable 524 to a previous value (i.e., the value prior to the processing of the jog control input signal 502). For instance, the feed rate control module 520 can create a shadow copy of the override variable 524, utilize the override variable 524 to generate the jog control output signal 504, and subsequently restore the override variable with the shadow copy.
The foregoing description of control application 500 illustrates one exemplary, non-limiting embodiment of a system for providing proportional jog controls. It is to be appreciated that other mechanisms can be employed to generate jogging control signals which are coordinated or proportional to an amount of pressure applied to or a degree of activation of jog controls of a user interface. The claimed subject matter, unless explicitly stated otherwise, is intended to cover these alternatives. Moreover, while the above embodiment are described relative to jog controls, it is to be appreciated that the aspects described herein can also be applied to height control of a tool.
In view of the exemplary devices and elements described supra, a methodology that may be implemented in accordance with the disclosed subject matter will be better appreciated with reference to a flow chart and/or methodology of
Described above are proportional jog controls 210 employable by an operator to effect manual control of a position of tool 150 of machining apparatus 104, a motion controller 130 that outputs motor driving signals in proportion to input signals from the proportional jog controls, and corresponding methods. According to an example, machining apparatus 104 can be a cutting apparatus used to cut or mark a workpiece that has a thickness and is composed of a type of material such as steel, metal, aluminum, among others. Generally, a cutting operation is cutting completely through the workpiece and a marking operation is marking a surface of the workpiece. Such systems can include, laser cutting systems, waterjet cutting systems, automated cutting systems, plasma cutting systems, and combinations thereof, among others.
Laser cutting systems uses a laser to cut materials. A laser cutting system directing a high-power laser at the workpiece to be cut or marked. The workpiece can be either melt, burned, vaporized away, or is blown away by a jet of gas, leaving a high-quality surface and clean edge. For instance, laser cutting systems can be used to cut or mark flat-sheet material as well as structural and piping materials.
Waterjet cutting systems use a liquid only or liquid that carries an abrasive delivered at high-pressure to machine a workpiece. The composition of the liquid or the liquid/abrasive combination may vary depending on the workpiece material or the machining operation. For example, a liquid/abrasive combination may be used, such as a garnet and water mixture, to machine materials such as metal or granite and a liquid only, such as water, may be used to machine rubber or wood.
Plasma cutting tools used to cut or otherwise operate on a workpiece typically comprise a gas nozzle with an electrode therein. Generally, plasma tools direct gas through a nozzle toward the workpiece, with some or all the gas ionized in a plasma arc between the electrode and the workpiece. The arc is used to cut, mark or otherwise machine the workpiece.
Turning to
As shown, system 700 includes a control unit having a housing 712 with a connected torch 714. Housing 712 includes various components for controlling a plasma arc, such as a power supply, a plasma starting circuit, air regulators, input and output electrical and gas connectors, controllers, etc. (discussed in
It should be understood that the housing 712 illustrated in
As shown in
In an embodiment, the cutting system 700 can be utilized with a support 730 that facilitates automation of the cutting operation. For instance, the support 730 can be a structure on which the workpiece is placed. In a particular embodiment, support 730 can be a cutting table and gantry 734 can be used with at least torch 714. Support 730 can include components that provide motion to at least one of the torch 714 about the workpiece W or the workpiece W about the torch 714. In an embodiment, a motion controller (not shown) can be utilized to provide motion to at least one of the workpiece W or torch to perform the cutting operation to achieve the desired workpiece. For example, the motion controller can be incorporated into cutting system 700, into support 730, a stand-alone component, or a combination thereof. In an embodiment, a portion of torch 714 can be inserted into holder 732 to perform an automated or semi-automated cutting operation. For instance, controls used by the cutting system 700 and support 730 can be machine readable instructions to achieve the desired workpiece from the cutting operation. The support 730 is illustrated for example and any suitable support 730 can be chosen with sound engineering judgment without departing from the intended scope of embodiments of the subject innovation.
A power supply 752 is connected to an inverter power control circuit 754 the output of which helps provide fast response for the control of plasma current in use. As shown, circuit 754 may include an input rectifier 755, an inverter 757, and an output rectifier 759. The output 761 of circuit 754 provides a DC signal to torch 714 that can be delivered at a first level (such as 10 A) for marking and a second level (such as 100 A) for cutting. Controller 750 directs circuit 754 to provide the desired output based on input given by a user via input devices 720. For starting torch 714, controller 750 can direct a pilot arc 763 be generated via a pilot arc control 765 and a pilot arc starter 767.
A gas source 756 is provided to housing 712 with gas pressure and flow control means such as valving 758 controlled by controller 750 to provide a gas flow 769 desired for either marking or cutting. If desired, such valving could incorporate pulse width modulation.
Cutting systems 900 and 1000 perform automated cutting operations with machine readable instructions that include one or more geometric coordinates (e.g., x axis, y axis, and z axis) and a cutting velocity to use while creating a non-scrap edge on the desired workpiece.
In an embodiment, the lead component dynamically adjusts the lead in profile based on a cutting parameter detected in real time during a time before the cutting operation, wherein the cutting parameter is at least one of the cutting velocity or the thickness of the workpiece. In an embodiment, the lead component dynamically adjusts the lead out profile based on a cutting parameter detected in real time during a time after the cutting operation, wherein the cutting parameter is at least one of the cutting velocity or the thickness of the workpiece.
While the embodiments discussed herein have been related to the systems and methods discussed above, these embodiments are intended to be exemplary and are not intended to limit the applicability of these embodiments to only those discussions set forth herein. The control systems and methodologies discussed herein are equally applicable to, and can be utilized in, systems and methods related to arc welding, laser welding, brazing, soldering, plasma cutting, waterjet cutting, laser cutting, and any other systems or methods using similar control methodology, without departing from the spirit of scope of the above discussed inventions. The embodiments and discussions herein can be readily incorporated into any of these systems and methodologies by those skilled in the art.
The above examples are merely illustrative of several possible embodiments of various aspects of the present invention, wherein equivalent alterations and/or modifications will occur to others skilled in the art upon reading and understanding this specification and the annexed drawings. In particular regard to the various functions performed by the above described components (assemblies, devices, systems, circuits, and the like), the terms (including a reference to a “means”) used to describe such components are intended to correspond, unless otherwise indicated, to any component, such as hardware, software, or combinations thereof, which performs the specified function of the described component (e.g., that is functionally equivalent), even though not structurally equivalent to the disclosed structure which performs the function in the illustrated implementations of the invention. In addition although a particular feature of the invention may have been disclosed with respect to only one of several implementations, such feature may be combined with one or more other features of the other implementations as may be desired and advantageous for any given or particular application. Also, to the extent that the terms “including”, “includes”, “having”, “has”, “with”, or variants thereof are used in the detailed description and/or in the claims, such terms are intended to be inclusive in a manner similar to the term “comprising.”
This written description uses examples to disclose the invention, including the best mode, and also to enable one of ordinary skill in the art to practice the invention, including making and using any devices or systems and performing any incorporated methods. The patentable scope of the invention is defined by the claims, and may include other examples that occur to those skilled in the art. Such other examples are intended to be within the scope of the claims if they have structural elements that are not different from the literal language of the claims, or if they include equivalent structural elements with insubstantial differences from the literal language of the claims.
The best mode for carrying out the invention has been described for purposes of illustrating the best mode known to the applicant at the time. The examples are illustrative only and not meant to limit the invention, as measured by the scope and merit of the claims. The invention has been described with reference to preferred and alternate embodiments. Obviously, modifications and alterations will occur to others upon the reading and understanding of the specification. It is intended to include all such modifications and alterations insofar as they come within the scope of the appended claims or the equivalents thereof.
This U.S. patent application claims the benefit of U.S. Provisional Patent Application No. 61/942,307, filed on Feb. 20, 2014. The entirety of the above-mentioned application is herein incorporated by reference.
Number | Date | Country | |
---|---|---|---|
61942307 | Feb 2014 | US |