[9bc435]: / examples / Ladder.ladder  Maximize  Restore  History

Download this file

178 lines (177 with data), 10.0 kB

  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
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178

//This is a rung comment
(*Also a 
  rung comment*)
(**Mabe a nicer
  * Way to do multiline comments
  *)
(** supported features:
  * 001 ‘Network’
  * 002 ‘Box’
  * 002 ‘Assignment’
  * (003 FB, 003 FN) ‘Box with EN/ENO’
  * 002 ‘Input’
  * 005 ‘Label’
  * 005 ‘Contact’
  * 005 ‘Coil’
  * 005 Negated Contant
  * 006 Branches (note, branches always close!)
  * 007 Set coil
  * 007 Reset coil
  * 008 short circuit evaluation (SCE) (Toggle Parallel Mode) (I dislike this enough I make you use extended ascii)
  * 008 Negation (I dislike this enough I make you use extended ascii)
  * 009 Jump
  * 010 Return
  * 011 Network Comment State
  * 012 FBD/LD/IL Element ‘Execute’
  * 013 Names are too long  (abreviation section)
  * I think that's everything actually.  
  *)
(** Declaration Section:
  * Exact copy of the declaration section, with some indentation
  * Note any indentation that is the same for each line will be removed
  *)
{Declaration}
  PROGRAM POU
  VAR
  END_VAR
{/Declaration}
(** Abbreviation Section:
  * Sure it can get confusing.  Maybe later can alter it so not fixed width ladder
  * For importing, it is OK to change the abbrevioations however you please
  * Rules: Generally if too long:
  * take first three letters and last three and add a ~0 through ~9
  * If more than 10 have same first three and same last three, the 11th becomes ~~10 
  * If there is one or more points in the variable name, shorten the first three and but the point before the ~
  *)
{Abbreviaitons}
  Nam~0GHT := NameEIGHT;
  Nam~1GHT := NameONE_HUNDRED_AND_EIGHT;
  Nam~2GHT := NameI_CANT_WEIGHT;
  F_C~0ate := F_Calculate;
  FB.~0ate := FB_Timer.Calculate;
{/Abbreviations}
(** Execution Section:
  * If the execution block is too big to fit,
  *   either width ways or column ways, write it's Execution here.
  * Note any indentation that is the same for each line will be removed
  *)
{Executions}
  {~1}
    thisvariable := actuallyToolong;
    REsult := Function();     
    //I added a comment       
    //If line too long it gets truncated
    // >6 line, ~ bottom right
    IF TRUE THEN
        DoSomethingCool;
    END_IF;
  {/~1}
{/Executions}
{Ladder}
001     ||.         .         .         .         .         .         ||
        ||                                                            ||
        ||------------------------------------------------------------||
        ||                                                            ||
002     ||.         .         .          ________           .         ||
        || NameEIGH                     | F_Name |           NameEIGH ||
        ||----] [------------------------Input_01|--------------( )---||
        ||                     Variable==In_out01|                    ||
        ||                              =InOut2  |                    ||
        ||                     Variable--Input2  |                    ||
        ||                              =InOut3  |                    ||
        ||                              |   Out01--Variable           ||
        ||                              |   Out02--Variable           ||
        ||                              |________|                    ||
        ||                                                            ||
003     ||.         .         .          ________           .         ||
        || NameEIGH  NameEIGH  Instance--FB_Name8|           NameEIGH ||
        ||----] [-------] [--------------EN   ENO---------------( )---||
        ||                              -Input01 |                    ||
        ||                              |   Out01-                    ||
        ||                              =In_out01|                    ||
        ||                              =Inout2  |                    ||
        ||                              |________|                    ||
        ||                                                            ||
004     ||.         .         .          ________           .         ||
        || NameEIGH                     | F_Name |           NameEIGH ||
        ||----] [------------------------EN   ENO---------------( )---||
        ||                     Variable--Input01 |                    ||
        ||                              |   Out01--Variable           ||
        ||                     Variable==In_out01|                    ||
        ||                     Variable==Inout2  |                    ||
        ||                              |________|                    ||
        ||                                                            ||
005     ||.         .         .         .         .         .         ||
myLabel || NameEIGH  NameEIGH                                NameEIGH ||
        ||----] [-------]/[-------------------------------------( )---||
        ||                                                            ||
006     ||.         .         .         .         .         .         ||
        || NameEIGH  NameEIGH                                NameEIGH ||
        ||+---] [--++---] [------------+------------------------( )---||
        |||        ||                  |                              ||
        |||        ||         .        |                              ||
        |||NameEIGH||NameEIGH  NameEIGH|                              ||
        ||+---] [--++---] [-------]/[--+                              ||
        ||                                                            ||
007     ||.         .         .         .         .         .         ||
        ||                               NameEIGH  NameEIGH  NameEIGH ||
        ||----------------------------------(R)-------(S)---+---(S)--+||
        ||                                                  |        |||
        ||                                                  |        |||
        ||                                                  |NameEIGH|||
        ||                                                  +---(R)--+||
        ||                                                            ||
008     ||.         .         .         .         .         .         ||
        || NameEIGH  ASCII181                                NameEIGH ||
        ||----] [---╬---] [--------------------------------╬----( )---||
        ||          ║                                      ║          ||
        ||          ║         .          ________          ║          ||
        ||          ║ASCII206  Instance--FB_Name8|         ║          ||
        ||          ╬---] [--------------EN   ENO----------╬          ||
        ||                     NegInVarø-Input01 |                    ||
        ||                              |   Out01-øASCII155           ||
        ||                              =In_out01|                    ||
        ||                              =Inout2  |                    ||
        ||                              |________|                    ||
        ||                                                            ||
009     ||.         .         .         .         .         .         ||
        ||                                                   myLabel  ||
        ||----------------------------------------------------<JUMP>--||
        ||                                                            ||
010     ||.         .         .         .         .         .         ||
        ||                                                            ||
        ||---------------------------------------------------<RETURN>-||
        ||                                                            ||
011     ||##.         .         .         .         .         .         ||
        ||## NameEIGH                                                   ||
        ||##----] [--------------------------------------------<RETURN>-||
        ||##                                                            ||
012     ||.         .         . __________________________  .         ||
        || NameEIGH            |         Execute    ~1    |           ||
        ||----] [---------------EN                     ENO------------||
        ||                     |thisvariable := actuallyT~|           ||
        ||                     |REsult := Function();     |           ||
        ||                     |//I added a comment       |           ||
        ||                     |//If line too long it get~|           ||
        ||                     |// >6 line, ~ bottom right|           ||
        ||                     |IF TRUE THEN              |           ||
        ||                     |_________________________~|           ||
        ||                                                            ||
013     ||.         .         .          ________           .         ||
        || FB.~0ate  Nam~1GHT           |F_C~0ate|           Nam~2GHT ||
        ||----] [---+---] [--------------EN   ENO----------+----( )---||
        ||          |          NegInVarø-Input01 |         |          ||
        ||          |                   |   Out01-øASCII155|          ||
        ||          |                   =In_out01|         |          ||
        ||          |                   =Inout2  |         |          ||
        ||          |                   |________|         |          ||
        ||          |         .          ________          |          ||
        ||          |Nam~0GHT  Instance--FB_Timer|         |          ||
        ||          +---] [--------------EN   ENO----------+          ||
        ||                     NegInVarø-Input01 |                    ||
        ||                              |   Out01-øASCII155           ||
        ||                              =In_out01|                    ||
        ||                              =Inout2  |                    ||
        ||                              |________|                    ||
        ||                                                            ||
{/Ladder}