Vous êtes sur la page 1sur 395

IQANdesign

Version 3.16

User manual

IQANdesign 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 Soft-
ware 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.

License agreement, restrictions on use


Use
This is a license agreement between you (the entity to whom this software is provided) and
Parker Hannifin Corporation (Licensor). This agreement permits you to Use each program
furnished directly or indirectly from Licensor, either by Licensor or its authorized distributors
(Distributors) including any Copies thereof and any supporting materials and any related
updated programs or program portions (Software). The term Copies means any duplica-
tions, reproductions, transcriptions of any Software, either in whole or in part and by any
means whatsoever including electronic, mechanical, and manual processes. The term Use
means copying any portion of any Software or using any Software, but only in connection with
the analysis, specification, use, installation, repair, sale of products through Licensor or its
Distributors.

Restrictions
You will have a non-transferable and non-exclusive right to Use the Software. You may make
Copies of the Software provided that any such Copies are made solely for your Use or for
archival or back-up and no other purposes. No right to Use, print, copy of display the Software,
in whole or in part, is granted except as expressly provided in this agreement. You will not
reverse engineer, disassemble or decompile the Software. You agree to reproduce and include
any and all copyright notices, software user agreements notices and terms and conditions,
trademarks and other legends in and on every Copy of the Software.

Ownership
Title and ownership of the Software and Copies thereof shall at all times exclusively remain in
Licensor or its designee. You will obtain no greater right in and to the Software than a right in
the nature of the License limited to the Use of any such Software and subject to compliance
with all of the terms and conditions contained in this Agreement. To the extent that the Soft-
ware becomes deliverable under any U.S. Government funded prime contract or subcontract,
(i) you acknowledge and agree that this Software represent commercial computer software
as defined in the DoD Federal Acquisitions Regulation Supplement (DFARS) 525.227-7014
(a)(I), and (ii) the Governments right in connection with the Software will be limited in accor-
dance with the terms and conditions of this Agreement consistent with the policies stated in
DFARS Subpart 227.7202.

Modifications
Modifications or enhancements made by Licensor to any Software from time to time may be
made available to you at the sole option of Licensor or its Distributors. If the Software is
modified by you or merged into other program materials processed or used by solely by you,

IQANdesign User manual


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 Soft-
ware 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.

IQANdesign User manual


Contents
1 Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Modules, channels and functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Function groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Orderliness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Import/export functionality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Enable/disable functionality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Graphical user interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Display pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Measure groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Adjust groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Project check . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Project statistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Memory handling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Project passwords . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Project ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Project properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Application safety . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Risk assessment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Verification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2 User interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Main window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
File operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Edit operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Project manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Functionality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Measure groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Adjust items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Adjust groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
User interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

IQANdesign User manual 4


Contents

Display pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Images . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Gradients . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Languages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Hiding or resizing the project manager . . . . . . . . . . . . . . . . . . . . . . . . . 43
Drag and drop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Property inspector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Changing properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Keyboard shortcuts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Changing a property on multiple components . . . . . . . . . . . . . . . . . . 46
Drag and drop copying . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Go to component . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Automatic property values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Property inspector options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
IQ panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
Component navigator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Project documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Document sections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Save document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Print document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Refresh document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
File compare . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Compare files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Compare with a text file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Dialog options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Show again options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
Other options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Help . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
IQAN Home Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Release Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Check for updates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
About . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
3 Function groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
Function group input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Function group output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Calculation order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
To rearrange the calculation order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
Locked function groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Locked for editing and viewing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Set function group password . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Unlock a function group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Frozen function groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72

IQANdesign User manual 5


Contents

Safety related function groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73


Mark as safety related . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
Export/Import . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
Export . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
Import . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
Function group options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
4 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
Object groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
Object group types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
Object group method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
Single object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
Dual object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
Vector object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
Multi vector object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
Math object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
5 Channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Naming channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
Direction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
Value and status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
Inputs/Outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
Voltage in - VIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
PWM in - PWMIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
Digital in - DIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
Frequency in - FIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
Directional frequency in - DFIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
Pulse count channel - PCNT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
Directional pulse count channel - DPCNT . . . . . . . . . . . . . . . . . . . . . . 110
Directional analog channel - DAC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
Current out - COUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
PWM out - PWM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
Digital out - DOUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
Servo out - SOUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
Calculation channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
Mathematical channels - MAC, DMAC and IMAC . . . . . . . . . . . . . . . 119
Internal digital channel - IDC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
PID regulator - PID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
Integrating limiting channel - ILC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
Event counter - ECNT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
Memorizing channel - MEM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
Slope/Filter channel - SFC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
Butterworth filter channel - BWF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135

IQANdesign User manual 6


Contents

Lookup table channel - LTC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136


Miscellaneous channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
Function group input - FGI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
Function parameter - FP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
Integer parameter - IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
Digital parameter - DP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
State machine channel - SMC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
State parameter - SP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
Module diagnostics - MDGN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
Display control channel - DCC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
System information channel - SIC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
Timer - TMR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
Interface channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
Text parameter - TP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
Text formatting channel - TFC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
Conditional message - CMSG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
Interactive message - IMSG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
PIN code channel - PCC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
SMS in - SMSIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
SMS out - SMSOUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
Virtual digital in - VDIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
J1939 CAN channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
CAN messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
J1939 frame input- JFIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
J1939 parameter input - JPIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
J1939 frame output - JFOUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
J1939 parameter out - JPOUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
TSC1 engine control - TSC1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
Diagnostic message 1 - DM1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
Suspect parameter number - SPN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
Other CAN channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
Generic CAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
Generic frame in - GFIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
Generic parameter in channel - GPIN . . . . . . . . . . . . . . . . . . . . . . . . . . 180
Generic frame out - GFOUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
Generic parameter out channel - GPOUT . . . . . . . . . . . . . . . . . . . . . . . 183
APPIN - Application input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
APPOUT - Application output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
Safety channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
Compare channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
Analog/analog compare channel - AAC . . . . . . . . . . . . . . . . . . . . . . . . 186
Digital/digital compare channel - DDC . . . . . . . . . . . . . . . . . . . . . . . . . 189
Analog/digital compare channel - ADC . . . . . . . . . . . . . . . . . . . . . . . . 190

IQANdesign User manual 7


Contents

6 Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
Module address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
Master modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
MD4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
MDL2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
MD3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
MC2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
MC3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
MC31 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
Expansion modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
Lx . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
LC5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
XA2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
XS2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
XC10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
XC21/XC22/XC23 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
XT2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
XR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
G1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
G2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
J1939 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
Generic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
Buses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
Expansion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
J1939 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
Generic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
Diagnostics bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
Master bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
How to connect a system in IQANdesign . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
Add modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
Add buses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
Connecting modules and buses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
Sharing a bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
Block diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213
Add channels to a module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
Moving channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
Measure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
Module system messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
7 Measure groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
Measure groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217
Add a new measure group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217
Measure in IQANdesign . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219
Start/Stop measure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219

IQANdesign User manual 8


Contents

Clear values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220


Graph options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220
Measure item properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
Measure in other views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
Statistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
Position the cursors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
Locking the cursors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
Statistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
Exporting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
Measure files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
Zooming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
Zoom in . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
Zoom out . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
Scroll in X and Y directions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
Move a curve along the Y-axis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
Auto scaling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
8 Adjust groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
Adjustable channel types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
Factory default . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
Application default . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
Stored channel types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230
Adjust items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
Single adjust item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
Dual adjust item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232
Quad adjust item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232
Adjust parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234
Integer parameter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234
Real parameter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235
Text parameter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235
State parameter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236
Boolean parameter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236
PIN code parameter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236
Adjust groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
Protect an adjust group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238
Visibility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240
Reference channel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240
Add a new adjust group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240
Send project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241
Get project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242
9 Logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
Logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244
Status and system messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245

IQANdesign User manual 9


Contents

System messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245


System log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246
System events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246
Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246
Event log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
Add an event log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
Value log item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250
Event log item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251
Measure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251
Statistics log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252
Add a statistics log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252
Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252
Counter log item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
Hour counter log item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
Min and max log items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
Measure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254
10 Languages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
Managing application languages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
Language properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
Adding multi-language texts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
Memory consumption . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258
Unicode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259
Send project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260
Export . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
Import . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
Font selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
11 Display pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
Display pages in IQANdesign . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
Display page container properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
How to design a display page in IQANdesign . . . . . . . . . . . . . . . . . . 267
Display page properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268
Properties for all display modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270
Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270
System dialog boxes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270
System colors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270
Localization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
System info . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
Display controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
Label . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274
Linear bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
Circular bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276

IQANdesign User manual 10


Contents

Image bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277


Gauge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278
Image Gauge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
Image . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281
Lamp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282
Linear gauge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282
Video . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283
Text button . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284
Symbol button . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284
Custom button . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285
Switch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286
Slider . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286
State picker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287
Design tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
Select controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
Move controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
Resizing controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
Run . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
Grid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
Snap to other controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
System dialog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
Vertical and Horizontal alignment tools . . . . . . . . . . . . . . . . . . . . . . . . 289
Orthogonal alignments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290
Horizontal and vertical distribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290
Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290
Layers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291
Control order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291
Hide controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291
Physical display buttons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292
Button positions, IQAN-MDL2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295
Button positions, IQAN-MD3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295
Gradients . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297
Direction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298
Color stops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298
Images and Image groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299
Create an image group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299
Add images to an image group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299
Image Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300
Assigning images to controls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301
Start up image . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303
To change the start up image . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303
Export . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304
12 Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306
Project password . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307

IQANdesign User manual 11


Contents

Adding password protection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307


Change or remove a password . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308
Safe passwords . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308
Password database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309
Password types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 310
Date restrictions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 310
Add password . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311
Safe passwords . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311
Safe password . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313
Create a safe password . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313
Access levels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
Add an access level . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
Users . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318
Superuser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318
Add a user . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318
Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318
Project security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
Security properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
Component properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
13 Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321
IQANsimulate synchronization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322
IQANdesign controlling IQANsimulate . . . . . . . . . . . . . . . . . . . . . . . . . 322
IQANsimulate controlling IQANdesign . . . . . . . . . . . . . . . . . . . . . . . . . 322
14 System communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323
Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324
USB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325
CAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325
Ethernet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326
Simulator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
Modem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
Internet settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
Quick switch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
Send project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
Get project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330
Set date and time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331
Remote diagnostics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332
Connect via Internet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332
Connect via modem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
Disconnect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
Phone book . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335
Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335
Edit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336
Delete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336

IQANdesign User manual 12


Contents

Export . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336
Import . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336
15 Multiple master modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337
Single master or multi master? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338
System design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339
Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339
Diagnostics bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340
Addressing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340
Headmaster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340
Optional modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341
Expansion modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342
System time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
Safety aspects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
APPIN/APPPOUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
Diagnostic connection to other masters . . . . . . . . . . . . . . . . . . . . . . . 344
Erroneous or incomplete systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
The multi-master state . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
Check of project ID and revision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
Alien modules on the bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
Missing modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
Updates and clones in incomplete systems . . . . . . . . . . . . . . . . . . . . 348
16 Coding guidelines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350
General guidelines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351
Naming conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351
Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353
Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353
Layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353
Value types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354
Calculation order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354
Project check . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355
General safety principles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
De-energization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
Error detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
Error detection action . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
Start and restart conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
One control station at a time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357
Protect parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 358
Limit remote access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 358
Safety related applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359
Safety related function groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359
Interfaces to non safety related functions . . . . . . . . . . . . . . . . . . . . . . 359
Application defaults on parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . 359
Input integrity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360

IQANdesign User manual 13


Contents

17 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361
Present inputs on a display module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
Controlling a boom function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373
Adding measure groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381
Diesel engine CAN communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384
Sending a text message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
Using states on a boom function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392
State machine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392
State parameter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394

IQANdesign User manual 14


1 Project

An IQAN system consists of one or more master modules, various expansion


modules and an application for each master module. All the applications are
contained within a single project file.
IQANdesign is the design tool that will be used to create a project file.
The project 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 project file containing the applications that will be down-
loaded into the master module(s).
After adding a master module to your project, you can start to develop the
functionality by creating channels and conditions or if you prefer, you can
add more modules you expect to use and then connect the channels. You can
do it either way, choose the one that suits you the best.

IQANdesign User manual 15


Modules, channels and functions
1 Project

Modules, channels and functions


A project file contains information about the systems modules, buses,
addresses, external channels (physical inputs and outputs) and so called inter-
nal channels, that are handled and calculated by the master. You use
IQANdesign to create all of that information.

Modules
The type of master and expansion modules you need is decided based on the
functionality you want in your machine. The modules are designed with dif-
ferent mixes of inputs and outputs to suit different machine applications.
The masters are the central units in the system. All communication is routed
through the masters. They also contains all non-module specific channels
such as PID regulators, counters and math channels. All calculations take
place in the masters. An IQAN system can consist of a single or multiple
masters.
The masters communicates with modules via CAN-buses (Controller Area
Network) using IQAN CAN protocols, SAE J1939 or Generic CAN.
For further information about different module types see information in the
respective data sheets and instruction books.

Channels
A channel can either be an input, output or an internal channel. The internal
channels are not physical channels like the inputs and output. They are only
handled by the master internally.
All channels have different properties such as name, scaling, alarms, delays,
filter, etc. The properties are unique for each channel type. The internal
channels are used to create functionality. For example, if you want to control
the boom, count events, start a timer or control the speed on a diesel engine.
Most of the internal channels have both properties and one or many functions.
Input channel

Input channel Internal channel Internal channel Output channel

Properties Properties Properties


Functions
A simple illustration, how the channels can influence on each other.

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 16
Function groups
1 Project

Function groups
Channels can be grouped in something called function groups. There are
three general purposes for using function groups in an IQANdesign applica-
tion.

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 vis-
ible 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 project file. For more information
see section Export/Import on page 75.

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.

IQANdesign User manual 17


Graphical user interface
1 Project

Graphical user interface


So far, we have only talked about machine functionality. IQANdesign also
includes tools and components to create the graphical user interface for one
or more display modules, used in the cabin for instance.
All of the below described components are part of and stored in your project
file.

Display pages
Display pages are used to design the graphical user interface for display mod-
ules that gives the operator, service personnel and other users necessary infor-
mation 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.
Display pages consists of display page controls, such as texts, images, gauges
and bar graphs. Many of the different control types use images that you
import to your application.
IQANdesign supports Unicode for all texts in an application.

NOTE
Display pages can only be used in projects where at least one display module
exists, such as IQAN-MD4-7 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 con-
nected 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.

IQANdesign User manual 18


Project check
1 Project

Project check
A project can contain errors, such as missing channels, undefined properties
or invalid values. To find these errors, select Project > Check Project.
IQANdesign will then check the project for errors and present a list with the
result in a dialog box.

Project check dialog box.

Projects that contain errors can not be downloaded to master modules. 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 applica-
tion. It can still be faulty of course, but this has to be tested by you, for exam-
ple 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 19


Project check
1 Project

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 func-
tion groups on page 73. Such function groups will be checked more rigor-
ously 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 warn-
ings 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 73.

Options
All warnings and hints may not be important in your project. Therefore, you
can define which warnings and hints you want reported by the project check.
Select Tools > Options and switch to the Project 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.
Deselect the ones that you dont want reported by project check.

IQANdesign User manual 20


Project check
1 Project

Project check options.

Send project
Before your project is downloaded to the system, the project will automati-
cally be checked for errors. Click Send to send the application to a connected
system. This can only be done if there are no errors.

ATTENTION
An empty project checklist with no errors, warnings or hints, does not guar-
antee 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.

IQANdesign User manual 21


Project statistics
1 Project

Project statistics
To get information about the size of your applications in the project, select
Project > Statistics. A dialog box with statistics such as component counts
and application file size is shown. The statistics is shown for each application
in the project.

Project statistics.

Project
Lists information about your project. Project ID is a unique identifier for this
project, see section Project ID on page 27 for more information.
Project checksum is a unique identifier for this exact version of the project
file. It is used at system startup, together with project ID, to verify that all
master modules in a system originates from the exact same version of the
project file. It can also be used by you when comparing two project files to
determine if they are exactly the same.
You can also see who changed the project last and when it was done.

IQANdesign User manual 22


Project statistics
1 Project

Component count
Specifies the total number of components in your project. Different compo-
nent types are listed separately under this node.

Property count
Specifies the total number of properties in your project. Different property
types are listed separately under this node.

Total stored size


Specifies the amount of non-volatile memory needed to store your applica-
tion in the master module. Total stored size is the sum of application and lan-
guages. 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 the images used by
your application, which is often a major part of the complete size. Each sepa-
rate language size is listed under the languages node.
For more information on stored size, see section Non-volatile memory on
page 25.

Settings memory size


Specifies the amount of non volatile memory needed to store the settings of
your application. The settings consists of adjust items and stored channels.
The non volatile memory used for settings is separate from that used for stor-
ing the application.

Estimated memory utilization


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 applica-
tion 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 24.

Operating system
The Operating system values presents type, version and size of the operating
system used for each application.

Memory handling
This section discusses all the things you need to know about memory han-
dling issues. It will help you to optimize the size of your application and to
make sure that you dont run out of memory.
IQANdesign User manual 23
Project statistics
1 Project

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 pro-
gram execution and enter its safe mode. In practice, almost all memory allo-
cation is done at application startup, and therefor the application should not
start at all if you use to much volatile memory.

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 Project statistics dialog box, under Estimated memory utilization. This
is hard to do at design-time, therefor you should also monitor memory utiliza-
tion on a real master module in run-time, by using a system information chan-
nel, see section System information channel - SIC on page 148.

NOTE
You should measure memory utilization on a real master module. IQANsim-
ulate 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.

IQANdesign User manual 24


Project statistics
1 Project

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 mem-
ory keeps its content during power-off, but is not as efficient as volatile mem-
ory.
This memory is used to store many different things, such as, the complete
application, the operating system, settings 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 informa-
tion channel - SIC on page 148.
Application size on the other hand can be estimated by IQANdesign, at
design-time. You can see application size in the Project statistics dialog box,
under Total stored size. This number must not exceed the limit for the master
module you are using.
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 Proj-
ect check on page 19.
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 lan-
guages 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
194.

IQANdesign User manual 25


Project passwords
1 Project

Project passwords
A project can be protected by passwords, one for full access and one for lim-
ited access. To set the passwords, select Project > Passwords. For more
information on project passwords, see section Project password on page 307.

IQANdesign User manual 26


Project ID
1 Project

Project ID
The project ID is created automatically when you create a new project. It is a
globally unique identifier, and it is used to identify your project in certain sit-
uations. For example, when importing languages from an Excel file, the proj-
ect ID has to match the ID stored in the Excel file.
If you want to change the project ID for some reason, use Project > Proper-
ties and click on Change ID. This can be useful when you are creating a new
project for a machine type that resembles an existing project.

Change project ID warning.

The most important use of project 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 project ID unless you really want to create a new project
for another machine type. If you change the project ID and send the project to
a master module that contains an application from the same project with the
old ID, new logs will be created and the settings file will be erased.

IQANdesign User manual 27


Project properties
1 Project

Project properties
There are some properties that are applicable to the project, such as name,
version and author.
Select Project > Properties from the menu. This brings up the project proper-
ties dialog where you can enter information about the project.

Project properties dialog.

If you change the name of the project IQANdesign will ask you if you also
want to change the project ID. Change project ID only if you are about to cre-
ate a project for another machine type.

IQANdesign User manual 28


Project properties
1 Project

Change project ID dialog.

IQANdesign User manual 29


Application safety
1 Project

Application safety
This section contains information on how to improve the safety of applica-
tions. It is important that you read this chapter before you start creating appli-
cations 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 mod-
ules. To mitigate the risks, certain safety functions may need to be imple-
mented 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 con-
trol 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 a project 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 a display module.

Protecting the project


It is highly recommended to protect the project file using the built in security
functions in IQANdesign and IQANrun.
To prevent unauthorized personnel from getting, modifying and loading the
project file, it is possible to protect the project with project passwords. It is
also possible to protect the parameters, see section Security on page 306.

Design
Design for safe operation is always the responsibility of the machine
designer. This includes both selection of components and design of the appli-
cation 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 30


Application safety
1 Project

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 350.

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 .

IQANdesign User manual 31


2 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.

IQANdesign User manual 32


Main window
2 User interface

Main window
The main window of IQANdesign is divided into several panels.

IQANdesign main window.

Under the main menu there is a tool bar with the most common functions.
To the left, the project manager is located. This is where you navigate
through your project. 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 click-
ing 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.

New
Use this command to generate a new project with a master module. If there is
a project currently open in IQANdesign, it will be closed first. You will be
asked to save any unsaved changes before the current project is closed.
IQANdesign User manual 33
Main window
2 User interface

Open
Use this command to open a project 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 (.irc3) that has been saved in e.g. IQANrun. In
the file open dialog box, select Clone files (*.irc3) 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.

File open dialog showing clone files.

A stripped project file (.ids3) can also be opened using the open command. In
the file open dialog box, select Stripped Project files (*.ids3) in the file type
drop down list of the open dialog. A stripped project file contains the com-
plete project, but not the firmware of the included modules.
If there is a project currently open in IQANdesign, it will be closed first. You
will be asked to save any unsaved changes before the current project is
closed.

NOTE
IQANdesign 3 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 inter-
mediate version of IQANdesign (version 1.20-1.34).

IQANdesign User manual 34


Main window
2 User interface

Reopen
Contains a sub menu with your most recently used project files. Select the
one that you want to open.
If there is a project currently open in IQANdesign, it will be closed first. You
will be asked to save any unsaved changes before the current project is
closed.

Save
Save the current project 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 project with a new file name.
Please note that this operation will not create a new project ID for your appli-
cation. This means that it will be considered to be the same project when sent
to a master module or when used by any other IQAN software.
If you want it to be treated as a different project, please change project ID
first, see section Project ID on page 27.

Close
Same as New except that no master module will be added.

Export Stripped Project file


For some module types the project file becomes quite large due to the firm-
ware included in the file. It is however possible to export the project to a
stripped project file where the firmware is excluded. This makes it easier to
e.g. send the file as an email attachment. To do this select File > Export >
Export Stripped Project file.

NOTE
A stripped project file cannot be sent to a system using IQANrun since the
firmware is excluded from the file.

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 com-
mands, such as Undo/Redo (multiple steps), Cut/Copy/Paste, Delete, Rename
and Find.

IQANdesign User manual 35


Project manager
2 User interface

Project manager
The project manager is the panel to the left of the editor in the IQANdesign
window. The project manager items are grouped into five different categories.
The headings include System, Functionality, Diagnostics, User Interface 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 project 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.

IQANdesign User manual 36


Project manager
2 User interface

System
Contains all modules and buses in the system.

Module and CAN bus editor.

At the top of the editor, there is a tool bar. Use this tool bar to add modules
and buses to your project. 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 system grid to arrange them the way you
want. You can connect modules to buses by grabbing a CAN port of a module
and connect the line that appears to a compatible bus. For CAN ports that are
compatible only with a certain bus type the CAN port is color coded with the
same color as the bus type.
There is one sub-node for each module in the project manager. The editor
shows a block diagram for the selected module.

IQANdesign User manual 37


Project manager
2 User interface

Module editor for an IQAN-MD3 module.

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.

Functionality
For each master module that is added to the project an application is created
under the functionality node. The functionality node itself shows all the appli-
cations in the project including the APPIN/APPOUT channel connections
between the applications.

IQANdesign User manual 38


Project manager
2 User interface

Applications editor.

Application
Each application node created under the functionality node corresponds to
that applications top level function group. This is where you start to design
your application. Add channels, function groups and define functions for
your application.

IQANdesign User manual 39


Project 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.

IQANdesign User manual 40


Project manager
2 User interface

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
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 book-
mark.

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.

IQANdesign User manual 41


Project manager
2 User interface

Channels
Lists all channels in current project. There is one sub-node for each channel
type.

Channel editor.

Print
Select File > Print to print the current channels view. A dialog box is dis-
played 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 a display module 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 219.

Adjust items
Lists all adjust items. Each adjust item can be expanded to view the adjust-
able parameters and their limits. For more information see section Adjust
groups on page 237.

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
a display module 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 in that adjust group. For more infor-
mation see section Adjust groups on page 237.

IQANdesign User manual 42


Project manager
2 User interface

Logs
Lists all logs in the current project.
There is one sub-node for each application which in turn contains a sub-node
for each log. Here the log items can be created and edited. For more informa-
tion, see section Logs on page 244.

User interface
Contains properties that applies to all master modules in the project related to
user interface. For more information, see section Properties for all display
modules on page 270.

Display pages
For each master in the project that has a display a display pages node will be
added.
There is one sub-node for each display page. For more information, see sec-
tion Display pages in IQANdesign on page 265.

Images
Lists all image groups.
There is one sub-node for each image group. For more information, see sec-
tion Images and Image groups on page 299.

Gradients
Lists all gradients in the project. Gradients are used on color properties. Not
all modules support gradients. For more information, see section Gradients
on page 297.

Languages
Languages lists all the languages in the project as well as all translated texts.
It can be used to define languages as well as edit and translate all multi-lan-
guage properties. For more information, see section Languages on page 255.

Security
Lists all access levels defined in the project.
There is a sub-node for each access level defined. For more information, see
section Access levels on page 317.

Hiding or resizing the project manager


The project manager can be hidden (and shown) by clicking the splitter on the
right side. There is also a menu item for this, View > Project Manager.
Drag the splitter to resize the project manager.

IQANdesign User manual 43


Project manager
2 User interface

Drag and drop


Inside the project manager panel it is easy to perform certain tasks using drag
and drop.
Assigning channels to modules is very easy. Expand the System node in the
project 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 project manager.

Dropping a channel onto a module using drag and drop.

The same method can be used to set up your measure, adjust items 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.

IQANdesign User manual 44


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 project 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.

Property inspector, property Scaled max.

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 45


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 inspec-
tor.
Select the property you want to change. Enter or select a new value. The
property is updated on all the selected components.

Changing properties on multiple channels.

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 46
Property inspector
2 User interface

direction for a current output channel. To use the same currents in the nega-
tive direction, simply drag the group property Positive direction and drop it
on Negative direction.

Drag and drop copy.

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. You can quickly navigate back using the navigation history avail-
able in the tool bar.

Automatic property values


Some properties have values that can be set automatically by IQANdesign.
For example the name of a log item can be set to the same value as the name
of the channel that it refers to.
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, or by clicking on the link symbol left
of the property name. The link symbol appears when automatic value is avail-
able. If disabled, the symbol is a broken link.

IQANdesign User manual 47


Property inspector
2 User interface

Property inspector showing two properties with automatic value option, one enabled (Bar color) and
one disabled (Background color).

Property inspector options


Select Tools > Options and go to tab Property inspector in the dialog box that
is shown.
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.
Check Enable autocomplete to show a drop down list with matching values
when typing a property value in the property inspector.
Specify a color for reference properties, such as the Input property for a func-
tion group input channel. These properties are vital to the behavior of its com-
ponent.

IQ panel
The panel directly below the property inspector is called the IQ panel. IQ dis-
plays 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.

IQANdesign User manual 48


Property inspector
2 User interface

Description example.

IQANdesign User manual 49


Component navigator
2 User interface

Component navigator
The component navigator is a great tool to view and follow component rela-
tionships in your application. Select Tools > Component Navigator to open it.

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. In the center related components are shown. To the left components that
the selected component refers to are listed, either through a property or a
function/object. To the right components that refer to the selected component
are listed.
Additional information about a component is shown as a tool tip when point-
ing with the mouse on a component. This information includes component
name, description and parent. Parent is the components owner and is typi-
cally a function group, adjust group, display page, etc.
Click on a component to make that the selected component. IQANdesign will
find the component and select it in the editor for you. The component naviga-
tor is updated to show components related to the new selected component.
This is how you navigate through your application.
You can also navigate back and forward in your navigation history using the
back and forward arrows in the component navigator or in the IQANdesign
tool bar.

IQANdesign User manual 50


Project documentation
2 User interface

Project documentation
The project documentation function will create a design description for your
project 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 > Project Docu-
mentation.

Project documentation satellite window.

Document sections
The project 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 sec-
tion in the document by clicking on its name in the tree view. The check box
next to each section name specifies whether the section is part of the docu-
ment or not. Select the checkboxes for those sections that you want in your
application document.

Document sections

Project info Name, description, version, author, comment and last


changed info.

System Contains sub sections system image, modules, pin list


and module images

System > System image System overview image with all modules and CAN
buses in the application.

IQANdesign User manual 51


Project documentation
2 User interface

System > Modules Adds one section for each module.

System > Pin list Adds a pin list for each module. Requires that System >
Modules is selected.

System > Module images Adds a block diagram image for each module.
Requires that System > Modules is selected.

Function groups Contains sub sections interface description, function


group images and channels.

Function groups > Adds information on the interface (inputs and outputs)
Interface description to all function groups.

Function groups > Adds an image of the contents for each function group.
Function group images

Function groups > Adds a list of channels in each function group.


Channels

Diagnostics Contains sub sections measure groups, adjust groups


and logs.

Diagnostics > Measure Lists all measure groups and their corresponding
groups access levels.

Diagnostics > Adjust Lists all adjust groups and their corresponding access
groups levels.

Diagnostics > Logs Lists all logs and their corresponding access levels.

Display pages Adds a section for each display page. Contains sub
section display page images.

Display pages > Display Adds an image of each display page.


page images

Security Lists all access levels and their corresponding users.

Save document
The document can be saved as an HTML file. Select File > Save Documenta-
tion 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
IQANdesign User manual 52
Project documentation
2 User interface

options. When printing the documentation page numbers and a table of con-
tents is also included.

Refresh document
If the project has changed since you opened the project documentation win-
dow, you can refresh the document to include the changes by selecting Docu-
mentation > Refresh or clicking the Refresh button on the tool bar.

IQANdesign User manual 53


File compare
2 User interface

File compare
Sometimes it can be very useful to compare a project 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 project. Compare your application with the version that
worked to see what has changed.

Compare files
First open your current project in the normal way, for example by selecting
File > Open. Then open the other project 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 projects will be converted to text and displayed side by side in a file
compare dialog box. Every line that differs between the projects is colored
red. A line that is missing in one of the projects is colored grey.

File compare dialog box.

IQANdesign User manual 54


File compare
2 User interface

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.
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 IQANde-
sign 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).

Save As dialog box.

Enter a file name and click Save.


Go back to your current version of IQANdesign, open your current applica-
tion and select File > Compare With. In the open dialog box, change Files of

IQANdesign User manual 55


File compare
2 User interface

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 56


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.

Switch to the Dialog tab.

Save before sending project


Automatically saves file before sending to the master.

Save As after getting project


Automatically brings up Save As dialog when project is uploaded from an
IQAN system.

IQANdesign User manual 57


Dialog options
2 User interface

Show send/get options dialog


Shows the settings option dialog box before sending and after getting an
application. See section Adjust items on page 231 and section Get project on
page 242 for more information.

Show send language options dialog


Shows the send language options dialog before sending the project. This dia-
log makes it possible to select which languages from the project 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>. You can also specify a folder where all
backup files are stored. Leave folder name empty to store backup file in the
same folder as the original file.

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.

File lock warning.

Show startup dialog box


Enables dialog box for creating new file, opening an existing file, getting a
project from an IQAN system or opening your most recent file at startup.

IQANdesign User manual 58


Dialog options
2 User interface

Startup dialog box.

Use large icons


Select this to use large icons on the tool bar.

Font
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.

IQANdesign User manual 59


Show again options
2 User interface

Show again options


Some message dialog boxes have a check box named Never show this again.
By selecting that check box, you will never be shown that information or
asked that question again. Here is how you enable those messages again.
Select Tools > Options to show the IQANdesign options dialog box.

Show again options.

Switch to the Show again tab. Select the messages that you want to be shown
again.

IQANdesign User manual 60


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 dia-
log 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
Changing file associations on Windows Vista or later requires administrator
privileges.

Automatically check for updates


Select how often you want IQANdesign to automatically check for updates.
Select Never to disable this function.

Undo levels
The number of undo levels that should be remembered by IQANdesign can
be configured using the Undo levels options. If you are experiencing perfor-
mance issues due to low memory in your system it might be a good idea to
lower the amount of undo levels.

IQANdesign User manual 61


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 http://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.
When you download a new version, your license and user information will be
sent to our server to collect usage statistics, see table below.

Collected information

IP address The IP address you are connecting from, typically the


address of your companys Internet gateway or your
ISP.

License number, name and The information you entered when IQANdesign was
company installed.

License type Full, evaluation or beta.

Installation date The date when IQANdesign was installed.

Days used The number of days IQANdesign has been used.

Versions The versions you are upgrading from and to.

About
Displays a dialog box with licence and version information.

IQANdesign User manual 62


3 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 out-
side 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.

Function group input Function group outputs

Function group with both inputs and outputs.

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 project manager under the Functionality node. Function
groups can be nested as deep as you like.
If you double-click on a function group or select it in the project 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.

IQANdesign User manual 63


Function group input
3 Function groups

Function group input


To bring values in to a function group, you use a special channel type called
Function group input (FGI). You will find the FGI channel under the tab Mis-
cellaneous in the tool bar.
To bring a value in to a function group you have to add a FGI channel to that
function group. You need to specify if the value type is real, integer, digital,
state machine or text. Depending on what value type you have specified, you
will also have to specify unit, limits or states.
The FGI channel has one property called Input. This is the outside channel
whose value you need in your function group.
When you add a FGI channel to a function group, a property with the same
name as the FGI channel will automatically be created on the function group.

FGI properties

Name Unique name for this channel. Also used as property


name on the function group that contains this FGI.

Description Enter a description for this application component.

Unit The unit for the scaled value of this channel.


Only applicable when Input type is Real or Integer.

Input type Specify whether the input is Real, Integer, Digital,


State or Text. If input type is State, you must specify
the states as well.

Input The input controls the value of this function group


input. You can also set this property via the function
groups properties.

Min limit Minimum value allowed. If the input value is less than
this limit, the channel value equals this limit.
Only applicable when Input type is Real or Integer.

Max limit Input type is Real or Integer: Maximum value allowed.


If the input value is greater than this limit, channel
value equals this limit.
Input type is Text: Maximum number of characters
allowed.

Default state name 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.

States Press the + button to add states to this state machine.


Only applicable when Input type is State.

IQANdesign User manual 64


Function group input
3 Function groups

Function group properties

Name Enter a name to identify this function group.

Description Enter a description for this application component.

Enabled Select Yes to make this function group enabled all the
time, or select a channel to enable/disable it in run-
time. 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.

Last edited Information on who edited this function group the last
time and when.

FGI channels 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 68.

Properties for function group and function group input channel.

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 65


Function group input
3 Function groups

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.

IQANdesign User manual 66


Function group output
3 Function groups

Function group output


The function group output is used to pass values out from the function group.
Unlike the function group input there is no special channel type for function
group outputs. Any channel can be a function group output.

Create a function group output


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.

Function group with two outputs.

IQANdesign User manual 67


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 posi-
tioned 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 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 a project 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.

Red line if the calculation order is reversed.

To rearrange the calculation order


It is easy to sort the channels into the order you want. Right click in the func-
tion group and select Calculation order... in the popup menu.

Calculation order dialog box.

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. IQANde-
sign will then try to order them so that there are no priority warnings. This is
not always possible.
IQANdesign User manual 68
Locked function groups
3 Function groups

Locked function groups


To lock a function group can be useful for several reasons. For example you
might want to protect a valuable function in your application so that it is only
visible for the application developer.

Locked for editing and viewing


A function group that is locked can not be edited or viewed by anyone. To do
that you have to unlock it first, in which case you have to know the password
or have a safe password for the function group (see section Password data-
base on page 309). The password is unique for that function group and is not
connected to project passwords or other function group passwords.
If a locked function group contains other function groups, those function
groups will also be locked and thereby hidden. All channels, except those
defined as function group outputs, are also hidden and can not be seen any-
where in the application. There is one exception - inputs and outputs con-
nected to a module can be seen in the module block diagram view. Their
properties will be hidden though. Hidden channels may also turn up in the
application check dialog box if they generate hints, warnings or errors.
Locked function groups will remain locked when exported to other applica-
tions.
All properties on a locked function group; Name, Description, Enabled and
the input properties will still be enabled.

Set function group password


To lock a function group you need the set a password for it. Right-click on the
function group and select Set password. A password dialog box appears.
Enter the password you want to lock the function group with and click OK.

Set function group password dialog box.

IQANdesign User manual 69


Locked function groups
3 Function groups

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 309 for more information about the
password database).

Add password dialog.

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.

Locked function group.

If you double-click a function group that is locked, or select it in the project


manager, a message telling you that this function group is locked is displayed
instead of the function group contents.

IQANdesign User manual 70


Locked function groups
3 Function groups

Locked function group.

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.

Unlock function group dialog box.

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 func-
tion group password select Set password for the function group, enter the old
password and then leave the new password empty.

IQANdesign User manual 71


Frozen function groups
3 Function groups

Frozen function groups


To protect a function group from being edited while keeping it visible you
have the option to freeze it. This can be useful to avoid unintentional changes
of a verified function. To freeze a function group, right-click on the function
group and select Frozen in the popup menu. This will freeze the current func-
tion group, so that you can not add, delete, move or change any components
in it. All function groups below the current one will also be frozen.
Frozen function groups are indicated by a blue snow flake icon in the top
right corner of the editor, and in the upper right corner of the function group
control. Function groups below the frozen one are implicitly frozen and this is
indicated by a grey snow flake icon. A check mark will also appear next to
the Frozen menu item.

Frozen function group.

To be able to edit the function group again, right-click on it and select Frozen
once more.

IQANdesign User manual 72


Safety related function groups
3 Function groups

Safety related function groups


All IQAN modules are designed with the functional safety requirements of
mobile machines in mind. Some modules, like the IQAN-MC3, are especially
suited for applications with higher demands on functional safety, where there
is a need to prove the safety integrity of each implemented safety function.
For these applications, it is wise to collect safety related functions in one or
more function groups to separate them from other functionality. Function
groups containing such functions can then be marked as safety related. Safety
related function groups use a stricter check when project check is executed.
This is helpful when designing safety functions that needs to be certified
according to a safety standard, for example IEC 61508 or EN ISO 13849. See
tables below for details on what is detected as errors by application check
when using safety related function groups.

Mark as safety related


Create safety related function groups by right-clicking on a function group
and select Safety Related. Safety related function groups are marked with a
lamp symbol in the upper right corner.

Safety related function group.

Channels not allowed in safety related function groups

SOUT All servo out channels.

PWM All PWM output channels.

MDGN All module diagnostic channels except those


measuring VREF.

SIC All system information channels except those


measuring cycle time.

TP All text parameter channels.

TFC All text formatting channels.

CMSG All conditional message channels.

IMSG All interactive message channels.

PCC All PIN code channels.

SMSIN All SMS input channels.

IQANdesign User manual 73


Safety related function groups
3 Function groups

SMSOUT All SMS output channels.

VDIN All virtual digital in channels.

CAN related channels All JFIN, JPIN, JFOUT, JPOUT, DM1, SPN, TSC1,
GFIN, GPIN, GFOUT and GPOUT channels.

Physical I/O All physical I/O channels that do not exist on a module
certified for functional safety.

Other errors related to safety related function groups

Adjustable/stored channel Not protected by access level or PIN code.

COUT Max parameter less than or equal to its corresponding


min parameter.

FP Max limit less than or equal to min limit.

BWF 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.

FGI Max limit less than or equal to min limit.


Max or min limit not defined.

APPOUT Transmit rate is not defined.

Comparator channel The detection delay time is not dividable with the
(AAC/ADC/DDC) system cycle time.

Multi vector object The points are not defined in increasing input value
order.

Master module Master module is not certified for functional safety.

I/O channels Not assigned to module certified for functional safety.

Adjust group Adjust group contains safety related channel(s) but is


not protected by an access level or PIN code.

IQANdesign User manual 74


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 project.

Export
First, in the function group editor select the function group(s) and/or chan-
nel(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 components to open the export components dialog box.

Export dialog box.

To export only the selected components (with their content), answer No to


the export references question.
To export referenced components (such as adjust groups, display pages,
etc.) also, answer Yes instead.
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 plus the corresponding master mod-
ule. Example: You have selected a function group. The function group with
all its contained function groups and channels with functions/objects will be
exported. The master module with the function group will also be exported.
Any other components that are not contained by the function group will not
be exported.

Selected component(s) with references


Same as above, but referenced components are also exported.

Function groups/Channels Function groups and/or channels that resides outside of


the exported components will not be exported.

IQANdesign User manual 75


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 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 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 Logs will not be exported.

Languages Languages are not exported.

Pages 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 Images that refer to any of the above exported


components are exported.

Security Access levels that refer to any of the above exported


components are exported.

Import
Select File > Import... and select the project file that you want to import. It
can be a complete project or an earlier exported file. All components are
imported to your current project. Function groups and channels will be
imported to a new application belonging to the master module of the
imported file.
You can move the content of the imported application to any other applica-
tion or function group. When you are done you may delete the imported mas-
ter module if it is not needed in your project.
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.

IQANdesign User manual 76


Function group options
3 Function groups

Function group options


To set options for the function group editor, select Tools > Options and click
the Function groups tab in the options dialog box.

Options - Function groups.

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 77


Function group options
3 Function groups

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(s) to have lines drawn for references for the selected compo-
nent(s) 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.

IQANdesign User manual 78


4 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.

IQANdesign User manual 79


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.

Controlling and Limiting object groups in a function for a math channel.

Limiting
Works together with the controlling object group. This group has higher prio-
rity 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

Controlling and limiting object groups.

Activating
The activating object group is used with digital value channels, such as an
internal digital channel.

IQANdesign User manual 80


Object groups
4 Functions

Blocking
Works together with the activating object group. This group has higher prio-
rity 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

Activating and blocking object groups.

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 pre-
defined 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 a display module. 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 com-
bined 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.

IQANdesign User manual 81


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 per-
cent 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

Applicable to Controlling and Limiting object groups.

Value of controlling object A

Value of controlling object B


50%
t

Value of object group

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 82


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

And method, activating object group.

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.

IQANdesign User manual 83


Object groups
4 Functions

t
Activating objects in an activating object group

Blocking object group


t

Function value

Latching And method.

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.

Object A

t
Object B

t
Object group value

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

Counters output value

An event counter with two increasing objects.

IQANdesign User manual 84


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

Blocking object group


t

Function value

Latching Or method.

IQANdesign User manual 85


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)

IQANdesign User manual 86


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.

IQANdesign User manual 87


Objects
4 Functions

Out 3

Out 2

Out 4

Out 1

In 1 In 2 In 3 In 4

Multi vector object.

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

= True if "Operand 1" equals "Operand 2", otherwise


Equality False.

<> False if "Operand 1" equals "Operand 2", otherwise


Inequality True.

< True if "Operand 1" is less than "Operand 2", otherwise


Less than False.

> True if "Operand 1" is greater than "Operand 2",


Greater than otherwise False.

<= True if "Operand 1" is less than or equal to "Operand


Less than or equal to 2", otherwise False.

>= True if "Operand 1" is greater than or equal to


Greater than or equal to "Operand 2", otherwise False.

Inside "Operand 2" < "Operand 1" < "Operand 3".


Inside range 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 88


Objects
4 Functions

Outside "Operand 2" > "Operand 1" or "Operand 1" >


Outside range "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".


Addition

- Calculates "Operand 1" - "Operand 2".


Subtraction

* Calculates "Operand 1" "Operand 2".


Multiplication.

/ Calculates "Operand 1" / "Operand 2".


Division. Example: 7 / 2 = 3.5

div Calculates "Operand 1" div "Operand 2". Example: 7


Integer division div 2 = 3

mod Calculates "Operand 1" mod "Operand 2". Example: 7


Remainder mod 2 = 1

EXAMPLE
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 not(False) = True and not(True) = False


Boolean negation

and False and False = False


Boolean conjunction. False and True = False
True and False = False
True and True = True

IQANdesign User manual 89


Objects
4 Functions

or False or False = False


Boolean disjunction False or True = True
True or False = True
True or True = True

xor False xor False = False


Boolean exclusive False xor True = True
disjunction. True xor False = True
True xor True = False

Trigonometric
Operand resolution for trigonometric operators is at least 0.1. Result resolu-
tion is at least 3 decimals.

sin Sine of the angle, "Operand 1"


Angle must be n(0 - 360).

cos Cosine of the angle, "Operand 1"


Angle must be n(0 - 360).

asin Inverse sine of "Operand 1".

acos Inverse cosine of "Operand 1".

tan Tangent of "Operand 1"


tan(X) = sin(X) / cos(X).

atan Arctangent of "Operand 1".

Logical (bitwise)

bnot Bitwise negation.

band Bitwise and.

bor Bitwise or.

bxor Bitwise xor.

shl Bitwise shift left. "Operand 1" is shifted "Operand 2"


steps to the left.

shr Bitwise shift right. "Operand 1" is shifted "Operand 2"


steps to the right.

Other

Abs Absolute value of "Operand 1".


Example: Abs(-27) = 27, Abs(104.2) = 104.2

IQANdesign User manual 90


Objects
4 Functions

MaxOf Largest value of "Operand 1" and "Operand 2".

MinOf Smallest value of "Operand 1" and "Operand 2"

MaxOfAbs 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.

MinOfAbs 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.

Sqrt Square root of "Operand 1".

Power Raises base to any power.


"Operand 1" is base and "Operand 2" is exponent.

Ln Natural logarithm (Ln(e) = 1) of "Operand 1".

Round 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%.

f 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].

IQANdesign User manual 91


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].

Flank Flank detect. Detects rising or falling flanks on digital


signals. Generates a pulse when flank is detected
(value turns True for one cycle).

Positive flank Positive flank detect. Detects rising flanks on Boolean


signals. Generates a pulse when flank is detected
(value turns True for one cycle).

Negative flank Negative flank detect. Detects falling flanks on


Boolean signals. Generates a pulse when flank is
detected (value turns True for one cycle).

Status

Status = True if the status of "Operand 1" equals "Operand 2",


Equality otherwise False.

Status <> False if the status of "Operand 1" equals "Operand 2",
Inequality otherwise True.

Status type = True if the status type of "Operand 1" equals the value
Equality of "Operand 2", otherwise False. There are four status
types; Info, OK, Warning and Error.

Status type <> False if the status type of "Operand 1" equals the value
Inequality of "Operand 2", otherwise True. There are four status
types; Info, OK, Warning and Error.

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.

IQANdesign User manual 92


5 Channels

Channels are probably the most important components in an application.


They are used to get input from the machine, do calculations, control the dis-
play 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 seven different groups: Inputs/Outputs,
Calculation, Miscellaneous, Interface, J1939, Other CAN and Safety.

IQANdesign User manual 93


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 encour-
aged 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 48.

Direction
In addition to naming channels clearly, you should standardize on the direc-
tions 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 Positive
Down Negative

Forward Positive
Reverse Negative

Right Positive
Left Negative

Right turn Positive


Left turn Negative

Out Positive
In Negative

IQANdesign User manual 94


Value and status
5 Channels

Value and status


A channel has a value and a status. Each channel in this chapter has a section
describing its value, unit, range and type. There is also a table listing all pos-
sible status values. The status values Disabled and OK are excluded from the
lists since all channels can have these statuses.

Value
The value is calculated using a combination of input values, properties and/or
functions. Depending on channel type, the value type can be boolean (False/
True), real, integer, state or text.

EXAMPLES
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.

Real
A real number (floating point) is in the range 1.510-45 - 3.41038 (negative and
positive) with 7 significant digits. If a real value is used where a boolean
value is expected, the value 0 is interpreted as False and all other values as
True.

Integer
An integer number is a 32 bit signed value in the range 2109. If an integer
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 a display module,
log text information or send text messages via SMS. They can not be used in
numeric calculations.

IQANdesign User manual 95


Value and status
5 Channels

Status
The status is used to indicate warnings, errors or other info. Some status
changes are shown as on-screen messages or LED codes on the master, and
some are also logged in the system log.
In the tables 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. There are some additional system messages that can be dis-
played for a master module, but that are not related to statuses. See section
Module system messages on page 215.
There are four status types; Info, OK, Warning and Error. When displayed by
a system dialog box, warnings use the Warning priority level, and errors use
the Error or Critical level, see section Conditional message - CMSG on page
154.

Status values - Info

Status Description Msg Log

Disabled Component disabled. Not evaluated.

Not evaluated Not evaluated due to lazy evaluation.

No status No status.

Status values - OK

Status Description Msg Log

OK Status OK.

Log full (recycling) A log is full but will continue to log new
records by recycling old records.

Status values - Warning

Status Description Msg Log

High temperature Module internal temperature. (Only IQAN


modules)

Low supply voltage Module supply voltage. (Only IQAN modules)


High supply voltage Module supply voltage. (Only IQAN modules)
Date and time not set Applies to master module only.
Start block Lever not in zero position at power-up.
Low alarm Value below low alarm level on input channel.

IQANdesign User manual 96


Value and status
5 Channels

Status Description Msg Log

High alarm Value over high alarm level on input channel.


Saturated Not able to output commanded current.
Current is 50-100% of commanded.

Locked Internal status used for locked components,


e.g. adjust items.

Checksum error Checksum calculation error for adjustable/


stored value

Log full (stopped) A log is full and will not record any new
records until emptied.

Warning General warning status

Status values - Error

Status Description Msg Log

Low error Value below low error level on input channel.


High error Value over high error level on input channel.
Overload Output overloaded.
Open load Output is disconnected. Current is less than
50% of commanded.

Division by zero Math calculation.


Calculation overflow Math calculation.
Negative square root Math calculation.
Invalid argument Math calculation.
J1939 error J1939 error detected at parameter input
channel (JPIN).

J1939 not available Parameter (JPIN) not available in J1939


parameter group (JFIN).

Timeout Timeout detected on JFIN or GFIN.

No contact No contact with expansion module. (Applies


to all modules)

IQANdesign User manual 97


Value and status
5 Channels

Status Description Msg Log

Multiple address Two or more IQAN modules with same


address detected.

VREF error VREF error detected on IQAN module.


Internal error Internal IQAN module error.
Critical error Critical IQAN module error.
Pin conflict Invalid channel type connected to module pin.

CAN bus error CAN bus does not work.


Address error Invalid address tag on master module.
Out of range A parameter or channel value is out of range.
Input error Error detected on input channel (used by
AAC, DDC and ADC channels).

Diff check error Input channels not equal (used by AAC, DDC
and ADC channels).

PIN code error Wrong PIN code for SIM card in gateway
module.

No SIM card No SIM card in gateway module.


Address claim error Could not claim J1939 address.
Alien online Found alien modules not belonging to current
multi-master system.

System mismatch Mismatch between project ID or revision in a


multimaster system.

Invalid log record Invalid record (or section) in log.

Error Generic error.

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.

IQANdesign User manual 98


Value and status
5 Channels

Status tables
Each channel section in this chapter has a table listing all possible status val-
ues for its channel type.

Standard statuses
The status values Disabled and OK are excluded from the lists since all chan-
nels 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 Module is disabled.

No contact Module is offline.

Multiple address error There are more than one module with the same address
on the bus. Only applicable to IQAN expansion
modules.

Propagated object status


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 Math calculation.

Calculation overflow Math calculation.

Negative square root Math calculation.

Invalid argument Math calculation.

IQANdesign User manual 99


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 sig-
nal can be scaled to an application dependent range.

Scaled max

Scaled min

min max

Scaling of the input signal.

Properties

Unit The unit for the scaled value of this channel. Select Not
used to avoid Missing unit hint in project check for
channels without unit.

Reference voltage 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.

Error value 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.

Device type Select a predefined device type to automatically get the


correct limits (on the corresponding adjust item) and
calibration values for that device.

IQANdesign User manual 100


Inputs/Outputs
5 Channels

Calibration > Min Enter raw sensor value when sensor is in its minimum
position.
This is an application default value. For adjustable
parameters, it is used as initial value the first time a
parameter is downloaded to a master module. See user
manual for more information on application default.
Note: It is important to use a safe application default
value since it is also used as error value in the unlikely
event that the parameter gets corrupted.

Calibration > Max Enter raw sensor value when sensor is in its maximum
position.
See also property Min regarding application default.

Calibration > Scaled min Enter the scaled value of the sensors minimum
position. Examples: 90 cm, -30C, etc.

Calibration > Scaled max Enter the scaled value of the sensors maximum
position. Examples: 785 cm, 130C, etc.

Alarm > Low/High 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.

Alarm > Low/High value 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 and presented
to the driver. Enter scaled value, not raw value.

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.

IQANdesign User manual 101


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 dia-
log box that appears. The new device is added to the list. You can also edit or
delete existing devices.

Device data for pressure sensor IQAN-SP35.

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 102
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.

Replace existing device confirmation.

Adjust
By adding this channel to an adjust group, it is possible to adjust its Min and
Max via a display module or IQANrun.

Error detection

Scaled value

Scaled max Illegal value, low= Min/2

Illegal value, high= ((Vin max- Max)/2)+ Max


Scaled min

Min Max Vin max


Voltage range analog input

Detection of illegal value.

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 103


Inputs/Outputs
5 Channels

Value

Value Scaled value.

Unit See property Unit.

Range See property Calibration.

Type 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 Value is lower than the specified low alarm level.

High alarm Value is higher than the specified high alarm level.

Low error Value is below its valid range, see section Error
detection on page 103.

High error Value is above its valid range, see section Error
detection on page 103.

Division by zero Min equals max.

Out of range Settings are not within limits.

VREF error There is an error detected on the VREF this channel is


connected to.

Inherited module status See section Inherited module status on page 99.

PWM in - PWMIN
A physical analog input. The PWM input channel is used to measure pulse
width modulates sensors.
The input PWM range is 0 - 1000 (max valid range is 10 - 990). The sig-
nal can be scaled to an application dependent range.

Scaled max

Scaled min

min max

Scaling of the input signal.

IQANdesign User manual 104


Inputs/Outputs
5 Channels

Properties

Unit The unit for the scaled value of this channel. Select Not
used to avoid Missing unit hint in project check for
channels without unit.

Leading edge Defines whether the PWM input signal starts the period
cycle with a Positive (rising) or Negative (falling)
flank.

Error value 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.

Calibration > Min Enter raw sensor value when sensor is in its minimum
position.
This is an application default value. For adjustable
parameters, it is used as initial value the first time a
parameter is downloaded to a master module. See user
manual for more information on application default.
Note: It is important to use a safe application default
value since it is also used as error value in the unlikely
event that the parameter gets corrupted.

Calibration > Max Enter raw sensor value when sensor is in its maximum
position.
See also property Min regarding application default.

Calibration > Scaled min Enter the scaled value of the sensors minimum
position. Examples: 90 cm, -30C, etc.

Calibration > Scaled max Enter the scaled value of the sensors maximum
position. Examples: 785 cm, 130C, etc.

Alarm > Low/High 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.

Alarm > Low/High value 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 and presented
to the driver. Enter scaled value, not raw value.

IQANdesign User manual 105


Inputs/Outputs
5 Channels

Adjust
By adding this channel to an adjust group, it is possible to adjust its Min and
Max via a display module or IQANrun.

Error detection
See section Error detection on page 103.

Value

Value Scaled value.

Unit See property Unit.

Range See property Calibration.

Type Analog (Real number)

Status

Low alarm Value is lower than the specified low alarm level.

High alarm Value is higher than the specified high alarm level.

Low error Value is below its valid range, see section Error
detection on page 103.

High error Value is above its valid range, see section Error
detection on page 103.

Division by zero Min equals max.

Out of range Settings are not within limits.

Inherited module status See section Inherited module status on page 99.

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

Value Boolean value.

Unit n/a

Range False (= 0) or True (= 1)

Type Digital

IQANdesign User manual 106


Inputs/Outputs
5 Channels

Status

Inherited module status See section Inherited module status on page 99.

Frequency in - FIN
A physical analog input. The frequency input channel is used to measure fre-
quency. Typically it is used to measure speed or revolutions.
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 The unit for the scaled value of this channel. Select Not
used to avoid Missing unit hint in project check for
channels without unit.

Disable Select a channel to disable the channel. When the


disable channels value is True, the value of this
channel is set to zero, and will stay zero as long as the
disable is True.

Max Enter raw sensor value when sensor is in its maximum


speed.

Scaled max Enter the scaled value of the sensors maximum value.
Examples: 785 cm, 2350 RPM, etc.

Fast response 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.

Alarms See Alarm properties for Voltage in, page 100.

Fast response
There is a faster method of detecting zero frequency, but at a sacrifice of low
frequencies.

IQANdesign User manual 107


Inputs/Outputs
5 Channels

Actual frequency 0 Hz Delay before 0 Hz


e.g., locked brake is detected

With fast response Without fast response

With and without fast response.

This method has only an uncertainty of one sample time when a zero fre-
quency is detected.

Value

Value Scaled value.

Unit See property Unit.

Range 7 significant digits

Type Analog (Real number)

If you need the raw value instead, use calibrations Max = 1000 and Scaled
max = 1000.

Status

Low alarm Value is lower than the specified low alarm level.

High alarm Value is higher than the specified high alarm level.

Inherited module status See section Inherited module status on page 99.

Directional frequency in - DFIN


A physical analog input. The directional frequency input channel is used to
measure frequency. It is bidirectional, which means it can measure frequency
clockwise/counter-clockwise.
Typically it is used to measure speed, revolutions (frequency) including
direction.

Properties
Same properties as a frequency input channel with one addition.

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.

IQANdesign User manual 108


Inputs/Outputs
5 Channels

Value

Value Scaled value.

Unit See property Unit.

Range 7 significant digits

Type Analog (Real number)

If you need the raw value instead, use calibrations Max = 1000 and Scaled
max = 1000.

Status

Low alarm Value is lower than the specified low alarm level.

High alarm Value is higher than the specified high alarm level.

Inherited module status See section Inherited module status on page 99.

Pulse count channel - PCNT


A physical analog input. The pulse count input channel is used to count
pulses on an input.
Typically it is used to measure a distance.

Properties

Unit The unit for the scaled value of this channel. Select Not
used to avoid Missing unit hint in project check for
channels without unit.

Accumulate Select whether pulses are accumulated or not. When


accumulated, the channel's value represents the number
of pulses counted since system power-on or last reset.
When not, the channel's value represents the number of
pulses counted during the last cycle only.

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.

Resetting channel Select a channel to reset the value. When the resetting
channels value changes from False to True, the value
of this channel is set to its reset value, see next
property, and it will keep that value as long as the
resetting channel is True.

IQANdesign User manual 109


Inputs/Outputs
5 Channels

Reset value When reset by its resetting channel or via an adjust


item, the channel will be set to this value. Channels that
are not stored, see property Store value, will use this as
their start-up value. Enter scaled value, not raw value.
Note: It is important to use a safe reset value for stored
channels since it is also used as error value in the
unlikely event that the parameter gets corrupted.

Max Enter raw sensor value when sensor is in its maximum


speed or position.

Scaled max Enter the scaled value of the sensors maximum value.
Examples: 785 cm, 2350 RPM, etc.

Value

Value Scaled value.

Unit See property Unit.

Range 7 significant digits

Type Analog (Real number)

If you need the raw value instead, use calibrations Max = 1000 and Scaled
max = 1000.

Status

Low alarm Value is lower than the specified low alarm level.

High alarm Value is higher than the specified high alarm level.

Inherited module status See section Inherited module status on page 99.

Directional pulse count channel - DPCNT


A physical analog input. The directional pulse count input channel is used to
count pulses. It is bi-directional, witch means it can add and subtract pulses.
Typically it is used to measure a position.

Properties
Same properties as a pulse input channel with one addition.

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.

IQANdesign User manual 110


Inputs/Outputs
5 Channels

Value

Value Scaled value.

Unit See property Unit.

Range 7 significant digits

Type Real

If you need the raw value instead, use calibrations Max = 1000 and Scaled
max = 1000.

Status

Low alarm Value is lower than the specified low alarm level.

High alarm Value is higher than the specified high alarm level.

Inherited module status See section Inherited module status on page 99.

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

Value Scaled value.

Unit %

Range -100% to 100%, 0% equals center position

Type Analog (Real number)

Status

Inherited module status See section Inherited module status on page 99.

Current out - COUT


A physical analog output. The current output channel is primarily used to
control proportional valves.

IQANdesign User manual 111


Inputs/Outputs
5 Channels

Properties

Bidirectional 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.

BWL 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.

Device type 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.

Input channel 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.

Mode selector 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.

Default mode 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.

IQANdesign User manual 112


Inputs/Outputs
5 Channels

Min current [mA] Min current for this mode. This current equals
command value 0%.
This is an application default value. For adjustable
parameters, it is used as initial value the first time a
parameter is downloaded to a master module. See user
manual for more information on application default.
Note: It is important to use a safe application default
value since it is also used as error value in the unlikely
event that the parameter gets corrupted.

Max current [mA] Max current for this mode. This current equals
command value 100%.
See also property Min current regarding application
default.

Start slope [ms] 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.
See also property Min current regarding application
default.

Stop slope [ms] 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.
See also property Min current regarding application
default.

Device type
See section Device type on page 101. Current output devices have different
values than voltage input devices, but the handling is the same.

Adjust
By adding this channel to an adjust group, it is possible to adjust its Min cur-
rent, Max current, Start slope and Stop slope via a display module or IQAN-
run.

IQANdesign User manual 113


Inputs/Outputs
5 Channels

Output characteristics
Current [mA]

Max current

Min current

Start Stop t [ms]


slope slope

Current and slope times.

Value

Value Calculated current.

Unit mA

Range Dependent on mode and current settings.

Type Analog (Integer number)

Status

Open load Output is disconnected. Current is less than 50% of


commanded.

Overload Output overloaded.

Saturated Not able to output commanded current. Current is 50-


100% of commanded.

Out of range Settings are not within limits.

Inherited module status See section Inherited module status on page 99.

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].

PWM output characteristic


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.

IQANdesign User manual 114


Inputs/Outputs
5 Channels

% Function value
MR max

MR min
time
Resulting output signal

MR min MR max time

The PWM output values.

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

Value Calculated modulation ratio.

Unit %

Range Dependent on mode and settings.

Type Analog (Integer number)

Status

Open load Output is disconnected. Actual value is less than 50%


of commanded.

Overload Output overloaded.

Out of range Settings are not within limits.

Inherited module status See section Inherited module status on page 99.

Digital out - DOUT


A physical digital output. The digital output channel is primarily used to
control lamps, on/off valves or relays.

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.

IQANdesign User manual 115


Inputs/Outputs
5 Channels

Delay off [ms] This is the time it will take for the channel value to
change to False after the input channel value changes
to False.

Soft start time [ms] 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 193.

Soft stop time [ms] 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 193.

Peak and hold 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 193.

Peak time [ms] During peak time the output functions as a normal
digital output, that is, high output.

Hold value [%] After peak time the output will function as a PWM
output, with a fixed pulse width specified by this
property.

Input channel Select a channel to control the value of this output. You
can only select a channel with a digital value.

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 116


Inputs/Outputs
5 Channels

< on
< off Function value

off
on Channel value

Debounce filter for a digital out.

Value

Value Boolean value.

Unit n/a

Range False (= 0) or True (= 1)

Type Digital

Status

Open load Output is disconnected.

Overload Output is overloaded.

Inherited module status See section Inherited module status on page 99.

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.
When using closed loop control its value should be 0%
- 100%, where 0% equals min RPM and 100% equals
max RPM.
When using open loop control its value should be -
100% - 100%, corresponding to % MR and sign for
direction of the current.

Enable 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.

IQANdesign User manual 117


Inputs/Outputs
5 Channels

Type Closed or open loop. When using closed loop, VIN-A


on the same module is used as a feedback channel and
is therefore occupied.

P regulator Proportional regulation constant.

I regulator Integrating regulation constant.

D regulator Derivative regulation constant.

Calibration > Min [mV] Enter raw sensor value when sensor is in its minimum
position.
This is an application default value. For adjustable
parameters, it is used as initial value the first time a
parameter is downloaded to a master module. See user
manual for more information on application default.
Note: It is important to use a safe application default
value since it is also used as error value in the unlikely
event that the parameter gets corrupted.

Calibration > Max [mV] Enter raw sensor value when sensor is in its maximum
position.
See also property Min regarding application default.

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 a display module or IQANrun.

Value

Value Command value.

Unit %

Range Open loop: 0% to 100%


Closed loop: -100% to 100%

Type Analog (Real number)

Status

Inherited module status See section Inherited module status on page 99.

IQANdesign User manual 118


Calculation channels
5 Channels

Calculation channels
The calculation channels are used to evaluate functions. In a simple applica-
tion 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, DMAC and IMAC


There are three types of channels that are primarily used to perform mathe-
matical calculations:
Math channel - MAC
Dual direction math channel - DMAC
Integer math channel - IMAC
The MAC and DMAC 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.
The IMAC channel differs in that the resulting value is a integer instead of a
real.

Properties

Unit The unit for the scaled value of this channel, for
example [%] or [cm]. Select Not used to avoid Missing
unit hint in project check for channels without unit.

Limiting object group This property determines whether the limiting object
(Only MAC) 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.

IQANdesign User manual 119


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.

Function
With a DMAC you can create complex functions in both negative and posi-
tive direction. If you just want to create simple functions or complex func-
tions in only the positive direction, a MAC is preferable and most common.
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.
The IMAC works identical to the MAC internally but rounds the result to the
nearest integer.

Value (MAC and DMAC)

Value Calculated function value.

Unit See property Unit.

Range 7 significant digits

Type Analog (Real number)

Value (IMAC)

Value Calculated function value.

Unit See property Unit.

Range 2109
Type Analog (Integer number)

Status

Object errors See section Propagated object status on page 99.

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.

IQANdesign User manual 120


Calculation channels
5 Channels

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 t

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.

Delay off [ms] This is the time it will take for the channel value to
change to False after the function value changes to
False.

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
< off Function value

off
Channel value
on

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 fil-
ter but just as a delay.
If toggle is used in combination with latching, the toggle function is ignored.

IQANdesign User manual 121


Calculation channels
5 Channels

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

Value Calculated function value.

Unit n/a

Range False (= 0) or True (= 1)

Type Digital

Status
Same status values as a math channel, see section Status on page 120.

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 Select the channel representing the command value.

Feedback channel Select the channel representing the feedback value.

P regulator Proportional regulation constant.

I regulator Integrating regulation constant. Unit is [gain/s].

D regulator Derivative regulation constant.

Enable 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.

Output range 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.

IQANdesign User manual 122


Calculation channels
5 Channels

Command value + Control error Control value


Regulator Controlled object
-

Feedback value

Block diagram over a closed loop control.

Command and Feedback values


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 experi-
ence self-induced oscillation. With this in mind, you must select the correct
type of regulation.

Different types of regulation


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

IQANdesign User manual 123


Calculation channels
5 Channels

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 regu-
lator. 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
(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 propor-
tional 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.

IQANdesign User manual 124


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

Command value + Control error Control value


PI Regulator Telescope
-

Feedback value = COG

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% respec-
tively for bipolar regulators). Therefor the integrating part can be temporarily
disabled by the regulator to ensure channel value stays within range. This fea-
ture 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))

IQANdesign User manual 125


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 = P x T + I T D x ( T ( T 1 ) )
(t = 0)

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

Value Calculated control value, see above.

Unit %

Range Unipolar: 0% to 100%


Bipolar: -100% to 100%

Type Analog (Real number)

Status

Out of range Invalid P or I regulator constant (less than 0).

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.

IQANdesign User manual 126


Calculation channels
5 Channels

S
Y2

Y1

E E

Integrating limiting function.

Properties

Output Specify Normal or Inverted regulation.

Enable 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 100.

Input channel Select an input channel for the regulation.

Start reduction at (S) The value of the input channel where the reduction will
start.

Max error (E) Specify the maximum error relative to the value Start
reduction at.

Max increase speed [%/s] Maximum increase speed when input value is less than
(Y2) Start reduction at - Max error (S - E).

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.

IQANdesign User manual 127


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

Value Calculated control value, see above.

Unit %

Range 0% to 100%

Type Analog (Real number)

Status
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.

IQANdesign User manual 128


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.

Reset value When reset by its function or via an adjust item, the
channel will be set to this value. Channels that are not
stored, see property Store value, will use this as their
start-up value.
Note: It is important to use a safe reset value for stored
channels since it is also used as error value in the
unlikely event that the parameter gets corrupted.

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.

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.

IQANdesign User manual 129


Calculation channels
5 Channels

T1, T2 > two times cycle time

T1 T2
Increasing object groups value

t
Decreasing object groups value

Resetting object groups value


t

Counters output value

Increasing, decreasing and resetting the event counters output value.

Value

Value Accumulated counter value.

Unit n/a

Range 2109
Type Analog (Integer number)

Status

Calculation overflow Value not within valid range, see above.

Object errors See section Propagated object status on page 99.

Memorizing channel - MEM


This channel is used to memorize, accumulate or subtract the value of a
defined input signal at a certain condition.

Properties

Input channel Select the channel whose value you want to memorize.

Action 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.

IQANdesign User manual 130


Calculation channels
5 Channels

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.

Reset value When reset by its function or via an adjust item, the
channel will be set to this value. Channels that are not
stored, see property Store value, will use this as their
start-up value.
Note: It is important to use a safe reset value for stored
channels since it is also used as error value in the
unlikely event that the parameter gets corrupted.

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.

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.

IQANdesign User manual 131


Calculation channels
5 Channels

Activating object groups value

T1 T2 t

Resetting object groups value

t
Input channels value

Channels output value

Memorizing channel with Action set to Add.

Value

Value Memorized value.

Unit Same as input channel.

Range 7 significant digits


Limited range 2109 when using Add or Subtract.

Type Same as input channel

Status

Calculation overflow Invalid result when using action Add or Subtract,


(-2109 > Result > 2109).

Object errors See section Propagated object status on page 99.

Slope/Filter channel - SFC


The slope/filter channel is used to apply slope times, BWL, filter or moving
average to another channel.

Properties

Input channel Select the input channel that you want to apply slope
times, BWL, filter or moving average to.

Enable 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.

Type Select type Slopes, BWL, Filter or Moving average.

IQANdesign User manual 132


Calculation channels
5 Channels

Slopes Enter start and stop slope values, for positive and
negative direction, in [unit]/s.

BWL 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.

Filter Specify a filter value for this channel. 0 equals no filter


effect at all, and 100 equals maximum filter effect.

Window size 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.

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 stabil-
ity in the channels signal.

IQANdesign User manual 133


Calculation channels
5 Channels

Input
Value [Unit]
Output

100

25%
50%
75%

90%

0 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.

Filter value

100

Signal change
0
BWL

Filter value as a function of input signal change.

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 fil-
ter 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.

IQANdesign User manual 134


Calculation channels
5 Channels

Value

Value Filtered value.

Unit Same as input channel.

Range Same as input channel.

Type Analog (Real number)

Status

Calculation overflow Calculation result too large.

Out of range 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 - BWF


The Butterworth filter channel is used to apply a low pass, high pass, band
pass or band stop filter to another channel.

Properties

Input channel Select the input channel that you want to apply a
Butterworth filter to.

Enable 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.

Type Select type Low pass, High pass, Band pass or Band
stop.

Order 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.

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.

IQANdesign User manual 135


Calculation channels
5 Channels

Second cutoff frequency The cutoff frequency is the frequency at which the
[Hz] 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

Value Filtered value.

Unit Same as input channel.

Range Same as input channel.

Type Analog (Real number)

Status

Calculation overflow Calculation result too large.

Out of range Invalid cutoff frequency.

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 Unit of the lookup table output value. Select Not used
to avoid Missing unit hint in project check for channels
without unit.

Row selector 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.

Column selector 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.

IQANdesign User manual 136


Calculation channels
5 Channels

Interpolation 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.

Lookup table 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).

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 pro-
grams.

Lookup table editor dialog.

IQANdesign User manual 137


Calculation channels
5 Channels

It is also possible to create a color coded graph from the table values by click-
ing the button Graph, see image below.

Graph dialog.

Value

Value Calculated value.

Unit See property Unit.

Range 7 significant digits

Type Analog (Real number)

Status

Calculation overflow Calculation result too large.

Out of range Row or column input value is outside the range defined
by row or column index.

IQANdesign User manual 138


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 multi-
function, 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 64.

Value

Value Same as inputs value.

Unit See property Unit.

Range See properties Min limit and Max limit.

Type See property Input type.

Status

Out of range Input value is outside the range defined.

Input channels status 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 a display module 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.

IQANdesign User manual 139


Miscellaneous channels
5 Channels

Properties

Unit The unit for the scaled value of this channel. Select Not
used to avoid Missing unit hint in project check for
channels without unit.

Mode selector 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.

Default mode 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.

Default value The channels value for this mode.


This is an application default value. For adjustable
parameters, it is used as initial value the first time a
parameter is downloaded to a master module. See user
manual for more information on application default.
Note: It is important to use a safe application default
value since it is also used as error value in the unlikely
event that the parameter gets corrupted.

Adjust
By adding this channel to an adjust group, it is possible to adjust its value via
a display module or IQANrun.

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 speci-
fied in the state channel.

Value

Value Fixed value, or value set by user if adjustable.

Unit See property Unit.

Range 7 significant digits or as defined by the adjust item.

Type Analog (Real)

Status
No further status values except the standard statuses; Disabled and OK.

IQANdesign User manual 140


Miscellaneous channels
5 Channels

Integer parameter - IP
The integer parameter works the same way as the function parameter.
The only difference is that the value type is an integer.

Properties
Same properties as a function parameter.

Adjust
By adding this channel to an adjust group, it is possible to adjust its value via
a display module or IQANrun.

Mode selector
It is possible to have several values for a Integer parameter. If you select to
use a state channel as a selector of the different IP values, you will be able to
have as many different parameter value as the number of states that are speci-
fied in the state channel.

Value

Value Fixed value, or value set by user if adjustable.

Unit See property Unit.

Range 2109 or as defined by the adjust item.


Type Analog (Integer or Hexadecimal number)

Status
No further status values except the standard statuses; Disabled and OK.

Digital parameter - DP
The digital parameter channel is used as adjustable constants in functions, for
example to turn options on or off, etc. You can adjust the digital parameter
value via a display module or IQANrun.

IQANdesign User manual 141


Miscellaneous channels
5 Channels

Properties

True text Enter a text to describe the true value, e.g. True or
On.

False text Enter a text to describe the false value, e.g. False or
Off.

Mode selector 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.

Default mode 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.

Default value The channels value for this mode.


This is an application default value. For adjustable
parameters, it is used as initial value the first time a
parameter is downloaded to a master module. See user
manual for more information on application default.
Note: It is important to use a safe application default
value since it is also used as error value in the unlikely
event that the parameter gets corrupted.

Adjust
By adding this channel to an adjust group, it is possible to adjust its value via
a display module or IQANrun.

Mode selector
It is possible to have several values for a Digital parameter. If you select to
use a state channel as a selector of the different IP values, you will be able to
have as many different parameter values as the number of states that are spec-
ified in the state channel.

Value

Value Boolean

Unit n/a

Range False (= 0) or True (= 1)

Type Digital

IQANdesign User manual 142


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

Default state name 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 corre-
sponds 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 func-
tion group input channels which have to be updated manually (see section
Function group input - FGI on page 139 for more information).

Value

Value Calculated state, see above.

Unit n/a

Range One of the available states.

Type State
IQANdesign User manual 143
Miscellaneous channels
5 Channels

Status

Object errors See section Propagated object status on page 99.

State parameter - SP
State parameter is an adjustable state machine, which means the user can con-
trol 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


None and add this channel to an adjust group to control
the state manually via a display module or IQANrun.

Default state name This name is used for the default state. The default
state is the active state when no other state is active.

States Press the + button to add states to the state machine.

State 1, 2, etc. Enter a descriptive name for each state.

Adjust
By adding this channel to an adjust group, it is possible to adjust its active
state via a display module or IQANrun.

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

Value Active state controlled by input channel, or state


selected by user if adjustable.

Unit n/a

Range One of the available states.

Type State

Status

Out of range Input value is outside the range defined by the states.

IQANdesign User manual 144


Miscellaneous channels
5 Channels

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 project
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 mod-
ule 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)

S/N Module serial number.


Type: Text

Temperature [C] The modules internal temperature, for example 45.70


C.
Type: Analog (Real number)

+BAT [V] The modules supply voltage, for example 28.45 V.


Type: Analog (Real number)

VREF [V] The modules reference voltage, for example 5.00 V.


Type: Analog (Real number)

Address The modules ID tag value (CAN address), 0 or higher.


(-1 = Unknown address).
Range: -1 - 7
Type: Analog (Integer number)

Network state The current status of modem, for example 3="Idle" on


the G1 modem.
Se network state values table blow.
Type: Analog (Integer number)

Signal quality Modem signal quality in %.


Type: Analog (Integer number)

IQANdesign User manual 145


Miscellaneous channels
5 Channels

Malfunction/Red stop/ J1939 lamp indicator, False=Off and True=On. Only


Amber warning/Protect applicable for J1939 modules.
Type: Digital

Module status values

0 Not evaluated

64 OK

128 High temperature

129 Low supply voltage

130 High supply voltage

131 RTC not connected

203 No contact

204 Multiple address

205 VREF error

Network state values


Value G1 modem G2 modem

0 Unknown Unknown

1 Initializing Initializing

2 Searching Searching

3 Idle Offline

4 Calling Online

5 Connected Connected

Value

Value Value is set to diagnostic value from actual module.

Unit See table Diagnostic values above.

Range See table Diagnostic values above.

Type See table Diagnostic values above.

Status
Depends on which value is measured.

IQANdesign User manual 146


Miscellaneous channels
5 Channels

High temperature Measured value is Temperature [C].

Low supply voltage Measured value is +BAT [V].

High supply voltage Measured value is +BAT [V].

Multiple address Measured value is Address.

Address error Measured value is Address.

VREF error Measured value is VREF [V].

Inherited module status See section Inherited module status on page 99.

Display control channel - DCC


The display control channel is used to control display backlight and display
buttons.

Properties

Type Select which type of input to control with this channel.

Input channel Select a channel to control the value of this system


input.

Enabled Enables or disables this system input.

Override 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 Controls the backlight.

Button A-D Controls the buttons A-D (only available on the MDL2
master module).

Button F1-F5 Controls the buttons F1-F5 (on the MD3 master
module only F1-F4 are available)

Button up/down Controls the up and down buttons on the MD3 and the
corresponding jog functions on the MDL2.

Button OK Controls the OK button on the MD3 and the jog button
on MDL2.

Button menu Controls the menu button.

Button back Controls the back button.

IQANdesign User manual 147


Miscellaneous channels
5 Channels

Value

Value Input channels value.

Unit Same as input channel.

Range Same as input channel.

Type Same as input channel.

Status
No further status values except the standard statuses; Disabled and OK.

System information channel - SIC


The system information channel is used to read system related values, such as
weekday, machine ID and logged in user. There is only one property, Value,
which specifies the value this channel will represent.

Value constants

Project name The name of this project.


Type: Text

Project version The version for this project.


Type: Text

Project ID The ID for this project. The ID is used to relate a


project file with other files, such as logs, machine
settings, measurements, etc.
Type: Text

Project checksum The checksum for this project. It is used to identify a


unique version of the project file and to verify that all
masters in a system originates from the exact same
project.
Type: Text

Multi-master state Current multi-master state. See section Erroneous or


incomplete systems on page 346 for more information.
0 = Init
1 = Stopped
2 = Single Master
3 = Limited
4 = OK
When the multi-master state is Stopped, the channels
status will be Internal error.
Type: Integer

IQANdesign User manual 148


Miscellaneous channels
5 Channels

Active error level 0 = No active errors or alarms.


1 = There are one or more alarms active (not
acknowledged)
2 = There are one or more errors active (not
acknowledged)
Type: Integer number

Cycle utilization [%] 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: Real number

Cycle time [ms] Measures the system cycle time. This is the same value
as you set in the master module properties.
Type: Integer number

Memory utilization [%] 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: Real number

Memory utilization Measures utilization of the internal RAM memory, that


[KBytes] 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: Real number

Log cycle time [ms] Measures the cycle time for the log process. This is
normally the same value as the applications cycle
time, but for some loaded applications the log cycle
time can be longer.
Type: Integer number

IQANdesign User manual 149


Miscellaneous channels
5 Channels

Active display page Index for the display page that is currently displayed on
the display module. Each display page index can be
found in the display page list, column Order.
Type: Integer number

Weekday 1 = Monday and 7 = Sunday (ISO 8601-compliant).


Type: Analog (Integer number)

Date 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.
For modules without realtime clock, e.g. IQAN-MC3,
this is number of times the module has been started.
Type: Integer number

Time 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.
For modules without realtime clock, e.g. IQAN-MC3,
this is the time since last system start.
Type: Real number

Selected language 0 = default language selected, 1 = first language


selected, etc.
Type: Integer number

Machine ID Unique ID for each machine, usually set in production.


Type: Text

User name The name of the currently logged in user.


Type: Text

Access level The access level of the currently logged in user.


Type: Integer number

User tag The tag of the currently logged in user.


Type: Integer number

Value

Value Value is set to selected diagnostic value from system.

Unit See table Value constants above.

IQANdesign User manual 150


Miscellaneous channels
5 Channels

Range See table Value constants above.

Type See table Value constants above.

Status

High alarm Used for values Cycle utilization and Memory


utilization.

High error Used for value Cycle utilization.

Internal error Used for value Multi-master state.

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 nega-
tive, 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].

Properties

Type (Unit) Select the resolution of your timer, Milliseconds,


Seconds, Minutes or Hours.

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.

Reset value When reset by its function or via an adjust item, the
channel will be set to this value. Channels that are not
stored, see property Store value, will use this as their
start-up value.
Note: It is important to use a safe reset value for stored
channels since it is also used as error value in the
unlikely event that the parameter gets corrupted.

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.

IQANdesign User manual 151


Miscellaneous 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 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

Value Elapsed time.

Unit See property Type (Unit).

Range 7 significant digits


Milliseconds: 0 - 2109
Seconds: 0 - 2106
Minutes: 0 - 33 333 333
Hours: 0 - 555 555,6

Type Analog (Real number)

Status

Calculation overflow Calculation result too large.

Object errors See section Propagated object status on page 99.

IQANdesign User manual 152


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 a display mod-
ule. Some messages are interactive and the action depends on how the opera-
tor 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 a display module or IQANrun. A text parameter can
have multiple texts. The active text is then selected with a state channel.

Properties

Mode selector 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.

Text The default text.

Adjust
By adding this channel to an adjust group, it is possible to adjust its value via
a display module or IQANrun. Property Adjustable must be set to Yes for
each mode you want to adjust.

Value

Value Fixed text, or text set by user if adjustable.

Unit n/a

Range 0 - 100 characters (or limited by adjust item)

Type Text

Status
No further status values except the standard statuses; Disabled and OK.

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.

IQANdesign User manual 153


Interface channels
5 Channels

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.

Texts 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.

Text Enter a text or select a channel. If you select a channel


you also need to specify what information to show, see
property Show.

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.

Number of decimals Specify how many decimals you want.

Value

Value Formatted text.

Unit n/a

Range 30 characters

Type Text

Status
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 display
modules 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 under-
lying display page will be visible around the dialog box. All display page but-
tons will be disabled though, and instead used for controlling the dialog box
as long as it is visible.

IQANdesign User manual 154


Interface channels
5 Channels

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 one or all displays.

Properties

Show message Select whether this message shall be shown on all


display modules in the system, All, or only its own
masters display, Own.
The option Own implies that this channel belongs to a
master module with a display.
Note: This property has no function in systems with
only one display module.

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.

IQANdesign User manual 155


Interface channels
5 Channels

Header Enter a header for your dialog. You can also select a
text channel to use its value as header.

Text Enter a text. You can also select a text channel to use
its value as text.

Channel Select a channel that you want displayed together with


your message. Channel name and value will be shown.

Help 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.

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.

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 dis-
played 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 show-
ing 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).

Unit n/a

Range False (= 0) or True (= 1)

IQANdesign User manual 156


Interface channels
5 Channels

Type Digital

Status

Object errors See section Propagated object status on page 99.

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 dis-
play pages. See section Conditional message - CMSG on page 154 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

Show message Select whether this message shall be shown on all


display modules in the system, All, or only its own
masters display, Own.
The option Own implies that this channel belongs to a
master module with a display.
Note: This property has no function in systems with
only one display module.

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.

Header Enter a header for your dialog. You can also select a
text channel to use its value as header.

Text Enter a text. You can also select a text channel to use
its value as text.

Left/Center/Right button Enter a text that you want displayed above the button
on a display module. Please note that the complete text
may not always fit.

IQANdesign User manual 157


Interface channels
5 Channels

Help 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.
Note: If you specify help for this message, you cannot
use button Right. This button will be the help button.

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.

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).

Unit n/a

Range 0 (Inactive) The dialog box is not visible


1 (Active) The dialog box is visible
2 (Left) User pressed the left button
3 (Center) User pressed the center button
4 (Right) User pressed the right button
5 (ESC) User pressed the ESC button

Type Analog (Integer number)

Status

Object errors See section Propagated object status on page 99.

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).

IQANdesign User manual 158


Interface channels
5 Channels

PIN code channel dialog box.

Properties

Show message Select whether this message shall be shown on all


display modules in the system, All, or only its own
masters display, Own.
The option Own implies that this channel belongs to a
master module with a display.
Note: This property has no function in systems with
only one display module.

Header Enter a header for your dialog. You can also select a
text channel to use its value as header.

Text Enter a text. You can also select a text channel to use
its value as text.

PIN code Enter a PIN code or select a text channel to use as 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.

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.

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. See also
section Adjust groups and logs on page 160.
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. There-
for the dialog box will not allow PIN code entering, and instead shows the
message PIN code has already been entered.

IQANdesign User manual 159


Interface channels
5 Channels

NOTE
The showing and resetting object groups are edge triggered, not level trig-
gered.

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.

Unit n/a

Range False (= 0) or True (= 1)

Type Digital

Status

Object errors See section Propagated object status on page 99.

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 a display module. 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. This is possible even for adjust group and logs that are located on other
master modules than the PIN code channel.

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, acti-
vate some function or just show a text in the application. The message is sent
from a GSM phone or modem.

IQANdesign User manual 160


Interface channels
5 Channels

Properties

Unit The unit for the scaled value of this channel. Select Not
used to avoid Missing unit hint in project check for
channels without unit.

Identification tag 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.

Phone numbers 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 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).

IQANdesign User manual 161


Interface channels
5 Channels

Type Real: Makes this a real value channel. Its value is set
from an incoming message and the syntax to set it is
<Identification tag>=<Value>. Example:
Max=50.5 will set the value to 50.5 if the property
Identification tag equals Max. Please specify unit,
min/max limits and default value as well.
Integer: Makes this an integer 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.

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.

Min Minimum value allowed for this channel value.

Max Maximum value allowed for this channel value.

Default value The default value for this channel.

Reply 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 Real, Integer or Text to be able to
adjust it.

IQANdesign User manual 162


Interface channels
5 Channels

Value

Real Integer Digital pulse Text

Value Value is set from incoming SMS that matches the Identification tag.

Unit See property See property n/a n/a


Unit Unit

Range See properties See properties False (= 0) and 31 characters,


Min and Max Min and Max True (= 1) see property
Max

Type Analog (Real Analog (Integer Digital Text


number) number)

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

Phone numbers Add the phone numbers that you want to send this
message to.

Phone number Enter a phone number to send message to. Use the +
sign and country code to make international calls, for
example +46709474416.

Outgoing message Enter a text that you want to be sent, or select a text
channel.

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.

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 163
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.

Value

Value Sending message, see above.

Unit n/a

Range False (= 0) or True (= 1)

Type Digital

Status

Object errors See section Propagated object status on page 99.

Virtual digital in - VDIN


The virtual digital input channel is connected to a button on a display module
and can be used as a normal digital input. The connection to a display module
button is made in a display page component, see section Physical display but-
tons on page 292.

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).

Resetting channel 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.

Store value The value is stored in non-volatile memory so that it is


preserved during power off.

NOTE
Store value is only applicable when Toggle is set to Yes.

Value

Value Boolean value.

IQANdesign User manual 164


Interface channels
5 Channels

Unit n/a

Range False (= 0) or True (= 1)

Type Digital

Status
No further status values except the standard statuses; Disabled and OK.

IQANdesign User manual 165


J1939 CAN channels
5 Channels

J1939 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 IQAN-
design supports as a unique channel. The Parameter group number is zero.
Data Page bit is also supported, see SAE J1939 specification for details.

J1939 Diagnostic
There are also messages for diagnostics. The J1939 unit can send error mes-
sages 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.

J1939 frame input- JFIN


The J1939 frame 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 J1939 parameter in channels to the J1939 frame input
channel. This channel type contains information that is unique for each
parameter value, such as resolution and offset. See section J1939 parameter
input - JPIN on page 171 for more input.

IQANdesign User manual 166


J1939 CAN channels
5 Channels

A J1939 frame 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.

PGN 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 PF*256+PS.
Note: Click ellipsis button next to property to show a
dialog box where you can enter PGN expressed as PF
and PS, and set the Data Page bit.

Timeout [ms] 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.

Poll trigger 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.
Note: If you want to use timeout together with poll
trigger, make sure the timeout is shorter than the poll
interval, otherwise timeout will not be detected.

Paged protocol > Specifies the bits that are used for defining page
Page mask 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.

Paged protocol > Specifies the page number for this channel.
Page value

IQANdesign User manual 167


J1939 CAN channels
5 Channels

Parameters Add and define the parameters that are part of this
channel (frame). The parameters values represent the
data part of the message.

Parameter > Channel Select the channel that defines this parameter. Click the
button to create a new channel.

Parameter > Offset Enter the offset within this parameter group.
Alternatively, you can click the button to place it
graphically.

Value

Value Digital pulse for one cycle when parameter group is


received.

Unit n/a

Range False (= 0) or True (= 1)

Type Digital

Status

Timeout Not received within the specified timeout period.

Inherited module status See section Inherited module status on page 99.

Paged protocol
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
specify which bits in the frame data are used to identify each page, and the page num-
ber that matches this channel.

IQANdesign User manual 168


J1939 CAN channels
5 Channels

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 JFIN 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 JPINs to the first JFIN, one 2
bytes long and one 4 bytes long with offsets 17 and 33, for values 1 and 2.
Add two JPINs to the second JFIN, 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 JFIN channel, or you can add the JPIN channels in the traditional way
as you add channels to the application and then connect the JPIN channels to
the JFIN channel.

Add a JPIN in a JFIN


To add parameters directly in the JFIN 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.

IQANdesign User manual 169


J1939 CAN channels
5 Channels

Enter a channel name for the parameter.

Parameter offset tool


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.

Parameter offset tool.

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 170


J1939 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.

J1939 parameter input - JPIN


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 JPIN channel for each parameter value that you want to
read in the J1939 or generic CAN data frame. The channel has to be con-
nected to a JFIN or GFIN channel to get its raw data. Define the common
frame properties such as priority, PGN number and transmission rate in the
JFIN channel.
The parameter in channel value will be the calculated according to the above
mentioned resolution and offset.

Properties

Unit The unit for the scaled value of this channel. Select Not
used to avoid Missing unit hint in project check for
channels without unit.

Error value 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.

Length [bits] Specify the length of this parameter.

J1939 Error check Select Yes to enable J1939 error checking. For more
information on J1939 error handling, see SAE J1939
specifications.

Resolution [per bit] Specify the resolution (scaling) of this parameter, for
example 1C/bit or 0.125 RPM/bit.

Offset Specify the offset of this parameter, for example -40C


or 0 RPM.

Value

Value Scaled value.

Unit See property Unit.

Range 7 significant digits

IQANdesign User manual 171


J1939 CAN channels
5 Channels

Type Analog (Real number)

Status

Timeout Corresponding JFIN not received within timeout


period.

Not available This SAE J1939 parameter is not available in the


source system.

Inherited module status See section Inherited module status on page 99.

J1939 frame output - JFOUT


The J1939 frame output channel is used to send a J1939 parameter group (a
PGN) to an external system. The properties for a JFOUT is almost the same
as for a JFIN, see section J1939 frame input- JFIN on page 166.
A data frame consist of both a JFOUT channel for the common frame
properties and JPOUT channels with the unique parameter properties.

Properties

J1939 source address Enter the source address to use for this message. Set to
Default to use the modules default source address.

Priority An identifier that establishes the arbitration priority of


the information communicated.
The highest priority is zero and the lowest priority is
seven.

PGN 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 PF*256+PS.
Note: Click ellipsis button next to property to show a
dialog box where you can enter PGN expressed as PF
and PS.

IQANdesign User manual 172


J1939 CAN channels
5 Channels

Send method Continuously: Use for messages that are to be sent


continuously. You need to specify the transmit rate
(property Transmit rate).
On trigger: Use for messages that are to be sent
occasionally. You need to specify a channel to trigger a
send (property Trigger).
You can also specify a minimum transmit rate
(property Transmit rate). The message will be sent at
this interval even if its not triggered. Select Not used to
disable this function.
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. Select Not
used to disable this function.

Transmit rate [ms] Transmit rate for this CAN data frame. Minimum
resolution is cycle time.
Select Every cycle to send one frame every application
cycle, i.e. transmit rate equals cycle time.
Not used can be selected when send method is On
trigger or On change, see property Send method for
more information.
One PGOUT channel with send method Continuously
is allowed to have a transmit rate faster than the cycle
time. The resolution for that single channel is 10 ms.
Fast PGOUTs are not supported on modules
connected to an XT2 module.

Trigger 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.

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.

Parameters Add and define the parameters that are part of this
channel (frame). The parameters values represent the
data part of the message.

Parameter > Channel Select the channel that defines this parameter. Click the
button to create a new channel.

IQANdesign User manual 173


J1939 CAN channels
5 Channels

Parameter > Offset Enter the offset within this parameter group.
Alternatively, you can click the button to place it
graphically.

Value

Value Digital pulse when parameter group is sent.

Unit n/a

Range False (= 0) or True (= 1)

Type Digital

Status

Inherited module status See section Inherited module status on page 99.

J1939 parameter out - JPOUT


The J1939 parameter out channel is used to write a value in a CAN data
frame. This channel must be connected to a parameter group out, JFOUT or
GFOUT to work.

Properties

Input value Enter a value or select a channel to control the value of


this output.

Length [bits] Specify the length of this parameter.

Resolution [per bit] Specify the resolution (scaling) of this parameter, for
example 1C/bit or 0.125 RPM/bit.

Offset Specify the offset of this parameter, for example -40C


or 0 RPM.

Value

Value Calculated raw value.

Unit n/a

Range 0 to (2Length-1)
If input value does not fit in range, value is set to 0.

Type Analog (Integer number)

IQANdesign User manual 174


J1939 CAN channels
5 Channels

Status

Calculation overflow Value does not fit in defined length.

Inherited module status See section Inherited module status on page 99.

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

J1939 source address Enter the source address to use for this message. Set to
Default to use the modules default source address.

Engine speed limits High and low idle speed.

Input channel Select a channel to control the value of this output. The
selected channel should have a value range of 0 -
100%.

Priority An identifier that establishes the arbitration priority of


the information communicated.
The highest priority is zero and the lowest priority is
seven.

Transmit rate [ms] Transmit rate for this CAN data frame. Resolution is
10 ms.

Override control mode 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.

Speed control conditions This mode tells the engine control system the governor
characteristics that are desired during speed control.

IQANdesign User manual 175


J1939 CAN channels
5 Channels

Override control mode This is used as an input to the engine or retarder to


priority determine the priority of the Override control mode
received in the Torque/Speed Control message.

Value

Value Command value.

Unit RPM

Range See property Engine speed limits.

Type Analog (Real number)

Status

Inherited module status See section Inherited module status on page 99.

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

SPN conversion method For further information about the different conversion
methods we refer to SAE J1939-73 or the specification
from the manufacturer.

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.

Show message Select whether dialog boxes for SPNs connected to


this DM1 shall be shown on all display modules in the
system, All, or only its own masters display, Own.
The option Own implies that this channel belongs to a
master module with a display.
Note: This property has no function in systems with
only one display module.

IQANdesign User manual 176


J1939 CAN channels
5 Channels

Enable DM2 support Select whether the menu system shall include a menu
item to request DM2 from the J1939 module or not.
Note: DM2 support is not implemented on MDL2 and
MD3.

Parameters Add and define the parameters that are part of this
channel (frame). The parameters values represent the
data part of the message.

Channel 1, 2, etc. Select the channel that defines this parameter.

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 a display module.
EXAMPLE
Engine oil pressure sensor voltage is too low. Engine oil pressure corre-
sponds to SPN 100, and voltage too low corresponds to FMI 4.

Value

Value Number of currently active SPNs.

Unit n/a

Range >= 0

Type Analog (Integer number)

Status

Inherited module status See section Inherited module status on page 99.

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.

IQANdesign User manual 177


J1939 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.

Failures 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 > FMI Failure Mode Identifier. Specify the identifier for this
failure.

Failure > Text Enter a text or select a text channel that describes this
failure.

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

Value Failure mode identifier.

Unit n/a

Range -1 to 31

Type Analog (Integer number)

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

Inherited module status See section Inherited module status on page 99.

IQANdesign User manual 178


Other CAN channels
5 Channels

Other CAN channels


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.

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 JFIN channel, but with
another identifier. To read a parameter value from the frame data, you have to
use the GPIN or JPIN channels in the same way as you would for the JFIN
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.

Data length [bytes] Specify data length (number of bytes) for this frame.
Length is checked in run-time and if it doesnt 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 Dont care to receive frames with
variable data length.

Timeout [ms] 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.

Paged protocol > Specifies the bits that are used for defining page
Page mask 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.

Paged protocol > Specifies the page number for this channel.
Page value

IQANdesign User manual 179


Other CAN channels
5 Channels

Parameters Add and define the parameters that are part of this
channel (frame). The parameters values represent the
data part of the message.

Parameter > Channel Select the channel that defines this parameter. Click the
button to create a new channel.

Parameter > Offset Enter the offset within this frame. Alternatively, you
can click the button to place it graphically.

Paged protocol
See section Paged protocol on page 168.

Value

Value Digital pulse for one cycle when frame is received.

Unit n/a

Range False (= 0) or True (= 1)

Type Digital

Status

Timeout Not received within the specified timeout period.

Inherited module status See section Inherited module status on page 99.

Generic parameter in channel - GPIN


The generic parameter in channel is used to read a parameter value from a
CAN data frame, for example fuel level or oil temperature. One GPIN chan-
nel is used for each parameter value that is to be read in a CAN data frame.
The channel has to be connected to a JFIN or GFIN channel to get its raw
data.

Properties

Unit The unit for the scaled value of this channel. Select Not
used to avoid Missing unit hint in project check for
channels without unit.

Error value 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.

Length [bits] Specify the length of this parameter.

IQANdesign User manual 180


Other CAN channels
5 Channels

Type Select how the raw value shall be interpreted. This will
also decide the value type of the channel. Supported
types are digital, signed integer, unsigned integer and
real (floating point number).

Byte order Select witch byte order to be used for the integer
parameter. Little endian (or Intel byte order) means
least significant byte first. Big endian (or Motorola
byte order) means most significant byte first.

Value

Value Scaled value.

Unit See property Unit.

Range 7 significant digits

Type Analog or digital (Real, Integer or Boolean according


to selected type)

Status

Timeout Corresponding JFIN not received within timeout


period.

Not available This SAE J1939 parameter is not available in the


source system.

Inherited module status See section Inherited module status on page 99.

Generic frame out - GFOUT


The generic frame output channel is used to send a CAN data frame. Typi-
cally it is used to send data to devices using other CAN protocols than SAE
J1939.
The generic frame output works as the JFOUT channel but with another iden-
tifier. To add parameter values to the frame data, you have to use the GPOUT
or JPOUT channels in the same way as for the JFOUT 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.

Data length [bytes] Specify data length for this frame.

IQANdesign User manual 181


Other CAN channels
5 Channels

Send method Continuously: Use for messages that are to be sent


continuously. You need to specify the transmit rate
(property Transmit rate).
On trigger: Use for messages that are to be sent
occasionally. You need to specify a channel to trigger a
send (property Trigger).
You can also specify a minimum transmit rate
(property Transmit rate). The message will be sent at
this interval even if its not triggered. Select Not used to
disable this function.
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. Select Not
used to disable this function.

Transmit rate [ms] Transmit rate for this CAN data frame. Minimum
resolution is cycle time.
Select Every cycle to send one frame every application
cycle, i.e. transmit rate equals cycle time.
Not used can be selected when send method is On
trigger or On change, see property Send method for
more information.

Trigger 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.

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.

Parameters Add and define the parameters that are part of this
channel (frame). The parameters values represent the
data part of the message.

Value

Value Digital pulse when frame is sent.

Unit n/a

Range False (= 0) or True (= 1)

Type Digital

IQANdesign User manual 182


Other CAN channels
5 Channels

Status

Inherited module status See section Inherited module status on page 99.

Generic parameter out channel - GPOUT


The generic parameter out channel is used to write a value in a CAN data
frame. This channel must be connected to a parameter group out, GFOUT or
JFOUT to work.

Properties

Input value Enter a value or select a channel to control the value of


this output.

Length [bits] Specify the length of this parameter.

Type Select how the value shall be encoded in the CAN


message. Supported types are digital, signed integer,
unsigned integer and real (floating point number).

Byte order Select witch byte order to be used for the integer
parameter. Little endian (or Intel byte order) means
least significant byte first. Big endian (or Motorola
byte order) means most significant byte first.

Value

Value Calculated raw value.

Unit n/a

Range 0 to (2Length-1)
If input value does not fit in range, value is set to 0.

Type Analog or digital (See type in properties)

Status

Calculation overflow Value does not fit in defined length.

Inherited module status See section Inherited module status on page 99.

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 appli-
cation 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. There must be a master bus connection

IQANdesign User manual 183


Other CAN channels
5 Channels

to the master with the selected APPOUT channel. See section Buses on page
209.
The timeout of the APPIN channel is calculated automatically as 2transmit
rate of the selected APPOUT channel.

Properties

Input channel Select the APPOUT channel that you want to receive
from another application.

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.

Value

Value The latest value received.

Unit Same as APPOUT channel.

Range Same as APPOUT channel.

Type Same as APPOUT channel.

Status

Timeout Not received within timeout period.

Inherited status 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 master
CAN bus. The receiving application 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. This implies it is only capable of sending
one channel per CAN frame. If you have to transfer many non safety related
channels, you may need to use JFOUT (or GFOUT) instead to not overload
the CAN bus. That way you can package multiple values into each CAN
frame.

Properties

Input channel Select the channel that you want to send to other
applications.

IQANdesign User manual 184


Other CAN channels
5 Channels

Send method Continuously: Use for messages that are to be sent


continuously. You need to specify the transmit rate
(property Transmit rate).
On trigger: Use for messages that are to be sent
occasionally. You need to specify a channel to trigger a
send (property Trigger).
You can also specify a minimum transmit rate
(property Transmit rate). The message will be sent at
this interval even if its not triggered. Select Not used to
disable this function.
On change: Use to send the message every time the
input channel 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. Select Not
used to disable this function.

Transmit rate Transmit rate for this CAN data frame. Minimum
resolution is cycle time.
Select Every cycle to send one frame every application
cycle, i.e. transmit rate equals cycle time.
Not used can be selected when send method is On
trigger or On change, see property Send method for
more information.

Trigger 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.

Value

Value The latest sent value of the input channel.

Unit Same as input channel.

Range Same as input channel.

Type Same as input channel.

Status

Inherited status The latest sent status of the input channel.

IQANdesign User manual 185


Safety channels
5 Channels

Safety channels
The safety channels is used to implement safety related application function-
ality using for example redundant input channels and safe CAN communica-
tion between master modules.

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 can also provide a start block to further improve safety,
either as a check at system start-up or a reset condition after fault, or both.
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.
To set a start-up condition for the start block, use 'OK to start', to get a reset
condition, use 'Reset fault'. The diagram below describes the behavior when
both properties are used.
If none of these properties are used, the status will be OK immediately when
there are no errors on the inputs or the comparison.
Channel Enabled

Start Block

System ON OK to start
OK
System Fault detected
Start
OFF
Block

Fault detected Error


Reset fault
(input or
diff
check)

Awaiting
reset

Fault gone
Enable

Disable

Channel Disabled

Compare channels state diagram.

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 (second-
ary) channel that follows its scaled value.

IQANdesign User manual 186


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 chan-
nels could be configured in three different ways:
Mirrored signals.
Signals with a different offset and slope.
Signals that follow each other.

Scaled Scaled
value value

Raw value Raw value

Scaled
value

Raw value

Examples of primary and secondary channels.

Properties

Enable Enables or disables this channel.


When disabled, the value is False. When enabled
again, the channel will not require a reset of errors that
occurred before the channel was disabled, but will
require that the start up condition is met before the
value resumes.

IQANdesign User manual 187


Safety channels
5 Channels

Primary input The primary input is the analog input channel that
should be checked. When the status of the AAC
channel is OK it will take its value from the primary
channel.

Secondary input The scaled value of the secondary input will be


compared to the scaled value of the primary input.

Diff check limit States the difference between the primary and
secondary input that will trigger a fault.

Detection delay 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.

OK to start 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.
Select Not used to skip this check.

Reset fault 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.
Select Not used to skip this check.

Value

Value True when its status is OK, otherwise False.

Unit n/a

Range False (= 0) or True (= 1)

Type Digital

Status

Input error Primary or secondary input channels status is not OK.

Diff check error Abs(Primary - Secondary) > Diff check limit for a
continuous period longer than Detection delay.

Start block Reset error or OK to start condition not met.

IQANdesign User manual 188


Safety channels
5 Channels

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.

Properties

Enable Enables or disables this channel.


When disabled, the value is False. When enabled
again, the channel will not require a reset of errors that
occurred before the channel was disabled, but will
require that the start up condition is met before the
value resumes.

Primary input The primary input is the digital input channel that
should be checked. When the status of the DDC
channel is OK it will take its value from the primary
channel.

Secondary input The inverted value of the secondary input will be


compared to the value of the primary input.

Detection delay 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.

OK to start 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.
Select Not used to skip this check.

Reset fault 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.
Select Not used to skip this check.

Value

Value True when its status is OK, otherwise False.

Unit n/a

IQANdesign User manual 189


Safety channels
5 Channels

Range False (= 0) or True (= 1)

Type Digital

Status

Input error Primary or secondary input channels status is not OK.

Diff check error Primary = Secondary for a continuous period longer


than Detection delay.

Start block 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 (second-
ary) channel that switches to true when the analog input is above a certain
point.
The value of the channel will be True when its status is OK, otherwise the
value will be False

Properties

Enable Enables or disables this channel.


When disabled, the value is False. When enabled
again, the channel will not require a reset of errors that
occurred before the channel was disabled, but will
require that the start up condition is met before the
value resumes.

Primary input The primary input is the analog input channel that
should be checked. When the status of the ADC
channel is OK it will take its value from the primary
channel.

Secondary input The boolean input of the secondary input is expected to


turn True when the value of the primary input is above
a certain point.

Switch over point States the value of the primary input channel at which
the secondary input channel is expected to switch from
False to True.

Diff check limit States the allowed difference between the value of the
primary channel and the switch over point before a
fault is triggered.

IQANdesign User manual 190


Safety channels
5 Channels

Detection delay 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.

OK to start 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.
Select Not used to skip this check.

Reset fault 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.
Select Not used to skip this check.

Value

Value True when its status is OK, otherwise False.

Unit n/a

Range False (= 0) or True (= 1)

Type Digital

Status

Input error Primary or secondary input channels status is not OK.

Diff check error (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.

Start block Reset error or OK to start condition not met.

IQANdesign User manual 191


6 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 asso-
ciated with the appropriate modules, thus designing your own control system.
The project 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 project file is intended to reflect the con-
nections that exist in the real system.
In IQANdesign, it is easy to get a quick overview of how you have designed
your system. Selecting System in the project manager sets the view in the edi-
tor 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 dia-
gram also displays the channel properties in the property inspector.

IQANdesign User manual 192


Modules
6 Modules

Modules
There are two main types of IQAN modules: masters and expansion modules.
An IQAN system must always contain at least 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 expansion
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 expansion bus must be addressed. Each
module of the same type on the same bus must have a unique address. The
module address in the project 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 project file is zero.

IQANdesign User manual 193


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 CAN buses Volatile memory Non-volatile


size (RAM) memory (Flash)

MD4-7 7" 4 n/a n/a

MD4-5 5" 2 or 4 n/a n/a

MDL2 6.5" 4 2304 KB 3584 KB

MD3 3.5" 3 832 KB 1536 KB

MC2 - 2 832 KB 832 KB

MC3 - 4 1408 KB 1536 KB

MC31 - 4 1728 KB 1536 KB

1 MB = 1 024 KB, 1 KB = 1 024 Bytes.

MD4
MD4 is a master module with a large size touch enabled color display. It
comes in two sizes; MD4-5 (5" 640x480 pixels) and MD4-7 (7" 800x480 pix-
els). It can have up to four CAN buses and 2 Ethernet ports.

Properties

Address Address on the CAN bus. Two modules on the same


CAN bus can not have the same address.

Optional If there are more than one master module, select Yes to
make this master module optional. No error or warning
messages will be displayed if an optional master
module does not exist in the system.

IQANdesign User manual 194


Master modules
6 Modules

RTC enabled Select No to disable the real time clock. When the real
time clock is disabled, the module will use startup
count and time from start instead of date and time in
logs.
It will also prevent the module from generating an error
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. Therefore
this property can be useful if your modules risk being
powered off several days in a row and you dont want
to bother your users with the clock error.
Note: In a system with multiple masters, this master
module may get its clock set from another master
module, even if this property is set to False.

J1939 source address Enter the default J1939 source address that this module
should use when sending J1939 messages.
If an IQAN module needs to use several source
addresses, the default address can be overridden for
each individual message.

Terminate CAN-A/B/C/D Select Yes to make CAN port A/B/C/D terminated.

Channel properties

Digital out Soft start/stop Not available. Please move channel to


Peak and hold another module to use these properties.

Ethernet
There are two Ethernet ports available on the MD4, port A and port B.
Port A is intended for connecting a PC or WLAN adapter. It gets it IP address
dynamically, by using one of two methods: DHCP or AutoIP.
DHCP: If the MD4 is connected to a LAN, it is likely you are using a
DHCP server (Dynamic Host Configuration Protocol) to assign network
devices IP addresses. The MD4 uses a DHCP client to request an IP
address.
AutoIP: If a DHCP server is not detected, the MD4 will automatically
assign itself IP addresses using the AutoIP protocol. A standard AutoIP
address looks like 169.254.x.x, with the subnet mask of 255.255.0.0. This
configuration allows you to connect a computer directly to the MD4 and
communicate with it by assigning an AutoIP address to your computer
(most computers will assign themselves an AutoIP address after a few
minutes in the case the computer cannot lease an IP address from a DHCP
server).

IQANdesign User manual 195


Master modules
6 Modules

Port B is intended for in-vehicle communication, e.g. to connect IP cameras.


It uses a static IP address, 192.168.x.y, with subnet mask 255.255.128.0,
where x is dependant of MD4 type and y is the address tag of the MD4 + 1,
see separate table. External devices connected to port B should use static IP
address 192.168.128.z, where z is 1 - 255. It is your responsibility to make
sure all connected external devices have a correct and unique IP address.
EXAMPLE
You want to connect a camera to an MD4-7 with address 0. The MD4-7 has IP
address 192.168.129.1. The camera could have the address 192.168.128.1,
for instance. The subnet mask needs to be 255.255.128.0.

To see the IP addresses for your MD4 Ethernet ports, go to menu system and
select Info > Modules > [Your MD4].

MD4 IP address table

Module type IP address

MD4-7 192.168.129.<address tag + 1>

MD4-5 192.168.130.<address tag + 1>

MDL2
MDL2 is a master module with a large color display. It has four CAN buses,
and both inputs and outputs. The MDL2 does not support different addresses
and will always have address 0.

Properties

Optional If there are more than one master module, select Yes to
make this master module optional. No error or warning
messages will be displayed if an optional master
module does not exist in the system.

IQANdesign User manual 196


Master modules
6 Modules

RTC enabled Select No to disable the real time clock. When the real
time clock is disabled, the module will use startup
count and time from start instead of date and time in
logs.
It will also prevent the module from generating an error
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. Therefore
this property can be useful if your modules risk being
powered off several days in a row and you dont want
to bother your users with the clock error.
Note: In a system with multiple masters, this master
module may get its clock set from another master
module, even if this property is set to False.

PWM frequency [Hz] Frequency for PWM and COUT outputs.


(COUT/PWM)

J1939 source address Enter the default J1939 source address that this module
should use when sending J1939 messages.
If an IQAN module needs to use several source
addresses, the default address can be overridden for
each individual message.

Terminate CAN-A/B/C/D Select Yes to make CAN port A/B/C/D terminated.

Channel properties

Digital out Soft start/stop Not available. Please move channel to


Peak and hold another module to use these properties.

MD3
MD3 is a master module with a small color display. It has three CAN buses.
The module has inputs and one digital output.

Properties

Address Address on the CAN bus. Two modules on the same


CAN bus can not have the same address. The following
addresses are not valid for this module: 1, 2.

Optional If there are more than one master module, select Yes to
make this master module optional. No error or warning
messages will be displayed if an optional master
module does not exist in the system.

IQANdesign User manual 197


Master modules
6 Modules

RTC enabled Select No to disable the real time clock. When the real
time clock is disabled, the module will use startup
count and time from start instead of date and time in
logs.
It will also prevent the module from generating an error
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. Therefore
this property can be useful if your modules risk being
powered off several days in a row and you dont want
to bother your users with the clock error.

J1939 source address Enter the default J1939 source address that this module
should use when sending J1939 messages.
If an IQAN module needs to use several source
addresses, the default address can be overridden for
each individual message.

Terminate CAN-A/B/C Select Yes to make CAN port A/B/C terminated.

Channel properties

Digital out Soft start/stop Not available. Please move channel to


Peak and hold 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.

Properties

Address Address on the CAN bus. Two modules on the same


CAN bus can not have the same address.

Optional If there are more than one master module, select Yes to
make this master module optional. No error or warning
messages will be displayed if an optional master
module does not exist in the system.

IQANdesign User manual 198


Master modules
6 Modules

RTC enabled Select No to disable the real time clock. When the real
time clock is disabled, the module will use startup
count and time from start instead of date and time in
logs.
It will also prevent the module from generating an error
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. Therefore
this property can be useful if your modules risk being
powered off several days in a row and you dont want
to bother your users with the clock error.
Note: In a system with multiple masters, this master
module may get its clock set from another master
module, even if this property is set to False.

PWM frequencies [Hz] Frequencies for PWM and COUT outputs.


(COUT/PWM)

PWM frequency [Hz] PWM frequency for digital outputs.


(DOUT)

J1939 source address Enter the default J1939 source address that this module
should use when sending J1939 messages.
If an IQAN module needs to use several source
addresses, the default address can be overridden for
each individual message.

Terminate CAN-A/B Select Yes to make CAN port A/B terminated.

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.

Digital out Soft start/stop Not available. Please move channel to


Peak and hold another module to use these properties.

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 199


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.

Optional If there are more than one master module, select Yes to
make this master module optional. No error or warning
messages will be displayed if an optional master
module does not exist in the system.

PWM frequencies [Hz] Frequencies for PWM and COUT outputs.


(COUT/PWM)

COUT restart behavior Defines the restart behavior after an error has been
detected on the output.
The default behavior 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.

DOUT restart behavior See property COUT restart behavior above.

DOUT under current Enables or disables under current detection for each
detection DOUT.

J1939 source address Enter the default J1939 source address that this module
should use when sending J1939 messages.
If an IQAN module needs to use several source
addresses, the default address can be overridden for
each individual message.

Terminate CAN-A/B/C/D Select Yes to make CAN port A/B/C/D terminated.

Channel properties

Digital out Soft start/stop Not available. Please move channel to


Peak and hold another module to use these properties.

MC31
MC31 is a master module without display. It has four CAN buses. The mod-
ule has both on/off and proportional inputs and outputs.

IQANdesign User manual 200


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.

Optional If there are more than one master module, select Yes to
make this master module optional. No error or warning
messages will be displayed if an optional master
module does not exist in the system.

PWM frequencies [Hz] Frequencies for PWM and COUT outputs.


(COUT/PWM)

COUT restart behavior Defines the restart behavior after an error has been
detected on the output.
The default behavior 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.

J1939 source address Enter the default J1939 source address that this module
should use when sending J1939 messages.
If an IQAN module needs to use several source
addresses, the default address can be overridden for
each individual message.

Terminate CAN-A/B/C/D Select Yes to make CAN port A/B/C/D terminated.

Channel properties

Digital out Soft start/stop Not available. Please move channel to


Peak and hold another module to use these properties.

IQANdesign User manual 201


Expansion modules
6 Modules

Expansion modules
There are several different types of expansion modules, such as levers, I/O
modules, radio controls, CAN modems 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.

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.

Channel properties

Digital out Soft start/stop Not available. Please move channel to


Peak and hold another module to use these properties.

LC5
Lever expansion module.

Properties

Address Address on the CAN bus. Two modules of the same


type on the same CAN bus can not have the same
address.

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.

Channel properties

Digital out Soft start/stop Not available. Please move channel to


Peak and hold another module to use these properties.

XA2
All-round expansion module with both inputs and outputs.

IQANdesign User manual 202


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.

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.

PWM frequency [Hz] Frequency for PWM and COUT outputs.


(COUT/PWM)

PWM frequency [Hz] PWM frequency for digital outputs.


(DOUT)

XS2
Expansion module with focus on inputs.

Properties

Address Address on the CAN bus. Two modules of the same


type on the same CAN bus can not have the same
address.

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.

PWM frequency [Hz] PWM frequency for digital outputs.


(DOUT)

XC10
Expansion module with focus on inputs.

Properties

Address Address on the CAN bus. Two modules of the same


type on the same CAN bus can not have the same
address.

IQANdesign User manual 203


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.

PWM frequencies [Hz] Frequencies for PWM outputs.

DOUT open load Enables or disables open load detection for all DOUT:s
detection on this module.
Note: This detection requires XC10 to have software
version 1.06 or newer.

DOUT/PWM under Enables or disables under current detection for each


current detection separate DOUT/PWM.
Note: This detection requires XC10 to have software
version 1.06 or newer.

XC21/XC22/XC23
Expansion modules with focus on inputs.

Properties

Address Address on the CAN bus. Two modules of the same


type on the same CAN bus can not have the same
address.

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.

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.

IQANdesign User manual 204


Expansion modules
6 Modules

The total number of parameter group inputs and number of DM1 multi-
plied 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.

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.

Dither amplitude, COUT- Enter dither amplitude in mA for the current output.
A/B [mA]

Dither frequency, COUT- Dither frequency for current outputs.


A/B [Hz]

PWM frequency [Hz] Frequency for PWM outputs.

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.

IQANdesign User manual 205


Expansion modules
6 Modules

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.

J1939 source address Enter the default J1939 source address that this module
should use when sending J1939 messages.
If an IQAN module needs to use several source
addresses, the default address can be overridden for
each individual message.

Terminate CAN-B Select Yes to make CAN port B terminated.

Channel properties

Digital out Soft stop Not available. Please move channel to


another module to use this property.

XR
Radio controlled expansion module. Only one allowed on each bus.

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.

G1
G1 is a RS232 modem used for remote diagnostics. It allows IQAN tools to
dial in to the modem and remotely access the system.

Properties

Enabled Select Yes to enable the modem at all times, or a


channel to enable it based on e.g. a parameter. When
the channel value is True at system startup the modem
is enabled.

Allow remote connection Use this property to ensure that the machine is in a safe
state before allowing a remote connection from e.g.
IQANrun to the master module. If a display module is
used as headmaster the user can be asked to confirm
the connection. Otherwise a digital channel may be
used to determine when it is safe to allow a remote
connection.

IQANdesign User manual 206


Expansion modules
6 Modules

Allow remote stop Use this property to ensure that the machine is in a safe
state before allowing a remote stop. Remote stop is
done when software is downloaded or the master
module is restarted. If a display module is used as
headmaster the user can be asked to confirm the
operation. Otherwise a digital channel may be used to
determine when it is safe to stop the application.

G2
G2 is a CAN modem used for remote diagnostics. It connects to a server on
Internet that allows IQAN tools to remotely access the system.

Properties

Enabled Select Yes to enable the modem at all times, or a


channel to enable it based on e.g. a parameter. When
the channel value is True at system startup the modem
is enabled and can connect to the server.

Connect to server Select Always to make the modem connect to the server
at startup and be available for remote diagnostics, or
select a channel to connect/disconnect at run-time.

Allow remote connection Use this property to ensure that the machine is in a safe
state before allowing a remote connection from e.g.
IQANrun to the master module. If a display module is
used as headmaster the user can be asked to confirm
the connection. Otherwise a digital channel may be
used to determine when it is safe to allow a remote
connection.

Allow remote stop Use this property to ensure that the machine is in a safe
state before allowing a remote stop. Remote stop is
done when software is downloaded or the master
module is restarted. If a display module is used as
headmaster the user can be asked to confirm the
operation. Otherwise a digital channel may be used to
determine when it is safe to stop the application.

J1939
External (non-IQAN) expansion module that uses the SAE J1939 protocol,
for example a diesel engine ECU.

IQANdesign User manual 207


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.

Source address Enter the J1939 source address for this module.
Example: A diesel engine is usually address 0.

Timeout [ms] 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.

Timeout [ms] 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.

IQANdesign User manual 208


Buses
6 Modules

Buses
There are five types of buses.
Expansion, a bus for communication between master modules and IQAN
expansion modules.
J1939, a CAN bus for the SAE J1939 protocol.
Generic, a bus that is used to handle other types of CAN protocols.
Diagnostics, a bus used for diagnostics communication between masters,
PC and modem.
Master, a bus used for exchanging real-time data between IQAN masters.
All IQAN expansion modules use the expansion bus to communicate with the
master module, except for the IQAN-G2 modem which uses the diagnostics
bus. Master modules support any of the above bus protocols.

Expansion
The expansion bus is using the IQAN CAN Protocol (ICP), our own proprie-
tary protocol for communication between masters and expansion modules.

Properties

Sample rate divider Divides the 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
10 ms it is polled every 30 ms. Can be useful on buses
that carry slow modules or when you are using a very
high sample rate (see application property Cycle time).
Note: The bus sample time is calculated by multiplying
the corresponding application's 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.

J1939
A bus that uses the SAE J1939 protocol. This bus has no specific properties.

Generic
A bus that uses other CAN protocols than SAE J1939.

Properties

Speed [kbps] Bus speed in kilobit per second. Only speeds 100, 125,
250 and 500 kbps are allowed.

IQANdesign User manual 209


Buses
6 Modules

Identifier size Specify the identifier size, Standard (11 bits) or


Extended (29 bits).

Diagnostics bus
The diagnostics bus is used to connect a PC or modem to perform diagnostics
on the IQAN system. In a multi-master system this bus is also used for
exchanging run-time diagnostic data between master modules.

Properties

J1939 start address Enter the J1939 starting address that the system should
use for its diagnostic bus. The headmaster will use this
address as its source address for diagnostic messages
and the other masters will use sub-sequent addresses.
Note: This only needs to be changed when there are
conflicts with non-IQAN modules on the same bus.

Master bus
Used to exchange channel values between masters in a multi-master system.

IQANdesign User manual 210


How to connect a system in IQANdesign
6 Modules

How to connect a system in IQANdesign


Select System in the project manager. You design and connect your system of
modules and CAN buses in the editor.
You will find the different modules and buses at five tabs in the tool bar
above the editor. To add modules and buses you may use drag and drop or
just click on the module or bus you want to add.

Add modules
If you add a module by clicking on it in the tool bar, IQANdesign will place
the module on the next available position in the bottom row. You can also
drag the module to the position where you want to place it. If you choose to
place the module on the same spot as another bus or module, IQANdesign
will rearrange the other buses and modules to make room.

The system editor.

Enter the proper module address for each module in the property inspector. If
you are using multiple master modules there may only be one master module
using address 0. For more details regarding multiple master modules see sec-
tion Multiple master modules on page 337.

Add buses
Buses can be added in the same was as modules. If you click on the desired
bus type it will be added in the next available bottom row. You can also drag
the bus to the position where you want to place it.

Connecting modules and buses


When you have added the modules and buses you need you will be able to
connect each CAN port on the modules to desired bus. This is done by drag-
ging from the CAN port to the bus or vice versa.

IQANdesign User manual 211


How to connect a system in IQANdesign
6 Modules

You can move a connection by selecting it and moving its ends to a different
CAN port or bus. When a connection is selected it can also be deleted in the
same way as other components.

Sharing a bus
Some buses can be combined on the same physical CAN bus, provided that
the CAN bus utilization is not too high. In IQANdesign each bus type is still
represented as a separate logical bus.
To share a physical CAN bus, simply connect the same CAN port on a master
module to multiple buses in IQANdesign. It is possible to combine the fol-
lowing CAN buses:
Expansion
J1939
Diagnostics
Master
The generic CAN bus cannot be combined with any other bus.
Be careful when sharing the diagnostics bus with other buses since the traffic
on this bus is fluctuating from low to very high, especially in a multi-master
system or when connected to a diagnostic tool such as IQANrun.

J1939 Address claim


To be able to combine the diagnostics and master bus with J1939, the IQAN
master modules will claim J1939 addresses that will be used for communica-
tion between master modules (only applicable in systems with more than one
master module).
In a system with N master modules the J1939 addresses 128 up to 128 + N
will be claimed by default, and must not be used for other J1939 modules on
the same bus.
The address claim is done at system startup by broadcasting a J1939 Address
Claimed (PGN 60928) message on diagnostics and master buses. If a J1939
module claims any of these addresses all communication between the master
modules will be stopped.
If another module on the same bus uses a conflicting address it is possible to
change the default start address for J1939 diagnostics. This is done on the
Diagnostics bus component, property J1939 start address, see also section
Diagnostics bus on page 210.

IQANdesign User manual 212


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 in the system editor to open the block diagram or click on the module
in the project manager.

Block diagram IQAN-MD3.

The block diagram contains physical inputs and outputs as well as some vir-
tual 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.

IQANdesign User manual 213


Block diagram
6 Modules

Pin list of the module editor.

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 project manager.
The second way is to add the channels in the block diagram directly. Right-
click on the channel connector and select Add Channel. For expansion mod-
ules they must be connected to a master module for this to work.
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 connec-
tor. 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 222.
IQANdesign User manual 214
Module system messages
6 Modules

Module system messages


Master modules with a display can display some system messages in addition
to the status messages described in section Status on page 96. These messages
are listed in the table below. All of these messages will have the header Sys-
tem message in the dialog.

Severity Message header Text

Error IQAN-Mx Erroneous application

Critical IQAN-Mx No application available

Critical IQAN-Mx Safe mode! Application not loaded

Critical Memory overflow Settings memory overflow. Redo application.

Info Menu system locked The menu system is locked by an external


system.

IQANdesign User manual 215


7 Measure groups

We take it for granted that you will need to take measurements on signals and
channels when you develop or troubleshoot a project file in the machine. In
IQANdesign you can measure both graphical and numerical values.
Measure groups are used when you measure in a display module, IQANde-
sign or IQANrun. The measure groups will help you to organize the channels
or measure items as they are also referred to.

IQANdesign User manual 216


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 impor-
tant channels together, it can give the service personnel a quicker overall view
of the situation and hopefully save them some time.

Measure features in the displays menu system.

Add a new measure group


Open the project 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 a


display module or in IQANrun. Select No to make this
group visible only in IQANdesign.
Select a digital value channel to control visibility at run
time.

IQANdesign User manual 217


Measure groups
7 Measure groups

View access level 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 a display
module or IQANrun.
Select Allow all to allow all users to see this measure
group.

X-axis item 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.

Add channels or measure items to a measure group


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 project 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 project file, the visible measure groups will
appear in the measure menu on a display module.

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.

IQANdesign User manual 218


Measure in IQANdesign
7 Measure groups

Measure in IQANdesign
When you select a measure group in the project 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.

Measure view in IQANdesign.

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 project ID in the current project and the measured project has to match to
allow measuring. This is to make sure you are measuring the correct values.
For more information, see section Project ID on page 27.
To stop a measurement manually, select Measure > Stop Measure, click the
stop button in the tool bar above the graph or press <Shift + F7>.

Print
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.
IQANdesign User manual 219
Measure in IQANdesign
7 Measure groups

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.

Measure group options.

IQANdesign User manual 220


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 present-
ing 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.

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.

Missing samples
When measuring, samples can be lost due to communication problems or by
measuring too many channels. Missing samples are then calculated by inter-
polation 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.

IQANdesign User manual 221


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

Name Enter a name to identify this application component.

Channel The channel that this measure item measures.


It is possible to change the channel for this item.

Visible 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.

Color Select the color you want to use when measuring


graphically.

Min value The min and max values on the Y axis in the graph.
Max value

Visible property
The visible property is only checked when entering a measure group on a dis-
play 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 or in 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 219.
Each channel will be presented with value and status. Status type is also indi-
cated by a lamp with one of four colors.

Gray Info

Green OK

Yellow Warning

Red Error

IQANdesign User manual 222


Measure in IQANdesign
7 Measure groups

For more information, see section Value and status on page 95.

Measure in function group view.

IQANdesign User manual 223


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

Value 1 The items value at the left cursors position.

Value 2 The items value at the right cursors position.

Min The items lowest value between the two cursors.

Max The items highest value between the two cursors.

Peak to Peak The difference between Max and Min described above.

Mean Mean value between the cursors.

True RMS Mean value between the two cursors. Calculation


carried out as per true RMS.

T1 Left cursor position at the X-axis.


(time measurement)

IQANdesign User manual 224


Statistics
7 Measure groups

T2 Right cursor position at the X-axis.


(time measurement)

T2-T1 Time between the two cursors.

Rise time/Fall time 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 mea-
sured 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 irm3.

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 for-
mat. Select file format in the Save dialog box. Microsoft Excel will be started
after the file has been saved to show the result.

IQANdesign User manual 225


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 project
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.

IQANdesign User manual 226


8 Adjust groups

Some of the channels in your project can be made adjustable. It means that
those channels have parameters that can easily be adjusted from a display
module in the system, or from the PC service tool, 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.

IQANdesign User manual 227


Adjustable channel types
8 Adjust groups

Adjustable channel types


Some channel types have parameters that can be adjusted without having to
load a new application. The following channels and parameters are adjust-
able:

Voltage in Min [mV]


Max [mV]

PWM in Min []
Max []

Current out Min current [mA]


Max current [mA]
Start slope [ms]
Stop slope [ms]

PWM out Min MR [%]


Max MR [%]
Start slope [ms]
Stop slope [ms]

Servo out Min [mV]


Max [mV]

Function parameter Value

Integer parameter Value

Digital parameter Value

To be able to adjust a channel parameter from a display module or IQANrun,


the channel has to be added to 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 237.
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 set-
tings to.
IQANdesign User manual 228
Adjustable channel types
8 Adjust groups

Application default
The first time an application is loaded in a master module, there are no adjust-
able or factory default values. To make the machine manoeuvrable, the appli-
cation default values are then used. The application default values are
specified for each channel in the application.

ATTENTION
The application default value is 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. See also section Application defaults on parameters on
page 359 for more information when working with safety related applica-
tions.

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, sep-
arate 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 a display
module or IQANrun.

IQANdesign User manual 229


Stored channel types
8 Adjust groups

Stored channel types


Stored channel types store their value to preserve it during power-off. The
stored value can also be adjusted through adjust groups. The difference from
adjustable channel types is that stored channels dont have any factory default
value to reset to. Instead, it will use the application default value from the
application file when reset. The table below shows which stored channel
types can be adjusted and which value they use for reset. For more informa-
tion, see each channel type.

State parameter Default state (0)

Text parameter Value of property Text

Event counter Value of property Reset value

Memorizing Value of property Reset value

Timer Value of property Reset value

PIN code Not possible to reset

SMS in Value of property Default value

Virtual digital in False

Pulse count Value of property Reset value

Directional pulse count Value of property Reset value

To be able to adjust a stored channel from a display module or IQANrun, the


channel has to be a member of an adjust group.

IQANdesign User manual 230


Adjust items
8 Adjust groups

Adjust items
To be able to adjust a channel an adjust item has to be created for the channel.
An adjust item is created by dragging a channel to the adjust items node in the
project manager. The adjust items can then be grouped in adjust groups to
make them available in display module(s) and IQANrun. It is also possible to
drag a channel directly to an adjust group in order to create an adjust item and
add it to the selected adjust group.
Adjust items that does not belong to any adjust group will only be adjustable
by using a script. For more information on this, see the IQANscript user man-
ual.
When an adjust item is created it gets the same name as the channel by
default, but it can be changed into something more appropriate for the adjust
menu.
The adjust items can be edited by selecting the adjust items node or an adjust
group in the project manager. By selecting the adjust items node, all adjust
items in the project will be shown in the editor. Selecting a group will show
the items belonging to that group.

NOTE
The same adjust item can belong to several adjust groups, but there are only
one adjust item for one channel. This means that when changing properties on
an adjust item it will be changed in all groups where it is used.

Select the adjust group in the project manager to view the adjust items.

There are three different type of adjust items that are created depending on
the channel type and number of adjustable parameters: single, dual and quad.
The correct type is created automatically when you drop a channel on the
adjust items node or on an adjust group.

Single adjust item


The single adjust item is used for all channels that has one single adjustable
parameter.

IQANdesign User manual 231


Adjust items
8 Adjust groups

Properties

Channel The channel that this adjust item adjusts. This property
cannot be edited.

Visible Select Yes to make this item visible from a display


module or IQANrun, or select a digital value channel
to control visibility at run time.

Enable Enables or disables this adjust item. When an adjust


item is disabled it is visible but not adjustable.

Dual adjust item


The dual adjust item is used for voltage input, PWM input and servo out chan-
nels. It has two parameters and a property to enable automatic adjustment of
voltage inputs.

Properties

Channel The channel that this adjust item adjusts. This property
cannot be edited.

Visible Select Yes to make this item visible from a display


module or IQANrun, or select a digital value channel
to control visibility at run time.

Enable Enables or disables this adjust item. When an adjust


item is disabled it is visible but not adjustable.

Adjust type Select how the parameter 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.

Quad adjust item


The quad adjust item is used for current output and PWM output channels and
has four parameters. For bidirectional channels it has four parameters for
each direction.

Properties

Channel The channel that this adjust item adjusts. This property
cannot be edited.

Visible Select Yes to make this item visible from a display


module or IQANrun, or select a digital value channel
to control visibility at run time.

IQANdesign User manual 232


Adjust items
8 Adjust groups

Enable Enables or disables this adjust item. When an adjust


item is disabled it is visible but not adjustable.

Positive direction Enter a text to describe the positive direction, for


example Up, Right or Clockwise.

Negative direction Enter a text to describe the negative direction, for


example Down, Left or Counter-clockwise.

Auto select If enabled, this adjust item will be automatically


selected when its channel value isnt zero and the user
is in adjustment mode, viewing an adjust group
containing this adjust item.

IQANdesign User manual 233


Adjust parameters
8 Adjust groups

Adjust parameters
Each adjust item has one or more parameters that can be adjusted using a dis-
play module or IQANrun. There are different type of parameters depending
on the value type that the parameter represents. When an adjust item is cre-
ated the correct parameters are automatically created.
The parameters can be edited in the adjust item list by expanding an adjust
item in the editor.

Expand an adjust item to view the parameters.

Most parameters has limits that should be defined to make sure that a param-
eter cannot be adjusted outside a safe range. Select a parameter in the list to
edit its properties.

Integer parameter
The integer parameter has properties for limits and step size that defines how
the parameter can be adjusted.

Properties

Unit The unit for the parameter value. This property is


automatically set depending on the channels unit and
cannot be edited.

Min Minimum value allowed for this parameter. This is the


lowest value an operator can adjust this parameter to.
If you set min and max limit for a parameter to the
same value, the parameter will not be adjustable.
Make sure that the limits defines a safe range for the
parameter.

IQANdesign User manual 234


Adjust parameters
8 Adjust groups

Max Maximum value allowed for this parameter. This is the


highest value an operator can adjust this parameter to.
If you set min and max limit for a parameter to the
same value, the parameter will not be adjustable.
Make sure that the limits defines a safe range for the
parameter.

Step size Specify the minimum increase/decrease of the


parameter value when it is adjusted, e.g. when pressing
an up/down button or turning an encoder one step
clockwise/counter-clockwise.

Real parameter
The real parameter is used for parameters with a floating point value. It has
properties that defines limits and step size used when adjusting the parameter.

Properties

Unit The unit for the parameter value. This property is


automatically set depending on the channels unit and
cannot be edited.

Min Minimum value allowed for this parameter. This is the


lowest value an operator can adjust this parameter to.
If you set min and max limit for a parameter to the
same value, the parameter will not be adjustable.
Make sure that the limits defines a safe range for the
parameter.

Max Maximum value allowed for this parameter. This is the


highest value an operator can adjust this parameter to.
If you set min and max limit for a parameter to the
same value, the parameter will not be adjustable.
Make sure that the limits defines a safe range for the
parameter.

Step size Specify the minimum increase/decrease of the


parameter value when it is adjusted, e.g. when pressing
an up/down button or turning an encoder one step
clockwise/counter-clockwise.

Text parameter
The text parameter is used for the text parameter channel and contains limits
for the length of the text.

IQANdesign User manual 235


Adjust parameters
8 Adjust groups

Properties

Min length Minimum length allowed for the text parameter. See
also property Max length.

Max length Maximum length allowed for the text parameter.


The length is specified in bytes, not characters. For
languages using only the ASCII character set one
character equals one byte, but for other languages one
character may equal two, three or four bytes. If you
intend to allow non-ASCII characters, please increase
max length accordingly. For more details, search for
information on UTF-8.

State parameter
The state parameter is used to store the value of a state parameter channel. It
has no properties, since the limits are given by the number of states defined
by the channel.

Boolean parameter
The boolean parameter is used to store the value of a digital parameter chan-
nel. It has no properties and the value is limited to either True or False. The
texts used for True and False are defined by the channel.

PIN code parameter


The PIN code parameter is used to store the value of a pin code parameter
channel. The PIN code consists of 4 digits. In order to adjust the PIN code
parameter the current PIN code must be entered. The PIN code parameter has
no properties.

IQANdesign User manual 236


Adjust groups
8 Adjust groups

Adjust groups
The adjust groups are used to group or organize adjust items. It is up to the
designer to decide how the adjust items will be grouped. One idea to keep in
mind is that it should make it easier for authorized personnel to find the actual
adjust item, when it needs to be adjusted in the machine.
In IQAN systems where there is a display available you will find the adjust
groups for the whole system in a list in the adjust menu. For systems without
a display, use a PC with IQANrun to access the adjust groups. To adjust an
adjust items parameters, just select the group where the item is placed and
then select the particular item that you want to adjust.
It is a good idea to name the group so it is easy to identify the items 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 item.
It is possible to reorder the adjust items in the adjust group. The order of
adjust items within an adjust group represents the positions in the adjust
menu in a display module 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
items. 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.

Properties

Visible Select Yes to make this group visible from a display


module or IQANrun, or select a digital value channel
to control visibility at run time.

PIN code 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.

Access levels > Specify required access level to adjust the items in this
View/Adjust 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.

IQANdesign User manual 237


Adjust groups
8 Adjust groups

Access levels > Specify required access level to set factory default
Set factory default value 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.

Allow mode copy 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.

Reference channel Select a channel to use as reference when adjusting


channels in this group. The reference channel is
measured during adjustment.

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 158.
When you have downloaded the project file to the master you have to enter
the PIN code to have access to the adjust group. That is done with the naviga-
tion buttons 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.

IQANdesign User manual 238


Adjust groups
8 Adjust groups

The adjust menu in the display module.

NOTE
An PIN code protected adjust group that you have entered the code in will
stay unlocked until the master module that the adjust group is associated with
is restarted.

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 adjust item 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
items that the driver is not supposed to adjust. The access level for such adjust
item will be the lowest of all the adjust groups that it belongs to.

ATTENTION
Adjustable or stored channels that are not part of any adjust group will be
protected from being adjusted from the adjust menu on a display module or in
IQANrun, but it will not be protected from being changed by sending a set-
tings file or a clone file to a master. It is also possible to use a script in IQAN-
run to adjust an adjust item that is not part of an adjust group. To protect
adjustable or stored channels from being changed in any way you must add
them to an adjust group, set Access level > View/Adjust to Root and set Visi-
ble 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.

IQANdesign User manual 239


Adjust groups
8 Adjust groups

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 pro-
cess. 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 project manager, select Add
Adjust Group. Or, select Application > Add > Add Adjust Group.
Enter the necessary properties for that group in the property inspector.

IQANdesign User manual 240


Send project
8 Adjust groups

Send project
When sending a project there are some options regarding settings. For more
information on send project, see section Send project on page 329.
When you send a project to an IQAN system using IQANdesign you will
have the option to override some settings in the master module with the
default values in the project. A dialog box is shown where you can select
these options.

Send project options.

NOTE
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 project. For example, the adjustable values for a
voltage input will be overwritten with its properties Min [mV] and Max [mV]
defined in the project.

Factory default values


Select this check box to overwrite all factory default values in the master
module with the default values in the project.

Stored values
Select this check box to overwrite all stored values in the master module with
the default values in the project. For example, the stored value of an event
counter will be overwritten with its property Reset value defined in the proj-
ect.

IQANdesign User manual 241


Get project
8 Adjust groups

Get project
When getting a project there are some options regarding settings. For more
information on get project, see section Get project on page 330.
When you get a project from an IQAN system using IQANdesign you will
have the option to import the adjustable values in the master module to the
project. A dialog box is shown where you can select this options.

Get project options.

NOTE
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 project. 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.

IQANdesign User manual 242


9 Logs

Logs are used to store historical and/or statistical data for an IQAN system.
Some events are stored automatically for you, for example errors on inputs
and outputs, but you can also specify your own events and statistics that you
want stored.
System logs are automatically created and store system related events. A
project always contains a system log for each master module. There can only
be one system log for each master module.
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 log
items. A statistics log store the latest value of a given statistic log item.
Logs can be viewed in a display modules menu system or in IQANrun.

IQANdesign User manual 243


Logs
9 Logs

Logs
You will find all your logs in the project manager, under the node Diagnos-
tics > Logs. Select it to view a list of all your logs in the editor. To add logs or
view the logs that belongs to a particular master module, select the corre-
sponding node under the Logs node.
Above the list of logs a tool bar 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 a display modules/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, the log
can either start overwriting old log records or stop logging. The memory sta-
tus of each log can be retrieved using the status operators in functions.

IQANdesign User manual 244


Status and system messages
9 Logs

Status and system messages


Each log has a status that indicates if it is full and in that case if the logging
has stopped or if old records are recycled.
There are also some system messages that are related to logs.

Status
The status of a log can be used in status comparisons in channels.

Status Description

OK Status OK.

Log full (recycling) Log full, recycling old log records.

Log full (stopped) Log full and logging has stopped.

System messages
Related to the logs a number of system messages can be shown to indicate
problems with the log system. These system messages are shown on master
modules with display.

Severity Message header Text

Critical Log error Failed writing. The log has been stopped!

Warning Log error One log could not be created!

IQANdesign User manual 245


System log
9 Logs

System log
The system log is automatically added to your project when a master module
is added. You will find it in the project manager, under the node Diagnostics
> Logs. It is automatically named after the master module, but you can
change it to whatever you want.

System events
These are the events stored in the system log.

Event Information stored

Project changed Project name and version. Firmware version.


IQANdesign or IQANrun license number.

Machine ID changed New machine ID. IQANrun license number.

System started -

Channel alarms/errors Channel name, module/pin connection and status.

Module alarms/errors Module name and status.

CAN bus alarms/errors CAN bus name and status.

Clock changed Date and time before change.

Login/Logout User name and access level. IQANrun license number.

External log item Information added by an IQANrun user or a script.


IQANrun license number.

Log cleared IQANrun license number.

Settings changed IQANrun license number.

NOTE
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 a display


module or IQANrun, or select a digital value channel
to control visibility at run time.

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.

IQANdesign User manual 246


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.

Access levels > Specify required access level to view this log. Users
View 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.

Access levels > Specify required access level to clear this log. Users
Clear 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.

Clearing channel 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.

Log size Specify how large this log shall be in percent of the
total log memory.
Note: Make sure that the sum of all log sizes (except
statistical logs) in an application is less than or equal to
100%.
You may also want to leave some space for adding new
logs in the future.

Log full behavior Specify this logs behavior when it has used all
available memory.
Stop logging makes the log stop until it is manually
cleared. Use this option if it is more important to keep
the oldest log records.
Continue logging makes the log delete its oldest
records to make room for newer. Use this option if it is
more important to see the latest events.

PIN code
For more information, see section PIN code channel - PCC on page 158.

Access levels
For more information, see section Access levels on page 317.

Clearing channel
Allows you to clear a log using the value of a digital channel. This can be use-
ful for example to do automatic clearing of a log when it is almost full or to
IQANdesign User manual 247
System log
9 Logs

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.

NOTE
If you are reducing the log size the existing log records may be cleared if they
does not fit in the new log size.

IQANdesign User manual 248


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 project manager. A list with all log items in the
event log is shown. Above the log item list a tool bar is available with the log
item types that can be added.

Event log editor.

Add an event log


To add an event log, right-click on the application node under Logs in the
project manager and select Add Event Log in the popup menu, or use the tool
bar in the log list.

Properties
These are the properties for an event log.

Visible Select Yes to make this log visible from a display


module or IQANrun, or select a digital value channel
to control visibility at run time.

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.

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.

Access levels > Specify required access level to view this log. Users
View 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.
IQANdesign User manual 249
Event log
9 Logs

Access levels > Specify required access level to clear this log. Users
Clear 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.

Clearing channel 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.

Log size Specify how large this log shall be in percent of the
total log memory.
Note: Make sure that the sum of all log sizes (except
statistical logs) in an application is less than or equal to
100%.
You may also want to leave some space for adding new
logs in the future.

Log full behavior Specify this logs behavior when it has used all
available memory.
Stop logging makes the log stop until it is manually
cleared. Use this option if it is more important to keep
the oldest log records.
Continue logging makes the log delete its oldest
records to make room for newer. Use this option if it is
more important to see the latest events.

PIN code
For more information, see section PIN code channel - PCC on page 158.

Access levels
For more information, see section Access levels on page 317.

Clearing channel
See section Clearing channel on page 247.

Value log item


The value log item is used to log a value of a channel when a certain condi-
tion 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, and
the status specified in the Log status property.

IQANdesign User manual 250


Event log
9 Logs

Properties

Log value Select the channel which value will be logged when the
log condition is fulfilled.

Log status Select the status that you want to log.


Select Default to log the status of the channel specified
by property Log value.
Select No status when you don't want any status
logged.
Select OK (green), Warning (yellow) or Error (red) to
set the status explicitly when this item is logged.

NOTE
When opening an old project 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.

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. Optionally a status can be logged together with
the name.

Properties

Log status Select the status that you want to log.


Select No status when you don't want any status
logged.
Select OK (green), Warning (yellow) or Error (red) to
set the status explicitly when this item 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 222.

IQANdesign User manual 251


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 project manager. A list with all log items in the
statistics log is shown. Above the log item list, a tool bar is available with the
log item types that can be added.

Statistics log editor.

Add a statistics log


To add a statistics log, right-click on the application node under Logs in the
project manager and select Add Statistics Log in the popup menu, or use the
tool bar in the log list.

Properties
These are the properties for an statistics log.

Visible Select Yes to make this log visible from a display


module or IQANrun, or select a digital value channel
to control visibility at run time.

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.

IQANdesign User manual 252


Statistics 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.

Access levels > Specify required access level to view this log. Users
View 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.

Access levels > Specify required access level to clear this log. Users
Clear 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.

Clearing channel 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
For more information, see section PIN code channel - PCC on page 158.

Access levels
For more information, see section Access levels on page 317.

Clearing channel
See section Clearing channel on page 247.

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 253


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 222.

IQANdesign User manual 254


10 Languages

Names, units, menu items and other texts in the project file, may need to be
presented in several languages. There is always a default language, and there-
after you add new languages, as many as you like. The end user can then
select the desired language on the master module display.

IQANdesign User manual 255


Managing application languages
10 Languages

Managing application languages


The languages in the project together with the translated texts are managed
under the User Interface > Languages node of the project manager.

Language and string list.

To add a new language, right-click on the node Languages in the project


manager and select 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 Name of this language component.

Description Description of the language.

Caption 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.

IQANdesign User manual 256


Managing application languages
10 Languages

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).

Font This property allows you to use a different font than the
default one for this language. The property is not
handled in the same way for all display modules, see
details below. For the font to be selectable it must be
installed in Windows.
MDL2/MD3: 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, instead the default
font will be used.
Other display modules: Select the font you want to use
for this language.
Note: As with any software, you need to license font
software in order to use it. Font software licences vary
depending on where you buy them from. Font software
publishers, font retailers, font foundries, type designers
and individual fonts will all have their own End User
Licence Agreement (EULA) which you should always
read carefully.

Include bold 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.
Note: This property is only used by MDL2 and MD3
applications.

Additional characters When specifying a font above only the characters used
in the project 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.
Note: This property is only used by MDL2 and MD3
applications.

Adding multi-language texts


To add texts in different languages to for instance a channel, open the prop-
erty 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-lan-
guage it will show up in the string list under the Languages node of the proj-
ect manager.
IQANdesign User manual 257
Managing application languages
10 Languages

Property inspector, multiple languages example.

Memory consumption
Adding more languages to your project will consume more memory in the
master module. When sending an project you can choose not to download all
languages, but only the ones you need in that particular machine. See section
Send project on page 260 and page 329 for detailed information.
You can watch the memory consumption for each language in the project sta-
tistics dialog, see section Project statistics on page 22.

IQANdesign User manual 258


Unicode
10 Languages

Unicode
IQANdesign supports Unicode including asian languages such as Japanese,
Korean and Chinese. However, the default font provided by IQANdesign
supports only a subset of Unicode called WGL4 (Windows Glyph List 4). It
contains characters that are required for Western, Central and Eastern Euro-
pean languages, and includes Cyrillic and Greek alphabets. For more infor-
mation on Unicode and WGL4, see http://www.unicode.org.
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 256).

Unicode ranges in the WGL4 Character Set

Basic Latin U+0020 - U+007F

Latin-1 Supplement U+0080 - U+00FF

Latin Extended-A U+0100 - U+017F

Greek U+0370 - U+03FF

Cyrillic U+0400 - U+04FF

IQANdesign User manual 259


Send project
10 Languages

Send project
When sending a project 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.

Send language option dialog.

Check the languages that you want to send to the system. This can be a way to
save application memory in a master module, especially for asian languages
where extra font data needs to be downloaded.

ATTENTION
When performing a get project or clone from a system without all languages
the resulting file will have empty texts for the languages not found.

IQANdesign User manual 260


Export
10 Languages

Export
To make it easier to translate all texts in an project it is possible to export all
texts to an Excel file. First, add all the languages needed in your project. 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 User interface, see section Localization on page
271.
Select File > Export languages... to export all texts to an Excel file. 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.

Exported channels in Excel.

IQANdesign User manual 261


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 project, that is, have the same project
ID. The project ID is stored in a hidden cell in the Excel file. If the project ID
does not match, the file can not be imported. For more information, see sec-
tion Project ID on page 27.
An import dialog box is opened.

Import dialog box.

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.

IQANdesign User manual 262


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 57.
A helpful tool to see what character sets a specific font contains is Character
Map, that is installed with most Windows versions. In Windows 7 for exam-
ple, you find it in the Start menu under All Programs > Accessories > System
Tools.

IQANdesign User manual 263


11 Display pages

Display pages are used to design the graphical user interface for a display
module 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.

IQANdesign User manual 264


Display pages in IQANdesign
11 Display pages

Display pages in IQANdesign


A display page is used to design a page for a display module. You can have as
many pages as you like. The visibility of each page can be controlled by a
channel and/or by pressing a button on other pages.
Using a display page it is possible to display controls, such as images, texts,
lines and gauges.

A display page for the IQAN-MDL2 master module with controls.

The display pages will belong to the project file. You can have as many dis-
play pages you want. It is important to remember that all images and controls
that you add will increase the application file size in the masters memory.
In the project manager there is one node with display pages for each display
module in the project, called a display page container node. These nodes can
be found under the User interface node.

Display page container properties


There are properties that are common for all display pages or affect the
behavior for a display module in a system. These can be accessed by selecting
a display page container node under User interface in the project manager.

Startup image Select the image that you want to be shown at system
startup. See also section Start up image on page 303.

IQANdesign User manual 265


Display pages in IQANdesign
11 Display pages

Show messages Select whether this display shall show messages from
any master module in the same system, All, or only its
own messages, Own. You can also select None to not
show any messages. Note that this will hide all error
messages on this display.
Messages includes CMSG, IMSG, PCC, SPN (DM1)
and system dialog boxes.

Display orientation Select if the display will be oriented in horizontal or


vertical position.
This property is not available on all display modules.

Font sizes Specify font sizes for Tiny, Small, Medium, Large and
Huge.
This property is not available on all display modules.

Dialog position Specify the default position and size for dialog boxes.
The position can also be set individually for each page,
see section Display page properties on page 268.
This property is not available on all display modules.

Theme colors Configure standard control colors.


This property is not available on all display modules.

External buttons Connect channels to use as external buttons, for


example digital inputs. The external buttons can be
used to acknowledge system messages and to control
the displays menu system. They will not be able to
control interactive display page controls though, such
as on-screen buttons, sliders or switches.
Select the channels you want to control buttons
Encoder, Up, Down, Enter, Menu and Escape.

Backlight control Controls the backlight of the display. When connected


to a channel its value overrides the value set in the
display's menu system. To use the setting in the menu
system this property has to be set to Not used.

IQANdesign User manual 266


Display pages in IQANdesign
11 Display pages

How to design a display page in IQANdesign


To add a display page for a master, right click on the corresponding dis-
play page container node in the project manager and select Add Display
Page in the pop up menu.

Project manager and display pages list.

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 project 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.

IQANdesign User manual 267


Display pages in IQANdesign
11 Display pages

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.

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.

Base page 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.

Color 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.

Dialog position Specify the position and size for dialog boxes on this
page. Select Default to use the position and size
specified on the display page container, see property
Dialog position on the corresponding display page
container.
This property is not available on all display modules.

Show and hide pages


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.

IQANdesign User manual 268


Display pages in IQANdesign
11 Display pages

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.

IQANdesign User manual 269


Properties for all display modules
11 Display pages

Properties for all display modules


There are some main designing properties that concern all display modules
including display pages, the menu system and the dialog boxes. Dialog boxes
are used to display system or user generated messages (IMSG, CMSG).
The below described properties will be shown if you select User Interface in
the project manager.

Properties
System dialog boxes Properties for deactivation and reactivation of system
dialog boxes.

System colors Define system colors that you can use in your project.

Localization The localization properties are used to adapt the


display information, such as dialog boxes, menu
system and application information to several
languages and places. The time and date format can be
changed.

System info Add items to be displayed on the system info page of


the master. Each item can be a channel or a text and is
displayed on a separate row. Empty rows can be
inserted by adding an item with an empty text. The
items can be reordered by drag and drop in the property
inspector.

System dialog boxes


Deactivation Select Yes to hide a system generated dialog box when
the alarm/error disappears, or a channel to control
deactivation in runtime. Select No to force the user to
acknowledge every system dialog box manually.
Channel control is only allowed in single master
systems.

Reactivation [s] Select a time after which a system generated dialog box
is reactivated if the user acknowledged it and the
alarm/error is still active.

System colors
You can select to define unique colors for your application. This could for
example be a company color or if you want to have some special color that is
not represented in the default color list.

IQANdesign User manual 270


Properties for all display modules
11 Display pages

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.

Properties

Name Specify a name for this color.

Color Select a 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

Date format 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.

Dialog boxes Captions for dialog boxes (CMSG, IMSG, etc.).

Menu system All texts used in the menu system.

Status messages Error, warning and information messages.

Calendar Weekday and month names.

Dialog boxes
The dialog boxes that these properties concern are the boxes that will appear
on the display, such as Message, Information, Confirmation, Warning etc.

IQANdesign User manual 271


Properties for all display modules
11 Display pages

Caption

Button text

Dialog box, error.

Properties

Captions Define other captions than the default, or define


captions in multiple languages.

Buttons 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 a display module
or in IQANrun. An item can be a text or a channel. Channel items are dis-
played with the channel name in one column and the value (and unit if appli-
cable) 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.

IQANdesign User manual 272


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 many types of display controls with different functionality. You
will find controls for lines, labels, values, bar graphs, gauges, lamps, buttons
and more.

Line
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.

Y1, X1, Y2, X2 Enter a position on the X- and Y-axis for this lines first
and second endpoint.

Width Specify the width of this line in pixels.

Color Select a color.

Label
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.

Top Enter a pixel value to position this control on the X and


Horizontal position Y axis. The windows upper left corner is defined as
top=0 and left=0.
The Alignment property decides the text controls
reference position.

Width Specify a fixed width in pixels, or select Automatic to


let the width be calculated automatically at runtime.
The Alignment property decides the text controls
reference position.

IQANdesign User manual 273


Display controls
11 Display pages

Alignment Specify alignment of this control, left, right or center.


The alignment will correspond to the Horizontal
position value.

Text Enter the text that you want displayed.

Font > Size Select a font size.

Font > Bold Select Yes to use a bold font.

Font > Color Select a font color.

Value
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.

Top Enter a pixel value to position this control on the X and


Horizontal position Y axis. The windows upper left corner is defined as
top=0 and left=0.
The Alignment property decides the text controls
reference position.

Width Specify a fixed width in pixels, or select Automatic to


let the width be calculated automatically at runtime.
The Alignment property decides the text controls
reference position.

Input channel Select the channel that controls the value of this
control.

Min value Minimum and maximum value for this control. The
Max value 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.
Enabled when Input channel is a numerical value
channel and property Show contains Value.

IQANdesign User manual 274


Display controls
11 Display pages

Show Specify what type of information to show. You can


select Value, Name, Unit, Value and unit, Name and
unit or Name and value. 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.

Format Specify how you want the value formatted: Decimal,


Hexadecimal or Binary. Only useful when Input
channel is an integer value channel and property Show
contains Value. For hexadecimal and binary, also
define property Number of digits. Hexadecimal
numbers are prefixed with 0x.

Alignment Specify alignment of this control, left, right or center.


The alignment will correspond to the Horizontal
position value.

Number of digits Specify how many digits you want displayed for the
input channels value. Enabled when property Format
is Hexadecimal or Binary.

Number of decimals Specify how many decimals you want displayed for the
input channels value. Enabled when Input channel is a
numerical value channel and property Show contains
Value.

Font > Size Select a font size.

Font > Bold Select Yes to use a bold font.

Font > Color Select a font color.

Linear bar
This control is used to display a linear bar graph, for example fuel level.
Border

Background

Bar

Bar graph parts.

Properties

Visible Select Yes to make this control visible all the time, or
select a digital value channel to control visibility at run
time.

IQANdesign User manual 275


Display controls
11 Display pages

Top Enter a pixel value to position this control on the Y and


Left X axis. The windows upper left corner is defined as
top=0 and left=0.

Input channel Select the channel that controls the value of this
control.

Width Specify the width and height of the bar in pixels.


Height These properties are only available on MD3 and MDL2
display pages.

Bar length Specify the length and width of the bar in pixels.
Bar width These properties are available on all other display
modules.

Pitch The pitch specifies the number of pixels to offset the


middle of the bar in order to create a curved look.
This property is not available on all display modules.

Min value Minimum and maximum values for this control, for
Max value 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.

Background color The bar graph control consists of two parts, the
Bar color background and the bar that fills the graph, see image.
Select the colors for the background and the bar
respectively.

Border > Visible Select Yes to show a border around the control.

Border > Color Select a color for the border.

Orientation Specify horizontal or vertical.

Circular bar
This control is used to display a circular bar graph, typically for temperatures,
levels, etc.

Circular bar.

IQANdesign User manual 276


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.

Top Enter a pixel value to position this control on the Y and


Left X axis. The windows upper left corner is defined as
top=0 and left=0.

Input channel Select the channel that controls the value of this
control.

Clockwise Specify direction of rotation, clockwise or counter-


clockwise.

Radius Specify the radius of the full circle in pixels.

Range > The needle angles that corresponds to minimum and


Start angle maximum values of this bar graph. The angles are
Stop angle specified in degrees. 0 equals east, 90 equals north,
180 equals west, etc.

Range > Minimum and maximum value for this control, for
Min value example 0 and 50 km/h for a speed gauge. The control
Max value 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.

Bar > Bar width Specify the width of the bar in pixels.

Bar > Background color Select a background color.

Bar > Bar color Select a bar color.

Image bar
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.
This control is only available on MD3 and MDL2 display pages. For other
display modules, the same effect can often be achieved by putting a linear bar
on top of an image and/or use gradients.

Properties

Visible Select Yes to make this control visible all the time, or
select a digital value channel to control visibility at run
time.

IQANdesign User manual 277


Display controls
11 Display pages

Top Enter a pixel value to position this control on the Y and


Left X axis. The windows upper left corner is defined as
top=0 and left=0.

Input channel Select the channel that controls the value of this
control.

Min value Minimum and maximum value for this control, for
Max value 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.

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".

Orientation Specify horizontal or vertical.

Background image Select the images that you want to use as background
Foreground image and foreground.

Background image Image bar graph at 75%

Foreground image Image bar graph at 75%


with window size 15

Horizontal image bar graph.

NOTE
In our image library, the frames and bars are separated. To create the fore-
ground 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.

Gauge
This control is used to display a theme based gauge with a needle. It is typi-
cally used to present vehicle speed, engine speed, fuel level, etc.

Scale

Tick mark

Label

Needle

Anchor

Gauge parts.

IQANdesign User manual 278


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.

Top Enter a pixel value to position this control on the Y and


Left X axis. The windows upper left corner is defined as
top=0 and left=0.

Input channel Select the channel that controls the value of this
control.

Clockwise Specify direction of rotation, clockwise or counter-


clockwise.

Radius Specify the radius of the full circle in pixels.

Range > The needle angles that corresponds to minimum and


Min angle maximum values of this gauge. The angles are
Max angle specified in degrees. 0 equals east, 90 equals north,
180 equals west, etc.

Range > Minimum and maximum value for this control, for
Min value example 0 and 50 km/h for a speed gauge. The control
Max value 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.

Range > Tick count Specify the number of tickmarks.

Range > Show labels Specify if labels should be shown for the tickmarks.

Scale color Select a color.

Needle > Color Select a color for the needle.

Needle > Length Needle length is specified in pixels.

Needle > Base width Needle base width is specified in pixels.

Needle > Tip width Needle tip width is specified in pixels.

Anchor > Color Select a color for the anchor.

Anchor > Width Anchor width is specified in pixels.

Image Gauge
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.

IQANdesign User manual 279


Display controls
11 Display pages

Needle

Anchor

Dial

Image gauge parts.

Properties

Visible Select Yes to make this control visible all the time, or
select a digital value channel to control visibility at run
time.

Top Enter a pixel value to position this control on the Y and


Left X axis. The windows upper left corner is defined as
top=0 and left=0.

Input channel Select the channel that controls the value of this
control.

Clockwise Specify direction of rotation, clockwise or counter-


clockwise.

Range > The needle angles that corresponds to minimum and


Min angle maximum values of this gauge. The angles are
Max angle specified in degrees. 0 equals east, 90 equals north,
180 equals west, etc.

Range > Minimum and maximum value for this control, for
Min value example 0 and 50 km/h for a speed gauge. The control
Max value 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.

Needle > Color Select a color for the needle.

Needle > Length Needle length is specified in pixels.

Needle > Base width Needle base width is specified in pixels.

Needle > Tip width Needle tip width is specified in pixels.

Anchor > Anchor position (needle endpoint) on the X and Y axis.


Center position, X The image upper left corner is defined as top= 0, left =
Center position Y 0.

Anchor > Color Select a color for the anchor.

Anchor > Width Anchor width is specified in pixels.

IQANdesign User manual 280


Display controls
11 Display pages

Dial image Select the image that you want to use as dial
(background).

Background image for a gauge dial.

Image
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.

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.

Top Enter a pixel value to position this control on the Y and


Left X axis. The windows upper left corner is defined as
top=0 and left=0.

Rotate > Angle [] 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.
This property is not available on all display modules.

Rotate > Enter a pixel value for the center position around which
X position the image should rotate on the X and Y axis. The upper
Y position left corner of the image is defined as top=0 and left=0.
These properties are not available on all display
modules.

Image selector 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.

IQANdesign User manual 281


Display controls
11 Display pages

Default image Select the image that you want displayed by this
control.

Image 1, 2, etc. Select the image that you want displayed when the
corresponding state is active.

Lamp
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)

Indication of low battery.

NOTE
The two images should be of the same size (width and height), otherwise one
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.

Top Enter a pixel value to position this control on the Y and


Left X axis. The windows upper left corner is defined as
top=0 and left=0.

Input channel Select the channel that controls the value.

Off image Select the image that you want to represent the off and
On image on state for this control.

Linear gauge
This control is used to display a linear gauge.
This control is only available on MD3 and MDL2 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.

Top Enter a pixel value to position this control on the Y and


Left X axis. The windows upper left corner is defined as
top=0 and left=0.

IQANdesign User manual 282


Display controls
11 Display pages

Input channel Select the channel that controls the value of this
control.

Range > The needles min and max position that corresponds to
Min position the minimum and maximum values. Positions are
Max position specified as distance in pixels from top left corner.

Range > Minimum and maximum value for this control, for
Min value example 0 and 50 km/h for a speed gauge. The control
Max value 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.

Orientation Specify horizontal or vertical.

Background image Select the images that you want to use as background
Needle image and needle.

Background image Slider at 75%

Needle image

Horizontal linear gauge.

Video
This control is used to show video from an IP camera connected via Ethernet
to the IQAN system. It can show a video stream in mjpeg format using the
protocols HTTP or RTSP. Different cameras have different URL for their
video stream. Please refer to the camera manufacturer or search on internet to
get the URL for your particular camera.

NOTE
The camera IP address should be 192.168.128.x where x is between 1-255.
The camera should be configured for subnet 255.255.128.0.

Properties

Visible Select Yes to make this control visible all the time, or
select a digital value channel to control visibility at run
time.

Top Enter a pixel value to position this control on the Y and


Left X axis. The windows upper left corner is defined as
top=0 and left=0.

Width Specify the width and height of the video in pixels.


Height

IQANdesign User manual 283


Display controls
11 Display pages

Video stream URL Specify the video stream URL for the camera. Width
and height can be substituted with %1 and %2 in the
URL. Example:
http://192.168.128.1/mjpg/
video.mjpg?resolution=%1x%2.
rtsp://192.168.128.1/axis-media/
media.amp?videocodec=jpeg&resolution=%1x%2

Text button
This control is used to display an interactive button on displays with touch
interface. This button has a rectangular shape with configurable text.

Properties

Visible Select Yes to make this control visible all the time, or
select a digital value channel to control visibility at run
time.

Top Enter a pixel value to position this control on the Y and


Left X axis. The windows upper left corner is defined as
top=0 and left=0.

Enabled Select Yes to make the button enabled always, or select


a channel to control it dynamically in run-time.

Size Specifies the height of the button, Small or Large.

Width Specify the width of the button in pixels.

Text Enter the text that you want displayed on the button.

Action Select action to perform when this button is pressed.


No action - disables this button.
Close page - closes the page.
Enter menu system - goes to the main page of the menu
system.
Measure group, adjust group, adjust item or log - goes
to corresponding page in the menu system.
Virtual digital in channel - controls the channel value.
Display page - goes to that page.

Symbol button
This control is used to display an interactive button on displays with touch
interface. This button has a circular shape with a configurable symbol.

IQANdesign User manual 284


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.

Top Enter a pixel value to position this control on the Y and


Left X axis. The windows upper left corner is defined as
top=0 and left=0.

Enabled Select Yes to make the button enabled always, or select


a channel to control it dynamically in run-time.

Size Specifies the height of the button, Small or Large.

Symbol Select the symbol for this button control.


Note: The symbol should be a transparent image
without any color information (all black). Color will be
applied to the symbol depending on button state and
theme color settings (see section Display page
container properties on page 265).

Action Select action to perform when this button is pressed.


No action - disables this button.
Close page - closes the page.
Enter menu system - goes to the main page of the menu
system.
Measure group, adjust group, adjust item or log - goes
to corresponding page in the menu system.
Virtual digital in channel - controls the channel value.
Display page - goes to that page.

Custom button
This control is used to display an interactive button on displays with touch
interface. This button has configurable images for the up, down and disabled
state.

Properties

Visible Select Yes to make this control visible all the time, or
select a digital value channel to control visibility at run
time.

Top Enter a pixel value to position this control on the Y and


Left X axis. The windows upper left corner is defined as
top=0 and left=0.

IQANdesign User manual 285


Display controls
11 Display pages

Enabled Select Yes to make the button enabled always, or select


a channel to control it dynamically in run-time.

Images > Up/Down/ Button images for button states up, down and disabled.
Disabled

Action Select action to perform when this button is pressed.


No action - disables this button.
Close page - closes the page.
Enter menu system - goes to the main page of the menu
system.
Measure group, adjust group, adjust item or log - goes
to corresponding page in the menu system.
Virtual digital in channel - controls the channel value.
Display page - goes to that page.

Switch
This control is used to view and change the value of a digital parameter adjust
item.

Properties

Visible Select Yes to make this control visible all the time, or
select a digital value channel to control visibility at run
time.

Top Enter a pixel value to position this control on the Y and


Left X axis. The windows upper left corner is defined as
top=0 and left=0.

Width Specify the width of the switch in pixels.

Input Select the adjust item that corresponds to the value of


this control.
Note: Any possible protection (access level or PIN
code) for the selected adjust item is overridden when
connected to this control.

Show text labels Select whether you want to show text labels for the off
and on positions on the switch, or not. The text labels
from the connected parameter are used.

Slider
This control is used to view and change the value of an integer or function
parameter adjust item.

IQANdesign User manual 286


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.

Top Enter a pixel value to position this control on the Y and


Left X axis. The windows upper left corner is defined as
top=0 and left=0.

Length Specify the length of the slider in pixels.

Orientation Specify horizontal or vertical.

Input Select the adjust item that corresponds to the value of


this control.
Note: Any possible protection (access level or PIN
code) for the selected adjust item is overridden when
connected to this control.

Show limits Determines if min and max limits are shown.

State picker
This control is used to view and change the value of a state parameter adjust
item.

Properties

Visible Select Yes to make this control visible all the time, or
select a digital value channel to control visibility at run
time.

Top Enter a pixel value to position this control on the Y and


Left X axis. The windows upper left corner is defined as
top=0 and left=0.

Width Specify the width of the state picker in pixels.

Input Select the adjust item that corresponds to the value of


this control.
Note: Any possible protection (access level or PIN
code) for the selected adjust item is overridden when
connected to this control.

IQANdesign User manual 287


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.

Select controls
Select a control by clicking on it in the display page editor. If it is hard to
click on, for instance when it is placed under another control, you can use the
control list below the display page editor to select it.
Select multiple controls by pressing <Ctrl> while selecting, or by dragging a
selection box around the controls you want to select.

Display page editor, MD4-7.

Move controls
Controls can be moved in several ways. The most obvious is of course to drag
it with the mouse in the page editor. You can also use the property inspector
to change a controls position properties.
The different alignment and distribution tools are helpful when creating orga-
nized layouts, see separate sections.
If you want to fine-tune the position of a control, you can use the keyboard.
Ctrl and the arrows will move a control one pixel in the selected direction.
Shift+Ctrl and the arrows will move it the specified grid distance.

IQANdesign User manual 288


Design tools
11 Display pages

Resizing controls
Most controls can be resized in some way, often by changing properties in the
property inspector. Some controls can also be resized by dragging its resize
boxes, for example label and line controls.

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 button
in the left side tool bar 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, click the
Grid button in the left side tool bar. 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


MDL2/MD3 - 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.
Other display modules - Click the Snap button in the left side tool bar to turn
snap on or off. When snap is on, controls will snap to other controls edges
while being dragged.

System dialog
It is possible to get a preview of system dialog position and size by clicking
the System dialog button in the side tool bar. A ghost view of a dialog box is
shown for each display page.

Vertical and Horizontal alignment tools


You can rearrange the controls by aligning them. Start by selecting the con-
trols you want to align. Then 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.

IQANdesign User manual 289


Design tools
11 Display pages

NOTE
The Label and Value controls have a property called Alignment. That prop-
erty will change the controls horizontal reference position to left, center or
right justification. When you then use the above alignment tool, to align sev-
eral 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.

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 verti-
cally.
Select the controls and then select the distribution direction you want, hori-
zontally or vertically.

Groups
Controls can be grouped. This is useful for controls that relate to each other in
some way, for example a value and a lamp relating to the same input.
Grouped controls act as a single control when selected in the display page
editor. The group can be named, just like any other control, and it has some
properties of its own.

Properties

Visible Select Yes to make this control visible all the time, or
select a digital value channel to control visibility at run
time.

Top Enter a pixel value to position this control on the Y and


Left X axis. The windows upper left corner is defined as
top=0 and left=0.

Changing the top and left properties (or dragging the group) will move all
controls within the group and keep their relative positions intact.
To create a group, select the controls, right-click and select Group in the con-
text menu (or press Ctrl+G). To split a group, select it, right-click and select
Ungroup.
A group can contain any control type and also other groups. To select a sepa-
rate control within a group, either split the group first, or select the control in
the control list. Groups can be expanded in the control list to show their child
controls.

IQANdesign User manual 290


Design tools
11 Display pages

NOTE
Groups are not available on all display modules.

Layers
Use layers to organize controls. A layer can be hidden while editing the con-
tent of other layers. A layer can also be locked to avoid to unintentionally
move controls. Layers are only used at design-time, they have no function in
run-time.
To create a layer, right-click in the editor or list and select Add layer. A new
layer is added and selected as the active layer. Give the layer a meaningful
name to keep your design well organized.
New controls will be added to the active layer. The active layer is set by
selecting the radio button next to the layer name. It is easy to move a control
to another layer by dragging it in the control list.
To lock a layer, click the checkbox in the lock column. A locked layer can not
be edited in the page editor, controls can not be selected or moved.

NOTE
Layers are not available on all display modules.

Control order
The control order decides the Z-order when drawing a page. Controls with
higher order are drawn on top of controls with lower order. The order is
shown in the Order column in the control list.
To change the order, drag and drop a control, group or layer within the con-
trol list.

Hide controls
Controls can be temporarily hidden in design-time to make it easier to work
with complex layouts. Use the check boxes in the "eye" column in the control
list to hide or show a specific control, group or layer.
Controls are only hidden in design-time. To change visibility at run-time, use
the Visible property on each control or group.

IQANdesign User manual 291


Physical display buttons
11 Display pages

Physical display buttons


Some display modules have physical buttons placed around the display that
can be used to show another page, activate a function or an adjust page etc.

Button layout for an IQAN-MD3.

The MDL2 has a special type of button, 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 but-
tons, 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

IQANdesign User manual 292


Physical display buttons
11 Display pages

the dialog box. See also section Conditional message - CMSG on page 154
and section Interactive message - IMSG on page 157.

Button properties

Enabled The button has to be enabled if you want to use it.

Adjust display Select how you want the adjust control displayed:
None - does not display any adjust control at all.
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.
Display page control - the selected control is
highlighted when adjusting.
Note 1: Options None, Miniature and Display page
control 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.

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.

Default action Select action to perform when this button is pressed.


No action - disables this button.
Close page - closes the current page.
Measure group, adjust group, adjust item or log - goes
to corresponding page in the menu system. For adjust
items, see also property Adjust display.
Virtual digital in channel - controls the channel value.
Display page - goes to that page.

Action 1, 2, ... One action property per state is created when property
Action selector is used. Same function as property
Default action.

Use a virtual digital channel to control a function in the application


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 prop-
erty.

IQANdesign User manual 293


Physical display buttons
11 Display pages

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 164 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.

Escape button properties

Enabled The button has to be enabled if you want to use it on


this display page.

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.

Default action Select action to perform when this button is pressed.


No action - disables this button.
Close page - closes the current page.
Virtual digital in channel - controls the channel value.
Display page - goes to that page.

Action 1, 2, ... One action property per state is created when property
Action selector is used. Same function as property
Default action.

Up/Down/Enter button properties

Enabled The button has to be enabled if you want to use it on


this display page.

Adjust display See page 293.

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.

Default action 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.

IQANdesign User manual 294


Physical display buttons
11 Display pages

Action 1, 2, ... One action property per state is created when property
Action selector is used. Same function as property
Default action.

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 create
an adjust item for the channel. For further information, see section Adjust
groups on page 237.

Button positions, IQAN-MDL2


The table below specifies the pixel position of each button center for an
IQAN-MDL2 module. Position 0 is left-most respective top-most pixel on the
display.

Pixel positions

F1 24

F2 102

F3 180

F4 258

F5 336

ESC 392

A 7

B 55

C 103

D 152

Menu 200

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 35

IQANdesign User manual 295


Physical display buttons
11 Display pages

F2 120

F3 205

F4 290

Up 60

Enter 120

Down 180

IQANdesign User manual 296


Gradients
11 Display pages

Gradients
A gradient defines a smooth transition from a start color to an end color. It
can also contain an arbitrary number of stops defining at positions between
the start and end color.
Gradients can be used on color properties. Not all color properties support
gradients though.

Gradient list.

Create a gradient by right-clicking on the User Interface > Gradients node in


the project manager and select Add Gradient. The new gradient is added to
the list and selected to let you define its properties.

Properties

Direction Direction of the gradient. The direction is specified in


degrees. 0 equals east, 90 equals north, 180 equals
west, etc.
Select Default to use the default direction as defined by
each control type.

Start color (0%) Start gradient color.

Color stops Arbitrary number of color stops between 0-100%.

Color stops > Stop 1, 2, ... Color and position for each color stop.
> Color/Position

IQANdesign User manual 297


Gradients
11 Display pages

End color (100%) End gradient color.

Direction
This property defines the direction of the gradient. If you select Default
instead of defining a fixed angle, the gradient direction will be decided by the
actual property where it is used. For example, when used as the bar color on a
linear bar, the direction will be decided by the orientation of the linear bar; 0
for horizontal and 90 for vertical.
When used on circular shapes, such as the bar color of a circular bar, the gra-
dient will follow the circle path.

Color stops
Add as many color stops as you like to create the gradient.
EXAMPLE
A gradient is needed for this circular bar used as a tachometer:

Set the Direction property on the gradient to Default. Start color is set to orange
and End color is set to red. To create the asymmetric effect, add a color stop and
set its color to the same as the Start color, and the position to 60%.

IQANdesign User manual 298


Images and Image groups
11 Display pages

Images and Image groups


Images are used by some display page controls, for example lamps, gauges or
symbol buttons. They can also be used as start up images on display modules.
Images are stored in image groups in the project. The purpose of an image
group is to help create a better overview of all images in the project file.
You need to add one or more image groups before you can add any images to
the project.

Project manager, Image groups.

Create an image group


To be able to apply the images to the display controls, you have to add the
images to the project 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 project manager and select Add Image Group
in the pop up menu. 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 pur-
poses 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.

NOTE
When sending a project to a system only the images that are used by each
master are included in that masters application. This means that when get-
ting the project from the system some images might be excluded.

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.

IQANdesign User manual 299


Images and Image groups
11 Display pages

Select the image file you want to add in the dialog box shown.
The file format must be bitmap (.bmp), JPEG (.jpg or .jpeg) or PNG
(.png).
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.

Images displayed 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 project file, not linked. Therefore, if you edit
an image, it will not be updated in your project 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.
If the original image file is lost, you can export it from your project file.
Right-click the image in IQANdesign and select Export image in the popup
menu. Select a folder and enter a file name, then click OK. The image is
stored as bmp format regardless of what the original format was. Slight dif-
ferences compared to the original image may occur.

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.
Note: This is not needed on PNG images, since they
support transparency.

Image Library
IQANdesign has a built-in image library. In this library you will 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.

IQANdesign User manual 300


Images and Image groups
11 Display pages

To add an image from the library, right-click an image group and select Add
Image from Library in the context menu. A dialog box is displayed.

Image Library dialog box.

Find your image using the Search field or the Categories view. Select the
desired image and press OK. The image is added to your image group.

Vector image conversion


Some images in the image library are in vector format, which means you can
scale them to whatever size you like. For single-colored images you can also
change the color. Select your options in the Vector image conversion box at
the bottom of the image library dialog box before you press Add.

Assigning images to controls


After importing images to your application you can assign an image to a
control. Add an image control, for example a gauge, to a display page. Select
an image to use as dial in the property inspector, property Dial image.
Some of these controls can also be assigned an image directly from the tool
bar. Click the down arrow next to the control button and select an image in
the context menu that appears. In this context menu you will also find the
Image Library where applicable. Selecting images from the library directly
here will let you skip the step of adding the image to an image group first.

Resize and convert image


When adding vector images using the down arrow next to a control button (as
described in the previous section), you need to define width and height for the

IQANdesign User manual 301


Images and Image groups
11 Display pages

image. Optionally you can also change the color of the image. This is done in
the Convert Image dialog box that appears.

Convert Image dialog box.

IQANdesign User manual 302


Start up image
11 Display pages

Start up image
When a display module restarts after power off, a start up image will be dis-
played 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 the display pages node for the master in the project 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 display
module.

IQANdesign User manual 303


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 components to open the export components dialog box.

Export dialog box.

To export only the selected components (with their content), answer No to


the export references question.
To export referenced components also, answer Yes to the export refer-
ences question.
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


Same as above, but referenced components are also exported.

Function groups/Channels Function groups and channels are not exported.

Modules Modules are not exported (except the master where the
display pages are located).

Measure groups Measure groups are not exported.

Adjust groups Adjust groups are not exported.

Logs Logs are not exported.

Pages Other pages than the selected are not exported.

Images Images that refer to any of the above exported


components are exported.

IQANdesign User manual 304


Export
11 Display pages

Security Access levels are not exported.

For more information about export and import see section Export/Import on
page 75.

IQANdesign User manual 305


12 Security

There are several levels of security to protect your projects and machines.
This chapter will describe how to protect your project files and also how to
protect settings and other data stored in your machines.

IQANdesign User manual 306


Project password
12 Security

Project password
The project password will prevent unauthorized people from opening your
project or getting it from the master.
There are two types of access to your project.
The first access level is the Full access password. This password prevents
unauthorized users from opening the project 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 project file with
other software tools, such as IQANrun. When opening a project 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 applica-
tion in any other tool than IQANdesign.

Adding password protection


To protect the project file with a password, open the project password dialog
box, Project > Passwords.

Full access password tab.

In the dialog box you will be notified if the project 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.

IQANdesign User manual 307


Project password
12 Security

It is not possible to have a limited access password and no full access


password.

No full access password.

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 project 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 313 for more information on safe passwords.

IQANdesign User manual 308


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 click-
ing the different column headers.

Name The name of the application that this password is


connected to.

Type Password type. There are two types available in


IQANdesign; Full access password and Component
password.

IQANdesign User manual 309


Password database
12 Security

Comment Additional password details.

ID 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; project 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 com-
ments. See section Locked function groups on page 69 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 pass-
words. 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 restric-
tion. The password manager will detect such attempts and lock the password
completely if necessary.

IQANdesign User manual 310


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.

Add password question.

If you click No, the password is added to the database anyway but only tem-
porary. 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 pass-
word 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.

IQANdesign User manual 311


Add password
12 Security

Add safe password dialog box.

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.

IQANdesign User manual 312


Safe password
12 Security

Safe password
Sometimes you need to give other people access to your project, for example
service personnel or other users. You can also grant access to locked compo-
nents as well as access levels and master login.
In IQANdesign there are functions that help you generate so-called safe pass-
words. This means that you can generate an encrypted password that only
gives a user access to open your project 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 project ID/
password and their public key. The public key is generated by a users license
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 pass-
word for on his actual computer (the computer where the user needs to have
access to the project 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 applica-
tion 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 pass-
word to generate.

IQANdesign User manual 313


Safe password
12 Security

Generate safe password.

Full access password gives the user full access to your application in
IQANdesign. It can also be used by other programs, for example IQAN-
run, 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 cer-
tain 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 pro-
tected by an access level you also need to select the access level to give
access to in the drop down menu.

IQANdesign User manual 314


Safe password
12 Security

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.
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 pass-
word should be valid.

Restrictions tab of the safe password dialog.

Click Create to create a safe password based on your selections. The safe
password is displayed in a separate dialog box, see image below.

IQANdesign User manual 315


Safe password
12 Security

Created safe password.

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 com-
puter. 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 with-
out entering the corresponding password.

IQANdesign User manual 316


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 project manager, under the node Secu-
rity. Select it to view a list of all your access levels in the editor.

Access level list.

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 project man-
ager and select Add Access Level in the popup menu.

Properties
These are the properties for an access level component.

Name Access level name, for example, Production or


Service personnel.

Description Access level description.

IQANdesign User manual 317


Users
12 Security

Users
Each user is connected to a certain access level. The user can see or do every-
thing that is protected by the same or lower access level.
The project can contain users connected to the different access levels. These
users are the same for all machines.To be able to use an access level, at least
one user must be defined in each access level.
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 project and will therefore be the same in all your machines
that use that project. Select the user Superuser under the access level Root in
the project 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 development purpose 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.

Add a user
Expand the node Security in the project 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.

Name User component name, for example, Production or


Service.

Description User description.

Username The username of the user.

Password The password of the user.

Tag A numeric value that will be associated with the user.


The value can be used in e.g. the system information
channel (SIC) to get the tag of currently logged on user.

IQANdesign User manual 318


Project security
12 Security

Project security
There are some properties that affect project 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 project in a machine, such as
change settings, view logs, etc.

Security properties
These are the security properties that are common for a project. To access
these properties, select Security in the project manager.

Access levels > Specify required access level to change machine ID.
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.

Access levels > Specify required access level to update the application
Update 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.

Access levels > Specify required access level to send settings to a


Send settings 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.

Allow IQANrun for Specify whether IQANrun for tablets will be allowed to
tablets connect to system.

NOTE
It is strongly recommended that you define a superuser password for your
project, 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 project. Without these it is possible to get the project from a master
module and change the superuser password. For more information, see sec-
tion Project password on page 307.

IQANdesign User manual 319


Project security
12 Security

Component properties
There are properties on the different components in your project that affect
security. Here is a list of component types that have security related proper-
ties.

Measure groups View access level.

Adjust groups Access level for view/adjust and set factory default
value.

Logs View access level and clear access level.

IQANdesign User manual 320


13 Simulation

To simulate your project you need to install IQANsimulate on your computer.


IQANsimulate is a very useful tool that helps to assure the functionality of
your project before you download the file to the IQAN system. It is also very
easy to check a function if you are unsure of its behavior.
Another benefit is that if your project contains a display module you dont
have to download your application file to check your display pages, display
controls or menu system. The project file will appear exactly the same way in
the simulator as in the real system with master modules. 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.

IQANdesign User manual 321


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 project file currently opened in
IQANdesign to IQANsimulate. If IQANsimulate does not have any simula-
tion 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 project sent from IQANdesign. If not,
you have to decide if you want to open another simulation file or create a new
empty file.

Project mismatch warning.

After making sure the project matches the simulation file, IQANsimulate will
update the simulation file with the new project and then start the simulation.

IQANsimulate controlling IQANdesign


When controlling the simulator from IQANsimulate, IQANdesign is synchro-
nized 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.

IQANdesign User manual 322


14 System
communication

This chapter will present the steps necessary to transfer projects to and from
the IQAN system.
Whenever a project is sent to the system, a project check is performed before
the transfer starts. If any errors are found the project can not be sent. Hints
and warnings returned by the checking procedure will not prevent sending the
project to the system. However, it is recommended that all the warnings be
fixed before sending the project.
Transfer of application data can be done via a serial port, USB, CAN or over
a remote connection using a modem or Internet. If your project contains more
than one master module it has to be sent using CAN.

IQANdesign User manual 323


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 and started commu-
nication, a green status lamp lights up in the IQANdesign status bar to indi-
cate that the connection is OK.

Select communication port and modem type.

IQANdesign User manual 324


Options
14 System communication

NOTE
Only one IQAN program can be connected to the master module, if e.g.
IQANdesign is measuring and you perform an IQANrun operation using the
same interface, IQANdesign will automatically disconnect.

USB
The USB drivers are installed automatically the first time you connect a mas-
ter module to your PC.

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,
IQANdesign will try to connect to the master with address 0. This is the mas-
ter referred to as headmaster in a multi-master system. For more information
on multi-master systems see section Multiple master modules on page 337.
If it is not possible to determine which master is the headmaster, you will in
some cases be asked which one you want to connect to when you start to
communicate.

IQANdesign User manual 325


Options
14 System communication

Module selection dialog.

In a multi-master system IQANdesign takes care of switching between mas-


ter modules. However if you want to force a new master selection you can
select Communication > Disconnect and then start to communicate again.

ATTENTION
The CAN adapter should be installed and connected to the PC before the pro-
gram is started, otherwise it will not be detected.

Ethernet
An Ethernet cable can be used to connect to your IQAN system if it contains
a master module with an Ethernet port. The PC and master module must be
on the same network and their IP addresses set up correctly. Connect either
via a router/gateway, or directly with a cable from the PC to the master mod-
ule. Read more about these setups in section Ethernet on page 195.
WiFi can also be used if the master module is connected to the WiFi access
point with a cable.
If there are multiple master modules connected to the same network,
IQANdesign will try to determine which master to connect to. When not pos-
sible, typically when there are multiple IQAN systems on the same network,
you will be asked which one you want to connect to when you start to com-
municate. Select the machine you want to communicate with and click Con-
nect.

IQANdesign User manual 326


Options
14 System communication

Connect via Ethernet dialog box.

IQANdesign will remember which system you where connected to last time
and try that system first next time. If you want to force another system con-
nection, select Communication > Disconnect and then initiate a new commu-
nication again.

Simulator
Select this device to communicate with IQANsimulate instead of a real mas-
ter 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 manu-
facturer for more information on the installation procedure.

Internet settings
If you want to connect to a machine over Internet and you require a proxy to
connect to Internet it can be configured here. By default the system settings
are used, but you can also disable proxy for IQANdesign or use a custom set-
ting.

Quick switch
On the Communication menu there is one menu item for each communication
interface; USB, Simulator, CAN, Ethernet, Internet and Modem. Select one of
the menu items to quickly switch to that communication interface without
having to open the options dialog box.
The currently selected interface is marked with a check box in the menu.

IQANdesign User manual 327


Options
14 System communication

Communication menu.

IQANdesign User manual 328


Send project
14 System communication

Send project
Select Communication > Send Project or click on the Send Project button in
the tool bar. The shortcut key for sending an application is F11. The project
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 Project check on page 19.
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 Adjust items on page 231.
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 project on page 260.
Enable send dialog boxes in Tools > Options, see section Dialog options on
page 57 for more information.
Status is shown during the send operation by a progress bar.

Sending project.

When the project has been sent, all master modules will automatically be
restarted.

Abort transmission
If the transmission has to be stopped, click Cancel.

ATTENTION
When sending a project to a system, first make sure the machine is not mov-
ing and the engine is shut down.

IQANdesign User manual 329


Get project
14 System communication

Get project
Before getting a project from the IQAN system, be sure all connections
between the PC and the master are completed.

Getting a project from the IQAN system


Select Communication > Get Project or click on the Get Project 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 project on page 242. Enable dialog box in Tools > Options, see
section Dialog options on page 57 for more information.
Status is shown during the get operation by a progress bar.

Getting project.

Abort transmission
If the transmission has to be stopped, click Cancel.

IQANdesign User manual 330


Set date and time
14 System communication

Set date and time


Select Communication > Set Date and Time to set the real time clock in the
connected IQAN system. The actual date and time set in your PC will be
used.

Date and time adjusted successfully.

IQANdesign User manual 331


Remote diagnostics
14 System communication

Remote diagnostics
If your machine is equipped with an IQAN modem it is possible to connect to
it remotely either over Internet or by via a dial-up modem, depending on
which modem and service you have installed in your machine. It is possible
to send and get project, measure and do all the things you can do with a local
system.

ATTENTION
Take extra care when using a remote connection to a machine.
The persons at the machine could be exposed to an increased risk.
Always inform the persons at the machine before sending updates to the
machine and before performing any adjust operations.
Check with the persons on site that:
the machine is positioned safely
the engine is off
the machine cannot start to move
the emergency stop works, and can be reached quickly
In essence, these are the same precautions you take when working on site.
The only difference when working over a remote connection is that coopera-
tion with another person who is at the machine is always necessary.

Connect via Internet


If your IQAN system includes an IQAN-G2 modem you can connect
remotely to your system over Internet.
All remote diagnostics communication is routed through a Proemion gateway
server. Because of this you will also need an account at Proemion to be able
to access the remote diagnostics service.
To connect to an IQAN system over Internet, select Communication > Con-
nect via Internet. This brings up a dialog where you need to supply your user-
name and password for the Proemion remote diagnostics service.

IQANdesign User manual 332


Remote diagnostics
14 System communication

Connect via Internet dialog box.

After entering username and password, click Get machines to get a list of all
machines that you have access to. To identify the machines in the list their
machine IDs are shown in the first column. In addition to this the IMEI num-
ber of the modem is shown in the list since this is guaranteed to be unique.
The state column shows if a machine is offline, online or busy with a remote
connection. Select a machine that is online and click Connect.

NOTE
To be able to connect to the remote diagnostics server IQANdesign uses TCP
port number 60100. This means that your firewall must allow for outgoing
connections on this port.

Connect via modem


By connecting a modem to your PC, you can communicate with a remote
IQAN system that is equipped with an RS-232 modem, e.g. IQAN-G1. Using
this connection, multi-master systems are not supported.

IQANdesign User manual 333


Remote diagnostics
14 System communication

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 com-
municate with a remote system it is a good idea to verify that a modem is con-
nected to the remote system master.
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 num-
ber.

Connect via modem dialog box.

Click Dial to connect to the remote modem.


Once communication is initiated the text in the dialog box will keep you
informed on the progress of the call: dialing, connecting, etc.

Disconnect
When your done, disconnect from the remote system using Communication >
Disconnect.

IQANdesign User manual 334


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 334) 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.

Phone book record dialog box.

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.

IQANdesign User manual 335


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.

Delete record confirmation.

Click Yes to delete the record.

Export
To be able to share your phone book with others or move it to another com-
puter 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.

IQANdesign User manual 336


15 Multiple master
modules

An IQAN system consists of one or more master modules, and can also con-
tain a number of expansion modules. The difference between expansion mod-
ules and master modules is that the master modules contain an application
created in IQANdesign, while the expansion modules have fixed software.
Master modules are programmable by the user in IQANdesign, expansion
modules are controlled by the master.
The most basic IQAN systems contain just one master module, a single mas-
ter system, but it is also possible create a system with more than one master
module in IQANdesign, a multi master system. This chapters describes how
to set up a multi master system in IQANdesign.

IQANdesign User manual 337


Single master or multi master?
15 Multiple master modules

Single master or multi master?


A single master system with expansion modules has a lot of advantages:
In a single master system, there is only one of the modules in the machine that
needs programming, expansion modules can be replaced in the field without
having to load any software.
In the single master system, only one node needs to be accessible to the diag-
nostic tool (e.g. PC with IQANrun).
Diagnostic data from IQAN expansion modules is optimized to take up as lit-
tle of the CAN bus bandwidth as possible, so one bus can be used for a high
number of modules.
An IQAN specific advantage of the single master concept is also the combi-
nation of master and display module into one module, which makes it signifi-
cantly easier to access diagnostic data on the display in the system.
In general, an expansion module also requires less expensive hardware than a
master module, so a system with just one master and a number of expansions
can have a slightly lower cost.

Multiple masters
In a system with high requirements, a specialized module for functional
safety such as the IQAN-MC3 may be needed. To access diagnostic data on
this master, a master-display, such as the IQAN-MD3 is needed.
There may also be functions on the machine with very high requirements on
availability, such as the transmission control. Locating logic and I/O for this
on one module can make this function more tolerant against faults in other
parts of the system, such as an interrupted CAN bus.
A set of functions on the machine that requires a short system cycle time can
be executed by an application on one master, fully utilizing its processing
capacity for these functions, while another master module can be assigned
with the application for the other control and diagnostic functions.

IQANdesign User manual 338


System design
15 Multiple master modules

System design
This section describes the rules and guidelines for design of systems with
multiple masters.

Applications
Each master contain exactly one application. The applications on the masters
in the system are executed independent from each other, but they may
exchange limited amount of data.
The way that applications can exchange data is over the CAN bus. It is possi-
ble to set up this over J1939 or generic CAN, an easier way to do it is by
using the APPIN/APPOUT channels.

EXAMPLE
System with two master modules, one MD3 and one MC3.

System layout.

The system has two applications, and the applications are connected using
APPIN/APPOUT over the Master bus.

Applications

IQANdesign User manual 339


System design
15 Multiple master modules

Diagnostics bus
Diagnostic information from another master can be accessed from any master
in the system. To make this possible, all master modules must be connected
to the diagnostics bus.
The diagnostic information that can be sent between masters over this bus
are:
Measured values in measure groups on another master
Measured values shown on a display page of another master
Dialogs messages from another master
Adjustments of values on another master
Log data when viewed on another master
System diagnostics using IQANrun/IQANdesign is also assigned to this bus,
which adds:
Sending software updates, settings, clones etc to and from the PC
Adjustments, measurements and reading of logs performed with the PC
If a CAN bus modem is used, all the data to and from this modem.
The data sent on the diagnostics bus is dynamic. To save bandwidth, only the
information currently needed for another master, PC tool or modem is sent.
The utilization of the diagnostics CAN bus is therefore fluctuating, but can
become very high. It is therefore recommended to assign one bus only for
diagnostics.
In a multi-master system, only the CAN bus can be used for diagnostic con-
nection to a PC, it is not possible to connect to a multi-master system over
USB.

Addressing
The master modules in the system must have unique addresses.
The address is determined by the module type (e.g. MC2) and the IdTag that
is physically connected to the master modules. This IdTag address must also
match the Address set on the master module properties.
Modules without an IdTag will use address 0. Modules where the IdTag does
not match that of the application, will not start their application. Modules for
functional safety (e.g. IQAN-MC3) must always have an IdTag, they will not
default to address 0 if the IdTag is missing.
There must be exactly one master module in the system with the Address 0,
this module is the system Headmaster.

Headmaster
The system must contain one master module that is the system Headmaster.

IQANdesign User manual 340


System design
15 Multiple master modules

In the System layout view, a star symbol indicates the role of headmaster.

The role of the headmaster is limited, but it is responsible for the following
system tasks:
First connection point for the PC. When IQANdesign/IQANrun is con-
nected to the system over CAN, it will first establish connection to address
0, the headmaster. The headmaster also holds information about what
diagnostics (e.g. measure-, adjust groups, logs) there is in the system, this
reduces the time it takes for these menu selections to be shown in IQAN-
run.
Synchronization of the machine ID. This is done on startup and if the
machine ID is changed using IQANrun, all masters get the Machine ID
from the headmaster.
The modem properties, such as enabling of modem and when to allow
remote connection and remote stop. See modem for details. These proper-
ties must belong to the headmaster. Only CAN modems are supported for
multi-master systems.
For all other tasks in the system, each master module handles its own applica-
tion and integrity in the system. The system can continue to function when
the headmaster is missing due to a fault, see section Erroneous or incomplete
systems on page 346.

Optional modules
Normally, an error message will be shown on the display(s) in the system if
any master module is missing or gets disconnected.
The system could be designed with a separate master to control a function
that is either a machine model option, or that controls an attachment that is
not always connected to the machine.

The property Optional

To avoid warnings on the other master modules when an optional module is


missing in the system, set the property Optional to Yes on these modules.
The headmaster can not be optional.
IQANdesign User manual 341
System design
15 Multiple master modules

Expansion modules
An expansion module may only belong to one master module. IQANdesign
will generate an error if more than one master module is connected to the
same expansion bus.
It is however possible to have expansion modules on a bus that is physically
connected to two master modules.Only the application in the master module
that is connected to the expansion bus in IQANdesign will read inputs and set
outputs on the expansion modules on this bus.
EXAMPLE
System with two master modules and one expansion bus, where the bus is
physically connected to both master modules. In the correct system, the
expansion bus is assigned only to one of the master modules in IQANde-
sign, in this case the MC2.

Correct system, the XA2 expansion belongs to the MC2 master. The MD3 application can not use
the expansion module channels directly.

If the MD3 is connected to the expansion bus in IQANdesign, an error will


be generated, Multiple master modules on expansion bus.

Error, both the MD3 and the MC2 has been connected to the expansion bus.

IQANdesign User manual 342


System design
15 Multiple master modules

System time
All master modules in the system will use the same Date and time settings.
This is synchronized at startup, the latest Date and Time settings will be dis-
tributed to all masters in the system.
If the Date or Time is changed, the change will be distributed to all masters in
the system.

Master modules without an RTC


In a single master system, a master module without an RTC (e.g. IQAN-
MC3) will count start-ups and time since startup instead of Date and Time in
a single.
In a multi-master system, it will instead use the Date and Time from a master
that has an RTC, if one such master exists in the system.
If the module without RTC does not have contact with a master with RTC, it
will fall back to using number of start-ups and time since start-up. The effect
will be that the logs might contain a mix of both formats.

IQANdesign User manual 343


Safety aspects
15 Multiple master modules

Safety aspects
Multiple master can be used in a system where part of the functionality is
safety related. Actually, this is one of the main points for the IQAN multi-
master system, to be able to use a display module together with a master for
functional safety (e.g. IQAN-MC3), and provide an easy-to-use diagnostic
connection.

APPIN/APPPOUT
Although normal CAN is highly reliable and has methods for error detection,
this is not considered sufficient for safety functions with a higher integrity.
To solve this and fulfill the requirements of IEC 61508, the real-time data
sent between masters for functional safety has additional methods for error
detection.This error detection is automatic when using APPIN/APPOUT.

Upon detection of errors


If an error is detected within a CAN frame from an APPOUT, this CAN
frame will be discarded. If the timeout is not exceeded, the value from the
previous cycle is used in the APPIN. When the timeout is exceeded, the
APPIN will instead use its defined error value.
As with all channels that have error detection, it is crucial that an error value
that is safe in the application is selected.

The timeout
The timeout of the APPIN channel is automatic, and based on the transmit
rate of the APPOUT. For APPIN:s used for safety functions, a minimal trans-
mit rate must be defined in the APPOUT.
See description of APPIN/APPOUT for further details on the channel proper-
ties.

Diagnostic connection to other masters


Diagnostic information such as measured values in measure groups or view-
ing of logs is not considered safety related.
What is safety related is making changes through the diagnostic interface that
could influence a safety function. I.e. adjust may be safety related, if the
adjustment is on channels used for safety functions.
Just as the APPIN/APPOUT data has automatic methods for error detection,
so does the diagnostics data. But there are differences, with adjust items the
security aspects of tampering must also be considered.

Protecting safety related adjust items


There are two main methods for protecting safety related adjust items from
tampering:

IQANdesign User manual 344


Safety aspects
15 Multiple master modules

by setting the adjust item limits so that the value can only be adjusted
within a safe range
by applying security; a PIN code or Login.
This is also described in the IQAN coding guidelines in section Coding
guidelines on page 350. For channels in safety related function groups,
IQANdesign application check will generate an error if no security has been
applied to the corresponding adjust item.
The need for protecting adjust items, and the methods to do it, is just as appli-
cable when connecting IQANrun to the system, e.g. during service. But there
is a significant difference for the security aspects in a multi-master system:
With a display module permanently installed in the vehicle, and with a menu
system that is open to the operator of the machine, there is an increased risk
of attempts to modifications through the adjust menu.
Therefore, it is recommended to choose a protection that takes this into con-
sideration:
Select a user login level for the most critical adjust groups. This way, the
adjust items in these groups will not be accessible at all from a display
module, only when IQANrun is connected.
For parameters that should be modified by trained operators, such as
COUT settings, try to set limits that will give safe operation of the
machine over the whole range of the parameters.
Other methods, such as hiding of adjust groups through the Visible property
can also be considered.
Note that even if a PIN code is entered on a display module it is always veri-
fied by the master that owns the adjusted channel before any adjustment is
allowed. The same is also true for items protected by access level when
logged in from IQANrun.

IQANdesign User manual 345


Erroneous or incomplete systems
15 Multiple master modules

Erroneous or incomplete systems


The system can continue to work with reduced functionality when nodes are
missing, or even with incorrect nodes on the system. This section describes
how.

The multi-master state


Each master module determines its own state in a multi-master system based
on the other master modules found. The multi-master state can be OK, Lim-
ited or Stopped. It is possible to get the multi-master state in an application
using the system information channel (SIC).

OK
When the system is working normally, all master modules are connected, and
are capable of exchanging data over the Diagnostics bus and over the Master
bus. Multi-master state is OK.

Limited
The master modules are also capable of executing their own application,
without a connection to the other master modules in the system. If a master
module do not have contact with another non optional master, the multi-mas-
ter state will be Limited.
In limited operation, master modules that are still connected can continue to
exchange data. Data from the missing master modules is marked as time-out.
If the connection is re-established, the communication will be resumed. The
multi-master state will change to OK.

Stopped
If an error is detected, the multi-master state will be Stopped.
When a master module is in this state, it will not exchange any data with other
master modules over the Diagnostics or Master bus. The master will continue
to execute its application, but no data will be received from or transmitted to
other master modules. All data from other master modules will be marked as
time-out.

Check of project ID and revision


Each master module checks the other master modules in the system, to deter-
mine if they belong to the same Project, and are of the same Revision.
The project ID (see section Project properties on page 28) is used for check-
ing that they belong to the same project.
The project revision is an automatically generated number, each time the
project is edited in IQANdesign, the revision is changed. The project revision
is not visible in IQANdesign, and can not be manipulated. The project revi-
sion is not the same as the project version in the project properties.

IQANdesign User manual 346


Erroneous or incomplete systems
15 Multiple master modules

The project ID and revision is checked both at startup and continuously. If the
checks are not ok, the multi-master state will change to Stopped, and the
application will stop exchanging data on the diagnostics and master bus.

Alien modules on the bus


All master modules in a multi-master project is monitoring the Diagnostics
bus and Master bus, in order to detect alien modules on the bus.
If there is any node from the same project, but with different revision on the
bus, the multi-master state will become Stopped.
If there is any node from another multi master project (different ID) on the
bus, the multi-master state will become Stopped.
If there are duplicates of master modules from the same project on the bus,
the multi-master state will become Stopped.
If there are modules acting as an IQAN master on the bus, the multi-master
state will become Stopped.

Missing modules
If a master module is missing, the other applications will be in limited opera-
tion. Two special cases exists:

Missing an optional module


If the missing module is set to optional, the other applications in the system
will be able to continue in the OK state without it.

Headmaster missing
If the headmaster is missing, the other modules will also be in limited opera-
tion, just as if any master module was missing. There is a small difference for
PC diagnostics, with no headmaster, the PC will not know which master to
connect to, so a dialog of available modules will be presented to the user:

IQANdesign User manual 347


Erroneous or incomplete systems
15 Multiple master modules

A symptom of headmaster missing

The same dialog will be shown if there is more than one module with address
0 on the bus.

Updates and clones in incomplete systems


The project file is always complete
It is possible to send a project file to an incomplete system.
The opposite is prevented, it is not possible to get a project file from an
incomplete system, even if the missing nodes are optional. This ensures that
the project file is always complete.

Clones may be incomplete


In IQANrun, it is possible to Get a Clone file from a system, see IQANrun
user manual.
Getting a clone is also possible if the system is not complete, this will be an
incomplete clone. The incomplete clone can be opened and viewed in IQAN-
run, and can in some cases be sent to a system.
An incomplete clone can not be opened in IQANdesign, since that would
result in an incomplete project file.
It is not possible to get the clone if the system has errors, such as mismatch in
the project ID or the project revision.
A clone or an incomplete clone can be sent to just one master module. The
typical use case would be loading a module on the bench before replacing it
in the machine.
An incomplete clone can also be sent to a system. But it is only possible to
send the incomplete clone if the other modules in the system that are not
updated by this clone, have the same project and revision as the clone.

IQANdesign User manual 348


Erroneous or incomplete systems
15 Multiple master modules

IQANrun dialog, an incomplete clone can not be sent if that would cause a project revision mismatch.

Settings may be incomplete


In IQANrun, it is possible to Get a Settings file from a system, see IQANrun
user manual.
The settings are not linked to a specific revision of the project file. It is possi-
ble both get and send incomplete settings. A dialog warns the IQANrun user
if the settings are incomplete.

IQANdesign User manual 349


16 Coding
guidelines

IQANdesign is a tool that gives the designer great freedom in designing func-
tionality 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 appli-
cation 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 imple-
menting safety functions, but most of these guidelines can be taken as advice
for all types of applications.

IQANdesign User manual 350


General guidelines
16 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 Use readable names

Documentation Use description

Architecture Use function groups of limited size

Layout Inputs to left, outputs to right

Value types Avoid unnecessary type casting


(e.g. dual object used in IDC)

Calculation order No unintentional priority warnings

Project check No errors/warnings

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 94.

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

IQANdesign User manual 351


General guidelines
16 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.

IQANdesign User manual 352


General guidelines
16 Coding guidelines

Documentation
Use description. For functions where the name of a channel alone is not suffi-
cient to understand the functionality, add a description to that channel.

EXAMPLE

Bucket function with description.

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 func-
tion group interfaces to the engine.
Machine diagnostics, with a collection of diagnostics that do not influ-
ence 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 illustra-
tion of the control flow.

EXAMPLE

Channel layout for a boom function.

IQANdesign User manual 353


General guidelines
16 Coding guidelines

Value types
For a description of value types used in IQAN, see section Value and status
on page 95.
IQANdesign will in most cases prevent unnecessary mixing of value types.
As an example, a DOUT will only take channels of value type boolean as
input.
To provide flexibility, some unusual combinations are allowed, but they
should be avoided.

EXAMPLE
A common example of unnecessary mixing of value types is the use of the
Dual object within an IDC.

Use of two Dual object. The input is first converted to 100 or 0, when used in the channel method
Or, the value 100 is interpreted as True.

Here, the use of two Single objects is better.

Calculation order
The application should not have any unintentional priority warnings. See sec-
tion Calculation order on page 68.

Red line if the calculation order is reversed.

IQANdesign User manual 354


General guidelines
16 Coding guidelines

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 cal-
culation 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.

Project check
The Project check shows Errors, Warnings and Hints.
A project file with Errors is automatically prevented from being sent to any
master modules.
An application can run as intended with both Warnings and Hints, but they
are in many cases indications that the designer might have overlooked some
aspect, such as security or checking that units are used consistently.
In a realistically sized project, Hints are unavoidable, but there should be no
or very few Warnings.
As a rule of thumb, the list generated by the Project check should be kept so
small that it can be read without having to scroll through it.

IQANdesign User manual 355


General safety principles
16 Coding guidelines

General safety principles


For all functions that control hydraulic implements, the design principles in
this section should be applied, as a minimum. These are actually general
safety principles that are relevant for all machinery.
For applications where there is an increased need for proving the integrity of
the safety functions, also see section Safety related applications on page 359.

Safety principles

De-energization Deactivate output if commanding input is open.

Error detection Check status.

Error detection action Use safe error values.

Start and restart conditions Consider safe start and restart conditions.

One control station at a time Use states to avoid ambiguous input.

Protect parameters Use limits and security.

Limit remote access Ensure safe state before remote access

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.

IQANdesign User manual 356


General safety principles
16 Coding guidelines

It is wise to design the application so that actuation of hydraulic implements


always require a deliberate action from the operator.

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 imple-
ments.
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.

Layout of a function with start-up check.

The compare channels AAC, ADC and DDC can also be used in the imple-
mentation of safe start and restart conditions.

Layout of a function with start-up check using AAC.

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.

IQANdesign User manual 357


General safety principles
16 Coding guidelines

EXAMPLE
For a crane application where the functions can be operated both by joy-
sticks 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.

Use of state machine channel.

Protect parameters
Modifying parameters, such as voltage input calibration, function parameters
or COUT Min and Max can have a significant impact on the machine func-
tionality, 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.
Consider that with a display in the system, Adjust groups become more
accessible to the user, and some parameters may require a higher access level.

Limit remote access


When there is a modem for remote diagnostics, set the modem properties so
that a safe state can be ensured before allowing a remote connection.
If there is a display in the system, a user dialog is a possible solution. If not,
implementing a condition that checks that the machine is stationary could be
an alternative, depending on the application.

IQANdesign User manual 358


Safety related applications
16 Coding guidelines

Safety related applications


In addition to the guidelines above, further requirements apply for applica-
tions that use an IQAN module certified for functional safety, for example the
IQAN-MC3.

Requirements on safety related applications

Safety related function Use safety related function groups where applicable.
groups

Interfaces to non safety Safety related functions shall take priority over non
related functions safety related (limiting).

Application defaults on Use safe application defaults.


parameters

Input integrity 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
73.

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.
This is required for IQAN module certified for functional safety, but it is wise
to apply this rule also for other IQAN modules.
The IQAN master modules are continuously monitoring the integrity of
stored and adjustable parameters. In the unlikely event that adjustable, fac-
tory default or stored parameters are corrupted, the module will fall back to
using the application default values for the affected channel(s).
IQANdesign User manual 359
Safety related applications
16 Coding guidelines

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.

IQANdesign User manual 360


17 Examples

This chapter contains a number of examples. You can find the actual compo-
nents used in these examples in the application file Examples.ida3, which can
be found in the Examples folder created by IQANdesigns installation pro-
gram.

IQANdesign User manual 361


Present inputs on a display module
17 Examples

Present inputs on a display module


In this example we will add a couple of inputs and present them on a display
page.
Start IQANdesign and create a new application by selecting File > New.
Select the MDL2 master in the Add Module dialog that is shown.
Add a voltage input to your application by clicking VIN in the function
group tool bar.

Voltage input added.

Rename the voltage input by clicking on the Name property in the prop-
erty 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


System in the project manager.

IQANdesign User manual 362


Present inputs on a display module
17 Examples

System overview.

Select the master module by clicking on the MDL2 module that you added
when starting the project.
Rename the master module by pressing <F2> (shortcut key for Rename),
enter Master and press <Enter>.
Select Master application in the project manager. Click the voltage input
and drag it to Master (MDL2) in the project manager.

Voltage input connected to master module.

Select Master (MDL2) in the project 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.

IQANdesign User manual 363


Present inputs on a display module
17 Examples

Connector 1, pin number 18.

To use another pin, simply drag the channel and drop it on another index.
Select Master application in the project manager. Add a second channel, a
frequency input. Well use a different method this time. Click the FIN but-
ton in the function group tool bar and drag it to the work area. Drop the
channel where you want it.

Frequency input being dragged.

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.

IQANdesign User manual 364


Present inputs on a display module
17 Examples

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
Master display pages under User interface in the project manager and
select Add display page in the popup menu.

Add display page.

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 project 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 288 for other methods.

IQANdesign User manual 365


Present inputs on a display module
17 Examples

Value control added.

Rename it to Temperature value.


We want to connect our voltage input to this value control. Go to the prop-
erty Input channel in the property inspector. Click on the drop down arrow
to the right and select our voltage input in the popup menu.

Voltage input selected.

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
Size select Huge in its drop down list. On property Bold, double-click its
value to change it to Yes.
IQANdesign User manual 366
Present inputs on a display module
17 Examples

Font property changed.

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 project. Right-click on Images in the project
manager and select Add image group in the popup menu.
Rename the image group to Dial images.
Right-click on Dial images in the project manager and select Add image in
the popup menu.
Navigate to the folder Image Library that has been installed on your com-
puter. Find the image file light_speedometer_50kmh.bmp in the Gauges
folder and open it.

IQANdesign User manual 367


Present inputs on a display module
17 Examples

Open image dialog box.

The image is added to your image group and automatically renamed to its
file name without the suffix. The image group view shows only thumb-
nails of its images.

Image group view.

Go back to the display page Main page by selecting it in the project man-
ager.
Add a gauge control by clicking the drop down arrow on the IGauge but-
ton and select the dial image in the popup menu.

IQANdesign User manual 368


Present inputs on a display module
17 Examples

Dial image selected.

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.

Image gauge properties.

Set property Input channel to our frequency input Vehicle speed [km/h].
Now, we want to save our project, but first we should give it a name and a
version. Select Project > Properties from the menu. Change Name to
Examples and property Version to 1.00.

IQANdesign User manual 369


Present inputs on a display module
17 Examples

Changing project properties.

Close the project properties dialog by clicking the OK button. 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.

IQANdesign User manual 370


Present inputs on a display module
17 Examples

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.

IQANdesign User manual 371


Present inputs on a display module
17 Examples

Simulator running.

Stop your simulation by clicking the Stop button in the main tool bar.

IQANdesign User manual 372


Controlling a boom function
17 Examples

Controlling a boom function


In this example we will add a function group and some channels to control
two hydraulic functions on a crane, boom and telescope. The telescope will
also have an end damping function.
Right-click in the Application editor and select Add Function Group.

Add function group.

A function group is created. Function groups are containers of channels.


They will let you organize and structure your application. A normal appli-
cation 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.

Function group Crane.

Double-click on the function group to open it. You can also select the
function group in the project manager under Functionality. 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.

IQANdesign User manual 373


Controlling a boom function
17 Examples

This is a pre-calibrated channel type for IQAN levers. Its value is -100%
to 100%, where 0% equals center position.
Add two Current output channels (COUT) with the names Boom and Tele-
scope. 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:

Boom and telescope channels.

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 con-
nected to any module. You can also use the Check project function to get
more details on all your project problems, see section Project check on
page 19.

Problem description.

To fix this, we need to add modules and assign our channels to them.
Select System in the project manager. Click on the expansion bus to add an
expansion CAN bus to the system.

IQANdesign User manual 374


Controlling a boom function
17 Examples

Add an expansion bus to the system.

Drag a lever module (Lx) and an expansion module (XA2) to the system
overview.

Drop XA2 module to the system.

Connect the master module, lever and expansion module to the expansion
bus by dragging each modules CAN port A to the added expansion bus.

IQANdesign User manual 375


Controlling a boom function
17 Examples

Connect the modules to the expansion bus.

Go back to our Crane function group. Select both lever channels by drag-
ging a box around them. Drag both channels and drop them on the Lx
module in the project manager. Do the same with the current outputs, but
drop them on the XA2 module.

Select multiple channels by dragging a box around them.

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 con-
trol its value. It should range from -100% to 100%. The input value is con-
verted to a current based on the channel calibration, see section Value on
page 111.
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 calcula-
tions 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 ref-
erence 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

IQANdesign User manual 376


Controlling a boom function
17 Examples

order, problem. All channels are calculated in a specific order each sam-
ple. The default order is the order they were added to the application.
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 sam-
ple. 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.

Set calculation order.

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.

IQANdesign User manual 377


Controlling a boom function
17 Examples

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).
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 maxi-
mum 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.

Channel connected to a function group.

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 chan-
nel has three object groups, Controlling, Limiting + and Limiting -.
Lets start by adding the Controlling objects. Right-click in the Control-
ling 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 control-
ling 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:
IQANdesign User manual 378
Controlling a boom function
17 Examples

Vector object properties.

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:

Vector object properties in negative direction.

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 func-
tion group and function inspector should now look like this:

IQANdesign User manual 379


Controlling a boom function
17 Examples

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 mea-
sure 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.

Limiting object decides the channel value.

IQANdesign User manual 380


Adding measure groups
17 Examples

Adding measure groups


It is now time to add some advanced measuring to our application. Measure
groups serve two purposes. One is to measure channels graphically in
IQANdesign and the other is to give the machine user access to measuring via
a display module.
Start by adding a measure group. Right-click on Measure groups under
Diagnostics in the project manager and select Add measure group.
Rename the group to Crane.
Drag the channels you want measure and drop them on the Crane measure
group in the project manager. In this case we want to measure all channels
in the function group Crane. You can add all channels in that group in one
operation by dragging the function group and drop it on the measure
group.
Look at the measure group by selecting it in the project manager.

Crane measure group.

IQANdesign User manual 381


Adding measure groups
17 Examples

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.

Measured graph and statistics.

IQANdesign User manual 382


Adding measure groups
17 Examples

The measure group will also show up in a display modules 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.

Crane measure group in the MDL.

IQANdesign User manual 383


Diesel engine CAN communication
17 Examples

Diesel engine CAN communication


This example demonstrates how to communicate with a diesel engine via a
CAN bus using the SAE J1939 protocol.
Add a function group with the name Diesel engine.
In that group, add a J1939 frame input (JFIN) channel. It is located on the
J1939 tab in the channel tool bar. Rename it to Engine temperatures. This
channel type will read and decode a J1939 CAN message. A CAN mes-
sage is called a parameter group in SAE J1939. Each parameter group
consists of one or more parameters. Well add those later.

An excerpt from the SAE J1939 specification.

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.

IQANdesign User manual 384


Diesel engine CAN communication
17 Examples

Add a parameter property.

A property, Parameter 1, is added. On property Channel, click the button


to the right to add the actual parameter channel.

Add a parameter in channel.

A dialog box is shown, asking you for a channel name. Enter Engine
Coolant Temperature and click OK.

IQANdesign User manual 385


Diesel engine CAN communication
17 Examples

New channel name.

A J1939 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 specifica-
tion.

An excerpt from the SAE J1939 specification.

It should look like this:

Engine Coolant Temperature properties.

IQANdesign User manual 386


Diesel engine CAN communication
17 Examples

Add two more parameters to the parameter group, Fuel Temperature and
Engine Oil Temperature in the same way as described above. Set proper-
ties from the specification.

Fuel temperature and Engine Oil Temperature in the SAE J1939 specification.

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].

Set offset graphically.

IQANdesign User manual 387


Diesel engine CAN communication
17 Examples

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 graphi-
cally. The grid will show you which positions are available.

Parameter Engine Oil Temperature positioned at Byte 3.

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:

A blue arrow indicates function group outputs.

IQANdesign User manual 388


Diesel engine CAN communication
17 Examples

Now we will add the diesel engine module and a J1939 CAN bus to the
system. Go to System. Select the J1939 tab in the modules tool bar. Drag a
J1939 bus and drop it on the system overview.
Rename the bus to Engine bus. The MDL2 property J1939 source address
defines IQANs address on the J1939 bus and is by default set to 39.
Change this if the diesel engine requires IQAN to be another address.
Connect CAN port B on the MDL2 to the J1939 bus.
Add a J1939 module to the system and connect it 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.

J1939 bus and module has been added to the system.

Drag the parameter group channel Engine temperatures and drop it on the
Diesel engine module.
Youre done!

IQANdesign User manual 389


Sending a text message
17 Examples

Sending a text message


This example will show you how to compose a text message and send it to a
mobile phone using SMS (Short Message Service).
We want to send Vehicle speed and Engine Coolant Temperature in one
text message to our service mobile phone when the engine temperature
exceeds 100 C. Start with the message composition.
Add a Text formatting channel (TFC). It is located on the Interface tab on
the channel tool bar. Set name to Text msg.
Click the button to the right on property Texts to add a text property. Set its
Text property to Speed [km/h] = .
Add another text property. Set its Text property to channel Vehicle speed,
and Show property to Value.
Add another text property. Set its Text property to and Engine temp [C]
= .
Add another text property. Set its Text property to channel Engine Coolant
Temperature, and Show property to Value.

Text formatting channel properties.

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 num-
ber 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 a dis-
play modules 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 Oper-
IQANdesign User manual 390
Sending a text message
17 Examples

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.

Speed [km/h] = 23
and Engine temp [C]
= 101

Text message at receiving mobile phone.

The Application editor should now look something like this:

SMS out function.

IQANdesign User manual 391


Using states on a boom function
17 Examples

Using states on a boom function


In this example the difference between the state machine channel and the
state parameter channel will be explained.
The channels are similar, and both of them can be used in channels and con-
trols that have either the property function selector or mode selector.
The difference is that the state machine channel (SMC) contains logic to
select the active state, while the state parameter channel (SP) is controlled as
an adjust item or by another channel.

State machine
To explain the SMC we will use an example of a crane that can be controlled
from two places, either from the cabin or from a radio remote. To follow this
tutorial, it might be good to first have a look at the example Controlling a
boom function.
First, start by adding the modules, an IQAN-MDL2, an IQAN-Lx and a
radio module. Give the modules understandable names.
To decide if the crane is controlled from the joystick in the cabin or from the
radio control, at least one selector switch is needed. To improve the safety of
this function, two digital inputs will be used to decide the active control.
Add two digital inputs, name them Sw Radio control active and Sw cabin
control active. Assign them to the MDL2.
Add a state machine channel to the application and name it Remote con-
trol state. The state machine channel is found on the tab Miscellaneous in
the application view.
Left click on the state machine channel. On the bottom panel the function
inspector will appear. Right click on the tab named New State and select
Rename. Name it Cabin control.
Right click on the same tab again and select Add State. Give the new state
the name Radio control.
Left click on the state machine. In the property inspector to the right a
property called Default state name will appear. Change it to Error or dis-
abled.
All states in state machine except the default state have activating and block-
ing objects just like internal digital channels. Only one state can be active at
the same time. Each cycle the states are evaluated from left to right; the first
one to be true will become the active state. If no other states are true, the
default state will become true.
Select the state Cabin control in the function inspector. Right click in Acti-
vating and select Add Single. In the Property inspector, use the drop down
box to change it from True to Sw Cabin control active.

IQANdesign User manual 392


Using states on a boom function
17 Examples

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 Radio... = True Sw Radio... = False

Sw Cabin... = True Error or disabled Cabin control


Sw Cabin... = False Radio control Error or disabled

The state machine should look like this when finished.

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.

IQANdesign User manual 393


Using states on a boom function
17 Examples

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 Con-
trolling +/-, 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 proper-
ties 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 implement-
ing 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 adjust-
able.
To the left in the project manager, right click on Adjust groups and select
Add Adjust Group. Rename it to Crane.

IQANdesign User manual 394


Using states on a boom function
17 Examples

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 set-
tings between modes, see section Adjust groups on page 227.
To complete the rest of the crane, copy the function by marking the two joy-
stick 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.

IQANdesign User manual 395

Vous aimerez peut-être aussi