Campbell Scientific CR1000KD CR800 and CR850 Measurement and Control Systems - Page 179

SDI12Recorder, Table 26., SDI12Recorder Commands

Page 179 highlights

Section 7. Installation instruction parameter), the CR800 issues the aM! AND aD0! commands with proper elapsed time between the two. The CR800 automatically issues retries and performs other services that make the SDI-12 measurement work as trouble free as possible. Table SDI-12Recorder() Commands (p. 179) summarizes CR800 actions triggered by some SDI12Recorder() commands. If the SDI12Recorder() instruction is not successful, NAN will be loaded into the first variable. See NAN and ±INF (p. 408) for more information. Table 26. SDI12Recorder() Commands SDIRecorder() Instruction SDICommand Entry Actions Internal to CR800 and Sensor Mv! CR800: Issues aMv! command. Sensor: Responds with atttnn. CR800: Waits until ttt1 seconds (unless a service request is received). Issues aDv! command(s). If a service request is received, issues aDv! immediately. Sensor: Responds with data. Cv! CR800: Issues aCv! command. Sensor: Responds with atttnn. CR800: If ttt=0 then issues aDv! command(s). Sensor: Responds with data. CR800: Else, if ttt>0 then moves to next CRBasic program instruction. CR800: At next time SDIRecorder() is executed, if elapsed time < ttt, moves to next CRBasic instruction. CR800: Else, issues aDv! command(s). Sensor: Responds with data. CR800: Issues aCv! command (to request data for next scan). Cv (note - no ! termination)2 CR800: Tests to see if ttt expired. If ttt not expired, loads 1e9 into first variable and then moves to next CRBasic instruction. If ttt expired, issues aDv! command(s). Sensor: Responds to aDv! command(s) with data, if any. If no data, loads NAN into variable. CR800: Moves to next CRBasic instruction (does not re-issue aCv! command). 1Note that ttt is local only to the SDIRecorder() instruction. If a second SDIRecorder() instruction is used, it will have its own ttt. 2Use variable replacement in program to use same instance of SDI12Recorder() as issued aCV! (see the CRBasic example Using SDI12Recorder() C Command ). 179

  • 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

Section 7.
Installation
179
instruction parameter), the CR800 issues the
aM!
AND
aD0!
commands with
proper elapsed time between the two.
The CR800 automatically issues retries and
performs other services that make the SDI-12 measurement work as trouble free
as possible.
Table
SDI-12Recorder() Commands
(p. 179)
summarizes CR800
actions triggered by some
SDI12Recorder()
commands.
If the
SDI12Recorder()
instruction is not successful, NAN will be loaded into the
first variable.
See
NAN and ±INF
(p. 408)
for more information.
Table 26.
SDI12Recorder() Commands
SDIRecorder() Instruction
SDICommand
Entry
Actions Internal to
CR800 and Sensor
Mv!
CR800: Issues
aMv!
command.
Sensor: Responds with
atttnn.
CR800: Waits until
ttt
1
seconds (unless a
service request is received). Issues
aDv!
command(s).
If a service request is received,
issues
aDv!
immediately.
Sensor: Responds with data.
Cv!
CR800: Issues
aCv!
command.
Sensor: Responds with
atttnn.
CR800: If
ttt
=0 then issues
aDv!
command(s).
Sensor: Responds with data.
CR800: Else, if
ttt
>0 then moves to next
CRBasic program instruction.
CR800: At next time
SDIRecorder()
is
executed, if elapsed time <
ttt
, moves to next
CRBasic instruction.
CR800: Else, issues
aDv!
command(s).
Sensor: Responds with data.
CR800: Issues
aCv!
command (to request data
for next scan).
Cv
(note — no ! termination)
2
CR800: Tests to see if
ttt
expired.
If
ttt
not
expired, loads
1e9
into first variable and then
moves to next CRBasic instruction.
If
ttt
expired, issues
aDv!
command(s).
Sensor: Responds to
aDv!
command(s) with
data, if any.
If no data, loads NAN into
variable.
CR800: Moves to next CRBasic instruction
(does not re-issue
aCv!
command).
1
Note that
ttt
is local only to the
SDIRecorder()
instruction.
If a second
SDIRecorder()
instruction is used, it will have its own
ttt
.
2
Use variable replacement in program to use same instance of
SDI12Recorder()
as issued
aCV!
(see the CRBasic example Using SDI12Recorder() C Command
).