Axis editor for industrial controller programming
AssigneeRockwell Technologies, LLC
InventorsMarvin J. Schwenke, James Andrew Sinclair
Life of this patent
Estimating the term…
Abstract
An editor apparatus for programming industrial controllers in relay ladder language, the apparatus used to provide RLL logic to control a machine axis. The apparatus includes a display for creating an axis behavior profile that represents input devices, output devices, actuators, and required movements. The apparatus gleans information from the profile and, based on the information, creates modules that include logic required to provide a program section for controlling the axis. A compiler then compiles the modules to provide an RLL program section to control the axis.
Claims16
A programming apparatus for an industrial controller which has a processor module that stores and executes a relay ladder language program to control a machine, the machine including two or more mechanical components wherein one component has freedom to move with respect to another along an axis in a reciprocal manner between various positions, the apparatus used to provide a relay ladder language program for controlling component movement along the axis, the apparatus comprising:
- a generator for generating a behavior profile that depicts desired operation of a moveable component in a plurality of operational positions along the axis as a two dimensional graph with distance of component movement represented along one dimension and component speed represented along another dimension;
- a designator for designating movement actuators along the axis and designating a status of each movement actuator in each of the plurality of operational positions;
- a specifier for designating input devices from which the controller receives input signals related to the position of the moveable component along the axis and an operational event along the axis which causes each input device to produce an input signal;
- an indicator for designating an output device through which the controller sends signals related to the position of the moveable component along the axis and an operational position of the machine at which the controller is to send an output signal to the output device to achieve a movement request;
- an identifier communicating with the aforementioned generator, designator, specifier and indicator to identify axis, actuator, input device and output device information;
- and
- a compiler receiving information from the identifier and compiling said information into a substantially complete real time relay ladder language program that is readable by the controller for controlling machine functions according to the behavior profile, wherein the apparatus is usable with a template set that permits relay ladder language logic to be reused in the compilation of relay ladder language programs.
A programming tool for programming an industrial controller in relay ladder language to control a machine including two or more mechanical components wherein one component has freedom to move with respect to another along at least one axis in a reciprocal manner between various positions, component movement control dividable into different control task types corresponding to different physical and operational characteristics, each control task of a specific type including at least some common characteristics and often including some task distinct characteristics, the machine including actuators for causing component movement, input devices that send input signals to the controller base on events along the at least one axis, and output devices that receive output signals from the controller based on operational events, control task types including a task type for generally controlling machine operation and other task types for designating positions along the at least one axis, designating movement requests along the at least one axis and controlling actuators, the tool used to provide a relay ladder language program for controlling movement along the at least one axis, the tool comprising:
- a template set including template types, each template type designed to control a different one of said control tasks, some templates including a logic section that provides machine language logic for common characteristics of an associated control task type, some templates including a child module designation section for designating instances of other templates required to provide logic needed to control task distinct characteristics, wherein each template instance is a module and each module that specifies another module is a parent module, the template set including an axis template type and axis child templates including a switch package type for designating movement request along the at least one axis based on said operational positions and an actuator type for controlling an actuator as a function of the movement requests, wherein the template set permits relay ladder language logic to be reused in the compilation of relay ladder language programs;
- whereby a network of modules can be assembled to form a template based tree and a plurality of modules based on the same template can be included in a single tree;
- and
- wherein the tree can be formed to completely characterize movement along the at least one axis such that when the contents of each module is substituted for a designation in a parent module, a substantially complete real time relay ladder language program for controlling movement along the at least one axis is provided.
A method to be used with an industrial controller which has a processor module that stores and executes a relay ladder language program to control a machine, the machine including two or more mechanical components wherein one component has freedom to move with respect to the other along at least one axis, the at least one axis represented by a behavior profile that depicts desired operation of the moveable component in a plurality of operational positions, the profile also designating movement actuators related to the at least one axis and designating a status of each movement actuator for the plurality of operational positions, input devices from which the industrial controller receives input signals, an operational event along the axis which causes each input device to produce an input signal, an output device and an operational position of the moveable component along the at least one axis at which the industrial controller is to send an output signal to the output device to achieve a movement request and, wherein control is dividable into different control task types corresponding to different physical and operational characteristics, each control task of a specific type including at least some common characteristics and often task distinct characteristics, the method for providing a relay ladder language program for controlling movement along the at least one axis, the method comprising the steps of:
- gleaning information from the behavior profile to identify operational positions, movement requests, and actuators;
- generating a substantially complete real time relay ladder language program for controlling axis functions according to the behavior profile;
- and
- utilizing a template set including template types, each template type designed to control a different one of said control tasks, some templates including a logic section that provides machine language logic for common characteristics of an associated control task type, some templates including a child module designation section for designating instances of other templates required to further designate additional logic needed to control task distinct chacteristics, wherein each template instance is a module and each module that references another module is a parent module, wherein the template set permits relay ladder language logic to be reused in the compilation of relay ladder language programs.
A programming apparatus for an industrial controller which has a processor module that stores and executes a relay ladder language program to control a machine, the machine including two or more mechanical components wherein one component has freedom to move with respect to the other in a reciprocal manner between various positions along at least one axis, the apparatus used to provide a relay ladder language program for controlling an axis, the apparatus comprising:
- a monitor for displaying information;
- an editor including:
- a first means for a user of the programmable controller to create on the monitor a two dimensional graph of a behavior profile depicting desired operation of the moveable component along the at least one axis in a plurality of operational positions;
- a second means for the user to create on the monitor a designation of activator on the machine and to identify whether each activator is to be activated when the moveable component is located at each of the plurality of positions;
- a third means for the user to create on the monitor a symbolic representation of input devices on the machine and of a status of each input device when the member is located at each of the plurality of positions;
- a fourth means for the user to create on the monitor a symbolic representation of an output of the programmable controller and to indicate one of the plurality of positions of the member at which the programmable controller is to send a signal to the output;
- designating means communicating with the aforementioned means to identify axis, actuator, input device and output device information;
- and
- a compiler receiving information from the designating means and compiling said information into a substantially complete real time relay ladder language program that is readable by the controller for controlling machine functions according to the behavior profile, wherein the apparatus is usable with a template set that permits relay ladder language logic to be reused in the compilation of relay ladder language programs.
Dependencies are inferred from the claim text.