]> jspc29.x-matter.uni-frankfurt.de Git - labtools.git/commitdiff
Update power supply controller. Enable individual power supplies in GUI, fix some...
authorJan Michel <j.michel@gsi.de>
Fri, 18 Aug 2017 08:56:15 +0000 (10:56 +0200)
committerJan Michel <j.michel@gsi.de>
Fri, 18 Aug 2017 08:56:28 +0000 (10:56 +0200)
powersupplies/web/htdocs/build_index.pl
powersupplies/web/htdocs/index.html
powersupplies/web/htdocs/pwr.conf
powersupplies/web/htdocs/pwr.pl
powersupplies/web/htdocs/pwr_hmp.htm
powersupplies/web/htdocs/pwr_psp.htm
powersupplies/web/htdocs/pwr_switch.htm
powersupplies/web/htdocs/scripts.js
powersupplies/web/htdocs/styles.css

index 0683b2a59a2178dbc7fbfdcf8f3ad63969511b09..c416157321feb82ae9ba7293624855d7fefe0cf7 100755 (executable)
@@ -18,9 +18,9 @@ if ($ENV{'SERVER_SOFTWARE'} =~ /HTTPi/i) {
 
 open(LESEN,$file)
   or die "Fehler beim oeffnen von : $!\n";
-
+my $j = 0;
 while(defined(my $i = <LESEN>)) {
-
+  $j++;
        if( $i =~ /^PWRSPLY:([^:]+):([^:]+):([^:]+):([^:]+):([^:]+)/g ) {
          my @arr = split(':',$i);
          shift @arr;
@@ -33,25 +33,25 @@ while(defined(my $i = <LESEN>)) {
 
 if($type eq "PSP") {
 print <<EOF;
-<p>
-<iframe name="inlineframe" src="pwr_psp.htm?device=$ser_dev&id=$dev_id&speed=$speed&type=$type" frameborder="0" scrolling="auto" width="800" height="340" style="float:left" ></iframe>
-</p>
+<h3 onClick="Enable($j)" id="$j">Power Supply <b>$dev_id</b> [connected to <b>$ser_dev</b>]</h3>
+<iframe id="iframe$j" name="inlineframe" data-src="pwr_psp.htm?device=$ser_dev&id=$dev_id&speed=$speed&type=$type" frameborder="0" scrolling="auto" width="800" data-height="350" height="0"></iframe>
+
 EOF
 }
 
 if($type =~ /HMP/ or $type =~ /HMC/ or $type =~ /PST/) {
 print <<EOF;
-<p>
-<iframe name="inlineframe" src="pwr_hmp.htm?device=$ser_dev&id=$dev_id&type=$type&channels=$channels&speed=$speed&names=$names" frameborder="0" scrolling="auto" width="800" height="340" style="float:left" ></iframe>
-</p>
+<h3 onClick="Enable($j)" id="$j">Power Supply <b>$dev_id</b> [connected to <b>$ser_dev</b>]</h3>
+<iframe id="iframe$j"  name="inlineframe" data-src="pwr_hmp.htm?device=$ser_dev&id=$dev_id&type=$type&channels=$channels&speed=$speed&names=$names" frameborder="0" scrolling="auto" width="800" data-height="340" height="0"></iframe>
+
 EOF
 }
 
 if($type =~ /PWRSW/) {
 print <<EOF;
-<p>
-<iframe name="inlineframe" src="pwr_switch.htm?device=$ser_dev&id=$dev_id&type=$type&channels=$channels&speed=$speed&names=$names" frameborder="0" scrolling="auto" width="800" height="340" style="float:left" ></iframe>
-</p>
+<h3 onClick="Enable($j)" id="$j">Power Supply <b>$dev_id</b> [connected to <b>$ser_dev</b>]</h3>
+<iframe id="iframe$j"  name="inlineframe" data-src="pwr_switch.htm?device=$ser_dev&id=$dev_id&type=$type&channels=$channels&speed=$speed&names=$names" frameborder="0" scrolling="auto" width="800" data-height="340" height="0"></iframe>
+
 EOF
 }
 
index a3b834cde02e05bebd508d8e5eb14ed60d54e405..4f167ec511e5952ea2380c630b969e8a7664ba40 100644 (file)
@@ -24,6 +24,7 @@ function update(data) {
 getdata('build_index.pl',update); 
 </script>
 
+<h3>Configuration File</h3>
 <p id="conf_area" style="clear:both">
 Note that you need to have libdevice-serialport-perl or perl-Device-SerialPort<br> 
 installed and that the /dev/ttyUSBn need to be accessible by normal users.<br>
index 578af96eb3e5ab78398a5a8ffda1bbdcceda5902..bb515a2dd1b6acc679b724d576ac8990c91d6e61 100644 (file)
@@ -4,12 +4,14 @@
 //PWRSPLY:/dev/ttyUSB0:9600:PST3202:PST:3
 //PWRSPLY:/dev/ttyUSB0:115200:HMP4030:HMP:3
 //PWRSPLY:IP192.168.0.56:5050:HMP4040:HMP:4
-PWRSPLY:/dev/FTDI_FT232R_USB_UART_AH02HFZW:2400:PSP2010:PSP:1
 //PWRSPLY:/dev/FTDI_FT232R_USB_UART_A702HE33:2400:PSP405:PSP:1
 //PWRSPLY:IP192.168.0.56:5050:HMP4040 DiRich:HMP:4:LP1:LP2:LP3:DCDC
-PWRSPLY:/dev/FTDI_Xmatter_TTL_ALR1AJS:57600:Desk:PWRSW:6:TestAdrian:Pulser:::TrgDistr:ADC
 //PWRSPLY:SERpi@192.168.0.230/dev/FTDI_FT232R_USB_UART_AH02HFZW:2400:PSP2010:PSP:1
 //PWRSPLY:SERpi@192.168.0.230/dev/TRB3_Power48_00002:0:Rack48:PWRSW:4:Crate:::
-//PWRSPLY:/dev/HAMEG_HO732_VCP023842636:0:HMP4040:HMP:4
-//PWRSPLY:IP192.168.0.56:5050:HMP4040 DiRich:HMP:4:LP1:LP2:LP3:DCDC
 //PWRSPLY:/dev/TRB3_Power48_00002:0:Rack48:PWRSW:4:Desk:::
+
+PWRSPLY:/dev/FTDI_FT232R_USB_UART_AH02HFZW:2400:PSP2010:PSP:1
+PWRSPLY:/dev/FTDI_Xmatter_TTL_ALR1AJS:57600:Desk:PWRSW:6:TestAdrian:Pulser:::TrgDistr:ADC
+PWRSPLY:/dev/HAMEG_HO732_VCP023842636:0:HMP4040:HMP:4
+PWRSPLY:IP192.168.0.56:5050:HMP4040 DiRich:HMP:4:LP1:LP2:LP3:DCDC
+PWRSPLY:IP192.168.0.139:5025:HMC8043:HMC:3:::
index aa6c0bc469fe3d9dc1d04bad285a9122df8f364c..561678d814ad3129aea671e8afd351f568351bb2 100755 (executable)
@@ -186,7 +186,6 @@ sub HMP_ethernet {
   
   my $port = IO::Socket::INET->new(PeerAddr => $ser_dev, PeerPort => $ser_speed, Proto => "tcp", Type => SOCK_STREAM, Timeout => 1) 
               or (print("Device not found") && return);  
-
   while ( my $command = shift(@new_command) ) {
     $command = uri_unescape($command);
     my $x = getValue($port,$command,$cnt++);
@@ -202,6 +201,7 @@ sub serial_rw {
   my $x = "";
   if ($ser_type eq 'PSP') {$command .= "\r";} else {$command .= "\n";}
   print $fh  "$command";
+#   print $command;
   if($ser_type eq 'PWRSW' || $forceread || $command =~ /\?/) {
     for my $i (0..500) {
       $x .=   <$fh>;
@@ -212,13 +212,16 @@ sub serial_rw {
       usleep(1000);
       }
     }
+  else {
+    usleep(1000);
+    }
   return $x;  
   }
   
 
 sub getValue {
   my ($fh,$cmd,$cnt,$forceread) = @_;
-  if (defined $db->{$cmd.$cnt}{tim} && $db->{$cmd.$cnt}{tim} > time()-2) {
+  if (0 && defined $db->{$cmd.$cnt}{tim} && $db->{$cmd.$cnt}{tim} > time()-2) {
     return $db->{$cmd.$cnt}{val};
     }
   else {
index edf020fc25955e8032102114f27df1e001f675ee..8b840dc236613e73b380857eb0938113656ec60d 100644 (file)
@@ -2,14 +2,14 @@
 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
-<link href="../styles.css" rel="stylesheet" type="text/css"/>
-<script src="../scripts.js" type="text/javascript"></script>
+<link href="styles.css" rel="stylesheet" type="text/css"/>
+<script src="scripts.js" type="text/javascript"></script>
 <title>Power Supply Monitor and Access</title>
 </head>
 <body style="font-family: sans-serif;" >
 
 
-<h3 id="headline">Power Supply Access</h3>
+<!-- <h3 id="headline">Power Supply Access</h3> -->
 
 
 
@@ -226,7 +226,7 @@ function readSettings() {
   }
 
 updateTask = setTimeout("update()",updaterate);
-document.getElementById("headline").innerHTML  = "Power Supply "+'<b>'+dev_id+'</b>'+" [connected to "+'<b>'+ser_dev+'</b>'+"]" ;
+//document.getElementById("headline").innerHTML  = "Power Supply "+'<b>'+dev_id+'</b>'+" [connected to "+'<b>'+ser_dev+'</b>'+"]" ;
 
 for(i=1;i<=channels;i++) {
   if(typeof Vnames[i-1] !== 'undefined')
index 004d682e4c819eb2548d96edf77f16fb3bdb8e54..2dcb1e41540556d00591e2db7586e40b3d7aff91 100644 (file)
@@ -2,14 +2,14 @@
 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
-<link href="../styles.css" rel="stylesheet" type="text/css"/>
-<script src="../scripts.js" type="text/javascript"></script>
+<link href="styles.css" rel="stylesheet" type="text/css"/>
+<script src="scripts.js" type="text/javascript"></script>
 <title>Power Supply Monitor and Access</title>
 </head>
 <body style="font-family: sans-serif;" >
 
 
-<p style="bold" id="headline">Power Supply Access</p>
+<!-- <p style="bold" id="headline">Power Supply Access</p> -->
 
 
 <table align=center id="layout" style="
@@ -154,7 +154,7 @@ function getParameterByName(name)
 
 
 updateTask = setInterval("communication()",updaterate);
-document.getElementById("headline").innerHTML  = "Power Supply "+'<b>'+dev_id+'</b>'+" [connected to "+'<b>'+ser_dev+'</b>'+"]" ;
+//document.getElementById("headline").innerHTML  = "Power Supply "+'<b>'+dev_id+'</b>'+" [connected to "+'<b>'+ser_dev+'</b>'+"]" ;
   
   
 </script>
index 3b84c0bb1ff3bcda2e0629115a200dcc4fa32c64..c06486b28ad7ed641a4a122765a4373db652cedf 100644 (file)
@@ -2,14 +2,14 @@
 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
-<link href="../styles.css" rel="stylesheet" type="text/css"/>
-<script src="../scripts.js" type="text/javascript"></script>
+<link href="styles.css" rel="stylesheet" type="text/css"/>
+<script src="scripts.js" type="text/javascript"></script>
 <title>Power Supply Monitor and Access</title>
 </head>
 <body style="font-family: sans-serif;" class="powerswitch">
 
 
-<h3 id="headline"></h3>
+<!-- <h3 id="headline"></h3> -->
 
 
 
@@ -152,7 +152,7 @@ function readSettings() {
   }
 
 updateTask = setTimeout("communication()",updaterate);
-document.getElementById("headline").innerHTML  = "Power Switch "+'<b>'+dev_id+'</b>'+" [connected to "+'<b>'+ser_dev+'</b>'+"]" ;
+//document.getElementById("headline").innerHTML  = "Power Switch "+'<b>'+dev_id+'</b>'+" [connected to "+'<b>'+ser_dev+'</b>'+"]" ;
   
 maketable();  
 </script>
index 3e2a5c1e34caab46ece9e74be00698c6877b7e8f..e0faa62cafcd69e3533729547c3daa072709bfa7 100644 (file)
@@ -17,7 +17,25 @@ function getdata(command,callback,option) {
   xmlhttp.open("GET",command,true);
   xmlhttp.send(null);
   }
+
+  
+function Enable(ob) {
+  frob = "iframe"+ob;
+  var frame = document.getElementById(frob);
+  var h =  document.getElementById(ob);
+  
+  if(frame.getAttribute("height") == 0) {
+    frame.setAttribute("height", frame.getAttribute("data-height"));
+    frame.setAttribute("src",frame.getAttribute("data-src"));
+    h.style.color = "black";
+    }
+  else  {
+    frame.setAttribute("height", "0");
+    frame.setAttribute("src","");
+    h.style.color = "darkblue";
+    }
   
+  }  
   
 //   function reload() {
 //   xmlhttp=new XMLHttpRequest();
@@ -41,4 +59,4 @@ function getdata(command,callback,option) {
 //   xmlhttp.open("GET","get.cgi?$.$ENV{'QUERY_STRING'}.qq$",true);
 //   xmlhttp.send(null);
 //   document.getElementById("stop").style.background="#111";
-//   }
\ No newline at end of file
+//   }
index 7d6a735671db4009106db1d0b2179ea1f0d454ae..4ee34db0087f405be0b406c19ed7b9c5cd88ffe5 100644 (file)
@@ -54,4 +54,12 @@ tfoot>tr:first-child {
 .powerswitch td {
   border-left:1px solid black;
   text-align:center;
-}
\ No newline at end of file
+}
+
+h3 {
+  cursor : pointer;
+  margin-bottom:5px;
+  padding-bottom:5px;
+  font-weight:normal;
+  color:darkblue;
+}