source: MML/trunk/mml/doc_html/mml/links/tango/getpvonline.html @ 4

Last change on this file since 4 was 4, checked in by zhangj, 10 years ago

Initial import--MML version from SOLEIL@2013

File size: 9.3 KB
Line 
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
2                "http://www.w3.org/TR/REC-html40/loose.dtd">
3<html>
4<head>
5  <title>Description of getpvonline</title>
6  <meta name="keywords" content="getpvonline">
7  <meta name="description" content="GETPVONLINE - Get the online value">
8  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
9  <meta name="generator" content="m2html &copy; 2003 Guillaume Flandin">
10  <meta name="robots" content="index, follow">
11  <link type="text/css" rel="stylesheet" href="../../../m2html.css">
12</head>
13<body>
14<a name="_top"></a>
15<div><a href="../../../index.html">Home</a> &gt;  <a href="../../index.html">mml</a> &gt; <a href="#">links</a> &gt; <a href="index.html">tango</a> &gt; getpvonline.m</div>
16
17<!--<table width="100%"><tr><td align="left"><a href="../../../index.html"><img alt="<" border="0" src="../../../left.png">&nbsp;Master index</a></td>
18<td align="right"><a href="index.html">Index for mml/links/tango&nbsp;<img alt=">" border="0" src="../../../right.png"></a></td></tr></table>-->
19
20<h1>getpvonline
21</h1>
22
23<h2><a name="_name"></a>PURPOSE <a href="#_top"><img alt="^" border="0" src="../../../up.png"></a></h2>
24<div class="box"><strong>GETPVONLINE - Get the online value</strong></div>
25
26<h2><a name="_synopsis"></a>SYNOPSIS <a href="#_top"><img alt="^" border="0" src="../../../up.png"></a></h2>
27<div class="box"><strong>function [AM, tout, DataTime, ErrorFlag] = getpvonline(TangoNames, Field, varargin); </strong></div>
28
29<h2><a name="_description"></a>DESCRIPTION <a href="#_top"><img alt="^" border="0" src="../../../up.png"></a></h2>
30<div class="fragment"><pre class="comment">GETPVONLINE - Get the online value
31  [AM, DataTime, ErrorFlag] = getpvonline(TangoNames, N, DataType);
32
33  INPUTS
34  1. TangoNames
35  2. Field - 'Monitor' or 'Setpoint'
36  3. N - Number of data points to return {Default: 1}
37    (only used for 'Vector', 'Waveform', and 'Matrix' DataTypes)
38  4. DataType - 'double' or 'string'
39  5. t - time vector of when to start a read [seconds]
40  6. NAverage - Number of averages per data point {Default: 1}
41  7. AvgSamplePeriod - Sample period when averaging [seconds] {Default: .1}
42
43  OUTPUTS
44  1. AM - Value
45  2. tout - Local computer time on finish of data read
46  3. DataTime = time (in seconds) since 00:00:00, Jan 1, 1970
47                 (seconds + nanoseconds * i)
48  4. ErrorFlag (Presently not functional.  All errors will cause a Matlab error.)
49
50  EXAMPLES
51  1. get one data  with a 3 second delay
52     getpvonline('ANS-C01/AEsim/S1-CH/current',3)
53  2. 5 averages witha periode of 1 second
54    getpvonline('ANS-C01/AEsim/S1-CH/current','Setpoint','Double',1,0,5,1)
55    getpvonline('ANS-C01/AEsim/S1-CH/current','Setpoint',0,5,1)
56 See also <a href="setpvonline.html" class="code" title="function ErrorFlag = setpvonline(TangoNames, NewSP, DataType);">setpvonline</a></pre></div>
57
58<!-- crossreference -->
59<h2><a name="_cross"></a>CROSS-REFERENCE INFORMATION <a href="#_top"><img alt="^" border="0" src="../../../up.png"></a></h2>
60This function calls:
61<ul style="list-style-image:url(../../../matlabicon.gif)">
62<li><a href="readattribute.html" class="code" title="function [Data, tout, DataTime, ErrorFlag] = readattribute(tangolist, varargin)">readattribute</a> READATTRIBUTE - Reads a list of Tango attributes</li></ul>
63This function is called by:
64<ul style="list-style-image:url(../../../matlabicon.gif)">
65<li><a href="tango_command.html" class="code" title="function tango_command(varargin)">tango_command</a>        </li></ul>
66<!-- crossreference -->
67
68
69<h2><a name="_source"></a>SOURCE CODE <a href="#_top"><img alt="^" border="0" src="../../../up.png"></a></h2>
70<div class="fragment"><pre>0001 <a name="_sub0" href="#_subfunctions" class="code">function [AM, tout, DataTime, ErrorFlag] = getpvonline(TangoNames, Field, varargin);</a>
710002 <span class="comment">%GETPVONLINE - Get the online value</span>
720003 <span class="comment">%  [AM, DataTime, ErrorFlag] = getpvonline(TangoNames, N, DataType);</span>
730004 <span class="comment">%</span>
740005 <span class="comment">%  INPUTS</span>
750006 <span class="comment">%  1. TangoNames</span>
760007 <span class="comment">%  2. Field - 'Monitor' or 'Setpoint'</span>
770008 <span class="comment">%  3. N - Number of data points to return {Default: 1}</span>
780009 <span class="comment">%    (only used for 'Vector', 'Waveform', and 'Matrix' DataTypes)</span>
790010 <span class="comment">%  4. DataType - 'double' or 'string'</span>
800011 <span class="comment">%  5. t - time vector of when to start a read [seconds]</span>
810012 <span class="comment">%  6. NAverage - Number of averages per data point {Default: 1}</span>
820013 <span class="comment">%  7. AvgSamplePeriod - Sample period when averaging [seconds] {Default: .1}</span>
830014 <span class="comment">%</span>
840015 <span class="comment">%  OUTPUTS</span>
850016 <span class="comment">%  1. AM - Value</span>
860017 <span class="comment">%  2. tout - Local computer time on finish of data read</span>
870018 <span class="comment">%  3. DataTime = time (in seconds) since 00:00:00, Jan 1, 1970</span>
880019 <span class="comment">%                 (seconds + nanoseconds * i)</span>
890020 <span class="comment">%  4. ErrorFlag (Presently not functional.  All errors will cause a Matlab error.)</span>
900021 <span class="comment">%</span>
910022 <span class="comment">%  EXAMPLES</span>
920023 <span class="comment">%  1. get one data  with a 3 second delay</span>
930024 <span class="comment">%     getpvonline('ANS-C01/AEsim/S1-CH/current',3)</span>
940025 <span class="comment">%  2. 5 averages witha periode of 1 second</span>
950026 <span class="comment">%    getpvonline('ANS-C01/AEsim/S1-CH/current','Setpoint','Double',1,0,5,1)</span>
960027 <span class="comment">%    getpvonline('ANS-C01/AEsim/S1-CH/current','Setpoint',0,5,1)</span>
970028 <span class="comment">% See also setpvonline</span>
980029
990030 <span class="comment">%</span>
1000031 <span class="comment">%  Written for by Laurent S. Nadolski</span>
1010032
1020033 <span class="comment">%% TODO groups</span>
1030034
1040035 <span class="comment">% Function start time</span>
1050036 t0 = clock;
1060037
1070038 <span class="keyword">if</span> nargin &lt; 1
1080039     error(<span class="string">'Must have at least a TangoName input'</span>);
1090040 <span class="keyword">end</span>
1100041
1110042 <span class="keyword">if</span> ~exist(<span class="string">'Field'</span>,<span class="string">'var'</span>)
1120043     field = <span class="string">'Monitor'</span>;
1130044 <span class="keyword">else</span>
1140045     field = Field;
1150046 <span class="keyword">end</span>
1160047                                                                                                                                 
1170048 DataType = <span class="string">'Double'</span>;
1180049 N = 0;
1190050 NAvg = 1;
1200051 AvgPeriod = 0;
1210052
1220053 <span class="keyword">if</span> length(varargin) &gt;= 1
1230054     <span class="keyword">if</span> ischar(varargin{1})
1240055         DataType = varargin{1};
1250056         varargin(1) = [];
1260057         <span class="keyword">if</span> length(varargin) &gt;= 1
1270058             N = varargin{1};
1280059             varargin(1) = [];
1290060         <span class="keyword">end</span>
1300061     <span class="keyword">end</span>
1310062     <span class="keyword">if</span> length(varargin) &gt;= 1
1320063         t = varargin{1};
1330064         <span class="keyword">if</span> length(varargin) &gt;= 2
1340065             NAvg = varargin{2};
1350066             <span class="keyword">if</span> length(varargin) &gt;= 3
1360067                 AvgPeriod = varargin{3};
1370068                 <span class="keyword">if</span> length(varargin) &gt;= 4
1380069                     FreshDataFlag = varargin{4};
1390070                 <span class="keyword">end</span>
1400071             <span class="keyword">end</span>
1410072         <span class="keyword">end</span>
1420073     <span class="keyword">end</span>
1430074 <span class="keyword">end</span>
1440075
1450076 <span class="comment">% Scalars</span>
1460077 N = N(1);
1470078 NAvg = NAvg(1);
1480079 AvgPeriod = AvgPeriod(1);
1490080
1500081 <span class="comment">% t must be a row vector</span>
1510082 t = t(:)';
1520083
1530084 ErrorFlag = 0;
1540085
1550086 ExtraTimedelay = etime(clock,t0);
1560087 [AM, tout, DataTime, ErrorFlag] = <a href="readattribute.html" class="code" title="function [Data, tout, DataTime, ErrorFlag] = readattribute(tangolist, varargin)">readattribute</a>(TangoNames, field, t - ExtraTimedelay);
1570088 tout = tout + ExtraTimedelay;
1580089
1590090 <span class="comment">% Averaging</span>
1600091 <span class="keyword">if</span> NAvg &gt; 1
1610092     toutall = tout;
1620093     AMavg = AM;
1630094     <span class="keyword">for</span> k = 2:NAvg,       
1640095         <span class="comment">% Warning do no take into account time for getting the date</span>
1650096         tdelay = AvgPeriod-tout
1660097         [AM, tout, DataTime, ErrorFlag] = <a href="readattribute.html" class="code" title="function [Data, tout, DataTime, ErrorFlag] = readattribute(tangolist, varargin)">readattribute</a>(TangoNames, field, tdelay);
1670098         toutall = toutall + tout       
1680099         tout = tout - tdelay;
1690100         AMavg = AMavg + AM;
1700101     <span class="keyword">end</span>
1710102     AM = AMavg / NAvg;
1720103     tout = toutall;
1730104 <span class="keyword">end</span>
1740105
1750106 <span class="comment">% format to a column vector</span>
1760107 AM = AM(:);</pre></div>
177<hr><address>Generated on Mon 21-May-2007 15:29:18 by <strong><a href="http://www.artefact.tk/software/matlab/m2html/">m2html</a></strong> &copy; 2003</address>
178</body>
179</html>
Note: See TracBrowser for help on using the repository browser.