The chat responses are generated using Generative AI technology for intuitive search and may not be entirely accurate. They are not intended as professional advice. For full details, including our use rights, privacy practices and potential export control restrictions, please refer to our Generative AI Service Terms of Use and Generative AI Service Privacy Information. As this is a test version, please let us know if something irritating comes up. Like you get recommended a chocolate fudge ice cream instead of an energy managing application. If that occurs, please use the feedback button in our contact form!
Skip to content

CSV

Structure

Each CSV file can contain a number of waveforms in the following format:

timestamp,amplitudeUnit,measurementType,spacing,end,number,speed,data
2024-03-04T18:13:00Z,mm/s,velocity,1,4,5,2,"0,1,2,3,4"

A file version of this example is available here.

The following describes the structure in further detail:

  • The first row must be a header. The fields are all compulsory.
  • The timestamp column should contain RFC3339 dates and times, including timezone - more details on the required format are available here.
  • Each row should contain a frequency spectrum. It is assumed that the data starts at 0 Hz.
  • The amplitudeUnit should be a string value representing the units of measurement for the amplitude. For velocity, 'in/s', 'mm/s' and 'm/s' are valid units. For acceleration, 'in/s^2', 'mm/s^2' and 'm/s^2' are valid units. Conversion must be undertaken to one of these units prior to sending data to Senseye.
  • The measurementType should be a string value of either 'velocity' or 'acceleration'.
  • The spacing details the gap between bins in seconds, i.e. here 1s.
  • The end details the timestamp at the last value in seconds i.e. here 4s.
  • The number is the number of points in the spectrum i.e. here 5.
  • The speed is the speed of the machine, or reference frequency, in Hz i.e. here 2Hz
  • The data field is a comma separated list of points, wrapped in escaped quote marks. The data is interpreted as a list of 64-bit floating point values. The number of these must match the number parameter.
  • Numbers must use a period (.) as the decimal separator.
  • Each row must have the same number of columns as the header row.

File

Name

File names should be made up of two parts: the mapping ID for the sensor the data is for and a unique value to avoid collisions, separated by @. As an example: motorM32@1651149458.csv.

The initial section of the filename is used to route the data to the correct sensor based on the mapping ID. If a new mapping ID/filename is provided, Senseye will provision a new sensor associated with this mapping ID and route all future files using this mapping ID as the filename to the sensor. In the above example, the mapping ID would be motorM32.

The later section is included to avoid file collisions. We recommend using a unix timestamp, but any unique value is suitable. In the above example, the unix timestamp is 1651149458.

Size

Please limit CSV files to no more than 10MB each.

Encoding

The data file must use UTF-8 character encoding.