map/das-dn/hostadsbf/TurbineData.h

226 lines
5.8 KiB
C
Raw Normal View History

2024-12-03 10:36:06 +08:00
#pragma once
#include <cstdint>
//according to ChaGanHu wind park MY1.5se-89 with Beckhoff controller
#pragma pack(1)
struct CGHAdsOverviewData{
uint16_t iTurbineOperationMode;
uint16_t iBPLevel;
uint16_t iYPLevel;
uint8_t bYawCCWStart;
uint8_t bYawCWStart;
uint8_t bTowerDoorOpen;
float fGenPower;
float fGenPower1s;
float fGenPower30s;
float fGenSpeed;
float fGenSpeed1s;
float fGenSpeed30s;
float fPitchAngle;
float fPitchAngle1s;
float fPitchAngle30s;
float fWindSpeed;
float fWindSpeed1s;
float fWindSpeed30s;
float fPowerFactor;
float fReactivePower;
float fGridFrequency;
float fGridVoltageL1;
float fGridVoltageL2;
float fGridVoltageL3;
float fGridCurrentL1;
float fGridCurrentL2;
float fGridCurrentL3;
float fActivePowerSetPoint;
float fGenSpeedSetPoint;
float fPitchAngleSetPoint;
float fNacellePositionLtd;
float fCableTwistAngle;
float fNacellePositionTotal;
float fVaneDirection1s;
float fAvailabilityToday;
float fAvailabilityTotal;
float fPowerFactorSetPoint;
int32_t fEnergyProducedTotal;
int32_t fEnergyProducedToday;
uint32_t iOperationHoursTotal;
uint32_t iOperationHoursToday;
uint16_t SCW001;
uint16_t SCW002;
uint16_t SCW003;
uint16_t SCW004;
uint16_t SCW005;
uint16_t SCW006;
uint16_t SCW007;
uint16_t SCW008;
uint16_t SCW009;
uint16_t SCW010;
uint16_t SCW011;
uint16_t SCW012;
uint16_t SCW013;
uint16_t SCW014;
uint16_t SCW015;
uint16_t SCW016;
uint16_t SCW017;
uint16_t SCW018;
uint16_t SCW019;
uint16_t SCW020;
uint16_t SCW021;
uint16_t SCW022;
uint16_t SCW023;
uint16_t SCW024;
uint16_t SCW025;
uint16_t SCW026;
uint16_t SCW027;
uint16_t SCW028;
uint16_t SCW029;
uint16_t SCW030;
uint16_t SCW031;
uint16_t SCW032;
uint16_t SCW033;
uint16_t SCW034;
uint16_t SCW035;
uint16_t SCW036;
uint16_t SCW037;
uint16_t SCW038;
uint16_t SCW039;
uint16_t SCW040;
uint16_t SCW041;
uint32_t dwFaultInformation;
uint32_t dwWecRunCondition;
uint32_t dwTriggeredSCAddress;
float fWindSpeedIec;
float fWindSpeedIec30s;
float fWindSpeedIec10min;
float fRotorSpeed;
float fNacelleVibrationY;
float fNacelleVibrationZ;
float fNacelleVibrationYFiltered;
float fNacelleVibrationZFiltered;
float fHydraulicPressure;
float fYawPressure;
float fWindSpeed10min;
float fPitch1Angle;
float fPitch2Angle;
float fPitch3Angle;
float fPowerSetPointFlag;
float fStandardAirDensity;
float fAirDensity;
float fLocalWindSpeed;
float fDynamicPower;
uint16_t iMVTransSign1;
uint16_t iMVTransSign2;
uint16_t iMVTransSign3;
}*pCGHAdsOverviewData;
struct CGHAdsTempData{
float fEnvTemp1s;
float fEnvTemp30s;
float fEnvTemp10min;
float fHubTemp1s;
float fHubTemp30s;
float fHubTemp10min;
float fNacelleTemp1s;
float fNacelleTemp30s;
float fNacelleTemp10min;
float fTowerBaseTemp1s;
float fTowerBaseTemp30s;
float fTowerBaseTemp10min;
float fNacelleCabinetTemp1s;
float fNacelleCabinetTemp30s;
float fNacelleCabinetTemp10min;
float fTowerBaseCabinetTemp1s;
float fTowerBaseCabinetTemp30s;
float fTowerBaseCabinetTemp10min;
float f400vTransTemp1s;
float f400vTransTemp30s;
float f400vTransTemp10min;
float fPitchTransTemp1s;
float fPitchTransTemp30s;
float fPitchTransTemp10min;
float fPitch1MotorTemp1s;
float fPitch1MotorTemp30s;
float fPitch1MotorTemp10min;
float fPitch2MotorTemp1s;
float fPitch2MotorTemp30s;
float fPitch2MotorTemp10min;
float fPitch3MotorTemp1s;
float fPitch3MotorTemp30s;
float fPitch3MotorTemp10min;
float fRotorBearATemp1s;
float fRotorBearATemp30s;
float fRotorBearATemp10min;
float fRotorBearBTemp1s;
float fRotorBearBTemp30s;
float fRotorBearBTemp10min;
float fGearOilTemp1s;
float fGearOilTemp30s;
float fGearOilTemp10min;
float fGearDEBearTemp1s;
float fGearDEBearTemp30s;
float fGearDEBearTemp10min;
float fGearNDEBearTemp1s;
float fGearNDEBearTemp30s;
float fGearNDEBearTemp10min;
float fGearCoolWaterTemp1s;
float fGearCoolWaterTemp30s;
float fGearCoolWaterTemp10min;
float fGenDEBearTemp1s;
float fGenDEBearTemp30s;
float fGenDEBearTemp10min;
float fGenNDEBearTemp1s;
float fGenNDEBearTemp30s;
float fGenNDEBearTemp10min;
float fGenWindUTemp1s;
float fGenWindUTemp30s;
float fGenWindUTemp10min;
float fGenWindVTemp1s;
float fGenWindVTemp30s;
float fGenWindVTemp10min;
float fGenWindWTemp1s;
float fGenWindWTemp30s;
float fGenWindWTemp10min;
float fGenCoolAirTemp1s;
float fGenCoolAirTemp30s;
float fGenCoolAirTemp10min;
float fResv1Temp1s;
float fResv1Temp30s;
float fResv1Temp10min;
float fResv2Temp1s;
float fResv2Temp30s;
float fResv2Temp10min;
float fResv3Temp1s;
float fResv3Temp30s;
float fResv3Temp10min;
float fResv4Temp1s;
float fResv4Temp30s;
float fResv4Temp10min;
float fResv5Temp1s;
float fResv5Temp30s;
float fResv5Temp10min;
}*pCGHAdsTempData;
struct CGHAdsTurbineCommand{
uint16_t oControlWord;
float fSetPowerFactor;
uint16_t oSetYear;
uint16_t oSetMonth;
uint16_t oSetDayOfWeek;
uint16_t oSetDay;
uint16_t oSetHour;
uint16_t oSetMinute;
uint16_t oSetSecond;
uint16_t oSetMillis;
float fSetValuePoweratMax;
float fSetLockDirAtTyhoonMode;
uint8_t bSetTyhoonModeActive;
uint16_t oControlWord1;
float fSetReactivePower;
float fSetConverterVoltage;
}*pCGHAdsTurbineCommand;
const uint16_t AdsOverviewDataMemAddr = 1000;
const uint16_t AdsTempDataMemAddr = 2;
#pragma pack()