On the ‘Local Tags’ tab, I included a timer, which I will use to time the moves of the cylinder: I decided that all my parameters are going to be required, which automatically also makes them visible: Also, you can identify here if the parameter is required, and if it is visible. I added command bits, status bits, a fault bit, a maximum travel time, a clear fault bit, and the I/O my cylinder is going to have.įor each parameter, you’ll have to choose if it is an input for the instruction or an output, or maybe even an in and output. The EnableIn and EnableOut are two parameters that every instruction has, and are automatically created for you. Don’t panic if you don’t know exactly which parameters you’re going to need for your add-on, you can still change everything later. As you can see in the screenshot below, I’ve defined my parameters. If you go to the ‘Parameters’ tab, you can define the parameters your instruction will use to do its magic. Click OK, and you will get the ‘Instruction Definition’ window: In the screen that pops up, you can dream up a name for your instruction, add a description, choose a revision number, and add some notes:Īs you can see, I kept the checkbox for ‘Open Definition’ checked, which means that in the next step I’ll be working on the definition of my cylinder. Right click on the Add-On Instructions folder in the controller organizer, and click ‘New Add-On Instruction’.
Let’s start with creating a new add-on instruction: After all, whatever the cylinders size or function is in the machine, every cylinder basically has the same properties and commands.
To illustrate how this works, I am going to create an instruction that operates a cylinder, and because I’m making an add-on instruction, I can use that same instruction to control any number of cylinders in my applicationĪssuming that these cylinders have two solenoids (one for ‘in’, one for ‘out’), and two proximity switches (one for…ah well, you get the picture), I want to create an add-on instruction that has the common logic in it, so I can just execute that instruction for each cylinder.
This allows a programmer to define an instruction that contains a commonly used function or algorithm (as a set of instructions), and use it as one instruction. One of the most powerful newer features of the RSLogix 5000 program is the ability to create Add-On Instructions.