Jump to content

Teddy

Administrators
  • Posts

    95
  • Joined

  • Last visited

  • Days Won

    24

Everything posted by Teddy

  1. It might be worth trying out Seeq’s OData export. Excel supports an OData feed so you can send data to Excel from Seeq with OData. I believe the live updating OData feed may require additional licensing. Here is a link to the OData documentation. https://support.seeq.com/space/KB/112868662/OData Export
  2. Writing it like the following is only supported for scalars: max($a,$b,$c,$d) If you want to use signals you will need to write it this. $signalA.max($signalB).max($signalC)....
  3. It looks like Graphviz can only be installed through an OS apt package which is not supported in Seeq Data Lab. I am guessing what is on PyPI is just a python wrapper. You can try installing Graphviz on your local machine where you have access to make OS-level changes. Since you have a data lab license the SPy library will work for you on your local machine after you run the SPy.login command. You can run SPy from any python interpreter you would like if you are running it locally. There are a few things the local version can’t do that the data lab server can but for the most part, you won’t notice a difference.
  4. Siang, Looks like graphviz is available on pypi. I would try the following to install it. pip install graphviz You should not need the sudo command. Regards, Teddy
  5. Since the reported vulnerability in log4j we have responded to several customer tickets and emails inquiring about the presence of log4j in Seeq. No recent version of Seeq (back to and including R50) either includes or uses log4j, therefore the issue does not apply to Seeq customers using recent versions of the software (your version of Seeq can be found in the lower left corner of the Seeq user interface).
  6. Yes, an admin can delete the Odata exports from the export tab in the admin panel. See screenshot below for details.
  7. If the above doesn't get you what you are looking for can you attach a screenshot with a drawing of your goal? I didn't fully understand what you were doing with the sum() aggregate at the end so the periods formula I supplied might not help with that part.
  8. I think you are looking for this. periods(3min,3min)
  9. Nate, At this time there is no way for you to change the python version on Seeq’s learn server. Your best bet would be to run your scripts locally and use SPy.login to connect to the learn server. The other option would be to convert your scripts to run python 3.8. Regards, Teddy
  10. The rows in your table are ordered by your details pane by default. You should be able to order the details pane however you want by assigning lane numbers. Changing the lane numbers of your metrics and ordering your details pane by the lane numbers should allow you to achieve your desired row order. Hope this helps, Teddy
  11. Sam, What version of Seeq are you running? The past() function is not avaible until version R51.0.0+. Regards, Teddy
  12. Adam, We had some developers look at the API calls and it looks like you get a different unit depending on the endpoint you use. We are logging a bug for this. In the mean time you can overwrite the units in Seeq using the setUnits() function in formula. Thanks for reporting this. Teddy
  13. Recently we have gotten several requests to clear an item's cache in Seeq with Seeq Data Lab (SDL). The following python script creates a function that will clear an items cache when an item's ID is given as an input. Note: this script assumes you are using SDL. # imports from seeq import sdk # Setup Items API items_api = sdk.ItemsApi(spy._login.client) # Cache clearing function def ItemCacheClearingTool(itemID): try: clearCache = items_api.clear_cache(id=itemID) except: print('Error clearing cache for item ' + itemID) Screenshot of the Jupyter Notebook used to create the function: This function can be used in for loops or applied to columns in a dataframe to clear multiple items' caches at a time.
  14. Isaac, In your case you might be able to set the max interpolation to 1 second on your input signal. If that does not work, you can use a certain signal, such as Area A Temperature to create, a similar result to the past() operator. To create a similar condition to the past() condition you can use the following formula. $AreaATemp.isvalid() Once you have that you can use it the same way the past() function was used above. Teddy
  15. There are a couple options you can take for this. The first is to completely exclude the incomplete day and the second is to exclude the data in the signal until the day is complete. Exclude the Incomplete Day This is relatively easy with the past() function in formula. This function is relatively new so older versions of Seeq may not have it. On your condition that you are aggregating over you can remove all capsules past now and any incomplete ones with the following formula. (Example using daily condition) $Daily.inside(past()) Metric created with a normal daily condition: Metric created with the clipped daily condition: Exclude the Data in the Signal Until the Day is Complete This requires you to make the same clipped condition above and then apply it directly to the signal to limit the data in the signal until the last complete day. $signal.within($ClippedCondition) Results with the Clipped Signal and the Normal Signal:
  16. Ben, You can probably use a moving standard deviation to find that condition. Below is an example formula. Note: you can use signal from condition too, but you may want to create a condition with the periods function so you can have better control over the moving range: $signal.aggregate(stdDev(), periods(20min,5min), middleKey()) Hope this helps. Teddy
  17. Alex, You will need to create a new one and get a new link for changes like that. Regards, Teddy
  18. Sivaji, Only a Seeq admin can change this setting. If you are an admin it can be changed in the configuration tab in the admin panel. Regards, Teddy
  19. Hello Tom, We do have script/plugin that will do this. However, it requires Seeq Data Lab right now and a fairly new version of Seeq. There is a feature request for this that I can link you to if you want. Regards, Teddy
  20. Felipe, That would be my recommendation but it is always good to double check with your AE. Regards, Teddy
  21. Felipe, What version of Seeq are you on? I believe this error was address in the 00.49.00 release. Regards, Teddy
  22. Brent, I would avoid using tables and transforms for this calculation. I would look towards the peakFrequency() and the rmspower() functions. They are used with the aggregate function, so they are applied to a condition. To find the peak frequency the following syntax can be used in the formula tool. $condition = periods(1h, 30min) $sampleRate = (1min) //This is the spacing for used in the sampling for the FFT $waveSignal.aggregate( fft($sampleRate).peakFrequency('min'),$condition,startKey()) Here is a screen shot of the formula tool window. For the magnitude I suggest looking at the rmsPower() function in formula. If you know the band range where you expect the peak to occur, you can use that band range and be done. However, if there is multiple places that the peak could occur you can use multiple rmsPower() functions and add them together or take the maximum of them. If you are planning on taking the maximum you will want to make sure that you are using the same size band for each rmsPower() calculation so that the comparisons are equivalent. The example syntax below can be used to fine the maximum rms power of a set of peaks. $condition = periods(1h, 30min) $sampleRate = (1min) $peak1=$waveSignal.aggregate( fft($sampleRate).rmsPower(4.5min,5.5min),$condition,startKey()).toStep() $peak2=$waveSignal.aggregate( fft($sampleRate).rmsPower(9.5min,10.5min),$condition,startKey()).toStep() $peak3=$waveSignal.aggregate( fft($sampleRate).rmsPower(24.5min,25.5min),$condition,startKey()).toStep() // you will need to pick ranges and a sample rate that makes sense for your process $peak1.max($peak2).max($peak3).toStep() Below is a screen shot of the formula setup. Note: if you want to add the peaks instead of finding the max. You would just add the peaks instead of using the max function. Final screenshot. Hope this helps. Teddy
×
×
  • Create New...