IQANdesign
IQANdesign
IQANdesign
Version 2.50
User manual
License
Software User Agreement
Important-please read carefully before use of the Software. Your use of this computer program is subject to the terms and conditions of the following Software User Agreement. If you do not wish to accept these terms and conditions, do not install or use this Software and please return this Software to the place you obtained it for refund.
Licensor and its Distributors shall not have any liability or incur any expense or be affected in any way by any such modification or merger, even if such modification or merger results in the formation of an updated or new work. Rather, such Software, in its modified or merged form, shall continue at all times to be the sole and exclusive property of Licensor and shall be subject to all provisions of this Agreement.
Limited warranty
Limited warranty Licensor warrants that (a) the original Software will perform substantially in accordance with the accompanying written materials for a period of ninety (90) days from the date of receipt; and (b) any hardware accompanying the Software will be free from defects in materials and workmanship under normal use and service for a period of one (1) year from receipt date. Any implied warranties on the Software and the hardware are limited only to ninety (90) days and one (1) year respectively. The limited warranty applies to the original Software and not to any copies made by you or others from the original Software or copies thereof. Customer remedies Licensors entire liability and your exclusive remedy shall be, at Licensors option either (a) return of the price paid or (b) repair or replacement of the Software or hardware that does not meet Licensors limited warranty and that is returned to the Licensor with a copy of your receipt. The limited warranty is void if failure of the Software or hardware has resulted from accident, abuse, or misapplication of the original hardware and Software only and in no case shall the limited warranty apply to any copies of the original Software. Any replacement Software shall be warranted for the remainder of the original warranty period or for thirty (30) days, whichever is longer. No other warranties Licensor disclaims all other warranties, either express or implied, including but not limited to implied warranties of merchantability and fitness for a particular purpose, with respect to the Software, any accompanying written material, any accompanying hardware, and any services for any of the foregoing. No other liability In no event will Licensor or its agents or suppliers or Distributors be liable for any direct or indirect damages whatsoever (including without limitation, damages for negligence, strict liability, breach of contract, loss of business profits, business interruption, loss of business information, or pecuniary loss) arising out of the use of, or inability to use or failure to deliver the Software or any defects therein, even if the Licensor has been advised of the possibility of such damages. In no event shall the aggregate liability of Licensor, its agents, suppliers and distributors exceed an amount equal to the price paid for the Software license.
ATTENTION
If you do not accept the terms and conditions of this license do not install or use the Software.
Contents
1 Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Modules, channels and functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 Channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 Function groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 Orderliness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 Import/export functionality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 Enable/disable functionality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 Graphical user interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 Display pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 Measure groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 Adjust groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 Application check . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 Application statistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 Memory handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 Application passwords . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 Application id . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 Application properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 Application safety . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 Risk assessment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 Verification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 User interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 Main window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 File operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 Edit operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 Application manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 Channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 Measure groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 Adjust groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 Logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 Languages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 Display pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 Images . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Contents
Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 Hiding or resizing the application manager . . . . . . . . . . . . . . . . . . . . . 39 Drag and drop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 Property inspector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 Changing properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 Keyboard shortcuts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 Changing a property on multiple components . . . . . . . . . . . . . . . . . . 42 Drag and drop copying . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 Go to component . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 Automatic property values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 Property inspector options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 IQ panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 Component navigator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 Application documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 Document sections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 Save document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 Print document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 Refresh document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 File compare . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 Compare files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 Compare with a text file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 Dialog options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 Show again options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 Other options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 Help . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 IQAN Home Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 Release Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 Check for updates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 About . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 3 Function groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 Function group input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 Function group output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 Calculation order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 To rearrange the calculation order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 Locked function groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 Edit and view lock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 Edit lock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 Set function group password . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 Unlock a function group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 Safety related function groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 Mark as safety related . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 Export/Import . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 Export . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Contents
Import . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 Function group options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 Freeze positions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 4 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 Object groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 Object group types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 Object group method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 Single object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 Dual object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 Vector object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 Multi vector object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 Math object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 Channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 Naming channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 Direction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 Value and status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 Inputs/Outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 Voltage in - VIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 Digital in - DIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 Frequency in - FIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 Directional frequency in - DFIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 Directional analog channel - DAC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 Current out - COUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 PWM out - PWM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 Digital out - DOUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 Servo out - SOUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 Calculation channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108 Mathematical channels - MAC and DMAC . . . . . . . . . . . . . . . . . . . . . . 108 Internal digital channel - IDC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 PID regulator - PID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 Integrating limiting channel - ILC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114 Event counter - ECNT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116 Memorizing channel - MEM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 Slope/Filter channel - SFC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120 Butterworth filter channel - BFW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122 Lookup table channel - LTC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124 Miscellaneous channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 Function group input - FGI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 Function parameter - FP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 State machine channel - SMC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 State parameter - SP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
Contents
Module diagnostics - MDGN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130 System input - SYSIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131 System output - SYSOUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132 Timer - TMR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 Interface channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 Text parameter - TP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 Text formatting channel - TFC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138 Conditional message - CMSG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138 Interactive message - IMSG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141 PIN code channel - PCC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142 SMS in - SMSIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144 SMS out - SMSOUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146 Virtual digital in - VDIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147 CAN channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149 CAN messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149 Parameter group in - PGIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149 Parameter input - PIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154 Parameter group out - PGOUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155 Parameter out - POUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156 TSC1 engine control - TSC1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 Diagnostic message 1 - DM1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158 Suspect parameter number - SPN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159 Generic frame in - GFIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160 Generic frame out - GFOUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162 Safety channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164 Compare channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164 Analog/analog compare channel - AAC . . . . . . . . . . . . . . . . . . . . . . . . 164 Digital/digital compare channel - DDC . . . . . . . . . . . . . . . . . . . . . . . . . 166 Analog/digital compare channel - ADC . . . . . . . . . . . . . . . . . . . . . . . . 167 APPIN - Application input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169 APPOUT - Application output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170 6 Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172 Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173 Module address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173 Master modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174 MDL/MDL2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174 MD3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175 MC2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175 MC3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176 Expansion modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178 Lx . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178 LC5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178 XA2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178 XS2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
Contents
XC10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179 XT2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180 XR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181 J1939 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181 Generic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182 Buses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183 Bus index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183 ICP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183 J1939 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183 Generic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184 How to connect a system in IQANdesign . . . . . . . . . . . . . . . . . . . . . . . . . . . 185 Add modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185 Add buses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185 Sharing a bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186 Measure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186 Block diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187 Add channels to a module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188 Moving channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188 Measure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188 7 Measure groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189 Measure groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190 Add a new measure group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190 Measure in IQANdesign . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192 Start/Stop measure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192 Clear values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193 Graph options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193 Measure item properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195 Measure in other views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195 Statistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197 Position the cursors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197 Locking the cursors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197 Statistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197 Exporting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198 Measure files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198 Zooming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199 Zoom in . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199 Zoom out . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199 Scroll in X and Y directions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199 Move a curve along the Y-axis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199 Auto scaling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199 Adjust groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200 Adjustable channel types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201 Factory default . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201 Application default . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
Contents
Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202 Stored channel types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203 Send application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204 Get application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205 Adjust groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206 Protect an adjust group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207 Visibility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208 Reference channel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208 Add a new adjust group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208 Adjust items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209 9 Logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211 Logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212 System log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213 System events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213 Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213 Event log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215 Add an event log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215 Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215 Value log item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216 Event log item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217 Measure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217 Statistics log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218 Add a statistics log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218 Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218 Counter log item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219 Hour counter log item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219 Min and max log items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219 Measure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220 Languages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221 Managing application languages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222 Language properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222 Adding multi-language texts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223 Memory consumption . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223 Unicode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224 Send application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225 Export . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226 Import . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228 Font selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229 Display pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230 Display pages in IQANdesign . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231 How to design a display page in IQANdesign . . . . . . . . . . . . . . . . . . 231 Display page properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232 Properties for all display pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234 Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234
10
11
Contents
System dialog boxes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234 System colors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234 Localization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235 System info . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236 Display controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237 Line control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237 Text control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237 Value control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238 Bar graph control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239 Image bar graph control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240 Image gauge control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241 Image control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242 Lamp control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243 Slider control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244 Design tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246 Run . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246 Grid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246 Snap to other controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246 Vertical and Horizontal alignment tools . . . . . . . . . . . . . . . . . . . . . . . . 246 Orthogonal alignments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246 Horizontal and vertical distribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247 Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247 Display buttons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248 Button positions, IQAN-MDL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253 Button positions, IQAN-MD3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253 Images and Image groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254 Images included in the IQANdesign installation . . . . . . . . . . . . . . . . 254 Create an image group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254 Add images to an image group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255 Assigning images to controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256 Start up image . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257 To change the start up image . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257 Export . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258 12 Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260 Application password . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261 Adding password protection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261 Change or remove a password . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262 Safe passwords . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262 Password database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263 Password types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264 Date restrictions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264 Add password . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265 Safe passwords . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265 Safe password . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
10
Contents
Create a safe password . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267 Access levels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271 Add an access level . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271 Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271 Users . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272 Superuser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272 Administrator users . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272 Add a user . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272 Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272 Application security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274 Security properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274 Component properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275 13 Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276 IQANsimulate synchronization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277 IQANdesign controlling IQANsimulate . . . . . . . . . . . . . . . . . . . . . . . . . 277 IQANsimulate controlling IQANdesign . . . . . . . . . . . . . . . . . . . . . . . . . 277 System communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278 Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279 USB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279 CAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280 Serial port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280 Simulator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281 Modem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281 Send application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282 Get application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283 Set date and time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284 Modem connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285 Connect via modem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285 Disconnect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286 Phone book . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287 Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287 Edit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288 Delete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288 Export . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288 Import . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288 Choosing a modem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289 Coding guidelines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291 General guidelines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292 Naming conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292 Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294 Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294 Layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294 Calculation order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295 General safety principles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296
14
15
11
Contents
De-energization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296 Error detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296 Error detection action . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296 Start and restart conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296 One control station at a time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297 Protect parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298 Safety related applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299 Safety related function groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299 Interfaces to non safety related functions . . . . . . . . . . . . . . . . . . . . . . 299 Application defaults on parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . 299 Input integrity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300 16 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301 Present inputs on the master display . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302 Controlling a boom function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312 Adding measure groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319 Diesel engine CAN communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322 Sending a text message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328 Using states on a boom function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330 State machine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330 State parameter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332
12
Application
An IQAN system consists of one master module, various expansion modules and an application file. IQANdesign is the design tool that will be used to create an application file. The application file consists of information about the systems modules, buses, addresses, inputs, outputs and internal channels everything that plays a role in controlling a machine. By adding modules, connecting channels and creating functions you will soon create the application file that will be downloaded into the master. In IQANdesign there are no rules on what to do first. You can start to develop the functionality by creating channels and conditions or if you prefer, you can add the modules you expect to use and then connect the channels. You can do it either way, choose the one that suits you the best.
13
Functions A function is created by objects that are grouped in object groups that are typical for a particular channel. An object is like a black box. You put something in and get something out. What you get out depends on what type of object you have selected and the condition you have entered. There are five types of objects: single, dual, vector, multi vector and math.
IQANdesign User manual
14
Function groups
1 Application
Function groups
Channels can be grouped in something called function groups. There are three general purposes for using function groups in an IQANdesign application. Orderliness By splitting the application into smaller parts, function groups, it will be easier to understand the application. Instead of having all of the channels visible in the same function group editor, there can be a function group for crane control another for diesel engine etc. It is possible to write comments to the function group as a description. Import/export functionality A function group can be exported to or imported from another application. It can be very useful to reuse parts from other applications. You could build up a library with function groups in a single master application file. For more information see section Export/Import on page 69. Enable/disable functionality It is possible to disable function groups. If a function group is disabled, that group will not be calculated by the master. This could be useful if you want your application to contain functionality for several machines that will not be used by every machine.
15
Display pages can only be used in applications where a display module exists, such as IQAN-MDL or IQAN-MD3 for instance. Measure groups Create measure groups with selected channels to let the operator, service personnel or other users measure and diagnose the application. This will for instance let the user measure sensor values to check that everything is connected and working as expected. Adjust groups Create adjust groups with adjustable channels to let the operator, service personnel or other users adjust and tune the application. For example, when a sensor is replaced in a machine, it often needs to be calibrated. That can be achieved by adding the sensor input channel to an adjust group and make that adjust group accessible for the user.
16
Application check
1 Application
Application check
An application can contain errors, such as missing channels, undefined properties or invalid values. To find these errors, select Application > Check Application. IQANdesign will then check the application for errors and present a list with the result in a dialog box.
Applications that contain errors can not be downloaded to a master module. The master will not run an application with errors. IQANdesign will also check for warnings and hints. Warnings are not errors, but they are potential safety problems or could cause problems of some kind. Hints are not necessarily dangerous to your application, but can be worth looking at anyway. Warnings and hints will not stop a master module from running the application. It can still be faulty of course, but this has to be tested by you, for example by using IQANsimulate to check all your application functions. The dialog box presents a short description of each error, warning and hint, together with the affected component and property when applicable. You can sort the list with errors, warnings and hints the way you want by clicking in the column header. Select a list item to get a more detailed description about that specific error, warning or hint. The description is displayed in the top panel, next to IQ. You can quickly go to the problem component by double-clicking its item in the list. IQANdesign will find the component and select it for you in the editor.
IQANdesign User manual
17
Application check
1 Application
Fix the problem and click Refresh to check the application again. If youve fixed it correctly, the item will now disappear from the list.
Safety related function groups
Function groups can be marked safety related, see section Safety related function groups on page 67. Such function groups will be checked more rigorously during the application check. Some channels or mathematical operations are not allowed in safety related function groups and will generate errors if used. There are also some warnings that are propagated to errors when they occur in safety related function groups. For a list of what is checked, see section Safety related function groups on page 67.
Options
All warnings and hints may not be important in your application. Therefore, you can define which warnings and hints you want reported by the application check. Select Tools > Options and switch to the Application check tab in the dialog box that pops up. There are two list boxes, one for hints and one for warnings. Each box lists all possible hints and warnings with a check box to the left. Uncheck the ones that you dont want reported by application check.
18
Application check
1 Application
Send application
Before your application is downloaded to the master, the application will automatically be checked for errors. Click Send to send the application to a connected master module. This can only be done if there are no errors.
ATTENTION
An empty application checklist with no errors, warnings or hints, does not guarantee that the application is working as expected. Please use IQANsimulate to check that your application works in a proper way before you download it to the master.
19
Application statistics
1 Application
Application statistics
To get information about your application size, select Application > Statistics. A dialog box with statistics such as component counts and application file size is shown.
Application statistics.
Specifies the amount of non-volatile memory needed to store your application in the master module. Total stored size is the sum of application and languages. Application and languages are presented as two separate nodes since they are sent as separate files when downloading to a master module. Under the application node you can see the stored size of all images in your application, which is often a major part of the complete size. Each separate language size is listed under the languages node. For more information on stored size, see section Non-volatile memory on page 22.
20
Application statistics
1 Application
Specifies the estimated amount of volatile memory (RAM) needed to run your application in the master module. Some major parts of your application, such as function groups, logs and display pages are listed separately under this node. This can be very helpful when you need to find where your application consumes the most volatile memory.
ATTENTION
These numbers are only estimations. They may be different in a real master module. To measure exact memory utilization, see section Volatile memory on page 22.
Component count
Specifies the total number of components in your application. Different component types are listed separately under this node.
Property count
Specifies the total number of properties in your application. Different property types are listed separately under this node.
Other
Lists other information about your application. Application id is a unique identifier for this application, see section Application id on page 25 for more information. Next component id tells you roughly how many components you have added to this application ever, including the ones that have been deleted. The Operating system values presents type, version and size of the operating system used for this application. Memory handling This section discusses all the things you need to know about memory handling issues. It will help you to optimize the size of your application and to make sure that you dont run out of memory.
Memory types
There are two types of memory in a master module, volatile and non-volatile memory. These two memory types are used for different purposes and have different properties.
ATTENTION
It is important that you optimize your applications memory usage for both memory types so that you dont exceed the limits set by the master module. If you run out of volatile memory the master module will immediately stop program execution and enter its safe mode. In practice, almost all memory allocation is done at application startup, and therefor the application should not start at all if you use to much volatile memory.
IQANdesign User manual
21
Application statistics
1 Application
Volatile memory
This memory type is also known as RAM. Volatile memory does not keep its content during power-off, but is very fast and efficient. This memory is used in run-time to store, for example, parts of your application, calculation results or communication buffers. IQANdesign tries to estimate how much volatile memory will be consumed in the Application statistics dialog box, under Estimated memory utilization. This is hard to do at design-time, therefor you should also monitor memory utilization on a real master module in run-time, by using a system output channel, see section System output - SYSOUT on page 132.
NOTE
You should measure memory utilization on a real master module. IQANsimulate can not calculate exact memory utilization, but will give you a good indication. If your memory utilization is getting close to 100% there are some important things to know about how to decrease it. You have to use less components in your application, that is, less channels, objects, display page controls, etc. Components with many properties use more memory than those with fewer properties. Use the Property Inspector to count properties. For example, a current output (especially one with many modes) uses more memory than a digital input. Reducing the number of images and languages will not help though, since these are stored in non-volatile memory. Shorter texts will not help either, because of the same reason.
NOTE
As a rule of thumb, you should try to keep memory utilization below 80%. If youre above 80% there may be problems with PC communication.
Non-volatile memory
This memory type is the equivalent of the hard disk in your PC. When talking about IQAN modules it is sometimes referred to as Flash. Non-volatile memory keeps its content during power-off, but is not as efficient as volatile memory. This memory is used to store many different things, such as, the complete application, the operating system, settings, users and logs. Two of these can be monitored by you, application size and log memory utilization. Log memory is monitored in the same way as volatile memory, see section System output - SYSOUT on page 132. Application size on the other hand can be estimated by IQANdesign, at design-time. You can see application size in the Application statistics dialog
22
Application statistics
1 Application
box, under Total stored size. This number must not exceed the limit for the master module you are using, see table below. There is no guarantee that your application will fit even if it is smaller than maximum application size. Applications are compressed when they are sent from the PC to the master and there is a limit for the compressed size also. Different applications get different compression ratios. Normally it is the maximum application size that will be the limit though. If your application exceeds maximum stored size (or maximum compressed size), a warning will be generated in the application check, see section Application check on page 17. If your application is too big, you should first try to reduce image count and/ or size, since this is one of the most memory consuming components. Second, you should concentrate on number of languages and text lengths. If this is not enough, you must decrease your number of components. If you are using languages that requires extra fonts, such as asian languages, you could consider downloading only a subset of the languages.
Memory sizes
Different master modules contain different amounts of memory, both volatile and non-volatile. For a complete list, see section Master modules on page 174.
23
Application passwords
1 Application
Application passwords
An application can be protected by passwords, one for full access and one for limited access. To set the passwords, select Application > Passwords. For more information on application passwords, see section Application password on page 261.
24
Application id
1 Application
Application id
The application id is created automatically when you create a new application. It is a globally unique identifier, and it is used to identify your application in certain situations. For example, when importing languages from an Excel file, the application id has to match the id stored in the Excel file. If you want to change the application id for some reason, use Application > Change Id. This can be useful when you are creating a new application for a machine type that resembles an existing application.
The most important use of application id is for the master module, when it receives a new application or settings file. It will check that the application and settings file has the same id. If not, the settings file will be replaced by the application default settings.
ATTENTION
Do not change the application id unless you really want to create a new application for another machine type. If you change the application id and send the application to a master module that contains the same application with the old id, new logs will be created and the settings file will be erased.
25
Application properties
1 Application
Application properties
There are some properties that are applicable to the application, such as name, version and author. Select Application at the top of the application manager. Application properties are now available in the property inspector.
Properties
Enter a name for this application. Enter a description for this application. Enter an application version, for example 3.04 or Beta 1. Enter a comment. Enter the name of this applications author. Information on who changed this application the last time and when.
26
Application safety
1 Application
Application safety
This section contains information on how to improve the safety of applications. It is important that you read this chapter before you start creating applications for machines. Risk assessment For all types of machinery, a risk assessment must be made. For guidance on risk assessment, we recommend using a standard such as EN ISO 14121-1. The result of the risk assessment will influence the way that functions are implemented in IQAN, but may also influence the selection of IQAN modules. To mitigate the risks, certain safety functions may need to be implemented on a controller specifically designed for functional safety, for example the IQAN-MC3. The risk assessment must not be limited to just considering faults in the control system during normal operation, it must also cover other activities in the machine life cycle.When introducing a programmable controller on the machine, activities related to the updating of the application logic or its parameters must also be considered.
Sending data to the IQAN system
When downloading data to the IQAN system, the machines engine must be switched off. The machine must be positioned in a way so that it can not start moving. Note that when an application is being downloaded to the IQAN system, the systems outputs become inactive. When sending data to the master via a modem, special care must be taken. Before the download can begin, the driver must acknowledge the download request on the master display.
Protecting the application
It is highly recommended to protect the application file using the built in security functions in IQANdesign and IQANrun. To prevent unauthorized personnel from getting, modifying and loading the application file, it is possible to protect the application with application passwords. It is also possible to protect the parameters, see section Security on page 260. Design Design for safe operation is always the responsibility of the machine designer. This includes both selection of components and design of the application logic. IQANdesign is a tool that is suitable for implementation of safety related application software. When the risk assessment shows that a function has an impact on safety, it is important that the application software is designed in a
IQANdesign User manual
27
Application safety
1 Application
way as to avoid the risk of systematic faults. For guidance on the design of application software, please refer to section Coding guidelines on page 291. Verification Before verification, it is recommended to use IQANsimulate for early testing of the application. When verifying the function in the machine, people and other objects that can be injured or damaged must be out of range of the machines working area.
ALWAYS CONSIDER SAFETY WHEN DEVELOPING AND TESTING THE APPLICATION .
28
User interface
This chapter will describe the user interface of IQANdesign, such as the main window layout, panels and other important windows. The user interface is designed to function with different screen resolutions and font sizes. It is highly customizable. All settings, such as panel sizes, window positions and column widths are stored in Windows registry. Commonly used or important functions are accessible through tool bar buttons and keyboard shortcuts. The keyboard shortcuts follow Windows standard whenever possible.
29
Main window
2 User interface
Main window
The main window of IQANdesign is divided into several panels.
Under the main menu there is a tool bar with the most common functions. To the left, the application manager is located. This is where you navigate through your application. Every component, such as channels, modules or display pages, can be reached from here. The middle panel is called the editor. The editor has different layout and tools for different components. Often the editor shows a list of components. The list contains several columns. You can sort the list in different ways by clicking the column header you want to sort by. To the right, you find the property inspector. The property inspector is used to define the behavior of all your application components. In the bottom panel of the property inspector you get context sensitive help from IQ, your IQANdesign expert and assistant. File operations All file operation commands can be found under the File menu. Some of them are also present to the left on the tool bar.
IQANdesign User manual
30
Main window
2 User interface
New
Use this command to generate a new application with a master module. If there is an application currently open in IQANdesign, it will be closed first. You will be asked to save any unsaved changes before the current application is closed.
Open
Use this command to open an application that was previously saved to a file. A file open dialog box is shown. Select folder and file, and then click Open. You can also open a clone file (.irc) that has been saved in e.g. IQANrun. In the file open dialog box, select Clone files (*.irc) in the drop down list Files of type. Select folder and file, and then click Open. The application in the clone file will be opened in IQANdesign. Optionally the settings in the clone file can also be imported as application default settings. Information such as log data, machine users and machine ID will not be loaded.
If there is an application currently open in IQANdesign, it will be closed first. You will be asked to save any unsaved changes before the current application is closed.
NOTE
IQANdesign 2 can no longer open files created with older versions than IQANdesign 1.20. To open these files they first need to be opened in an intermediate version of IQANdesign (version 1.20-1.34).
31
Main window
2 User interface
Reopen
Contains a sub menu with your most recently used application files. Select the one that you want to open. If there is an application currently open in IQANdesign, it will be closed first. You will be asked to save any unsaved changes before the current application is closed.
Save
Save the current application to a file. If it hasnt been saved before, Save As is executed instead. The Save command will only be enabled when there are any unsaved changes.
Save As
Saves the current application with a new file name. Please note that this operation will not create a new application id for your application. This means that it will be considered to be the same application when sent to a master module or when used by any other IQAN software. If you want it to be treated as a different application, please change application id first, see section Application id on page 25.
Close
Same as New except that no master module will be added. Edit operations All edit operation commands can be found under the Edit menu. Some of them are also present on the tool bar. The menu contains common edit commands, such as Undo/Redo (multiple steps), Cut/Copy/Paste, Delete, Rename and Find.
32
Application manager
2 User interface
Application manager
The application manager is the panel to the left of the editor in the IQANdesign window. The application manager displays all of the main headings of the items in your application. The headings include Application, Channels, Modules, Measure groups, Adjust groups, Logs, Languages, Display pages, Images and Security. Most of these headings can be expanded to show individual items or groups that are members of that heading. When a heading or item is selected in the application manager, the views in the editor and the property inspector change to allow you to examine and edit the selected group or item and its properties. Application Contains all function groups. The top level node corresponds to the applications top level function group. This is where you start to design your application. Add channels, function groups and define functions for your application.
33
Application manager
2 User interface
Application editor.
At the top of the editor, there is a tool bar. Use this tool bar to add channels to your application. There is one button for each channel type available. Click on a button to add a channel of that type, or drag the button and drop it at desired position in the middle panel to add a channel there. The middle panel of the editor shows the selected function groups content: channels and sub-function groups. Drag and drop components to arrange them the way you want. Select multiple components by dragging a box around them. You can also add components to a selection by holding <Ctrl> pressed while selecting.
Bookmarks
Use bookmarks to navigate efficiently in your application. Add or remove a bookmark by right-clicking on a channel and select Toggle bookmark. There
IQANdesign User manual
34
Application manager
2 User interface
are nine bookmarks available. You can also toggle a bookmark on or off by pressing <Ctrl>+<Shift> and its number, 1 - 9. When a bookmark is turned on, its icon is displayed on the associated channel.
Bookmarks.
Now you can focus on a bookmarked channel simply by pressing <Ctrl> and the bookmark number, or right-click on any channel and select Go to bookmark.
Function inspector
The bottom panel shows the function inspector, which is used to display and edit channel functions. Select a channel with a function to see its object groups and objects in the inspector.
Function inspector.
Add objects by right-clicking in a object group list box and select Add <object type>. The objects calculation order can be arranged by dragging and dropping objects in the list. Move one or more objects to another object group by drag and drop. Finally, select calculation method for each object group in the combo box below the list box.
Print
Select File > Print to print the current function group view. A dialog box is displayed where you can change printer, printer properties and/or options. Click OK to print. Channels Lists all channels in current application. One sub-node for each channel type.
35
Application manager
2 User interface
Channel editor.
Select File > Print to print the current channels view. A dialog box is displayed where you can change printer, printer properties and/or options. Click OK to print.
36
Application manager
2 User interface
Modules Contains all modules and buses. The editor shows a tree view of all modules and buses.
At the top of the editor, there is a tool bar. Use this tool bar to add modules and buses to your application. There is one button for each module and bus type available. Click on a button to add a module or bus of that type, or drag the button and drop it at desired position in the middle panel to add it at a specific position. Drag and drop components in the tree view to arrange them the way you want. Buses can be dropped on modules and vice versa. Only compatible buses and modules will allow a drop. There is one sub-node for each module in the application manager. The editor shows a block diagram for the selected module.
37
Application manager
2 User interface
It is also possible to view the physical pin assignment as a list using the list tab of the module editor.
Print
Select File > Print to print the current modules tree view or module block diagram. A dialog box is displayed where you can change printer, printer properties and/or options. Click OK to print. Measure groups Lists all measure groups. Drag and drop the measure groups to order them the way you want (make sure you are sorting on column Order). The order is used by the master display in the measure menu. There is one sub-node for each measure group. When a measure group is selected the editor shows a graph with measured data if available. For more information, see section Measure in IQANdesign on page 192. Adjust groups Lists all adjust groups. Drag and drop the adjust groups to order them the way you want (make sure you are sorting on column Order). The order is used by the master display in the adjust menu. There is one sub-node for each adjust group. When an adjust group is selected the editor shows a list of the adjust items (channels) in that adjust group.
IQANdesign User manual
38
Application manager
2 User interface
Logs Lists all logs in the current application. There is one sub-node for each log where the log items can be created and edited. For more information, see section Logs on page 212. Languages Languages lists all the languages in the application as well as all translated texts. It can be used to define languages as well as edit and translate all multilanguage properties. For more information, see section Languages on page 221. Display pages Lists all display pages. There is one sub-node for each display page. For more information, see section Display pages in IQANdesign on page 231. Images Lists all image groups. There is one sub-node for each image group. For more information, see section Images and Image groups on page 254. Security Lists all access levels defined in the application. There is a sub-node for each access level defined. For more information, see section Access levels on page 271. Hiding or resizing the application manager The application manager can be hidden (and shown) by clicking the splitter on the right side. There is also a menu item for this, View > Application Manager. Drag the splitter to resize the application manager. Drag and drop Inside the application manager panel it is easy to perform certain tasks using drag and drop. Assigning channels to modules is very easy. Expand the Modules node in the application manager. Then select the Channels node so that all of the channels appear in the editor. Now simply click the channel in the editor and drag it to the module in the application manager.
39
Application manager
2 User interface
The same method can be used to set up your measure and adjust groups. It is also possible to drag channels from the function group view. Drag multiple channels or function groups to add more than one channel at a time.
40
Property inspector
2 User interface
Property inspector
The property inspector is the panel to the right in the IQANdesign window. The property inspector displays the properties of any component that is selected in the application manager or editor. Changes to the properties of any of these items are done in the property inspector by entering text, values or making selections from drop down boxes. Changing properties To change any property of a selected component, simply click on it in the property inspector.
The highlighted property will have either an edit box where you enter text or value, or a drop down box from which to make a selection. Some properties use a combination of these, a drop down box where you also can enter text or values.
NOTE
Any text typed into a property edit box will not be applied until you press <Enter> or <Tab> or move to another property. Keyboard shortcuts Use <Up> /<Down> or <Tab>/<Shift+Tab> to move between properties. Use <Alt+Left> and <Alt+Right> to collapse and expand group properties. When focus is on the property name, type the first letter in a property name to select that property. Move focus from property name to property value and vice versa by pressing <Ctrl+Tab>.
IQANdesign User manual
41
Property inspector
2 User interface
If you start typing when focus is on a component in the editor, focus is moved to the active property in the property inspector. Type the new value and press <Enter> to move focus back to the editor. This is very useful if you are changing the same property but with different values on many components. If you want the same property value on many components, see next section. You can also press <Alt+Enter> to move focus back and forth between the property inspector and the editor. Changing a property on multiple components It is possible to change a common property on several components at once. Select the components in the editor. When multiple components are selected, the property inspector will show only the properties that are shared by all the selected components, for example Name or Description. If a property has different values on the selected components, its value will be Indeterminate in the property inspector. If all the selected components has the same property value, its shared value will be presented in the property inspector. Select the property you want to change. Enter or select a new value. The property is updated on all the selected components.
Drag and drop copying You can copy the value of one property to another by dragging the source property and drop it on the destination property. This is particularly useful for group properties. For example, you have defined all currents in the positive
IQANdesign User manual
42
Property inspector
2 User interface
direction for a current output channel. To use the same currents in the negative direction, simply drag the group property Positive direction and drop it on Negative direction.
Go to component Properties that have a component as their value offers a shortcut if you would like to look closer on that component. Right-click on the property name and select Go to component in the popup menu. The property component will be selected in the editor and its properties will be displayed in the property inspector. Automatic property values Some properties has values that is calculated automatically by IQANdesign. For example the name of a log item is automatically set to the same value as the name of the channel that is logged. If you like to have another value than the automatic value for these properties you just need to type your own value and the automatic update will stop for that property. You can enable it again by right-clicking on the property name and check the automatic value option. Property inspector options Select Tools > Options and go to tab Property inspector in the dialog box that is shown.
43
Property inspector
2 User interface
Check Show hints when text does not fit in window to see the complete text in a hint window when you point at a component with the mouse. Check Hide Property inspector while measuring to automatically hide the property inspector panel when you start to measure. The property inspector is always disabled while measuring. Specify a color for reference properties, such as the Input property for a function group input channel. These properties are vital to the behavior of its component. IQ panel The panel directly below the property inspector is called the IQ panel. IQ displays help concerning the currently selected component or property. When component help is displayed it will also contain the user-defined description when it is specified. Description is a property that is available on all components. The length is unlimited but it is limited to one line only. It is possible to use simple HTML formatting though. The most commonly used HTML elements are supported, such as <b> for bold, <i> for italic and <br> for line break. Example: If description is defined as
Indicator switch.<br><i>False</i> - parking brake is <b>not</b> released.<br><i>True</ i> - parking brake is released.
it will produce the help text shown in the image below. The component name and description is inserted above the standard help title and text.
Description example.
44
Component navigator
2 User interface
Component navigator
The component navigator is a great tool to view and follow component relationships in your application. Select Tools > Component Navigator to open its dialog box.
Component navigator.
The navigator is a satellite window, which means it can be open while youre working in the main window. It is always shown on top of the main window if they are overlapping. The selected components name, type and id is shown in the top panel next to IQ. The two list boxes show related components. The left one contains components that the selected component refers to, either through a property or a function/object. The right list box contains components that refer to the selected component. Component name, type and parent are listed. Parent is the components owner and is typically a function group, adjust group, display page, etc. Double-click on a component in one of the list boxes to make that the selected component. IQANdesign will find the component and select it in the editor for you. Both list boxes are updated to show components related to the new selected component. This is how you navigate through your application.
45
Application documentation
2 User interface
Application documentation
The application documentation function will create a design description for your application with text, tables and images. You can decide yourself what parts of the application should be in the documentation. To create documentation for your application select Tools > Application Documentation.
46
Application documentation
2 User interface
Document sections The application document is divided in sections, see table below. The available sections are shown in the tree view on the left side. You can navigate to a section in the document by clicking on its name in the tree view. The checkbox next to each section name specifies whether the section is part of the document or not. Select the checkboxes for those sections that you want in your application document.
Document sections
Application info System System > System image System > Modules System > Pin list System > Module images Function groups Function groups > Interface description Function groups > Function group images Function groups > Channels Diagnostics Diagnostics > Measure groups Diagnostics > Adjust groups Diagnostics > Logs
Name, description, version, author, comment and last changed info. Contains sub sections system image, modules, pin list and module images System overview image with all modules and CAN buses in the application. Adds one section for each module. Adds a pin list for each module. Requires that System > Modules is selected. Adds a block diagram image for each module. Requires that System > Modules is selected. Contains sub sections interface description, function group images and channels. Adds information on the interface (inputs and outputs) to all function groups. Adds an image of the contents for each function group. Adds a list of channels in each function group. Contains sub sections measure groups, adjust groups and logs. Lists all measure groups and their corresponding access levels. Lists all adjust groups and their corresponding access levels. Lists all logs and their corresponding access levels.
47
Application documentation
2 User interface
Adds a section for each display page. Contains sub section display page images. Adds an image of each display page. Lists all access levels and their corresponding users.
Save document The document can be saved as an HTML file. Select File > Save Documentation or click the Save button on the tool bar. A save file dialog box is opened where you can select where to save the document and what name it shall have. A sub folder named Images is created in the folder you selected, where all images (if any) are saved for the HTML document. Remember to always include the Images folder when copying or moving the HTML document. Print document To print the document, select File > Print or click the Print button on the tool bar. A dialog box is displayed that lets you select printer and other print options. When printing the documentation page numbers and a table of contents is also included. Refresh document If the application has changed since you opened the application documentation window, you can refresh the document to include the changes by selecting Documentation > Refresh or clicking the Refresh button on the tool bar.
48
File compare
2 User interface
File compare
Sometimes it can be very useful to compare an application to another and see the differences between them.
EXAMPLE
Youre having problem with a function that you know worked in an earlier version of your application. Compare your application with the version that worked to see what has changed. Compare files First open your current application in the normal way, for example by selecting File > Open. Then open the other application file that you want to compare with by selecting File > Compare With. A file open dialog box is displayed. Select the other application file and click Open. Both applications will be converted to text and displayed side by side in a file compare dialog box. Every line that differs between the applications is colored red. A line that is missing in one of the applications is colored grey.
Use the Next Difference and Previous Difference buttons on the tool bar to move between all the application differences. To find a specific item in the application you can use the find functionality provided in the compare dialog.
IQANdesign User manual
49
File compare
2 User interface
You can also reload the current application by clicking Reload, which can be useful if you have done changes to your application since you opened the file compare dialog box. The dialog box can remain open while you are editing your application in the main window. A quicker way of navigating is to use the gutter on the left side. The gutter shows an overview of the file comparison. It also shows which line is selected with a small green arrow, and which lines are visible with a white rectangle. Click in the gutter to quickly move to that part. Compare with a text file If the other application that you want to compare with was created in another version of IQANdesign you probably want to see what differences IQANdesign may have caused to the application, such as adding new properties. To do that you need to open the other application in its original version of IQANdesign and save it as a text file. Select File > Save As and in the save dialog box that pops up, change Save as type to Text file (*.txt).
Enter a file name and click Save. Go back to your current version of IQANdesign, open your current application and select File > Compare With. In the open dialog box, change Files of type to Text files (*.txt). Select the text file you created earlier and click Open. The file compare dialog box is displayed, see above.
IQANdesign User manual
50
Dialog options
2 User interface
Dialog options
There are options that concern certain dialog boxes and the user interface in general. Select Tools > Options to show the IQANdesign options dialog box.
Dialog options.
Automatically brings up Save As dialog when program is uploaded from the master.
IQANdesign User manual
51
Dialog options
2 User interface
Shows the settings option dialog box before sending and after getting an application. See section Send application on page 204 and section Get application on page 205 for more information.
Show send language options dialog
Shows the sent language options dialog before sending an application. This dialog makes it possible to select which languages from the application that should be sent to the master.
Create backup file when saving application
Automatically creates a backup of an existing file when saving. The backup is named Backup copy of <filename>.
Create lock file when opening application
Creates a lock file when opening an existing file. The lock file prevents other users from opening the same file while you are using it. If another user tries to open the same file a warning dialog box is shown to him.
Enables dialog box for creating new file, opening an existing file, getting an application from the master or opening your most recent file at startup.
52
Dialog options
2 User interface
Choose the font to be used in the main window and all dialog boxes. Check Use Windows font settings to use the settings from Windows Control Panel. Or, select your own font and size. The sample will show you how the selected font looks like.
53
Switch to the Show again tab. Select the messages that you want to be shown again.
54
Other options
2 User interface
Other options
There are some other options affecting the behavior of IQANdesign. They can be found under the tab Other in the options dialog. Open the options dialog using Tools > Options.
File association
To associate IQANdesign with application files click on the Associate with application files button. If the button is disabled, IQANdesign is already associated with that file type. Associating IQANdesign with a file type means that if you double-click such a file in Windows Explorer for instance, IQANdesign will start and open that file.
NOTE
The number of undo levels that should be remembered by IQANdesign can be configured using the Undo levels options. If you are experiencing performance issues due to low memory in your system it might be a good idea to lower the amount of undo levels.
Automatically check for updates
Select how often you want IQANdesign to automatically check for updates. Select Never to disable this function.
55
Help
2 User interface
Help
The help menu contains the usual menu items. Contents Will bring up the help file, which is this book as a PDF document. IQAN Home Page Starts your web browser and goes to https://www.iqan.com. Release Notes Starts your web browser and displays release notes for this version of IQANdesign. Check for updates Check for an updated version of IQANdesign on the Internet. Requires an Internet connection. If there is a new version, you will be informed on what has been changed and then you can download and install the new version. About Displays a dialog box with licence and version information.
56
Function groups
A function group can be characterized as a container for channels and other function groups. Each function group must contain all components needed for its functionality. When a component needed in a function group resides outside of it, it can still be incorporated in the function group by the concept of function group inputs and outputs. A function group doesnt always need to have inputs and outputs, it could have either inputs or outputs, both inputs and outputs or none of them. It depends on what functionality you have created inside the function group.
A function group can contain other function groups which in turn can contain other function groups. This creates a tree view of function groups which can be viewed in the application manager under the Application node. Function groups can be nested as deep as you like. If you double-click on a function group or select it in the application manager, it opens and you will see all of its components, channels and function groups, displayed in the editor. A component, channel or function group, can only exist in one function group. If a channel for instance, is needed in two or more function groups, its value must be passed to these function groups through function group inputs.
57
Unique name for this channel. Also used as property name on the function group that contains this FGI. Enter a description for this application component. The unit for the scaled value of this channel. Only applicable when Input type is Analog. Specify whether the input is Analog, Digital, State machine or Text. If input type is State machine, you must specify the states as well. The input controls the value of this function group input. You can also set this property via the function groups properties. Minimum value allowed. If the input value is less than this limit, the channel value equals this limit. Only applicable when Input type is Analog. Maximum value allowed. If the input value is greater than this limit, channel value equals this limit. Only applicable when Input type is Analog. Maximum number of characters allowed. Only applicable when Input type is Text.
Input
Min limit
Max limit
This name is used for the default state. The default state is the active state when no other state is active. Only applicable when Input type is State machine. Press the + button to add states to this state machine. Only applicable when Input type is State machine.
IQANdesign User manual
States
58
Enter a name to identify this function group. Enter a description for this application component. Select Yes to make this function group enabled all the time, or select a channel to enable/disable it in runtime. When the channel value is False, the function group is disabled and all its channels are set to 0 (zero)/ False. Channels with error value, for example voltage inputs, will be set to this value instead. Information on who edited this function group the last time and when. All FGI channels contained in this function group corresponds to a property here. Property name and hint is the same as the FGI channel name and description. The property value is the same as the FGI Input property value. Select the channel you want to use as an input to the function group or enter a constant value if applicable. You can only select channels that are of the type you have specified in the FGI Input type property. When there is more than one FGI, the corresponding properties are sorted in calculation order, see section Calculation order on page 62.
Last edited
The last edited property is a read-only property that is updated as soon as a component in the function group is edited. It contains date and time of the last edit and license number and name of the user who did the change.
IQANdesign User manual
59
Move up
There is a special command for moving a channel to the parent function group. Right click on the channel and select Move up in the pop up menu. The channel will be moved to the parent group and a FGI channel with suitable properties will be created instead. The FGI will replace the channel in the entire function group.
60
Right click on the channel whose value you want to pass out from the function group. Select Function group output in the pop up menu. An arrow symbolizes that a channel is a function group output.
Function group output.
The function group output can be used in the parent function group as if it were a channel in that function group.
61
Calculation order
3 Function groups
Calculation order
The calculation order describes the order the master will use to calculate the contained channels and function groups. The calculation order is local to all function groups. The default calculation order will be the order in which you have added the components to your function group. The calculation order can in some cases be important to the behavior of your function group. If you, in one channel, refer to another channel that is positioned later in the calculation order, the value calculated in the previous cycle will be used. This means that you will get a delay determined by the system cycle time (default is 50 ms). This can, of course, also be used as a feature in your function to do locking mechanisms, etc. When you do an application check, IQANdesign will generate a priority warning for each reference with a reversed calculation order. In the function group editor, you can choose to show the lines representing these references in another color, the default is red.
To rearrange the calculation order It is easy to sort the channels into the order you want. Right click in the function group and select Calculation order... in the popup menu.
62
Calculation order
3 Function groups
Drag and drop the list items to arrange them the way you want, or click the button Auto order to let IQANdesign order the components for you. IQANdesign will then try to order them so that there are no priority warnings. This is not always possible. Some tricky situations will also require multiple clicks on Auto order, since it is not always possible to order the channels in one pass.
63
64
Enter the password you want to lock the function group with, select if you want to allow viewing of the function group and click OK.
When the password has been set you will be asked if you want to save the password to the password database. By doing that you dont have to enter the password in IQANdesign on your computer to view or edit the function group (see section Password database on page 263 for more information about the password database).
The function group is now locked. This is indicated with a small lock symbol in the upper right corner of the function group control.
ATTENTION
Remember to document your function group passwords in a safe place. If you lose a function group password, there is no way to unlock that function group again.
65
If you double-click a function group that is protected for both editing and viewing, or select it in the application manager, a message telling you that this function group is locked is displayed instead of the function group contents.
Unlock a function group To unlock a function group, right-click on it and select Unlock from the popup menu. A password dialog box appears. Enter correct password and click OK. The function group is unlocked and can be edited again.
Note that the password is still set for the function group, which means that the next time you start IQANdesign and open your application you need to enter it again to be able to edit the locked function group (unless you have saved the password in your password database). To permanently remove the function group password select Set password for the function group, enter the old password and then leave the new password empty.
66
All servo out channels. All PWM output channels. All module diagnostic channels except those measuring VREF. All system output channels except those measuring cycle time. All text parameter channels. All text formatting channels. All conditional message channels. All interactive message channels. All PIN code channels. All SMS input channels.
67
All SMS output channels. All virtual digital in channels. All PGIN, PIN, PGOUT, POUT, DM1, SPN, TSC1, GFIN and GFOUT channels.
Adjustable/stored channel Not protected by access level or PIN code. COUT FP BWF Max parameter less than or equal to its corresponding min parameter. Max limit less than or equal to min limit. The cutoff frequencies are less than or equal to 0 or greater than or equal to half the system sample frequency. When using band pass or band stop filter the second cutoff frequency is smaller than or equal to the first cutoff frequency. Max limit less than or equal to min limit. Max or min limit not defined. Timeout is not defined. Transmit rate is not defined. The detection delay time is not dividable with the system cycle time. The points are not defined in increasing input value order. Master module is not certified for functional safety. Not assigned to module certified for functional safety. Adjust group contains safety related channel(s) but is not protected by an access level or PIN code. Operators Div, Mod, Bitwise not, Bitwise and, Bitwise or, Bitwise xor, Shift left or Shift right are used.
FGI APPIN APPOUT Comparator channel (AAC/ADC/DDC) Multi vector object Master module I/O channels Adjust group Math operators
68
Export/Import
3 Function groups
Export/Import
It is possible to export one or more function groups (and single channels) to a separate file and later import that file to another application. Export First, in the function group editor select the function group(s) and/or channel(s) that you want to export. Select multiple components by holding <Ctrl> pressed while you select or drag a box around them. Select File > Export... to open the export dialog box.
To export only the selected components (with their content), click Selected component(s) without references and then click OK. To export referenced components (such as adjust groups, display pages, etc.) also, click Selected component(s) with references instead. Click OK to continue. A save file dialog box appears. Select a folder where you want your exported file stored and enter a file name.
Selected component(s) without references
Components with content are exported. Example: You have selected a function group. The function group with all its contained function groups and channels with functions/objects will be exported. Any component that is not contained by the function group will not be exported.
Selected component(s) with references
69
Export/Import
3 Function groups
Modules
All modules with any of the exported channels connected will be exported. CAN buses are not exported. Measure groups and items that refer to any of the exported channels are exported. Note that measure items that dont refer to any of the exported channels are excluded from its measure group. Adjust groups and items that refer to any of the exported channels are exported. Note that adjust items that dont refer to any of the exported channels are excluded from its adjust group. Logs will not be exported. Languages are not exported. Pages or pages with controls that refer to any of the exported channels are exported. All controls on an exported page are exported regardless of whether they refer to any of the exported channels or not. Images that refer to any of the above exported components are exported. Access levels that refer to any of the above exported components are exported.
Measure groups
Adjust groups
Images Security
Import First open the function group in the current application that you want to import to. Then select File > Import... and select the application file that you want to import. It can be a complete application or an earlier exported file. All components are imported to your current application. Function groups and channels will be imported to the function group selected in the application manager. If no function group is selected they will be added to the main function group. Components that exists in both the current application and the imported application file will be duplicated. You will not be warned about this. Please check your application thoroughly after an import.
70
Select Show hints to enable hints in the editor. Hints contain information on name, description and type for the component you are pointing at. When measuring they also present value and status.
IQANdesign User manual
71
Select Show grid to turn on the grid in the editor background. Also, set the grid size and color. When grid is visible, components will snap to it if dragged. Draw references lines are used to configure the way reference lines are drawn between components. Select All components to have lines drawn between all components that refer to each other within a function group. Select Selected component to have lines drawn for references for the selected component only. Also, specify color for the reference lines. The color selection boxes let you specify colors for different channel types or for indicating hints, warnings or errors on a component. The later ones have higher priority than the channel type colors. Freeze positions If you want to prevent moving components in a function group by mistake, right-click in the function group and select Freeze positions in the popup menu. This will freeze all component position in the current function group, so that you can not move them. Frozen positions are indicated by a small icon in the top right corner of the editor.
72
Functions
A function is created by objects that are grouped in object groups. Object groups are specific for each channel type. An object is like a "black box". You put something in and get something out. What you get out depends on what type of object you have selected and its properties. There are five types of objects: single, dual, vector, multi vector and math. An object groups value is decided by its object values and the selected object group method. For example, the object values in a controlling object group can either be multiplied to a product or compared, so that the object with the highest or lowest value will control the object groups value.
73
Object groups
4 Functions
Object groups
A function consists of two or three object groups depending on channel type. Each object group affects the function in its own way. You will find the object groups on all channels where you can create functions. Object group types
Controlling
The controlling object group is used with analog value channels, such as a math channel. The primary role of the controlling object group is to control the channels output value. The controlling objects are generally made up of signals that the operator can influence himself, for example, the input from a lever or a pedal.
Limiting
Works together with the controlling object group. This group has higher priority than the controlling object group. If this groups value is less than the controlling object group, the function value will equal the limiting object group value.
Controlling object group t Limiting object group t Function value t
Activating
The activating object group is used with digital value channels, such as an internal digital channel.
74
Object groups
4 Functions
Blocking
Works together with the activating object group. This group has higher priority than the activating object group. If this groups value is True, the function value will be False regardless of the activating object group value.
Activating object group t Blocking object group t Function value t
The blocking object group is often used to make a function safe in certain situations.
Increasing/Decreasing
These object groups are used to increase or decrease a channels value. Channel value is increased/decreased when object group or object value changes from False to True. If both increasing and decreasing object groups changes simultaneously nothing happens with the channel value. Used with counters.
Resetting
The resetting object group is used to reset a channels value to zero or a predefined value. Channel value is reset when object group value changes from False to True. This group has higher priority than any other group in the same function. Used with counters and memorizing channels.
Showing/Hiding
These object groups work together and are used for interface channels to show or hide messages on the master display. Hiding has higher priority than showing when they are activated simultaneously. Messages are shown/hidden when object group value changes from False to True. Object group method Each object group also has a method that specifies how its objects are combined to create the object group value. The only objects that are affected by the object group method are the resulting objects. Resulting objects are objects that are not referred to by other objects.
75
Object groups
4 Functions
Resulting objects.
Resulting objects are indented differently from other objects. In the above example, objects C and D are resulting objects. Objects A and B are not resulting objects, since they are referred to by object C. The object group method selected in the example above is Multiply (%). This will multiply the value of object C with the value of object D. The product is the value of the object group. Object A and B are implicitly used through object C in the calculation. The (%) in Multiply (%) means that the operands are expected to be in percent and the result will also be in percent, for example object Cs value is 70% and object Ds value is 50%, gives the result 35%.
Multiply (%)
Object values are multiplied. Values are expected to be in percent. Result will also be in percent.
Result = ((Object A/100)(Object B/100)(Object C/100)...)100
Two objects.
MaxOf (Absolute)
Absolute value of object values are compared. The result is the largest object. The result will have the same sign as the largest object.
IQANdesign User manual
76
Object groups
4 Functions
If all objects are equal but with different signs, the result will be the positive value. Example: Object A = -25, Object B = 15, the result is -25. Applicable to Controlling and Limiting object groups.
MinOf (Absolute)
Absolute value of object values are compared. The result is the smallest object. The result will have the same sign as the smallest object. If all objects are equal but with different signs, the result will be the positive value. Example: Object A = 5, Object B = -40, result is 5. Applicable to Controlling and Limiting object groups.
And
Boolean conjunction. If all objects are True or not equal to 0, the result is True, otherwise False. Applicable to all object groups except Controlling and Limiting.
Object A t Object B t Object group value t
When used in an increasing or decreasing object group, all the objects have to be true to change the counters value. This means that if all objects are true, it only takes one of the objects to turn false and then true again to change the counters value.
Latching And
Same as And, with latching functionality. The object group stays True until the Blocking object group goes True. Activation of the object group is not possible until the Blocking object group and at least one activating object goes False. Applicable to Activating object groups.
77
Object groups
4 Functions
t Activating objects in an activating object group t Blocking object group t Function value
Or
Boolean disjunction. If one object is True or not equal to 0, the result is True, otherwise False. Applicable to all object groups except Controlling and Limiting.
Or method.
When used in an increasing or decreasing object group, the object group value has to become true to increase/decrease the channels value.
T1, T2 > two times cycle time
T1
T2 Increasing object A
Increasing object B
78
Object groups
4 Functions
Latching Or
Same as Or, with latching functionality. The object group stays True until the Blocking object group goes True. Applicable to Activating object groups.
t Activating objects in an activating object group t Blocking object group t Function value
Latching Or method.
79
Objects
4 Functions
Objects
There are five different object types. Each type has its own characteristics and range of uses. Single object The single object is used to represent a channel value or a constant value.
Output = Input
EXAMPLE
If the controlling object is a Joystick with no deadband you can use the single object. Input = Joystick The controlling objects value will follow the Joystick value.
Dual object The dual object gives you one of two values, depending on the input value.
if (Input = True) then (Output = Out 1) else (Output = Out 2)
Object value
Out 1
Out 2
True
False
Input value
Dual object.
If the input value is True or not equal to 0 (zero), the objects value equals the first value (Out 1). If the input value is False or equals 0 (zero), the objects value equals the second value (Out 2). Vector object The vector object is a linear function defined by two points (In 1, Out 1) and (In 2, Out 2).
Output = Out 1 + (Input - In 1) (Out 2 - Out 1) / (In 2 - In 1)
80
Objects
4 Functions
Out 2
Out 1 In 1 In 2
Vector object.
A vector object is defined by an input value and two breakpoints. Between the two breakpoints there is a linear function based upon the input signal.
EXAMPLE
If you have a lever that controls the telescope, you may want to have 10% deadband to get a more stabilized signal from the lever. Use two vector objects: Input = Lever telescope 10%->0%, 100%->100% (positive direction) Input = Lever telescope -10%->0%, -100%->-100% (negative direction).
Outside range
Specify the output value behavior when the input value is outside the range In 1 - In 2. Freeze value will freeze the output to Out 1 or Out 2 depending on whether Input is less than or greater than the range In 1 - In 2. Return to zero will set the output value to 0. Select Extrapolate to extrapolate the output value outside the specified range. Multi vector object The multi vector object is a function defined by two or more points and an input value. When using only two points it equals the vector object. The main purpose of the multi vector object is to simplify the creation of broken curves by allowing you to add more than two points. The points must be ordered sequentially starting with the lowest In value and ending with the highest.
81
Objects
4 Functions
Outside range
Specify the output value behavior when the input value is outside the range defined by the In values of the first and last points. Freeze value will freeze the output to the Out value of the first or last point depending on whether Input is less than or greater than the define input range. Return to zero will set the output value to 0. Select Extrapolate to extrapolate the output value outside the specified range. Math object The math object is defined by an operator and one, two or three operands. You have access to the following operators:
Relational
= Equality <> Inequality < Less than > Greater than <= Less than or equal to >= Greater than or equal to Inside Inside range
True if "Operand 1" equals "Operand 2", otherwise False. False if "Operand 1" equals "Operand 2", otherwise True. True if "Operand 1" is less than "Operand 2", otherwise False. True if "Operand 1" is greater than "Operand 2", otherwise False. True if "Operand 1" is less than or equal to "Operand 2", otherwise False. True if "Operand 1" is greater than or equal to "Operand 2", otherwise False. "Operand 2" < "Operand 1" < "Operand 3". True if "Operand 1" is inside the range "Operand 2" - "Operand 3", otherwise False. If "Operand 2" is greater than "Operand 3" they are swapped before condition is evaluated.
IQANdesign User manual
82
Objects
4 Functions
"Operand 2" > "Operand 1" or "Operand 1" > "Operand 3". True if "Operand 1" is outside the range "Operand 2" - "Operand 3", otherwise False. If "Operand 2" is greater than "Operand 3" they are swapped before condition is evaluated.
Arithmetic
Calculates "Operand 1" + "Operand 2". Calculates "Operand 1" - "Operand 2". Calculates "Operand 1" "Operand 2". Calculates "Operand 1" / "Operand 2". Example: 7 / 2 = 3.5 Calculates "Operand 1" div "Operand 2". Example: 7 div 2 = 3 Calculates "Operand 1" mod "Operand 2". Example: 7 mod 2 = 1
An easy example how to use the div and mod operators is to calculate how many hours and minutes is 135 minutes: 135 div 60 = 2 135 mod 60 = 15 gives 2 hours and 15 minutes.
Boolean
not(False) = True and not(True) = False False and False = False False and True = False True and False = False True and True = True
83
Objects
4 Functions
or Boolean disjunction
False or False = False False or True = True True or False = True True or True = True False xor False = False False xor True = True True xor False = True True xor True = False
Trigonometric
Operand resolution for trigonometric operators is at least 0.1. Result resolution is at least 3 decimals.
sin cos asin acos tan atan
Logical (bitwise)
Sine of the angle, "Operand 1" Angle must be n(0 - 360). Cosine of the angle, "Operand 1" Angle must be n(0 - 360). Inverse sine of "Operand 1". Inverse cosine of "Operand 1". Tangent of "Operand 1" tan(X) = sin(X) / cos(X). Arctangent of "Operand 1".
Bitwise negation. Bitwise and. Bitwise or. Bitwise xor. Bitwise shift left. "Operand 1" is shifted "Operand 2" steps to the left. Bitwise shift right. "Operand 1" is shifted "Operand 2" steps to the right.
Other
Abs
84
Objects
4 Functions
Largest value of "Operand 1" and "Operand 2". Smallest value of "Operand 1" and "Operand 2" Largest signed value of Abs("Operand 1") and Abs("Operand 2"). If Abs("Operand 1") equals Abs("Operand 2") and one is positive and the other negative, the result will be the positive value. Example: "Operand 1" = -25, "Operand 2" = 15, Result is -25. Smallest signed value of Abs("Operand 1") and Abs("Operand 2"). If Abs("Operand 1") equals Abs("Operand 2") and one is positive and the other negative, the result will be the positive value. Example: "Operand 1" = 5, "Operand 2" = -40, Result is 5. Square root of "Operand 1". Raises base to any power. "Operand 1" is base and "Operand 2" is exponent. Natural logarithm (Ln(e) = 1) of "Operand 1". Rounds "Operand 1" to the nearest integer (whole number). If "Operand 1" is exactly halfway between two whole numbers, the result is always the even number. This method of rounding is often called "Bankers Rounding". Example: Round(1.04) = 1, Round(1.5) = 2, Round(2.5) = 2. Percent multiplication. Calculates "Operand 1" * "Operand 2". Both operands are expected to be in percent and the result will also be in percent. Example: Operand values 70% and 50% gives the result 35%. Derivative. Calculates the derivative of "Operand 1". Step size (t1 - t2) is always the system cycle time. The resulting unit is ["Unit of Operand 1"/s]. Example: The derivative of a distance [m] is the speed of which it changes [m/s].
MinOfAbs
*%
85
Objects
4 Functions
Integral. Calculates the integral of "Operand 1". Step size (t1 - t2) is always the system cycle time. The unit of "Operand 1" is expected to be [/s]. Example: The integral of a speed [m/s] is the travelled distance [m].
Status
Status = Equality Status <> Inequality Status < Less than Status > Greater than Status <= Less than or equal to Status >= Greater than or equal to
True if the status of "Operand 1" equals "Operand 2", otherwise False. False if the status of "Operand 1" equals "Operand 2", otherwise True. True if the status of "Operand 1" is less than "Operand 2", otherwise False True if the status of "Operand 1" is greater than "Operand 2", otherwise False. True if the status of "Operand 1" is less than or equal to "Operand 2", otherwise False. True if the status of "Operand 1" is greater than or equal to "Operand 2", otherwise False.
The status values can be useful, for example if you want to do some actions when a certain error were to appear, like showing an error message on the display.
86
Channels
Channels are probably the most important components in an application. They are used to get input from the machine, do calculations, control the display and control outputs. There are a number of different channel types, each one specialized to do a specific task, like the voltage input that can measure the value from a 5V sensor and scale it to another unit, or the PID channel that can do PID regulations based on a command and a feedback value. These channel types are divided into five different groups: Inputs/Outputs, Calculation, Miscellaneous, Interface and CAN.
87
Naming channels
5 Channels
Naming channels
When you create an application, you may start by creating channels and defining their properties. As part of the process you should establish a naming convention for the channels that will be easy to understand. For digital inputs and outputs, a good naming standard is to name the input or output after its active state. For analog inputs, you would normally give names based on the measured value, for example Oil pressure, telescope or Angle sensor, boom. Analog outputs should be named after their function, for example Boom. Every channel also has a property named Description that you are encouraged to use. Enter a text that describes the purpose or function of the channel. The text you enter here is also displayed in the IQ panel below the property inspector when the channel is selected. See section IQ panel on page 44. Direction In addition to naming channels clearly, you should standardize on the directions of movement. Almost every movement has a positive and a negative direction. It is very important to be consistent with the direction selection when you create an application, partly to facilitate things when documenting the application and partly when troubleshooting or rebuilding.
Direction suggestions
Up Down Forward Reverse Right Left Right turn Left turn Out In
Positive Negative Positive Negative Positive Negative Positive Negative Positive Negative
88
A voltage input uses a measured value and its properties Min, Max, Scaled min and Scaled max to calculate its value. A math channel uses its functions to calculate its value.
Boolean
Boolean values are used for digital channel types. They can often be used as numeric values. False is then interpreted as the numeric value 0 and True is interpreted as 1.
Numeric
A numeric value is a real number (floating point) in the range 1.510-45 3.41038 (negative and positive) with 7 significant digits. If a numeric value is used where a boolean value is expected, the value 0 is interpreted as False and all other values as True.
State
State values are used to select active state on other components. A state value can also be used in numeric calculations. Default state is then defined as 0, first state as 1, and so on.
Text
Text values are used to for example display information on the master display, log text information or send text messages via SMS. They can not be used in numeric calculations. Status The status is used to indicate warnings, errors or other info. It is an integer in the range 0 - 255, which is divided into four sub-ranges. Some status changes are shown as on-screen messages or LED codes on the master, and some are even logged in the system log: 0 - 63: Info
IQANdesign User manual
89
64 - 127: OK 128 - 191: Warning 192 - 255: Error In the table below, column Msg states whether a system message dialog box is displayed or not and column Log states whether a record is created in the system log or not.
Status values
n 0 1 64
Description Component disabled. Not evaluated. Not evaluated due to lazy evaluation. Status OK. Module internal temperature. (Only IQAN modules) Module supply voltage. (Only IQAN modules) Module supply voltage. (Only IQAN modules) Applies to master module only. Lever not in zero position at power-up. Value below low alarm level on input channel. Value over high alarm level on input channel. Not able to output commanded current. Current is 50-100% of commanded. Checksum calculation error for adjustable/stored value Value below low error level on input channel. Value over high error level on input channel. Output overloaded.
Msg Log
128 High temperature 129 Low supply voltage 130 High supply voltage 131 Date and time not set 132 Start block 133 Low alarm 134 High alarm 135 Saturated 137 Checksum error 192 Low error 193 High error 194 Overload
x x x x x x x
x x x x x x x x x
x x x
x x x
90
Status
Description Output is disconnected. Current is less than 50% of commanded. Math calculation. Math calculation. Math calculation. Math calculation. J1939 error detected at parameter input channel (PIN). Parameter (PIN) not available in J1939 parameter group (PGIN). Timeout detected on parameter group input (PGIN) or generic frame input (GFIN). No contact with expansion module. (Applies to all modules) Two or more IQAN modules with same address detected. VREF error detected on IQAN module. Internal IQAN module error. Critical IQAN module error. Invalid channel type connected to module pin. CAN bus does not work. Invalid address tag on master module. A parameter or channel value is out of range.
Msg Log x x x x x x x x
195 Open load 196 Division by zero 197 Calculation overflow 198 Negative square root 199 Invalid argument 200 J1939 error 201 J1939 not available 202 Timeout
203 No contact 204 Multiple address 205 VREF error 206 Internal error 207 Critical error 208 Pin conflict 209 CAN bus error 210 Address error 211 Out of range 212 Input error 213 Diff check error
x x x x x
x x x x x
x x
x x x x x
Error detected on input channel (used by x AAC, DDC and ADC channels). Input channels not equal (used by AAC, x DDC and ADC channels).
91
EXAMPLES
A voltage input gets status High alarm when its value rises above the value specified by property High alarm. A math channel gets status Division by zero when one of its function objects generates a division by zero error.
Status tables
Each channel section in this chapter has a table listing all possible status values for its channel type.
Standard statuses
The status values Disabled and OK are excluded from the lists since all channels can have these statuses.
Inherited module status
Channels that are assigned to a module, for example voltage inputs or module diagnostics, inherit the modules status in some events. The table below lists all statuses that are inherited.
Disabled No contact Multiple address error Module is disabled. Module is offline. There are more than one module with the same address on the bus. Only applicable to IQAN expansion modules.
Channels that have function, for example math channels or event counters, gets the status of its objects in some events. The table below lists all statuses that are propagated from objects to channels.
Division by zero Calculation overflow Negative square root Invalid argument Math calculation. Math calculation. Math calculation. Math calculation.
92
Inputs/Outputs
5 Channels
Inputs/Outputs
All of the input and output channels are physical channels and you will find them as inputs and outputs on the different modules. For further information about the physical channels see the specific instructions for the modules. Voltage in - VIN A physical analog input. The voltage input channel is used to measure analog sensors, for example temperature, pressure, angle, lever position, etc. The input voltage range to this channel type is normally 0-5000mV. The signal can be scaled to an application dependent range.
Scaled max
Scaled min
min
max
Properties
The unit for the scaled value of this channel. Select the reference voltage that this voltage input is connected to. Select Not used if connected to an external reference. All inputs connected to a reference voltage where an error is detected will receive error status VREF error. The error value is used when there is an error situation for this channel. For example, if the connected sensor is broken, the channel will use this value as its output value instead of the measured value. Enter scaled value, not raw value. Select a predefined device type to automatically get the correct limits and calibration values for that device. Specify the limits for min and max input. These are the limits an operator can adjust this channels parameters within. If you set min and max limit for a parameter to the same value, that parameter will not be adjustable.
Error value
93
Inputs/Outputs
5 Channels
Enter raw sensor value when sensor is in Min position. Enter raw sensor value when sensor is in Max position. Select Yes to make this channel adjustable. You must also add this channel to an Adjust group to be able to adjust it via the master display or IQANrun. Select how the channel is adjusted in IQANrun. If adjust type is set to manual the min and max parameter are adjusted manually. If set to auto the minimum and maximum values are detected automatically while adjusting, which means they will be the smallest/ largest measured value during adjustment in IQANrun. Enter the scaled value of the sensor Min position. Examples: 90 cm, -30C, etc. Enter the scaled value of the sensor Max position. Examples: 785 cm, 130C, etc. Select Yes to specify a low/high alarm level for this channel. You can also select a channel to control whether a low/high alarm level should be used or not. Enter a value for the low/high alarm level. Also, make sure that property Alarm low/high above isnt set to No. You can also use a channel to specify alarm level. Example: Setting the low level to -25C will create an alarm when the temperature (this channels value) falls below -25C. The alarm will be logged (if enabled in the System log) and presented to the driver. Enter scaled value, not raw value.
Calibration > Scaled min Calibration > Scaled max Alarm > Low/High
Device type
Enter a name for your input device, for example, Temperature sensor TS100. If you are using a predefined device type, or want to add one, click the button to the right. This opens the device manager. Select a device in the list and click Select. The channel is updated with the values of the selected device.
94
Inputs/Outputs
5 Channels
Device manager.
If you often use the same device in your application it can be a good idea to add it to your device database. Click Add and fill in all device data in the dialog box that appears. The new device is added to the list. You can also edit or delete existing devices.
To copy devices to another computer or colleague, use the export/import function. Select all devices that you want to export and click Export. Specify file name and folder in the save file dialog box that appears.
IQANdesign User manual
95
Inputs/Outputs
5 Channels
To import it on another computer, click Import and select the same file. For each imported device that already exists in the database, you will be asked if you want overwrite or keep the original.
Adjust
By adding this channel to an adjust group, it is possible to adjust its Min and Max via the master display or IQANrun. Property Adjustable must be set to Yes to be able to adjust it.
Error detection
Scaled value
Scaled max
Min
Max
Vin max
For the master to be able to detect errors such as short circuit or power failure, the inputs voltage range must be within the min and max limits as shown in the above diagram. If the signal reaches the illegal range, a signal error is detected and the channels scaled value will be replaced by the specified error value. This is to avoid jeopardizing the machines function and safety.
ATTENTION
An illegal value can cause a faulty function on the machine. Carefully consider critical and dangerous situations when the channels input value is incorrect and enter a suitable replacement value.
IQANdesign User manual
96
Inputs/Outputs
5 Channels
Value
Scaled value. See property Unit. See property Calibration. Analog (Real number)
If you need the raw value instead, use calibrations Min = 0, Max = 5000, Scaled min = 0 and Scaled max = 5000. Unit should be mV.
Status
Low alarm High alarm Low error High error Division by zero Out of range VREF error Inherited module status
Value is lower than the specified low alarm level. Value is higher than the specified high alarm level. Value is below its valid range, see section Error detection on page 96. Value is above its valid range, see section Error detection on page 96. Min equals max. Settings are not within limits. There is an error detected on the VREF this channel is connected to. See section Inherited module status on page 92.
Digital in - DIN A physical input with digital value, False or True. This type of input is mostly used for switches, position sensors and guards. No other properties besides name and description.
Value
97
Inputs/Outputs
5 Channels
Status
Frequency in - FIN A physical analog input. The frequency input channel is used to either count pulses or measure frequency. Typically it is used to measure position (pulse count) or speed, revolutions (frequency). The input signal should be converted to a readable value for the operator. The value can be presented on the display together with the defined unit. For example, if the input signal is a speed, you present the value in km/h instead of the frequency value measured on the channel.
Properties
Unit Type
The unit for the scaled value of this channel. Select Pulse count to use this input to count pulses. Useful for position sensors, etc. Select Frequency to use it as a frequency input. Useful for frequency pick-ups, etc. The value is stored in non-volatile memory so that it is preserved during power off. Only applicable if Type is Pulse count. Select a channel to reset the value. When the resetting channels value changes from False to True, the value of this channel is reset to zero, and it will stay zero as long as the resetting channel is True. Unit is [pulses] if Type is Pulse count, and [Hz] if Type is Frequency. Enter raw sensor value when sensor is in Max position. Enter the scaled value of the sensor Max value. Examples: 785 cm, 2350 RPM, etc. With fast response all frequencies below 20 Hz will be detected as zero. Behavior is module dependant, some modules may have a different function. Please see module documentation for more information. See Alarm properties for Voltage in, page 93.
Store value
Resetting channel
Max
Alarms
98
Inputs/Outputs
5 Channels
Fast response
There is a faster method of detecting zero frequency, but at a sacrifice of low frequencies.
Actual frequency 0 Hz e.g., locked brake Delay before 0 Hz is detected
This method has only an uncertainty of one sample time when a zero frequency is detected.
Value
Scaled value. See property Unit. 7 significant digits Analog (Real number)
If you need the raw value instead, use calibrations Max = 1000 and Scaled max = 1000. Unit should be Hz if Type is set to Frequency.
Status
Value is lower than the specified low alarm level. Value is higher than the specified high alarm level. See section Inherited module status on page 92.
Directional frequency in - DFIN A physical analog input. The directional frequency input channel is used to either count pulses or measure frequency. It is bidirectional, which means it can add/subtract pulses or measure frequency clockwise/counter-clockwise. Typically it is used to measure position (pulse count) or speed, revolutions (frequency) including direction.
Properties
99
Inputs/Outputs
5 Channels
Sensor type
Select sensor type. Quadrature is a sensor with two phase-shifted frequency signals. Frequency/ Direction is a sensor with one frequency signal and a digital signal for the direction.
Value
Scaled value. See property Unit. 7 significant digits Analog (Real number)
If you need the raw value instead, use calibrations Max = 1000 and Scaled max = 1000. Unit should be Hz if Type is set to Frequency.
Status
Value is lower than the specified low alarm level. Value is higher than the specified high alarm level. See section Inherited module status on page 92.
Directional analog channel - DAC These channels are found on IQAN lever modules. There is one channel for each direction X, Y and Z. The value range for each direction is -100% to 100%. Middle position corresponds to 0%. This channel has no other properties besides name and description.
Value
Scaled value. % -100% to 100%, 0% equals center position Analog (Real number)
100
Inputs/Outputs
5 Channels
Current out - COUT A physical analog output. The current output channel is primarily used to control proportional valves.
Properties
Positive direction
Enter a text to describe the positive direction, for example Up, Right or Clockwise. This text is presented to the operator when he is to adjust this output. Enter a text to describe the negative direction, for example Down, Left or Counter-clockwise. This text is presented to the operator when he is to adjust this output. Select Yes to make this output bidirectional. No means it is unidirectional, that is, it can only have a positive value. If you only need the positive direction, for example when controlling a motor, set property Bidirectional to No. In this way you avoid unnecessary errors, such as output high, output low, if you dont have a load connected to the negative output. Also, the negative direction will not appear in the adjust menu, when you adjust this channel. Band Width Limiting. This function will decrease the frequency bandwidth of the output signal whenever the change of the output signal is smaller than BWL window. The bandwidth limit will decrease linearly with smaller changes. When the change of the signal is zero, the bandwidth will also be zero. When the signal change is larger than the window, no bandwidth limitation will be used. This function is particularly good to use for signals that are nervous but where a normal filter would decrease the overall dynamics of the signal, such as joystick control for a crane function. If enabled, this channel will be automatically selected when its output value isnt zero and the user is in adjustment mode. Select a device type for the connected actuator device, e.g., a valve. It will automatically get the correct limits and currents for that device type.
Negative direction
Bidirectional
BWL
Auto select
Device type
101
Inputs/Outputs
5 Channels
Limits
Specify the limits for min and max output and start and stop slopes. These are the limits an operator can adjust this channels parameters within. If you set min and max limit for a parameter to the same value, that parameter will not be adjustable. Select a channel to control the value of this output. The selected channel should have a value range of -100 100%. Input values below -100 or above 100 will result in maximum output (Max current [mA]) in corresponding direction. Select a state channel to use as mode selector. One mode for each state will be added to this channel. A mode is a set of properties. The mode to be used is decided by the value of the state channel. A mode is a set of properties. You can have more than one mode for this channel, see property Mode selector. The first mode is the default mode and it is always available. If you dont specify a mode selector, this is the only mode. Select Yes to make this mode adjustable. You must also add this channel to an Adjust group to be able to adjust it via the master display or IQANrun. Min current for this mode. This current equals command value 0%. Max current for this mode. This current equals command value 100%. Start slope makes the start of this function smoother. If command value changes from 0% to 100%, this is the time it will take for the output to change from min to max value. Stop slope makes the stop of this function smoother. If command value changes from 100% to 0%, this is the time it will take for the output to change from max to min value.
Input channel
Mode selector
Default mode
Adjustable
Device type
See section Device type on page 94. Current output devices have different values than voltage input devices, but the handling is the same.
102
Inputs/Outputs
5 Channels
Adjust
By adding this channel to an adjust group, it is possible to adjust its Min current, Max current, Start slope and Stop slope via the master display or IQANrun. Property Adjustable must be set to Yes for each mode that you want to adjust.
Output characteristics
Current [mA] Max current
Min current
Start slope
Stop slope
t [ms]
Value
Calculated current. mA Dependent on mode and current settings. Analog (Integer number)
Output is disconnected. Current is less than 50% of commanded. Output overloaded. Not able to output commanded current. Current is 50100% of commanded. Settings are not within limits. See section Inherited module status on page 92.
PWM out - PWM A physical analog output. The PWM output channel is primarily used to control Parker Pulsar valves. The properties for a PWM output are the same as for a current output. The difference is the output value, PWM uses modulation ratio in [%], COUT uses [mA].
103
Inputs/Outputs
5 Channels
The output values are defined as pulse width modulation ratio, called MR. To get the perfect output characteristic you have to enter the proper MR and slope time values for each channel.
% MR max MR min time Resulting output signal Function value
MR min
MR max
time
PWM frequency
The PWM frequency is common for all PWM outputs on some modules and separate on others. See details for each specific module in chapter Modules.
Value
Calculated modulation ratio. % Dependent on mode and settings. Analog (Integer number)
Output is disconnected. Actual value is less than 50% of commanded. Output overloaded. Settings are not within limits. See section Inherited module status on page 92.
Digital out - DOUT A physical digital output. The digital output channel is primarily used to control lamps, on/off valves or relays.
104
Inputs/Outputs
5 Channels
Properties
Delay on [ms]
This is the time it will take for the channel value to change to True after the input channel value changes to True. This is the time it will take for the channel value to change to False after the input channel value changes to False. To get a softer activation of an on/off valve function, you can use soft start. Enter the time for the output to rise from zero to full output. Not available on all module types. See section Modules on page 173. To get a softer deactivation of an on/off valve function, you can use soft stop. Enter the time for the output to fall from full to zero output. Not available on all module types. See section Modules on page 173. With Peak and hold you increase the magnets life time. The valve may be equipped with a weaker cabling as you reduce the constant voltage on the magnet which also reduces the heat release. Not available on all module types. See section Modules on page 173. During peak time the output functions as a normal digital output, that is, high output. After peak time the output will function as a PWM output, with a fixed pulse width specified by this property. Select a channel to control the value of this output. You can only select a channel with a digital value.
Input channel
Delay on/off
Use the Delay on to activate the channel a certain time after the Input channel has been activated. Use the Delay off if you want the digital output to be active for a time after the Input channel is deactivated.
NOTE
The channel value will not be affected if the Input channel is activated/ blocked a shorter time than you have specified for the delay on respective delay off. The delay on/off properties works as a debouncing filter.
IQANdesign User manual
105
Inputs/Outputs
5 Channels
Value
Output is disconnected. Output is overloaded. See section Inherited module status on page 92.
Servo out - SOUT The servo output channel is primarily used to control an actuator that controls the speed of a diesel engine.
Properties
Input channel
The input channel is the command value that controls the throttle position. Its value should be 0% - 100%, where 0% equals min RPM and 100% equals max RPM. Select the channel which will activate this servo output. If the enabling channels value is False, the output value is 0. If you select Yes, the servo output will always be active. Closed or open loop. When using closed loop, VIN-A on the same module is used as a feedback channel and is therefore occupied. Proportional regulation constant. Integrating regulation constant.
IQANdesign User manual
Enable
Type
P regulator I regulator
106
Inputs/Outputs
5 Channels
Derivative regulation constant. Select Yes to make this channel adjustable. You must also add this channel to an adjust group to be able to adjust it via the master display or IQANrun. Enter raw sensor value when sensor is in its minimum position. Enter raw sensor value when sensor is in its maximum position.
NOTE
The P, I and D constants are for historical reasons not normalized as they are on a PID channel. Typically you need greater numbers on an SOUT than you would need on a PID.
Adjust
By adding this channel to an adjust group, it is possible to adjust its Min and Max via the master display or IQANrun. Property Adjustable must be set to Yes to be able to adjust it.
Value
Command value. % Open loop: 0% to 100% Closed loop: -100% to 100% Analog (Real number)
107
Calculation channels
5 Channels
Calculation channels
The calculation channels are used to evaluate functions. In a simple application you may use the math channel, internal digital channel and event counter channel. For more complex systems, where you have operations requiring feedback analysis you will use other channels such as PID, memorizing and the integrating limiting channel. Explanations of the calculation channel types and uses are found on the following pages. Mathematical channels - MAC and DMAC There are two types of channels that are primarily used to perform mathematical calculations: Math channel - MAC Dual direction math channel - DMAC These two channel types are identical, except for their limiting object group functionality. Dual direction math has two limiting object groups, one for the positive direction and one for the negative. For functions where you need different limitations depending on direction, such as crane end damping, use a dual direction math channel. Otherwise, use the simpler math channel.
Properties
The unit for the scaled value of this channel, for example [%] or [cm]. This property determines whether the limiting object groups value is treated as a signed or unsigned value. When treated as a signed value, the limiting object groups value must have the same sign as the controlling object groups value to be able to limit the channel value. As unsigned, it will copy the sign from the controlling object group, and will thereby be able to limit the channel regardless of its sign. This is especially useful when you have the same limiting objects in both negative and positive direction. Select a state channel to use as function selector. One function for each state will be added to this channel. The active function is then decided by the value of the state channel.
Function selector
Function
With a DMAC you can create complex functions in both negative and positive direction. If you just want to create simple functions or complex functions in only the positive direction, a MAC is preferable and most common.
IQANdesign User manual
108
Calculation channels
5 Channels
The math channel uses a controlling and a limiting object group. The dual direction math channel uses a controlling and two limiting object groups, one for the positive direction and one for the negative direction. The positive limiting object group is used when the result from the controlling object group is positive, and vice versa.
Value
Calculated function value. See property Unit. 7 significant digits Analog (Real number)
Object errors
Internal digital channel - IDC The internal digital channel is primarily used to perform calculations where the result is either True or False. An internal digital channel has both delay and toggle functionality.
Properties
Toggle
Select Yes to make this channel toggling, that is, it changes output value each time the activating object group changes from False to True.
Activating object group
Channel value
Toggling.
Delay on [ms]
This is the time it will take for the channel value to change to True after the function value changes to True. This is the time it will take for the channel value to change to False after the function value changes to False.
109
Calculation channels
5 Channels
Function selector
Select a state channel to use as function selector. One function for each state will be added to this channel. The active function is then decided by the value of the state channel.
on
Channel value t
The channel value will not be affected if the input signal is to short. NOTE
The channel value will not be affected if the function is activated/blocked a shorter time than you have specified for delay on respective delay off. The delay on/off properties work as a debouncing filter. There is an exception to this rule when delay on/off is used in combination with toggle and/or latching function. Then it will not act as a debouncing filter but just as a delay. If toggle is used in combination with latching, the toggle function is ignored.
Function
An internal digital channel uses one activating and one blocking object group. The blocking object group has higher priority than the activating group.
Value
Same status values as a math channel, see section Status on page 109. PID regulator - PID The PID regulator is used to do closed loop control, for example a straight-lift function for a crane.
Properties
Command channel
110
Calculation channels
5 Channels
Select the channel representing the feedback value. Proportional regulation constant. Integrating regulation constant. Unit is [gain/s]. Derivative regulation constant. Select the channel which will activate the regulation. The regulator is active when the channel value is True. If you select Yes, the regulator function will always be active. When disabled, the integrating part is reset to 0 and channel value is set to 0. Select Unipolar when the regulation only will be used in one direction, for example to control a hydraulic motor. Select Bipolar when the regulation will be used in both negative and positive direction, for example to control a crane swing.
Output range
Command value
+ -
Control error
Regulator
Control value
Controlled object
Feedback value
The command value is the reference value that the regulator tries to follow. The feedback value is the actual value measured at the controlled object and is used as a feedback signal. The control value is the output value from this channel. The purpose of that value is to run the controlled object, for example wheel-steering or straight lift, in the correct direction and thus reduce the control error.
Control error = Command value - Feedback value
There is no such thing as a perfect regulator. It is necessary to compromise between the accuracy and stability. There is a risk that a system will experience self-induced oscillation. With this in mind, you must select the correct type of regulation.
111
Calculation channels
5 Channels
There are three ways of regulate so that the actual value follows the command value with the least control error possible.
Proportional regulation - P
The control value UT is affected proportionally to deviations between the command value and the feedback value.
UT
PxT
The control error is measured at every point in time T and multiplied with a constant P so that the control value UT is changed proportionally with the size of the control error. With proportional regulation, an error usually remains when the regulation is finished.
EXAMPLE
To regulate the bucket on a wheel loader, you can solve this with a P regulator. To measure the feedback value, use an inclinometer or angle sensor, which measures the buckets gradient. When you use the P regulator, the value of the current is proportional to the bucket gradient error, which is often sufficient for such a function. When you theoretically trim a P regulator, you increase the P constant until the system has a tendency to self-oscillate and then reduce the value a bit.
ATTENTION
Remember that a self-oscillating system can cause unnecessary risk for the people and machine function.
Integrating regulation - I
(t = T)
UT
= Ix
(t = 0)
At the time T, the control error, T, is added with previously measured control errors and then multiplied with a constant I. With an integrating part, you get a more accurate regulation. With proportional regulation only, there is normally an error remaining between the command value and the feedback value when the regulation is completed. With an integrating regulation, however, there is a greater risk of getting an unstable system.
112
Calculation channels
5 Channels
Here, you must compromise between the degree of accuracy and stability. You often use both proportional and integrating actions simultaneously, called PI regulation.
EXAMPLE
The straight lift function for a crane. When the machine lifts a container, the COG (center of gravity = the distance between the front wheels centre to the middle of the load), is held constant. When the boom angle increases, the telescope is extended so that the COG will be constant. For this you use a PI regulator to regulate the telescope function.
The command value = COG just before the start of the regulation + Feedback value = COG
Command value
Control error
PI Regulator
Control value
Telescope
Block diagram of the control system for the straight lift function.
On the lever used to maneuver the boom, there is a button to press when you want to use the straight lift function. When the button is pressed, the value of COG is stored so that if can be used as the command value for the regulator. When the straight lift function is activated, you cannot maneuver the telescope with the lever, instead the regulator controls the telescope in and out. To get the COG constant, we use a PI regulator where the integrating action is required so an error does not remain when the boom reaches its upper end.
NOTE
The value of a PID channel is not allowed to exceed 100% (or -100% respectively for bipolar regulators). Therefor the integrating part can be temporarily disabled by the regulator to ensure channel value stays within range. This feature is called anti-windup.
Derivative regulation - D
The derivative regulation is not used often. It is used to prevent fast changes, disturbances in the regulation, for example, if the wheels in a closed loop are loaded less than normal which makes the control of the angle faster. The feedback value is suddenly changed which the regulator must compensate for.
UT
Dx(T (T 1))
113
Calculation channels
5 Channels
The control error at time T is compared with the control error in the previous measure and also multiplied with a constant D. If the difference between the control error is to great, this is compensated for. The derivative action is used together with proportional regulation, called PD regulation. It is also possible to equip a PI regulator with the D action which will then be a PID regulator. For a PID regulator, the following applies:
(t = T)
UT
The simplest way to trim a regulator in practice, is by testing. Start with the P constant. Supplement with an I constant if necessary. For more information on the different control techniques, we have to refer to literature on the subject.
Value
Calculated control value, see above. % Unipolar: 0% to 100% Bipolar: -100% to 100% Analog (Real number)
Out of range
Integrating limiting channel - ILC The integrating limiting channel is typically used for power regulation or max regulation, that is, to control the power or vehicle speed so that it does not exceed its limits. The functionality of this channel could be compared to a PID regulator that only uses the I-part, and where the I-part varies depending on the value of the input channel. The ILC will then be used as a limiting object in a function.
114
Calculation channels
5 Channels
S Y2
Y1 E E
Properties
Output Enable
Specify Normal or Inverted regulation. Select the channel which will activate the regulation. The regulator is active when the channel value is True. If you select Yes, the regulator function will always be active. When disabled, the integrating part is reset to 0 and channel value is set to 0 (or 100 for "Inverted" regulation). Select an input channel for the regulation. The value of the input channel where the reduction will start. Specify the maximum error relative to the value Start reduction at. Maximum increase speed when input value is less than Start reduction at - Max error (S - E).
Input channel Start reduction at (S) Max error (E) Max increase speed [%/s] (Y2)
Max decrease speed [%/s] Maximum decrease speed when input value is greater (Y1) than Start reduction at + Max error (S + E).
The channels output value is 0 - 100%, where the idle value is 100%. If the input channels value is above the start reduction value, the output value will decrease linearly with the Max decrease speed, that is, the decrease speed is proportional to the error value. If the input channels value is below the start reduction value the output value will increase proportionally to the error value.
115
Calculation channels
5 Channels
EXAMPLE
Controlling the diesel engine of a vehicle. The maximum speed of the transmission should not exceed 4100 RPM. If so, we should decrease the position of the gas actuator. Input channel= Vehicle speed Start reduction at (S) = 4100 RPM Max error (E) = 200 Max increase speed [%/s] (Y2) = 10 Max decrease speed [%/s] (Y2) = 20 The output value of this channel will decrease when the vehicle speed exceeds 4100 RPM. If it exceeds the 4300 RPM the output will decrease with the speed of 20%/second. When the vehicle speed is exactly 4100 RPM the output value will be stable at its latest value. And finally when the vehicle speed goes below 4100 RPM the output value will start to increase again. Finally we will use this channel as a limiting object for a MAC that controls the servo output, to achieve the max speed function.
Value
No further status values except the standard statuses; Disabled and OK. Event counter - ECNT This channel is used to count events, for example how many times a specified condition has been fulfilled. You can increase, decrease or reset the channel value. The resetting objects have the highest priority. The event counter channel counts on rising edge, every time a condition becomes true.
116
Calculation channels
5 Channels
Properties
Store value
The value is stored in non-volatile memory so that it is preserved during power off. Will also make it possible to use this channel in an adjust group. At start-up and when reset by its function or via an adjust item, the channel will be set to this value. Select a state channel to use as function selector. One function for each state will be added to this channel. The active function is then decided by the value of the state channel.
Adjust
By adding this channel to an adjust group, it is possible to adjust its value with IQANrun. Property Store value must be set to Yes to be able to adjust it. Reset value will be used when channel is reset.
Function
An event counter has increasing, decreasing and resetting object groups. The resetting object group has the highest priority. The counter is incremented (or decremented) when the increasing (or decreasing) object group switches from False to True. This is valid also when an object group turns True because of a state change. When the resetting object group switches from False to True, the channel value is reset to the value defined by property Reset value. As long as the resetting object group is True, the counter is not affected by the increasing or decreasing object group.
T1, T2 > two times cycle time T1 T2 t Decreasing object groups value t Resetting object groups value t Counters output value t Increasing object groups value
117
Calculation channels
5 Channels
Value
Value not within valid range, see above. See section Propagated object status on page 92.
Memorizing channel - MEM This channel is used to memorize, accumulate or subtract the value of a defined input signal at a certain condition.
Properties
Select the channel whose value you want to memorize. Specify what action you want when a memorize is triggered, that is, when the function value for this channel changes from False to True. Select Replace to replace the memorized value with the input channels value. Select Add to add the input channels value to the memorized value. Select Subtract to subtract the input channels value from the memorized value. The value is stored in non-volatile memory so that it is preserved during power off. Will also make it possible to use this channel in an adjust group. At start-up and when reset by its function or via an adjust item, the channel will be set to this value. Select a state channel to use as function selector. One function for each state will be added to this channel. The active function is then decided by the value of the state channel.
Store value
118
Calculation channels
5 Channels
Adjust
By adding this channel to an adjust group, it is possible to adjust its value with IQANrun. Property Store value must be set to Yes to be able to adjust it. Reset value will be used when channel is reset.
Function
A memorizing channel uses two object groups: activating and resetting. The resetting object group has the highest priority. The channel value is updated using the selected Action when the activating object group switches from False to True. This is valid also when the object group turns True because of a state change. When the resetting object group switches from False to True, the channel value is reset to the value defined by property Reset value. As long as the resetting object group is True, the channel is not affected by the activating object group.
NOTE
The Memorizing channel memorizes on rising edge, that is, when the value switches from False to True.
Activating object groups value T1 T2 t Resetting object groups value t Input channels value t
Value
Memorized value. Same as input channel. 7 significant digits Limited range -2109 - 2109 when using Add or Subtract. Analog (Real number)
Type
119
Calculation channels
5 Channels
Status
Invalid result when using action Add or Subtract, (-2109 > Result > 2109). See section Propagated object status on page 92.
Slope/Filter channel - SFC The slope/filter channel is used to apply slope times, BWL, filter or moving average to another channel.
Properties
Select the input channel that you want to apply slope times, BWL, filter or moving average to. Select the channel which will activate the filtering. If this channels value is False, the output value equals the value of the input channel, that is, it is not filtered at all. If you select Yes, the filtering will always be active. Select type Slopes, BWL, Filter or Moving average. Enter start and stop slope values, for positive and negative direction, in [unit]/s. Band Width Limiting. This function will decrease the frequency bandwidth of the output signal whenever the change of the output signal is smaller than BWL window. The bandwidth limit will decrease linearly with smaller changes. When the change of the signal is zero, the bandwidth will also be zero. When the signal change is larger than the window, no bandwidth limitation will be used. This function is particularly good to use for signals that are nervous but where a normal filter would decrease the overall dynamics of the signal, such as joystick control for a crane function. Specify a filter value for this channel. 0 equals no filter effect at all, and 100 equals maximum filter effect. Specify a window size for the moving average filter. This is the number of samples used for calculating the average, which is then used as the channel value.
120
Calculation channels
5 Channels
Slopes
With slopes you can state the maximum changing speed of the signal. The changing speed for increasing and decreasing value can be set independently. Start slope specifies maximum changing speed for increasing values and stop slope for decreasing values. Start and stop slopes are defined in Unit/s where Unit is the input channels unit.
Value [Unit] Input Output Stop slope Start slope Time [s]
Step response for analog input signal when using start and stop slopes.
Filter
Type Filter is a fast and simple filter that can be used to attain greater stability in the channels signal.
Input Value [Unit] Output
90%
0.1
0.2
0.3
0.4
0.5
Time [s]
Approximate step response for analog input signal at 50 ms cycle time, four different filter values.
BWL
Type BWL is a variable version of SFC type Filter, see above, where the filter value is decided by the size of the signal change.
121
Calculation channels
5 Channels
BWL value is defined in the same unit as the input channels unit.
EXAMPLE
Input channel is a lever signal (0 to 100%). To filter out small changes in the input value we use a BWL value of 20%. All input value changes smaller than 20% will now be filtered, with smaller changes giving more filter effect. For example: If the input signal changes from 20% to 24% between two system samples, the signal change is 4%. 4% signal change gives us a filter value of 80%. The channel is then filtered using SFC type Filter with a filter value of 80%. If the input signal instead changes from 20% to 50%, the signal change is 30%. Since the signal change is larger than the BWL value, the filter value is 0%, which means no filtering at all.
Value
Filtered value. Same as input channel. Same as input channel. Analog (Real number)
Calculation result too large. Invalid slope time (negative), or 0 > BWL > 100, or 0 > Filter > 100. Only applicable when these properties are controlled by a channel.
Butterworth filter channel - BFW The Butterworth filter channel is used to apply a low pass, high pass, band pass or band stop filter to another channel.
122
Calculation channels
5 Channels
Properties
Select the input channel that you want to apply a Butterworth filter to. Select the channel which will activate the filtering. If this channels value is False, the output value equals the value of the input channel, that is, it is not filtered at all. If you select Yes, the filtering will always be active. Select type Low pass, High pass, Band pass or Band stop. Enter the desired order of this filter. For low pass and high pass, this is the number of poles. For band pass and band stop, the number of poles is twice the order.
Type Order
First cutoff frequency [Hz] The cutoff frequency is the frequency at which the magnitude of the response is -3 dB. It must be greater than 0 and smaller than half the system sample frequency, 0 < Cutoff frequency < 1/(2*System cycle time). Band pass and band stop filters have two cutoff frequencies, see next property. The first frequency must be smaller than the second. Second cutoff frequency [Hz] The cutoff frequency is the frequency at which the magnitude of the response is -3 dB. It must be greater than 0 and smaller than half the system sample frequency, 0 < Cutoff frequency < 1/(2*System cycle time). Band pass and band stop filters have two cutoff frequencies, see previous property. The first frequency must be smaller than the second.
Value
Filtered value. Same as input channel. Same as input channel. Analog (Real number)
Calculation overflow
123
Calculation channels
5 Channels
Out of range
Lookup table channel - LTC The lookup table channel provides a two dimensional array with a row and column selector channels to select the channel output value. If the row and/or column selector does not match a specific row/column the output value will be interpolated or selected from the closest cell depending on configuration.
Properties
Unit of the lookup table output value. The row selector is used to select which row that the channel's value shall be taken from. This may be a channel or a constant value. The column selector is used to select which column that the channel's value shall be taken from. This may be a channel or a constant value. This property defines the behavior of the channel when the row and/or column selector does not match a row/ column index value of the table. When interpolation is enabled the channel value will be determined by using bilinear interpolation, otherwise the closest defined value will be used. A two dimensional array of values defining row and column indices as well as output values of the channel. The values are edited using a special dialog (see below).
Column selector
Interpolation
Lookup table
The lookup table values are edited using a special editor dialog. This dialog is opened by clicking the button next to the lookup table property. The column indices is entered in the first row and the row indices in the first column. The rest of the grid is used to enter the output values of the channel corresponding to the row and column selector values. The values can be exported and imported using semicolon delimited text files. It is also possible to paste values to the table from e.g. spreadsheet programs.
124
Calculation channels
5 Channels
Value
Calculated value. See property Unit. 7 significant digits Analog (Real number)
Calculation result too large. Row or column input value is outside the range defined by row or column index.
125
Miscellaneous channels
5 Channels
Miscellaneous channels
The channel types in this chapter have no common denominator such as the Inputs/Outputs or the Calculation channels. Under the Miscellaneous tab you will for instance find channels for multifunction, system and module diagnostics. Function group input - FGI The function group input channel is used to bring values into a function group from its parent group, for example a crane function group may need a joystick position from its parent group. Each function group input can be protected with input type and min/max limits. For further information about this channel type, see section Function group input on page 58.
Value
Same as inputs value. See property Unit. See properties Min limit and Max limit. See property Input type.
Input value is outside the range defined. Inherits the status from the input channel (if applicable) when not out of range.
Function parameter - FP The function parameter channel is used as an adjustable constant in functions, for example max speed, pressure limit, etc. You can adjust the function parameter value via the master display or IQANrun. When you develop an application for a machine, you often need to change or adapt a lot of values during a test. For example, you may need to adapt the PID parameters during tuning of the control loop or perhaps change the limit values for an object. For this you can use function parameters. Another example of when it is a good idea to use function parameters is when several functions or objects refer to the same parameter, for example a max or min limit. Then you only have to change the value in one place and the values will automatically be updated wherever you have used the function parameter.
126
Miscellaneous channels
5 Channels
Properties
The unit for the scaled value of this channel. Minimum value allowed for this channel value. Maximum value allowed for this channel value. Specify how much the value should increase/decrease for each step the jog-shuttle is turned. When the jogshuttle is turned rapidly, a larger step size will be used. Select a state channel to use as mode selector. One mode for each state will be added to this channel. A mode is a set of properties. The mode to be used is decided by the value of the state channel. A mode is a set of properties. You can have more than one mode for this channel, see property Mode selector. The first mode is the default mode and it is always available. If you dont specify a mode selector, this is the only mode. The default value for this mode. Select Yes to make this mode adjustable. You must also add this channel to an Adjust group to be able to adjust it via the master display or IQANrun.
Mode selector
Default mode
Adjust
By adding this channel to an adjust group, it is possible to adjust its value via the master display or IQANrun. Property Adjustable must be set to Yes to be able to adjust it.
Mode selector
It is possible to have several values for a Function parameter. If you select to use a state channel as a selector of the different FP values, you will be able to have as many different parameter value as the number of states that are specified in the state channel.
Value
Fixed value, or value set by user if adjustable. See property Unit. See properties Min and Max. Analog (Real or Hexadecimal number)
127
Miscellaneous channels
5 Channels
Status
No further status values except the standard statuses; Disabled and OK. State machine channel - SMC The state machine channel is used to select the active state for a multi-state component, for example active mode for a current output, or active function for a math channel. You can add as many states as you like to your state machine. Each state has its own function to decide which state should be active. The first state with function value = True, becomes the active state.
Properties
This name is used for the default state. The default state is the active state when no other state is active.
Function
A state machine has one function for each state, except for the default state. Each function is calculated using one activating and one blocking object group. Functions are calculated in consecutive order. The first function that evaluates to True, decides the value of the state machine, that is, the active state. If no function is True, the active state is the default state, which corresponds to value 0. When an activating object group for a states function is latched (by using one of the latching object group methods), it can be released by either the blocking object group in the same function or a preceding states function going true. Add states by right-clicking on the function tabs in the function inspector and select Add State in the popup menu. To rename a state, select its tab in the function inspector and enter a name in the property inspector. Each function also has a description property. If you need to rearrange your states, you can move a state to another position. Drag its function (state) tab and drop it on the tab where you want it. When states are renamed or rearranged, all components using that state machine will be updated with the new state names or order, except for function group input channels which have to be updated manually (see section Function group input - FGI on page 126 for more information).
Value
Calculated state, see above. n/a One of the available states. State
IQANdesign User manual
128
Miscellaneous channels
5 Channels
Status
Object errors
State parameter - SP State parameter is an adjustable state machine, which means the user can control the active state by setting the value of this channel. The states can be selected from the adjust menu in the master or controlled by another channel, for example an event counter or a math channel.
Properties
Input channel
Select a channel to control the active state, or select Adjustable and add this channel to an adjust group to control the state manually via the master display or IQANrun. This name is used for the default state. The default state is the active state when no other state is active. Press the + button to add states to the state machine. Enter a descriptive name for each state.
By adding this channel to an adjust group, it is possible to adjust its active state via the master display or IQANrun. Property Input channel must be set to Adjustable to be able to adjust it.
Rearrange states
You can move a state by dragging its property name in the property inspector. Drop it on the state property where you want to insert it. When states are renamed or rearranged, all components using that state parameter will be updated with the new state names or order.
Value
Active state controlled by input channel, or state selected by user if adjustable. n/a One of the available states. State
129
Miscellaneous channels
5 Channels
Status
Out of range
Module diagnostics - MDGN The module diagnostic channel is used to measure different module related values, such as Supply voltage, Temperature and Module status. Different modules have different diagnostic values that can be measured. To assign a module diagnostic channel to a module, drag it to the module in the application manager or create it directly in the module view by right-clicking on one of the module diagnostic pins and select Add channel. To change the value that is measured just move the channel to the corresponding pin in the module view. This channel can be used as an input to another channel or object.
Diagnostic values
Module status
Current status of module, for example 64 = OK or 203 = No contact. See module status value table below. Range: 0 - 255 Type: Analog (Integer number) Module serial number. Type: Text The modules internal temperature, for example 45.70 C. Type: Analog (Real number) The modules supply voltage, for example 28.45 V. Type: Analog (Real number) The modules reference voltage, for example 5.00 V. Type: Analog (Real number) The modules id tag value (CAN address), 0 or higher. (-1 = Unknown address). Range: -1 - 7 Type: Analog (Integer number) J1939 lamp indicator, False=Off and True=On. Only applicable for J1939 modules. Type: Digital
Not evaluated
IQANdesign User manual
130
Miscellaneous channels
5 Channels
OK High temperature Low supply voltage High supply voltage RTC not connected No contact Multiple address VREF error
Value is set to diagnostic value from actual module. See table Diagnostic values above. See table Diagnostic values above. See table Diagnostic values above.
System input - SYSIN The system input channel is used to set different system values, such as backlight and display buttons.
Properties
Type
131
Miscellaneous channels
5 Channels
Select a channel to control the value of this system input. Enables or disables this system input. States if the system input channel should override the default input or if they should work in parallel. Note that the backlight system input will always override the internal backlight function when it is enabled.
Type constants
Backlight Button A-D Button F1-F5 Button up/down Button OK Button menu Button back
Value
Controls the backlight. Controls the buttons A-D (only available on the MDL master module). Controls the buttons F1-F5 (on the MD3 master module only F1-F4 are available) Controls the up and down buttons on the MD3 and the corresponding jog functions on the MDL. Controls the OK button on the MD3 and the jog button on MDL. Controls the menu button. Controls the back button.
Input channels value. Same as input channel. Same as input channel. Same as input channel.
No further status values except the standard statuses; Disabled and OK. System output - SYSOUT The system diagnostic channel is used to measure different system related values, such as Utilization, Weekday and Modem status. There is only one property, Value, which specifies the value this channel will represent.
132
Miscellaneous channels
5 Channels
Value constants
Measures utilization of the master processor, that is, how much time of each system cycle the processor is busy. If this value is close to or above 100% you need to increase the system cycle time, see master module properties. When value is above 80% the channels status will be High alarm. When above 100%, status will be High error. Type: Analog (Real number) Measures the system cycle time. This is the same value as you set in the master module properties. Type: Analog (Integer number) Measures utilization of the internal RAM memory, that is, how much space is occupied. If this value is close to or above 100% you need to decrease the size of your application by removing some components. When value is above 85% the channels status will be High alarm. Type: Analog (Real number) Measures utilization of the internal RAM memory, that is, how much space is occupied. If this value is close to or above the actual RAM size of the master module, you need to decrease the size of your application by removing some components. Actual RAM size can be found in the master module's data sheet. Estimated memory utilization can be displayed at design time in IQANdesign with the help of application statistics. Type: Analog (Real number) 0 = Not present 1 = OK 2 = Memory almost full 3 = Full 4 = Error 5 = Init 6 = Memory check Type: Analog (Integer number)
133
Miscellaneous channels
5 Channels
System status
0 = System OK 1 = There are one or more alarms active (not acknowledged) 2 = There are one or more errors active (not acknowledged) Type: Analog (Integer number) 1 = Monday and 7 = Sunday (ISO 8601-compliant). Type: Analog (Integer number) Todays date. Example: 2004-08-27. When used as a numerical value in a function or property, its value is the number of days that have passed since 1899-12-30. See also property Date format on Display pages. Type: Analog (Integer number) The actual time. Example: 18:15:00 (a quarter past six). When used as a numerical value in a function or property, its value is hours elapsed since midnight, for example 18.25. See also property Time format on Display pages. Type: Analog (Real number) 0 = Unavailable 1 = Initializing 2 = Searching 3 = Idle 4 = Calling 5 = Line is open 6 = PIN code error 7 = No SIM card Type: Analog (Integer number)
Time
Modem status
Modem signal quality [%] 0 - 100%. 0% = no signal, 100% = best signal quality. Type: Analog (Integer number) SMS available SMS (Short Message Service) availability, False = not available, True = available. Type: Digital 0 = default language selected, 1 = first language selected, etc. Type: Analog (Integer number) Index for the display page that is currently displayed on the master display. Each display page index can be found in the display page list, column Order. Type: Analog (Integer number)
Selected language
134
Miscellaneous channels
5 Channels
Application name Application version Application id Machine id User name User level User tag
The name of this application. Type: Text The version for this application. Type: Text The id for this application. Type: Text Unique id for each machine, usually set in production. Type: Text The name of the currently logged in user. Type: Text The access level of the currently logged in user. Type: Analog (Integer number) The tag of the currently logged in user. Type: Analog (Integer number)
Value
Value is set to selected diagnostic value from system. See table Value constants above. See table Value constants above. See table Value constants above.
Used for values Cycle utilization and Memory utilization. Used for value Cycle utilization.
Timer - TMR The timer channel is used for timekeeping, delays, hour counters, etc. The timers value can either increase, decrease or be reset. It can never be negative, 0 is the smallest valid value. The timer starts to count when its function becomes True. The internal resolution is the same as the cycle time (pre-set to 50 ms). You can choose to present the value as Milliseconds [ms], Seconds [s], Minutes [min] or Hours [h].
135
Miscellaneous channels
5 Channels
Properties
Select the resolution of your timer, Milliseconds. Seconds, Minutes or Hours. The value is stored in non-volatile memory so that it is preserved during power off. Will also make it possible to use this channel in an adjust group. At start-up and when reset by its function or via an adjust item, the channel will be set to this value. Select a state channel to use as function selector. One function for each state will be added to this channel. The active function is then decided by the value of the state channel.
Adjust
By adding this channel to an adjust group, it is possible to adjust its value with IQANrun. Property Store value must be set to Yes and property Type must be set to Hours to be able to adjust it. Reset value will be used when channel is reset.
Function
A timer uses increasing, decreasing and resetting object groups. The resetting object group has the highest priority and the decreasing object group has higher priority then the increasing object group.
Value
Elapsed time. See property Type (Unit). 7 significant digits Milliseconds: 0 - 2109 Seconds: 0 - 2106 Minutes: 0 - 33 333 333 Hours: 0 - 555 555,6 Analog (Real number)
Type
Status
Calculation result too large. See section Propagated object status on page 92.
136
Interface channels
5 Channels
Interface channels
The channels in this chapter are used to present information and to interact with the operator or other personnel. There are channels for showing different types of messages on the master display. Some messages are interactive and the action depends on how the operator interacts, acknowledging the messages. With a GSM modem you are able to send and receive SMS messages. For example, the machine can send service messages to home base or receive messages that adjust some specific parameter. Text parameter - TP The text parameter channel has adjustable text, which means the text can be changed by the user from the master display or IQANrun. A text parameter can have multiple texts. The active text is then selected with a state channel.
Properties
Maximum number of characters. Select a state channel to use as mode selector. One mode for each state will be added to this channel. A mode is a set of properties. The mode to be used is decided by the value of the state channel. The default text. Select Yes to make this mode adjustable. You must also add this channel to an Adjust group to be able to adjust it via the master display or IQANrun.
Text Adjustable
Adjust
By adding this channel to an adjust group, it is possible to adjust its value via the master display or IQANrun. Property Adjustable must be set to Yes for each mode you want to adjust.
Value
No further status values except the standard statuses; Disabled and OK.
IQANdesign User manual
137
Interface channels
5 Channels
Text formatting channel - TFC The text formatting channel is used to create a formatted text that can be sent as SMS, logged or presented on the display.
Properties
Delimiter
Enter a text here to use as delimiter between each text added below, see property Texts. Example: Text 1 is Red, Text 2 is Green and Text 3 is Blue. If delimiter is , (a comma and a space), this channels value will be Red, Green, Blue. The texts added here are all concatenated to produce this channels value. Example: Text 1 is Temp = and Text 2 is the value of a voltage input measuring temperature. This channels value will then be Temp = 20.3. Enter a text or select a channel. If you select a channel you also need to specify what information to show, see property Show. Specify what type of information to show. You can select Value, Name, Unit or Name and unit. Example: Channel is named Temperature with unit C and value 25.2. Name and unit will show Temperature [C], Value will show 25.2, etc. Specify how many decimals you want.
Texts
Text
Show
Number of decimals
Value
No further status values except the standard statuses; Disabled and OK. Conditional message - CMSG The conditional message channel is used to show a dialog box on the master display in different situations, for example a warning indicating overload. The dialog box is displayed in a window on top of the normal display pages. The dialog box window is smaller than the total screen size, as opposed to a display page which always fills the entire screen. This means that the underIQANdesign User manual
138
Interface channels
5 Channels
lying display page will be visible around the dialog box. All display page buttons will be disabled though, and instead used for controlling the dialog box as long as it is visible.
Alarm message.
There are seven types of dialog boxes that can be shown. The dialog types are prioritized in a certain order: Message has the lowest priority and Critical has the highest. Dialog boxes with higher priority is always shown before dialog boxes with lower priority. The dialog levels from low to high priority are as follows: Message Information Confirmation Warning Alarm Error Critical
NOTE
System generated dialog boxes uses types Message, Alarm and Error. All types have their own icon and header so the user can easily recognize the type of dialog box when it pops up on the master display.
Properties
Dialog type
Select a dialog type. The dialog type decides the priority level. Message has the lowest priority and Critical has the highest. Dialogs with higher priority are always shown before dialogs with lower priority. System generated messages use types Message, Alarm and Error. Enter a header for your dialog. You can also select a text channel to use its value as header.
Header
139
Interface channels
5 Channels
Enter a text. You can also select a text channel to use its value as text. Select a channel that you want displayed together with your message. Channel name and value will be shown. Enter a descriptive text for this message. The user can read this text by pressing the help button. You can also select a text channel to use its value as help text. Select a state channel to use as function selector. One function for each state will be added to this channel. The active function is then decided by the value of the state channel.
Function selector
Function
The conditional message channel has two object groups. One for showing the dialog box and one for hiding it. The hiding object group has higher priority than the showing object group. The dialog box is shown when the showing object group turns True. It will be visible until the user acknowledges it by pressing OK, or until the hiding object group turns True.
NOTE
The showing and hiding is only edge triggered, not level triggered. This means that even if the hiding object group is true, the message will be displayed when the showing object group switches from False to True. If both showing and hiding object groups turns True at the same time, hiding will have higher priority and the message will not be displayed. Dialog box visibility is also triggered by state changes that causes the showing object group to turn true. Example: If the active state changes and the showing object group of the new active state is true, the dialog box will be triggered to be displayed.
Value
Value
Function value. When the showing object group goes True the channel value is set to 1 (Active). When the hiding object group goes True the channel value is set to 0 (Inactive). n/a False (= 0) or True (= 1) Digital
IQANdesign User manual
140
Interface channels
5 Channels
Status
Object errors
Interactive message - IMSG The interactive message channel is used to interact with the driver. It is similar to the conditional message channel (CMSG). The interactive dialog box is displayed in a window on top of the normal display pages. See section Conditional message - CMSG on page 138 for more information. The channels value can be Active or Inactive, but also Left, Center or Right depending on which button the driver pressed to acknowledge the message.
Properties
Dialog type
Select a dialog type. The dialog type decides the priority level. Message has the lowest priority and Critical has the highest. Dialogs with higher priority are always shown before dialogs with lower priority. System generated messages use types Message, Alarm and Error. Enter a header for your dialog. You can also select a text channel to use its value as header. Enter a text. You can also select a text channel to use its value as text. Enter a text that you want displayed above the button on the master display. Please note that the complete text may not always fit. Select a channel that you want displayed together with your message. Channel name and value will be shown. Enter a descriptive text for this message. The user can read this text by pressing the help button. You can also select a text channel to use its value as help text. Or, enter an HTML tag that points to the help topic for this message. If you specify help for this message, you cannot use button Right. This button will be the help button. Select a state channel to use as function selector. One function for each state will be added to this channel. The active function is then decided by the value of the state channel.
Channel Help
Function selector
141
Interface channels
5 Channels
Function
The interactive message channel has the same type of object groups as the conditional message channel.
Value
Value
When the showing object group goes True the channel value is 1 (Active) until the user presses a button. The channel value will then correspond to the pressed button until the hiding object group goes True which will set the channel value to 0 (Inactive). n/a 0 (Inactive) 1 (Active) 2 (Left) 3 (Center) 4 (Right) 5 (ESC) The dialog box is not visible The dialog box is visible User pressed the left button User pressed the center button User pressed the right button User pressed the ESC button
Unit Range
Type
Status
Object errors
PIN code channel - PCC The PIN code channel is used to protect other parts of your application, such as adjust groups, measure groups, logs or display pages. It is an interactive channel that provides a dialog box for entering a PIN code. The dialog box is displayed in the same way as a conditional message (CMSG) dialog box. It is placed on top of all other dialog boxes visible at the same time (except for some rare system messages).
142
Interface channels
5 Channels
Properties
Enter a header for your dialog. You can also select a text channel to use its value as header. Enter a text. You can also select a text channel to use its value as text. Enter the PIN code that the user has to enter to unlock the components protected by this channel. A PIN code is always four digits, for example 0472. Select Yes to make the PIN code for this channel adjustable. You must also add this channel to an adjust group to be able to adjust it via the master display or IQANrun. Select a state channel to use as function selector. One function for each state will be added to this channel. The active function is then decided by the value of the state channel.
Adjustable
Function selector
Function
The PIN code channel has two object groups. One for showing the dialog box and one for resetting its value. The dialog box is shown when the showing object group turns True. It will be visible until the user enters the correct PIN code or presses Cancel. When the correct PIN code has been entered the channel value goes True. It stays True until power off or the resetting object group goes True. As long as the channel value is True, there is no need to enter the PIN code again. Therefor the dialog box will not allow PIN code entering, and instead shows the message PIN code has already been entered.
NOTE
The showing and resetting object groups are edge triggered, not level triggered.
Value
Value
When the correct PIN code has been entered the channel value goes True. It stays True until power off or the resetting object group goes True. n/a False (= 0) or True (= 1) Digital
IQANdesign User manual
143
Interface channels
5 Channels
Status
Object errors
Adjust groups and logs
Adjust groups and logs can refer to a PIN code channel instead of defining their own PIN code. Such PIN code channels dont need a showing function, although they are allowed to have one. As long as the PIN code channel value is False, its dialog box will be shown when the corresponding adjust group or log is selected on the master display. When using IQANrun, only the PIN code from the PIN code channel is used, not the header and text. After the correct PIN code has been entered, the PIN code channel value turns True and the adjust group and/or log is unlocked and displayed. The adjust group and/or log stays unlocked until the PIN code channel value turns False (by its resetting object group or at power off). Multiple adjust groups and/or logs can use the same PIN code channel and thereby be unlocked at the same time. SMS in - SMSIN The SMS input channel is used to read values from incoming messages via SMS (Short Message Service). Make sure the GSM modem is enabled and operational if you are using this channel. The SMS input channel can be used if you want to set or change a value, activate some function or just show a text in the application. The message is sent from a GSM phone or modem.
Properties
The unit for the scaled value of this channel. This is the user-definable text that has to match the incoming message. It can be used as a variable name, descriptive command and/or password. The text is case sensitive. When an SMS is received, it is matched against all SMSIN channels to find the tag that corresponds to that message. To allow access from only some specified phone numbers, add them here. An incoming message is handled if its phone number matches one of the numbers specified. If none are specified, any phone number has access.
Phone numbers
144
Interface channels
5 Channels
Phone number
Phone numbers are matched backwards, that is, you can choose not to specify country code and/or area code. Example: 709474416 will match phone numbers +46709474416 (international) or 0709474416 (local). Analog: Makes this an analog value channel. Its value is set from an incoming message and the syntax to set it is <Identification tag>=<Value>. Example: Max=50 will set the value to 50 if the property Identification tag equals Max. Please specify unit, min/max limits and default value as well. Digital pulse: Makes this a digital value channel. Its value is False until a message is received that matches property Identification tag. Then its value is True for one cycle (see Cycle time on master module). Text: Makes this a text channel. Its value is set from an incoming message and the syntax to set it is <Identification tag>=<Value>. Example: Name=Mike will set the value to Mike if the property Identification tag equals Name. Please specify max number of characters for value and a default value as well.
Type
Minimum value allowed for this channel value. Maximum value allowed for this channel value. The default value for this channel. A reply is sent back to the sender when message has been handled. Enter a text or select a channel to use as reply text. If you dont want a reply to be sent, select Not used. Select Default to send a default acknowledgement.
Adjust
By adding this channel to an adjust group, it is also possible to adjust its value via IQANrun. Property Type must be set to Analog or Text to be able to adjust it.
Value
Analog Digital pulse Text
145
Interface channels
5 Channels
Value is set from incoming SMS that matches the Identification tag. See property Unit n/a n/a 31 characters Text
See properties Min False (= 0) and and Max True (= 1) Analog (Real number) Digital
Status
No further status values except the standard statuses; Disabled and OK. SMS out - SMSOUT The SMS output channel is used to send messages via SMS (Short Message Service) to external systems/GSM phones. Make sure the GSM modem is enabled and operational if you are using this channel.
Properties
The value is stored in non-volatile memory so that it is preserved during power off. Add the phone numbers that you want to send this message to. Enter a phone number to send message to. Use the + sign and country code to make international calls, for example +46709474416. Enter a text that you want to be sent, or select a text channel. Select a state channel to use as function selector. One function for each state will be added to this channel. The active function is then decided by the value of the state channel.
Function
This channel uses one activating and one blocking object group. The blocking object group has the highest priority. The SMS out value goes True on rising edge, that is, when the function value switches from false to true, and the channel will then try to send the message. The channel value will remain True until the message has been sent. After it has been sent, the value goes False again. The time the channel stays True depends on the network operator, signal quality, etc.
IQANdesign User manual
146
Interface channels
5 Channels
NOTE
If the function goes true once more before the first SMS has been sent, it will not trigger a second message. If you want to make sure that the message will be sent, please set property Store value to Yes. Otherwise the message will not be sent if you temporarily are out of coverage and shut off the power.
Value
Object errors
Virtual digital in - VDIN The virtual digital input channel is connected to a button on the master display and can be used as a normal digital input. The connection to a master display button is made in a display page component, see section Display buttons on page 248.
NOTE
If system cycle utilization is high, the processing of the display buttons may be skipped temporarily. Therefor virtual digital inputs should not be used to control any critical features.
Properties
Toggle
Select Yes to make this channel toggling, that is, it changes output value on each input activation (controlling display button is pressed). Select a channel to reset the value. When the resetting channels value changes from False to True, the value of this channel is reset to False. The value is stored in non-volatile memory so that it is preserved during power off.
Resetting channel
Store value
NOTE
147
Interface channels
5 Channels
Value
No further status values except the standard statuses; Disabled and OK.
148
CAN channels
5 Channels
CAN channels
CAN messages There are two types of CAN messages that IQAN supports: the J1939 message type, according to the SAE J1939 standard; and Generic CAN, an open protocol where the manufacturer can specify their own messages.
J1939 messages
According to the SAE J1939 specification, all the parameters are organized into specific groups. Each parameter group is one message on the CAN bus. For example, the parameters concerning Engine temperature such as oil and coolant temperature are inserted into one parameter group and sent in one message. Each parameter group has its own Parameter Group Number, PGN. PGN is sometimes specified as two numbers, PF (PDU Format) and PS (PDU Specific). PDU stands for Protocol Data Unit. The PGN is then calculated as follows: PGN=PF256+PS. Parameter group numbers 61184 and 65280 through 65535 are reserved for proprietary messages and can be used for your specific J1939 unit. Other parameter group numbers are reserved by the SAE J1939 standard. The messages are defined in the SAE J1939 specification and they are not supposed to be modified by the manufacturer. One example is the TSC1 message (Torque/speed control 1), that IQANdesign supports as a unique channel. The Parameter group number is zero.
J1939 Diagnostic
There are also messages for diagnostics. The J1939 unit can send error messages to the IQAN system. The diagnostic messages are identified by their SPN - Suspect Parameter Number according to the SAE J1939 specification or manufacturer specification. Each diagnostic message also has an FMI, Failure Mode Identifier, a number that corresponds to a specific error text.
Generic CAN
The Generic CAN message is an open protocol, where both the identification length and data frame length can be defined to match different message protocols. Parameter group in - PGIN The parameter group input channel is used to read data from a J1939 parameter group (a PGN). The properties that you have to fill in, such as priority and PGN, are documented in the SAE J1939 specification or are supplied by the engine manufacturer. To read parameter values such as fuel level or oil temperature, you have to attach one or more Parameter in channels to the parameter group input chanIQANdesign User manual
149
CAN channels
5 Channels
nel. This channel type contains information that is unique for each parameter value, such as resolution and offset. See section Parameter input - PIN on page 154 for more input. A parameter group works as a frame for all the parameter channels connected to the same PGN number, for example (PGN 61444), and contains properties that are common for the parameters.
Properties
Priority
An identifier that establishes the arbitration priority of the information communicated. The highest priority is zero and the lowest priority is seven. Parameter Group Number, a unique identifier for a parameter group. PGN is sometimes expressed as two numbers, PF and PS. The PGN is then calculated as PF256+PS. Maximum allowed time from last received message or poll request. When this time has passed, all parameters connected to this parameter group are assigned their Error value. If you dont care about timeout, select Not used. Note: This value is often called transmit rate in protocol specifications. The timeout should then be the transmit rate plus some extra time to allow for delays on the CAN bus. Select a channel to use as a trigger to request this message from sender. Each time the channel value changes from False to True, the message is requested. Should be used for PGNs that are not sent periodically, but On request. If message is sent automatically, select Not used. Specifies the bits that are used for defining page number in a paged protocol. Example: 0x0F specifies the first four bits of the frame data as page number. Select Not used if the protocol you are interpreting is not paged. Specifies the page number for this channel. Add and define the parameters that are part of this channel (frame). The parameters values represent the data part of the message.
IQANdesign User manual
PGN
Timeout [ms]
Poll trigger
150
CAN channels
5 Channels
Select the channel that defines this parameter. Click the button to create a new channel. Enter the offset within this parameter group. Alternatively, you can click the button to place it graphically.
Value
Digital pulse for one cycle when parameter group is received. n/a False (= 0) or True (= 1) Digital
Not received within the specified timeout period. See section Inherited module status on page 92.
Paged protocols use multiple CAN frames with the same identifier but different data content. Each frame is identified by a page number in the CAN data. You need to
151
CAN channels
5 Channels
specify which bits in the frame data are used to identify each page, and the page number that matches this channel.
EXAMPLE
A protocol uses two CAN frames with the same identifier to transmit some values. The first two bytes in each frame data specifies the page number.
First CAN frame
PGN: 65280 Byte 1and 2: 0x0001 Byte 3and 4: Value 1 Byte 5, 6, 7 and 8: Value 2
Second CAN frame
PGN: 65280 Byte 1 and 2: 0x0002 Byte 3 and 4: Value 3 Byte 5 and 6: Value 4 To read these values you need two PGIN channels, both with the same PGN, 65280. Set page mask to 0xFFFF on both channels and page value to 1 on the first and 2 on the second. Add two PINs to the first PGIN, one 2 bytes long and one 4 bytes long with offsets 17 and 33, for values 1 and 2. Add two PINs to the second PGIN, both 2 bytes long with offsets 17 and 33, for values 3and 4.
Add parameter input
You have to add and define the parameters that are part of this channel. Either you can add the parameter input channels directly in the property inspector for the PGIN channel, or you can add the PIN channels in the traditional way as you add channels to the application and then connect the PIN channels to the PGIN channel.
Add a PIN in a PGIN
To add parameters directly in the PGIN channel, click at the + sign on the right of the Parameters property. (If you have already added the channels in the traditional way, you just have to select the channel.) Select the Channel property and click on the + sign on the right side.
152
CAN channels
5 Channels
The parameter offset tool gives you a graphical presentation of how the parameters are allocated in the parameter group. Open the tool by clicking on , to the right in the Offset property.
Click in grid to select start bit for current parameter. You can also enter Byte/ Bit offset or Bit offset in respective edit boxes and see the result in the grid.
IQANdesign User manual
153
CAN channels
5 Channels
The parameter length is by default 1 byte=8 bits, you will find that value as a property for the parameter in channel. Parameter input - PIN The parameter input channel is used to read a parameter value from a CAN data frame, for example fuel level or oil temperature. The properties that you have to fill in, such as parameter length, resolution/bit and the offset of the parameter are documented in the SAE J1939 specification or supplied from the engine manufacturer. You have to add one PIN channel for each parameter value that you want to read in the J1939 or generic CAN data frame. The channel has to be connected to a PGIN or GFIN channel to get its raw data. Define the common frame properties such as priority, PGN number and transmission rate in the PGIN channel. The parameter in channel value will be the calculated according to the above mentioned resolution and offset.
Properties
The unit for the scaled value of this channel. The error value is used when there is an error situation for this channel. For example, if the connected sensor is broken, the channel will use this value as its output value instead of the measured value. Enter scaled value, not raw value. Specify the length of this parameter. Select Yes to enable J1939 error checking. For more information on J1939 error handling, see SAE J1939 specifications. Specify the resolution (scaling) of this parameter, for example 1C/bit or 0.125 RPM/bit. Specify the offset of this parameter, for example -40C or 0 RPM.
Value
Scaled value. See property Unit. 7 significant digits Analog (Real number)
IQANdesign User manual
154
CAN channels
5 Channels
Status
Corresponding PGIN not received within timeout period. This SAE J1939 parameter is not available in the source system. See section Inherited module status on page 92.
Parameter group out - PGOUT The parameter group output channel is used to send a J1939 parameter group (a PGN) to an external system. The properties for a PGOUT is almost the same as for a PGIN, see section Parameter group in - PGIN on page 149. A data frame consist of both a PGOUT channel for the common frame properties and POUT channels with the unique parameter properties.
Properties
Priority
An identifier that establishes the arbitration priority of the information communicated. The highest priority is zero and the lowest priority is seven. Parameter Group Number, a unique identifier for a parameter group. PGN is sometimes expressed as two numbers, PF and PS. The PGN is then calculated as PF256+PS. Continuously: Use for messages that are to be sent continuously. You also need to specify the transmit rate (property Transmit rate). On trigger: Use for messages that are to be sent occasionally. You also need to specify a channel to trigger a send (property Trigger). On request: Use to only send the message upon request from the receiver. On change: Use to send the message every time any parameter in the message changes value. You can also specify a minimum transmit rate (property Transmit rate). The message will be sent at this interval even if its value is not changed. Specify 0 (zero) to disable this function.
PGN
Send method
155
CAN channels
5 Channels
Transmit rate for this CAN data frame. Resolution is system cycle time. One PGOUT channel with send method Continuously is allowed to have a transmit rate faster than the system cycle time. The resolution for that single channel is 10 ms. Fast PGOUTs are not supported on modules connected to an XT2 module. Select a channel to use as a trigger to send this frame. Each time the channel value changes from False to True, the frame is sent. Specify whether all unused bits in the data part of the message will be set to 0 or 1. The identifier is not affected. Add and define the parameters that are part of this channel (frame). The parameters values represent the data part of the message. Select the channel that defines this parameter. Click the button to create a new channel. Enter the offset within this parameter group. Alternatively, you can click the button to place it graphically.
Trigger
Unused bits
Parameters
Value
Digital pulse when parameter group is sent. n/a False (= 0) or True (= 1) Digital
Parameter out - POUT The parameter output channel is used to write a value in a CAN data frame. This channel must be connected to a parameter group out, PGOUT or GFOUT to work.
156
CAN channels
5 Channels
Properties
Enter a value or select a channel to control the value of this output. Specify the length of this parameter. Specify the resolution (scaling) of this parameter, for example 1C/bit or 0.125 RPM/bit. Specify the offset of this parameter, for example -40C or 0 RPM.
Value
Calculated raw value. n/a 0 to (2Length-1) If input value does not fit in range, value is set to 0. Analog (integer number)
Value does not fit in defined length. See section Inherited module status on page 92.
TSC1 engine control - TSC1 The TSC1 channel (PGN 0) is used to control the engine speed on a J1939 controlled engine. The properties for this channel are supplied from the engine manufacturer.
Properties
High and low idle speed. Select a channel to control the value of this output. The selected channel should have a value range of 0 100%. An identifier that establishes the arbitration priority of the information communicated. The highest priority is zero and the lowest priority is seven. Transmit rate for this CAN data frame. Resolution is 10 ms.
IQANdesign User manual
Priority
157
CAN channels
5 Channels
The override control mode defines which sort of command is used: Override disabled - Disable any existing control commanded by the source of this command. Speed control - Govern speed to the included desired speed value. Torque control - Control torque to the included desired torque value. Speed/torque limit control - Limit speed and/or torque based on the included limit values. The speed limit governor is a droop governor where the speed limit value defines the speed at the maximum torque available during this operation. This mode tells the engine control system the governor characteristics that are desired during speed control. This is used as an input to the engine or retarder to determine the priority of the Override control mode received in the Torque/Speed Control message.
Value
Command value. RPM See property Engine speed limits. Analog (Real number)
Diagnostic message 1 - DM1 This channel is used to read the active trouble codes in the diagnostic message from a J1939 module. The DM1 channel works as a frame for all specified SPN in channels sent from the J1939 module. In the DM1 channel you have to specify the SPN convention method, how the SPN messages are converted and also add the SPN in channels as parameters.
Properties
For further information about the different conversion methods we refer to SAE J1939-73 or the specification from the manufacturer.
IQANdesign User manual
158
CAN channels
5 Channels
FMI texts
Failure mode descriptions. These FMI texts are used when a corresponding FMI text is not specified on an active SPN channel connected to this DM1 channel. Add and define the parameters that are part of this channel (frame). The parameters values represent the data part of the message. Select the channel that defines this parameter.
Parameters
Channel 1, 2, etc.
FMI
The FMI defines the type of failure detected on the ECU, identified by a SPN. Each FMI is represented by a number with a corresponding message, that can be presented on the master display.
EXAMPLE
Engine oil pressure sensor voltage is too low. Engine oil pressure corresponds to SPN 100, and voltage too low corresponds to FMI 4.
Value
Suspect parameter number - SPN The SPN channel is used to read diagnostic information on a J1939 module. Each SPN must be connected to a DM1 channel to function.
Properties
SPN
Suspect Parameter Number, a number used to identify a particular element, component, or parameter associated with an ECU. This capability is especially useful for diagnostics, permitting an ECU which has detected a fault associated with a particular component, such as a sensor, to transmit a fault message identifying the faulty component.
159
CAN channels
5 Channels
Dialog priority
A dialog is automatically shown when a failure is detected for this SPN. Select a priority for the dialog. Message has the lowest priority and Critical has the highest. If you dont want a dialog shown automatically, select Dont show. Specify failure mode identifiers and their corresponding text. If a failure mode is not specified here, it will be taken from the DM1 this channel is connected to instead. Failure Mode Identifier. Specify the identifier for this failure. Enter a text or select a text channel that describes this failure.
Failures
Failures
You can specify unique FMI texts for each SPN channel. When the FMI number is received from the J1939 module, the SPNs unique FMI text is shown instead of the general FMI text, specified in the DM1 channel. The DM1 channels FMI text is overridden by the SPNs unique FMI text.
Value
Channel value -1 is used to indicate that the SPN is not active at the moment. Values 0 - 31 correspond to active SPNs FMI values.
Status
Generic frame in - GFIN The generic frame input channel is used to read a CAN data frame.Typically it is used to read CAN-based protocols other than SAE J1939. The generic frame input works the same as the PGIN channel, but with another identifier. To read a parameter value from the frame data, you have to use the PIN channels in the same way as you would for the PGIN channel.
IQANdesign User manual
160
CAN channels
5 Channels
Properties
Identifier
Specify identifier for this frame. Note: If you are using standard identifier size (11 bits), valid range is only 0 - 2047 (0x00 - 0x7FF). Identifier size is specified on the generic CAN bus that this channel is located on. Specify data length for this frame. Length is checked in run-time and if it doesn't match, the frame is thrown away (and eventually causes timeout). It is also used by IQANdesign to check that the parameters added to this channel fits within the specified length. Select constant Don't care to receive frames with variable data length. Enter maximum allowed transmit rate from the sender. Note: The transmit rate stated is often the average transmit rate. You may therefore need to add some extra time. Specifies the bits that are used for defining page number in a paged protocol. Example: 0x0F specifies the first four bits of the frame data as page number. Select Not used if the protocol you are interpreting is not paged. Specifies the page number for this channel. Add and define the parameters that are part of this channel (frame). The parameters values represent the data part of the message. See section Parameter group in - PGIN on page 149.
Timeout [ms]
Paged protocol
Digital pulse for one cycle when frame is received. n/a False (= 0) or True (= 1) Digital
161
CAN channels
5 Channels
Status
Not received within the specified timeout period. See section Inherited module status on page 92.
Generic frame out - GFOUT The generic frame output channel is used to send a CAN data frame. Typically it is used to send data to devices using other CAN protocols than SAE J1939. The generic frame output works as the PGOUT channel but with another identifier. To add parameter values to the frame data, you have to use the POUT channels in the same way as for the PGOUT channel.
Properties
Identifier
Specify identifier for this frame. Note: If you are using standard identifier size (11 bits), valid range is only 0 - 2047 (0x00 - 0x7FF). Identifier size is specified on the generic CAN bus that this channel is located on. Specify data length for this frame. Continuously: Use for messages that are to be sent continuously. You also need to specify the transmit rate (property Transmit rate). On trigger: Use for messages that are to be sent occasionally. You also need to specify a channel to trigger a send (property Trigger). On change: Use to send the message every time any parameter in the message changes value. You can also specify a minimum transmit rate (property Transmit rate). The message will be sent at this interval even if its value is not changed. Specify 0 (zero) to disable this function.
Transmit rate for this CAN data frame. Resolution is system cycle time. Select a channel to use as a trigger to send this frame. Each time the channel value changes from False to True, the frame is sent.
162
CAN channels
5 Channels
Unused bits
Specify whether all unused bits in the data part of the message will be set to 0 or 1. The identifier is not affected. Add and define the parameters that are part of this channel (frame). The parameters values represent the data part of the message. See section Value on page 154.
Parameters
Value
163
Safety channels
5 Channels
Safety channels
The safety channels is used to implement safety related application functionality using for example redundant input channels and safe CAN communication between master modules.
NOTE
The channel types in this section are only available when application uses IQAN-MC3 as master module. No other master module types have support for these channel types. Compare channels The compare channels are used to compare a primary input channel with a secondary input channel to provide redundancy checks on e.g. physical inputs. The channels also provide start block and error reset conditions to further improve safety. The value of the compare channels is True when the status is OK, otherwise the value is False. The status is OK only after a start block condition is fulfilled and there are no errors on the input channels or in the input channel comparison.
Channel Enabled Start Block System ON System OFF Start Block Fault detected OK to start OK
Fault detected
Reset fault
Awaiting reset
Channel Disabled
Analog/analog compare channel - AAC The analog/analog compare channel is used to perform a diagnostic check on an analog (primary) input channel that has another redundant analog (secondary) channel that follows its scaled value.
164
Safety channels
5 Channels
If the primary input channel deviates from the secondary input channel with more than the configured difference check limit during a longer time than the configured detection delay the channel will go to error state. The value of the channel will be True when its status is OK, otherwise the value will be False.
NOTE
Since the AAC uses the scaled value of the input channels, the physical channels could be configured in three different ways: Mirrored signals. Signals with a different offset and slope. Signals that follow each other.
Scaled value Scaled value
Raw value
Raw value
Scaled value
Raw value
Only the IQAN-MC3 master module has support for this channel type.
Properties
Primary input
The scaled value of the primary input will be compared to the scaled value of the secondary input.
165
Safety channels
5 Channels
The scaled value of the secondary input will be compared to the scaled value of the primary input. States the allowed difference between the primary and secondary input before a fault is triggered. States the time that the primary input is allowed to deviate from the secondary input with more than the configured difference check limit before a fault is triggered. Must be a multiple of the application cycle time. At startup or after fault has been detected (and reset), the channel will stay in start block state until the OK to start channel is true. After a detected fault is gone the channel will have the status start block until the reset fault channel changes from false to true. Note that the OK to start channel is also required to be true in order to leave the start block state.
OK to start
Reset fault
Value
True when its status is OK, otherwise False. n/a False (= 0) or True (= 1) Digital
Primary or secondary input channels status is not OK. Abs(Primary - Secondary) > Diff check limit for a continuous period longer than Detection delay. Reset error or OK to start condition not met.
Digital/digital compare channel - DDC The digital/digital compare channel is used to perform a diagnostic check on a pair of antivalent digital channels. If the primary input channel is equal to the secondary input channel during a longer time than the configured detection delay the channel will go to error state. The value of the channel will be True when its status is OK, otherwise the value will be False.
IQANdesign User manual
166
Safety channels
5 Channels
NOTE
Only the IQAN-MC3 master module has support for this channel type.
Properties
The digital value of the primary channel will be compared to the digital value of the secondary channel. The digital value of the secondary input will be compared to the digital value of the primary input. States the time that the primary input is allowed to have the same value as the secondary input before a fault is triggered. Must be a multiple of the application cycle time. At startup or after fault has been detected (and reset), the channel will stay in start block state until the OK to start channel is true. After a detected fault is gone the channel will have the status start block until the reset fault channel changes from false to true. Note that the OK to start channel is also required to be true in order to leave the start block state.
OK to start
Reset fault
Value
True when its status is OK, otherwise False. n/a False (= 0) or True (= 1) Digital
Primary or secondary input channels status is not OK. Primary = Secondary for a continuous period longer than Detection delay. Reset error or OK to start condition not met.
Analog/digital compare channel - ADC The analog/digital compare channel is used to perform a diagnostic check on an analog (primary) input channel that has another redundant digital (secondary) channel that switches to true when the analog input is above a certain point.
IQANdesign User manual
167
Safety channels
5 Channels
The value of the channel will be True when its status is OK, otherwise the value will be False
NOTE
Only the IQAN-MC3 master module has support for this channel type.
Properties
Primary input
The primary input is an analog channel that should be checked against the secondary digital input channel together with the configured switch over point. The digital input of the secondary input is expected to turn true when the value of the primary input is above a certain point. States the value of the primary input channel at which the secondary input channel is expected to switch from false to true. States the allowed difference between the value of the primary channel and the switch over point before a fault is triggered. States the time that the primary input is allowed to deviate from the secondary input before a fault is triggered. Must be a multiple of the application cycle time. At startup or after fault has been detected (and reset), the channel will stay in start block state until the OK to start channel is true. After a detected fault is gone the channel will have the status start block until the reset fault channel changes from false to true. Note that the OK to start channel is also required to be true in order to leave the start block state.
Secondary input
Detection delay
OK to start
Reset fault
Value
True when its status is OK, otherwise False. n/a False (= 0) or True (= 1) Digital
168
Safety channels
5 Channels
Status
Primary or secondary input channels status is not OK. (Primary > (Switch over point + Diff check limit)) AND (Secondary = False) OR (Primary < (Switch over point - Diff check limit)) AND (Secondary = True) for a continuous period longer than Detection delay. Reset error or OK to start condition not met.
Start block
APPIN - Application input The application input channel is used to receive the value and status of a channel in another application. It is always used in conjunction with an application output channel on another master module. The data is sent using a safe CAN protocol which makes it possible to use the channels in safety related functions.
NOTE
Only the IQAN-MC3 master module has support for this channel type.
Properties
The input type decides if the data being received is analog or digital. Unit of the channel when input type is analog. Minimum value allowed for the channel value. If the received value is below the min limit the channel status will be out of range and the value will be the configured error value. Maximum value allowed for the channel value. If the received value is above the min limit the channel status will be out of range and the value will be the configured error value. The error value is used when there is an error situation for the channel. For example, if the CAN message times out, the channel will use this value as its output value instead of the received value.
Max limit
Error value
169
Safety channels
5 Channels
Timeout
Timeout after which the channel status will be set to error if no message has been received. When configuring the timeout the transmit rate of the corresponding application output channel has to be considered as well as the cycle time of the applications. Unique identifier of the application output channel that should be received by this application input channel. CAN port on the module. Note that this port cannot be connected to any other bus.
Value
The latest value received. See property Unit. See properties Min limit and Max limit. See property Input type.
Not received within timeout period. Value not within specified range. Illegal message received (invalid checksum or input type mismatch). When none of the above applies this channel inherits from the received status.
APPOUT - Application output The application output channel is used to send a channel's value and status at a specified rate from one application (master module) to another via a CAN bus. The receiving end uses an application input channel to read the value and status. The data is sent using a safe CAN protocol which makes it possible to use the channels in safety related functions.
NOTE
Only the IQAN-MC3 master module has support for this channel type.
Properties
Input channel
170
Safety channels
5 Channels
Send method
Continuously: Use for messages that are to be sent continuously. You also need to specify the transmit rate (property Transmit rate). On trigger: Use for messages that are to be sent occasionally. You also need to specify a channel to trigger a send (property Trigger). On change: Use to send the message every time any parameter in the message changes value. You can also specify a minimum transmit rate (property Transmit rate). The message will be sent at this interval even if its value is not changed. Specify 0 (zero) to disable this function.
Transmit rate for this CAN frame. Resolution is system cycle time. Select a channel to use as a trigger to send this frame. Each time the channel value changes from False to True, the frame is sent. Unique identifier of this application output used to connect a receiving application input channel to this output. CAN port on the module. Note that this port cannot be connected to any other bus.
Application output ID
CAN port
Value
The latest sent value of the input channel. Same as input channel. Same as input channel. Same as input channel.
Inherited status
171
Modules
This chapter deals with modules, buses and how to connect them to create a system. The IQAN system is based on adding necessary channels and functions associated with the appropriate modules, thus designing your own control system. The application file must contain information about the modules and buses that will be used in the system. It is important to address the buses and modules when creating an application. The application file is intended to reflect the connections that exist in the real system. In IQANdesign, it is easy to get a quick overview of how you have designed your system. Selecting Modules in the application manager sets the view in the editor to show the system modules and the buses that connect them. Highlighting any module or bus causes the properties for that item to be displayed in the property inspector. Double clicking on a module in this view will open the traditional block diagram of the module. Selecting channels on the block diagram also displays the channel properties in the property inspector.
172
Modules
6 Modules
Modules
There are two types of modules: masters and expansion modules. An IQAN system must always contain one master. A master module has one or more CAN buses, and they can be configured to support different CAN protocols. You can connect up to eight expansion modules per type on each ICP (IQAN CAN Protocol) CAN bus. The J1939 and Generic units are represented as J1939 modules and Generic modules respectively. In IQANdesign the IQAN modules are blue in color, the J1939 modules are red and the Generic modules are green. The modules have various properties that you will find in the property inspector. For further information about the modules inputs and outputs, see information sheets for each module type. Module address All modules that are connected to the ICP CAN bus must be addressed. Each module of the same type on the same bus must have a unique address. The module address in the application file must correspond to the Id-tag address on the real module. There are up to eight addresses. The default address when you add a module in the application file is zero or the first available address if you drag it to an existing bus with other modules on it.
173
Master modules
6 Modules
Master modules
This section contains information on the different master modules available for an IQAN application.
Comparison table Module type Display size CAN buses Volatile memory (RAM) Non-volatile memory (Flash)
4 4 3 2 4
MDL/MDL2 MDL (Master Display Large) is a master module with a large color display. It has four CAN buses. MDL2 is the same master module as MDL, but with more memory available. The modules have both inputs and outputs.
Properties
Enter system cycle time. A low value will increase the sampling frequency in the system and give shorter response times. A high value can be useful in a complex application to lower the utilization. Sampling frequency (number of samples per second) equals the inverse of the system cycle time. For example, a cycle time of 50 ms equals a sampling frequency of 20 Hz. Frequency for PWM and COUT outputs. Select Yes to reject incoming calls and/or SMS, or select a channel to control this in run-time. When True (Yes), incoming SMS will be stored and handled when this property goes False.
174
Master modules
6 Modules
GSM > Automatic answer Select this option to allow the IQAN system to answer incoming data calls without user confirmation. With this option not selected, the remote IQAN system requires user confirmation for all incoming calls by showing caller id on its display.
Channel properties
Digital out
Not available. Please move channel to another module to use these properties.
MD3 MD3 (Master Display 3) is a master module with a small color display. It has three CAN buses. The module has inputs and one digital output.
Properties
Enter system cycle time. A low value will increase the sampling frequency in the system and give shorter response times. A high value can be useful in a complex application to lower the utilization. Sampling frequency (number of samples per second) equals the inverse of the system cycle time. For example, a cycle time of 50 ms equals a sampling frequency of 20 Hz. Select Yes to reject incoming calls and/or SMS, or select a channel to control this in run-time. When True (Yes), incoming SMS will be stored and handled when this property goes False.
GSM > Automatic answer Select this option to allow the IQAN system to answer incoming data calls without user confirmation. With this option not selected, the remote IQAN system requires user confirmation for all incoming calls by showing caller id on its display.
Channel properties
Digital out
Not available. Please move channel to another module to use these properties.
MC2 MC2 is a master module without display. It has two CAN buses. The module has both on/off and proportional inputs and outputs.
IQANdesign User manual
175
Master modules
6 Modules
Properties
Enter system cycle time. A low value will increase the sampling frequency in the system and give shorter response times. A high value can be useful in a complex application to lower the utilization. Sampling frequency (number of samples per second) equals the inverse of the system cycle time. For example, a cycle time of 50 ms equals a sampling frequency of 20 Hz. Select No to prevent module from blinking error code when the real time clock is not set correctly. This happens for instance when the real time clock has not been powered for a longer period of time. Therefor this property can be useful if your modules risk being powered off several days in a row and you don't want to bother your users with the clock error blink. Frequencies for PWM and COUT outputs. PWM frequency for digital outputs. Low current mode selection for each current output. Select Yes to set a current output to low current mode. Low current mode is suited for operating ranges below 200 mA. For more details, see module data sheet.
PWM frequencies [Hz] (COUT/PWM) PWM frequency [Hz] (DOUT) Low current mode
Channel properties
Frequency in
Fast response
With fast response all frequencies below system sampling frequency (= 1/system cycle time) will be detected as zero. For example, in a 20 ms system all frequencies below 50 Hz will be detected as 0. Not available. Please move channel to another module to use these properties.
Digital out
MC3 MC3 is a master module without display. It has four CAN buses. The module has both on/off and proportional inputs and outputs. MC3 is certified for safety related applications according to IEC-61508 up to SIL2 (Safety Integrity Level 2).
IQANdesign User manual
176
Master modules
6 Modules
Properties
Address
Address for this module. The address tag must correspond to the address stated here, otherwise the module will not start. Enter system cycle time. A low value will increase the sampling frequency in the system and give shorter response times. A high value can be useful in a complex application to lower the utilization. Sampling frequency (number of samples per second) equals the inverse of the system cycle time. For example, a cycle time of 50 ms equals a sampling frequency of 20 Hz. Frequencies for PWM and COUT outputs. Defines the restart behaviour after an error has been detected on the output. The default behaviour is to remain in error state until the input is 0 and the error is no longer detected. When a channel is selected, that channel's value must change from false to true and the output error must no longer be detected in order to leave error state. None will cause the channel to remain in error state until the power is cycled and the error is gone.
See "COUT restart behaviour" above. Enables or disables under current detection for each DOUT.
Digital out
Not available. Please move channel to another module to use these properties.
177
Expansion modules
6 Modules
Expansion modules
There are several different types of expansion modules, such as levers, I/O modules, radio controls, etc. Lx Lever expansion module, LL (Lever Large) or LM (Lever Mini).
Properties
Address
Address on the CAN bus. Two modules of the same type on the same CAN bus can not have the same address. Select Yes to make this module enabled all the time, or select a channel to enable/disable it in run-time. When the channel value is False, the module is disabled and all its channels are set to error value when available, otherwise 0 (zero)/False.
Enabled
Channel properties
Digital out
Not available. Please move channel to another module to use these properties.
Address
Address on the CAN bus. Two modules of the same type on the same CAN bus can not have the same address. Select Yes to make this module enabled all the time, or select a channel to enable/disable it in run-time. When the channel value is False, the module is disabled and all its channels are set to error value when available, otherwise 0 (zero)/False.
Enabled
Channel properties
Digital out
Not available. Please move channel to another module to use these properties.
178
Expansion modules
6 Modules
Properties
Address
Address on the CAN bus. Two modules of the same type on the same CAN bus can not have the same address. Select Yes to make this module enabled all the time, or select a channel to enable/disable it in run-time. When the channel value is False, the module is disabled and all its channels are set to error value when available, otherwise 0 (zero)/False. Frequency for PWM and COUT outputs. PWM frequency for digital outputs.
Enabled
Address
Address on the CAN bus. Two modules of the same type on the same CAN bus can not have the same address. Select Yes to make this module enabled all the time, or select a channel to enable/disable it in run-time. When the channel value is False, the module is disabled and all its channels are set to error value when available, otherwise 0 (zero)/False. PWM frequency for digital outputs.
Enabled
Address
Address on the CAN bus. Two modules of the same type on the same CAN bus can not have the same address.
179
Expansion modules
6 Modules
Enabled
Select Yes to make this module enabled all the time, or select a channel to enable/disable it in run-time. When the channel value is False, the module is disabled and all its channels are set to error value when available, otherwise 0 (zero)/False. Frequencies for PWM outputs.
XT2 Expansion module with focus on transmission control. It has one J1939 CAN bus to control and diagnose J1939 modules and a servo output that can be used to control an E-Gas.
J1939 CAN bus
The XT2 module can be used as a gateway to J1939 modules. It will only let the J1939 messages you have defined in your application pass through to the master module, and thereby decrease the traffic on the master modules CAN bus. When using the J1939 CAN bus on the XT2 there are some limitations to keep in mind. The total number of parameter group inputs and number of DM1 multiplied by three on all J1939 modules connected to a single XT2 module must not exceed 13. The total number of parameter group outputs and number of TSC1 on all J1939 modules connected to a single XT2 module must not exceed 13. The priority value Dont care on parameter group inputs is not allowed.
Properties
Address
Address on the CAN bus. Two modules of the same type on the same CAN bus can not have the same address. Select Yes to make this module enabled all the time, or select a channel to enable/disable it in run-time. When the channel value is False, the module is disabled and all its channels are set to error value when available, otherwise 0 (zero)/False. Enter dither amplitude in mA for the current output. Dither frequency for current outputs. Frequency for PWM outputs.
IQANdesign User manual
Enabled
Dither amplitude, COUTA/B [mA] Dither frequency, COUTA/B [Hz] PWM frequency [Hz]
180
Expansion modules
6 Modules
J1939 diagnostic messages Priorities for diagnostic messages. There are three priorities diagnostic messages specified by SAE J1939. These are BAM (Broadcast Announcement Message), DTM (Data Transfer Message) and DM1 (Diagnostic Message 1). The priority for each of these messages can be set here. The default values are set to the recommended default values in SAE J1939. The XT2 module will use the same priorities for all J1939 modules connected to its CAN bus. J1939 diagnostic messages Priority for BAM (Broadcast Announcement Message) priorities > BAM priority diagnostic message. The highest priority is zero and the lowest priority is seven. SAE J1939 default priority is 7. J1939 diagnostic messages Priority for DTM (Data Transfer Message) diagnostic priorities > DTM priority message. The highest priority is zero and the lowest priority is seven. SAE J1939 default priority is 7. J1939 diagnostic messages Priority for DM1 (Diagnostic Message 1) diagnostic priorities > DM1 priority message. The highest priority is zero and the lowest priority is seven. SAE J1939 default priority is 6.
Channel properties
Digital out
Soft stop
Not available. Please move channel to another module to use this property.
Enabled
Select Yes to make this module enabled all the time, or select a channel to enable/disable it in run-time. When the channel value is False, the module is disabled and all its channels are set to error value when available, otherwise 0 (zero)/False.
J1939 External (non-IQAN) expansion module that uses the SAE J1939 protocol, for example a diesel engine ECU.
181
Expansion modules
6 Modules
Properties
Enabled
Select Yes to make this module enabled all the time, or select a channel to enable/disable it in run-time. When the channel value is False, the module is disabled and all its channels are set to error value when available, otherwise 0 (zero)/False. Enter the J1939 source address for this module. Example: A diesel engine is usually address 0. Enter a timeout value. This is used to detect whether the module is online or offline. If the master module does not receive any packet within a timeout interval from this module, it will be detected as offline.
Generic External (non-IQAN) expansion module that uses other CAN protocols than SAE J1939.
Properties
Enabled
Select Yes to make this module enabled all the time, or select a channel to enable/disable it in run-time. When the channel value is False, the module is disabled and all its channels are set to error value when available, otherwise 0 (zero)/False. Enter a timeout value. This is used to detect whether the module is online or offline. If the master module does not receive any packet within a timeout interval from this module, it will be detected as offline.
Timeout [ms]
182
Buses
6 Modules
Buses
There are three types of buses. ICP (IQAN CAN Protocol), the proprietary IQAN CAN bus. J1939, a CAN bus for the SAE J1939 protocol. Generic, a bus that is used to handle other types of CAN protocols. All IQAN expansion modules use the ICP CAN bus to communicate to the master module. Master modules support any of the above bus protocols. Bus index If there are several buses, each bus needs to be indexed. The index may be A, B, C or D and is presented as a property in the property inspector for the specific bus. For modules with less than four CAN buses, only corresponding indices are allowed. ICP IQAN CAN Protocol, our own proprietary protocol.
Properties
Bus index. Each bus must have a unique index. Select Yes to make this bus terminated on the master module end. Divides the system sample rate on this CAN bus, that is, the modules on this bus are not polled every sample. For example, a divider of 3 means that the modules are polled every third sample, that is, with a cycle time of 50 ms it is polled every 150 ms. Can be useful on buses that carry slow modules or when you are using a very high system sample rate (see master module property System cycle time). Note: The bus sample time is calculated by multiplying the system sample time with the sample rate divider for the actual bus. It must not exceed 100 ms, otherwise it can cause expansion modules to time out unexpectedly. Select Not used to disable this feature.
Bus index
183
Buses
6 Modules
Select Yes to make this bus terminated on the master module end. Enter the source address that IQAN should be on this bus. IQAN can have different source addresses on each J1939 bus and thereby act as multiple J1939 sources in a machine.
You are allowed to share the same index with an ICP bus. This means you can run both ICP and J1939 traffic on the same physical CAN bus. It is also allowed to have multiple J1939 buses with the same index as long as they have different Source address. This can be useful if you need to communicate with two different J1939 modules on the same bus that requires different source address from IQAN. Example: You have a gear box that requires IQAN to be source address 23 and a diesel engine that requires IQAN to be source address 39. The gear box also needs to communicate with the diesel engine so they have to be on the same physical CAN bus. Generic A bus that uses other CAN protocols than SAE J1939.
Properties
Bus index. Each bus must have a unique index. Select Yes to make this bus terminated on the master module end. Bus speed in kilobit per second. Specify the identifier size, "Standard (11 bits)" or "Extended (29 bits)".
184
Otherwise, you can click on the module you want to add and the module will appear at the right side in the editor. Thereafter you will be able to move it to the desired bus. In this way you can add all necessary modules and then connect them to the appropriate buses. Enter the proper module address for each module in the property inspector. Add buses To add a bus connection to the system you first need to add the module that handles the type of bus you want to select. Select the Buses tab in the tool bar above the editor. Drag the desired bus type and drop it on the module. Then enter the bus index letter in the property inspector.
IQANdesign User manual
185
Some modules will automatically create a bus when they are added. Sharing a bus Two buses can share the same index if one is an ICP bus and the other is a J1939 bus. This can be very useful if you need to transfer both ICP and J1939 messages on the same physical bus. Measure It is possible to measure module status, CAN bus utilization and CAN bus status in the modules view. For more information see section Measure in other views on page 195. CAN bus utilization is measured as percent used bandwidth out of maximum available on each separate CAN bus.
186
Block diagram
6 Modules
Block diagram
Each module will be represented with a block diagram where all of the modules input and output channels will be connected. Double-click on the module to open the block diagram or click on the module in the application manager.
The block diagram contains physical inputs and outputs as well as some virtual outputs for module diagnostics. For each input/output there is an index and its corresponding pin number(s). When there is more than one pin, details about the function of each pin is available as a tool tip by hovering with the mouse pointer over the index box. If a channel is assigned to an index, the channel name is shown next to the index box. Click the channel name to select it and see its properties in the property inspector. Greyed out indexes indicates that the corresponding pin is occupied by another channel type. Using the list tab of the module editor you will get a list of all the physical pin and information on which channel they are assigned to.
187
Block diagram
6 Modules
Add channels to a module There are two ways of connecting channels to the modules. First, if you already have created your application, which is recommended, then you drag the channels from the application editor and drop them on the module in the application manager. The second way is to add the channels in the block diagram directly. Rightclick on the channel connector and select Add Channel. Some channel connectors can handle multiple channel types, but only one at a time. When one of these connectors is occupied, then the channel connectors that share pins with it are grayed out to notify you that the pins are used and the other channel types are unavailable. Moving channels Move a channel to another index by dragging it to the corresponding connector. If that connector is occupied by another channel, the channels will switch places. Right-click on a channel and select Remove in the popup menu to remove it completely from the module. The channel will not be deleted, just unassigned. Measure It is possible to measure channel value and status in the block diagram view. For more information see section Measure in other views on page 195.
IQANdesign User manual
188
Measure groups
We take it for granted that you will need to take measurements on signals and channels when you develop or troubleshoot an application file in the machine. In IQANdesign you can measure both graphical and numerical values. Measure groups are used when you measure in the master display, IQANdesign or IQANrun. The measure groups will help you to organize the channels or measure items as they are also referred to.
189
Measure groups
7 Measure groups
Measure groups
The reason for using measure groups is to organize your channels for measurements in different situations, when measuring with a master module display and with IQANdesign or IQANrun. If you have grouped some important channels together, it can give the service personnel a quicker overall view of the situation and hopefully save them some time.
Add a new measure group Open the application manager and right click on the Measure groups item. Select Add Measure Group. Or, select Application > Add > Add Measure Group. The properties for the new measure group will be in the property inspector and the properties will be applied to the whole measure group.
Properties
Visible
Select Yes to make this measure group visible on the master display or in IQANrun. Select No to make this group visible only in IQANdesign. Select a digital value channel to control visibility at run time.
190
Measure groups
7 Measure groups
Specify required access level to view this measure group. Users with lower access level will not be able to see this measure group in the menu system in the master display or IQANrun. Select Allow all to allow all users to see this measure group. Select a measure item to use as the X axis in X/Y measure mode. Select "Not used" to use the regular time axis. Observe that the property concerns the whole measure group.
X-axis item
Use drag and drop to add channels to the measure groups. Select the channels in the application editor or in the channel list and then drag the channel to the particular measure group in the application manager. You can also drag function groups. All channels in the function group will be added to the measure group. It is possible to add the same channel to several measure groups.
Measure groups in master module display
When you have downloaded the application file, the visible measure groups will appear in the measure menu on the master display.
NOTE
It is better to have several small measure groups instead of one big group. With smaller groups you probably wont need to use the scroll bars to see all of the channels in a group at the same time.
191
Measure in IQANdesign
7 Measure groups
Measure in IQANdesign
When you select a measure group in the application manager you will also open the measure window. The measure window in IQANdesign has a graph in the middle. Underneath the graph there is a list with all the measure items and some statistics from the last measurements. You have to use the two cursors to generate the statistic values. On the right side of the window you will find the property inspector with the properties for each measure item.
Start/Stop measure To start a measurement, select Measure > Start Measure, click the start measure button in the tool bar above the graph or press the function key F7.
ATTENTION
The application id in the current application and the measured application has to match to allow measuring. This is to make sure you are measuring the correct values. For more information, see section Application id on page 25. To stop a measurement manually, select Measure > Stop Measure, click the stop button in the tool bar above the graph or press <Shift + F7>. If you save your application, the measure groups content (all measured values) will also be saved in that file so you can examine it later.
IQANdesign User manual
192
Measure in IQANdesign
7 Measure groups
Select File > Print to print the measured graph with statistics. A dialog box is displayed where you can change printer, printer properties and/or options. Clear values To clear all measured values, select Measure > Clear. Graph options By default the background of the graph is black and the grid color is gray, but in the options for IQANdesign you can easily change the colors. Select Tools > Options..., Measure groups tab or right click on the graph window and select Options.... You can also change the default channel colors.
193
Measure in IQANdesign
7 Measure groups
Glitch detect
Glitch detect can be useful to detect short pulses or glitches in a large log. Without glitch detect IQANdesign uses mean value calculation when presenting a large amount of data in the graph. With glitch detect IQANdesign presents min and max values in each point instead of mean value. This makes it possible to easily find glitches in very large logs. To enable glitch detect, right click in the graph, select Options... and check the Glitch detect box.
Measure all measure groups
With this checked you will always measure all measure groups while you are measuring. This means that if you measure for a couple of minutes and then stop, you can look at all measure groups to analyze what happened. If you experience performance problems, for example when measuring over a modem connection, you should not select this option.
Missing samples
When measuring, samples can be lost due to communication problems or by measuring too many channels. Missing samples are then calculated by interpolation between the surrounding values. Select Mark missing samples in graph to draw missing samples with a darker color in the graph. Select the number of continuos samples that needs to be missing before marking them in the graph under Missing samples threshold.
Time depth
This is the amount of data shown while you are measuring. Applies to X/Y mode also.
Max update rate
This is the maximum display update rate. If your computer is slow or you are measuring a lot of channels the display can have problems to show all values in real time. Then it can be useful to decrease this value. The value does only affect the display updating while measuring, all values are still stored for each system sample.
194
Measure in IQANdesign
7 Measure groups
Measure item properties When you have added a channel to a measure group, it becomes a measure item. By default, the measure item gets the same name as its channel. You can choose a different name if you like. Each items properties will be shown in the property inspector to the right. Select a measure item in the item list.
Properties
Enter a name to identify this application component. The channel that this measure item measures. It is possible to change the channel for this item. Select Yes to make this item visible when viewing the measure group it belongs to. Select a channel to control its visibility in run-time. Note: Selecting "No" will only make the measure item visible in IQANdesign. Select the color you want to use when measuring graphically. The min and max values on the Y axis in the graph.
The visible property is only checked when entering a measure group on a display or in IQANrun. If the value of the property changes when viewing the measure group, i.e. when it is controlled by a channel, the list of measure items is not updated. To update the list you must leave the measure group and enter it again. Measure in other views It is possible to measure in other views than the measure group view. You can measure all channels in a function group view, a channel list or a module block diagram. Measure is started and stopped in the same way as when measuring a measure group, see section Start/Stop measure on page 192. Each channel will be presented with value and status. Status type is also indicated by a lamp with one of four colors.
Gray Green Yellow Red Info OK Warning Error
IQANdesign User manual
195
Measure in IQANdesign
7 Measure groups
For more information, see section Value and status on page 89.
Module status, CAN bus utilization and CAN bus status can be measured in the modules view.
196
Statistics
7 Measure groups
Statistics
Use the two cursor lines in the measure group view to read the exact values of a point on the measured curves in the graph. You can use the cursors as soon as you have stopped the measurement. You will find the two cursors as small arrows above the graph. Select the curve you want to measure on by selecting it in the items list. The selected or actual curve will have a thicker line so you can find it in the graph. Position the cursors The cursors are two vertical lines which can be positioned along the X-axis. You move each cursor by dragging it. Drag each cursor to the desired position. You can move both the cursor lines at the same time by holding down <Shift> while you move one of the cursors. Also, you can move the cursor back to the default position by clicking on it while holding down <Ctrl>. Locking the cursors The cursors can be locked in their positions. Right-click in the graph and select Lock left cursor or Lock right cursor. Statistics On the lower right side of the graph you will find measurement statistics belonging to the actual or selected channel. You will find different statistic values depending on how you place the cursors. The statistics are generated after the measurements are stopped.
Values
The items value at the left cursors position. The items value at the right cursors position. The items lowest value between the two cursors. The items highest value between the two cursors. The difference between Max and Min described above. Mean value between the cursors. Mean value between the two cursors. Calculation carried out as per true RMS. Left cursor position at the X-axis. (time measurement)
197
Statistics
7 Measure groups
Right cursor position at the X-axis. (time measurement) Time between the two cursors. Time between the minimum and maximum value between the two cursors. The heading alternates between Rise and Fall depending on which value is first.
Exporting If you want to do more advanced statistics it is possible to export all measured values to an external program, for example Microsoft Excel. Right click in the graph and select Copy values as text. All values are now copied to Windows clipboard. Start the other program and select Paste. Measure files To save a measure to a file, select Measure > Save As. Select folder, enter a file name and click Save. The file can later be opened in either IQANdesign or IQANrun. Measure files that has been saved by IQANrun can also be opened in IQANdesign. Measure files have the extension irm.
NOTE
To open a measure file in IQANdesign you must first open the application that the measure file belongs to. It is also possible to save the measurement in Microsoft Excel Workbook format. Select file format in the Save dialog box. Microsoft Excel will be started after the file has been saved to show the result.
198
Zooming
7 Measure groups
Zooming
You can zoom in on (enlarge) parts of the graph to study the curves in detail. Zoom in You can easily select a section of the curves to be enlarged. Select the zoom area by holding the left mouse button while you drag the mouse cursor over the desired enlargement area. A zoom area is built around what will be enlarged.
Zoom in time or X-axis only
Position the both the cursors on either side of the area to be zoomed. Right click in the graph and select, View range between cursors. Another way of doing this is to zoom in as described in the section above while holding <Shift> down. Zoom out To view the complete curves again, right click in the graph and select Zoom out or select Measure > Zoom Out. Shortcut keyboard command <Ctrl+U>. Scroll in X and Y directions There are two scroll bars to move the graph and curves in either horizontal or vertical. Move a curve along the Y-axis If the curves are positioned onto one other, you can move the active curve in the Y (up/down) direction. Use the vertical scroll bar on the right of the graph to move the curve of the selected measure item. To move all curves at the same time, select the measure group in the application manager and use the vertical scroll bar. Auto scaling It is possible to auto scale each channel. Use Auto scale join to make each channels values fit within the Y axis limits. The channels values will overlap. Use Auto scale split to split the channels so that no channel will overlap any other channel. All channels will be visible in the graph without any overlapping.
199
Adjust groups
Some of the channels in your application can be made adjustable. It means that those channels have parameters that can easily be adjusted from the master display or another PC software called IQANrun. The advantage with this feature is that you can adjust an output channel to match the load in the best way, or you can calibrate an input signal for different sensors to suit your application perfectly, without having to update the application.
200
PWM out
To be able to adjust a channel parameter from the master display or IQANrun, the channel has to be selected as adjustable and also be a member of an adjust group. Factory default Each parameter also has a factory default value. The factory default value can be set from IQANrun. First adjust the parameter to a desired value, then press the set factory default button to copy the adjustable value to the factory default value. It is also possible to control access to this function, see section Adjust groups on page 206. Later on the machine user can reset the adjustable values for a channel or parameter to the factory default value.
NOTE
The factory default value is normally only set in production. It should be a usable value that the machine operator can always trust and reset his settings to. Application default The first time an application is loaded in a master module, there are no adjustable or factory default values. To make the machine manoeuvrable, the application default values are then used. The application default values are specified for each channel in the application.
IQANdesign User manual
201
See each channel section in section Channels on page 87 for more information on the application default values.
ATTENTION
The application default value is only used when the application is loaded in an empty master module or when you have added a new channel that does not exist in the master module. It should be a safe value that will work in any machine without risk. Modes Some adjustable channels can have multiple modes, that is, multiple sets of parameter values. A mode selector is used to decide which parameter value set is used in run-time. Modes can serve different purposes, for example, separate driver settings or working modes. Sometimes it is desirable to copy all parameter values from one mode to another. This can be achieved by using adjust groups with the property Allow mode copy enabled. Mode copying is done via the adjust menu in the master display or IQANrun.
202
To be able to adjust a stored channel from the master display or IQANrun, the channel has to be a member of an adjust group.
203
Send application
8 Adjust groups
Send application
When sending an application there are some options regarding settings. For more information on send application, see section Send application on page 282. When you send an application to a master module using IQANdesign you will have the option to override some settings in the master module with the default values in the application. A dialog box is shown where you can select these options.
This dialog box can be disabled in Tools > Options, tab Dialog. The check box is called Show send/get options dialog. Make sure it is selected if you want to use this feature.
Adjustable values
Select this check box to overwrite all adjustable values in the master module with the default values in the application. For example, the adjustable values for a voltage input will be overwritten with its properties Min [mV] and Max [mV] defined in the application.
Factory default values
Select this check box to overwrite all factory default values in the master module with the default values in the application.
Stored values
Select this check box to overwrite all stored values in the master module with the default values in the application. For example, the stored value of an event counter will be overwritten with its property Reset value defined in the application.
IQANdesign User manual
204
Get application
8 Adjust groups
Get application
When getting an application there are some options regarding settings. For more information on get application, see section Get application on page 283. When you get an application from a master module using IQANdesign you will have the option to import the adjustable values in the master module to the application. A dialog box is shown where you can select this options.
This dialog box can be disabled in Tools > Options, tab Dialog. The check box is called Show send/get options dialog. Make sure it is selected if you want to use this feature.
Import adjustable values
Select this check box to copy all adjustable values from the master module to the default values in the application. For example, the properties Min [mV] and Max [mV] for a voltage input will be overwritten with its current adjustable values in the master module.
205
Adjust groups
8 Adjust groups
Adjust groups
The adjust groups are used to group or organize channels that are adjustable. It is up to the designer to decide how the channels will be grouped. One idea to keep in mind is that it should make it easier for authorized personnel to find the actual channel, when it needs to be adjusted in the machine. In IQAN systems where there is a display available you will find the adjust groups in a list in the adjust menu. For systems without a display, use a PC with IQANrun to access the adjust groups. To adjust a channels value, just select the group where the channel is placed and then select the particular channel that you want to adjust. It is a good idea to name the group so it is easy to identify the channels it contains, for example Diesel engine or Crane functions. It is often better to have several small groups so you dont need to use the scroll bar to find a particular channel.
Properties
Visible
Select Yes to make this group visible from the master display or IQANrun, or select a digital value channel to control visibility at run time. Enter a PIN code or select a PIN code channel to protect this adjust group. A PIN code is always four digits, for example 0472. Specify required access level to adjust the items in this adjust group. Users with lower access level will not be able to see this adjust group or adjust its items in any way. Select Allow all to allow all users to see and adjust this adjust group. Specify required access level to set factory default values for the adjust items in this adjust group. Users with lower access level will not be able to set factory defaults. Select Allow all to allow all users to set factory defaults. Note: View access level must be same or lower, otherwise the user will not see the adjust group and can therefore not set factory defaults.
PIN code
206
Adjust groups
8 Adjust groups
Select Yes to enable the Copy mode button in the adjust menu. Copy mode is used to copy all adjustable parameters from one mode to another for all adjust items in this group. You can also select a digital value channel to enable the copy mode button in run time. Note 1: All adjust items (channels) in the group has to be controlled by the same Mode selector (or none) to use this function. Note 2: Text parameter channels will not be copied. Select a channel to use as reference when adjusting channels in this group. The reference channel is measured during adjustment.
Reference channel
Protect an adjust group You can decide to protect an adjust group from unauthorized personnel. For example, it should not be allowed for the drivers to adjust the Diesel engine adjust group but the service personnel should have full access. There are two ways to do that, either by using a PIN code or by defining access levels.
PIN code
The simplest way to protect an adjust group is to define a four character PIN code for it, for example 0472. You can also use a PIN code channel to protect it, see section PIN code channel - PCC on page 142. When you have downloaded the application file to the master you have to enter the PIN code to have access to the adjust group. That is done with the jog-shuttle control on the display or with the help of a dialog box in IQANrun. A PIN code protected adjust group is marked with a lock symbol in the adjust menu.
207
Adjust groups
8 Adjust groups
Access levels
A safer and more user friendly way to protect an adjust group is by using access levels. You can define two access levels for an adjust group, one level for view access and another level for set factory default access. The user has to be logged in with at least view access level to see the adjust group. If not, the adjust group is not shown in the list of available groups.
NOTE
An adjustable channel can be added to several adjust groups. This can be useful if perhaps you want to have one adjust group for the driver and another group for the service personnel, where they can also find other more important channels that the driver is not supposed to adjust. The access level for such a channel will be the lowest of all the adjust groups that it belongs to.
ATTENTION
Adjustable channels that are not part of any adjust group will be protected from being adjusted from the adjust menu on the master display or in IQANrun, but it will not be protected from being changed by sending a settings file or a clone file to a master or when using a script in IQANrun to adjust a channel. To protect channels from being changed in any way you must add them to an adjust group, set Access level > View/Adjust to Root and set Visible to False. That way, it wont be visible in any menus and the highest access level possible is required to change it in any other way. Visibility With the property Visible you can decide when you want an adjust group to be visible in the adjust menu. You can select to have a digital input channel to control the visibility at run time. Reference channel Sometimes it will help to have a reference channel during the adjustment process. For example you may want to see a specific input channels value when you adjust the outputs. The reference channel will be measured and displayed during adjustment. There can be one reference channel for each adjust group. You will find it as a property for the adjust group. Add a new adjust group Right-click on the Adjust groups node in the application manager, select Add Adjust Group. Or, select Application > Add > Add Adjust Group. Enter the necessary properties for that group in the property inspector.
208
Adjust items
8 Adjust groups
Adjust items
Select the group in the application manager, to view all the adjust items that the adjust group contains. All items are displayed in a list in the editor in the middle. It is possible to reorder the adjust items in the list. The order represents the position in the adjust menu in the master display or IQANrun. It can be a good idea to have the most frequently used items on the top of the list so you can quickly reach those channels. Use drag and drop to move the items in the list.
NOTE
When reordering items, make sure the list is sorted on the Order column to avoid confusion.
Select the adjust group in the application manager to view the adjust items.
Properties
Channel Visible
The channel that this adjust item adjusts. Select Yes to make this item visible from the master display or IQANrun, or select a digital value channel to control visibility at run time.
Use drag and drop to add a channel to the group. Select the channel in the application editor or in the channel list. Drag it to the desired adjust group node in the application manager and drop it there. When a channel is added to an adjust group, an adjust item is created for that channel. The adjust item gets the same name as its channel by default, but it can be changed into something more appropriate for the master display/ IQANrun adjust menu.
209
Adjust items
8 Adjust groups
When you download the application file, the adjust group and their items (channels) will appear in the adjust menu. It is important to make the channel adjustable before you add it to an adjust group. Check the channels Adjustable property. If you forget to make it adjustable you simply cannot adjust any of the channels parameters. Such channels will be indicated with a lock symbol in adjust menus. Some channel types, such as voltage inputs and current outputs, allow you to set min and max limits for each adjustable parameter. You can prevent a single parameter from being adjustable by setting min and max limit to the same value for that parameter.
NOTE
If the channel has several modes, for example a current output can have several current settings, you need to check the Adjustable property for all the modes that you want to be able to adjust.
210
Logs
An application always contains a system log where system generated events are stored. There can only be one system log. In addition to the system log, you can have as many event and statistics logs as you like. An event log stores events that you define with the help of the event log channel type. A statistics log store the latest value of a given statistic log item. Logs can be viewed in the master display menu system or in IQANrun.
211
Logs
9 Logs
Logs
You will find all your logs in the application manager, under the node Logs. Select it to view a list of all your logs in the editor. Above the list of logs a toolbar is available with the type of logs that can be added. To add a new log click on the type of log that you want to add.
Log list.
Drag and drop your logs in the list to change their order. The order is used when logs are listed in the master displays/IQANruns log menu. We recommend that you sort on the column Order when you are rearranging your log order. Click a column header to change the lists sort order. The logs are stored in non-volatile memory. When the memory is full, logging stops. Log memory status is available through the System output channel, see section System output - SYSOUT on page 132.
212
System log
9 Logs
System log
The system log is automatically added to your application. You will find it in the application manager, under the node Logs. Its default name is System log, but you can change it to whatever you want. System events These are the events stored in the system log.
Event Information stored
Application changed Machine id changed System started Channel alarms/errors Module alarms/errors CAN bus alarms/errors Clock changed Login/Logout External log item Log cleared Settings changed
NOTE
Application name and version. Firmware version. IQANdesign or IQANrun license number. New machine id. IQANrun license number.
Channel name, module/pin connection and status. Module name and status. CAN bus name and status. Date and time before change. User name and access level. IQANrun license number. Information added by an IQANrun user or a script. IQANrun license number. IQANrun license number. IQANrun license number.
Some events are not stored until the system is restarted. Properties These are the properties for the system log.
Visible Select Yes to make this log visible from the master display or IQANrun, or select a digital value channel to control visibility at run time. Select Yes to make this log enabled all the time, or select a channel to enable/disable it in run-time. When the channel value is False, the log is disabled and will not log any events.
Enabled
213
System log
9 Logs
PIN code
Enter a PIN code or select a PIN code channel to protect this log. The PIN code has to be entered to view the log records. A PIN code is always four digits, for example 0472. Specify required access level to view this log. Users with lower access levels will not be able to see this log in the master menu system or IQANrun. Select Allow all to allow all users to see this log. Specify required access level to clear this log. Users with lower access levels will not be able to clear this log in IQANrun. Select Allow all to allow all users to clear this log. Select a channel to clear the log. When the clearing channels value changes from False to True, all records in this log will be cleared. NOTE: This function overrides any PIN code or access level protection.
Clearing channel
PIN code
For more information, see section PIN code channel - PCC on page 142.
Access levels
Allows you to clear a log using the value of a digital channel. This can be useful for example to do automatic clearing of a log when it is almost full or to let the operator clear a log by using a virtual digital in channel connected to a display page button.
NOTE
When using a clearing channel to clear a log any PIN code or access level protection will be disregarded.
214
Event log
9 Logs
Event log
Event logs are used to store events generated by the application. Conditions for when and what to log is decided by one or more log items. Select the event log in the application manager. A list with all log items in the event log is shown. Above the log item list a toolbar is available with the log item types that can be added.
Add an event log To add an event log, right-click on the node Logs in the application manager and select Add Event Log in the popup menu, or select Application > Add > Add Event Log. The log can also be added using the toolbar in the log list. Properties These are the properties for an event log.
Visible Select Yes to make this log visible from the master display or IQANrun, or select a digital value channel to control visibility at run time. Select Yes to make this log enabled all the time, or select a channel to enable/disable it in run-time. When the channel value is False, the log is disabled and will not log any events.
Enabled
215
Event log
9 Logs
PIN code
Enter a PIN code or select a PIN code channel to protect this log. The PIN code has to be entered to view the log records. A PIN code is always four digits, for example 0472. Specify required access level to view this log. Users with lower access levels will not be able to see this log in the master menu system or IQANrun. Select Allow all to allow all users to see this log. Specify required access level to clear this log. Users with lower access levels will not be able to clear this log in IQANrun. Select Allow all to allow all users to clear this log. Select a channel to clear the log. When the clearing channels value changes from False to True, all records in this log will be cleared. NOTE: This function overrides any PIN code or access level protection.
Clearing channel
PIN code
For more information, see section PIN code channel - PCC on page 142.
Access levels
See section Clearing channel on page 214. Value log item The value log item is used to log a value of a channel when a certain condition is fulfilled. The condition is determined by the function of the value log item. When the value of the function changes from false to true a log record is created with the value of the channel specified in the log value property.
Properties
Log value
Select the channel which value will be logged when the log condition is fulfilled.
NOTE
When opening an old application that contains event log channels, the event log channels will be replaced by internal digital channels. A value log item will be created for each event log channel and the internal digital channel will be used as the log condition.
IQANdesign User manual
216
Event log
9 Logs
Event log item The event log item logs an event when a certain condition is fulfilled. The condition is determined by the function of the event log item. When the value of the function changes from false to true a log record is created with the name of the event log item. No value is logged. Measure It is possible to measure log item value and status in the log items view. For more information see section Measure in other views on page 195.
217
Statistics log
9 Logs
Statistics log
Statistics logs are used to log different kind of machine statistics. They are a powerful tool to create for example histograms of operating conditions such as temperatures and pressures. In contrast to the event logs the statistics logs does not grow in size when used. Instead there is one log record for each log item. Select the statistics log in the application manager. A list with all log items in the statistics log is shown. Above the log item list, a toolbar is available with the log item types that can be added.
Add a statistics log To add a statistics log, right-click on the node Logs in the application manager and select Add Statistics Log in the popup menu, or select Application > Add > Add Statistics Log. The log can also be added using the toolbar in the log list. Properties These are the properties for an statistics log.
Visible Select Yes to make this log visible from the master display or IQANrun, or select a digital value channel to control visibility at run time.
218
Statistics log
9 Logs
Enabled
Select Yes to make this log enabled all the time, or select a channel to enable/disable it in run-time. When the channel value is False, the log is disabled and will not log any events. Enter a PIN code or select a PIN code channel to protect this log. The PIN code has to be entered to view the log records. A PIN code is always four digits, for example 0472. Specify required access level to view this log. Users with lower access levels will not be able to see this log in the master menu system or IQANrun. Select Allow all to allow all users to see this log. Specify required access level to clear this log. Users with lower access levels will not be able to clear this log in IQANrun. Select Allow all to allow all users to clear this log. Select a channel to clear the log. When the clearing channels value changes from False to True, all records in this log will be cleared. NOTE: This function overrides any PIN code or access level protection.
PIN code
Clearing channel
PIN code
For more information, see section PIN code channel - PCC on page 142.
Access levels
See section Clearing channel on page 214. Counter log item The counter log item adds a counter to the statistics log. The counter is increased every time its function changes from false to true. Hour counter log item The hour counter log item evaluates its function and increases a timer as long as the function evaluates to true. Min and max log items The min and max log items logs the min or max value of a channel as long as the log items function evaluates to true.
IQANdesign User manual
219
Statistics log
9 Logs
Properties
Channel
The min or max value of the selected channel will be stored in the log.
Measure It is possible to measure log item value and status in the log items view. For more information see section Measure in other views on page 195.
220
10 Languages
Names, units, menu items and other texts in the application file, may need to be presented in several languages. There is always a default language, and thereafter you add new languages, as many as you like. The end user can then select the desired language on the master module display.
221
To add a new language, right-click on the node Languages in the application manager and select Add Language or select Application > Add > Add Language. To delete a language, select the language and select Edit > Delete or right-click and select Delete from the popup menu. In the text list underneath the language list all your translated texts are shown. Here you can enter new translations by selecting a line and clicking on the text to translate or pressing F2 when the text to change is selected. The selected text is also selected in the property inspector. You can sort the texts by clicking on the headers of the list. Language properties These are the properties for a language component.
Name Description Caption Name of this language component. Description of the language. The caption is used in e.g. master menus when selecting language. It is normally translated to the language it represents to make it possible to find the entry in the menu without understanding the currently selected language.
222
Language code
A language code (ISO 639-1) identifying this language and optionally the country (ISO 3166-1). For example, en-us stands for English (United states). A font is needed if characters other than the ones found in the WGL4 character range are used for a language. This font will not be used for characters within the WGL4 character range, since the IQAN software has built-in support for these characters. For the font to be selectable it must be installed in windows. If a font is stated this property determines if the bold version of the font should be included or not. Excluding the bold characters saves memory in the master module. When specifying a font above only the characters used in the application for that language will be included in the font. If you need additional characters to support e.g. text parameters and other dynamic elements you can enter them here.
Include bold
Additional characters
Adding multi-language texts To add texts in different languages to for instance a channel, open the property inspector for that channel and click the check box on the right side of the channels name. Extra properties for each defined language will now appear underneath the name property. Once a property is configured to be multi-language it will show up in the string list under the Languages node of the application manager.
Memory consumption Adding more languages to your application will consume more memory in the master module. When sending an application you can choose not to download all languages, but only the ones you need in that particular machine. See section Send application on page 225 and page 282 for detailed information. You can watch the memory consumption for each language in the application statistics dialog, see section Application statistics on page 20.
223
Unicode
10 Languages
Unicode
IQANdesign supports Unicode including asian languages such as Japanese, Korean and Chinese. The font used by default for the master display supports however only a subset of Unicode called WGL4 (Windows Glyph List 4). It contains characters that are required for Western, Central and Eastern European languages, and includes Cyrillic and Greek alphabets. For more information on Unicode and WGL4, see https://www.unicode.org.
NOTE
If a language is added that requires characters outside the WGL4 subset of unicode, a font needs to be supplied for that language (see section Language properties on page 222). IQANdesign will then extract the additional characters needed by the application from the selected font and include them in the application.
Unicode ranges in the WGL4 Character Set
U+0020 - U+007F U+0080 - U+00FF U+0100 - U+017F U+0370 - U+03FF U+0400 - U+04FF
224
Send application
10 Languages
Send application
When sending an application it is possible to select which languages to send. By default all languages are sent and no send language option dialog is shown. The dialog can be enabled using in the options dialog Tools > Options under the dialog tab.
Check the languages that you want to send to the master. This can be a way to save application memory in the master module, especially for asian languages where extra font data needs to be downloaded.
ATTENTION
When performing a get application or clone from a master without all languages the resulting file will have empty texts for the languages not found in the master.
225
Export
10 Languages
Export
To make it easier to translate all texts in an application it is possible to export all texts to an Excel file. First, add all the languages needed in your application. Then check the multi-language check-box for all texts you want to translate, for example, all texts visible to the end user. Remember all the system specific texts, such as menu items, dialog boxes, etc. These can be found under the Localization property on Display pages, see section Localization on page 235. Select File > Export... to open the export dialog box.
Select Multi-language properties. Click OK to continue. A save file dialog box appears. Select a folder where you want your exported file stored and enter a file name. An xls-file is created. Open the file in Microsoft Excel and change texts in columns G and higher, see image below.
ATTENTION
Please do not change columns A to F or rows 1 and 2. Do not add or delete any rows or columns.
226
Export
10 Languages
227
Import
10 Languages
Import
Select File > Import... and select the Excel file that you want to import from. The Excel file has to match your current application, that is, have the same application id. The application id is stored in a hidden cell in the Excel file. If the application id does not match, the file can not be imported. For more information, see section Application id on page 25. An import dialog box is opened.
Select the languages you want to import. All languages that have the same name in the Excel file and the application file are selected by default. Press OK and youre done.
228
Font selection
10 Languages
Font selection
When adding Unicode texts in IQANdesign or Microsoft Excel, you must use a Unicode font that contains the character sets you need. IQANdesign will use Windows font settings by default. To use another font, see section Dialog options on page 51. A helpful tool to see what character sets a specific font contains is Character Map, that is installed with most Windows versions. In Windows XP for example, you find it in the Start menu under All Programs > Accessories > System Tools.
229
11 Display pages
Display pages are used to design the graphical user interface for the master display that gives the operator, service personnel and other users necessary information in different situations. The difference between this display and a traditional operator or driver environment is that all of the information does not necessarily need to always be shown. By using several dedicated display pages it is possible to show enough of the correct information in different situations. Remember, that even if all information is presented at the same time, it is only necessary that the operator notices the most important information. For further information on how to design operator cabs or driver environments, see available literature on the subject.
230
How to design a display page in IQANdesign The display pages will belong to the application file. You can have as many display pages you want. It is important to remember that all images and controls that you add will increase the application file size. In the application manager there is Display pages, under which you will find all of your display pages. To add a display page, right click on Display pages in the application manager and select Add Display Page in the pop up menu. Or, select Application > Add > Add Display Page. You can also use the tool bar to create a display page. There is one button for each display page type.
231
The New display page will be shown together with the already added pages in the editor. In this view you will be able to rearrange the page order, read the page description and also check the number of controls that have been added to each page. If you select a page in the list, the property inspector will show the properties for the selected page.
Rearrange page order
The page order is only important if the condition for showing the pages are true for two or more pages at the same time. The page with the highest order number will be on the top, shown first. Then, if the hide condition for that page becomes true, the page with lower number will be shown.
Open a display page
To work with a display page or design it, you have to open the page. Click on the actual page in the application manager. The display page will be shown in the editor and the page properties will be shown in the property inspector. The default background color is black, but that can easily be changed. Display page properties
Show Select "Always" to always show this page or a channel to control visibility in runtime. When channel value changes from 0 or False to something else, this page is shown. To show this page only when a button is pressed on another page, set this property to "Not used".
232
Hide
Select a channel to control when to hide this page in runtime. When channel value changes from 0 or False to something else, this page is hidden. Select "Not used" if you dont want to hide this page. This property has no effect unless property Show is used. Select a display page to use as a base for this page. All the controls on the base page will be shown on this page. A typical use for a base page is when you want to have the same set of controls on many pages, such as logotypes or lamps for example. Select a background color for this page. Select Custom... if you want to choose a color that is not in the list. If a base page is selected its background color will not affect the background color on the actual page. The color is unique for every page.
Base page
Color
You must specify when the page shall be shown and when it shall be hidden. The condition must be true and the page will be shown or hidden on the rising edge. The alternative Always means that the page is visible whenever no other page is shown. You can use a channel to control visibility during operation. As soon as the channel becomes true, the page will be shown or hidden respectively. It is also possible to show this page when a display button is pressed on another page. To do that, Set Show to Not used on this page, open the other page and select, Go to display page X, as the button property. (X is the page you want to go to).
Base page
To save some designing time it can be a good idea to use a base page as a template for some other pages. Maybe you want to have some controls visible on several different pages, for example lines or a logotype. Or, you want a button to have the same function on several pages. In that case you would design a page for that and use it as a base page on one or more other pages.
NOTE
The background color of the base page is not copied to the other pages.
233
System info
Reactivation [s]
System colors You can select to define unique colors for your application. This could be a company color or if you want to have some special color that is not represented in the default color list. Click to add a system color. Enter a color name and select the color you want. Select Custom... at the top of the list of colors to create a custom defined color.
IQANdesign User manual
234
Properties
Name Color
The system colors can later be used at all other color properties, for example background color of a display page. Localization
Time format h = hour, m = minute, s = second, t = am or pm h = 12 hour, H = 24 hour hh, mm, ss = leading zero h, m, s = no leading zero Example: HH:mm:ss = 15:04:31 y = year, M = month, d = day y, M, d = no leading zero yy, MM, dd = leading zero yyyy = 4 digit year MMM, ddd = short name (Jan, Mon) MMMM, dddd = long name (January, Monday) Example: dd/MMM/yy = 02/Nov/03 See also property Calendar below. Captions for dialog boxes (CMSG, IMSG, etc.). All texts used in the menu system. Error, warning and information messages. Weekday and month names.
Date format
The dialog boxes that these properties concern are the boxes that will appear on the display, such as Message, Information, Confirmation, Warning etc.
Caption
Button text
235
Properties
Captions Buttons
Define other captions than the default, or define captions in multiple languages. Define other button texts than the default, or define button texts in multiple languages.
Menu system
These properties concern the texts in the menu system. They are grouped according to menu page. Change the texts if you need to or add other languages. System info Add items here to be displayed on the system info page on the master display or in IQANrun. An item can be a text or a channel. Channel items are displayed with the channel name in one column and the value (and unit if applicable) in another column to the right.
NOTE
The channel value is static on the system info page. It wont be updated if the channel changes value unless you leave the system info page and enter it again.
236
Display controls
11 Display pages
Display controls
A display control is used to present information on the display in a pleasant, easy to understand way, either graphical or with text. There are nine types of display controls with different functionality. You will find controls for lines, texts, values, bar graphs, image bar graphs, image gauges, lamps, and sliders. Line control This control is used to draw lines on a display page, for example to create dividers or boxes.
Properties
Visible
Select "Yes" to make this control visible all the time, or select a digital value channel to control visibility at run time. Enter a position on the X- and Y-axis for this lines first and second endpoint. Specify the width of this line in pixels. Select a color.
Text control This control is used to display a fixed text on a display page, for example captions, dial scales, etc.
Properties
Visible
Select "Yes" to make this control visible all the time, or select a digital value channel to control visibility at run time. Enter a pixel value to position this control on the X and Y axis. The windows upper left corner is defined as top=0 and left=0. Note that the "Alignment" property decides the text controls reference position (left, center or right). Specify a fixed width in pixels, or select "Automatic" to let the width be calculated automatically at runtime. Specify alignment of this control, left, right or center. The alignment will correspond to the "Horizontal position" value.
Width Alignment
237
Display controls
11 Display pages
Enter the text that you want displayed or select a text channel. Font size. Choose between Small, Medium, Large and Huge. There is also two larger numeric font sizes, Large Numeric and Huge Numeric. Select "Yes" to use a bold font. Select a color.
Value control This control is used to display a channels value, for example fuel level or the clock.
Properties
Visible
Select "Yes" to make this control visible all the time, or select a digital value channel to control visibility at run time. Enter a pixel value to position this control on the X and Y axis. The windows upper left corner is defined as top=0 and left=0. Note that the "Alignment" property decides the text controls reference position (left, center or right). Specify a fixed width in pixels, or select "Automatic" to let the width be calculated automatically at runtime. Select the channel that controls the value of this control. Minimum and maximum value for this control. The control will stop at these value even if the input channel value is lower or higher. The values are specified in the same unit as the input channel. Enabled when property Show is Value or Value and unit. Specify what type of information to show. You can select Value, Name, Unit, Value and unit or Name and unit. Example: Channel is called Temperature with unit C and value 25.2. Name and unit will show Temperature [C], Value will show 25.2, etc.
Show
238
Display controls
11 Display pages
Format
Specify how you want the value formatted: Decimal, Hexadecimal or Binary. Only useful when Input channel is a numerical value channel and property Show is Value or Value and unit. For hexadecimal and binary, also define property Number of digits. Hexadecimal numbers are prefixed with 0x. Specify alignment of this control, left, right or center. The alignment will correspond to the "Horizontal position" value. Specify how many digits you want displayed for the input channels value. Enabled when property Format is Hexadecimal or Binary. Specify how many decimals you want displayed for the input channel value. Enabled when property Format is Decimal. Font size. Choose between "Small", "Medium", "Large" and "Huge". Select "Yes" to use a bold font. Select a color.
Alignment
Number of digits
Number of decimals
Bar graph control This control is used to display a simple bar graph, for example fuel level.
Border Background
Bar
Properties
Visible
Select "Yes" to make this control visible all the time, or select a digital value channel to control visibility at run time. Enter a pixel value to position this control on the Y and X axis. The windows upper left corner is defined as top=0 and left=0. Select the channel that controls the value of this control.
IQANdesign User manual
239
Display controls
11 Display pages
Specify the width and height of the bar in pixels. Minimum and maximum value for this control, for example 0 respective 200 liters for a tank. The control will stop at these values even if the input channel value is lower or higher. The values are specified in the same unit as the input channel. The bar graph control consists of two parts the background graph and the bar that fills the graph. Select the colors for the two parts respectively. Select "Yes" to show a border around the control. Select a color. Specify horizontal or vertical. Select this option if you want the bar graph to have a LED look.
Background color Bar color Border > Visible Border > Color Style > Orientation Style > LED
Image bar graph control This control is used to display an advanced bar graph. The bar graph consists of two images, one for the background and one for the foreground. Use this control to create a bar graph with your own look and feel.
Properties
Visible
Select "Yes" to make this control visible all the time, or select a digital value channel to control visibility at run time. Enter a pixel value to position this control on the Y and X axis. The windows upper left corner is defined as top=0 and left=0. Select the channel that controls the value of this control. Minimum and maximum value for this control, for example 0 and 200 liters for a tank. The control will stop at these values even if the input channel value is lower or higher. The values are specified in the same unit as the input channel.
240
Display controls
11 Display pages
Window
To show the foreground image in a sliding window on top of the background image, set the size of the window here. To show it as a growing bar, set this property to "Not used". Specify horizontal or vertical. Select the images that you want to use as background and foreground.
Image bar graph at 75%
Background image
Foreground image
In our image library, the frames and bars are separated. To create the foreground image, select a frame and a bar and merge them in your favorite image editing software. Remember to use the same frame as background image for best result. We have supplied a couple of examples of merged frames and bars in the image library. Image gauge control This control is used to display a gauge with a dial and a needle. It is typically used to present vehicle speed, engine speed, fuel level, etc.
Needle Anchor Dial
Properties
Visible
Select "Yes" to make this control visible all the time, or select a digital value channel to control visibility at run time. Enter a pixel value to position this control on the Y and X axis. The windows upper left corner is defined as top=0 and left=0. Select the channel that controls the value of this control.
IQANdesign User manual
241
Display controls
11 Display pages
Clockwise Range > Min angle Max angle Range > Min value Max value
Specify direction of rotation, clockwise or counterclockwise. The needle angles that corresponds to minimum and maximum values of this gauge. The angles are specified in degrees. 0 equals east, 90 equals north, 180 equals west, etc. Minimum and maximum value for this control, for example 0 and 50 km/h for a speed gauge. The control will stop at these values even if the input channel value is lower or higher. The values are specified in the same unit as the input channel. Select a color for the needle. Needle length is specified in percent of the longest side of the dial image. Needle base width is expressed in pixels as the excursion to the left and right of the needle base line. Needle tip width is expressed in pixels as the excursion to the left and right of the needle base line. Anchor position (needle endpoint) on the X and Y axis. The image upper left corner is defined as top= 0, left = 0. Select a color for the anchor. Anchor width is specified in pixels. Select the image that you want to use as dial (background).
Needle > Color Needle > Length Needle > Base width Needle > Tip width Anchor > Center position, X Center position Y Anchor > Color Anchor > Width Dial image
Image control This control is used to display an image, for example a company logotype or an icon. It is also possible to view one out of many images by the use of an image selector.
242
Display controls
11 Display pages
NOTE
When using multiple images with an image selector all images should be of the same size (width and height), otherwise some of the images may be cropped or distorted.
Properties
Visible
Select "Yes" to make this control visible all the time, or select a digital value channel to control visibility at run time. Enter a pixel value to position this control on the Y and X axis. The windows upper left corner is defined as top=0 and left=0. Enter how many degrees you want to rotate the image clockwise. 0 equals no rotation. To control rotation in run-time, select a channel instead. Enter a pixel value for the center position around which the image should rotate on the X and Y axis. The upper left corner of the image is defined as top=0 and left=0. Select a state channel to use as image selector. One image property for each state will be added to this control. The image to be used is decided by the value of the state channel. Select the image that you want displayed by this control. Select the image that you want displayed when the corresponding state is active.
Lamp control This control is used to display a lamp, for example a fuel level warning or parking brake indicator. It uses two images, one for the inactive state and one for the active.
Off image (dark grey) On image (red)
The two images should be of the same size (width and height), otherwise one of the images may be cropped or distorted.
243
Display controls
11 Display pages
Properties
Visible
Select "Yes" to make this control visible all the time, or select a digital value channel to control visibility at run time. Enter a pixel value to position this control on the Y and X axis. The windows upper left corner is defined as top=0 and left=0. Select the channel that controls the value. Select the image that you want to represent the off and on state for this control.
Visible
Select "Yes" to make this control visible all the time, or select a digital value channel to control visibility at run time. Enter a pixel value to position this control on the Y and X axis. The windows upper left corner is defined as top=0 and left=0. Select the channel that controls the value of this control. The needles min and max position that corresponds to the minimum and maximum values. Positions are specified as distance in pixels from top left corner. Minimum and maximum value for this control, for example 0 and 50 km/h for a speed gauge. The control will stop at these values even if the input channel value is lower or higher. The values are specified in the same unit as the input channel. Specify horizontal or vertical. Select the images that you want to use as background and needle.
Top Left Input channel Range > Min position Max position Range > Min value Max value
244
Display controls
11 Display pages
Background image
Slider at 75%
Needle image
Horizontal slider.
245
Design tools
11 Display pages
Design tools
There are some effective design tools to help you create the display pages and hopefully save some development time. Run When you have added a display control to a display page you can do a simple and fast test of how the control will look when you run the application. You dont have to connect an input channel to it, just click on the Run tool button and all the controls on the page will start to run. Grid You can select to show a grid to help you draw and align controls. The visible grid appears as horizontal and vertical dotted lines in IQANdesign, but not in the application sent to the master. The controls will snap to the grid when it is visible. To change the grid spacing, open IQANdesign options, Display pages tab. The X and Y spacing can be set to your preferences. Snap to other controls While dragging a control, press <Ctrl>. The dragged control will now snap to other controls on the display page. Open IQANdesign options, Display pages tab, and select your drag alignment preference. Vertical and Horizontal alignment tools You can rearrange the controls by aligning them. You can align the controls in a vertical line by selecting one of the Left, Center or Right aligning tool buttons. And you can align the controls in a horizontal line by selecting one of the Top, Center or Bottom align tool buttons. To select the display controls that you want to align, press the <Ctrl>-button and click on the controls.
NOTE
The Text and Value controls have a property called Alignment. That property will change the controls horizontal reference position to left, center or right justification. When you then use the above alignment tool, to align several text and value controls, this alignment property can have an affect. Orthogonal alignments You can move and position a control orthogonally. It means that you can only move the display control vertically or horizontally. Press the <Shift>-button and move the control with the mouse.
246
Design tools
11 Display pages
Horizontal and vertical distribution You can move controls and distribute them so they have an equal amount of space between them. You can distribute the controls horizontally or vertically. Select the controls, press the <Ctrl>-button and select the controls. Select the distribution direction you want, horizontally or vertically. Options There are some IQANdesign options that affects the display page design. Select Tools > Options and switch to the Display pages tab in the dialog box that pops up.
Check Show grid to get the grid in the background of your display pages. Enter grid spacing on the X and Y axis. For more information, see section Grid on page 246. The Drag alignment option specifies how the controls snap to each other when dragged with the <Ctrl> key pressed.
IQANdesign User manual
247
Display buttons
11 Display pages
Display buttons
The master module display has display buttons placed around the display that can be used to show another page, activate a function or an adjust page etc.
Some display modules have a Jog shuttle, that can be used to select pages, adjust values or select value parameters in a list etc. There are three functions dedicated to the Jog shuttle, turn clockwise, turn counter clockwise or push. You can also use the buttons in a function in the application. If you want to control a function in the application you have to use a Virtual digital input channel, VDIN. You find display button and jog shuttle properties when you select one or many display buttons. Select a button by clicking on it. To select many buttons, click each button while pressing <Ctrl>. Selected buttons are marked with a white circle. Buttons that have a function are highlighted.
NOTE
If there is a dialog box visible (conditional, interactive or system message), all display page buttons will be disabled, except the ones used for controlling the dialog box. See also section Conditional message - CMSG on page 138 and section Interactive message - IMSG on page 141.
IQANdesign User manual
248
Display buttons
11 Display pages
Button properties
The button has to be enabled if you want to use it on this display page. Select how you want the adjust control displayed. None does not display any adjust control at all. On screen will search for a control on the current page that uses the same channel as the selected adjust item, and highlight that control. Miniature displays the adjust control in a small window in the lower right corner of the display. Menu system displays the normal menu system page for the selected adjust item. Note 1: Options None, On screen and Miniature does not work for adjust items with multiple parameters, such as current outputs or voltage inputs. Note 2: This property is enabled when one or more action properties are referring to an adjust item.
Help context
Enter a descriptive text. The user can read this text by pressing this button. Note: This property is enabled when property Action is set to Help.
Action selector
Select a state channel to use as action selector. One action property for each state will be added to this button. The action to be used is decided by the value of the state channel.
249
Display buttons
11 Display pages
Default action
Select No action to disable this function. Select Close page to close this page when button is pressed. Select Help to display help when button is pressed. See also property Help context below. Select a measure group to display that group when button is pressed. Select an adjust group to display that group when button is pressed. Select an adjust item to display that item when button is pressed. See also property Adjust display below. Select a log to display that log when button is pressed. Select a measure group to display that group when button is pressed. Select a display page to go to that page when button is pressed. Select a virtual digital in channel to control that channels value when button is pressed. One action property per state is created when property Action selector is used. Same function as property Default action.
Action 1, 2, ...
There is a channel type called Virtual digital in, VDIN. This channel type will represent the display button in the application file. To connect a display button to a VDIN, set the Enabled property to Yes for the actual button and select the Virtual digital in channel as the Action property. When the display page is visible and the button is pressed, the connected VDIN channel will reflect the button value. See section Virtual digital in VDIN on page 147 for more information.
Menu button properties
Enabled
The button has to be enabled if you want to use it on this display page. Select No to disable the menu button on this page.
Enabled
The button has to be enabled if you want to use it on this display page.
250
Display buttons
11 Display pages
Action selector
Select a state channel to use as action selector. One action property for each state will be added to this button. The action to be used is decided by the value of the state channel. Select No action to disable this function. Select Close page to close the page when button is pressed. Select a virtual digital in channel to control that channels value when button is pressed. Select a display page to go to that page when button is pressed. One action property per state is created when property Action selector is used. Same function as property Default action.
Default action
Action 1, 2, ...
The button has to be enabled if you want to use it on this display page. See page 249. Select a state channel to use as action selector. One action property for each state will be added to this button. The action to be used is decided by the value of the state channel. Select the display page or adjust item that you want to go to when the jog shuttle is turned clockwise. Select No action to disable this function. Select the display page or adjust item that you want to go to when the jog shuttle is turned counter-clockwise. Select No action to disable this function. Select the display page or adjust item that you want to go to or, select a virtual digital in channel to control that channels value when the jog shuttle is pushed. Select No action to disable this function. One action property per state is created when property Action selector is used. Same function as property Default action.
Default action > Clockwise turn Default action > Counterclockwise turn Default action > Push
Action 1, 2, ...
251
Display buttons
11 Display pages
The button has to be enabled if you want to use it on this display page. See page 249. Select a state channel to use as action selector. One action property for each state will be added to this button. The action to be used is decided by the value of the state channel. Select the display page or adjust item that you want to go to or, select a virtual digital in channel to control that channels value when button is pressed. Select No action to disable this function. One action property per state is created when property Action selector is used. Same function as property Default action.
Default action
Action 1, 2, ...
The button has to be enabled if you want to use it on this display page. See page 249. Select a state channel to use as action selector. One action property for each state will be added to this button. The action to be used is decided by the value of the state channel. Select the display page or adjust item that you want to go to or, select a virtual digital in channel to control that channels value when button is pressed. Select No action to disable this function. One action property per state is created when property Action selector is used. Same function as property Default action.
Default action
Action 1, 2, ...
Select to adjust an item or value with the jog shuttle or up/down buttons
To make it easier to adjust a channel value in the master it can be a good idea to have a shortcut to that channels value instead of using the normal path via the menu system. This can be very useful if you want to adjust a value often. To be able to select an adjust item in the channel list, you need to first make the actual channel adjustable and then add the channel to an adjust group. For further information, see section Adjust groups on page 206.
IQANdesign User manual
252
Display buttons
11 Display pages
Button positions, IQAN-MDL The table below specifies the pixel position of each button center for an IQAN-MDL module. Position 0 is left-most respective top-most pixel on the display.
Pixel positions
F1 F2 F3 F4 F5 ESC A B C D Menu
Button positions, IQAN-MD3 The table below specifies the pixel position of each button center for an IQAN-MD3 module. Position 0 is left-most respective top-most pixel on the display.
Pixel positions
F1 F2 F3 F4 Up Enter Down
253
Images included in the IQANdesign installation When you install IQANdesign on your computer, a folder will be created under My Documents\IQAN Applications called Image Library. In this folder you can find a lot of different images for lamps, gauges, etc. These images are designed to give your application a professional look and feel. By using these images you will also fulfill the SAE standard for dashboard symbols. Create an image group To be able to apply the images to the display controls, you have to add the images to the application file. The first thing you have to do is to create the image groups that will contain all the images. Right click on Images in the application manager and select Add Image Group in the pop up menu, or select Application > Add > Add Image Group. Enter the properties, such as image group name etc., in the property inspector. When you have added or created an image group it is possible to add images to that group. A good idea is to have several image groups with different purposes instead of one large group that contains all the images. For example, one image group for all the symbol images and another for instrumentation images. This will give you an better overview and make it easier to find a specific image.
254
NOTE
All the added images will increase the size of the application file and will also be downloaded to the master. Before you download the application check that the image groups dont contain any unused images that will occupy unnecessary memory space in the master. Add images to an image group When you have created an image group it is possible to add images to that group. To add an image to an image group, right click on the image group and select Add Image... in the pop up menu. Select the image file you want to add in the dialog box shown. The file format must be bitmap (.bmp) or JPEG (.jpg). The image will then appear in the image group, and it will be presented, as a thumbnail, together with the other images in the editor.
The default name will be the file name without an extension. Rename it to whatever you want. The images are embedded in the application file, not linked. Therefore, if you edit an image, it will not be updated in your application file. To update to the new image, right-click the image in IQANdesign and select Replace Image in the popup menu. Select the updated image in the dialog box that is shown and click OK. The image and all controls using it are updated.
Image properties
Transparent
Select Yes to make this image transparent. The top left pixel color is used as transparent color, that is, all pixels with that color will be transparent.
255
Assigning images to controls After importing images to your application you can assign an image to a control. Add an image control, for example an image gauge, to a display page. Select an image to use as dial in the property inspector, property Dial image.
256
Start up image
11 Display pages
Start up image
When the master restarts after power off, a start up image will be displayed for a short period of time before the first display page will be shown. By default this is a Parker logo image, but you can easily change it to another image. To change the start up image Begin with adding the start up image to an image group. Select Images in the application manager. You will find the Start up image as a property in the property inspector. Select the desired image. If you select Not used, the Parker logo will be displayed. The image is centered both vertically and horizontally on the screen. The color of the top left pixel in the start up image will be used as background color for the rest of the screen, that is, the area surrounding the start up image. If you want another color, please add a line of pixels with your desired color at the top of your start up image before importing it into your application. You can see how the start up image looks in IQANsimulate or in the master module.
257
Export
11 Display pages
Export
It is possible to export one or more display pages/image groups to a separate file and later import them to another application. First, select the display pages or image groups that you want to export. Then, select File > Export... to open the export dialog box.
To export only the selected components (with their content), click Selected component(s) without references and then click OK. To export referenced components also, click Selected component(s) with references instead. Click OK to continue. A save file dialog box appears. Select a folder where you want your exported file stored and enter a file name.
Selected component(s) without references
Components with content are exported. Example: You have selected an image group. The image group with all its contained images will be exported.
Selected component(s) with references
258
Export
11 Display pages
Other pages than the selected are not exported. Images that refer to any of the above exported components are exported. Access levels are not exported.
For more information about export and import see section Export/Import on page 69.
259
12 Security
There are several levels of security to protect your applications and machines. This chapter will describe how to protect your application files and also how to protect settings and other data stored in your machines.
260
Application password
12 Security
Application password
The application password will prevent unauthorized people from opening your application or getting it from the master. There are two types of access to your application. The first access level is the Full access password. This password prevents unauthorized users from opening the application file in IQANdesign and thereby changing it in any way. The second access level is the Limited access password. The limited access password prevents unauthorized users from opening the application file with other software tools, such as IQANrun. When opening an application in such a tool, the user will only be able to view it or send it to a master module. The Limited access password will always be required when opening an application in any other tool than IQANdesign. Adding password protection To protect the application file with a password, open the application password dialog box, Application > Passwords.
In the dialog box you will be notified if the application file is protected or not. There are two tabs, one for Full access and one for Limited access. Select the one you want. Click on the Change button. Enter the password twice and click OK. It is not possible to have a limited access password and no full access password.
IQANdesign User manual
261
Application password
12 Security
Change or remove a password Change or remove the password by clicking on the change button. First you have to enter the old password. Then, you may enter a new password or leave the lines empty if you dont want to have an application password. Safe passwords In IQANdesign it is also possible to generate so called safe passwords. This means that a user can have an encrypted safe password that he stores on his computer, which allows him to open and use your application file. The idea behind this type of safe password is that the user doesnt need to know your password and the application file may only be opened on the one computer that you have enabled with the safe password. See section Safe password on page 267 for more information on safe passwords.
262
Password database
12 Security
Password database
The password database stores one or many passwords on your computer. Only you will have access to the passwords. If someone else logs in to the same computer, they will get their own password database. Passwords stored in the database can not be copied or moved to another user or computer. There is a password manager that lets you manage your passwords. Start the password manager by selecting Tools > Password Manager.
Password manager.
In the password manager you can see your public key and a list of all your passwords. The password list has four columns. You can sort the list by clicking the different column headers.
Name Type The name of the application that this password is connected to. Password type. There are two types available in IQANdesign; Full access password and Component password.
IQANdesign User manual
263
Password database
12 Security
Comment Id
Additional password details. The id of the application that this password is connected to.
Password types There are two password types available in IQANdesign; Full access password and Component password.
Full access password
Full access passwords are used when opening a protected file with the same id as the full access password. There can only be one full access password per id in the database. If you add the same password again, the old one will be replaced. IQANdesign deals with two file types that can be password protected with full access password; applications and clone files.
Component password
Used to unlock protected components, such as function groups, in files with the same id as the component password. The component id is shown in comments. See section Locked function groups on page 64 for more information on locked components. Date restrictions Passwords can be date restricted, which means they will only be valid until a certain date. The date is displayed in the comment for date restricted passwords. When the valid date has been passed, the password will no longer work.
ATTENTION
Please dont try to change the clock in your PC to get around a date restriction. The password manager will detect such attempts and lock the password completely if necessary.
264
Add password
12 Security
Add password
Whenever you enter a password for a protected file or component, you will be asked whether you want to add the password to your database. Click Yes to store the password. The password is stored and will be used automatically when IQANdesign detects the need for it next time.
If you click No, the password is added to the database anyway but only temporary. Temporary passwords remain in the database as long as IQANdesign is running. This means that if you open a file with the same id and password during the same IQANdesign session, you dont have to enter the password again. When you exit IQANdesign, all temporary passwords are removed. The text (Temporary) is added to the comment for temporary passwords. If you dont see the dialog Add password, you probably turned it off by selecting the check box Never show this again. To get it back, go to Tools > Options and select tab Show again. Select the check box next to Add password in the list and click OK. Safe passwords To add a safe password to the database, you must first receive it from your password administrator. You do that by sending the administrator a message, for instance by e-mail, with your public key and a request for the password you need. The public key can be found above the password list in the password manager dialog. There are also two buttons available. Click Send as Mail to create a new message in your e-mail software with the public key in it. Add the e-mail address for the administrator and a request for a password in the message, and then send it. To enter the public key in some other software, click Copy to copy it to Windows clipboard and then paste it where you like. When your request has been granted, you will receive a safe password in return. The safe password is just a long string of characters. To add it to your password database, click on the Add Safe button. Enter the password in the dialog box that appears and click OK.
265
Add password
12 Security
The safe password is added to your password database and appears in the password list. Check the password list to verify that you received the correct password with the access you need.
266
Safe password
12 Security
Safe password
Sometimes you need to give other people access to your application, for example service personnel or other users. You can also grant access to locked components as well as access levels and master login. In IQANdesign there are functions that help you generate so-called safe passwords. This means that you can generate an encrypted password that only gives a user access to open your application file or access the locked components on their specific computer. Only that specific user will be able to use the safe password, no one else. The safe password is unique and is generated from two parts, your application id/password and their public key. The public key is generated by a users licence number and unique information from their computer. The idea with this safe password is that you dont have to inform anyone of your passwords. The user always works with the encrypted safe password. The encrypted password must be put into their database, they cannot enter the encrypted safe password in a standard password dialog box to open your application file or access protected information. Create a safe password There are three steps to generate a safe password. You need to have the users public key. The safe password is generated from the users public key and the original password. The new safe password needs to be stored in the users password database.
Public key
Instruct the remote user to start the IQAN software that he needs the password for on his actual computer (the computer where the user needs to have access to the application file) and select Password Manager in the Tools menu. Select to either mail the public key to your computer or just copy and paste it where you want it.
Create safe password
When you have received the Public key it is your turn. First open the application file that you want to give the other user access to and then select Tools > Create safe password from the menu. Enter the public key you just received in the edit box Recipients public key. Note that the software name for the public key is shown. This is the software where the remote user can use the safe password. Select the type of safe password to generate.
IQANdesign User manual
267
Safe password
12 Security
Full access password gives the user full access to your application in IQANdesign. It can also be used by other programs, for example IQANrun, but then only with viewing access. Limited access password gives the user access to open your application in another program such as IQANrun or IQANscript. The user can view certain information in your application such as modules, physical I/O and unprotected logs. If you want to grant the user view access to the whole application (except locked components) you need to check the Allow application viewing checkbox. To grant the user view access to items protected by an access level you also need to select the access level to give access to in the drop down menu. Component password gives the user access to a locked component such as a locked function group. Select which component to grant access to in the drop down menu.
268
Safe password
12 Security
User login makes it possible for a user to login to a master module without knowing the password. Enter the username to grant login rights for in the edit box under user login. Enter the corresponding password in the password edit box. If you want to restrict the safe password in time, select the Restrictions tab. Check the checkbox for valid until and enter the date for the last day that the safe password should be valid.
Click Create to create a safe password based on your selections. The safe password is displayed in a separate dialog box, see image below.
269
Safe password
12 Security
Send the safe password back to the user by clicking Send as Mail, or use Copy to copy it to Windows clipboard.
Store the safe password in the users database
The safe password must be added to the database on the other users computer. Instruct him to open the Password Manager on his computer and click Add Safe. Enter the safe password that he received from you and select OK to store the password in the database. It is now possible to access the granted resource on that users computer without entering the corresponding password.
270
Access levels
12 Security
Access levels
Access levels are used to define what users can see or do in your machines. You can define as many access levels as you need. All your access levels are found in the application manager, under the node Security. Select it to view a list of all your access levels in the editor.
Drag and drop your access levels in the list to change their order. The highest access level is called Root and has order 0 (zero). It is used by the superuser, but other users can also have this access level. The root access level can not be deleted or changed. We recommend that you sort on the column Order when you are rearranging your access level order. Click a column header to change the lists sort order. Add an access level To add an access level, right-click on the node Security in the application manager and select Add Access Level in the popup menu, or select Application > Add > Add Access Level. Properties These are the properties for an access level component.
Name Description Access level name, for example, Production or Service personnel. Access level description.
271
Users
12 Security
Users
Each user is connected to a certain access level. The user can see or do everything that is protected by the same or lower access level. The application can contain users connected to the different access levels. These users are the same for all machines and can typically be generic users such as production and service. It is also possible to add machine specific users. These users are created by using IQANrun. This means that different machines can have different users, but they will all have the same set of access levels, defined in your application. To get access to protected settings, logs, etc., you have to log in to the master module with a user that has sufficient access level for your task. IQANrun is a software that has the ability to log in to a master module, see IQANrun User Manual for more information. Superuser One user will always exist in every machine, the superuser. Its password is specified in the application and will therefore be the same in all your machines that use that application. Select the user Superuser under the access level Root in the application manager and enter desired password in the property inspector. The superuser will always have the highest access level possible. This user is only intended for creation and management of other users and should not be used otherwise.
NOTE
The user name for the superuser is Superuser. User names are case sensitive, so make sure you use a capital S when logging in as this user. Administrator users Other users can also create and manage users. Such users are called administrator users. Administrator rights can be specified when creating a new user. Administrator users can only create and manage users with lower access levels than themselves. Add a user Expand the node Security in the application manager and locate the access level that you want to add a new user to. To add a user, right-click on the access level and select Add User in the popup menu. Properties These are the properties for user component.
272
Users
12 Security
User component name, for example, Production or Service. User description. The username of the user. The password of the user. States if the user will be an administrator, i.e. have the possibility to add and change other users. A numeric value that will be associated with the user. The value can be used in e.g. the system output channel to get the tag of currently logged on user.
273
Application security
12 Security
Application security
There are some properties that affect application security. Most of them are access levels for different operations. The security related properties will let you control what the users can see or do with your application in a machine, such as change settings, view logs, etc. Security properties These are the security properties that are common for an application. To access these properties, select Security in the application manager.
Superuser password Enter superuser password for this application. This password can only be changed in the master module by downloading a new application with another superuser password. Specify required access level to change machine id. Users with lower access level will not be allowed to change the machine id. Select Allow all to allow all users to change machine id. Specify required access level to update the application in a machine. Users with lower access level will not be allowed to update application. Select Allow all to allow all users to update applications. Note: This property only affects application updates from IQANrun. IQANdesign can always be used to update application regardless of users and access levels. Specify required access level to send settings to a machine. Users with lower access level will not be allowed to send settings. Select Allow all to allow all users to send settings. Note: Some settings may be protected by a higher access level. To update these settings you must first log in to a user with sufficient access level.
NOTE
It is strongly recommended that you define a superuser password for your application, otherwise your machines will be totally unprotected. Anyone can manage users and change any setting in the machine. Also, make sure that you have defined both full and limited access passwords for your application. Without these it is possible to get the application from a
IQANdesign User manual
274
Application security
12 Security
master module and change the superuser password. For more information, see section Application password on page 261. Component properties There are properties on the different components in your application that affect security. Here is a list of component types that have security related properties.
Measure groups Adjust groups Logs View access level. Access level for view/adjust and set factory default value. View access level and clear access level.
275
13 Simulation
To simulate your application you need to install IQANsimulate on your computer. IQANsimulate is a very useful tool that helps to assure the functionality of your application before you download the file to the master. It is also very easy to check a function if you are unsure of its behavior. Another benefit is that if your application contains a display module you dont have to download your application file to check your display pages, display controls or menu system. The application file will appear exactly the same way in the simulator as in the real master module. Use the mouse to click on the display buttons or to turn the jog shuttle. For details on IQANsimulate refer to the IQANsimulate user manual.
276
IQANsimulate synchronization
13 Simulation
IQANsimulate synchronization
IQANdesign and IQANsimulate both have features that allow you to control a simulation from either user interface. IQANdesign controlling IQANsimulate IQANsimulate can be controlled remotely by IQANdesign. The Start, Stop, Pause and Step functions are available in IQANdesign main menu and main tool bar. Input values can be controlled from IQANdesign with the help of sliders in IQANdesigns function group view.
Slider controlling the input values from IQANdesign.
When starting a simulation from IQANdesign, it will first start IQANsimulate if it is not already running, then send the application file currently opened in IQANdesign to IQANsimulate. If IQANsimulate does not have any simulation file opened, it will start simulating immediately using the application file sent by IQANdesign. If a simulation file is already opened, IQANsimulate will first check if the simulation file matches the id of the application sent from IQANdesign. If not, you have to decide if you want to open another simulation file or create a new empty file.
After making sure the application matches the simulation file, IQANsimulate will update the simulation file with the new application and then start the simulation. IQANsimulate controlling IQANdesign When controlling the simulator from IQANsimulate, IQANdesign is synchronized so its simulate menu items and tool bar buttons are enabled/disabled accordingly. This synchronization will only work if the simulation was started from IQANdesign.
277
14 System communication
This chapter will present the steps necessary to transfer applications to and from the master. Whenever an application is sent to the master, an application check is performed before the transfer starts. If any errors are found the application can not be sent. Hints and warnings returned by the checking procedure will not prevent sending the application to the master. However, it is recommended that all the warnings be fixed before sending the application. Transfer of application data can be done via a serial port, USB, CAN or a modem.
278
Options
14 System communication
Options
Before transferring data between the PC and the IQAN system, you need to set up your communication options. Select Tools > Options and select the Communication tab in the dialog box. When you have connected the PC with the IQAN system, a green status lamp lights up in the IQANdesign status bar to indicate that the connection is OK. If the lamp is not green you may need to select a different communication port.
USB The USB drivers are installed automatically the first time you connect a master module to your PC.
279
Options
14 System communication
ATTENTION
Make certain to use a USB isolator when using the USB port. Failure to do so may result in damage to your PC's USB port(s). For more information, see the instruction book for your master module. CAN To use CAN as communication device you need a CAN adapter attached to your PC. For a list of supported CAN adapters, see the software data sheet or contact Parker support. IQANdesign can connect using the first available CAN adapter or you can select a specific CAN adapter in the options dialog box. When using CAN, please make sure there is no other traffic (ICP, SAE J1939, etc) on the bus you are using for diagnostics, otherwise the functionality can not be guaranteed. If there are multiple master modules connected to the same CAN bus, you will be asked which one you want to connect to when you start to communicate.
If you want to switch to another module, select Communication > Disconnect CAN and then start to communicate again to get the module selection dialog box. Serial port This requires a standard RS-232 serial port on your PC. Also select which COM port to use.
280
Options
14 System communication
Simulator Select this device to communicate with IQANsimulate instead of a real master module. IQANsimulate needs to be started on the same PC and running a simulation for this communication to work. The programs will communicate over a TCP/IP port. Port number defaults to 8325 in both IQANrun and IQANsimulate and should not be changed. If you must change port number, make sure you use the same port in both programs. Modem Select a modem in the list. The modem you are planning to use must first be installed by Windows. Follow the instructions provided by the modem manufacturer for more information on the installation procedure.
281
Send application
14 System communication
Send application
Select System > Send Application or click on the Send Application button in the tool bar. The shortcut key for sending an application is F11. The application will now be checked for errors and the result will be displayed in a dialog box. Continue sending by clicking the Send button in the dialog box. For more information, see section Application check on page 17. If enabled, a dialog box asking for options regarding settings is displayed. Select your options and click OK to start sending. For more information, see section Send application on page 204. A dialog for selecting which languages to send will also be displayed if enabled. Select which languages to send and click OK to start sending. For more information see section Send application on page 225. Enable send dialog boxes in Tools > Options, see section Dialog options on page 51 for more information. Status is shown during the send operation by a progress bar.
Sending application.
When the application has been sent, the master module will automatically be restarted.
Abort transmission
When sending an application to the master, first make sure the machine is not moving and the engine is shut down.
282
Get application
14 System communication
Get application
Before getting an application from the master, be sure all connections between the PC and the master are completed.
Getting an application from the master
Select System > Get Application or click on the Get Application button in the tool bar. The shortcut key for getting data is <Shift>+F11. If enabled, a dialog box asking for options regarding settings is displayed. Select your options and click OK to start sending. For more information, see section Get application on page 205. Enable dialog box in Tools > Options, see section Dialog options on page 51 for more information. Status is shown during the get operation by a progress bar.
Getting application.
Abort transmission
283
284
Modem connection
14 System communication
Modem connection
By connecting a modem to your PC, you can communicate with a remote IQAN system. It is possible to send and get applications, measure and do all the things you can do with a local system. Start by installing the modem to your PC, follow installation instructions that come with the modem. Select the modem you want to use in the IQANdesign options dialog box under the Communications tab. Before attempting to communicate with a remote system it is a good idea to verify that a modem is connected to the remote system master. Connect via modem In the Communication menu you will find the command for connecting via modem. Select Communication > Connect via Modem... and do one of the following: Enter the phone number of the remote modem to be called in the text field Telephone number. Select an entry from the phone book list. Select a previously dialled number in the drop down list Telephone number.
285
Modem connection
14 System communication
Once communication is initiated the text in the dialog box will keep you informed with the progress of the call: dialing, connecting, etc.
Abort transmission
If the connection has to be stopped, click Cancel. Disconnect When you are ready, disconnect the modem connection by selecting Communication > Disconnect modem.
286
Phone book
14 System communication
Phone book
There is a simple phone book available to help you keep track of all your machines and their phone numbers. Each record in the phone book stores these fields: Name Company Machine id Location Phone number Comment To access the phone book, select Communication > Connect via Modem.... The dialog box shown in the previous section (page 285) is displayed. The contents of the phone book is displayed in the list view in the middle. Each record is displayed on its own row and each field in a separate column. You can sort the list by clicking the column header that corresponds the field you want to sort on. Clicking the same column once more reverses the sort order. Add To add a new record in the phone book, click the button Add. A new phone book record dialog box appears.
Enter record data in the fields and click OK to store the record. All fields are optional, but you should at least enter a phone number, for obvious reasons.
287
Phone book
14 System communication
Edit To edit a record in the phone book, select the record in the list view and click the button Edit. The phone book record dialog box appears. Change one or more fields and click OK to store your changes. Delete To delete a record in the phone book, select the record in the list view and click the button Delete. A confirmation dialog box appears.
Click Yes to delete the record. Export To be able to share your phone book with others or move it to another computer there is an export function. Click Export and a save dialog box appears. Select a folder and enter a file name for the file where you want your records stored. All records in the phone book are exported. Import To import previously exported records, click Import. An open file dialog box appears. Select the file that you want to import. All the records in the file are imported.
288
Choosing a modem
14 System communication
Choosing a modem
Here are some general guidelines we can offer. Remember, these are only general guidelines. We have several modems in our lab that break one or more of these guidelines and still work fine. We also have a couple of modems that follow all the rules and are problematic. The guidelines presented here concerns the modems you connect on your PC side, not the modems you connect to the IQAN master module. For IQAN modem recommendations, see Remote diagnostics, Catalogue HY17-8372/ UK.
We recommend avoiding Winmodems and RPI modems
These modems, otherwise known as software modems, offload some of the smarts of the modem to the host computer. They use software drivers to handle things like compression and error correction that are normally handled by the hardware/firmware in the modem. To be fair, these modems have a couple advantages the drivers are easy to update, and the overall cost of the modem is lowered (the whole concept of a software modem probably came about as a result of the competition in the modem market). In our view software modems have several disadvantages, for example: The host computer is forced to donate resources in support of the communications session (not only the CPU, but also memory, data bus, power and so on). Shifting these duties to software results in an overall loss of efficiency (custom hardware is better suited to handle this type of processing). They seldom work well with GSM modems. How can you tell if a modem is a software modem? Usually, you'll see Win modem or RPI somewhere on the box.
We recommend using external modems
This is simply the best way to ensure you get a modem with all its brains intact. As far as we know, it's not practical to produce an external modem that uses drivers to handle things like error correction and compression. An external modem is also easier to monitor and troubleshoot (most have status indicator lights on the front panel).
We recommend using direct lines
... and not going through the company switchboard. If you have to go through the company switchboard, use an analog line. Also, make sure the switchboard doesnt do any noise reduction on the line you will be using.
We recommend against chasing the latest technology
Modem makers often race to hit the market first with a new feature in order to gain market share. It often takes a little while to get new features reliable
IQANdesign User manual
289
Choosing a modem
14 System communication
though, so the first few batches of modems sporting a brand new feature often aren't as reliable as subsequent batches will be.
We recommend getting a modem with the features you need
... and no more. In other words, if you need a modem strictly for data communication, why get a voice modem? This is a cost saving recommendation for the most part, but there's a certain less can go wrong issue also.
We recommend using well-known brands
It's tough to know for sure if the maker of your modem will still be around in a year or two in the event you need a new driver or support for your modem. The odds seem to be a bit better if you stick to an established brand.
Buy from a store with a reasonable return policy
This should allow you to test the modem in the environment you'll be using.
If you need to buy many modems for a project
... buy one or two first and test them thoroughly with the code you'll be using before committing the money for all of them. This only makes sense. If you're going to be buying a couple hundred modems, make sure you're getting modems that will work well in your situation.
If nothing else works
... try using a GSM modem on the PC side as well. Make sure that both modems have SIM cards from the same network operator.
290
15 Coding guidelines
IQANdesign is a tool that gives the designer great freedom in designing functionality for control of mobile hydraulic applications. This flexibility also means that there are different ways of implementing the intended machine function. But not all methods are good designs, a well designed IQAN application is readable and understandable, robust to errors and always produce the expected output. This chapter describes general guidelines for implementation of IQANdesign applications. Applying coding guidelines is of great importance when implementing safety functions, but most of these guidelines can be taken as advice for all types of applications.
291
General guidelines
15 Coding guidelines
General guidelines
These are general guidelines that improve the readability of an IQANdesign application.
Characteristics of a well designed application file
Naming conventions Documentation Architecture Layout Calculation order Application check Types
Use readable names Use description Use function groups of limited size Inputs to left, outputs to right No unintentional priority warnings No errors/warnings Avoid unnecessary casting (e.g. dual object used in IDC)
Naming conventions The best way to document the application file is to use descriptive names. Names should be unique. Even though it is allowed by IQANdesign, two channels should not have exactly the same name; then more descriptive names are needed. Also see section Naming channels on page 88.
Naming of digital channels
Digital channels, e.g. DIN or IDC, should have names that describe the active state of the channel, where you can read the name as a true false/statement.
EXAMPLE
A proximity switch that is used to detect if the cab door is closed, could have a name like: Sw Door closed Bad examples are door switch, proxy 1 or DIN-A. If a pair of normally open and normally closed sensors are used (NO/NC), then good names could be: Sw Door closed Sw Door open
292
General guidelines
15 Coding guidelines
EXAMPLE
An IDC that is used to check that a start-up condition, where the value true means that the condition is met, could be named: Start up OK Start up safe Crane start up OK Bad examples are Start up safety, IDC start check or New Internal Digital.
Naming of operator controls
Operator controls should be named after their location, or after the function that they control.
EXAMPLE
Input from a coordinate joystick could be named: JS Right X Or if the joystick only control the boom function JS Boom If the boom can be controlled with a radio remote, a suitable name for that input may be: RR Boom
Naming of sensor inputs
For analog inputs that provide a measurement, name the channel to describe what is measured.
EXAMPLE
A PT sensor that measures hydraulic oil temperature could be named: Hyd. oil temp Hydraulic oil temperature Avoid names such as temp, tempsensor or VIN-A.
Use of abbreviations
When using abbreviations, such as temp for temperature, it is important to use the same abbreviation throughout the entire application. Using different abbreviations for the same word only causes confusion.
293
General guidelines
15 Coding guidelines
Documentation Use description. For functions where the name of a channel alone is not sufficient to understand the functionality, add a description to that channel.
EXAMPLE
Architecture Organize applications in function groups that are oriented around a set of functions that share the same information, or that are similar in nature. Structure applications in function groups of limited size. As a rule of thumb, strive for function groups of a size where there is no need to scroll to view other parts of the group.
EXAMPLE
For a wheel loader application, the choice of function groups on a top level could be: Joystick functions, with all the controls for the hydraulic implements. Engine, with J1939 interface, including engine speed command. Transmission control, a separate group from the engine, but with function group interfaces to the engine. Machine diagnostics, with a collection of diagnostics that do not influence the machine operation, e.g. hour counters. Layout Organize functions with inputs to the left and outputs to the right. This will aid the readability of the application by giving a graphical illustration of the control flow.
EXAMPLE
294
General guidelines
15 Coding guidelines
Calculation order The application should not have any unintentional priority warnings. See section Calculation order on page 62.
The effect of a reverse calculation order will in most cases be limited to a delay in the response time of that function, but for complex functions the calculation order can be used to change the functionality. When this is intentional, it should be well documented, and it may be wise to place that function in a small function group on its own to reduce the risk of unintentionally changing the calculation order with the Auto order function.
295
De-energization Error detection Error detection action Start and restart conditions One control station at a time Protect parameters
Deactivate output if commanding input is open. Check status. Use safe error values. Consider safe start and restart conditions. Use states to avoid ambiguous input. Use limits and security.
De-energization The use of De-energization is a general safety principle. Design the control function so that the output is deactivated if the commanding input is open. Error detection Use error detection by checking the status of channels used for control. Error detection action Design the application to enter a safe state if an error is detected. In IQAN, some error detection is automatic, and have an automatic response that sets the channel to its error value. Design the application with safe error values.
EXAMPLES
For VIN that is reading the signal for a joystick function, a good error value is normally 0, since that normally corresponds to no activation. Another example is a VIN that is reading the pressure in an overload detection function, a good error value here is to use a pressure that is higher or above the maximum possible pressure. Start and restart conditions Consider the safety of start-up and restart conditions. It is wise to design the application so that actuation of hydraulic implements always require a deliberate action from the operator.
IQANdesign User manual
296
EXAMPLE
Start block functions. For start-up, design a function that waits for the joysticks to return to the neutral position before allowing actuation of the hydraulic implements. To avoid unexpected re-start after an error that could be intermittent, design a function that requires the joystick to return to neutral after an error is detected.
The compare channels AAC, ADC and DDC can also be used in the implementation of safe start and restart conditions.
One control station at a time In applications where hydraulic implements can be operated from different control stations, it is important that only one control station is active at a time. In IQANdesign, use states to avoid ambiguous inputs.
297
EXAMPLE
For a crane application where the functions can be operated both by joysticks in the cab or by a radio remote, two separate inputs are used to select either control from the cab, or from the radio remote. A state machine channel is used to select if local joystick control or radio remote is used.
Protect parameters Modifying parameters, such as voltage input calibration, function parameters or current output min and max can have a significant impact on the machine functionality, where incorrect adjustments can cause an unwanted behavior. There are two ways to avoid this for parameters that need to be adjustable: Use limits on the parameters. Protect the adjust groups from unauthorized access. The use of limits should be the primary way of keeping the parameters within a safe range. If limits are not enough, protect the adjust groups with an access level or PIN codes. User access levels gives a stronger protection than PIN codes, and are to be preferred for parameters that can influence safety.
298
Safety related function groups Interfaces to non safety related functions Application defaults on parameters Input integrity
Use safety related function groups where applicable. Safety related functions shall take priority over non safety related (limiting). Use safe application defaults. Use compare channels.
Safety related function groups Organize the application in function groups so that the safety functions are separated from normal functions. Mark function groups containing safety functions as safety related, see section Safety related function groups on page 67. Interfaces to non safety related functions The safety function shall always take priority over normal functions. When the safety functions can not be completely separated from normal functions, this needs special attention. To ensure that the safety function takes priority: In analog channels, e.g. DMAC use Limiting objects with the MinOf (absolute) method. In digital channels, e.g. IDC, use Blocking objects with the Or method. To control the risk of an unexpected input from a normal function, always use limits to keep it within the expected interval. Application defaults on parameters Design the application so that it is in a safe state when the application default is used for any parameter. IQAN modules certified for functional safety are continuously monitoring the integrity of stored and adjustable parameters. In the unlikely event that adjustable, factory default or stored parameters are corrupted, the module will fall back to using the application default values for the affected channel(s).
299
EXAMPLE
On an application with a safety function for load moment control, where the geometry of the machine influences the configuration of the overload protection, the parameter(s) for overload are safety related. If the boom length is a function parameter that is configured in production for various machine models, select an application default at or above the longest possible boom length. Input integrity The integrity of the input signals used in a safety function must be ensured. For many input types, for example those connecting to digital inputs, this can only be done by comparing the signal with another redundant signal. Use the compare channels AAC, ADC and DDC to check if the inputs signals are OK.
300
16 Examples
This chapter contains a number of examples. You can find the actual components used in these examples in the application file Examples.ida, which can be found in the Examples folder created by IQANdesigns installation program.
301
Rename the voltage input by clicking on the Name property in the property inspector. Enter the new name Temperature and press <Enter>. Change the unit by clicking on the Unit property in the property inspector. Enter the new unit C and press <Enter>. The character can be inserted by typing 248 on your numeric key pad while holding the <Alt> key pressed.
Channel renamed.
Now, we need to connect this voltage input to a pin on a module. Select Modules in the application manager.
IQANdesign User manual
302
Modules overview.
Add a master module by clicking the MDL button in the modules tool bar. Rename the master module by pressing <F2> (shortcut key for Rename), enter Master and press <Enter>.
Select Application in the application manager. Click the voltage input and drag it to MDL: Master in the application manager.
Select MDL: Master in the application manager. A block diagram is shown. Your voltage input has been connected to the first available pin. Point at the index next to your voltage input (A) to see connector and pin number.
303
To use another pin, simply drag the channel and drop it on another index. Select Application in the application manager. Add a second channel, a frequency input. Well use a different method this time. Click the FIN button in the function group tool bar and drag it to the work area. Drop the channel where you want it.
Rename frequency input by pressing <F2>, enter Vehicle speed. Then press <Tab> twice to move to property Unit, enter km/h and press <Enter>. Move to property Scaled max and enter value 50, press <Enter>.
Channel renamed.
Connect the frequency input to the master module in the same way as you did with the voltage input. Now, we will add a display page and a couple of controls that will be used to display our voltage input and frequency input values. Right-click on
IQANdesign User manual
304
Display pages in the application manager and select Add display page in the popup menu.
Rename the display page by pressing <F2>, enter Main page and press <Enter>. Set property Show to Always to make this page visible. Select Main page in the application manager. Add a value control by clicking Value in the display page tool bar. Move the value control to another position on the display page. This can be done in several ways. The easiest is to drag and drop it where you want it. See section Design tools on page 246 for other methods.
IQANdesign User manual
305
Rename it to Temperature value. We want to connect our voltage input to this value control. Go to the property Input channel in the property inspector. Click on the drop down arrow to the right and select our voltage input in the popup menu.
We want to use a larger font for this value. Go to property Font in the property inspector. Click on the expand button to the left. On property
IQANdesign User manual
306
Size select Huge in its drop down list. On property Bold, double-click its value to change it to Yes.
For our frequency input we want to use a gauge to present its value. The gauge control needs a background bitmap for its dial. Therefore we must start to add an image to our application. Right-click on Images in the application manager and select Add image group in the popup menu. Rename the image group to Dial images. Right-click on Dial images in the application manager and select Add image in the popup menu. Navigate to the folder Image Library that has been installed on your computer. Find the image file light_speedometer_50kmh.bmp in the Gauges folder and open it.
307
The image is added to your image group and automatically renamed to its file name without the suffix. The image group view shows only thumbnails of its images.
Go back to the display page Main page by selecting it in the application manager. Add a gauge control by clicking the drop down arrow on the IGauge button and select the dial image in the popup menu.
308
The gauge needle is by default positioned in the center of the image. This is not correct for this gauge. In the folder where you found the image, there is also a text file with all the property values you need to position the needle correctly. Enter all these properties, see image below.
Set property Input channel to our frequency input Vehicle speed [km/h]. Now, we want to save our application, but first we should give it a name and a version. Select Application in the application manager. Change
IQANdesign User manual
309
property Name to Examples and property Version to 1.00. The status bar of IQANdesign should now show Examples 1.00.
Status bar.
Select File > Save. A save dialog box is shown. Select folder and file name and click Save. To test our application we will use IQANsimulate. Click the Run button in the main tool bar. IQANsimulate is started and the simulator window is shown.
Simulator running.
The simulator detects an error on our voltage input. That is because the default value for all channels is 0, and that is detected as a short-circuit to ground for voltage inputs. We can easily change the value of our voltage input by clicking on it and moving its slider control in IQANsimulate or IQANdesign. Also click on the F2 button in the simulator window to close its error dialog box. Play with the values on our voltage and frequency inputs and see how the displays controls react.
310
Simulator running.
311
A function group is created. Function groups are containers of channels. They will let you organize and structure your application. A normal application contains a lot of channels, and having them all in the same view is not a good idea. You can create as many function groups as you like and even have nested function groups. Rename the function group to Crane.
Double-click on the function group to open it. You can also select the function group in the application manager under Application. The editor should now be empty. Now lets add the channels we need for our crane. Add two Directional analog channels (DAC) with the names Lever Boom and Lever Telescope. This is a pre-calibrated channel type for IQAN levers. Its value is -100% to 100%, where 0% equals center position.
312
Add two Current output channels (COUT) with the names Boom and Telescope. This is a channel type to control current outputs on IQAN modules. It is typically used to control a valve. Also, to prepare for our end damping function, add a Dual direction math channel (DMAC) and rename it to Telescope function. This channel type can be found on the Calculation tab in the channel tool bar. It is used to perform mathematical calculations, which we will do later. Also, change its Unit property to [%]. The editor should now look something like this:
Some of the channels are red, which means there is some problem with them. Point your mouse to a channel to see a description of the problem. In our case it says Error: Unassigned, which means the channel isnt connected to any module. You can also use the Check application function to get more details on all your application problems, see section Application check on page 17.
Problem description.
To fix this, we need to add modules and assign our channels to them. Select Modules in the application manager. Drag a lever module (Lx) and an expansion module (XA2) and drop them on CAN bus A.
313
Go back to our Crane function group. Select both lever channels by dragging a box around them. Drag both channels and drop them on the Lx module in the application manager. Do the same with the current outputs, but drop them on the XA2 module.
The current outputs are still red. The problem description now says Error: Undefined reference. This means the reference property Input channel has not been defined. The input channel is used by the current output to control its value. It should range from -100% to 100%. The input value is converted to a current based on the channel calibration, see section Value on page 100. Fix this problem by selecting Lever Boom as input channel on the Boom current output. On the Telescope output we want to use Telescope function instead to control our output. This is because we want to do some calculations on the telescope lever and position inputs before passing the value to the output. Lines are now drawn between our channels to indicate how channels reference each other. None of the channels are red anymore. Instead, the line between Telescope function and Telescope is red. This indicates a Priority, or calculation order, problem. All channels are calculated in a specific order each sample. The default order is the order they were added to the application.
IQANdesign User manual
314
Remember that we added the current outputs before we added the math channel. This means that Telescope will be calculated before Telescope function and thereby use Telescope function value from the previous sample. With a sample time of 50 ms, this means you will get a 50 ms delay here. Not dangerous, but probably not what we wanted. To fix this, right-click on the Telescope output and select Calculation order. A dialog box is shown.
Change the order by drag and drop of the necessary channels. In this case we can use the Auto order button, which will try to order the channels for us so we get as few Priority problems as possible. Click OK. Now its time for the end damping function. We want the telescope to slow down before it reaches any end position. To do this we need to know the telescope position of course. The telescope position is measured with a position sensor connected to a voltage input on our XA2 module. There is one problem though, the telescope position will be used in other function groups in our application later on. If we put it in our Crane function group, it is hidden from all other function groups. Channels in a function group can only reference other channels within the same group. The solution to this is to use a Function group input channel. Add a Function group input channel to the Crane function group. It is located on the Miscellaneous tab in the channel tool bar. Rename it to Telescope position. Change property Unit to m (meters).
IQANdesign User manual
315
Go back to the Application editor and add a voltage input. Rename it to Telescope position sensor. Change property Unit to m (meters). Change the Scaled max property to 2. This corresponds to our telescopes maximum length, which is 2 meters. Drag it to the XA2 module and drop it to connect it to one of its pins. To use it in the Crane function group, select the function group. It will now have a new property, named Telescope position. This is the name of your function group input that you added earlier. Select Telescope position sensor at the Telescope position property. Press F5 to refresh the view. There is a red line from Telescope position sensor to Crane. Change the calculation order as before to fix this Priority problem.
The function group input channel Telescope position will get the value and status of the Telescope position sensor voltage input. The voltage input can be used in other function groups in the same way. Now we have everything we need to write our end damping function. Select the math channel Telescope function. This channel has a function, which you can see in the function inspector below the editor. A function consists of objects in different object groups. A dual direction math channel has three object groups, Controlling, Limiting + and Limiting -. Lets start by adding the Controlling objects. Right-click in the Controlling objects list box and select Add Single. This object type has only one property, Input. The value of the object will always be the same as Input. Select the Lever Telescope channel as Input. Since this is the only controlling object, it will now control the value of the math channel, that is, the math channel will have the same value as the lever input. The end damping is implemented as limiting objects, one in the positive direction (out), and one in the negative direction (in). Right-click in the Limiting + objects list box and select Add Vector. The vector object is a linear function defined by two points. Set properties as shown in picture:
316
The vector objects value will be 100% for Input values up to 1.75 meters, decrease linearly down to 20% when Input goes from 1.75 to 2 meters and then stay at 20% for all Input values higher than 2 meters. Since this object was placed in the Limiting + object group that has higher priority than the Controlling object group it will limit the math channels value when we get close to outgoing end position. Note that it will only limit the value, never increase it. For example, if the controlling object is 25% and the limiting object is 50% the channel value will still be only 25%. Add a vector object to the Limiting - object group to get end damping in the other end position as well. See property values below:
The Limiting + object group will only be calculated when the output is controlling the positive direction, that is, when the output value is greater than 0, and vice versa for the Limiting - object group. Fix the last priority problem by changing the calculation order. The function group and function inspector should now look like this:
317
Crane function group and function inspector showing the telescope function.
Start the simulator to test your application. Change values on the telescope position and levers to see how they affect your current outputs. To measure the object values in the math channel, go to Crane function group and select Telescope function in the Channel drop down box in the function inspector.
318
319
Each channel you added to the measure group has been encapsulated by a measure item. The measure items are shown in the lower left corner. They were given the same name as its channel by default, but you can change it if you want to. Remember that this name will be visible to the machine user, so you might want to give a more self-explanatory name in some cases. Each measure item has also been assigned a color and min/max values for the Y axis. The Y axis will only show values for the selected measure item. Test your measure group by starting the simulator. Select Measure > Start Measure to begin measuring. After you have stopped measuring, you can use the cursors to get statistics on your data in the lower right corner of the measure groups editor.
320
The measure group will also show up in the master display menu system. Click on the menu button in the simulator to open the menu system. Click F2 to view measure groups. Select Crane in the list shown and click on the jog-shuttle to view its measure items.
321
A parameter group is identified by its parameter group number - PGN. The PGN for engine temperatures is 65262 according to the specification. Enter that number in property PGN. The specification states that engine temperatures should be sent once every second. Set property Timeout [ms] to 1500 ms to allow for some extra delay. An error will be generated for this channel if the message hasnt been received within this time since the last one. Now, lets add some parameters to this parameter group. On property Parameters click the button to the right.
322
A property, Parameter 1, is added. On property Channel, click the button to the right to add the actual parameter channel.
A dialog box is shown, asking you for a channel name. Enter Engine Coolant Temperature and click OK.
323
A Parameter in channel is created and connected to the parameter group. It is positioned in the upper left corner of your function group by default. Move it to a position next to your parameter group channel. Enter the properties for Engine Coolant Temperature from the specification.
Add two more parameters to the parameter group, Fuel Temperature and Engine Oil Temperature in the same way as described above. Set properties from the specification.
Fuel temperature and Engine Oil Temperature in the SAE J1939 specification.
324
We have on more thing to do with the parameter group, to set the offset of each parameter within the CAN frame. Start with parameter 1. Click on the button to the right at property Offset [bits].
A dialog box is shown. Enter the offset found in the specification for this parameter group, or click in the grid to position your parameter graphically. The grid will show you which positions are available.
325
To be able to use these parameter values in other function groups we must make them function group outputs. Right-click on one of the parameter channels and select Function group output. Do the same for the other parameter channels. The function group should now look like this:
Now we will add the diesel engine module to a CAN bus on the MDL. Go to Modules. Select the Buses tab in the modules tool bar. Drag a J1939 bus and drop it on the MDL.
326
Rename the bus to Engine bus and set the Bus index property to B. The Source address property is IQANs address on this bus and is by default set to 39. Change this if the diesel engine requires IQAN to be another address. Add a J1939 module to the CAN bus we just added. Rename it to Diesel engine. Its property Source address is by default set to 0 which is the specified address for engines. Other module types may have different addresses. Drag the parameter group channel Engine temperatures and drop it on the Diesel engine module. Youre done!
327
Add an SMS out (SMSOUT) channel and name it SMS out. Select text formatting channel Text msg as property Outgoing message on the SMS out channel. Add a Text parameter (TP) channel and name it Phone number. Enter the phone number to the service mobile phone in property Text. Add a phone number by clicking the button to the right on property Phone numbers. Select the text parameter Phone number as property Phone number 1. You could also enter a valid phone number directly here but we strongly advice you to use a text parameter instead. The advantage is that the text parameter can easily be changed later on, for example from the master display menu system. Select the SMS out channel. In the function inspector, add a Math object to the Activating object group. Set property Operator to >, property OperIQANdesign User manual
328
and 1 to channel Engine Coolant Temperature and property Operand 2 to 100. Now, when the engine temperature exceeds 100 C, the SMS out channel will be activated and send its text message to the phone number specified by the phone number text parameter.
329
330
Repeat this by making the channel Sw Radio control active the blocking object for this state. Select the state Radio control. Now use Sw Radio control active as the activating and Sw Cabin control active as the blocking object. Since the states Cabin control and Radio control are both blocked when the inputs are equal, the default state Error or disabled will become the active state. Test the function in the simulator to verify that the state changes like the table below
Input Sw Cabin... = True Sw Cabin... = False Sw Radio... = True Sw Radio... = False
Now we continue by adding the actual crane function. Add a directional analog channel, name it JS Right X and place it on the lever module. Add a voltage in channel, name it Radio Right X and place it on the XR module. Scale the input from -100% to 100%. Add a dual direction math channel, name it Boom function. Add a current out channel, name it Boom and select Boom function at the property Input channel.
331
Mark the channel Boom function. In the property inspector to the right there is a property called Function selector. From the drop down box, select the state machine Remote control state. Tabs with the same names as the states in the state machine will now appear in the function inspector. Select the tab Cabin control. Under Controlling +/-, add a single object, JS Right X. Select the tab Radio control. Add two vector objects, and use Radio Right X as the inputs for both. Create a 10% dead band by changing the properties to 10 -> 0; 100 -> 100 and -10 -> 0; -100 -> -100. Test the function in the simulator to verify that the function works as expected. State parameter We will now continue to explain the state parameter channel by implementing multiple driver settings. This is useful when different machine operators want to have different settings on the crane. In the application view, select a state parameter (SP) channel from the tab Miscellaneous and name it Driver mode. In the property inspector, there is a property called States. Add a few states by clicking on the + sign. On the current out channel, change the property Mode selector to the state parameter Driver mode.
Use a state parameter as the mode selector for a current out channel.
To make it possible for the operator to change settings and mode, we will need to make the both the current out and the state parameter channel adjustable. To the right in the application manager, right click on Adjust groups and select Add Adjust Group. Rename it to Crane.
332
From the application view, drag and drop the channels Boom and Driver mode onto the new adjust group. Now it is possible to change settings on the current output, and have different settings in different states of the mode selector. It is also possible to copy settings between modes, see chapter 9. To complete the rest of the crane, copy the function by marking the two joystick input channels, the boom function and the boom output channels. When you paste them you will then only have to change the names and place them on the correct module.
333