A normally closed contact works just the opposite of a normally opened contact. In this example: 
Y2 will go on when X1 is sensed to be off.
Boolean Contact
A boolean contact compares the value of the input to a chosen value. The contact energizes when the
boolean expression is satiafied. In this example:
Y3 will energize when the value of V2000 (all V values are addresses for variables that can be stored in the CPU) is equal to K4903 (all K values are constants).
Other Logic Components
Timer
A timer waits a specified amount of time before it executes a command.
In this example when X1 goes true it starts the timer at the right. It counts in increments of one tenth of a second so the timer above will wait three seconds (notice the K30) to energize the Y0 output.
Counter
The "counter" simply counts the number of times that a variable or input is switched from off to on.
In this case, every time that "X1" is turned on, the counter, is increased by one. When the number of
counts or switches from off to on that "X1" experiences reaches 3, then "CT2" is initialized. When, in this
case, the variable "C10" is initialized, the counter is reset to zero. After 3 counts, and "CT2" is initialized, the output, "Y10" is energized.
Counter Relay
The counter relays are used to store true/false conditions for use later by other rungs. Notice the C10 in
the example above. It has been assigned a value by another rung in the program and is used to reset the counter above.
Set and Reset Functions
When using a counter, counter relay or a timer a set or reset function can be used to set the before mentioned to a particular value or in the case of the reset to the default value.
The "SET" command allows this input to energize an output, and keep it energized even if the input is
turned off. The "SET" command also allows you to energize multiple outputs from a single input as shown in the example above, but multiple outputs are not necessary with this function. Once an output
is energized with the "SET" command, it will remain on until it is reset.
The "RST" function will reset, or turn off the outputs or variables as shown in the example. In the
example, when the input "X1" is turned on, the outputs: Y5-Y22 will reset to the off position.
End
The end command is used to end all programs.