fixed adc and num dacs for jungfrau in gui

This commit is contained in:
Dhanya Maliakal 2017-07-06 18:34:00 +02:00
parent 539ab79e99
commit cf0ef68cda
4 changed files with 57 additions and 76 deletions

View File

@ -1,9 +1,9 @@
Path: slsDetectorsPackage/slsDetectorGui Path: slsDetectorsPackage/slsDetectorGui
URL: origin git@git.psi.ch:sls_detectors_software/sls_detector_gui.git URL: origin git@git.psi.ch:sls_detectors_software/sls_detector_gui.git
Repository Root: origin git@git.psi.ch:sls_detectors_software/sls_detector_gui.git Repository Root: origin git@git.psi.ch:sls_detectors_software/sls_detector_gui.git
Repsitory UUID: 194053eb7bbb12b485d9fa4e77530520f4f6cd7e Repsitory UUID: b1b9f6776cfa5994a7c360a5d170b7f8bc6ee41e
Revision: 400 Revision: 401
Branch: developer Branch: developer
Last Changed Author: Dhanya_Maliakal Last Changed Author: Dhanya_Maliakal
Last Changed Rev: 400 Last Changed Rev: 401
Last Changed Date: 2017-06-30 12:20:42 +0200 Last Changed Date: 2017-07-03 14:45:29 +0200

View File

@ -1,11 +1,11 @@
//#define SVNPATH "" //#define SVNPATH ""
#define SVNURL "git@git.psi.ch:sls_detectors_software/sls_detector_gui.git" #define SVNURL "git@git.psi.ch:sls_detectors_software/sls_detector_gui.git"
//#define SVNREPPATH "" //#define SVNREPPATH ""
#define SVNREPUUID "194053eb7bbb12b485d9fa4e77530520f4f6cd7e" #define SVNREPUUID "b1b9f6776cfa5994a7c360a5d170b7f8bc6ee41e"
//#define SVNREV 0x400 //#define SVNREV 0x401
//#define SVNKIND "" //#define SVNKIND ""
//#define SVNSCHED "" //#define SVNSCHED ""
#define SVNAUTH "Dhanya_Maliakal" #define SVNAUTH "Dhanya_Maliakal"
#define SVNREV 0x400 #define SVNREV 0x401
#define SVNDATE 0x20170630 #define SVNDATE 0x20170703
// //

View File

@ -154,11 +154,8 @@ FORMS = \
forms/form_tab_measurement.ui\ forms/form_tab_measurement.ui\
forms/form_tab_dataoutput.ui\ forms/form_tab_dataoutput.ui\
forms/form_tab_plot.ui\ forms/form_tab_plot.ui\
# forms/form_tab_actions.ui\
forms/form_tab_advanced.ui\ forms/form_tab_advanced.ui\
forms/form_tab_settings.ui\ forms/form_tab_settings.ui\
forms/form_tab_debugging.ui\ forms/form_tab_debugging.ui\
# forms/form_tab_developer.ui\
# forms/form_tab_messages.ui
forms/form_action.ui\ forms/form_action.ui\
forms/form_scan.ui forms/form_scan.ui

View File

@ -26,15 +26,15 @@ int qTabDeveloper::NUM_ADC_WIDGETS(0);
qTabDeveloper::qTabDeveloper(qDetectorMain *parent,multiSlsDetector*& detector): qTabDeveloper::qTabDeveloper(qDetectorMain *parent,multiSlsDetector*& detector):
thisParent(parent), thisParent(parent),
myDet(detector), myDet(detector),
det(0), det(0),
boxDacs(0), boxDacs(0),
boxAdcs(0), boxAdcs(0),
lblHV(0), lblHV(0),
comboHV(0), comboHV(0),
adcTimer(0), adcTimer(0),
dacLayout(0){ dacLayout(0){
for(int i=0;i<20;i++){ for(int i=0;i<20;i++){
lblDacs[i]=0; lblDacs[i]=0;
lblAdcs[i]=0; lblAdcs[i]=0;
@ -147,25 +147,18 @@ void qTabDeveloper::SetupWidgetWindow(){
case slsDetectorDefs::JUNGFRAU: case slsDetectorDefs::JUNGFRAU:
NUM_DAC_WIDGETS = 16; NUM_DAC_WIDGETS = 8;
NUM_ADC_WIDGETS = 0; NUM_ADC_WIDGETS = 1;
dacNames.push_back("v Dac 0:"); dacNames.push_back("v vb comp:");
dacNames.push_back("v Dac 1:"); dacNames.push_back("v vdd prot:");
dacNames.push_back("v Dac 2:"); dacNames.push_back("v vin com:");
dacNames.push_back("v Dac 3:"); dacNames.push_back("v vref prech:");
dacNames.push_back("v Dac 4:"); dacNames.push_back("v vb pixbuf:");
dacNames.push_back("v Dac 5:"); dacNames.push_back("v vb ds:");
dacNames.push_back("v Dac 6:"); dacNames.push_back("v vref ds:");
dacNames.push_back("i Dac 7:"); dacNames.push_back("i vref comp:");
dacNames.push_back("v Dac 8:");
dacNames.push_back("v Dac 9:");
dacNames.push_back("v Dac 10:");
dacNames.push_back("v Dac 11:");
dacNames.push_back("v Dac 12:");
dacNames.push_back("v Dac 13:");
dacNames.push_back("v Dac 14:");
dacNames.push_back("i Dac 15:");
adcNames.push_back("Temperature ADC/FPGA:");
break; break;
@ -233,23 +226,22 @@ void qTabDeveloper::SetupWidgetWindow(){
//adcs //adcs
if((detType==slsDetectorDefs::GOTTHARD) || if(NUM_ADC_WIDGETS) {
(detType==slsDetectorDefs::PROPIX) || int rows = NUM_ADC_WIDGETS/2;
(detType==slsDetectorDefs::MOENCH)|| if (NUM_ADC_WIDGETS%2)rows++;
(detType==slsDetectorDefs::EIGER)) { setFixedHeight(20+(50+(NUM_DAC_WIDGETS/2)*35)+(50+rows*35));
setFixedHeight(20+(50+(NUM_DAC_WIDGETS/2)*35)+(50+(NUM_ADC_WIDGETS/2)*35));
boxAdcs = new QGroupBox("ADCs",this); boxAdcs = new QGroupBox("ADCs",this);
boxAdcs->setFixedHeight(25+(NUM_ADC_WIDGETS/2)*35); boxAdcs->setFixedHeight(25+rows*35);
layout->addWidget(boxAdcs,2,0); layout->addWidget(boxAdcs,2,0);
CreateADCWidgets(); CreateADCWidgets();
//to make the adcs at the bottom most //to make the adcs at the bottom most
if(detType!=slsDetectorDefs::EIGER) { if (detType!=slsDetectorDefs::EIGER) {
int diff = 340-height(); int diff = 340-height();
setFixedHeight(340); setFixedHeight(340);
layout->setVerticalSpacing(diff/2); layout->setVerticalSpacing(diff/2);
} }
//timer to check adcs //timer to check adcs
adcTimer = new QTimer(this); /*adcTimer = new QTimer(this); adc timer disabled, display adcs only when refreshing developer tab*/
} }
qDefs::checkErrorMessage(myDet,"qTabDeveloper::SetupWidgetWindow"); qDefs::checkErrorMessage(myDet,"qTabDeveloper::SetupWidgetWindow");
@ -259,7 +251,7 @@ void qTabDeveloper::SetupWidgetWindow(){
void qTabDeveloper::Initialization(){ void qTabDeveloper::Initialization(){
if(NUM_ADC_WIDGETS) connect(adcTimer, SIGNAL(timeout()), this, SLOT(RefreshAdcs())); /*if(NUM_ADC_WIDGETS) connect(adcTimer, SIGNAL(timeout()), this, SLOT(RefreshAdcs()));*/
for(int i=0;i<NUM_DAC_WIDGETS;i++) for(int i=0;i<NUM_DAC_WIDGETS;i++)
connect(spinDacs[i], SIGNAL(editingFinished(int)), this, SLOT(SetDacValues(int))); connect(spinDacs[i], SIGNAL(editingFinished(int)), this, SLOT(SetDacValues(int)));
@ -306,10 +298,7 @@ void qTabDeveloper::CreateADCWidgets(){
spinAdcs[i] = new QDoubleSpinBox(boxAdcs); spinAdcs[i] = new QDoubleSpinBox(boxAdcs);
spinAdcs[i]->setMaximum(10000); spinAdcs[i]->setMaximum(10000);
spinAdcs[i]->setMinimum(-1); spinAdcs[i]->setMinimum(-1);
if((detType==slsDetectorDefs::GOTTHARD) || if(NUM_ADC_WIDGETS)
(detType==slsDetectorDefs::PROPIX) ||
(detType==slsDetectorDefs::MOENCH)||
(detType==slsDetectorDefs::EIGER))
spinAdcs[i]->setSuffix(0x00b0+QString("C")); spinAdcs[i]->setSuffix(0x00b0+QString("C"));
adcLayout->addWidget(lblAdcs[i],(int)(i/2),((i%2)==0)?1:4); adcLayout->addWidget(lblAdcs[i],(int)(i/2),((i%2)==0)?1:4);
@ -494,16 +483,9 @@ slsDetectorDefs::dacIndex qTabDeveloper::getSLSIndex(int index){
case 5: case 5:
case 6: case 6:
case 7: case 7:
case 8:
case 9:
case 10:
case 11:
case 12:
case 13:
case 14:
case 15:
return (slsDetectorDefs::dacIndex)index; return (slsDetectorDefs::dacIndex)index;
break; break;
case 8: return slsDetectorDefs::TEMPERATURE_ADC;
default: default:
qDefs::Message(qDefs::CRITICAL,"Unknown DAC/ADC Index. Weird Error Index:"+ index,"qTabDeveloper::getSLSIndex"); qDefs::Message(qDefs::CRITICAL,"Unknown DAC/ADC Index. Weird Error Index:"+ index,"qTabDeveloper::getSLSIndex");
Refresh(); Refresh();
@ -511,11 +493,11 @@ slsDetectorDefs::dacIndex qTabDeveloper::getSLSIndex(int index){
} }
break; break;
default: default:
cout << "Unknown detector type:" + myDet->slsDetectorBase::getDetectorType(detType) << endl; cout << "Unknown detector type:" + myDet->slsDetectorBase::getDetectorType(detType) << endl;
qDefs::Message(qDefs::CRITICAL,string("Unknown detector type:")+myDet->slsDetectorBase::getDetectorType(detType),"qTabDeveloper::getSLSIndex"); qDefs::Message(qDefs::CRITICAL,string("Unknown detector type:")+myDet->slsDetectorBase::getDetectorType(detType),"qTabDeveloper::getSLSIndex");
qDefs::checkErrorMessage(myDet,"qTabDeveloper::getSLSIndex"); qDefs::checkErrorMessage(myDet,"qTabDeveloper::getSLSIndex");
exit(-1); exit(-1);
break; break;
} }
return slsDetectorDefs::HUMIDITY; return slsDetectorDefs::HUMIDITY;
} }
@ -531,7 +513,7 @@ void qTabDeveloper::RefreshAdcs(){
#ifdef VERYVERBOSE #ifdef VERYVERBOSE
cout << "Updating ADCs" <<endl; cout << "Updating ADCs" <<endl;
#endif #endif
adcTimer->stop(); /*adcTimer->stop();*/
int detid = comboDetector->currentIndex(); int detid = comboDetector->currentIndex();
if(detid) if(detid)
@ -544,8 +526,10 @@ void qTabDeveloper::RefreshAdcs(){
double value = (double)myDet->getADC(getSLSIndex(i+NUM_DAC_WIDGETS),-1); double value = (double)myDet->getADC(getSLSIndex(i+NUM_DAC_WIDGETS),-1);
if(value == -1) if(value == -1)
spinAdcs[i]->setValue(value); spinAdcs[i]->setValue(value);
else else {
printf("value:%f\n",value/1000);
spinAdcs[i]->setValue(value/1000.00); spinAdcs[i]->setValue(value/1000.00);
}
} }
else else
@ -561,7 +545,7 @@ void qTabDeveloper::RefreshAdcs(){
} }
adcTimer->start(ADC_TIMEOUT); /*adcTimer->start(ADC_TIMEOUT);*/
qDefs::checkErrorMessage(myDet,"qTabDeveloper::RefreshAdcs"); qDefs::checkErrorMessage(myDet,"qTabDeveloper::RefreshAdcs");
} }
@ -582,7 +566,7 @@ void qTabDeveloper::Refresh(){
//dacs //dacs
#ifdef VERBOSE #ifdef VERBOSE
cout << "Gettings DACs" << endl; cout << "Getting DACs" << NUM_DAC_WIDGETS <<endl;
#endif #endif
for(int i=0;i<NUM_DAC_WIDGETS;i++){ for(int i=0;i<NUM_DAC_WIDGETS;i++){
//all detectors //all detectors
@ -626,20 +610,20 @@ void qTabDeveloper::Refresh(){
case 180: comboHV->setCurrentIndex(5);break; case 180: comboHV->setCurrentIndex(5);break;
case 200: comboHV->setCurrentIndex(6);break; case 200: comboHV->setCurrentIndex(6);break;
default: comboHV->setCurrentIndex(0);//error default: comboHV->setCurrentIndex(0);//error
lblHV->setPalette(red); lblHV->setPalette(red);
lblHV->setText("High Voltage:*"); lblHV->setText("High Voltage:*");
QString errTip = tipHV+QString("<br><br><font color=\"red\"><nobr>High Voltage could not be set. The return value is ")+ QString errTip = tipHV+QString("<br><br><font color=\"red\"><nobr>High Voltage could not be set. The return value is ")+
QString::number(ret)+ QString("</nobr></font>"); QString::number(ret)+ QString("</nobr></font>");
lblHV->setToolTip(errTip); lblHV->setToolTip(errTip);
comboHV->setToolTip(errTip); comboHV->setToolTip(errTip);
break; break;
} }
connect(comboHV, SIGNAL(currentIndexChanged(int)), this, SLOT(SetHighVoltage())); connect(comboHV, SIGNAL(currentIndexChanged(int)), this, SLOT(SetHighVoltage()));
} }
#ifdef VERBOSE #ifdef VERBOSE
cout << "**Updated Developer Tab" << endl << endl; cout << "**Updated Developer Tab" << endl << endl;
#endif #endif
qDefs::checkErrorMessage(myDet,"qTabDeveloper::Refresh"); qDefs::checkErrorMessage(myDet,"qTabDeveloper::Refresh");