Skip to content
Snippets Groups Projects
Commit 4118d9d9 authored by Benedikt's avatar Benedikt
Browse files

refTypeMapping eingefügt

parent e3b6c758
No related branches found
No related tags found
No related merge requests found
......@@ -24,6 +24,44 @@ from config import cfg
from pccDccTools import dsiVector,dsiMultiVector,DsiASCICOnversion,dsiJSONEncoder,dsiDCC
class refTypeMapper:
def __init__(self,refTypsMappingJSON):
f = open(refTypsMappingJSON, "r")
self.RefTypeMapping= json.loads(f.read())
f.close()
self.refTypesForNames={}
for refType in self.RefTypeMapping:
names=self.RefTypeMapping[refType]['names']
for lang in names:
try:
self.refTypesForNames[lang][self.RefTypeMapping[refType]['names'][lang]]=refType
except KeyError:
self.refTypesForNames[lang]={self.RefTypeMapping[refType]['names'][lang]: refType}
def getNamesForReftype(self,reftype):
return self.RefTypeMapping[reftype]['names']
def getNamesForReftype(self,reftype,language=None):
if language is not None:
return self.RefTypeMapping[reftype]['names'][language]
else:
return self.RefTypeMapping[reftype]['names']
def getReftypeFromName(self,name,lang=None):
if lang is not None:
return self.refTypesForNames[lang][name]
else:
for lang in self.refTypesForNames:
try:
reftype=self.refTypesForNames[lang][name]
return reftype,lang
except KeyError:
pass
raise KeyError(str(name)+" was not found in anny language")
def getDefaultUnitFromReftype(self,refType):
return self.RefTypeMapping[refType]['unit']
class NumpyEncoder(json.JSONEncoder):
def default(self, obj):
if isinstance(obj, np.ndarray):
......@@ -229,10 +267,7 @@ class SensorCalibrationData:
self.df = pd.read_excel(xlsFileName, 'ERGEBNISSE', engine='openpyxl', skiprows=[1])
self.dfUnits = pd.read_excel(xlsFileName, 'ERGEBNISSE', engine='openpyxl', nrows=1)
self.dfUnits = self.dfUnits.fillna("None")
self.dfKeydict = dictionary = dict(
zip(['Freq', 'Amp', 'Sensetivity', 'Sens_uncer', 'Mag_device', 'Phase', 'Phase_uncer', 'Phase_Device'],
self.df.keys()))
self.dfKeydict = dict(zip(['Freq', 'Amp', 'Sensetivity', 'Sens_uncer', 'Mag_device', 'Phase', 'Phase_uncer', 'Phase_Device'],self.df.keys()))
self.errorDf = pd.DataFrame()
self.errorDf[self.dfKeydict['Freq']] = self.df[self.dfKeydict['Freq']]
self.errorDf['mag_error']=self.df[self.dfKeydict['Sens_uncer']] / 100 * self.df[self.dfKeydict['Sensetivity']]
......@@ -309,8 +344,10 @@ class SensorCalibrationData:
open(FileName, "rb").read())
if __name__=='__main__':
xlsFileName = '1_7calibrationanddccsampledata/ERGEBNISS_sheets/sinCal/20220708_8305_SN1842876_Auswertung.xlsx'
calPDFFileName = '1_7calibrationanddccsampledata/ERGEBNISS_sheets/sinCal/20220708_8305_SN1842876_CalSchein.pdf'
refMapper=refTypeMapper('vibRefTypesAndNames.json')
xlsFileName = '1_7calibrationanddccsampledata/sinCal/20220708_8305/20220708_8305_SN1842876_Auswertung.xlsx'
calPDFFileName = '1_7calibrationanddccsampledata/sinCal/20220708_8305/20220708_8305_SN1842876_CalSchein.pdf'
#(xlsFileName, deviceType: str, serialNo: str, owner: str, operator: str, type: str, date=None):
callData=SensorCalibrationData(xlsFileName,'Brueel & Kjaer 8305-001',"1842876","Accelerator Meas GmbH","D. Nordmann","Acceleration sensor Transferfunction 1D",None)
calDatadsiMultiVector=callData.toDsiMultiVector()
......@@ -374,6 +411,8 @@ if __name__=='__main__':
show(column(FI, tfPlot, data_table))
multiVector=callData.toDsiMultiVector()
jsonStr=multiVector.toDCCquantityList()
#calDataDict=callData.createDict(deviceType='Brueel & Kjaer 8305-001',serialNo= "1502245",owner ="Customer Company",operator="D. Nordmann",date= None)
CDBA=CDBAcces()
CDBA.connect_DB()
......@@ -381,8 +420,9 @@ if __name__=='__main__':
caldataDBEntry=callData.uploadDataAndAttachemntsToCouchDB(CDBA.db)
print(caldataDBEntry)
dccDict=caldataDBEntry.copy()
callData.uploadDUMYDCCXML('1_7calibrationanddccsampledata/ERGEBNISS_sheets/sinCal/20220708_8305_SN1842876_DCCDummy.xml')
callData.uploadDUMYDCCXML('1_7calibrationanddccsampledata/sinCal/20220708_8305/20220708_8305_SN1842876_DCCDummy.xml')
callData.uploadAttachmentFile(calPDFFileName)
# Check that the document exists in the database
#if userDocument.exists():
print('SUCCESS!!')
......
......@@ -85,7 +85,7 @@ class dsiVector:
self.values = np.array(values)
if type(uncer) == type(None):
self.originalUncerType = None
#self.uncer = np.zeros_like(values)
self.uncer = np.zeros_like(values)*np.NaN
else:
if type(uncer) != np.array: # if its not an array check if its None the skip uncer or if not None try to convert in np.ndarray
uncer = np.array(uncer)
......
{ "vib_frequency": {"names":{"DE": "Frequenz","EN": "Frequency"},"unit": "\\hertz"},
"vib_accelerationAmplitude": {"names":{"DE": "Beschleunigungs Amplitude","EN": "Acceleration Amplitude"},"unit": "\\metre\\second\\tothe{-2}"},
"vib_magnitudeTransferCoefCharge": {"names":{"DE": "Ladungsübertragungskoeffizent Betrag","EN": "Charge transfer coefficient magnitude"},"unit": "\\pico\\coulomb\\metre\\tothe{-1}\\second\\tothe{2}"},
"vib_magnitudeTransferCoefVoltage": {"names":{"DE": "Spannungssübertragungskoeffizent Betrag","EN": "Voltage transfer coefficient magnitude"},"unit": "\\volt\\metre\\tothe{-1}\\second\\tothe{2}"},
"vib_magnitudeTransferCoef": {"names":{"DE": "Übertragungskoeffizent Betrag","EN": "Transfer coefficient magnitude"},"unit": "\\one"},
"vib_phase": {"names":{"DE": "Phasenverzögerung","EN": "Phase delay"},"unit": "\\degree"}}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment