Calculator-Based Laboratory, CBL, and CBL 2 are trademarks of Texas Instruments Incorporated.
LabPro is a trademark of Vernier Software & Technology.
Santoprene is a registered trademark of Monsanto.
2000 Texas Instruments Incorporated. All rights are reserved.
Contents
Introduction5
Miscellaneous Reference Information5
CBL 2 Software Upgrades5
Data Collection Modes5
Realtime Sampling5
Non-Realtime Sampling6
FastMode Sampling6
Mode Comparison Table7
Beep Sequences8
Archiving in CBL 2’s
Memory9
FLASH
Technical Specifications for Sensors10
TI Light Sensor10
TI Light Sensor Specifications10
Stainless Steel Temperature Sensor10
Stainless Steel Temperature Sensor Specifications11
Temperature Accuracy12
Stainless Steel Temperature Sensor Chemical Tolerance12
TI Temperature Sensor Note13
TI Voltage Sensor13
Auto-ID Sensors14
Custom Sensors15
Connector Pinouts16
Programming the CBL 217
Digital Output Buffer17
Digital Output Buffer Example17
Triggering and Thresholds18
Measuring Period and Frequency19
Example: Measuring Frequency20
Asynchronous/ Synchronous Triggering versus Record Time21
Example21
CBL 2 Command Summary22
Command 0 Reset CBL 2 RAM23
Command 1 Channel Setup23
Command 2 Data Type26
Command 3 Trigger Setup26
2CBL 2 Technical Reference
Command 4 Conversion Equation Setup (Analog)28
Command 4 Sonic Temperature Compensation (Sonic)30
Command 5 Data Control30
Command 6 System Setup31
Command 7 Request System Status31
Command 8 Request Channel Status33
Command 9 Request Channel Data33
Command 10 Advanced Data Reduction33
Command 12 Digital Data Capture34
Command Sequence34
General Information36
Additional Notes on Command 1241
Command 102 Power Control Command41
Command 115 Check Set-up Information41
Command 116 Check Long Sensor Name42
Command 117 Check Short Sensor Name43
Command 1998 Set LED Command43
Command 1999 Sound Command43
Command 2001 Direct Output to Digital-Out Port43
Command 201 Archive Operations Command44
Programming Examples49
Example 1: Temperature Non-Realtime Data Collection49
Example 2: Temperature Realtime Data Collection49
Example 3: Distance and Velocity Non-Realtime
Data Collection49
Example 4: Multiple Channels Non-Realtime Data Collection 50
Example 5: Conversion Equation Setup (Command 4)50
This technical reference is intended for CBL 2 users who want to write their own
programs for CBL 2 and Texas Instruments graphing calculators. This document includes
technical data such as specifications for sensors, syntax for CBL 2 commands, sample
programs, error codes, and miscellaneous other topics.
Instructions for using CBL 2 with the DataMate program or app are given in
Started with CBL 2
not addressed in this technical reference except for
Setup Default Settings
used by the DataMate program.
, which is included in the CBL 2 package. The DataMate program is
Appendix C: DataMate Sensor
. This table shows the default sensor settings and calibrations
Miscellaneous Reference Information
CBL 2 Software Upgrades
The CBL 2 uses
without buying a new CBL 2. As new functionality becomes available, you can
download the software from the TI web site to your PC and then use the TI-GRAPH
LINKé (sold separately) to upgrade your CBL 2.
Check the TI website (
compatibility statements. Directions for downloading upgrades will be given on the
web site.
FLASH
technology, which allows you to easily upgrade to new software
www.ti.com/calc
) for upgrades, paying special attention to
Getting
Data Collection Modes
On the CBL 2, data can be collected in one of three modes: realtime, non-realtime or
FastMode.
♦
In
realtime
after each point is taken.
♦
In
non-realtime
all of the data points are taken and then sends it to the calculator.
♦
In
FastMode
very fast sample rate, stores it internally until all of the data points are taken, and
then sends it to the calculator.
It is the default to return the time with the data collected.
CBL 2 Technical Reference5
data collection, the CBL 2 collects data and sends it to the calculator
data collection, the CBL 2 collects data and stores it internally until
data collection, the CBL 2 collects data on a single analog channel at a
Realtime Sampling
In realtime data collection, the CBL 2 sends each data point to the calculator as it is
taken, so some data can be lost if the calculator is not ready to accept the data. In
addition, the quantity of data that can be collected is limited by the size of the
calculator memory.
Realtime data collection is used for:
♦
Slower sampling where the user wants to see the data as it is being collected.
♦
Very long data collection times where the CBL 2 may run out of memory during
data collection.
♦
Situations where the host calculator must process the data as soon as it becomes
available (such as to control an output in response to a temperature input).
This data collection mode should not be used for data collection of more than a few
points each second because the host calculator will not be able to keep up. In addition,
because of the nature of realtime data collection, the period/frequency and Command
12 channels cannot be sampled in this mode.
Since the number of points to be collected may not be known at the start of sampling,
set the “number of samples” to M1 when sending Command 3. This tells the CBL 2 to
take data but not send it to the host calculator until the calculator requests data.
Non-Realtime Sampling
In non-realtime data collection, the samples are taken and stored in the CBL 2 memory
until all the data has been collected. Then the data is sent to the host calculator. The
quantity of data collected is not limited by the size of the calculator memory, but is
limited by the size of the CBL 2 memory. Up to 12,000 samples max (or less under some
conditions) can be collected in non-realtime.
Non-realtime data collection is used for fast sampling of multiple channels and when
triggering is required.
All of the channels can be used in this mode, and the Command 12 functions can be
used. The sample time is limited by the number and types of channels enabled. For a
E
single channel, the sampling can be as fast as 1
calculator communication is maintained during the sampling. This allows the host
calculator to issue a Command 7 or Command 8 to ascertain the progress of the
sampling without disturbing the sampling process.
-4 second. In addition, normal
FastMode Sampling
FastMode sampling is designed to be used where a single channel must be sampled at
very fast sample times. This mode is used primarily when sampling sound using the
microphone.
6CBL 2 Technical Reference
In general, FastMode is identical to non-realtime sampling with the following
exceptions:
♦
The sampling is limited to a single analog channel when doing FastMode sampling.
♦
The selected channel must not be in operation mode 5, 6, or 7.
♦
The communications with the host calculator are turned off during FastMode
sampling.
Note: In FastMode sampling, it is very important that the program not issue a GET command
until after sampling has been completed. If the CBL 2 receives a GET command it will abort
FastMode sampling with an error in order to respond to the GET command.
In FastMode, the sample times can be as fast as 20 msec (a sample frequency of 50KHz).
Mode Comparison Table
The table below shows some of the differences between the data collection modes.
Order of data
returned when
doing the GETs
from the host
calculator
Number of samples
limited?
Sample time limits
(approximate)
Number of
channels limited?
Realtime Mode
{ch1_1, ch2_1, …
deltatime_1}
{ch1_2, ch2_2, …
deltatime_2}
:
:
{ch1_n, ch2_n, …
deltatime_n}
Not by CBL 2, but
may be limited by
the host calculator
Sample Time > .25
second to 16000
seconds
Yes, only CH1-3
and 11
Non-Realtime
Mode
{ch1_1, ch1_2, …
ch1_n}
{ch2_1, ch2_2, …
ch2_n}
{ch3_1, ch3_2, …
ch3_n}
{time_1, time_2, …
time_n}
Yes, limited by
available memory
in CBL2
Sample Time ‚ 1e-4
seconds to 16000
seconds
NoYes, only a single
FastMode
Same as NonRealtime
Same as NonRealtime
Sample Time ‚ 2e-5
seconds to 1e-4
seconds
channel from CH1
to CH3
Can use
Triggering?
Communication
maintained during
sampling?
CBL 2 Technical Reference7
NoYesYes
YesYesNo
Beep Sequences
The CBL 2 makes four kinds of sounds:
♦
A low tone followed by a high tone (low-to-high beep).
♦
A medium tone followed by another medium tone (medium-medium beep).
♦
A high tone followed by another high tone (high-high beep).
♦
A “tick” sound when a key is pressed.
The following bullets explain when beep sequences normally occur and what the beep
sequences mean.
♦
When the CBL 2 completes initialization, you will hear the startup sequence: highhigh beep, medium-medium beep, low-to-high beep (6 total beeps, plus LEDs light
up in this order: red LED, yellow LED, and green LED)
♦
When you press the QUICK SETUP button:
the medium-medium beep sounds if a sensor is attached to the CBL 2.
−
the high-high beep sounds if no sensors are attached to the CBL 2.
−
♦
When the CBL 2 is connected to a calculator during sampling commands:
the medium-medium beep sounds when initializing data collection.
−
the medium-medium beep sounds when starting data collection (transition from
−
pre-store to store).
the medium-medium beep sounds when completing data collection.
−
Note: If the sampling timing causes the beeps to run together, the CBL 2 software may not
sound all the beeps.
Note 2: You will not get all the beeps when Fast Sampling is enabled.
Note 3: You will not get all the beeps when using triggering.
♦
When you set the CBL 2 for manual trigger and press the START button, a mediummedium beep sounds.
♦
When you press the TRANSFER BUTTON:
the low-to-high beep sounds when the transfer succeeds.
−
the high-high beep sounds if the transfer fails for any reason.
−
♦
When an overcurrent condition is detected, five high-high beeps sound. (This causes
an error, which causes even more beeps to sound.)
♦
When the CBL 2 begins a full self-test, three low-to-high beeps sound.
♦
When self-test completes:
the low-to-high beep sounds if self-test passes.
−
the high-high beep sounds if self-test fails.
−
8CBL 2 Technical Reference
When the CBL 2’s base code detects an error in the commands sent from the host, a
♦
high-high beep sounds twice.
When the CBL 2 powers up:
♦
two high-high beeps sound if the base code is not loaded.
−
three high-high beeps sound if the power-up self-test fails.
−
During base code download, three high-high beeps sound when any errors occur.
♦
(The unit resets and then the two high-high beeps mentioned in the previous bullet
sound.)
Archiving in CBL 2’s
The
FLASH
allowing updates to the operating system and storing the DataMate programs, the
FLASH
To preserve collected data so that it can be retrieved at a later time, data sets can be
stored in the
data set can be given a name.
You can write a program on the calculator to review the list of stored data sets and
♦
retrieve the desired one for further analysis. (See the sample archive program on
page 56.)
You can use the DATADIR program (available on the TI Resource CD or on the TI
♦
web site at
DATADIR program are given in
The
FLASH
convenient location for storing frequently used programs or as a temporary storage to
create more available memory on the calculator.
Command 201, in conjunction with the Link menu on the calculator, provides access to
these
memory in the CBL 2 can be used for several purposes. In addition to
memory serves as an archive space for other programs and data.
FLASH
archive can also store calculator programs and applications. This provides a
FLASH
archive operations. For details about Command 201, see page 44.
archive. To distinguish between different stored data sets, each
www.ti.com/calc
FLASH
) to manage
Memory
FLASH
Getting Started with CBL 2
memory. Directions for using the
.
CBL 2 Technical Reference9
Technical Specifications for Sensors
TI Light Sensor
The TI light sensor uses a phototransistor to measure relative irradiance. The units of
irradiance are milliwatts per square centimeter. The light sensor’s output is a voltage
that is linearly proportional to the amount of irradiance it senses. The range of light
2
over which the sensor is sensitive is 10µW/cm
to 1mW/cm2.
The
auto-ID
measured voltage to relative units. The sensor is direction dependent and achieves the
highest output when the end of the sensor is pointed directly at the light source.
The light sensor is sensitive in the visible and near-infrared (
you can use it with
is designed to work in air only—it is not waterproof.
The light sensor returns
vary from light sensor to light sensor. The light sensor readings are also sensitive to
temperature.
resistor in the sensor causes the CBL 2 software to automatically convert the
) light range. This means
IR
emitting diodes as well as all visible light sources. The light sensor
IR
relative
readings, not absolute irradiance readings. Values may
TI Light Sensor Specifications
ChannelsConnects to
channels)
Current drain5 mA max.
Voltage range0–5 Volts
Irradiance range10µW/cm2 to 1mW/cm2 (approximately)
Spectral response range300nm to 1100nm (nanometers) (non-flat
response)
CH1, CH2, CH3
(analog
Chemical toleranceNone (air only)
Pins used2ground
4auto-ID resistor
5+5 Volts DC
6Signal
Stainless Steel Temperature Sensor
The Stainless Steel Temperature Sensor is an auto-ID general-purpose laboratory
temperature sensor that comes with your CBL 2. The sensor is rugged and durable, and
is designed to be used as you would use a thermometer for experiments in chemistry,
physics, biology, earth science, and environmental science.
10CBL 2 Technical Reference
This probe uses the 20 kΩ NTC Thermistor. The thermistor is a variable resistor whose
resistance decreases nonlinearly with increasing temperature. The best-fit
approximation to this nonlinear characteristic is the Steinhart-Hart equation. The CBL 2
or CBL interface measures the resistance value, R, at a particular temperature, and
converts the resistance using the Steinhart-Hart equation:
T = [K
where T is temperature (°C), R is the measured resistance in kΩ, K
-
= 2.22468 X 10
K
1
4
, and K2 = 1.33342 X 10-7. Fortunately, CBL 2 and CBL take care of this
+ K1(ln 1000R) + K2(ln 1000R)3]-1 – 273.15
0
= 1.02119 X 10
0
conversion for you, and provide readings in °C (or other units, if you load a different
calibration).
Stainless Steel Temperature Sensor Specifications
ChannelsConnects to CH1, CH2, CH3 (analog channels)
Current drain0.5 mA max.
Temperature range-25 to 125°C (-13 to 257°F)
Maximum temperature
sensor can tolerate
without damage
10-bit resolution0.32°C (-25 to 0°C)
Temperature sensor20 kΩ NTC Thermistor
150°C
0.12°C (0 to 40°C)
0.4°C (40 to 100°C)
1.0°C (100 to 125°C)
-
3
,
Accuracy±0.2°C at 0°C, ±0.5°C at 100°C
Response time95% of full reading: 11 seconds
98% of full reading: 18 seconds
100% of full reading: 30 seconds
Probe dimensionsProbe length (handle plus body): 16 cm
Stainless steel body: length 11 cm,
diameter 4.0 mm
Probe handle: length 5.0 cm, diameter 1.25 cm
Pins used2Ground
3Vres
4auto-ID resistor
6Signal
CBL 2 Technical Reference11
Temperature Accuracy
This probe provides very accurate temperature readings. Near 0°C, readings are
accurate to ±0.2°C; near 100°C, readings are accurate to 0.5°C.
Important:
you cannot re-calibrate this sensor. Probe-specific calibrations should not be necessary
when using this sensor.
Because of the non-linear nature of the Stainless Steel Temperature Probe,
Stainless Steel Temperature Sensor Chemical Tolerance
The body of this sensor is constructed from grade 316 stainless steel (0.08% carbon,
2.0% manganese, 0.75% silicon, 0.04% phosphorus, 0.03% sulfur, 16-18% chromium,
10-14% nickel, 2-3% molybdenum, and 0.1% nitrogen). This high-grade stainless steel
provides a high level of corrosion resistance for use in the science classroom.
Here are some general guidelines for using this probe:
1.
The probe handle is constructed of molded plasticized Santoprene®. While this
material is very chemical resistant, we recommend that you avoid submerging the
probe beyond the stainless steel portion.
2.
Always wash the probe thoroughly after use.
3.
The probe can be left continuously in water at temperatures within the range of
–25° to 125°C. Continuous usage in saltwater will cause only minor discoloration of
the probe, with no negative effect on performance.
4.
You can leave the probe continuously in most organic compounds, such as
methanol, ethanol, 1-propanol, 2-propanol, 1-butanol, n-hexane, lauric acid,
paradichlorobenzene, phenyl salicylate, and benzoic acid. The probe should not be
left in n-pentane for more than 1 hour.
5.
The probe can be left in strong basic solutions, such as NaOH, for up to 48 hours
with only minor discoloration. We do not recommend usage in basic solutions that
are greater than 3 M in concentration.
6.
The following chart provides the maximum length of time we recommend for
probe exposure to some common acids. Probes left in an acid longer than these
times may bubble and/or discolor, but will still be functional. We do not
recommend probes be left in
Acid
1 M HCI20 minutes
2 M HCI10 minutes
3 M HCI5 minutes
1 M H2SO
2 M H2SO
12CBL 2 Technical Reference
4
4
acid longer than 48 hours.
any
Maximum Exposure Time
48 hours
20 minutes
Acid
3 M H2SO
1 M HNO
2 M HNO
3 M HNO
1 M CH3CO OH48 hours
2 M CH3CO OH48 hours
3 M CH3CO OH48 hours
1 M H3PO
2 M H3PO
3 M H3PO
7.
Cole Parmer has an extensive listing of chemical compatibility of grade 316 stainless
steel on their web site (
be used for general guidelines not covered in this summary.
4
3
3
3
4
4
4
www.coleparmer.com/techinfo
TI Temperature Sensor Note
Maximum Exposure Time
10 minutes
48 hours
48 hours
48 hours
48 hours
48 hours
48 hours
). This listing can
If a TI Temperature sensor (the flexible temperature sensor that came with the original
CBL) is used with CBL 2, it will auto-ID as the Stainless Steel Temperature sensor. Both
sensors use the same calibration that is built into the CBL 2.
TI Voltage Sensor
The TI voltage sensor is a generic sensor that you can use to read any voltage between
±10 Volts. The auto-ID resistor contained in the sensor causes the CBL 2 software to
automatically measure voltage. No conversion equation is loaded. The black hook
should be connected to ground and the red hook to the signal voltage.
ChannelsConnects to CH1, CH2, CH3 (analog channels)
Voltage range±10 Volts
Chemical toleranceNone (air only)
Pins used1Signal
2Ground
4auto-ID resistor
Note: It is very important that the ground connections of the analog inputs are never connected
to different potentials. These ground connections are all in common. Connecting the grounds to
different potentials may damage the CBL 2.
CBL 2 Technical Reference13
1
1
Auto-ID Sensors
The CBL 2 contains provisions for the auto-ID sensor resistor values listed below. If
needed, a conversion equation is loaded automatically for some of the auto-ID values.
Channels 1, 2, and 3
IDENT
Valu e
2.2KThermocouple °CM200C to 1400¡C
33KTI Voltage sensorM10 to +10 Volts
6.8KCurrent sensor
3.3KResistance sensor1K to 100K
22KExtra long temperature sensor for °C
68KCO2 gas sensor (PPM)0 to 5000 ppm
100KOxygen gas sensor (PCT)0 to 27%
150KC V voltage sensor (V)
220KC V current sensor (A)
10KStainless steel or TI temperature sensor3 for °C
15KStainless steel or TI temperature sensor for °F
4.7KTI Light sensor0 to 1
1KEx heart rate sensor (BPM)N/A
47KVoltage sensor0 to 5 Volts
1.5KEKGN/A
Sensor Type
Range
2
M
10 to +10 Amps
J
L
50°C to 150°C
M
6 to +6 Volts
M
0.6 to +0.6 Amps
M25¡
C to 125¡C
M13¡
F to 257¡F
1
IDENT values are resistance values in ohms (tolerance ±5%).
2
Operation 3 is a mathematical conversion of voltage to a current reading (1V=1A).
There is no circuitry inside the CBL 2 unit to convert current to voltage; this must be
done in the external probe.
3
Default units for the Stainless Steel and TI Temperature sensors is °C.
Channel 11 (SONIC)
IDENT
Valu e
15KMotion detector, meters½ meter to 6 meters
22KMotion detector, meters½ meter to 6 meters
10KMotion detector, feet1½ feet to 18 feet
33KPhotogate sensorN/A
1
IDENT values are resistance values in ohms (tolerance ±5%).
14CBL 2 Technical Reference
Sensor Type
Range
Custom Sensors
To create custom-designed sensors or other circuits for the analog input channels, the
sonic input channel, the digital input channel, or the digital output channel on the
CBL 2, you can purchase sensor kits from TI (
♦
For a custom analog sensor, use the Analog Probe Kit (order entry no. CBL/CA/D).
1-800-TI-CARES
Each sensor kit includes a four-foot length of telephone cable with a connector
attached to one end. The other end of the cable is not terminated.
♦
For a custom digital sensor, cut a CBR-to-CBL cable (order entry no. CBR/CA/C) into
two pieces to get two lengths of cable with connectors. (The digital probe kit used
with the original CBL will not work with CBL 2.)
♦
For a custom digital ID probe, contact Vernier Software and Technology
(
www.vernier.com
) for more information.
Be very careful when designing a custom sensor or circuit. For more accurate operation,
do not connect pins 1 and 6 together on the analog input channels. Pin 1 on the British
Telecom-style connector is the pin farthest from the release lever as shown in the
pictures below.
If you design a resistance-type sensor, connect pin 3 (Vres) to pin 6 (Vin-low) (refer to
“Connector Pinouts” below). Connect the resistance to be measured from the junction
of these pins to pin 2 (Gnd). The resistance range for useful measurements is limited
from approximately 1 Kohms to 100 Kohms.
) or its Instructional Dealers.
When the Operation parameter in Command 1 (page 23) is set to 2, 3, 5, 6, or 7, the
data is measured on the Vin pin (pin 1). The data for all other operations is measured
on the Vin-low pin (pin 6).
Note: The most current that can be drained from all three analog channels is 160 mA. This is
limited by the hardware.
CBL 2 Technical Reference15
Connector Pinouts
The CBL 2 sensors use 6-pin British Telecom-style connectors.
Pin
1VinEchoDI0
2GndInitDI1
3Vres/Smart ID CLKAuto-IDDI2
4Auto-ID+5 Volts DC+5 Volts DC
5+5 Volts DCGndGnd
6Vin-lowNot ApplicableDI3
Input range:±10 Volts0 to 5 Volts
Resolution (using CBL 2’s
10-bit A/D converter):
Input impedance:1.046 M
Vres:
♦
♦
♦
♦
♦
♦
♦
Output reference voltage from the CBL 2 through a 15 Kohm resistor. When
using this feature, Vres should be tied to Vin-low and the value to be measured
should be connected between Vin-low and Gnd.
Gnd:
Ground (common for all channels).
Auto-ID: Auto-ID
pin 4 to ground.)
Echo:
Init:
Ultrasonic motion detector input.
Distance initialization signal
sensor detection data input. (
D0 In/Out to D3 In/Out:
Smart ID Clk:
Clock to synchronize data transfer from smart probes.
19.6 mV5.6 mV
J
>10 M
Auto-ID
Input or output pins for digital pulses.
J
resistor connected from
16CBL 2 Technical Reference
Programming the CBL 2
Digital Output Buffer
The digital output buffer (DOB) is a circular buffer that contains up to 32 elements. The
output from the buffer is 4-bits wide, and the outputs are CMOS (0-5V) compatible.
The data in Command 1 is entered as decimal representation of the digital value that is
output. For example, 0=0000, 5=0101, and 15=1111. At the beginning of each sample, a
pointer into the digital output buffer is incremented and the next available data is sent
to the output lines.
The electrical characteristics of the digital outputs are:
♦
Voutput-high ‚ 3.7V @ M400uA
♦
Voutput-low 0.65V @ 1.6mA
The number of times that the DOB outputs the contents of the buffer depends on the
number of data elements defined in Command 1 and the number of samples defined
in Command 3.
3=Sample and Trigger Setup.
1=One second sample time.
100=One hundred samples.
(Trigger Type defaults to manual
triggering.)
CBL 2 Technical Reference17
The DOB outputs pulses that correspond to the five digital nibbles (1234512345...12345
etc.). This sequence is repeated 20 times (100 samples/5 data elements) to the DIG OUT
channel. The diagram below shows a portion of this output for the first five data
elements.
Sample
Clock
D3
D2
D1
D0
1234
1
5
Figure 1. Digital Output Example
Triggering and Thresholds
Two types of triggering thresholds can be set in the CBL 2:
♦
Hardware triggering
is set to trigger on a specific voltage level established by the
trigger threshold parameter.
♦
Software triggering
is set to begin data collection on either the rising edge or
falling edge of the signal, depending on the trigger type and trigger threshold
selected.
The THRESHOLD parameter specified in Command 3 can be used for two purposes:
♦
If the operation in Command 1 is frequency, period, or count (operation = 5, 6, or 7
on Channel 1 only), then the threshold parameter in Command 3 sets a voltage
level in the CBL 2 hardware. The signal on the Vin pin of CH 1 must pass through
this voltage for the CBL 2 to see the signal change states.
♦
If the operation in Command 1 is anything other than 5, 6, or 7, then the threshold
parameter in Command 3 specifies a trigger level and is measured in the units of
the sensor selected.
When triggering, sampling does not start until the signal on the trigger channel (also
specified in Command 3) passes through this level once in the direction specified. This
comparison of trigger level and signal level occurs in software, so any level in the
proper range can be selected. Also, either the Vin or VinLow pin (on any of the analog
channels or the sonic channel) can be used as the trigger channel. CBL 2 knows
whether to use the Vin or VinLow pin by looking at which operation was set up in
Command 1.
18CBL 2 Technical Reference
0
1
2
3
T=
+
-
+
-
If a conversion equation is enabled for the trigger channel, then the threshold
specified in Command 3 should be a converted level. For example, if a pH probe is
plugged into CH 2 with a conversion equation loaded into CBL 2 and the trigger
channel specified as CH 2, the threshold level should be entered as a pH level in the
range 0-14, not as a voltage in the range 0-5V.
Measuring Period and Frequency
Period and frequency apply only to CH1 and only CH1 can be active if the operation is
set to 5 (Period) or 6 (Frequency). Period and frequency are measured on Vin pin (pin 1)
of CH1. Period and frequency measurements always use the hardware threshold.
The CBL 2 measures period and frequency by counting edges for 0.25 seconds, or by
measuring the time between the selected edges for one period—whichever is larger
(see figure below). If a significant number of edges are counted during the 0.25-second
period, the count is used to compute both period and frequency; otherwise, the period
and frequency are computed from the time interval for one period.
Figure 2. Period and Frequency Measurement
Trigger Type
2
3
4
5
Measuring Points
+ +(T=0 to 2)
N N
N + N
N N
(T=1 to 3)
(T=0 to 1)
+ (T=1 to 2)
The crossover point between the two computations is about 600 Hz. Because there can
be a one-count uncertainty during the 0.25-second period, the accuracy around 600 Hz
is approximately ±4 Hz (about 0.7%). The resolution of the timer measuring the time
between edges is 6.4 microseconds; therefore, the percentage accuracy improves for
frequencies above and below 600 Hz.
If the CBL 2 is set up using Command 3 to make multiple measurements at a particular
sample time, the CBL 2 waits for the sample time that you specified after it completes
the current measurement. It then initiates the next cycle of period/frequency
measurement. The minimum sampling time for period and frequency is 0.25 seconds.
Note: Period and frequency measurements using Trigger Type 4 or 5 are only possible on nonrepetitive signals or on repetitive signals that are less then 600 Hz. This is because at 600 Hz, the
edge counts will prevail.
CBL 2 Technical Reference19
The parameters shown in this table are used when measuring period or frequency.
Assume a frequency measurement is requested on CH 1, and 20 measurements are
desired at a .5 second sample time. The following commands would set up the CBL 2
for this example:
{1,1,6}
{3,.5,20,2,0,1}
3 = Sample and Trigger setup command
.5 = Sample time of 0.5 seconds
20 = Number of samples to take
2 = Trigger from rising edge to rising edge for frequency
0 = Trigger channel not applicable
1 = Trigger at 1 Volt
Assume a ±10 Volt, 20 Hz sine wave is the input signal on pin 1. The CBL 2 follows the
sequence of steps indicated below when the first trigger occurs (a trigger occurs every
0.05 seconds).
1. Trigger occurs on the rising edge.
2. Start counter and timer.
3. Stop timer at next rising edge.
4. Wait until 0.25 seconds has elapsed.
5. Stop counter (count should be about 5).
6. Count is less than 150 (or 600 Hz); therefore, frequency is computed from the
time interval for one period.
7. Wait for 0.5 seconds specified in Sample Time.
8. Wait for additional processing time to complete. (This time depends on what
processing is currently being performed and is typically about 0.25 additional
seconds.)
9. Repeat steps 1 through 8 for nineteen more samples.
In this example, the CBL 2 takes approximately 15 seconds to complete all the sampling
and turn on the DONE indicator in the display.
20CBL 2 Technical Reference
Asynchronous/ Synchronous Triggering versus Record Time
Actual triggering is asynchronous from the internal sampling clock when Trigger Type
in Command 3 is set to 1 or 6 (manual triggering). If sampling at very fast rates, the
actual trigger may be slightly different from the commanded trigger. The user should
take this into account when calculating prestore and trigger levels.
The actual sample time for the trigger point depends on whether or not prestore is
selected in Command 3.
When prestore and relative record time are selected, the sample time for the trigger
point will generally not be identical to times around it. The time recorded for the
trigger point will be the actual time between the previous sampled point on the
internal sampling clock interval and the asynchronous trigger event. The sample taken
after the trigger point will be at the specified sample time since the clock is reset each
time the trigger event occurs (pressing START/STOP or the hardware threshold trigger
event).
When Trigger Type is set to 6 (Manual and Sample Trigger) in Command 3, the
recorded sample times are the actual relative times when START/STOP is pressed.
When no prestore is selected, the first sample time will be the trigger point. Its
recorded time will not be the internal sample clock time because the CBL 2 is always
sampling on the internal clock interval that you selected and is storing points (if you
selected prestore) until the trigger event occurs.
Example
Assume the following:
♦
Input to CH1, set to measure ±10 Volts, is a 0.01 Hz sine wave.
♦
Sample Time is set to 10 seconds and Number of Samples is set to collect 30 points.
♦
Trigger Channel is set to 1.
♦
Trigger Threshold is set to 1.0 and Trigger Type is set to 2 (trigger on rising edge).
The CBL 2 will collect and store a sample every 10 seconds. The recorded time for each
sample will be 10 seconds. The trigger event (signal rising through 1.0 Volts) occurs 1.5
seconds after the previous sample, so a sample collected at the trigger point is taken
and stored with a recorded time of 1.5. The next sample is taken 10 seconds after the
trigger sample, not 8.5 seconds later as would have happened if the internal sample
clock had not been reset.
The Record Time returned (around the trigger point) will be the list:
{...10,10,10,1.5,10,10,...}.
CBL 2 Technical Reference21
CBL 2 Command Summary
The table below lists the commands you can use in writing programs for CBL 2.
Detailed explanations of each command and its syntax can be found beginning on the
page number shown in the third column.
Command
Number
0Reset:
1Channel Setup:
2Data Type:
sent. It is included only for compatibility with older CBL
programs.
3Trigger Setup:
experiment.
4Conversion Equation Setup (Analog Channels):
parameters to convert physical units measured by CBL 2 into
a more useful measurement unit such as Newtons or ¡C.
Sonic Temperature Compensation (Sonic Channel):
Sets the unit of measurement for sonic data.
5Data Control:
well as the starting and ending data points to be retrieved
by a TI calculator.
6System Setup:
for the CBL 2; selects a filter to be applied to data.
Resets all channels to default conditions.23
This command is not used and should not be
Command Description
sets up a channel for data collection.23
Sets up the trigger parameters for an
Selects the type of data to be retrieved, as
Turns sound on or off; sets an ID number
Sets up
See
Page
26
26
28
30
30
30
7Request System Status:
status information.
8Request Channel Status:
return sensor type, last valid data, and last valid data
position for the requested channel.
9Request Channel Data:
one data point before sampling starts. Used to verify that
setup is correct.
10Advanced Data Reduction:
certain time-intensive algorithms instead of processing them
in the calculator.
12Digital Data Capture:
of motion data from the digital input channel.
102Power Control Command:
power-saving; or designated power up.
22CBL 2 Technical Reference
Generates and prepares to return
Generates and prepares to
Generates and prepares to return
Sets up CBL 2 to process
Sets up the capture or measurement
Sets the power to always on;
31
32
33
33
34
41
Command
Number
115Check Set-up Information:
the designated channel.
116Check Long Sensor Name:
117Check Short Sensor Name:
1998Set LED Command:
1999Sound Command:
sounds.
2001Direct Output to Digital-Out Port:
digital output port during a sampling run.
201Archive Operations Command:
determine the contents of the CBL 2’s
Detailed information about each command is given below. The table following each
syntax lists valid values. Default values appear in
Command Description
Returns status information for
Returns long sensor name.42
Returns short sensor name.43
Turns LEDs on and off on command.43
Specifies length and frequency of CBL 2
Outputs data to the
Allows the calculator to
FLASH
boldface
memory.
type.
Command 0Reset CBL 2 RAM
See
Page
41
43
43
44
Syntax:
This command has no parameters or options. Clears data memory back to power-up
state. Clears error information. Resets only the RAM; does not clear
This command should be sent at the beginning of each program.
{0}
FLASH
memory.
Command 1Channel Setup
This command sets up a channel for data collection. It has six syntaxes, as shown below.
Syntax:
Clears all channels.
Syntax: {1,channel,
Turns off the selected channel.
Channel
1-3 = Analog
11 = Sonic
21 = Digital Input
{1,0}
0}
31 = Digital Output
CBL 2 Technical Reference23
Syntax:
{1,
channel,operation,post-processing,(delta) 1,equ
Use this syntax to set up analog channels.
Operation/
Channel
1-3 = Analog
Sensor Type
0 = Turn channel off
1 = Auto-ID this sensor
(default is 0-5V sensor)
2 = TI Voltage „10V
3 = Current „10A
4 = Resistance
4
= Measure period on
5
„
10V input line (CH 1
only)
4
= Frequency on „10V
6
input line (CH 1 only)
5
= Count transitions
7
on „10V input line
(CH 1 only)
Post-Processing
0 = None (RT
and NON-RT3)
1 = d/dt (NON-RT)
2 = d/dt and d
(NON-RT)
2
2
/dt
}
Conversion Equation
0 = Off
1 = On (must also
send Command 4)
2
10 = TI Temperature or
Stainless Steel
Temperature
(Centigrade)
11 = TI Temperature or
Stainless Steel
Temperature
(Fahrenheit)
12 = TI Light
14 = Low voltage (0-5V)
1
This parameter is ignored.
2
RT: REALTIME mode sampling.
3
NON-RT: NON-REALTIME mode sampling.
4
When using Command 1 operation 5 or 6, Trigger Type in Command 3 must be 2, 3, 4
or 5.
5
When using Command 1 operation 7, Trigger Type in Command 3 must be 0.
24CBL 2 Technical Reference
Syntax:
Use this syntax to set up the sonic channel.
{1,11,
operation,post-processing,(delta)1,equ
Operation
0 = Resets channel
1 = Meters – Returns distance and
@
time (RT and NON-RT)
2 = Meters – Returns distance and
@
time (RT and NON-RT)
3 = Feet – Returns distance and @time
(RT and NON-RT)
4 = Meters – Returns distance, velocity,
and @time (RT) or distance and @time
(NON-RT)
5 = Feet – Returns distance, velocity,
and @time (RT) or distance and @time
(NON-RT)
6 = Meters – Returns distance, velocity,
acceleration, @time (RT) or distance
and @time (NON-RT)
Post-Processing
0 = None (RT
and NON-RT3)
1 = d/dt (NON-RT)
2 = d/dt and d
(NON-RT)
2
2
/dt
}
Conversion Equation
0 = Off
1 = On (must also send
Command 4 for
temperature
2
compensation)
7 = Feet – Returns distance, velocity,
acceleration, @time (RT) or distance
and @time (NON-RT)
1
This parameter is ignored.
2
RT: REALTIME mode sampling.
3
NON-RT: NON-REALTIME mode sampling.
Note: When post-processing is enabled in non-realtime sampling mode, all operations will
return the first derivative and the second derivative.
Syntax:
Use this syntax to set up the digital input channel.
Channel
21 = Digital Input
{1,
channel,operation
Operation
0 = Off
1 = On
}
CBL 2 Technical Reference25
Syntax:
Use this syntax to set up the digital output channel.
Channel
31 = Digital
Output
The CBL 2 outputs one element for each sample. Between samples, the output returns
to 0 unless the user has commanded the power to remain on (using Command 102, M1).
Caution: Using Command 102, M1 can drain the CBL 2 batteries.
{1,
channel,operation,list of values
Operation
0 = Clears the channel
1-32 = Count (number
of data elements in list)
List of Values
Lists values output
to digital output
port
}
Note: the list of values
must have one value
for each count.
Command 2Data Type
This command is not used and should not be sent. However, it is included for
compatibility with older CBL 2 programs.
Command 3Trigger Setup
This command sets up the trigger parameters for an experiment. It has three syntaxes.
Syntax: {3, .1}
Repeats last Command 3 (used to quickly collect new data).
Syntax:
Use this syntax for realtime data collection.
Sample Time Number of Points
>0 to 16000
Default = 0.5
{3,
samptime,numpoints,
.
1 = REALTIME mode
0 = Invalid
0,0,0,0,0,0,
Filter
0 = None
7 = Light Realtime tracking filter
8 = Medium Realtime tracking filter
9 = Uses Heavy Realtime tracking filter
filter
}
26CBL 2 Technical Reference
Syntax:
{3,
samptime,numpoints,trigtype,trigchan,trigthresh,
pre-store,(extclock)1,rectime,filter,fastmode
Use this syntax for non-realtime data collection.
Sample
Time
>0 to
16000
Default
= 0.5
Number of
Points
0 = Invalid
1 to 12,000 =
NON-REALTIME
mode and
number of
points to collect
Trigger Type
0 = Immediate
1 = Manual
2 = Rising edge/
rising edge
3 = Falling
edge/ falling
edge
4 = Rising edge/
falling edge
5 = Falling
edge/ rising
edge
6 = Single
sample
Trigger Channel
0 = Disables
trigger
1 = CH1 (channel
must be active)
2 = CH2 (channel
must be active)
3 = CH3 (channel
must be active)
11 = CH11 (channel
must be active)
}
Trigger
Threshold
-
channel
limit to +
channel
2
3
3
3
limit
(channel
limit is
determined
by sensor
attached to
the channel)
Default =
1V
Pre-store
Data
% to 100%
0
1
This parameter is ignored.
2
Hardware trigger only for Command 1 operation 5, 6, or 7; software trigger for all others.
3
Software trigger only.
4
Prestore is not valid for manual trigger or immediate trigger. Due to the delay in
determining the start of sample, the actual amount of prestore may be smaller than
the selected amount.
5
FASTMODE does not apply to the Sonic/Digital channels.
Record Time Filter
4
0 = None
1 =
Absolute
2 = Relative
Note: This is
different
from the
original CBL.
Default on
CBL was 0.
In FASTMODE, only one channel can be active, and it must be an analog channel.
Sampling can be as fast as 20ms/sample in this mode. FASTMODE is operational only for
sample rates from 50,000 sample/second to 5,000 samples/second.
Each probe has a minimum sample time, which is listed in the table below:
Probe Type
Analog probes100msec/per probe
Sonic probes8 milliseconds
Digital In/Out100msec/per probe
Note: TrigTypes 0, 1, and 6 cannot be used with frequency measurements (operation 6) or with
period measurements (operation 5).
Note 2: TrigTypes 2, 3, 4, 5, and 6 cannot be used with count transition (operation 7).
Note 3: TrigTypes 1 and 6 cannot be used with FASTMODE sampling.
Note 4: While CBL 2 is waiting for TrigThresh, you can press the START/STOP to start sampling
immediately.
Minimum Sample Time
Command 4Conversion Equation Setup (Analog)
This command sets up parameters to convert physical units measured by CBL 2 into a
more useful measurement unit such as Newtons or ¡C. It has six syntaxes.
Syntax: {4,
Clears the equation for all channels.
0}
Syntax: {4,channel,
M
1}
Channel
1, 2, or 3
Sets unary equation; returns raw data for the channel.
Syntax: {4,channel,1,N,K0, . . .K
Channel
1 = Sets CH 1
2 = Sets CH 2
3 = Sets CH 3
Sets up polynomial equation:
+ K1X + K2X2 + ... + KnX
K
0
N = 1 through 9No restrictions
n
}
n
K
except overflow.
28CBL 2 Technical Reference
M N
Syntax: {4,channel,2,M,N, Km, K
m-1
Channel
1 = Sets CH 1
2 = Sets CH 2
3 = Sets CH 3
Sets up mixed polynomial equation:
m
.
X
m
.
+ ... + K
K
M = 0 through 4N = 0 through 4M + N > 0X ƒ 0
1
.
X
+ K0 + K1X + ... + KnX
1
.
Syntax: {4,channel,equtype, K0,K
Channel
1 = Sets CH 1
2 = Sets CH 2
3 = Sets CH 3
Equation Type
3 = Power
4 = Modified power
5 = Logarithmic
6 = Modified logarithmic
7 = Exponential
This command sets the unit of measurement for sonic data.
Syntax: {4,channel,equtype,temperature,units
Channel
4 = Sets SONIC
if
equtype
11 = Sets SONIC
=13
Equation Type
0 = Clears the
equation for
the selected
channel
13 = Sonic
temperature
compensation
Temperature
Temperature
value for
which you
want to
compensate
}
Units
0 = temperature in ¡Celsius
1 = temperature in ¡Fahrenheit
2 = temperature in ¡Celsius
3 = temperature in Kelvin
4 = temperature in Rankin
Command 5Data Control
This command selects the type of data to be retrieved, as well as the starting and
ending data points to be retrieved by a TI calculator.
Syntax:
Channel
.
1 = Sets recorded
time
{5,
channel,dataselect,databegin,dataend
Data Select
0 = raw collected data
(filtered)
Data Begin
0 = first point
collected
}
Data End
0 = last point
collected
0 = Lowest
active channel
1-3 = Analog
11 = Sonic
21 = Digital input
Note: If Data Select = 0, 1, or 2 and Command 3 Filter = 1-6, data will be filtered according to
the filter selected in Command 3. If Data Select = 3, 4,or 5; the filter setting in Command 3 will
be ignored.
Note 2: Data End must be greater than or equal to Data Begin (unless Data End = 0). Both
DataBegin and DataEnd must be less than or equal to the number of samples sent to the CBL 2
in the last Command 3.
Note 3: Each Command 5 must be followed by a Get statement.
Note 4: Sampling must be completed before sending Command 5 to control the data. Before
sending Command 5, do a Get statement to ensure that sampling is completed or send
Command 7 to check the status and verify that sampling is completed.
1 = d/dt (filtered)
2
/dt2 (filtered)
2 = d
3 = raw collected data
(unfiltered)
4 = d/dt (unfiltered)
2
/dt2 (unfiltered)
5 = d
1 through n =
point selected
1 through n =
point selected
30CBL 2 Technical Reference
Command 6System Setup
This command has three syntaxes. The first turns sound on or off, the second sets an ID
number for the CBL 2, and the third selects a filter to be applied to data.
Syntax:
{6,
command
}
Command
0 = Abort sampling
2 = Abort sampling
3 = Turns sound off
4 = Turns sound on
Syntax:
Command
5number you specify (any floating point number
Syntax:
Command
{6,
command,parm
}
Parameter
38
between M10
CBL 2 that is used to identify a specific CBL 2 when
multiple units are linked together
{6,
command,filter
to + 1038) = Sets an ID number for
}
Filter
60-6 = number of new filter to be applied
Default = 0
Command 7Request System Status
Syntax: {7}
This command generates and prepares to return the following status information:
softwareID
error
battery
Current software ID in format: X.MMmms where X=product code
number, MM=major ID number, mm=minor ID number, and s=step ID
number.
If non-zero, CBL 2 should be reset and the cause of the error corrected
Battery status. Can return the following values:
0Battery is OK for use
1Battery is low during sampling
2Battery is low all the time
CBL 2 Technical Reference31
8888
Constant value. If the correct list location is set to zero prior to
requesting and getting the list, this value can be used to ensure that
the status message was received correctly.
Sample time
trigger
condition
channel
function
channel post
channel filter
num samples
record time
temperature
piezo flag
Sample time that was commanded by the host during the last sample
run
Triggering condition that was commanded by the host during the last
sample run
Triggering channel that was commanded by the host during the last
sample run
Post-processing setting that was commanded by the host during the last
sample run
Filter that was commanded by the host during the last sample run
Number of samples that was commanded by the host during the last
sample run. (If sampling was aborted, this parameter reflects the actual
number of samples taken.)
This can have the following values:
0No time was recorded in the last run
1Absolute time was recorded in the last run
2Relative time was recorded in the last run
Temperature used for the temperature correction of the sonic data
during the last run if a sonic sensor was selected
This is the buzz/no-buzz value that was last commanded. Values are:
0Sound is disabled (OFF)
1Sound is enabled (ON)
system state
data start
data end
systemID
The following values are used for the system state:
1Idle
2Armed
3Busy
4Done
5Self-test
99Initializing code
First point of data available for transmission to the host unless the host
has sent Command 5 to override this value
Last point of data available for transmission to the host unless the host
has sent Command 5 to override this value
The System ID that was set using Command 6
32CBL 2 Technical Reference
P1 P2
Command 8Request Channel Status
Syntax:
Channel
1, 2, 3, or 110 = returns current sampled data
This command generates and prepares to return a list with three elements: E1, E2, E3:
E
E
applicable to CH1 ops 5, 6, 7 or CH21 Digital In or CH31 Digital Out)
E
valid when sampling is active]
Note: Each Command 8 must be followed by a Get statement.
{8,
channel,request type
}
Request Type
1 = returns data stored when channel was last set up
= sensor type (one of the
1
= last valid data read from sensor, if any [only valid when sampling is active] (not
2
= last valid data position (sample number where stored in the resulting list) [only
3
operation
options shown under Command 1)
Command 9Request Channel Data
Syntax:
Channel
1, 2, 3, or 110 = Re-test input auto-ID value
{9,
channel,mode
Mode
1 = Return stored auto-ID value
}
This command generates and prepares to return one data point before sampling starts.
Used to verify that setup is correct.
Note: Each Command 9 must be followed by a Get statement.
Command 10Advanced Data Reduction
This command sets up CBL 2 to process certain time-intensive algorithms instead of
processing them in the calculator.
Syntax:
Channel
1, 2, 3, 111 = HeartBeat algorithm0% to 100%
P1 value determines when data transitions from “high” to “low.”
P2 value determines when data transitions from “low” to “high.”
P3 value determines the minimum difference in data between UpperThld and LowerThld.
Note: P1 must be less than P2.
{10,
channel,alg,P1,P2,P3
Algorithm
}
Lower
Thld
0% to 100%
Upper
Thld
P3
RejectThld in
the units of
the channel
selected
CBL 2 Technical Reference33
Notes on Operation
Certain algorithms are very time intensive to run in the calculator, and the CBL 2
product team has made an effort to include those algorithms in the CBL 2’s optimized
code. This allows large data sets to be processed much more quickly.
Currently only one algorithm has been defined. This algorithm determines the number
of cycles of a repetitive waveform in the sampling buffer. (This routine is known as the
heartbeat algorithm
This algorithm works as follows:
1.
First, the normal data collection (using commands {1, …} and {3, …}) must be
completed.
2.
Next, the algorithm must be started using the command {10,
3.
The CBL 2 starts by finding the maximum and minimum points of the data set. The
lower threshold is set at P1 percent of the maximum point, and the upper threshold
is set at P2 percent of the minimum point.
4.
The CBL 2 checks the difference between the maximum point and minimum point
against P3. If the difference is less than P3, the algorithm is aborted and a 0.0 is
returned. (This is the case where the user expected the input data to have a certain
variation but, for some reason, the variation was not found.)
5.
The CBL 2 then finds the number of “rising edges” where the data in the data set is
increasing from below the upper threshold and the number of “falling edges”
where the data is decreasing to below the lower threshold. The total number of
rising edges and falling edges is stored.
for its frequent use in measuring the heart rate.)
channel
,1,P1,P2,P3}.
6.
Next the CBL 2 determines how many samples are between the first edge and the
last edge. The frequency is then determined as the number of edges divided by the
number of samples and is returned to the host calculator or computer.
7.
The user program is responsible for taking the result from the CBL 2 and dividing it
by the sample time to get the true frequency in Hz.
Command 12Digital Data Capture
This command sets up the capture or measurement of motion data from the digital
input channel. It has seven syntaxes.
Command Sequence
In general, when you want to sample data, you should send commands in this
sequence: Reset the unit, setup the channels, start sampling, retrieve the data.
The commands used to do this are shown below:
♦
Command 6,0 to force the CBL 2 to stop executing any prior commands (This
command may not be needed.)
♦
Command 0 to reset CBL 2 to a known state
♦
Command(s) 1 to set up any channels needed for sampling
34CBL 2 Technical Reference
♦
Command(s) 4 to send the equations for any sensors that need special equations
(use only if needed)
♦
Command 3 to start the sampling process
♦
GET commands (one or more) to retrieve data from the CBL2.
It is important to notice that the channels get setup before sampling starts and that the
Command 3 starts the actual sampling. The GET command forces the host calculator to
wait until the data is ready and then transfer the data from the CBL 2 into the
calculator.
Only a few of the commands that can be sent during sampling are useful; many of
these commands will abort the sampling. For example, if you send a Command 1
during sampling, the sampling aborts, your data is lost, and the new channel is set up
according to the new command.
A more useful command to send during sampling is Command 7. If you send this
command, you can then do a GET and see the status of the CBL 2. The status will show
the sampling (ARMED – meaning that the unit has not gotten to the trigger condition
yet, or BUSY – meaning that sampling is in progress).
Another useful command to send while sampling is the Command 8, which reads back
the most recent data sample collected for a single channel. This allows a sophisticated
program to monitor data collection while the CBL 2 is collecting the data.
One of the new features of the CBL 2 is its ability to automatically work with many
digital sensors such as photogates. With a photogate, the timing of the data transitions
is the parameter of interest. Using the standard command order defined above, the
user would:
♦
Send {1, 21, …} to command a digital input channel
♦
Send a command 3 to start sampling
♦
Send a GET to retrieve the data.
In order to find the transition times, the data collection program must scan the data
looking for each transition and then subtract the time of the start and end points to
get the transition time. Using Command 12 automates this process (and makes it more
accurate).
There are a few things to be aware of, though. When using Command 12, the number
of samples collected is not the same as the number of samples taken. If the photogate
only transitions 12 times, there will be 12 transitions recorded. Even if there are 1000
analog data samples taken, there will still only be 12 transitions of the photogate data.
Therefore, you should command a SEND {12, 41, 0} to find out how many transitions
were recorded before requesting photogate data from the CBL 2. After getting the
number of transitions, you can retrieve the actual transition timing.
CBL 2 Technical Reference35
When using a photogate, or other digital sensor, your command sequence should be as
follows:
♦
Command 6,0 to force the CBL 2 to stop executing any prior commands (may not be
needed)
♦
Command 0 to reset CBL 2 to a known state
♦
Command(s) 1 to setup any channels needed for sampling (you must setup at least 1
analog channel)
♦
Command 12, 41,3 to enable the photogate mode for digital CH 41 (Digital Input
Port 1)
♦
Command(s) 4 to send the equations for any sensors that need special equations
(only if needed)
♦
Command 3 to start sampling
♦
GET commands to retrieve the data from the CBL 2 (This forces the calculator to
wait for sampling to finish.)
♦
Command 12,41,0 to command the CBL 2 to return the number of transitions
recorded
♦
GET command to retrieve the number of transitions from the CBL 2
♦
Command 12, 41,M1 to command the CBL 2 to return the transitions recorded
♦
GET command to retrieve the number of transitions from the CBL 2
♦
Command 12, 41,M2 to command the CBL 2 to return the transition times recorded
♦
GET command to retrieve the number of transitions from the CBL 2
General Information
There are six types of motion capture commands. Each digital data capture command is
designed to support the capture or measurement of data from the digital input. Some
commands capture data at periodic intervals while others are triggered by changes in
the data.
Each of the digital data commands is designed for a specific sensor and/or experiment
as shown in the following table:
Send {12, 41, mode}
Mode = 1Sample Mode. This mode is used when none of the other
Send {12, 41, mode}
Mode = 2 and Mode = 3Measures pulse width of the data on the D0 line. This
Use
modes (below) are useful. In this mode, each time the
data changes, it is recorded in the CBL 2. This allows for
any new digital probes to be used if the user is willing to
write the program to process the data.
Use
mode is used with a photogate to get very accurate
measurement of the time the photogate is blocked.
Generally, this measurement is used to determine the
speed of an object (must know object’s length).
36CBL 2 Technical Reference
Send {12, 41, mode}
Mode = 4Measures period of the data on the D0 line. This mode is
Mode = 5Counts the transitions on the D0 input line of the Digital
Mode = 6Measures the outputs of a Vernier Rotary Motion sensor.
The sections that follow explain more fully how to use the digital data capture
commands.
Note: Command 12 is valid only in non-realtime mode; it is not valid in realtime mode.
Digital Input Syntax:
At each transition of the digital inputs, the absolute time and state of the inputs is
reported. See Fig 1.
Use,
continuedcontinued
used with a photogate to get very accurate measurement
of the times between when the photogate becomes
blocked. Generally, this measurement is used to
determine the speed of a wheel or a picket fence.
input port. This mode is used when the frequency of a
source with a TTL (or CMOS compatible) output must be
measured.
Generally this indicates the position of a wheel on the
sensor.
{12,41,1}
Digital/Sonic
(D 1 , D 2 )
Figure 3. Digital Input Measurement
Inputs will be value 0-3 corresponding to 00, 01,10, or 11. Each transition stored takes
three data point locations.
This command can be run at the same time as analog sampling.
After “getting” the analog channels, send the following commands to return the data
from the CBL 2 to the host:
Command Syntax: Comment:
{12,41,1}collect digital input data;
{12,41,0}return number of points collected on next get
{12,41,.1,
{12,41,.2,
Start,Stop
Start,Stop
statement;
}return state list on next get statement
}return time list on next get statement
send after “getting” the analog channels
send before Command 3
CBL 2 Technical Reference37
Notes on Operation
The digital inputs are sampled 10,000 times/second in the main timer ISR. (Transitions
that are so short that they are not seen in the ISR will be lost.) Each time a change in
the input bits is found, the time and the new value are written to a data buffer area.
When the data buffer area overflows, data collection is halted and an error message is
sent.
Pulse Width – Continuous Pulse Mode Syntax:
{12,41
,2 or 3,direction
Direction
0 = low active pulse
1 = high active pulse
This mode is designed to measure the widths of pulses in a continuous stream of
pulses. Each pulse is measured. See Figure 3.
Digital/Sonic (D0)
T
∆
Figure 4. Continuous Pulse Period Measurement
After “getting” the analog channels, send the following commands to return the data
from the CBL 2 to the host:
T
∆
Command Syntax: Comment:
{12,41,3}collect pulse width data in continuous pulse mode;
before Command 3
send
}
{12,41,0}return number of points collected on next get
{12,41,.1,
{12,41,.2,
Start,Stop
Start,Stop
statement;
}return @time list on next get statement
}return time list on next get statement
send after “getting” the analog channels
Notes on Operation
The Sonic Timer is used to record the time of the rising and falling edges. The
resolution is 1.6msec. At the start of the pulse the time is recorded and again at the end
of the pulses. The difference (properly scaled) is returned to the host.
38CBL 2 Technical Reference
Period – Continuous Pulse Mode Syntax:
{12,41
,4,direction
}
Direction
0 = low active pulse
1 = high active pulse
This mode is designed to measure the periods of pulses in a continuous stream of
pulses. Each pulse is measured. See Figure 4.
Digital/Sonic (D 0)
T
∆
Figure 5. Continuous Pulse Period Measurement
After “getting” the analog channels, send the following commands to return the data
from the CBL 2 to the host:
T
∆
T
∆
Command Syntax: Comment:
{12,41,4}collect period data in continuous pulse mode;
before Command 3
send
{12,41,0}return number of points collected on next get
{12,41,.1,
{12,41,.2,
Start,Stop
Start,Stop
statement;
}return @time list on next get statement
}return time list on next get statement
send after “getting” the analog channels
Notes on Operation
The Sonic Timer is used to record the time of the rising and falling edges. The
resolution is 1.6msec. At the start of the pulse the time is recorded and again at the end
of the pulses. The difference (properly scaled) is returned to the host.
Counter Mode Syntax:
This mode is designed to count the transitions on the DIGITAL input line. (Use
Command 1,1,7 to count the transitions on the ANALOG Channel 1 Hi input line.) The
ECHO pin (D0) must be used for the input.
{12,41,5}
CBL 2 Technical Reference39
After “getting” the analog channels, send the following commands to return the data
from the CBL 2 to the host:
Command Syntax: Comment:
{12,41,5}collect data in counter mode;
{12,41,0}return number of points collected on next get
{12,41,.1,
Start,Stop
statement;
}return count list on next get statement
send after “getting” the analog channels
send before Command 3
Notes on Operation
The Sonic Timer is re-configured as a counter and will count the input transitions. The
transitions count is limited to 65535 transitions per cycle. The cycle time is the same as
the sample time. In other words, one count will be returned for each analog sample
returned.
Rotary Motion Mode Syntax:
Scale Factor
Number of user units to
increment/decrement
for each count change
This mode is designed to measure the position of a rotary motion sensor. Rotational
motion information is determined by counting clockwise and counterclockwise signals
from the Vernier Rotary Motion Sensor. See Figure 5.
Start Position
Initial position
(in user units)
{12,41,6
,scalefactor,startpos
}
CWCNT (DI)
CCWCNT (D0)
Figure 6. Rotary Motion Mode
Each rising edge of the CWCNT (D1) line will cause the position to be incremented by 1.
Each rising edge of the CCWCNT (D0) line will cause the position to be decremented
by 1. The position will start at StartPos. Only a 16-bit counter will be used, giving a
count range from .32K to +32K.
One data point will be saved for each sample. Sampling will be commanded by the
normal Command 3.
40CBL 2 Technical Reference
After “getting” the Analog channels, send the following commands to return the data
from the CBL 2 to the host:
Command Syntax: Comment:
{12,41,6}collect data in rotary motion mode;
Command 3
{12,41,0}return number of points collected on next get
{12,41,.1,
Start,Stop
statement;
}return position list on next get statement
send after “getting” the analog channels
Additional Notes on Command 12
A few additional things to be aware of when using Command 12:
♦
When Command 12 is used, the power generally stays on all during sampling. (This
is because the processor must look for the data at all times during the sample
interval and not just at the sample times.) As a result, this mode tends to deplete
the batteries very quickly.
♦
The number of data samples taken is limited only by the available memory after
memory is reserved for the Command 1 channels that are set up. The CBL 2 has about
12,000 available memory locations. If X channels are setup and Y samples are selected
using Command 3, the number of samples on CH 41 is limited to (12,000 – X…Y)/3.
♦
You absolutely must have at least one analog channel activated before sending the
Command 3 to start sampling. You must do a GET of the analog data (to force the
calculator to wait for the end of sampling) before retrieving the Command 12
CH 41 data.
send before
Command 102Power Control Command
Syntax:
Power Control
.
1 = Always ON; will automatically power down (APD) if running on batteries.
0 = Normal mode
1-1000 = Powers up this many seconds before data taken
CBL 2 Technical Reference41
{102,
pwrctl
}
Command 115Check Set-up Information
Syntax:
{115,
channel
}
Channel
1, 2, 3, 11
This command returns the following status information:
CBL 2 sig
LabPro™ sig
Y-min
Y-max
Y-scale
sample rate
number of samples
operation command
calculation equation
sensor warm-up time
first coefficient
CBL 2 significant figures
LabPro significant figures
Suggested Y-min for graphing
Suggested Y-max for graphing
Suggested Y-scale for graphing
Typical sample rate
Typical number of samples to collect
Typical operation command
Suggested calculation equation for Command 4
Sensor warm-up time (in seconds)
Suggested first coefficient for Command 4
second coefficient
third coefficient
number of pages
active page
Suggested second coefficient for Command 4
Suggested third coefficient for Command 4
Sensor’s number of calculation pages (usually 0)
Sensor’s active calculation page (usually 0)
Command 116Check Long Sensor Name
Syntax:
Channel
1, 2, 3, 11
This command returns the following information:
long sensor name
{116,
channel
}
Returns long sensor name in a format the calculator can handle
42CBL 2 Technical Reference
P1
P
Command 117Check Short Sensor Name
Syntax:
{117,
channel
}
Channel
1, 2, 3, 11
This command returns the following information:
short sensor name
Returns short sensor name in a format the calculator can handle
Command 1998 Set LED Command
Syntax:
1 = Red LED
2 = Yellow LED
3 = Green LED
Note: Leaving a LED turned on will run down the batteries in the CBL 2.
{1998
,P1,P2
}
P2
0 = Off
1 = On
Command 1999 Sound Command
Syntax:
Length
Sound stays on this long (in
100ms steps)
Note: You can enter up to 32 pairs of values.
{1999,
length1,Pd1,length2,Pd2, . . .
d
Tone half period in 100ms steps
}
CBL 2 Technical Reference43
1
1
Command 2001 Direct Output to Digital-Out Port
Syntax:
{2001,
data1,data2,data3. . .,dataN
}
Data1. . .DataN
Must be between 0-15. For values outside this range, behavior is undefined.
This command outputs data to the digital output port during a sampling run, thus
giving the user interactive control of some types of hardware using the CBL 2 digital
output lines. Please note the following:
♦
You can send from 1 to 16 data points. If you send more than one point, all the
points will be sent out at about 200msec intervals before the next command is
parsed. This allows you to clock data into a latch with a single command.
♦
The data you send goes to the SONIC channel. If you are collecting data on the
SONIC channel and send this command, your data will be lost.
♦
Sending this command does not stop the sampling, and it should not affect the
analog channels.
CAUTION: No protection of any kind is provided. Operation is not guaranteed; use this
command at your own risk. If you are sampling via the sonic port, sending this command will
corrupt your data.
Command 201Archive Operations Command
Syntax:
This command allows the calculator to determine the contents of
Operation
0 = Delete/Write
Enable
1* = Get directory
size
2* = Get directory
information
3* = Get directory
Label (n)
{201,
5
operation,operand1,operand2,related_info_list
Operand 1
Not usedNot used2.46802 = enable
Not usedNot usedCalculator type
Directory type
(except Saved
Program)
Directory type
4
4
Operand 2
n
nCalculator type
}
FLASH
Related Information
Lis t
writing data to
1.35791 = enable
deletion of data from
FLASH
memory.
2
FLASH
3
3
44CBL 2 Technical Reference
1
1
Related Information
Operation
4 = Label directory
6
entry
11 = Clear directory
entry (n)
12 = Clear all
directory entries
13 = Clear all built-in
user programs
7
Operand 1
Directory type
4
Operand 2
n
(except Saved
Program)
Directory type
Directory type
4
nCalculator type
4
Not usedCalculator type
Not usedNot usedCalculator type
Lis t
2
3
3
3
21† = Save current
data set
Number of
elements in list
Not usedIdent 1
22 = Close data set (n)nNot used
23 = Restore data set (n)nNot used
24 = Save data set
supplemental list (n)
25* = Get data set
supplemental list size (n)
26* = Retrieve data set
supplemental list (n)
9
31† = Allocate saved
list
nStarting position
9
to store in archive
nNot used
9
nStarting position
(default = 1)
Number of
Not usedIdent 1
elements in list
32 = Save list data (n)nStarting position
to store in archive
33 = Close list (n)nNot used
34* = Get list size (n)nNot used
35* = Retrieve List (n)nStarting position
(default = 1)
41 = Select
programs
10
Not usedNot usedFirst item is calculator
Ident 2
8
List data (maximum 40
elements)
Number of elements
(default = 0 {all})
Ident 2
8
List data (maximum 40
elements)
Number of elements
(default = 0 {all})
type (73, 83, etc.)
followed by items to
retrieve
42 = Deselect
programs
11
Not usedNot used
43 = Retrieve
supplemental
programs
12
931-935, 941-945,
951-955 (RESERVED)
1001† = Perform
garbage collection
CBL 2 Technical Reference45
1
Operand information relating to whatever operation is being performed. (must be
integer)
2
Additional information about the operation to be performed.
3
The Calculator Type specifies the model of the calculator on which the user program
is running. This determines which programs in the CBL 2 archive will be shown in the
directory information. Available choices are: 73, 82, 83, 83.1 (for 83 Plus), 86, 89, 92,
and 92.1 (for 92 Plus).
4
The Directory Type specifies the entries in the archive on which to perform the
operation. Available choices are: 0 (Sample Data Set), 1 (Saved List), and 2 (Saved
Program).
5
If a directory entry does not have a label assigned to it, the CBL 2 reports the label as
‘????????????????????’.
5,6
Because the TI-82, TI-89, TI-92, and TI-92 Plus do not receive string variables, the
program names in the directory cannot be passed directly as strings. The Numeric List
option in operation 3 provides an indirect way of representing the names. The list
contains the ASCII code for each character in the name. These ASCII codes can be
interpreted by the user program to display the correct letters on the calculator.
6
Send a command with Operation 4 to set up label directory entry; then follow it with
another command that contains the label.
7
Built-in user programs: The CBL 2 stores a collection of calculator programs
(DataMate) and look-up tables in its
FLASH
memory. These programs are intended to
simplify the task of data collection and analysis. Because these programs are designed
to work together, they can only be stored and deleted as a group. To free up memory
in the CBL 2, you can delete the programs for calculators that you do not use.
Upgrading User Programs: The
FLASH
the user programs and lookup tables for all calculator platforms. The
Download software provides a way to update
FLASH
Download
process automatically deletes all existing user programs (all calculator models) from the
archive. The new look-up tables and programs are then installed into the archive.
(Instructions for downloading new software are given on the TI web site at
www.ti.com/calc
8
Two optional identifying numbers can be used when saving a data set or list. These
.)
numbers are saved with the data in addition to the supplied label.
9
Operations 24, 25, and 26 are provided to facilitate saving configuration information
in the same data structure as a saved experiment, rather than in a separate file.
10
Operation 41 allows you to retrieve programs saved on the CBL 2. You can save
programs to the CBL 2 by enabling writing {201,0,0,0,2.46802} and then sending
programs from the calculator’s LINK/SEND menu.
11
Operation 42 cancels operation 41 or 43. If the TRANSFER key is not pressed within
one minute, operations 41 and 43 cancel automatically.
46CBL 2 Technical Reference
12
The CBL 2 can store additional built-in programs in the same storage area as
DataMate (for example, programs such as DataDir and Photogate). Because of memory
space considerations, these supplemental programs are normally not transferred to the
calculator with DataMate when the TRANSFER key is pressed. Operation 43 allows you
to retrieve these supplemental programs by overriding the normal operation of the
TRANSFER key.
*Operations with an asterisk return values as explained below: (Use the GET command
after sending the command with this operation.)
♦
Operation 1:
If the data type in the GET command is a list, will return: {# Saved data sets, #
−
Lists, # Saved programs/applications, Reserved for DataMate, Reserved for
DataMate, Reserved for DataMate, Bytes free in archive}
If the data type in the GET command is a real number, will return Bytes free in
−
archive.
♦
Operation 2:
If the data type in the GET command is a list, will return: {Ident 1, Ident2}. (See
−
footnote 8 for explanation of these values.)
If the data type in the GET command is a real number, will return Ident 1.
−
♦
Operation 3:
If the data type in the GET command is a string, will return: 20-character name
−
of item.
If the data type in the GET command is a categorical list (TI-73 only), will return
−
4 elements of 5 characters each. Concatenate to form name of item.
If the data type in the GET command is a list, will return 20-element list, each
−
element representing a character code in the name of the item.
♦
Operation 25 or 34:
If the data type in the GET command is a list, will return: {# of elements}.
−
If the data type in the GET command is a real number, will return # of elements.
−
♦
Operation 26 or 35:
If the data type in the GET command is a list, will return a list of the elements
−
specified in the request.
General Notes:
♦
All data types are stored in the CBL 2 directory in the same order in which they are
received. The CBL 2 does not attempt to sort these entries in any other order.
♦
If you transfer to the CBL 2 a program with the same name as a program already in
storage, the old program will be deleted and the new program will be added to the
end of the directory. (A program with the same name but a different calculator
model will not be affected.)
CBL 2 Technical Reference47
♦
The labels and numeric information for data sets and lists can be the same as other
data sets and lists. The CBL 2 does not check for duplicate descriptions. The
uniqueness of the individual directory entries is preserved by their unique directory
entry numbers.
†Notes on Garbage Collection:
Operations 21, 31, and 1001 may cause the CBL 2 to automatically perform garbage
collection on the
FLASH
memory. For full or heavily used archives (many deleted items),
garbage collection can take over one minute to complete. Therefore, when executing
these operations, you must poll the CBL 2 to determine when the operation is
complete and it is safe to move to the next command. The CBL 2 will return a real
number or a single-element list (depending on the data type used by the calculator)
with the following values:
♦
2 = Performing garbage collection (operation may take extra time to complete)
♦
1 = Performing requested operation (wait for operation complete flag)
♦
0 = Requested operation is complete. Proceed with next command.
Continue to send GET commands until the CBL 2 returns the 0.
Notes on Battery Status:
Operations 11, 12, 13, 21, and 31 will generate an error if the battery status is low. The
other operations do not check the battery status because it is expected that the
program checks the results of these preliminary operations. This allows a full sequence
of operations (such as Allocate/Save/Label/Close list) to complete even if the battery
status should go low after the sequence has started. Therefore, it is important that
programs using these commands check and honor the error conditions reported by
these initial commands. (Use Command 7 to check the battery status.)
48CBL 2 Technical Reference
Programming Examples
Programs are created on a TI calculator to set up specific CBL 2 operations, depending
on the experiment that you want to perform. Samples of various types of programs
follow. Each program includes both program commands and comments explaining
what the commands do.
Example 1: Temperature Non-Realtime Data Collection
Reset CBL 2. (This clears CBL 2 RAM.)
Turn CBL 2 sound on.
Set up Channel 1 for data collection.
Take temperature sample every .1 second.
Retrieve temperature data to L
Retrieve time data to L
,.)
Plot temperature versus time.
1
.
Initalize graphing functions.
Set up the min/max range and scale factors as needed.
Reset CBL 2. (This clears CBL 2 RAM.)
Turn CBL 2 sound on.
Set up Channel 3 for data collection.
Dimension List
Take a sample once every second; re-arm immediately and get next
sample.
Get a sample and plot it on the graph for 30 points.
2
.
Example 3: Distance and Velocity Non-Realtime Data Collection
Reset CBL 2. (This clears CBL 2 RAM.)
Turn CBL 2 sound on.
Set up Channel 11 (Sonic) for data collection (distance and velocity).
Take a sample every .1 second.
Retrieve distance data to L
Retrieve velocity data to L
Retrieve time data to L
,.)
Plot distance versus time.
,+)
Plot velocity versus time.
2
.
3
.
1
.
Example 4: Multiple Channels Non-Realtime Data Collection
Reset CBL 2. (This clears CBL 2 RAM.)
Turn CBL 2 sound on.
Set up Channel 1 for temperature data collection in Centigrade.
Set up Channel 2 for temperature data collection in Fahrenheit.
Set up Channel 3 for light intensity data collection.
Take a sample every .1 second.
Retrieve temperature in Centigrade data to L
Retrieve temperature in Fahrenheit data to L
Retrieve light intensity data to L
Retrieve time data to L
Reset CBL 2. (This clears CBL 2 RAM.)
Turn CBL 2 sound on.
Set up Channel 1 for data collection with conversion equation enabled.
Take a sample every .1 second.
Apply unary equation to return the raw data.
Retrieve raw data to L
Retrieve time data to L
2
.
1
.
Apply exponential equation type to the raw data.
Retrieve the converted data to L
Reset CBL 2. (This clears CBL 2 RAM.)
Turn CBL 2 sound on.
Set up Channel 2 for temperature data collection in Fahrenheit.
Take a sample every .1 second.
Retrieve temperature in Fahrenheit data to L
Retrieve time data to L
1
.
Process temperature data 35 through 45 for retrieval.
Retrieve temperature data 35 through 45 to L
Example 7: Digital In Data Collection
:ClrAllLists
:ClrHome
:Send({0})
:Send({6,4})
:Send({1,21,1})
:Send({3,.1,100,0})
:Get(L
:Get(L
:Disp L
:Disp L
)
2
)
1
2
1
Reset CBL 2. (This clears CBL 2 RAM.)
Turn CBL 2 sound on.
Set up Channel 21 (Digital In) for digital data collection.
Take a sample every .1 second.
Retrieve collected digital data to L
Retrieve time data to L
Reset CBL 2. (This clears CBL 2 RAM.)
Turn CBL 2 sound on.
Turn power on if external LED is to display the Digital Out.
Set up Channel 31 (Digital Out) to output listed values to digital in source.
Every .5 second send the digital out value to the digital in source.
Reset CBL 2 to turn power off.
CBL 2 Technical Reference51
Example 9: CBL 2 LED Display
This program is just for fun. It makes the CBL 2’s lights blink on and off.
: For(M,1,10,1)
: For(N,1,3,1)
: Send({1998,N,1})
: End
: For(N,1,3,1)
: Send({1998,N,0})
: End
: End
Repeat 10 times to make the lights flicker on and off.
Turn all three lights on.
Turn all three lights off.
Example 10: Playing Music on the CBL 2
This program plays “We Wish You a Merry Christmas.”
K = 0.15 second
Play the short notes for 0.15 seconds and the long ones
for 0.3 seconds.
Enter each note value in the list.
2
Send each time and note to the CBL2 so that it can play
every note in the order of the lists.
Example 11: Command 8 Program
This is a program to receive data points while sampling.
:Send({0})
:Send({1,1,1})
:Send({3,.2,100,0})
:For(N,1,80,1)
:Send({8,1,0})
:Get(L
:Disp L
:End
:Get(L
)
2
2
)
1
Clear sampling settings.
Set up Channel 1 with auto-ID.
Take 100 samples in 20 seconds.
Use a loop to get samples as they are taken.
Ask for Channel 1’s last sampled data point.
Get the sensor type, most recent data point, and position in resulting list.
Display the three-element list to the screen.
Get the resulting list of data.
52CBL 2 Technical Reference
Example 12: Command 9 Program
This is a program used to read a single data point.
:Send({0})
:Send({1,1,1})
:Send({9,1,0})
:Get(A)
:Disp A
Clear sampling settings.
Auto-ID a TI temperature sensor.
Send Command 9 to get a single data point from Channel 1.
Get the single data point.
Display the one data point.
Example 13: Command 10 Program
This program uses Command 10 with the TI temperature sensor. This test is used to find
a sinusoidal-like pattern in temperature as it rises and falls constantly in an experiment
that lasts 10 minutes.
Clear sampling settings.
Auto-ID the TI temperature sensor.
Collect 1 sample every 6 seconds for 10 minutes.
Get the data for later use or display.
Send the advanced data reduction command with the heartbeat algorithm.
Set the lower threshold to 20% above the minimum point. Set the upper
threshold to 80% above the minimum point. Set the standard temperature
variance to 5¡C. If the maximum temperature minus the minimum
temperature is less than 5¡C, then the test proves there are no oscillations
in temperature outside of 5¡C in the 10-minute experiment. If the variance
is more than 5¡C, then this will count how many times it goes over the 80%
threshold level plus how many times it goes below the 20% threshold level.
:Get(A)
:A/6üB
:Disp B
Get the number of times the samples went above the upper threshold and
went below the lower threshold (the edge count). If the data range was less
than 5¡C, the result is zero.
Divide the edges per sample by the sample time. This returns true
frequency (edges per second).
memory.
Save the data. Make room for 5 list elements. Give some optional
identification (e.g., data from Section 1.1, Experiment 2).
Wait for operation to complete.
Locate newest data set in
1
L
[1].
Save associated data from L
FLASH
memory. Its entry number will be in
2
into the record.
Label the data set.
Close the data set. Saving is complete.
Reset the CBL 2 and calculator.
Locate the most recently saved data set.
Get and display the identifying label and numbers.
Get and display the saved list data.
Restore and display the sample data. Data can be retrieved using
Command 5, which is described elsewhere in this document.
54CBL 2 Technical Reference
Appendix A: Glossary
The following terms are used in the CBL 2 documentation.
Term
accuracyThe degree of conformity of a measure to a standard or a true
archiveStore data or programs in the FLASH memory of the CBL 2. (See
auto-IDAutomatic Identification. Feature that allows the CBL 2 to
CMOSComplementary Metal Oxide Semiconductor
FASTMODEA data collection mode in which the CBL 2 collects data on a
FLASHFLASH
non-realtimeA data collection mode in which the CBL 2 collects data, stores
Definition
value
page 9.)
automatically identify specific sensors when they are connected
to a CBL 2 channel.
single analog channel at a very fast sample rate, stores it
internally until all of the data points are taken, and then sends
it to the calculator.
is a technology built into CBL 2 that lets you
electronically upgrade the CBL 2’s operating system by
downloading future releases from TI’s web site.
it internally until all the data is collected, and then sends it to
the calculator.
precisionThe degree of refinement with which an operation is
performed or a measurement stated
realtimeA data collection mode in which the CBL 2 collects data and
sends it to the calculator as each point is taken.
resolutionThe process or capability of making distinguishable the
individual parts of an object
TTLTransistor-Transistor-Logic
CBL 2 Technical ReferenceA-1
Appendix B: CBL 2 Error Messages
Error messages that may occur when using CBL 2 without the DataMate program are
listed in this section.
In almost all cases, an error result causes the unit to sound the “low tone” three times
and to illuminate the red LED three times. When this happens, send the request for
status message and then observe the “error” parameter of the list returned. The
“error” parameter will be one of the values in the table below.
Error
Number Error Cause
0This is normal. No corrective action is needed.
1Invalid FASTMODE. An attempt to select fast sampling mode was
made. When in FASTMODE, only a single analog channel can be
active.
This error number also displays if the FASTMODE selection is a value
other than 0 or 1.
2FASTMODE ABORT. During FASTMODE, an attempt to communicate
with the CBL 2 was made while it was waiting for a trigger. As a result,
sampling was aborted.
5The list being sent contains a number that is too large to be represented
internally. This can only happen when the list being sent contains an
error.
6The list being sent contains a non-integer number where only integers
are allowed. For example, command numbers must be integers and a
command of 3.5 will produce this error.
8The list being sent contained too many numbers for proper
conversion. In general, no more than 32 numbers can be sent for some
commands and no more than 44 numbers for other commands.
9The command number sent (first number of the list) did not specify a
valid command.
12The channel selected for setup did not exist. Channel numbers must be
1-3, 11, 21, 31.
13The operation selected for the channel being setup is invalid. For
example, sonic channels cannot be setup for a voltage probe.
14An invalid value was selected for the post processing parameter. This
must be a number from 0 to 2.
16An invalid equation on/off parameter was found. The equation on/off
parameter must be a 0 or a 1.
17An invalid Frequency/Period selection parameter was found. This error
usually occurs when a second channel is selected for a measurement
during Frequency/Period measurements.
CBL 2 Technical ReferenceB-1
Error
Number Error Cause
18Multiple channels are not allowed to be selected at the same time for
the Digital/Sonic inputs. This error usually means that the sonic port
and a corresponding digital port have been selected.
22Command 2 contains invalid data.
30The filter type must be between 0 and 6 for NON-REALTIME data
collection mode and 0, 7, 8, or 9 for real time data collection mode.
This error results from a filter selection outside of this range.
31Command 3 was sent prior to performing any channel setups.
32Sample time must be greater than 0 and less than 16000 seconds. The
value is normally rounded to the nearest 100 µsec, but can be rounded
to the nearest 50 µsec in FASTMODE. If the selected channels cannot
support the rate selected, a slower sample rate will be used.
33The number of samples must be -1 for real time sampling and
between 1 and 12,000 for NON-REALTIME sampling. 0 is not allowed
except for a special case of real time sampling with manual entry.
34Trigger type must be an integer between 0 and 6. Any other value will
produce this error.
35The trigger channel must be a valid channel number (e.g., 1-3 or 11)
and must be have been enabled using the channel select command.
36The trigger threshold must be a value between the maximum and
minimum legal values for the sensor selected. For example, for the
+/-10V probe, legal values are from –10V to +10V.
37The prestore value must be an integer between 0 and 100%. Any
other values will produce this error message.
38The external clock parameter is limited to values of 0 or 1. Any other
value will produce this error.
39The record time parameter is limited to values between 0 and 2. Any
other values will produce this error message.
40This error will occur when too few parameters are sent in the list. For
example, when setting up an equation with 5 constants, if only 4 are sent,
this error will result.
42The equation channel number must be a 0 to reset equation, or a 1-3
for the analog channels or 11 for the sonic channel. Equation numbers
outside of this range will produce this error.
43The equation number must be in the range of .1 to 12 for analog
channels and either 0 or 13 for the sonic channel. Equation numbers
outside of this range will produce this error.
44The order of the equation must be appropriate for the equation type
selected. For example, an equation order of 5 is not valid for the
mixed polynomial equation.
B-2CBL 2 Technical Reference
Error
Number Error Cause
45This error occurred because (1) equations were enabled when sending
Command 1, but the equation was never sent using Command 4, or
(2) GET statement was issued before sending Command 4.
49Invalid units were selected for temperature when sending the
temperature for the sonic to use. Valid values are from 0 to 4.
52A channel was selected that is not a valid channel. The channel
numbers are 1-3, 11, 21, and 31.
53A data group was selected that is not valid. Valid values are from 0 to
5.
54The beginning-of-data selector must be 0 (for start of data) or 1
through the number of points collected. A number outside of this
range will produce this error message.
55The end-of-data selector must be 0 (for end of data) or 1 through the
number of points collected. A number outside of this range will
produce this error message. In addition, the end of the data must not
be before the beginning of the data.
59Digital probe has failed to read or write as commanded by the host.
61An attempt has been made to collect more data than can be stored in
one data collection. This unit has 24K of memory dedicated to data
storage, allowing up to 12K samples to be stored. (for example, 3072
samples per channel for 4 channels.) If more than this is attempted, an
error will result.
62This error results when an attempt to return data is made and data has
not been collected.
63This error results when sending Command 6 and an invalid second
parameter.
76This error results when sending Command 10 for a channel that does
not have data stored.
77This error results when sending a Command 10 and selecting an
algorithm that has not been defined.
78This error results when advanced algorithm is selected and the input
parameters for it are not correct.
80This error indicates that the battery voltage is too low to safely write
to
FLASH
memory. The batteries should be replaced immediately for the unit to
continue to perform properly.
81This error indicates that an attempt to write to the
failed and that the
This problem can occur under several circumstances including the
batteries becoming low after a
removing the AC9920 adapter during
occurs often, this could indicate a hardware failure.
CBL 2 Technical ReferenceB-3
memory and an attempt has been made to write to
memory
FLASH
FLASH
memory did not retain the value written.
FLASH
write has been started (or
FLASH
writes). If the problem
FLASH
Error
Number Error Cause
82This error indicates an attempt was made to change the contents of
FLASH
memory without properly enabling
FLASH
writes.
83This error indicates that the
attempt to write to the
some items from
84This error indicates an attempt was made to access an item in the
FLASH
85This error indicates that an attempt was made to access an item that is
in the
86This error indicates that the archive data type is not one of the data
formats supported. This error can result from trying to archive a data
set that has not been properly stored.
87The data to be archived must be NON-REALTIME data. Real time data
cannot be archived. This error results when trying to archive real time
data.
88This error results when an attempt is made to archive data during
sampling. Archive operations must occur only when the unit is idle.
97This error indicates an attempt to use a channel that does not exist on
CLB2 (for example, channel 42).
98This error indicates an undefined error has occurred.
99This error indicates that the current load on the analog or digital ports
is more than can be supplied by the unit and the power has been
turned off to prevent damage. Do not attempt to restart sampling
until the problem has been corrected.
memory that does not exist.
FLASH
FLASH
memory, but hasn’t been properly opened for access.
FLASH
FLASH
memory and repeat.
memory directory is full and an
memory occurred. If this occurs, delete
B-4CBL 2 Technical Reference
Appendix C: DataMate Sensor Setup
Default Settings
The table that follows shows the default settings used by the DataMate program. This
sensor and calibration information applies only to Vernier and TI sensors. The use of
other manufacturers’ sensors may require calibration or the input of that sensor’s
calibration information into DataMate.
Note: Default settings apply only when using a single sensor that is connected to Channel 1.
Sample
Short
Sensor Name
Dir connect Temp (C)TEMP(C)-151101180
Name
Y-Min
Y-Max
Interval
(in seconds)
No. Of
Samples
Dir connect Temp (F)TEMP(F)02501180
Extra Long Temp (C)TEMP(C)-501501180
Stainless Temp (C)TEMP(C)-201251180
Stainless Temp (F)TEMP(F)-52601180
Thermocouple (C)TEMP(C)-20014001180
pHPH014260
Conduct 200 (mS)CONDUCT
(MICS)
Conduct 100(MG/L)TDS(MG/L)01001180
Conduct 2000(mS)CONDUCT
(MICS)
Conduct 1000(MG/L)TDS(MG/L)010001180
Conduct 20000(mS)CONDUCT
(MICS)
Conduct
10000(MG/L)
Gas Pressure (KPA)PRESS
TDS(MG/L)0100001180
(KPA)
02001180
020001180
0200001180
501501090
Gas Pressure
(MMHG)
Gas Pressure (ATM)PRESS
Gas Pressure (INHG)PRESS
Pressure (KPA)PRESS
PRESS
(MMHG)
(ATM)
(INHG)
(KPA)
40012001090
0.51.61090
06510 90
07001180
CBL 2 Technical ReferenceC-1
Sample
Sensor Name
Short
Name
Y-Min
Y-Max
Interval
(in seconds)
No. Of
Samples
Pressure (ATM)PRESS
(ATM)
Pressure (MMHG)PRESS
(MMHG)
Bio Pressure (KPA)PRESS
(KPA)
Bio Pressure (MMHG)PRESS
(MMHG)
Bio Pressure (ATM)PRESS
(ATM)
Bio Pressure (INHG)PRESS
(INHG)
Dual R Force (5N)FORCE(N)-550.05100
Dual R Force (10N)FORCE(N)-10100.05100
Dual R Force (50N)FORCE(N)-50500.05100
Student Force (N)FORCE(N)-40100.05100
EX Heart Rate (BPM)Heart
RT(BPM)
07001180
052001180
761561090
55012001090
0.751.61090
20501090
451705180
Heart Rate (BPM)Heart
RT(BPM)
25G Accel (M/S2)ACCEL
Low G Accel (M/S2)ACCEL
ColorimeterABSOR-
CO2 Gas (PPM)CO2 GAS
CO2 Gas (PPT)CO2 GAS
CBL MicrophoneMICRO-
ULI MicrophoneMICRO-
MPLI MicrophoneMICRO-
TI Light SensorLIGHT010.05180
2
(M/S
)
2
(M/S
)
BANCE
(PPM)
(PPT)
PHONE
PHONE
PHONE
451705180
-2502500.05100
-50500.05100
00.65180
050001030
051030
051.00E-04200
051.00E-04200
-551.00E-04200
C-2CBL 2 Technical Reference
Sample
Short
Sensor Name
Light 600(LX)LIGHT(LX)06000.05180
Light 6000(LX)LIGHT(LX)060000.05180
Light 150000(LX)LIGHT(LX)01500000.05180
D. Oxygen (MG/L)DO(MG/L)412260
EKGEKG-0.540.01200
CA ISE (MG/L)CA(MG/L)0400001180
NH4 ISE (MG/L)NH4(MG/L)0180001180
NO3 ISE (MG/L)NO3(MG/L)0140001180
CL ISE (MG/L)CL(MG/L)0360001180
Name
Y-Min
Y-Max
Interval
(in seconds)
No. Of
Samples
Flow Rate (M/S)FLOW RT
(M/S)
Flow Rate (FT/S)FLOW RT
(FT/S)
Respiration (BPM)RESP RT
(BPM)
Turbidity (NTU)TURBID
(NTU)
C V Current (A)CURRENT
(A)
C V Voltage (V)VOLTAGE
(V)
Voltage L10 to 10 (V)VOLTAGE
(V)
Voltage 0 to 5 (V)VOLTAGE
(V)
Hi Magnet Fld (MT)MAGNET
F(MT)
Hi Magnet Fld (G)MAGNET
F(G)
041180
0131180
03010180
0501180
-0.60.60.1180
-660.1180
-10100.1180
050.1180
-0.320.320.05180
3.23.20.05180
L
Lo Magnet Fld (MT)MAGNET
F(MT)
Lo Magnet Fld (G)MAGNET
F(G)
Barometer (KPA)BARO(KPA)80110600180
Barometer (MMHG)BARO
(MMHG)
-1050.05180
-100500.05180
600800600180
CBL 2 Technical ReferenceC-3
Sample
Sensor Name
Short
Name
Y-Min
Y-Max
Interval
(in seconds)
No. Of
Samples
Barometer (INHG)BARO
(INHG)
Barometer (MBAR)BARO
(MBAR)
Relative Humidity
(PCT)
Oxygen Gas (PCT)O2 GAS
Oxygen Gas (PPT)O2 GAS
Custom 0 to 5 (V)CUSTOM051180
Custom L10 to 10 (V)CUSTOM
Motion (M)MOTION
Motion (FT)MOTION
Current Probe (A)CURRENT
Resistance (OHMS)RES
REL HUM
(PCT)
(PCT)
(PPT)
(M)
(FT)
(A)
(OHMS)
2432600180
8101060600180
0100600180
15251540
1502501540
10101180
L
060.05100
1200.05100
10100.1180
L
01000000.1180
The values in the table are valid for all calculator versions of DataMate except the
TI-73, TI-82, TI-83, and TI-92. Because of memory limitations on these calculators, the
number of data points is reduced.
♦
For the TI-73, the number of samples will be reduced if it exceeds 100 and multiple
samples are set up.
♦
For the TI-82, all default number of samples will be limited to 99 points.
♦
For the TI-83, the number of samples will be reduced if it exceeds 200 points and
multiple samples are set up.
C-4CBL 2 Technical Reference
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.