Overview:
Have you ever wanted to generate your own alarm on a Yaskawa robot controller, studied the Concurrent IO manual, and become intimidated by what appears to be semi-complex system of having set various bit sequences and worry about the timing of the various signals? Maybe you’re lacking confidence in your Concurrent IO abilities. The following is intended to demystify alarm generation on various generations of robot controllers.
Since the DX100 controller, Yaskawa has implemented a seldom advertised feature to easily generate user alarms. By simply setting a single IO bit, the existing logic in your robot controller will generate a corresponding alarm and in doing so, manage the complex binary sequences and timing of various signals.
Traditional way of setting “User Alarms”:
Normally, a user would be required to set a binary bit-sequence to bits 40140-40145 to identify which of the 64 possible user alarms are desired. Once the bit-sequence was set, relay 40012 would have to be set in order to trigger the reading of the 40140-40145 bits to determine which alarm to display.
While this approach would work for the most basic cases, if two or more alarms would occur at once, it becomes far more difficult to mange the logic associated with the 40140-40145 bits to always ensure the proper alarm was displayed no matter what combination of alarms might arise at the same time and determining a prioritization of the various alarm.
Yaskawa’s “User Alarm” feature implementation:
The lighten the burden of the challenges outlined above, Yaskawa has implemented a scheme where set a single bit will not only ensure the proper display of the desired alarm (handling the complex setting of bits 40140-40145). This Yaskawa logic also allows you to determine what alarms are more important than others and always display the highest priority alarm in the event multiple alarm triggers occurring at once.
How it works:
- User specifies a bit from 79700-79776 (octal numbering remember in CIO!) via concurrent IO logic which will display the alarm while the bit is active. This 79700-79776 IO-range accounts for 64 “User Alarms” which are zero-based so essentially Alarms 0-63.
- 79700 is defined as the HIGHEST priority alarm so this alarm will always display no matter what other bits are enabled.
- 79776 is defined as the LOWEST priority alarm and all other alarms will be displayed before it.
- See example below for a basic implementation!
- User sets the text for a desired alarm in the “User Alarm” table found under “IN/OUT” à “I/O Alarm”
- See example below for a basic implementation!
- The value of the currently active highest priority user alarm is placed in a M-Register for user or PLC access (value of zero = no alarm, value of 1-64 = active user alarm#).
Example of Triggering User Alarm#43: Trigger low pressure alarm when external input 20027 is active in Play:
STR #20027 (External input where low pressure sensor is connected)
AND #50054 (PLAY mode selected)
OUT #79753 (Aux Output# Triggering Alarm #43)
Alarm 9107 Text: “Air Pressure Sensor Reading Low”
Resulting M240 = 44
Implementing Ladder :
Setting Alarm Text:
Resulting Alarm:
Detailed Break-down of the various 797** bits setting and triggering various alarm logic:
| Priority | Alarm # | Trigger bit | USER ALARM CODE | |||||
| 40145 | 40144 | 40143 | 40142 | 40141 | 40140 | |||
| 79785 | 79784 | 79783 | 79782 | 79781 | 79780 | |||
| Highest | 0 | 79700 | 0 | 0 | 0 | 0 | 0 | 0 |
| 1 | 79701 | 0 | 0 | 0 | 0 | 0 | 1 | |
| 2 | 79702 | 0 | 0 | 0 | 0 | 1 | 0 | |
| 3 | 79703 | 0 | 0 | 0 | 0 | 1 | 1 | |
| 4 | 79704 | 0 | 0 | 0 | 1 | 0 | 0 | |
| 5 | 79705 | 0 | 0 | 0 | 1 | 0 | 1 | |
| … | … | … | … | … | … | … | … | |
| 62 | 79776 | 1 | 1 | 1 | 1 | 1 | 0 | |
| Lowest | 63 | 79777 | 1 | 1 | 1 | 1 | 1 | 1 |
Full List of Alarm#, Alarm Text Value, and Triggering Signal:
| Zero-based (0-63) | One-based (1-64) | Alarm#: | AUX Relay# / Triggering Bit: | Alarm#: |
| 0 | 1 | 9064 | 79700 | User Alarm#1 |
| 1 | 2 | 9065 | 79701 | User Alarm#2 |
| 2 | 3 | 9066 | 79702 | User Alarm#3 |
| 3 | 4 | 9067 | 79703 | User Alarm#4 |
| 4 | 5 | 9068 | 79704 | User Alarm#5 |
| 5 | 6 | 9069 | 79705 | User Alarm#6 |
| 6 | 7 | 9070 | 79706 | User Alarm#7 |
| 7 | 8 | 9071 | 79707 | User Alarm#8 |
| 8 | 9 | 9072 | 79710 | User Alarm#9 |
| 9 | 10 | 9073 | 79711 | User Alarm#10 |
| 10 | 11 | 9074 | 79712 | User Alarm#11 |
| 11 | 12 | 9075 | 79713 | User Alarm#12 |
| 12 | 13 | 9076 | 79714 | User Alarm#13 |
| 13 | 14 | 9077 | 79715 | User Alarm#14 |
| 14 | 15 | 9078 | 79716 | User Alarm#15 |
| 15 | 16 | 9079 | 79717 | User Alarm#16 |
| 16 | 17 | 9080 | 79720 | User Alarm#17 |
| 17 | 18 | 9081 | 79721 | User Alarm#18 |
| 18 | 19 | 9082 | 79722 | User Alarm#19 |
| 19 | 20 | 9083 | 79723 | User Alarm#20 |
| 20 | 21 | 9084 | 79724 | User Alarm#21 |
| 21 | 22 | 9085 | 79725 | User Alarm#22 |
| 22 | 23 | 9086 | 79726 | User Alarm#23 |
| 23 | 24 | 9087 | 79727 | User Alarm#24 |
| 24 | 25 | 9088 | 79730 | User Alarm#25 |
| 25 | 26 | 9089 | 79731 | User Alarm#26 |
| 26 | 27 | 9090 | 79732 | User Alarm#27 |
| 27 | 28 | 9091 | 79733 | User Alarm#28 |
| 28 | 29 | 9092 | 79734 | User Alarm#29 |
| 29 | 30 | 9093 | 79735 | User Alarm#30 |
| 30 | 31 | 9094 | 79736 | User Alarm#31 |
| 31 | 32 | 9095 | 79737 | User Alarm#32 |
| 32 | 33 | 9096 | 79740 | User Alarm#33 |
| 33 | 34 | 9097 | 79741 | User Alarm#34 |
| 34 | 35 | 9098 | 79742 | User Alarm#35 |
| 35 | 36 | 9099 | 79743 | User Alarm#36 |
| 36 | 37 | 9100 | 79744 | User Alarm#37 |
| 37 | 38 | 9101 | 79745 | User Alarm#38 |
| 38 | 39 | 9102 | 79746 | User Alarm#39 |
| 39 | 40 | 9103 | 79747 | User Alarm#40 |
| 40 | 41 | 9104 | 79750 | User Alarm#41 |
| 41 | 42 | 9105 | 79751 | User Alarm#42 |
| 42 | 43 | 9106 | 79752 | User Alarm#43 |
| 43 | 44 | 9107 | 79753 | User Alarm#44 |
| 44 | 45 | 9108 | 79754 | User Alarm#45 |
| 45 | 46 | 9109 | 79755 | User Alarm#46 |
| 46 | 47 | 9110 | 79756 | User Alarm#47 |
| 47 | 48 | 9111 | 79757 | User Alarm#48 |
| 48 | 49 | 9112 | 79760 | User Alarm#49 |
| 49 | 50 | 9113 | 79761 | User Alarm#50 |
| 50 | 51 | 9114 | 79762 | User Alarm#51 |
| 51 | 52 | 9115 | 79763 | User Alarm#52 |
| 52 | 53 | 9116 | 79764 | User Alarm#53 |
| 53 | 54 | 9117 | 79765 | User Alarm#54 |
| 54 | 55 | 9118 | 79766 | User Alarm#55 |
| 55 | 56 | 9119 | 79767 | User Alarm#56 |
| 56 | 57 | 9120 | 79770 | User Alarm#57 |
| 57 | 58 | 9121 | 79771 | User Alarm#58 |
| 58 | 59 | 9122 | 79772 | User Alarm#59 |
| 59 | 60 | 9123 | 79773 | User Alarm#60 |
| 60 | 61 | 9124 | 79774 | User Alarm#61 |
| 61 | 62 | 9125 | 79775 | User Alarm#62 |
| 62 | 63 | 9126 | 79776 | User Alarm#63 |
| 63 | 64 | 9127 | 79777 | User Alarm#64 |
Comments
0 comments
Please sign in to leave a comment.