A JSON object describing a signal generator signal has the following syntax:
{
"@Skill.SignalGenerator.Signal": {
"name": "Inspector 1",
"UUID": "391c774a-c2ee-45c4-acac-a9eda90a392f",
"ACL": { ... },
"dataType": "float32",
"top": 100,
"bottom": 0,
"waveForm": {
"@Pulse": {
"period": "5s",
"phaseOffset": "0",
"pulseWidth": "1.5s"
}
}
}
}
- Object Members
name | A string value containing the name of the signal. The name is used to construct the signal’s primary key. |
UUID | A string value containing the unique UUID of the signal. |
ACL | An optional JSON object containing the element ACL of the signal. The format of the object is described under JSON Format for ACLs. |
dataType | The generated data type. The following data types are supported:
Keyword | Data Type |
"int8" | 8 bit signed integer |
"int16" | 16 bit signed integer |
"int32" | 32 bit signed integer |
"int64" | 64 bit signed integer |
"uint8" | 8 bit usigned integer |
"uint16" | 16 bit usigned integer |
"uint32" | 32 bit unsigned integer |
"uint64" | 64 bit unsigned integer |
"float32" | single precision floating point number |
"float64" | double precision floating point number |
"bool" | Boolean value. Wave form values greater than 0.5 are represented as true, Values less than or equal to 0.5 are represented as false |
|
top | A numeric value containing the top of the value range of the generated signal. If this value is less than bottom, then the wave form will be inverted. |
bottom | A numeric value containing the bottom of the value range of the generated signal. If this value is greater than top, then the wave form will be inverted. |
waveForm | A JSON object containing information about the wave form to generate. The object is a double nested JSON object. The outer object has a single member whose name is the type of wave form, and whose value is another JSON object that contains the actual properties of the wave form.
Signals generators support the following wave forms:
Descriptor | Wave Form | Normal Shape (top > bottom) | Inverted Shape (top < bottom) |
"@Pulse" | Pulse wave | | |
"@SineWave" | Sinusoidal wave | | |
"@Triangle" | Triangle wave | | |
"@SawTooth" | Sawtooth wave | | |
"@Noise" | White noise | | (same as normal shape) |
The inner object has the following members:
period | A string value containing the period of the generated wave. The format of the string is described under JSON Format for Time Intervals.
This member is not available for the wave form "@Noise".
|
phaseOffset | An optional numeric value containing the phase offset of the generated wave. The wave form will be shifted to the left by the specified time interval compared to wave forms with phase offset 0. The format of the string is described under JSON Format for Time Intervals.
This member is not available for the wave form "@Noise".
|
pulseWidth | The width of the “up” phase of a pulse wave, where the value is equal to the top value. This value must be greater than 0, and less than the period. The format of the string is described under JSON Format for Time Intervals.
This member is only available for the wave form "@Pulse".
|
|