Fundamentals of PLC (24)

Regarding PLC alarms, I found the following in the documentation:Fundamentals of PLC (24)It seems quite interesting that all alarm information has been unified. I tried it, but no, this method uses the Basic Program plus interface, and the documentation states:

  • In the “PLC Basic Program plus”, the old version of SINUMERIK DB2 alarms has been upgraded to the new alarm system “SINUMERIK User Alarms”. The new alarm system not only supports modular program structures but also replaces rigid programming operations with a global DB.

  • Users can maintain SINUMERIK user alarm texts in the text list “SINUMERIK_UserAlarmsTextLib” in TIA Portal. For SINUMERIK user alarms, the type of message can be generated by selecting #alarmCategory. Additionally, SINUMERIK user alarms also support self-programmed responses and specify which signals affect which alarms that require responses.

Alright, I will set this new method aside for now and test it after learning about “PLC Basic Program plus”.

Let’s first take a look at the old alarm system; the new diagram in the documentation is quite good:

Fundamentals of PLC (24)

I will also list the signals in the DB to better understand the differences with the 840Dsl.

Fundamentals of PLC (24)Fundamentals of PLC (24)Fundamentals of PLC (24)Fundamentals of PLC (24)Fundamentals of PLC (24)

The last part is not fully listed, but note the highlighted yellow section; in DB5, for some reason, it is not continuous here.

Each bit in DB5 is used to set the properties of the DB2 information: setting the information type in “LBP_AlarmMsgs [DB2]”

  • Signal bit in DB5 = TRUE: FM, indicates that the corresponding information in DB2 (one byte, 8 messages) is error/fault information

  • Signal bit in DB5 = FALSE: BM, indicates that the corresponding information in DB2 (one byte, 8 messages) is operational information/prompt information

Under normal circumstances:

A “mcpIn”.KeyPadModeGroup.key16

= “LBP_AlarmMsgs”.UserA[0].A70UUxx[0]

A “mcpIn”.KeyPadModeGroup.key17

= “LBP_AlarmMsgs”.UserA[0].A70UUxx[40]

But if I add two lines (changing the nature of the above two alarms through DB5):

CLR

= “LBP_ParamAlarmMsgs”.User0_DB2_554

SET

= “LBP_ParamAlarmMsgs”.User0_DB2_559

A “mcpIn”.KeyPadModeGroup.key16

= “LBP_AlarmMsgs”.UserA[0].A70UUxx[0]

A “mcpIn”.KeyPadModeGroup.key17

= “LBP_AlarmMsgs”.UserA[0].A70UUxx[40]

The result is:

Fundamentals of PLC (24)Fundamentals of PLC (24)That is, 700040 has become a fault message; while 700000 has become a prompt message.

The symbolic programming in TIA Portal is indeed convenient, as it eliminates the need to remember which bit corresponds to which position in DB2, and which bit in DB5 controls the properties of which byte in DB2. The following small piece of code is a simple example.

Fundamentals of PLC (24)

Today I wrote about alarms again; I have written about them before, so why write again? The purpose is quite simple: through repetition, from different angles, like weaving a net, to solidify certain concepts and systematize them. In fact, many people now advocate learning in fragmented time; I think this is applicable for some things, like memorizing vocabulary, but for many areas of knowledge, this approach is not suitable, otherwise, knowledge becomes fragmented and unsystematic.

Happy Labor Day! Did you work today?Fundamentals of PLC (24)

Leave a Comment