However, this super-fast I/O sets up an issue that you need to be very aware of as a programmer. Second, it allows your program to get an updated value and react to it as fast as possible, frequently achieving sub-millisecond response times for very fast processes such as high speed (10,000 piece per second or higher) equipment or motion control. First, quite often 90% of your I/O isn't changing state at all and it wastes time and resources to constantly update a value that doesn't actually change. There are a couple reasons for doing this. I/O is updated independent of logic solving. Finally, it writes the data in the output image table into the output devices.Race conditions dealing with I/O in a single scan can't happen because from a program point of view, all I/O is updated "simultaneously". Then it solves the logic (aka "runs the program"). First, the PLC reads all the inputs into the input image table. On older PLC's, there are 3 phases in each scan. The biggest reason that programmers do this has to do with having race conditions in their logic. Then when you go to transfer the data into the I/O card, you treat it as a full word and write it to the card, or vice versa, you read an entire word at once. How you do it is that you have say a 16-bit word, or you create a 16 bit array with individual bits.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |