Campbell Scientific CR1000KD CR1000 Measurement and Control System - Page 160

CRBasic Example 29., FieldCal Multiplier and Offset Demonstration Program

Page 160 highlights

Section 7. Installation 4. When variable CalMode increments to 6, the deployment calibration is complete. Calibrated multiplier is -0.08. Calibrated offset is 53.978. 5. To continue this example, simulate a two-stage, 7-day service calibration wherein both multiplier and offset drift (output @ 30 l/s = 285 mV, output @ 10 l/s = 522 mV). a. Set variable SignalmV to 285. Set variable KnownFlow to 30.0. b. Start the 7-day, service calibration by setting variable CalMode = 1. c. When CalMode increments to 3, set variable SignalmV to 522. Set variable KnownFlow to 10. d. Resume the 7-day service calibration by setting variable CalMode = 4 6. When variable CalMode increments to 6, the 7-day, service calibration is complete. Calibrated multiplier is -0.0842. Calibrated offset is 53.896. CRBasic Example 29. FieldCal() Multiplier and Offset Demonstration Program 'Jumper VX1/EX1 to SE6(3L) to simulate a sensor Public SignalmV Public KnownFlow Public CalMode 'Excitation mV output 'Known water flow 'Calibration trigger Public Multiplier Public Offset Public WaterFlow 'Sensitivity 'Offset (starts at zero, not changed) 'Water flow 'Data Storage Output of Calibration Data ─ stored whenever a calibration occurs DataTable(CalHist,NewFieldCal,200) SampleFieldCal EndTable BeginProg Multiplier = 1 Offset = 0 LoadFieldCal(true) 'Load the CAL File, if possible Scan(100,mSec,0,0) 'Simulate measurement by exciting channel VX1/EX1 ExciteV(Vx1,SignalmV,0) 'Make the calibrated measurement VoltSE(WaterFlow,1,mV2500,6,1,0,250,Multiplier,Offset) 'Perform a calibration if CalMode = 1 FieldCal(2,WaterFlow,1,Multiplier,Offset,CalMode,KnownFlow,1,30) 'If there was a calibration, store it into a data table CallTable(CalHist) NextScan EndProg 160

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106
  • 107
  • 108
  • 109
  • 110
  • 111
  • 112
  • 113
  • 114
  • 115
  • 116
  • 117
  • 118
  • 119
  • 120
  • 121
  • 122
  • 123
  • 124
  • 125
  • 126
  • 127
  • 128
  • 129
  • 130
  • 131
  • 132
  • 133
  • 134
  • 135
  • 136
  • 137
  • 138
  • 139
  • 140
  • 141
  • 142
  • 143
  • 144
  • 145
  • 146
  • 147
  • 148
  • 149
  • 150
  • 151
  • 152
  • 153
  • 154
  • 155
  • 156
  • 157
  • 158
  • 159
  • 160
  • 161
  • 162
  • 163
  • 164
  • 165
  • 166
  • 167
  • 168
  • 169
  • 170
  • 171
  • 172
  • 173
  • 174
  • 175
  • 176
  • 177
  • 178
  • 179
  • 180
  • 181
  • 182
  • 183
  • 184
  • 185
  • 186
  • 187
  • 188
  • 189
  • 190
  • 191
  • 192
  • 193
  • 194
  • 195
  • 196
  • 197
  • 198
  • 199
  • 200
  • 201
  • 202
  • 203
  • 204
  • 205
  • 206
  • 207
  • 208
  • 209
  • 210
  • 211
  • 212
  • 213
  • 214
  • 215
  • 216
  • 217
  • 218
  • 219
  • 220
  • 221
  • 222
  • 223
  • 224
  • 225
  • 226
  • 227
  • 228
  • 229
  • 230
  • 231
  • 232
  • 233
  • 234
  • 235
  • 236
  • 237
  • 238
  • 239
  • 240
  • 241
  • 242
  • 243
  • 244
  • 245
  • 246
  • 247
  • 248
  • 249
  • 250
  • 251
  • 252
  • 253
  • 254
  • 255
  • 256
  • 257
  • 258
  • 259
  • 260
  • 261
  • 262
  • 263
  • 264
  • 265
  • 266
  • 267
  • 268
  • 269
  • 270
  • 271
  • 272
  • 273
  • 274
  • 275
  • 276
  • 277
  • 278
  • 279
  • 280
  • 281
  • 282
  • 283
  • 284
  • 285
  • 286
  • 287
  • 288
  • 289
  • 290
  • 291
  • 292
  • 293
  • 294
  • 295
  • 296
  • 297
  • 298
  • 299
  • 300
  • 301
  • 302
  • 303
  • 304
  • 305
  • 306
  • 307
  • 308
  • 309
  • 310
  • 311
  • 312
  • 313
  • 314
  • 315
  • 316
  • 317
  • 318
  • 319
  • 320
  • 321
  • 322
  • 323
  • 324
  • 325
  • 326
  • 327
  • 328
  • 329
  • 330
  • 331
  • 332
  • 333
  • 334
  • 335
  • 336
  • 337
  • 338
  • 339
  • 340
  • 341
  • 342
  • 343
  • 344
  • 345
  • 346
  • 347
  • 348
  • 349
  • 350
  • 351
  • 352
  • 353
  • 354
  • 355
  • 356
  • 357
  • 358
  • 359
  • 360
  • 361
  • 362
  • 363
  • 364
  • 365
  • 366
  • 367
  • 368
  • 369
  • 370
  • 371
  • 372
  • 373
  • 374
  • 375
  • 376
  • 377
  • 378
  • 379
  • 380
  • 381
  • 382
  • 383
  • 384
  • 385
  • 386
  • 387
  • 388
  • 389
  • 390
  • 391
  • 392
  • 393
  • 394
  • 395
  • 396
  • 397
  • 398
  • 399
  • 400
  • 401
  • 402
  • 403
  • 404
  • 405
  • 406
  • 407
  • 408
  • 409
  • 410
  • 411
  • 412
  • 413
  • 414
  • 415
  • 416
  • 417
  • 418
  • 419
  • 420
  • 421
  • 422
  • 423
  • 424
  • 425
  • 426
  • 427
  • 428
  • 429
  • 430
  • 431
  • 432
  • 433
  • 434
  • 435
  • 436
  • 437
  • 438
  • 439
  • 440
  • 441
  • 442
  • 443
  • 444
  • 445
  • 446
  • 447
  • 448
  • 449
  • 450
  • 451
  • 452
  • 453
  • 454
  • 455
  • 456
  • 457
  • 458
  • 459
  • 460
  • 461
  • 462
  • 463
  • 464
  • 465
  • 466
  • 467
  • 468
  • 469
  • 470
  • 471
  • 472
  • 473
  • 474
  • 475
  • 476
  • 477
  • 478
  • 479
  • 480
  • 481
  • 482
  • 483
  • 484
  • 485
  • 486
  • 487
  • 488
  • 489
  • 490
  • 491
  • 492
  • 493
  • 494
  • 495
  • 496
  • 497
  • 498
  • 499
  • 500
  • 501
  • 502
  • 503
  • 504
  • 505
  • 506
  • 507
  • 508
  • 509
  • 510
  • 511
  • 512
  • 513
  • 514
  • 515
  • 516
  • 517
  • 518
  • 519
  • 520
  • 521
  • 522
  • 523
  • 524
  • 525
  • 526
  • 527
  • 528
  • 529
  • 530
  • 531
  • 532
  • 533
  • 534
  • 535
  • 536
  • 537
  • 538
  • 539
  • 540
  • 541
  • 542
  • 543
  • 544
  • 545
  • 546
  • 547
  • 548
  • 549
  • 550
  • 551
  • 552
  • 553
  • 554
  • 555
  • 556
  • 557
  • 558
  • 559
  • 560
  • 561
  • 562
  • 563
  • 564
  • 565
  • 566
  • 567
  • 568
  • 569
  • 570
  • 571
  • 572
  • 573
  • 574
  • 575
  • 576
  • 577
  • 578
  • 579
  • 580
  • 581
  • 582
  • 583
  • 584
  • 585
  • 586
  • 587
  • 588

Section 7.
Installation
160
4.
When variable
CalMode
increments to
6
, the deployment calibration is
complete. Calibrated multiplier is
-0.08
. Calibrated offset is
53.978
.
5.
To continue this example, simulate a two-stage, 7-day service calibration
wherein both multiplier and offset drift (output @ 30 l/s = 285 mV, output @
10 l/s = 522 mV).
a.
Set variable
SignalmV
to
285
. Set variable
KnownFlow
to
30.0
.
b.
Start the 7-day, service calibration by setting variable
CalMode
=
1
.
c.
When
CalMode
increments to
3
, set variable
SignalmV
to
522
. Set
variable
KnownFlow
to
10
.
d.
Resume the 7-day service calibration by setting variable
CalMode
=
4
6.
When variable
CalMode
increments to
6
, the 7-day, service calibration is
complete. Calibrated multiplier is
-0.0842
. Calibrated offset is
53.896
.
CRBasic Example 29.
FieldCal() Multiplier and Offset Demonstration Program
'Jumper VX1/EX1 to SE6(3L) to simulate a sensor
Public
SignalmV
'Excitation mV output
Public
KnownFlow
'Known water flow
Public
CalMode
'Calibration trigger
Public
Multiplier
'Sensitivity
Public
Offset
'Offset (starts at zero, not changed)
Public
WaterFlow
'Water flow
'Data Storage Output of Calibration Data
stored whenever a calibration occurs
DataTable
(CalHist,NewFieldCal,200)
SampleFieldCal
EndTable
BeginProg
Multiplier = 1
Offset = 0
LoadFieldCal
(true)
'Load the CAL File, if possible
Scan
(100,mSec,0,0)
'Simulate measurement by exciting channel VX1/EX1
ExciteV
(Vx1,SignalmV,0)
'Make the calibrated measurement
VoltSE
(WaterFlow,1,mV2500,6,1,0,250,Multiplier,Offset)
'Perform a calibration if CalMode = 1
FieldCal
(2,WaterFlow,1,Multiplier,Offset,CalMode,KnownFlow,1,30)
'If there was a calibration, store it into a data table
CallTable
(CalHist)
NextScan
EndProg