Académique Documents
Professionnel Documents
Culture Documents
Version 3.16
User manual
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,
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.
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
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
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
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
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
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.
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.
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.
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.
Fix the problem and click Refresh to check the application again. If youve
fixed it correctly, the item will now disappear from the list.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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
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.
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.
Main window
The main window of IQANdesign is divided into several panels.
Under the main menu there is a tool bar with the most common functions.
To the left, the 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.
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).
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.
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.
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.
System
Contains all modules and buses in the system.
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.
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.
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.
Application editor.
At the top of the editor, there is a tool bar. Use this tool bar to add channels to
your application. There is one button for each channel type available. Click
on a button to add a channel of that type, or drag the button and drop it at
desired position in the middle panel to add a channel there.
The middle panel of the editor shows the selected function groups content:
channels and sub-function groups. Drag and drop components to arrange
them the way you want. Select multiple components by dragging a box
around them. You can also add components to a selection by holding <Ctrl>
pressed while selecting.
Bookmarks
Use bookmarks to navigate efficiently in your application. Add or remove a
bookmark by right-clicking on a channel and select Toggle bookmark. There
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.
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.
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.
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.
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.
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>.
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.
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.
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.
Property inspector showing two properties with automatic value option, one enabled (Bar color) and
one disabled (Background color).
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.
Description example.
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.
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.
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
System > System image System overview image with all modules and CAN
buses in the application.
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 > 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
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.
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.
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.
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.
type to Text files (*.txt). Select the text file you created earlier and click Open.
The file compare dialog box is displayed, see above.
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.
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.
Switch to the Show again tab. Select the messages that you want to be shown
again.
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.
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.
Help
The help menu contains the usual menu items.
Contents
Will bring up the help file, which is this book as a PDF document.
Release Notes
Starts your web browser and displays release notes for this version of
IQANdesign.
Collected information
License number, name and The information you entered when IQANdesign was
company installed.
About
Displays a dialog box with licence and version information.
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.
FGI 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.
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.
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.
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.
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.
The function group output can be used in the parent function group as if it
were a channel in that function group.
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.
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
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).
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.
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.
To be able to edit the function group again, right-click on it and select Frozen
once more.
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.
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.
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.
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.
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.
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.
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.
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.
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.
t
Limiting object group
t
Function value
Activating
The activating object group is used with digital value channels, such as an
internal digital channel.
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.
Function value
t
The blocking object group is often used to make a function safe in certain
situations.
Increasing/Decreasing
These object groups are used to increase or decrease a channels value.
Channel value is increased/decreased when object group or object value
changes from False to True. If both increasing and decreasing object groups
changes simultaneously nothing happens with the channel value.
Used with counters.
Resetting
The resetting object group is used to reset a channels value to zero or a 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.
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
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.
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
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.
t
Activating objects in an activating object group
Function value
Or
Boolean disjunction. If one object is True or not equal to 0, the result is True,
otherwise False.
Applicable to all object groups except Controlling and Limiting.
Object A
t
Object B
t
Object group value
Or method.
T1 T2
Increasing object A
Increasing object B
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
Function value
Latching Or method.
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)
Out 2
Out 1
In 1 In 2
Vector object.
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.
Out 3
Out 2
Out 4
Out 1
In 1 In 2 In 3 In 4
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
Arithmetic
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
Trigonometric
Operand resolution for trigonometric operators is at least 0.1. Result resolu-
tion is at least 3 decimals.
Logical (bitwise)
Other
Status
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.
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
Out Positive
In Negative
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.
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.
No status No status.
Status values - OK
OK Status OK.
Log full (recycling) A log is full but will continue to log new
records by recycling old records.
Log full (stopped) A log is full and will not record any new
records until emptied.
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.
EXAMPLES
A voltage input gets status High alarm when its value rises above the value
specified by property High alarm.
A math channel gets status Division by zero when one of its function
objects generates a division by zero error.
Status tables
Each channel section in this chapter has a table listing all possible status 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.
Multiple address error There are more than one module with the same address
on the bus. Only applicable to IQAN expansion
modules.
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
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.
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.
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.
To import it on another computer, click Import and select the same file. For
each imported device that already exists in the database, you will be asked if
you want overwrite or keep the original.
Adjust
By adding this channel to an adjust group, it is possible to adjust its Min and
Max via a display module or IQANrun.
Error detection
Scaled 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.
Value
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.
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
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.
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
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.
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
Unit n/a
Type Digital
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.
Scaled max Enter the scaled value of the sensors maximum value.
Examples: 785 cm, 2350 RPM, etc.
Fast response
There is a faster method of detecting zero frequency, but at a sacrifice of low
frequencies.
This method has only an uncertainty of one sample time when a zero fre-
quency is detected.
Value
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.
Properties
Same properties as a frequency input channel with one addition.
Value
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.
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.
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.
Scaled max Enter the scaled value of the sensors maximum value.
Examples: 785 cm, 2350 RPM, etc.
Value
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.
Properties
Same properties as a pulse input channel with one addition.
Value
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.
Value
Unit %
Status
Inherited module status See section Inherited module status on page 99.
Properties
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.
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.
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.
Output characteristics
Current [mA]
Max current
Min current
Value
Unit mA
Status
Inherited module status See section Inherited module status on page 99.
% Function value
MR max
MR min
time
Resulting output signal
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
Unit %
Status
Inherited module status See section Inherited module status on page 99.
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.
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.
< on
< off Function value
off
on Channel value
Value
Unit n/a
Type Digital
Status
Inherited module status See section Inherited module status on page 99.
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.
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
Unit %
Status
Inherited module status See section Inherited module status on page 99.
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.
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.
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 (IMAC)
Range 2109
Type Analog (Integer number)
Status
Properties
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.
< 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.
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
Unit n/a
Type Digital
Status
Same status values as a math channel, see section Status on page 120.
Properties
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.
Feedback value
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
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.
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
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))
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
Unit %
Status
S
Y2
Y1
E E
Properties
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.
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
Unit %
Range 0% to 100%
Status
No further status values except the standard statuses; Disabled and OK.
Properties
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.
Adjust
By adding this channel to an adjust group, it is possible to adjust its value
with IQANrun. Property Store value must be set to Yes to be able to adjust it.
Reset value will be used when channel is reset.
Function
An event counter has increasing, decreasing and resetting object groups. The
resetting object group has the highest priority. The counter is incremented (or
decremented) when the increasing (or decreasing) object group switches from
False to True. This is valid also when an object group turns True because of a
state change.
When the resetting object group switches from False to True, the channel
value is reset to the value defined by property Reset value. As long as the
resetting object group is True, the counter is not affected by the increasing or
decreasing object group.
T1 T2
Increasing object groups value
t
Decreasing object groups value
Value
Unit n/a
Range 2109
Type Analog (Integer number)
Status
Properties
Input channel Select the channel whose value you want to memorize.
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.
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.
T1 T2 t
t
Input channels value
Value
Status
Properties
Input channel Select the input channel that you want to apply slope
times, BWL, filter or moving average to.
Slopes Enter start and stop slope values, for positive and
negative direction, in [unit]/s.
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.
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.
Input
Value [Unit]
Output
100
25%
50%
75%
90%
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
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.
Value
Status
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.
Properties
Input channel Select the input channel that you want to apply a
Butterworth filter to.
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.
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
Status
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.
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.
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
Status
Out of range Row or column input value is outside the range defined
by row or column index.
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.
Value
Status
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.
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.
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.
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
Status
No further status values except the standard statuses; Disabled and OK.
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
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.
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.
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.
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
Type Digital
Status
No further status values except the standard statuses; Disabled and OK.
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
Unit n/a
Type State
IQANdesign User manual 143
Miscellaneous channels
5 Channels
Status
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
Default state name This name is used for the default state. The default
state is the active state when no other state is active.
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
Unit n/a
Type State
Status
Out of range Input value is outside the range defined by the states.
Diagnostic values
0 Not evaluated
64 OK
203 No contact
0 Unknown Unknown
1 Initializing Initializing
2 Searching Searching
3 Idle Offline
4 Calling Online
5 Connected Connected
Value
Status
Depends on which value is measured.
Inherited module status See section Inherited module status on page 99.
Properties
Type constants
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.
Value
Status
No further status values except the standard statuses; Disabled and OK.
Value constants
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
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
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
Value
Status
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
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.
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
Status
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
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
Unit n/a
Type Text
Status
No further status values except the standard statuses; Disabled and OK.
Properties
Value
Unit n/a
Range 30 characters
Type Text
Status
No further status values except the standard statuses; Disabled and OK.
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
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.
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
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
Unit n/a
Type Digital
Status
Properties
Dialog type Select a dialog type. The dialog type decides the
priority level. Message has the lowest priority and
Critical has the highest. Dialogs with higher priority
are always shown before dialogs with lower priority.
System generated messages use types Message, Alarm
and Error.
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.
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
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
Status
Properties
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
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.
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
Type Digital
Status
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.
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 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).
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.
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.
Value
Value Value is set from incoming SMS that matches the Identification tag.
Status
No further status values except the standard statuses; Disabled and OK.
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
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
Unit n/a
Type Digital
Status
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
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.
NOTE
Store value is only applicable when Toggle is set to Yes.
Value
Unit n/a
Type Digital
Status
No further status values except the standard statuses; Disabled and OK.
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.
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
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
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
Unit n/a
Type Digital
Status
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.
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.
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.
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.
The parameter length is by default 1 byte=8 bits, you will find that value as a
property for the parameter in 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.
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.
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.
Value
Status
Inherited module status See section Inherited module status on page 99.
Properties
J1939 source address Enter the source address to use for this message. Set to
Default to use the modules default source address.
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.
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.
Parameter > Offset Enter the offset within this parameter group.
Alternatively, you can click the button to place it
graphically.
Value
Unit n/a
Type Digital
Status
Inherited module status See section Inherited module status on page 99.
Properties
Resolution [per bit] Specify the resolution (scaling) of this parameter, for
example 1C/bit or 0.125 RPM/bit.
Value
Unit n/a
Range 0 to (2Length-1)
If input value does not fit in range, value is set to 0.
Status
Inherited module status See section Inherited module status on page 99.
Properties
J1939 source address Enter the source address to use for this message. Set to
Default to use the modules default source address.
Input channel Select a channel to control the value of this output. The
selected channel should have a value range of 0 -
100%.
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.
Value
Unit RPM
Status
Inherited module status See section Inherited module status on page 99.
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.
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.
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
Unit n/a
Range >= 0
Status
Inherited module status See section Inherited module status on page 99.
Properties
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
Unit n/a
Range -1 to 31
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.
Properties
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
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
Unit n/a
Type Digital
Status
Inherited module status See section Inherited module status on page 99.
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.
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
Status
Inherited module status See section Inherited module status on page 99.
Properties
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.
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
Unit n/a
Type Digital
Status
Inherited module status See section Inherited module status on page 99.
Properties
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
Unit n/a
Range 0 to (2Length-1)
If input value does not fit in range, value is set to 0.
Status
Inherited module status See section Inherited module status on page 99.
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
Status
Properties
Input channel Select the channel that you want to send to other
applications.
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.
Value
Status
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
Awaiting
reset
Fault gone
Enable
Disable
Channel Disabled
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
Scaled
value
Raw value
Properties
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.
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.
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
Unit n/a
Type Digital
Status
Diff check error Abs(Primary - Secondary) > Diff check limit for a
continuous period longer than Detection delay.
Properties
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.
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.
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
Unit n/a
Type Digital
Status
Properties
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.
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.
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.
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
Unit n/a
Type Digital
Status
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.
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.
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.
Master modules
This section contains information on the different master modules available
for an IQAN application.
Comparison table
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
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.
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.
Channel 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).
To see the IP addresses for your MD4 Ethernet ports, go to menu system and
select Info > Modules > [Your MD4].
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.
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.
Channel 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
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.
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.
Channel 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
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.
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.
Channel 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).
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.
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 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.
Channel 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.
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.
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.
Channel properties
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
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
LC5
Lever expansion module.
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.
Channel properties
XA2
All-round expansion module with both inputs and outputs.
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.
XS2
Expansion module with focus on inputs.
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.
XC10
Expansion module with focus on inputs.
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.
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.
XC21/XC22/XC23
Expansion modules with focus on inputs.
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.
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.
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
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]
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 DTM (Data Transfer Message) diagnostic
priorities > DTM priority message.
The highest priority is zero and the lowest priority is
seven. SAE J1939 default priority is 7.
J1939 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.
Channel properties
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
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.
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
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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
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.
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.
Properties
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.
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.
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.
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.
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.
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.
Properties
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.
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.
Gray Info
Green OK
Yellow Warning
Red Error
For more information, see section Value and status on page 95.
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.
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
Peak to Peak The difference between Max and Min described above.
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.
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 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>.
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.
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.
PWM in Min []
Max []
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.
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.
Properties
Channel The channel that this adjust item adjusts. This property
cannot be edited.
Properties
Channel The channel that this adjust item adjusts. This property
cannot be edited.
Properties
Channel The channel that this adjust item adjusts. This property
cannot be edited.
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.
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
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
Text parameter
The text parameter is used for the text parameter channel and contains limits
for the length of the text.
Properties
Min length Minimum length allowed for the text parameter. See
also property Max length.
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.
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
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
Status
The status of a log can be used in status comparisons in channels.
Status Description
OK Status OK.
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.
Critical Log error Failed writing. The log has been stopped!
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.
System started -
NOTE
Some events are not stored until the system is restarted.
Properties
These are the properties for the system log.
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.
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.
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.
Properties
These are the properties for an event log.
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.
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.
Properties
Log value Select the channel which value will be logged when the
log condition is fulfilled.
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.
Properties
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.
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.
Properties
These are the properties for an statistics log.
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.
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.
Properties
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.
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.
Language properties
These are the properties for a language component.
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.
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.
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.
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).
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.
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.
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.
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.
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.
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.
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.
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.
Startup image Select the image that you want to be shown at system
startup. See also section Start up image on page 303.
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.
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.
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.
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.
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.
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.
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.
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.
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
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
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.
Caption
Button text
Properties
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.
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.
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.
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.
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.
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.
Linear bar
This control is used to display a linear bar graph, for example fuel level.
Border
Background
Bar
Properties
Visible Select Yes to make this control visible all the time, or
select a digital value channel to control visibility at run
time.
Input channel Select the channel that controls the value of this
control.
Bar length Specify the length and width of the bar in pixels.
Bar width These properties are available on all other 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.
Circular bar
This control is used to display a circular bar graph, typically for temperatures,
levels, etc.
Circular bar.
Properties
Visible Select Yes to make this control visible all the time, or
select a digital value channel to control visibility at run
time.
Input channel Select the channel that controls the value of this
control.
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.
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.
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.
Background image Select the images that you want to use as background
Foreground image and foreground.
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.
Properties
Visible Select Yes to make this control visible all the time, or
select a digital value channel to control visibility at run
time.
Input channel Select the channel that controls the value of this
control.
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 > Show labels Specify if labels should be shown for the tickmarks.
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.
Needle
Anchor
Dial
Properties
Visible Select Yes to make this control visible all the time, or
select a digital value channel to control visibility at run
time.
Input channel Select the channel that controls the value of this
control.
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.
Dial image Select the image that you want to use as dial
(background).
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.
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.
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)
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.
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.
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.
Background image Select the images that you want to use as background
Needle image and needle.
Needle image
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.
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.
Text Enter the text that you want displayed on the button.
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.
Properties
Visible Select Yes to make this control visible all the time, or
select a digital value channel to control visibility at run
time.
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.
Images > Up/Down/ Button images for button states up, down and disabled.
Disabled
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.
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.
Properties
Visible Select Yes to make this control visible all the time, or
select a digital value channel to control visibility at run
time.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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
the dialog box. See also section Conditional message - CMSG on page 154
and section Interactive message - IMSG on page 157.
Button properties
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 1, 2, ... One action property per state is created when property
Action selector is used. Same function as property
Default action.
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.
Action 1, 2, ... One action property per state is created when property
Action selector is used. Same function as property
Default action.
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.
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.
Pixel positions
F1 24
F2 102
F3 180
F4 258
F5 336
ESC 392
A 7
B 55
C 103
D 152
Menu 200
Pixel positions
F1 35
F2 120
F3 205
F4 290
Up 60
Enter 120
Down 180
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.
Properties
Color stops > Stop 1, 2, ... Color and position for each color stop.
> Color/Position
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%.
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.
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.
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
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.
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.
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.
image. Optionally you can also change the color of the image. This is done in
the Convert Image dialog box that appears.
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.
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.
Modules Modules are not exported (except the master where the
display pages are located).
For more information about export and import see section Export/Import on
page 75.
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.
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.
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.
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.
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.
Password types
There are two password types available in IQANdesign; Full access password
and Component password.
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.
Add password
Whenever you enter a password for a protected file or component, you will be
asked whether you want to add the password to your database. Click Yes to
store the password.
The password is stored and will be used automatically when IQANdesign
detects the need for it next time.
If you click No, the password is added to the database anyway but only 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.
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.
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.
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.
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.
Click Create to create a safe password based on your selections. The safe
password is displayed in a separate dialog box, see image below.
Send the safe password back to the user by clicking Send as Mail, or use
Copy to copy it to Windows clipboard.
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.
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.
Properties
These are the properties for an access level component.
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.
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.
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.
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.
Adjust groups Access level for view/adjust and set factory default
value.
IQANsimulate synchronization
IQANdesign and IQANsimulate both have features that allow you to control
a simulation from either user interface.
After making sure the project matches the simulation file, IQANsimulate will
update the simulation file with the new project and then start the simulation.
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.
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.
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.
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 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.
Communication menu.
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.
Get project
Before getting a project from the IQAN system, be sure all connections
between the PC and the master are completed.
Getting project.
Abort transmission
If the transmission has to be stopped, click Cancel.
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.
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.
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.
Disconnect
When your done, disconnect from the remote system using Communication >
Disconnect.
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.
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.
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.
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.
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.
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.
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
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.
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.
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.
Error, both the MD3 and the MC2 has been connected to the expansion bus.
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.
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.
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.
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.
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.
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.
Missing modules
If a master module is missing, the other applications will be in limited opera-
tion. Two special cases exists:
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:
The same dialog will be shown if there is more than one module with address
0 on the bus.
IQANrun dialog, an incomplete clone can not be sent if that would cause a project revision mismatch.
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.
General guidelines
These are general guidelines that improve the readability of an IQANdesign
application.
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.
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
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.
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
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.
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
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
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.
Calculation order
The application should not have any unintentional priority warnings. See sec-
tion Calculation order on page 68.
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.
Safety principles
Start and restart conditions Consider safe start and restart conditions.
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.
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.
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.
The compare channels AAC, ADC and DDC can also be used in the imple-
mentation of safe start and restart conditions.
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.
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.
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).
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.
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.
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.
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.
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.
Channel renamed.
Connect the frequency input to the master module in the same way as you
did with the voltage input.
Now, we will add a display page and a couple of controls that will be used
to display our voltage input and frequency input values. Right-click on
Master display pages under User interface in the project manager and
select Add display page in the popup menu.
Rename the display page by pressing <F2>, enter Main page and press
<Enter>. Set property Show to Always to make this page visible.
Select Main page in the 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.
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
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.
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.
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.
The gauge needle is by default positioned in the center of the image. This
is not correct for this gauge. In the folder where you found the image,
there is also a text file with all the property values you need to position the
needle correctly. Enter all these properties, see image below.
Set property Input channel to our frequency input Vehicle speed [km/h].
Now, we want to save our 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.
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.
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.
Simulator running.
Stop your simulation by clicking the Stop button in the main tool bar.
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.
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:
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.
Drag a lever module (Lx) and an expansion module (XA2) to the system
overview.
Connect the master module, lever and expansion module to the expansion
bus by dragging each modules CAN port A to the added 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.
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
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.
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.
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
The vector objects value will be 100% for Input values up to 1.75 meters,
decrease linearly down to 20% when Input goes from 1.75 to 2 meters and
then stay at 20% for all Input values higher than 2 meters. Since this
object was placed in the Limiting + object group that has higher priority
than the Controlling object group it will limit the math channels value
when we get close to outgoing end position. Note that it will only limit the
value, never increase it. For example, if the controlling object is 25% and
the limiting object is 50% the channel value will still be only 25%.
Add a vector object to the Limiting - object group to get end damping in
the other end position as well. See property values below:
The Limiting + object group will only be calculated when the output is
controlling the positive direction, that is, when the output value is greater
than 0, and vice versa for the Limiting - object group.
Fix the last priority problem by changing the calculation order. The func-
tion group and function inspector should now look like this:
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.
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.
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.
A dialog box is shown, asking you for a channel name. Enter Engine
Coolant Temperature and click OK.
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].
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.
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.
Drag the parameter group channel Engine temperatures and drop it on the
Diesel engine module.
Youre done!
Speed [km/h] = 23
and Engine temp [C]
= 101
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.
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
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.
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.