diff --git a/config/variables.properties b/config/variables.properties
index 830b4e2..1af3891 100644
--- a/config/variables.properties
+++ b/config/variables.properties
@@ -1,4 +1,4 @@
-#Mon Oct 03 10:00:08 CEST 2022
+#Mon Oct 03 10:56:11 CEST 2022
LastRunDate=221003
-DaySequentialNumber=1
-FileSequentialNumber=1
+DaySequentialNumber=14
+FileSequentialNumber=14
diff --git a/plugins/Scan1D.form b/plugins/Scan1D.form
index bc64b7b..6afa086 100644
--- a/plugins/Scan1D.form
+++ b/plugins/Scan1D.form
@@ -6,6 +6,58 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -28,9 +80,7 @@
-
-
-
+
@@ -44,7 +94,6 @@
-
@@ -77,7 +126,7 @@
-
+
@@ -118,7 +167,6 @@
-
@@ -178,9 +226,7 @@
-
-
-
+
@@ -194,14 +240,11 @@
-
-
-
-
-
-
-
-
+
+
+
+
+
@@ -336,179 +379,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -523,29 +393,12 @@
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
@@ -558,21 +411,9 @@
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
+
@@ -594,35 +435,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/plugins/Scan1D.java b/plugins/Scan1D.java
index b5cd152..a9128df 100644
--- a/plugins/Scan1D.java
+++ b/plugins/Scan1D.java
@@ -3,12 +3,11 @@
*/
import ch.psi.pshell.device.Motor;
-import ch.psi.pshell.epics.Scienta;
+import ch.psi.pshell.epics.AreaDetector;
import ch.psi.pshell.ui.ScriptProcessor;
import ch.psi.utils.State;
import ch.psi.utils.swing.SwingUtils;
import java.awt.Component;
-import java.time.LocalTime;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
@@ -40,22 +39,11 @@ public class Scan1D extends ScriptProcessor {
@Override
public void onInitialize(int runCount) {
comboMotorActionPerformed(null);
- Scienta scienta = (Scienta) getDevice("Scienta");
- dvpAcqTime.setDevice(scienta.getAcquisitionTime());
+ AreaDetector ccd = (AreaDetector) getDevice("ccd");
}
+ @Override
protected void onTimer(){
- try{
- int steps = radioSteps.isSelected() ?
- (Integer)spinnerSteps.getValue():
- (int) ((radioRelative.isSelected()? ((Double)spinnerRange.getValue()).intValue():
- (Math.abs((Double)spinnerTo.getValue() - (Double)spinnerFrom.getValue()) )) / (Double)spinnerStepSize.getValue() + 1);
- int seconds = (int) (Double.valueOf(dvpAcqTime.getLabel().getText()) * steps);
- int hours= seconds / (60 * 60);
- textTotalTime.setText(hours >= 24 ? hours+"h": LocalTime.ofSecondOfDay(seconds).toString());
- } catch (Exception ex){
- textTotalTime.setText("");
- }
}
@@ -81,20 +69,17 @@ public class Scan1D extends ScriptProcessor {
c.setEnabled(enableControls);
}
buttonStart.setEnabled(enableControls);
- checkEndScan.setEnabled(enableControls);
spinnerStepSize.setEnabled(enableControls && radioStepSize.isSelected());
spinnerSteps.setEnabled(enableControls && radioSteps.isSelected());
spinnerFrom.setEnabled(enableControls && radioAbsolute.isSelected());
spinnerTo.setEnabled(enableControls && radioAbsolute.isSelected());
spinnerRange.setEnabled(enableControls && !radioAbsolute.isSelected());
-
- buttonScientaSetup.setEnabled(value);
}
@Override
public String getScript() {
- return "ManipulatorScan";
+ return "templates/Scan1D";
}
@Override
@@ -122,8 +107,6 @@ public class Scan1D extends ScriptProcessor {
}
args.put("LATENCY", (Double) spinnerLatency.getValue());
args.put("RELATIVE", radioRelative.isSelected());
- args.put("ENDSCAN", checkEndScan.isSelected());
- args.put("FLY_SCAN", checkFlyScan.isSelected());
return args;
}
@@ -133,6 +116,9 @@ public class Scan1D extends ScriptProcessor {
buttonGroup1 = new javax.swing.ButtonGroup();
buttonGroup2 = new javax.swing.ButtonGroup();
+ panelSensors = new javax.swing.JPanel();
+ checkImage = new javax.swing.JCheckBox();
+ checkCurrent = new javax.swing.JCheckBox();
panelPositioner = new javax.swing.JPanel();
jLabel1 = new javax.swing.JLabel();
comboMotor = new javax.swing.JComboBox();
@@ -154,39 +140,50 @@ public class Scan1D extends ScriptProcessor {
jLabel6 = new javax.swing.JLabel();
jLabel7 = new javax.swing.JLabel();
jLabel8 = new javax.swing.JLabel();
- checkFlyScan = new javax.swing.JCheckBox();
- panelSensors = new javax.swing.JPanel();
- checkImage = new javax.swing.JCheckBox();
- checkImageIntegration = new javax.swing.JCheckBox();
- checkAngleDistribution = new javax.swing.JCheckBox();
- checkSpectrum = new javax.swing.JCheckBox();
- checkTotalCount = new javax.swing.JCheckBox();
- checkCounts1 = new javax.swing.JCheckBox();
- checkCounts2 = new javax.swing.JCheckBox();
- checkCounts3 = new javax.swing.JCheckBox();
- checkCounts4 = new javax.swing.JCheckBox();
- checkCurrent = new javax.swing.JCheckBox();
- checkCur1 = new javax.swing.JCheckBox();
- checkCur2 = new javax.swing.JCheckBox();
- checkCur3 = new javax.swing.JCheckBox();
- buttonScientaSetup = new javax.swing.JButton();
jPanel3 = new javax.swing.JPanel();
buttonStart = new javax.swing.JButton();
buttonAbort = new javax.swing.JButton();
- checkEndScan = new javax.swing.JCheckBox();
- textTotalTime = new javax.swing.JLabel();
- labelTotalTime = new javax.swing.JLabel();
- labelAcqTime = new javax.swing.JLabel();
- dvpAcqTime = new ch.psi.pshell.swing.DeviceValuePanel();
buttonQueue = new javax.swing.JButton();
+ panelSensors.setBorder(javax.swing.BorderFactory.createTitledBorder("Sensors"));
+
+ checkImage.setSelected(true);
+ checkImage.setText("CCD Image");
+ checkImage.setToolTipText("");
+ checkImage.setContentAreaFilled(false);
+ checkImage.setName("ccd.dataMatrix"); // NOI18N
+
+ checkCurrent.setText("Machine Current");
+ checkCurrent.setName("current"); // NOI18N
+
+ javax.swing.GroupLayout panelSensorsLayout = new javax.swing.GroupLayout(panelSensors);
+ panelSensors.setLayout(panelSensorsLayout);
+ panelSensorsLayout.setHorizontalGroup(
+ panelSensorsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addGroup(panelSensorsLayout.createSequentialGroup()
+ .addContainerGap()
+ .addGroup(panelSensorsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addComponent(checkImage)
+ .addComponent(checkCurrent))
+ .addContainerGap(108, Short.MAX_VALUE))
+ );
+ panelSensorsLayout.setVerticalGroup(
+ panelSensorsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+ .addGroup(panelSensorsLayout.createSequentialGroup()
+ .addContainerGap()
+ .addComponent(checkImage)
+ .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
+ .addComponent(checkCurrent)
+ .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
+ );
+
setPreferredSize(new java.awt.Dimension(792, 567));
panelPositioner.setBorder(javax.swing.BorderFactory.createTitledBorder("Positioner"));
jLabel1.setText("Motor:");
- comboMotor.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "dummy", "ManipulatorX", "ManipulatorY", "ManipulatorZ", "ManipulatorTheta", "ManipulatorTilt", "ManipulatorPhi" }));
+ comboMotor.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "dummy_x", "sample_x", "sample_y", "sample_x" }));
comboMotor.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
comboMotorActionPerformed(evt);
@@ -255,8 +252,6 @@ public class Scan1D extends ScriptProcessor {
jLabel8.setText("Steps:");
- checkFlyScan.setText("Fly Scan");
-
javax.swing.GroupLayout panelPositionerLayout = new javax.swing.GroupLayout(panelPositioner);
panelPositioner.setLayout(panelPositionerLayout);
panelPositionerLayout.setHorizontalGroup(
@@ -272,7 +267,7 @@ public class Scan1D extends ScriptProcessor {
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(panelPositionerLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(motorPanel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
- .addComponent(comboMotor, 0, 152, Short.MAX_VALUE)))
+ .addComponent(comboMotor, 0, 159, Short.MAX_VALUE)))
.addGroup(panelPositionerLayout.createSequentialGroup()
.addComponent(jLabel3)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
@@ -302,8 +297,7 @@ public class Scan1D extends ScriptProcessor {
.addGroup(panelPositionerLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(radioStepSize)
.addComponent(radioAbsolute)
- .addComponent(radioRelative)
- .addComponent(checkFlyScan))
+ .addComponent(radioRelative))
.addGap(0, 0, Short.MAX_VALUE)))
.addContainerGap())
);
@@ -353,123 +347,7 @@ public class Scan1D extends ScriptProcessor {
.addGroup(panelPositionerLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel3)
.addComponent(spinnerLatency, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 81, Short.MAX_VALUE)
- .addComponent(checkFlyScan)
- .addGap(26, 26, 26))
- );
-
- panelSensors.setBorder(javax.swing.BorderFactory.createTitledBorder("Sensors"));
-
- checkImage.setText("Scienta Image");
- checkImage.setToolTipText("");
- checkImage.setContentAreaFilled(false);
- checkImage.setName("Scienta.dataMatrix"); // NOI18N
-
- checkImageIntegration.setSelected(true);
- checkImageIntegration.setText("Scienta Energy Distribution");
- checkImageIntegration.setToolTipText("");
- checkImageIntegration.setContentAreaFilled(false);
- checkImageIntegration.setName("EnergyDistribution"); // NOI18N
-
- checkAngleDistribution.setSelected(true);
- checkAngleDistribution.setText("Scienta Angle Distribution");
- checkAngleDistribution.setToolTipText("");
- checkAngleDistribution.setContentAreaFilled(false);
- checkAngleDistribution.setName("AngleDistribution"); // NOI18N
-
- checkSpectrum.setText("Scienta Spectrum");
- checkSpectrum.setName("Scienta.spectrum"); // NOI18N
-
- checkTotalCount.setSelected(true);
- checkTotalCount.setText("Total Counts");
- checkTotalCount.setName("Counts"); // NOI18N
-
- checkCounts1.setText("Counts Region 1");
- checkCounts1.setName("CountsR1"); // NOI18N
-
- checkCounts2.setText("Counts Region 2");
- checkCounts2.setName("CountsR2"); // NOI18N
-
- checkCounts3.setText("Counts Region 3");
- checkCounts3.setName("CountsR3"); // NOI18N
-
- checkCounts4.setText("Counts Region 4");
- checkCounts4.setName("CountsR4"); // NOI18N
-
- checkCurrent.setText("Machine Current");
- checkCurrent.setName("MachineCurrent"); // NOI18N
-
- checkCur1.setText("Sample Current");
- checkCur1.setName("SampleCurrent"); // NOI18N
-
- checkCur2.setText("Ref Current");
- checkCur2.setName("RefCurrent"); // NOI18N
-
- checkCur3.setText("Aux Current");
- checkCur3.setName("AuxCurrent"); // NOI18N
-
- buttonScientaSetup.setText("Scienta Setup");
- buttonScientaSetup.addActionListener(new java.awt.event.ActionListener() {
- public void actionPerformed(java.awt.event.ActionEvent evt) {
- buttonScientaSetupActionPerformed(evt);
- }
- });
-
- javax.swing.GroupLayout panelSensorsLayout = new javax.swing.GroupLayout(panelSensors);
- panelSensors.setLayout(panelSensorsLayout);
- panelSensorsLayout.setHorizontalGroup(
- panelSensorsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(panelSensorsLayout.createSequentialGroup()
- .addContainerGap()
- .addGroup(panelSensorsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addComponent(buttonScientaSetup, javax.swing.GroupLayout.DEFAULT_SIZE, 212, Short.MAX_VALUE)
- .addComponent(checkImage)
- .addComponent(checkImageIntegration)
- .addComponent(checkSpectrum)
- .addComponent(checkCounts1)
- .addComponent(checkTotalCount)
- .addComponent(checkCounts2)
- .addComponent(checkCounts3)
- .addComponent(checkCounts4)
- .addComponent(checkCurrent)
- .addComponent(checkCur1)
- .addComponent(checkCur2)
- .addComponent(checkCur3)
- .addComponent(checkAngleDistribution))
- .addContainerGap())
- );
- panelSensorsLayout.setVerticalGroup(
- panelSensorsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(panelSensorsLayout.createSequentialGroup()
- .addContainerGap()
- .addComponent(checkImage)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(checkImageIntegration)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(checkAngleDistribution)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(checkSpectrum)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(checkTotalCount)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(checkCounts1)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(checkCounts2)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(checkCounts3)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(checkCounts4)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(checkCurrent)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(checkCur1)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(checkCur2)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(checkCur3)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 97, Short.MAX_VALUE)
- .addComponent(buttonScientaSetup)
- .addGap(26, 26, 26))
+ .addContainerGap(159, Short.MAX_VALUE))
);
jPanel3.setBorder(javax.swing.BorderFactory.createTitledBorder("Scan Control"));
@@ -488,17 +366,6 @@ public class Scan1D extends ScriptProcessor {
}
});
- checkEndScan.setText("Turn off beam at end");
-
- textTotalTime.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
- textTotalTime.setBorder(javax.swing.BorderFactory.createTitledBorder(""));
-
- labelTotalTime.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
- labelTotalTime.setText("Total time:");
-
- labelAcqTime.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
- labelAcqTime.setText("Acquisition time(s):");
-
buttonQueue.setText("Queue");
buttonQueue.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
@@ -510,32 +377,14 @@ public class Scan1D extends ScriptProcessor {
jPanel3.setLayout(jPanel3Layout);
jPanel3Layout.setHorizontalGroup(
jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(jPanel3Layout.createSequentialGroup()
+ .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel3Layout.createSequentialGroup()
.addContainerGap()
- .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addComponent(buttonStart, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
- .addComponent(buttonAbort, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
- .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel3Layout.createSequentialGroup()
- .addGap(0, 9, Short.MAX_VALUE)
- .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addComponent(labelAcqTime)
- .addComponent(labelTotalTime))
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addComponent(textTotalTime, javax.swing.GroupLayout.Alignment.TRAILING)
- .addComponent(dvpAcqTime, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 76, javax.swing.GroupLayout.PREFERRED_SIZE))
- .addGap(1, 1, 1))
- .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel3Layout.createSequentialGroup()
- .addComponent(checkEndScan)
- .addGap(0, 0, Short.MAX_VALUE))
- .addComponent(buttonQueue, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
+ .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
+ .addComponent(buttonQueue, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+ .addComponent(buttonStart, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+ .addComponent(buttonAbort, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 234, Short.MAX_VALUE))
.addContainerGap())
);
-
- jPanel3Layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {dvpAcqTime, textTotalTime});
-
- jPanel3Layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {labelAcqTime, labelTotalTime});
-
jPanel3Layout.setVerticalGroup(
jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel3Layout.createSequentialGroup()
@@ -543,38 +392,24 @@ public class Scan1D extends ScriptProcessor {
.addComponent(buttonStart)
.addGap(18, 18, 18)
.addComponent(buttonAbort)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+ .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(buttonQueue)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
- .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER)
- .addComponent(labelAcqTime)
- .addComponent(dvpAcqTime, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
- .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER)
- .addComponent(labelTotalTime)
- .addComponent(textTotalTime))
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
- .addComponent(checkEndScan)
- .addGap(26, 26, 26))
+ .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
- jPanel3Layout.linkSize(javax.swing.SwingConstants.VERTICAL, new java.awt.Component[] {dvpAcqTime, textTotalTime});
-
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
this.setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
- .addContainerGap()
- .addComponent(panelSensors, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
+ .addGap(292, 292, 292)
.addComponent(panelPositioner, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(jPanel3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap())
);
- layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {jPanel3, panelPositioner, panelSensors});
+ layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {jPanel3, panelPositioner});
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
@@ -582,20 +417,11 @@ public class Scan1D extends ScriptProcessor {
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(panelPositioner, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
- .addComponent(panelSensors, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jPanel3, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addContainerGap())
);
}// //GEN-END:initComponents
- private void buttonScientaSetupActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_buttonScientaSetupActionPerformed
- try {
- showDevicePanel("Scienta");
- } catch (Exception ex) {
- SwingUtils.showException(this, ex);
- }
- }//GEN-LAST:event_buttonScientaSetupActionPerformed
-
private void buttonStartActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_buttonStartActionPerformed
try {
execute();
@@ -607,7 +433,7 @@ public class Scan1D extends ScriptProcessor {
private void buttonAbortActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_buttonAbortActionPerformed
try {
abort();
- ((Scienta) getDevice("Scienta")).stop();
+ ((AreaDetector) getDevice("ccd")).stop();
} catch (Exception ex) {
showException(ex);
}
@@ -655,25 +481,10 @@ public class Scan1D extends ScriptProcessor {
private javax.swing.ButtonGroup buttonGroup1;
private javax.swing.ButtonGroup buttonGroup2;
private javax.swing.JButton buttonQueue;
- private javax.swing.JButton buttonScientaSetup;
private javax.swing.JButton buttonStart;
- private javax.swing.JCheckBox checkAngleDistribution;
- private javax.swing.JCheckBox checkCounts1;
- private javax.swing.JCheckBox checkCounts2;
- private javax.swing.JCheckBox checkCounts3;
- private javax.swing.JCheckBox checkCounts4;
- private javax.swing.JCheckBox checkCur1;
- private javax.swing.JCheckBox checkCur2;
- private javax.swing.JCheckBox checkCur3;
private javax.swing.JCheckBox checkCurrent;
- private javax.swing.JCheckBox checkEndScan;
- private javax.swing.JCheckBox checkFlyScan;
private javax.swing.JCheckBox checkImage;
- private javax.swing.JCheckBox checkImageIntegration;
- private javax.swing.JCheckBox checkSpectrum;
- private javax.swing.JCheckBox checkTotalCount;
private javax.swing.JComboBox comboMotor;
- private ch.psi.pshell.swing.DeviceValuePanel dvpAcqTime;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabel4;
@@ -682,8 +493,6 @@ public class Scan1D extends ScriptProcessor {
private javax.swing.JLabel jLabel7;
private javax.swing.JLabel jLabel8;
private javax.swing.JPanel jPanel3;
- private javax.swing.JLabel labelAcqTime;
- private javax.swing.JLabel labelTotalTime;
private ch.psi.pshell.swing.MotorReadoutPanel motorPanel;
private javax.swing.JPanel panelPositioner;
private javax.swing.JPanel panelSensors;
@@ -697,7 +506,6 @@ public class Scan1D extends ScriptProcessor {
private javax.swing.JSpinner spinnerStepSize;
private javax.swing.JSpinner spinnerSteps;
private javax.swing.JSpinner spinnerTo;
- private javax.swing.JLabel textTotalTime;
private javax.swing.JLabel txtSize;
// End of variables declaration//GEN-END:variables
}
diff --git a/plugins/Scan2D.form b/plugins/Scan2D.form
deleted file mode 100644
index 2b5dcf8..0000000
--- a/plugins/Scan2D.form
+++ /dev/null
@@ -1,637 +0,0 @@
-
-
-
diff --git a/plugins/Scan2D.java b/plugins/Scan2D.java
deleted file mode 100644
index 6c42087..0000000
--- a/plugins/Scan2D.java
+++ /dev/null
@@ -1,707 +0,0 @@
-/*
- * Copyright (c) 2014 Paul Scherrer Institute. All rights reserved.
- */
-
-import ch.psi.pshell.device.Device;
-import ch.psi.pshell.device.DeviceAdapter;
-import ch.psi.pshell.device.Motor;
-import ch.psi.pshell.epics.Scienta;
-import ch.psi.pshell.ui.Panel;
-import ch.psi.pshell.ui.ScriptProcessor;
-import ch.psi.utils.State;
-import ch.psi.utils.swing.SwingUtils;
-import java.awt.Component;
-import java.time.LocalTime;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.Map;
-import javax.swing.JCheckBox;
-import javax.swing.JSpinner;
-import javax.swing.JToggleButton;
-import javax.swing.SpinnerNumberModel;
-
-/**
- *
- */
-public class Scan2D extends ScriptProcessor {
-
- public Scan2D() {
- initComponents();
-
- //Component persistence
- ArrayList persistedComponents = new ArrayList<>();
- persistedComponents.addAll(Arrays.asList(SwingUtils.getComponentsByType(this, JToggleButton.class)));
- persistedComponents.addAll(Arrays.asList(SwingUtils.getComponentsByType(this, JSpinner.class)));
- setPersistedComponents(persistedComponents.toArray(new Component[0]));
- startTimer(1000);
- }
-
- //Overridable callbacks
- @Override
- public void onInitialize(int runCount) {
- Motor phi = (Motor) getDevice("ManipulatorPhi");
- Motor theta = (Motor) getDevice("ManipulatorTheta");
- Scienta scienta = (Scienta) getDevice("Scienta");
- motorPanelPhi.setDevice(phi);
- motorPanelTheta.setDevice(theta);
- dvpAcqTime.setDevice(scienta.getAcquisitionTime());
- try{
- spinnerFromPhi.setModel(new SpinnerNumberModel(Math.max(phi.getMinValue(),(Double)spinnerFromPhi.getValue()), phi.getMinValue(), phi.getMaxValue(), 1.0));
- spinnerToPhi.setModel(new SpinnerNumberModel(Math.min(phi.getMaxValue(),(Double)spinnerToPhi.getValue()), phi.getMinValue(), phi.getMaxValue(), 1.0));
- } catch (Exception ex){
- spinnerFromPhi.setModel(new SpinnerNumberModel(phi.getMinValue(), phi.getMinValue(), phi.getMaxValue(), 1.0));
- spinnerToPhi.setModel(new SpinnerNumberModel(phi.getMaxValue(), phi.getMinValue(), phi.getMaxValue(), 1.0));
- }
- try{
- spinnerFromTheta.setModel(new SpinnerNumberModel(Math.max(theta.getMinValue(),(Double)spinnerFromTheta.getValue()), theta.getMinValue(), theta.getMaxValue(), 1.0));
- spinnerToTheta.setModel(new SpinnerNumberModel(Math.min(theta.getMaxValue(),(Double)spinnerToTheta.getValue()), theta.getMinValue(), theta.getMaxValue(), 1.0));
- } catch (Exception ex){
- spinnerFromTheta.setModel(new SpinnerNumberModel(theta.getMinValue(), theta.getMinValue(), theta.getMaxValue(), 1.0));
- spinnerToTheta.setModel(new SpinnerNumberModel(theta.getMaxValue(), theta.getMinValue(), theta.getMaxValue(), 1.0));
- }
- }
-
- protected void onTimer(){
- try{
- int steps = (radioSteps.isSelected() ?
- (Integer)spinnerStepsPhi.getValue() * (Integer)spinnerStepsTheta.getValue() :
- (int)(Math.abs((Double)spinnerToPhi.getValue() - (Double)spinnerFromPhi.getValue()) / (Double)spinnerStepSizePhi.getValue() + 1) *
- (int)(Math.abs((Double)spinnerToTheta.getValue() - (Double)spinnerFromTheta.getValue()) / (Double)spinnerStepSizeTheta.getValue() +1));
- int seconds = (int) (Double.valueOf(dvpAcqTime.getLabel().getText()) * steps);
- int hours= seconds / (60 * 60);
- textTotalTime.setText(hours >= 24 ? hours+"h": LocalTime.ofSecondOfDay(seconds).toString());
- } catch (Exception ex){
- textTotalTime.setText("");
- }
- }
-
- @Override
- public void onStateChange(State state, State former) {
- setEnabled(isEnabled());
- }
-
- @Override
- public void onExecutedFile(String fileName, Object result) {
- }
-
-
- @Override
- public void setEnabled(boolean value) {
- super.setEnabled(value);
-
- boolean enableControls = (value && (getState()==State.Ready));
- for (Component c : panelSensors.getComponents()) {
- c.setEnabled(enableControls);
- }
- for (Component c : panelPositioners.getComponents()) {
- c.setEnabled(enableControls);
- }
-
- labelAcqTime.setEnabled(enableControls);
- labelTotalTime.setEnabled(enableControls);
- buttonStart.setEnabled(enableControls);
- checkEndScan.setEnabled(enableControls);
-
- buttonAbort.setEnabled(value && getState().isInitialized());
-
- spinnerStepSizePhi.setEnabled(enableControls && radioStepSize.isSelected());
- spinnerStepsPhi.setEnabled(enableControls && radioSteps.isSelected());
- spinnerFromPhi.setEnabled(enableControls);
- spinnerToPhi.setEnabled(enableControls);
-
- spinnerStepSizeTheta.setEnabled(spinnerStepSizePhi.isEnabled());
- spinnerStepsTheta.setEnabled(spinnerStepsPhi.isEnabled());
- spinnerFromTheta.setEnabled(spinnerFromPhi.isEnabled());
- spinnerToTheta.setEnabled(spinnerToPhi.isEnabled());
-
- buttonScientaSetup.setEnabled(value);
- }
-
- @Override
- public String getScript() {
- return "HoloScan";
- }
-
- @Override
- public Map getArgs() {
- HashMap args = new HashMap<>();
- ArrayList sensors = new ArrayList();
- for (Component c : panelSensors.getComponents()) {
- if ((c instanceof JCheckBox) && ((JCheckBox) c).isSelected()) {
- sensors.add(c.getName());
- }
- }
- args.put("SENSORS", sensors);
- args.put("PHI_RANGE", new Double[]{(Double) spinnerFromPhi.getValue(), (Double) spinnerToPhi.getValue()});
- args.put("THETA_RANGE", new Double[]{(Double) spinnerFromTheta.getValue(), (Double) spinnerToTheta.getValue()});
- ArrayList steps = new ArrayList();
- if (radioStepSize.isSelected()) {
- steps.add((Double) spinnerStepSizePhi.getValue());
- steps.add((Double) spinnerStepSizeTheta.getValue());
- } else {
- steps.add((Integer) spinnerStepsPhi.getValue());
- steps.add((Integer) spinnerStepsTheta.getValue());
- }
- args.put("STEPS", steps);
- args.put("LATENCY", (Double) 0.0);
- args.put("RELATIVE", false);
- args.put("ZIGZAG", checkZigzag.isSelected());
- args.put("ENDSCAN", checkEndScan.isSelected());
- return args;
- }
-
-
- @SuppressWarnings("unchecked")
- // //GEN-BEGIN:initComponents
- private void initComponents() {
-
- buttonGroup1 = new javax.swing.ButtonGroup();
- buttonGroup2 = new javax.swing.ButtonGroup();
- panelPositioners = new javax.swing.JPanel();
- motorPanelPhi = new ch.psi.pshell.swing.MotorReadoutPanel();
- radioStepSize = new javax.swing.JRadioButton();
- radioSteps = new javax.swing.JRadioButton();
- spinnerStepSizePhi = new javax.swing.JSpinner();
- spinnerStepsPhi = new javax.swing.JSpinner();
- spinnerFromPhi = new javax.swing.JSpinner();
- jLabel4 = new javax.swing.JLabel();
- jLabel5 = new javax.swing.JLabel();
- spinnerToPhi = new javax.swing.JSpinner();
- jLabel6 = new javax.swing.JLabel();
- jLabel7 = new javax.swing.JLabel();
- motorPanelTheta = new ch.psi.pshell.swing.MotorReadoutPanel();
- jLabel8 = new javax.swing.JLabel();
- jLabel9 = new javax.swing.JLabel();
- spinnerFromTheta = new javax.swing.JSpinner();
- spinnerToTheta = new javax.swing.JSpinner();
- jLabel11 = new javax.swing.JLabel();
- jLabel12 = new javax.swing.JLabel();
- spinnerStepSizeTheta = new javax.swing.JSpinner();
- jLabel13 = new javax.swing.JLabel();
- jLabel14 = new javax.swing.JLabel();
- spinnerStepsTheta = new javax.swing.JSpinner();
- checkZigzag = new javax.swing.JCheckBox();
- panelSensors = new javax.swing.JPanel();
- checkImage = new javax.swing.JCheckBox();
- checkImageIntegration = new javax.swing.JCheckBox();
- checkAngleDistribution = new javax.swing.JCheckBox();
- checkSpectrum = new javax.swing.JCheckBox();
- checkTotalCount = new javax.swing.JCheckBox();
- checkCounts1 = new javax.swing.JCheckBox();
- checkCounts2 = new javax.swing.JCheckBox();
- checkCounts3 = new javax.swing.JCheckBox();
- checkCounts4 = new javax.swing.JCheckBox();
- checkCurrent = new javax.swing.JCheckBox();
- checkCur1 = new javax.swing.JCheckBox();
- checkCur2 = new javax.swing.JCheckBox();
- checkCur3 = new javax.swing.JCheckBox();
- buttonScientaSetup = new javax.swing.JButton();
- panelScan = new javax.swing.JPanel();
- buttonStart = new javax.swing.JButton();
- buttonAbort = new javax.swing.JButton();
- checkEndScan = new javax.swing.JCheckBox();
- labelAcqTime = new javax.swing.JLabel();
- dvpAcqTime = new ch.psi.pshell.swing.DeviceValuePanel();
- labelTotalTime = new javax.swing.JLabel();
- textTotalTime = new javax.swing.JLabel();
- buttonQueue = new javax.swing.JButton();
-
- panelPositioners.setBorder(javax.swing.BorderFactory.createTitledBorder("Positioners"));
- panelPositioners.setPreferredSize(new java.awt.Dimension(248, 543));
-
- buttonGroup1.add(radioStepSize);
- radioStepSize.setSelected(true);
- radioStepSize.setText("Step Size");
- radioStepSize.addActionListener(new java.awt.event.ActionListener() {
- public void actionPerformed(java.awt.event.ActionEvent evt) {
- radioStepSizeActionPerformed(evt);
- }
- });
-
- buttonGroup1.add(radioSteps);
- radioSteps.setText("Number of Steps");
- radioSteps.addActionListener(new java.awt.event.ActionListener() {
- public void actionPerformed(java.awt.event.ActionEvent evt) {
- radioStepSizeActionPerformed(evt);
- }
- });
-
- spinnerStepSizePhi.setModel(new javax.swing.SpinnerNumberModel(1.0d, 0.1d, 180.0d, 0.1d));
-
- spinnerStepsPhi.setModel(new javax.swing.SpinnerNumberModel(10, 1, 1000, 1));
- spinnerStepsPhi.setEnabled(false);
-
- spinnerFromPhi.setModel(new javax.swing.SpinnerNumberModel(1.0d, 0.0d, 1.0d, 1.0d));
-
- jLabel4.setText("Phi From:");
-
- jLabel5.setText("Phi To:");
-
- spinnerToPhi.setModel(new javax.swing.SpinnerNumberModel(10.0d, 0.0d, 10.0d, 1.0d));
-
- jLabel6.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
- jLabel6.setText("Phi:");
-
- jLabel7.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
- jLabel7.setText("Theta:");
-
- jLabel8.setText("Theta To:");
-
- jLabel9.setText("Theta From:");
-
- spinnerFromTheta.setModel(new javax.swing.SpinnerNumberModel(1.0d, 0.0d, 1.0d, 1.0d));
-
- spinnerToTheta.setModel(new javax.swing.SpinnerNumberModel(10.0d, 0.0d, 10.0d, 1.0d));
-
- jLabel11.setText("Phi:");
-
- jLabel12.setText("Theta:");
-
- spinnerStepSizeTheta.setModel(new javax.swing.SpinnerNumberModel(1.0d, 0.1d, 90.0d, 0.1d));
-
- jLabel13.setText("Phi:");
-
- jLabel14.setText("Theta:");
-
- spinnerStepsTheta.setModel(new javax.swing.SpinnerNumberModel(10, 1, 1000, 1));
- spinnerStepsTheta.setEnabled(false);
-
- checkZigzag.setText("Zigzag");
-
- javax.swing.GroupLayout panelPositionersLayout = new javax.swing.GroupLayout(panelPositioners);
- panelPositioners.setLayout(panelPositionersLayout);
- panelPositionersLayout.setHorizontalGroup(
- panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(panelPositionersLayout.createSequentialGroup()
- .addContainerGap()
- .addGroup(panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(panelPositionersLayout.createSequentialGroup()
- .addComponent(jLabel6)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(motorPanelPhi, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
- .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panelPositionersLayout.createSequentialGroup()
- .addGap(0, 36, Short.MAX_VALUE)
- .addGroup(panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panelPositionersLayout.createSequentialGroup()
- .addGroup(panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addComponent(jLabel4, javax.swing.GroupLayout.Alignment.TRAILING)
- .addComponent(jLabel5, javax.swing.GroupLayout.Alignment.TRAILING)
- .addComponent(jLabel8, javax.swing.GroupLayout.Alignment.TRAILING)
- .addComponent(jLabel9, javax.swing.GroupLayout.Alignment.TRAILING))
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addGroup(panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
- .addComponent(spinnerFromPhi, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 91, Short.MAX_VALUE)
- .addComponent(spinnerToPhi, javax.swing.GroupLayout.Alignment.TRAILING)
- .addComponent(spinnerFromTheta, javax.swing.GroupLayout.Alignment.TRAILING)
- .addComponent(spinnerToTheta, javax.swing.GroupLayout.Alignment.TRAILING)))
- .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panelPositionersLayout.createSequentialGroup()
- .addComponent(jLabel11)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(spinnerStepSizePhi, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
- .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panelPositionersLayout.createSequentialGroup()
- .addComponent(jLabel12)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(spinnerStepSizeTheta, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
- .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panelPositionersLayout.createSequentialGroup()
- .addGroup(panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
- .addComponent(jLabel14)
- .addComponent(jLabel13))
- .addGap(6, 6, 6)
- .addGroup(panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addComponent(spinnerStepsPhi, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addComponent(spinnerStepsTheta, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))))
- .addGroup(panelPositionersLayout.createSequentialGroup()
- .addComponent(jLabel7)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(motorPanelTheta, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
- .addGroup(panelPositionersLayout.createSequentialGroup()
- .addGroup(panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addComponent(radioSteps)
- .addComponent(radioStepSize)
- .addComponent(checkZigzag))
- .addGap(0, 0, Short.MAX_VALUE)))
- .addContainerGap())
- );
-
- panelPositionersLayout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {radioStepSize, radioSteps});
-
- panelPositionersLayout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {spinnerStepSizePhi, spinnerStepSizeTheta, spinnerStepsPhi});
-
- panelPositionersLayout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {jLabel6, jLabel7});
-
- panelPositionersLayout.setVerticalGroup(
- panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(panelPositionersLayout.createSequentialGroup()
- .addContainerGap()
- .addGroup(panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER)
- .addComponent(jLabel6)
- .addComponent(motorPanelPhi, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addGroup(panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER)
- .addComponent(jLabel7)
- .addComponent(motorPanelTheta, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
- .addGroup(panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
- .addComponent(spinnerFromPhi, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addComponent(jLabel4))
- .addGap(3, 3, 3)
- .addGroup(panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
- .addComponent(spinnerToPhi, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addComponent(jLabel5))
- .addGap(3, 3, 3)
- .addGroup(panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
- .addComponent(spinnerFromTheta, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addComponent(jLabel9))
- .addGap(3, 3, 3)
- .addGroup(panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
- .addComponent(spinnerToTheta, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addComponent(jLabel8))
- .addGap(18, 18, 18)
- .addComponent(radioStepSize)
- .addGap(3, 3, 3)
- .addGroup(panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
- .addComponent(spinnerStepSizePhi, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addComponent(jLabel11))
- .addGap(3, 3, 3)
- .addGroup(panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
- .addComponent(spinnerStepSizeTheta, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addComponent(jLabel12))
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
- .addComponent(radioSteps)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addGroup(panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
- .addComponent(spinnerStepsPhi, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addComponent(jLabel13))
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addGroup(panelPositionersLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
- .addComponent(spinnerStepsTheta, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addComponent(jLabel14))
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(checkZigzag)
- .addContainerGap(99, Short.MAX_VALUE))
- );
-
- panelSensors.setBorder(javax.swing.BorderFactory.createTitledBorder("Sensors"));
- panelSensors.setPreferredSize(new java.awt.Dimension(248, 543));
-
- checkImage.setSelected(true);
- checkImage.setText("Scienta Image");
- checkImage.setToolTipText("");
- checkImage.setContentAreaFilled(false);
- checkImage.setName("Scienta.dataMatrix"); // NOI18N
-
- checkImageIntegration.setSelected(true);
- checkImageIntegration.setText("Scienta Energy Distribution");
- checkImageIntegration.setToolTipText("");
- checkImageIntegration.setContentAreaFilled(false);
- checkImageIntegration.setName("EnergyDistribution"); // NOI18N
-
- checkAngleDistribution.setSelected(true);
- checkAngleDistribution.setText("Scienta Angle Distribution");
- checkAngleDistribution.setToolTipText("");
- checkAngleDistribution.setContentAreaFilled(false);
- checkAngleDistribution.setName("AngleDistribution"); // NOI18N
-
- checkSpectrum.setText("Scienta Spectrum");
- checkSpectrum.setName("Scienta.spectrum"); // NOI18N
-
- checkTotalCount.setSelected(true);
- checkTotalCount.setText("Total Counts");
- checkTotalCount.setName("Counts"); // NOI18N
-
- checkCounts1.setText("Counts Region 1");
- checkCounts1.setName("CountsR1"); // NOI18N
-
- checkCounts2.setText("Counts Region 2");
- checkCounts2.setName("CountsR2"); // NOI18N
-
- checkCounts3.setText("Counts Region 3");
- checkCounts3.setName("CountsR3"); // NOI18N
-
- checkCounts4.setText("Counts Region 4");
- checkCounts4.setName("CountsR4"); // NOI18N
-
- checkCurrent.setText("Machine Current");
- checkCurrent.setName("MachineCurrent"); // NOI18N
-
- checkCur1.setText("Sample Current");
- checkCur1.setName("SampleCurrent"); // NOI18N
-
- checkCur2.setText("Ref Current");
- checkCur2.setName("RefCurrent"); // NOI18N
-
- checkCur3.setText("Aux Current");
- checkCur3.setName("AuxCurrent"); // NOI18N
-
- buttonScientaSetup.setText("Scienta Setup");
- buttonScientaSetup.addActionListener(new java.awt.event.ActionListener() {
- public void actionPerformed(java.awt.event.ActionEvent evt) {
- buttonScientaSetupActionPerformed(evt);
- }
- });
-
- javax.swing.GroupLayout panelSensorsLayout = new javax.swing.GroupLayout(panelSensors);
- panelSensors.setLayout(panelSensorsLayout);
- panelSensorsLayout.setHorizontalGroup(
- panelSensorsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(panelSensorsLayout.createSequentialGroup()
- .addContainerGap()
- .addGroup(panelSensorsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addComponent(buttonScientaSetup, javax.swing.GroupLayout.DEFAULT_SIZE, 208, Short.MAX_VALUE)
- .addComponent(checkImage)
- .addComponent(checkImageIntegration)
- .addComponent(checkSpectrum)
- .addComponent(checkCounts1)
- .addComponent(checkTotalCount)
- .addComponent(checkCounts2)
- .addComponent(checkCounts3)
- .addComponent(checkCounts4)
- .addComponent(checkCurrent)
- .addComponent(checkCur1)
- .addComponent(checkCur2)
- .addComponent(checkCur3)
- .addComponent(checkAngleDistribution))
- .addContainerGap())
- );
- panelSensorsLayout.setVerticalGroup(
- panelSensorsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(panelSensorsLayout.createSequentialGroup()
- .addContainerGap()
- .addComponent(checkImage)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(checkImageIntegration)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(checkAngleDistribution)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(checkSpectrum)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(checkTotalCount)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(checkCounts1)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(checkCounts2)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(checkCounts3)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(checkCounts4)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(checkCurrent)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(checkCur1)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(checkCur2)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(checkCur3)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 97, Short.MAX_VALUE)
- .addComponent(buttonScientaSetup)
- .addGap(26, 26, 26))
- );
-
- panelScan.setBorder(javax.swing.BorderFactory.createTitledBorder("Scan Control"));
- panelScan.setPreferredSize(new java.awt.Dimension(248, 543));
-
- buttonStart.setText("Start");
- buttonStart.addActionListener(new java.awt.event.ActionListener() {
- public void actionPerformed(java.awt.event.ActionEvent evt) {
- buttonStartActionPerformed(evt);
- }
- });
-
- buttonAbort.setText("Abort");
- buttonAbort.addActionListener(new java.awt.event.ActionListener() {
- public void actionPerformed(java.awt.event.ActionEvent evt) {
- buttonAbortActionPerformed(evt);
- }
- });
-
- checkEndScan.setText("Turn off beam at end");
-
- labelAcqTime.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
- labelAcqTime.setText("Acquisition time(s):");
-
- labelTotalTime.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
- labelTotalTime.setText("Total time:");
-
- textTotalTime.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
- textTotalTime.setBorder(javax.swing.BorderFactory.createTitledBorder(""));
-
- buttonQueue.setText("Queue");
- buttonQueue.addActionListener(new java.awt.event.ActionListener() {
- public void actionPerformed(java.awt.event.ActionEvent evt) {
- buttonQueueActionPerformed(evt);
- }
- });
-
- javax.swing.GroupLayout panelScanLayout = new javax.swing.GroupLayout(panelScan);
- panelScan.setLayout(panelScanLayout);
- panelScanLayout.setHorizontalGroup(
- panelScanLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(panelScanLayout.createSequentialGroup()
- .addContainerGap()
- .addGroup(panelScanLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addComponent(buttonStart, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
- .addComponent(buttonAbort, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
- .addGroup(panelScanLayout.createSequentialGroup()
- .addGroup(panelScanLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addComponent(labelAcqTime)
- .addComponent(labelTotalTime))
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addGroup(panelScanLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addComponent(textTotalTime, javax.swing.GroupLayout.Alignment.TRAILING)
- .addComponent(dvpAcqTime, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 76, javax.swing.GroupLayout.PREFERRED_SIZE))
- .addGap(0, 6, Short.MAX_VALUE))
- .addGroup(panelScanLayout.createSequentialGroup()
- .addComponent(checkEndScan)
- .addGap(53, 53, 53))
- .addComponent(buttonQueue, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
- .addContainerGap())
- );
-
- panelScanLayout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {labelAcqTime, labelTotalTime});
-
- panelScanLayout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {dvpAcqTime, textTotalTime});
-
- panelScanLayout.setVerticalGroup(
- panelScanLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panelScanLayout.createSequentialGroup()
- .addContainerGap()
- .addComponent(buttonStart)
- .addGap(18, 18, 18)
- .addComponent(buttonAbort)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
- .addComponent(buttonQueue)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
- .addGroup(panelScanLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER)
- .addComponent(labelAcqTime)
- .addComponent(dvpAcqTime, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
- .addGroup(panelScanLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.CENTER)
- .addComponent(textTotalTime)
- .addComponent(labelTotalTime))
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
- .addComponent(checkEndScan)
- .addGap(26, 26, 26))
- );
-
- panelScanLayout.linkSize(javax.swing.SwingConstants.VERTICAL, new java.awt.Component[] {dvpAcqTime, textTotalTime});
-
- javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
- this.setLayout(layout);
- layout.setHorizontalGroup(
- layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(layout.createSequentialGroup()
- .addContainerGap()
- .addComponent(panelSensors, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
- .addComponent(panelPositioners, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
- .addComponent(panelScan, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
- );
-
- layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {panelPositioners, panelScan, panelSensors});
-
- layout.setVerticalGroup(
- layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(layout.createSequentialGroup()
- .addContainerGap()
- .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addComponent(panelPositioners, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
- .addComponent(panelSensors, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
- .addComponent(panelScan, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
- .addContainerGap())
- );
- }// //GEN-END:initComponents
-
- private void buttonScientaSetupActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_buttonScientaSetupActionPerformed
- try{
- showDevicePanel("Scienta");
- } catch (Exception ex){
- SwingUtils.showException(this, ex);
- }
- }//GEN-LAST:event_buttonScientaSetupActionPerformed
-
- private void buttonStartActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_buttonStartActionPerformed
- try{
- execute();
- } catch (Exception ex){
- SwingUtils.showException(this, ex);
- }
- }//GEN-LAST:event_buttonStartActionPerformed
-
- private void buttonAbortActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_buttonAbortActionPerformed
- try {
- abort();
- ((Scienta) getDevice("Scienta")).stop();
- } catch (Exception ex) {
- showException(ex);
- }
- }//GEN-LAST:event_buttonAbortActionPerformed
-
- private void radioStepSizeActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_radioStepSizeActionPerformed
- setEnabled(isEnabled());
- }//GEN-LAST:event_radioStepSizeActionPerformed
-
- private void buttonQueueActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_buttonQueueActionPerformed
- try {
- queue();
- } catch (Exception ex) {
- SwingUtils.showException(this, ex);
- }
- }//GEN-LAST:event_buttonQueueActionPerformed
-
- // Variables declaration - do not modify//GEN-BEGIN:variables
- private javax.swing.JButton buttonAbort;
- private javax.swing.ButtonGroup buttonGroup1;
- private javax.swing.ButtonGroup buttonGroup2;
- private javax.swing.JButton buttonQueue;
- private javax.swing.JButton buttonScientaSetup;
- private javax.swing.JButton buttonStart;
- private javax.swing.JCheckBox checkAngleDistribution;
- private javax.swing.JCheckBox checkCounts1;
- private javax.swing.JCheckBox checkCounts2;
- private javax.swing.JCheckBox checkCounts3;
- private javax.swing.JCheckBox checkCounts4;
- private javax.swing.JCheckBox checkCur1;
- private javax.swing.JCheckBox checkCur2;
- private javax.swing.JCheckBox checkCur3;
- private javax.swing.JCheckBox checkCurrent;
- private javax.swing.JCheckBox checkEndScan;
- private javax.swing.JCheckBox checkImage;
- private javax.swing.JCheckBox checkImageIntegration;
- private javax.swing.JCheckBox checkSpectrum;
- private javax.swing.JCheckBox checkTotalCount;
- private javax.swing.JCheckBox checkZigzag;
- private ch.psi.pshell.swing.DeviceValuePanel dvpAcqTime;
- private javax.swing.JLabel jLabel11;
- private javax.swing.JLabel jLabel12;
- private javax.swing.JLabel jLabel13;
- private javax.swing.JLabel jLabel14;
- private javax.swing.JLabel jLabel4;
- private javax.swing.JLabel jLabel5;
- private javax.swing.JLabel jLabel6;
- private javax.swing.JLabel jLabel7;
- private javax.swing.JLabel jLabel8;
- private javax.swing.JLabel jLabel9;
- private javax.swing.JLabel labelAcqTime;
- private javax.swing.JLabel labelTotalTime;
- private ch.psi.pshell.swing.MotorReadoutPanel motorPanelPhi;
- private ch.psi.pshell.swing.MotorReadoutPanel motorPanelTheta;
- private javax.swing.JPanel panelPositioners;
- private javax.swing.JPanel panelScan;
- private javax.swing.JPanel panelSensors;
- private javax.swing.JRadioButton radioStepSize;
- private javax.swing.JRadioButton radioSteps;
- private javax.swing.JSpinner spinnerFromPhi;
- private javax.swing.JSpinner spinnerFromTheta;
- private javax.swing.JSpinner spinnerStepSizePhi;
- private javax.swing.JSpinner spinnerStepSizeTheta;
- private javax.swing.JSpinner spinnerStepsPhi;
- private javax.swing.JSpinner spinnerStepsTheta;
- private javax.swing.JSpinner spinnerToPhi;
- private javax.swing.JSpinner spinnerToTheta;
- private javax.swing.JLabel textTotalTime;
- // End of variables declaration//GEN-END:variables
-}
-
diff --git a/script/local.py b/script/local.py
index f57f70d..50518cb 100644
--- a/script/local.py
+++ b/script/local.py
@@ -2,9 +2,16 @@
# Deployment specific global definitions - executed after startup.py
###################################################################################################
-
def trig_ccd():
- pass
+ return
+ if ccd.isSimulated():
+ time.sleep(0.1)
+ else:
+ image_id = ccd.currentImageCount
+ ccd.start()
+ ccd.waitReady(-1)
+ ccd.waitNewImage(3000, image_id)
+
def is_beam_ok():
return True
diff --git a/script/templates/Scan1D.py b/script/templates/Scan1D.py
index 5f3683f..fcde353 100644
--- a/script/templates/Scan1D.py
+++ b/script/templates/Scan1D.py
@@ -7,40 +7,17 @@ RANGE (tuple (min, max))
STEPS (int or tuple)
LATENCY (double)
RELATIVE (BOOLEAN)
-FLY_SCAN (BOOLEAN)
-ENDSCAN (BOOLEAN)
"""
-
-#set_preference(Preference.PLOT_TYPES,{'ImageIntegrator':1})
-adjust_sensors()
-set_adc_averaging()
-set_preference(Preference.PLOT_TYPES, {'Scienta spectrum':1})
-set_exec_pars(compression=True)
+#Debugging
+if get_exec_pars().args is None:
+ MOTOR = dummy_x
+ SENSORS = [current, ccd.dataMatrix]
+ RANGE = [0.0,1.0]
+ STEPS = 5
+ LATENCY = 0.1
+ RELATIVE = False
try:
- if FLY_SCAN:
- # time per scienta acquisition in seconds
- trig_scienta()
- time1 = time.time()
- before_readout()
- time.sleep(0.2)
- time2 = time.time()
- scienta_time = (time2 - time1) + 1.
- print "step time: ", scienta_time
-
- if isinstance(STEPS,int):
- raise Exception ("Fly Scan must define step size, and not number of steps")
-
- STEP = STEPS[0]
- SPEED = STEP / scienta_time
- fly_time = (RANGE[1] - RANGE[0]) / SPEED
- STEPS = int(fly_time / scienta_time) + 1
-
- print "speed: ", SPEED
- print "scan time: ", fly_time
- cscan(MOTOR, SENSORS, RANGE[0], RANGE[1], STEPS, LATENCY, fly_time, RELATIVE, before_read=before_readout, after_read = after_readout, check_positions = False)
- else:
- lscan(MOTOR, SENSORS, RANGE[0], RANGE[1], STEPS, LATENCY, RELATIVE, before_read=before_readout, after_read = after_readout)
+ r = lscan(MOTOR, SENSORS, RANGE[0], RANGE[1], STEPS, LATENCY, RELATIVE, before_read=before_readout, after_read = after_readout, compression=True)
finally:
- if ENDSCAN:
- after_scan()
+ after_scan()
diff --git a/script/templates/Scan2D.py b/script/templates/Scan2D.py
index a419839..307100e 100644
--- a/script/templates/Scan2D.py
+++ b/script/templates/Scan2D.py
@@ -24,7 +24,8 @@ if get_exec_pars().args is None:
ZIGZAG = True
try:
- ascan((ManipulatorPhi, ManipulatorTheta), SENSORS, (PHI_RANGE[0], THETA_RANGE[0]), (PHI_RANGE[1], THETA_RANGE[1]), STEPS, LATENCY, RELATIVE, zigzag = ZIGZAG, \
+ ascan((MOTORS[0], MOTORS[1]), SENSORS, (RANGE_X[0], RANGE_Y[0]), (RANGE_X[1], RANGE_Y[1]), STEPS, LATENCY, RELATIVE, zigzag = ZIGZAG, \
before_read=before_readout, after_read = after_readout, compression = True)
finally:
- after_scan()
\ No newline at end of file
+ after_scan()
+
\ No newline at end of file