COLLECT

Befehl:

COLLECT <sensor1> AND <sensor2> TIME t RATE r

Befehlssyntax:

COLLECT <sensor1> AND <sensor2> TIME t RATE r

Vorgabewert:
value:

Vorgabewert für TIME: 10 Sekunden

Vorgabewert für Rate: 4 (Zufallsstichproben/Sekunde)

Bereich:

Maximal 4 Sensoren

Bereich für TIME: 1 - 100 (Sekunden)

Bereich für RATE: 1 - 10 (Zufallsstichproben pro Sekunde)

Code
Sample:

TI-Nspire™:

Send "CONNECT TEMPERATURE 1 TO IN 1"

Send "COLLECT TEMPERATURE 1 TIME 5 RATE 4"

Wait 6

Send "READ LIST TEMPERATURE 1"

Get listtemp

Send "READ LIST TIME"

Get listtime

Code
Sample:

CE family:

Send("COLLECT BRIGHTNESS RATE 5 TIME 5")

Wait 6

Send("READ LIST BRIGHTNESS")

Get(L₁)

Send("READ LIST TIME")

Get(L₂)

Disp L₁

Disp L₂

Beschreibung:

 

Ergebnis:

Der Befehl „READ LIST TIME“ gibt die Zufallsstichprobenzeiten zurück, die den Sensor-Zufallsstichprobenwerten entsprechen.

Jeder Befehl „READ LIST“ gibt maximal 64 Datenpunkte zurück.

Bei Erfassungen, die 64 Zufallsstichproben überschreiten, muss das Programm den Befehl „READ LIST“ mehrmals verwenden und die daraus resultierenden Listen kombinieren.

Typ oder
Adressierbare Komponente:

Dieser Befehl kann mit den meisten Sensoren verwendet werden.

Der Befehl kann nicht bei vielen I2C-Sensoren oder den in TI-Innovator™ Rover eingebauten Sensoren RV.COLORINPUT und RV.GYRO verwendet werden.

Dieser Befehl funktioniert mit dem RV.RANGER-Sensor.

Bei 64 Zufallsstichproben überschreitenden Erfassungen muss das Programm den Befehl „READ LIST“ mehrmals verwenden und die daraus resultierenden Listen kombinieren.

Beispiel:

1. Dieses TI-Nspire™-Programm erfasst 10 Zufallsstichproben pro Sekunde für 10 Sekunden von einem Temperatursensor – insgesamt 101 Zufallsstichproben.

Code
Sample:

Send "CONNECT TEMPERATURE 1 TO IN 1"

Send "COLLECT TEMPERATURE 1 TIME 10 RATE 10"

Wait 11

Send "READ LIST TEMPERATURE 1"

Get readbuffer

listtemp1:=readbuffer

While dim(readbuffer)=64

••Send "READ LIST TEMPERATURE 1"

••Wait 0.2

••Get readbuffer

••listtemp1:=augment(listtemp1,readbuffer)

EndWhile

Send "READ LIST TIME"

Get readbuffer listtime:=readbuffer

While dim(readbuffer)=64

••Send "READ LIST TIME"

••Wait 0.2

••Get readbuffer

••listtime:=augment(listtime,readbuffer)

EndWhile

Der Befehl „Wait 0.2“ zwischen den Befehlen „Send“ und „Get“ wird benötigt, um sicherzustellen, dass alle Daten vom Programm eingelesen werden, bevor der nächste Stapel gelesen wird.

Diese Verzögerung ist nur auf den TI-Nspire™ CX und TI-Nspire™ CX II Handhelds erforderlich.

2. Dieses CE-Programm erfasst 8 Zufallsstichproben pro Sekunde für 10 Sekunden vom eingebauten BRIGHTNESS (HELLIGKEITS)-Sensor. Die Gesamtanzahl der Zufallsstichproben beträgt 81, sodass das Programm READ LIST zweimal verwenden muss, um alle Zufallsstichproben zu erhalten und dann die Listen zu kombinieren.

Code-
Beispiel:

Send("COLLECT BRIGHTNESS RATE 8 TIME 10")

Wait 11

Send("READ LIST BRIGHTNESS")

Get(L₁)

Send("READ LIST BRIGHTNESS")

Get(L₂)

Send("READ LIST TIME")

Get(L₃)

Send("READ LIST TIME")

Get(L₄)

augment(L₁,L₂)→L₁

augment(L₃,L₄)→L₃

Disp dim(L₁)

Disp dim(L₃)

Disp L₁

Disp L₃

3. Dieses TI-Nspire™-Programm erfasst Zufallsstichproben von 2 Sensoren.

Code-
Beispiel:

Send "CONNECT DHT1 TO IN 1"

Send "CONNECT VERNIER 1 TO IN 2 AS PRESSURE"

Send "COLLECT DHT 1 AND VERNIER 1 TIME 10 RATE 4"

@ Dadurch werden 41 Zufallsstichproben für jeden Sensor erfasst

Wait 10

Send "READ LIST DHT1 TEMPERATURE"

Get list1

Send "READ LIST DHT1 HUMIDITY"

Get list2

Send "READ LIST VERNIER 1"

Get list3

Send "READ LIST TIME"

Get list4

 

Hinweis:

1. Der Befehl COLLECT kann nicht für einige RV-Sensoren wie RV.GYRO oder RV.COLORINPUT verwendet werden. Der Befehl wird mit RV.RANGER ausgeführt

Der Befehl kann mit Sensoren verwendet werden, die an den Hub angeschlossen sind, während sich der Hub im TI-Innovator™ Rover befindet.

2. Die Datenerfassung beginnt, sobald der Befehl verarbeitet wird.
3. Ein Fehler wird angezeigt, wenn während einer aktiven Erfassung ein READ LIST-Befehl ausgegeben wird.
4. Andere SET- und READ-Befehle können verarbeitet werden, während ein Befehl COLLECT ausgeführt wird, solange der Befehl READ keinen Sensor verwendet, der Teil des Befehls COLLECT ist.
5. Der Befehl AVERAGING wirkt sich nur dann auf die mit einem Befehl COLLECT erfassten Daten aus, wenn dieser vor den Befehlen CONNECT ausgegeben wird. Siehe die Dokumentation für den Befehl AVERAGING.