Home AW-SYS Support Demo

 

Previous

Example 29
A "strip" of sequential lights

Configure the 8 channel sequencer shown in the following function diagram.


Functional diagram for a strip of sequential lights

The optical effect if the lights are placed vertically like the LEDs of the PLC module would be a progressive filling of the line by light sources that appear at the top and cascade down until stopping at the last empty (unlit) position. Once the whole strip has been filled, the cycle begins all over again, the lights go out and the filling action recommences.
The sequence is rather more complex than the previous example and so we will have to find a solution that is different, more functional and probably also more versatile. The proposed solution uses a data block to memorise the lighting combinations of the sequence. The low byte of each data word contains the code for lighting the lights. The last word contains the data (FFFF)16 that acts as an end-point for the sequence with the modes shown below.
The main part of the program consists of the block FB10 which is called every 2 tenths of a second. It reads the data and then sends them to the output module. Lets see just how.
MW100 is the pointer for the current data word. Its initial value is 0. When DB 20 is opened, the series of statements in the READ label first load the value (FFFF)16 in the accumulator and then the value of the current data word using a directed statement. These two values are then compared: if they are different the program continues by transferring the content of ACCU1, the sequence data, to output module 2. It is then increased by the value of the pointer and the program returns to the calling block. This means that next time it is called by FB4, the next data word will be loaded.
On the other hand, if the value read is equal to (FFFF)16, the program continues from the INT label where the index is reset to zero to return to the beginning of the sequence and the READ label which will then seek the first combination of the sequence, DW0.

More examples: 1 ] 2 ] 3 ] 4 ] 5 ] 6 ] 7 ] 8 ] 9 ] 10 ] 11 ] 12 ] 13 ] 14 ] 15 ] 16 ] 17 ] 18 ] 19 ] 20 ] 21 ] 22 ] 23 ] 24 ] 25 ] 26 ] 27 ] 28 ] [ 29 ] [ List ]
More PLCs examples: Not still available