Updated 10/5/01 , 16:23:41
Proposal for a general "CHYDENIUS DATA FILE FORMAT" (CDF)
Variable Type Comments
version char(15) Version stamp in order to keep track of changes in the
specifications.
date_stamp char(11) YYYY-MM-DD time_stamp char(9) HH:MM:SS
data_id unsigned int Primary Key links the data file to the test information in DB.
nr_of_channels int The number of "columns" of data.
test_mode int Modes listed in DB.
test_code char(15) The experimenter may code different sorts of test and projects.
pers_code char(15) May be used for looking up the testperson in the DB.
add_info char(20) Eg for unique equipment identification.
ch1_nr int Here starts the first channel info.
data_source1 int Such as force, torque, angle, EMG, etc.
data_unit1 int Gives the physical unit of the data. Refers to a list of physcal units: meter, newton, radians, etc.
nr_of_elements1 double Number of elements in the data from Ch1
duration1 double Time covered in seconds by the data from Ch1.
conv_divisor1 double Eg if the data is saved for
economy as 16 bit short integers one might need a conversion
divisor and offset in order to obtain the original real measured values.
conv_offset1 double original measured value =
data/conv_divisor + conv_offset
Frank Borg ( borgbros@netti.fi), Chydenius Institute.
Updated 10/5/01 , 16:23:41
Variable Type Comments
compression1 int For future use in case eg wavelet compression of data will be
employed.
data_type1 int Data types DATATYP (int, float, char, etc) listed in DB.
data11 DATATYP1 Here starts data1 of channel1.
data12 DATATYP1
... ...
data1n DATATYP1
ch2_nr int Here starts the channel2 info and next comes data2 etc.
... ... ...
Proposal for a DATA TYPES table
data_type id Name Type (ANSI ISO C) Size (bytes)
10 cdf_char char 1 byte
20 cdf_uchar unsigned char 1 byte
30 cdf_short short 2 bytes
40 cdf_ushort unsigned short 2 bytes
50 cdf_int integer 4 bytes
60 cdf_uint unsigned integer 4 bytes
70 cdf_float float 4 bytes
80 cdf_long long 4 bytes
90 cdf_ulong unsigned long 4 bytes
100 cdf_double double 8 bytes
The idea of the cdf-format is to facilitate pooling and analysis of biomedical data such as combinations of EMG, EKG, force, angle, etc. Instead of trying to shave off every corner in terms of bit-space it is made simple and transparent. Physical units are expected to adhere to the SI MKSA-system as a default. Setting data_unit = 0 signifies that the default unit is to be used e.g. N for force. For EMG and EKG the default unit will however be µ V (10
-6V).
Frank Borg ( borgbros@netti.fi), Chydenius Institute.
Updated 10/5/01 , 16:23:41
Proposal for DATA SOURCE and UNITS table
Data source data_source id
Unit data_unit id
Counter 0 Dimensionless 0 default
Time 10 s (second) 0 default
Length 20 m (meter) 0 default
Velocity 21 m/s 0 default
Acceleration 22 m/s2
Mass 30 kg (kilogram)
Force 50 N (Newton)
0 0 0
default default default
Torque 60 Nm (Newton meter) 0 default
Angle
70 degree (deg) radian (rad)
0 10
default
Pressure
80 bar (105 Pa) Pa (pascal)
0 10 Voltage
100
V
mV (10-3 V) µV (10-6 V)
0 10 20
default
Charge 110 C (Coloumb) 0 default
Current 111 A (Ampere, C/s) 0 default
Unspecified 1000 Dimensionless 0
EMG
(electro-
myogram) 1010
µV (10-6 V) 0 default
mV (10-3 V) 10
Normalized 100
EKG
(electro-
cardiogram) 1020
µV (10-6 V) 0 default
mV (10-3 V) 10
Normalized 100
Frank Borg ( borgbros@netti.fi), Chydenius Institute.