Updated triangualr waveform gen

This commit is contained in:
Martino Ferrari
2026-02-06 18:05:05 +01:00
parent 12ceba0bf6
commit 9f110481ad
5 changed files with 30 additions and 39 deletions

View File

@@ -51,7 +51,7 @@ JATriangleWaveGAM::JATriangleWaveGAM() {
frequency = NULL_PTR(MARTe::float32 *); frequency = NULL_PTR(MARTe::float32 *);
amplitude = NULL_PTR(MARTe::float32 *); amplitude = NULL_PTR(MARTe::float32 *);
offset = NULL_PTR(MARTe::float32 *); offset = NULL_PTR(MARTe::float32 *);
plcStandby = NULL_PTR(MARTe::uint32 *); plcStandby = NULL_PTR(MARTe::uint8 *);
waveOutput = NULL_PTR(MARTe::float32 *); waveOutput = NULL_PTR(MARTe::float32 *);
time = 0.0f; time = 0.0f;
} }
@@ -130,7 +130,7 @@ bool JATriangleWaveGAM::Setup() {
} }
else { else {
TypeDescriptor inputType = GetSignalType(InputSignals, plcStandbyIndex); TypeDescriptor inputType = GetSignalType(InputSignals, plcStandbyIndex);
ok = (inputType == UnsignedInteger32Bit); ok = (inputType == UnsignedInteger8Bit);
if (!ok) { if (!ok) {
REPORT_ERROR(ErrorManagement::ParametersError, "PLCSTANDBY shall be defined as uint32."); REPORT_ERROR(ErrorManagement::ParametersError, "PLCSTANDBY shall be defined as uint32.");
} }
@@ -147,7 +147,7 @@ bool JATriangleWaveGAM::Setup() {
frequency = reinterpret_cast<float32 *>(GetInputSignalMemory(freqIndex)); frequency = reinterpret_cast<float32 *>(GetInputSignalMemory(freqIndex));
amplitude = reinterpret_cast<float32 *>(GetInputSignalMemory(ampIndex)); amplitude = reinterpret_cast<float32 *>(GetInputSignalMemory(ampIndex));
offset = reinterpret_cast<float32 *>(GetInputSignalMemory(offsetIndex)); offset = reinterpret_cast<float32 *>(GetInputSignalMemory(offsetIndex));
plcStandby = reinterpret_cast<uint32 *>(GetInputSignalMemory(plcStandbyIndex)); plcStandby = reinterpret_cast<uint8 *>(GetInputSignalMemory(plcStandbyIndex));
waveOutput = reinterpret_cast<float32 *>(GetOutputSignalMemory(0)); waveOutput = reinterpret_cast<float32 *>(GetOutputSignalMemory(0));
} }
return ok; return ok;

View File

@@ -114,7 +114,7 @@ private:
//MARTe::uint32 *plcReady; //MARTe::uint32 *plcReady;
// Input signal condition CCPS_STANDBY // Input signal condition CCPS_STANDBY
MARTe::uint32 *plcStandby; MARTe::uint8 *plcStandby;
MARTe::float32 *waveOutput; MARTe::float32 *waveOutput;

View File

@@ -6,9 +6,6 @@
Class = RealTimeThreadSynchronisation Class = RealTimeThreadSynchronisation
Timeout = 0xFFFFFFFF Timeout = 0xFFFFFFFF
Signals = { Signals = {
Time = {
Type = uint64
}
PXI6259_Status = { PXI6259_Status = {
Type = uint32 Type = uint32
} }
@@ -149,9 +146,6 @@
+SyncThreadProducerGAM = { +SyncThreadProducerGAM = {
Class = IOGAM Class = IOGAM
InputSignals = { InputSignals = {
AbsoluteTime = {
DataSource = FastTimer
}
PXI6259_Status = { PXI6259_Status = {
Alias = Status Alias = Status
DataSource = NI6259_DIO_P0 DataSource = NI6259_DIO_P0
@@ -257,9 +251,6 @@
} }
} }
OutputSignals = { OutputSignals = {
Time = {
DataSource = SynchThread
}
PXI6259_Status = { PXI6259_Status = {
DataSource = SynchThread DataSource = SynchThread
} }

View File

@@ -469,101 +469,101 @@
PXI6368_Status_Async = { PXI6368_Status_Async = {
Alias = PXI6368_Status Alias = PXI6368_Status
DataSource = DDB4 DataSource = DDB4
Range = { { 0, 0 } } Ranges = { { 0, 0 } }
} }
PXI6368_Status = { PXI6368_Status = {
DataSource = DDB4 DataSource = DDB4
Range = { { 0, 0 } } Ranges = { { 0, 0 } }
} }
GY_APS_V_MEAS_Async = { GY_APS_V_MEAS_Async = {
Alias = GY_APS_V_MEAS Alias = GY_APS_V_MEAS
DataSource = DDB4 DataSource = DDB4
Range = { { 0, 0 } } Ranges = { { 0, 0 } }
} }
GY_APS_V_MEAS = { GY_APS_V_MEAS = {
DataSource = DDB4 DataSource = DDB4
Range = { { 0, 0 } } Ranges = { { 0, 0 } }
} }
GY_APS_I_MEAS_Async = { GY_APS_I_MEAS_Async = {
Alias = GY_APS_I_MEAS Alias = GY_APS_I_MEAS
DataSource = DDB4 DataSource = DDB4
Range = { { 0, 0 } } Ranges = { { 0, 0 } }
} }
GY_APS_I_MEAS = { GY_APS_I_MEAS = {
DataSource = DDB4 DataSource = DDB4
Range = { { 0, 0 } } Ranges = { { 0, 0 } }
} }
GY_BPS_V_MEAS_Async = { GY_BPS_V_MEAS_Async = {
Alias = GY_BPS_V_MEAS Alias = GY_BPS_V_MEAS
DataSource = DDB4 DataSource = DDB4
Range = { { 0, 0 } } Ranges = { { 0, 0 } }
} }
GY_BPS_V_MEAS = { GY_BPS_V_MEAS = {
DataSource = DDB4 DataSource = DDB4
Range = { { 0, 0 } } Ranges = { { 0, 0 } }
} }
GY_BPS_I_MEAS_Async = { GY_BPS_I_MEAS_Async = {
Alias = GY_BPS_I_MEAS Alias = GY_BPS_I_MEAS
DataSource = DDB4 DataSource = DDB4
Range = { { 0, 0 } } Ranges = { { 0, 0 } }
} }
GY_BPS_I_MEAS = { GY_BPS_I_MEAS = {
DataSource = DDB4 DataSource = DDB4
Range = { { 0, 0 } } Ranges = { { 0, 0 } }
} }
GY_MHV_V_MEAS_Async = { GY_MHV_V_MEAS_Async = {
Alias = GY_MHV_V_MEAS Alias = GY_MHV_V_MEAS
DataSource = DDB4 DataSource = DDB4
Range = { { 0, 0 } } Ranges = { { 0, 0 } }
} }
GY_MHV_V_MEAS = { GY_MHV_V_MEAS = {
DataSource = DDB4 DataSource = DDB4
Range = { { 0, 0 } } Ranges = { { 0, 0 } }
} }
GY_MHV_I_MEAS_Async = { GY_MHV_I_MEAS_Async = {
Alias = GY_MHV_I_MEAS Alias = GY_MHV_I_MEAS
DataSource = DDB4 DataSource = DDB4
Range = { { 0, 0 } } Ranges = { { 0, 0 } }
} }
GY_MHV_I_MEAS = { GY_MHV_I_MEAS = {
DataSource = DDB4 DataSource = DDB4
Range = { { 0, 0 } } Ranges = { { 0, 0 } }
} }
GY_ARC1_V_MEAS_Async = { GY_ARC1_V_MEAS_Async = {
Alias = GY_ARC1_V_MEAS Alias = GY_ARC1_V_MEAS
DataSource = DDB4 DataSource = DDB4
Range = { { 0, 0 } } Ranges = { { 0, 0 } }
} }
GY_ARC1_V_MEAS = { GY_ARC1_V_MEAS = {
DataSource = DDB4 DataSource = DDB4
Range = { { 0, 0 } } Ranges = { { 0, 0 } }
} }
GY_ARC2_V_MEAS_Async = { GY_ARC2_V_MEAS_Async = {
Alias = GY_ARC2_V_MEAS Alias = GY_ARC2_V_MEAS
DataSource = DDB4 DataSource = DDB4
Range = { { 0, 0 } } Ranges = { { 0, 0 } }
} }
GY_ARC2_V_MEAS = { GY_ARC2_V_MEAS = {
DataSource = DDB4 DataSource = DDB4
Range = { { 0, 0 } } Ranges = { { 0, 0 } }
} }
GY_ARC3_V_MEAS_Async = { GY_ARC3_V_MEAS_Async = {
Alias = GY_ARC3_V_MEAS Alias = GY_ARC3_V_MEAS
DataSource = DDB4 DataSource = DDB4
Range = { { 0, 0 } } Ranges = { { 0, 0 } }
} }
GY_ARC3_V_MEAS = { GY_ARC3_V_MEAS = {
DataSource = DDB4 DataSource = DDB4
Range = { { 0, 0 } } Ranges = { { 0, 0 } }
} }
GY_RF_V_MEAS_Async = { GY_RF_V_MEAS_Async = {
Alias = GY_RF_V_MEAS Alias = GY_RF_V_MEAS
DataSource = DDB4 DataSource = DDB4
Range = { { 0, 0 } } Ranges = { { 0, 0 } }
} }
GY_RF_V_MEAS = { GY_RF_V_MEAS = {
DataSource = DDB4 DataSource = DDB4
Range = { { 0, 0 } } Ranges = { { 0, 0 } }
} }
} }
OutputSignals = { OutputSignals = {

View File

@@ -29,7 +29,7 @@
GYA_APS_READY = { GYA_APS_READY = {
SamplingFrequency = @fast_clock SamplingFrequency = @fast_clock
NumberOfElements = @dan_ratio NumberOfElements = @dan_ratio
Type = uint32 Type = uint8
NodeName = @rfid .. ":GYA_APS_READY" NodeName = @rfid .. ":GYA_APS_READY"
} }
GYA_APS_FLT = { GYA_APS_FLT = {
@@ -203,13 +203,13 @@
Class = IOGAM Class = IOGAM
InputSignals = { InputSignals = {
Time = { Time = {
DataSource = SynchThread DataSource = FastTimer
Samples = @dan_ratio Alias = AbsoluteTime
Frequency = 1
} }
PXI6528_Status = { PXI6528_Status = {
DataSource = SynchThread DataSource = SynchThread
Samples = @dan_ratio Samples = @dan_ratio
Frequency = 1
} }
GYA_APS_READY = { GYA_APS_READY = {
DataSource = SynchThread DataSource = SynchThread