grhsc

Forum Replies Created

Viewing 15 posts - 1 through 15 (of 69 total)
  • Author
    Posts
  • in reply to: ModDiffCalculator #17611
    grhsc
    Participant

    Sorry to reopen this topic, but power outages and network errors are frequent problems encountered during data collection from electricity and water meters.

    I have one question; example if there is no data/data lost (channel 101) before 9:00:00 PM but resume back before 9:30:00 PM, what happen to the ModDiffCalculator module to calculate (channel 102) at 9:30:00 PM?

    this is your reply
    To calculate the difference, the both data points must be defined. Otherwise, the difference is not calculated. In that case, you can set data manually, and then send a command to recalculate diffs for the period of time.

    I’d like to know the operational details of this step; could you please help me? – you can set data manually, and then send a command to recalculate diffs for the period of time

    grhsc
    Participant

    Thank you for your generous sharing and help, this topic has been perfectly resolved.

    grhsc
    Participant

    This would be very helpful.

    I suspect that by appropriately modifying the 12th menu function of ScadaTestClient, a similar function should be achievable. Thanks for sharing, could you provide a link please?

    grhsc
    Participant

    to JurasskPark,
    Sorry, sir. I didn’t answer your question promptly.

    because it’s unrelated to the main issue. My module can only backfill collection tags; it has no user interface, it’s just a background command. When it starts, it searches for a specified time period, retrieves data from the source database, and writes it to SCADA.

    • This reply was modified 1 month, 1 week ago by grhsc.
    grhsc
    Participant

    CsvImport.exe doesn’t truly meet my needs because it’s a manual process.

    Using it, I first need to export the data sources I need for the calculations using Csvexport.exe, such as tagA, tagB, etc. (This is inconvenient; it’s not just two tags in the example. Imagine I have 30 calculated tags, which need to come from 80 collection tags—meaning I need to export 80 tags that are non-contiguous, almost impossible to input via the command line.)

    Then I need to calculate their sum (first, I need to categorize these 80 exported tags according to the formula definition, then calculate them based on the formula, and in reality, the formula isn’t just a single type like A+B).

    As you can see from the description, this is very difficult to do manually.

    Therefore, I think the 12 menus in ScadaTestClient are closest to what I need:

    – It only requires inputting a time (currently it can only input one moment; ideally, it should allow inputting start and end times).

    – Inputting a channel number (currently it can only input one; ideally, it should allow batch input, preferably from a configuration file, not the command line).

    – Inputting a channel value. (It can accept any input value because it doesn’t use the input value but rather its defined formula. This is its greatest value; it automatically applies the defined formula without requiring manual acquisition of source data and calculations.)

    Enter channel status (default is 1)
    Enter archive mask (empty by default)

    I know this feature isn’t ready and may not be in the development roadmap. I’m just clarifying the requirement and why it’s needed.

    Thanks for your continued help. Have a nice weekend!

    grhsc
    Participant

    My description may not be accurate, I apologize.

    What I’m expecting is the “write historical data” function, which should support defining the input start time, input end time, and batch input ID number, instead of only allowing input of a single data for a single time.

    grhsc
    Participant

    Dear Mikhail
    I proceeded to the next step:

    Enter timestamp (UTC): 5:15:00
    Enter channel number: 12900
    Enter channel value: 220
    Enter channel status: 1
    Enter archive mask (empty by default):

    Writing historical data completed successfully

    Finally, I saw that the calculated tags 12900 were indeed written. This is almost exactly what I expected.

    The next question is that the input 220 in the “Enter channel value” step is useless. It actually calculates according to its previously defined formula A+B and gets the correct value instead of 220. So I’m wondering if this step can be omitted to avoid misunderstanding.

    The second question is how to input ranges, for example:
    Input start time, input end time, batch input ID number

    Because filling in the backfills one by one is very inconvenient.

    Perhaps the current ScadaTestClient doesn’t have this function. If it’s not on your development roadmap, please ignore it.

    But if possible, I hope that batch calculation & backfill functionality can be supported.

    grhsc
    Participant

    I hadn’t used ScadaTestClient.exe before, so I downloaded and ran it before continuing this topic. It turns out it’s a menu, with option 12 being “write historical data.”

    This is the tag situation:

    I collected data,Tags 100-400 are collected tags, type input.
    Tags 401-450 are calculated tags.

    Here’s an example:

    Channel Number 401, its input formula is Val(103) + Val(216).

    When I discovered at 11:00, the data for Channel Numbers 100-400 between 9:00 and 10:00 was missing. I then started the data re-transmission module (developed by a third party, following the Rapid SCADA specification, and refilling the data via the ScadaServer interface).

    After the data re-transmission was complete, the data for Channels 100-400 between 9:00 and 10:00 was normal, but the Channel (calculated tags) values ​​for Channels 401-405 were empty.

    for example 103=42.1 216 = 22.2 but 401 = null

    How should I refill the data for Channels 401-405 between 9:00 and 10:00?

    Is it enough to run ScadaTestClient and select option 12 – write historical data?
    How does it know that I need to recalculate the data range?

    As I understand it, recalculation typically requires two parameters: the calculation period (from 9 AM to 10 AM) and the range of channel numbers to be calculated (e.g., 401-405 in the example).

    • This reply was modified 1 month, 1 week ago by grhsc.
    grhsc
    Participant

    Dear Mikhail

    I feel like you’re a magician, you always offer a possibility when it seems impossible – “You can try this way.” That’s why I started this topic; I want to try it, even though I know it’s not a regular function, perhaps you could offer some suggestions. Thank you very much for your reply.

    Please allow me to clarify further:

    Yes, as you understand, the data is written to the InfluxDB database via the ScadaServer module.

    Because it’s data backfilling, the data source does contain timestamps, and the data is written to InfluxDB according to these timestamps during reading.

    For example, if I find that the data from 9:00 to 10:00 is incomplete at 11:00 AM today, I will enable data backfilling, allowing the data from 9:00 to 10:00 to be read again from the data source and written to the ScadaServer module.

    The next question is, how do I restart the calculation module to calculate the calculated tags from 9:00 to 10:00?

    However, I don’t quite understand your reply. Could you provide further explanation when you have time?

    For example, should I execute ScadaTestClient in the command prompt (cmd)? what is the correct syntax for calculating calculated tags (id 1009-1059) with time of 9:00-10:00?

    Since I have never used ScadaTestClient before, I apologize for taking up your time.

    grhsc
    Participant

    Another developer, following the Rapid SCADA specification, developed a driver that connects to a database with data recovery capabilities.

    Therefore, real-time data can be backfilled, but this is also achieved through the SCADA data interface, rather than directly reading InfluxDB. Consequently, it cannot backfill calculated tags.

    grhsc
    Participant

    Thank you for your suggestion. Yes, I also believe the computation is real-time. I raised this question hoping the developers could offer some suggestions, such as how to extract my source data from InfluxDB and in what format to write the computed tags ​​back to InfluxDB.

    in reply to: Table format for web view #16397
    grhsc
    Participant

    I also have a question with the format change.
    The current default table has time in the first row and parameters in the first column. Can it be transposed, that is, the first row is the parameter and the first column is the time?

    The reason for this question is that I only have 10 parameters, but I need one minute of data (all day). If I use the current default table format, there will be 1440 columns and 10 rows. This table is weird and not easy to read.

    thank you

    in reply to: reference lines of Chart Pro #14981
    grhsc
    Participant

    by the way, I would like to provide suggestions on this topic.
    The current method of creating two channels is a compromise. It requires saving these two meaningless channel values ​​in the database. If many variables need max/min and have different ranges, this should not be a good method.

    Since high and low are already defined in limit, can you add a setting in the parameter file of chartPro to display/enable high and low limit values? Would this be a good idea?

    https://drive.google.com/file/d/1LvIvNQ8oYfkXLEKgl1ETJqWX0aqrcK6N/view?usp=drive_link

    in reply to: reference lines of Chart Pro #14980
    grhsc
    Participant

    I can create 2 channels of the Calculated/Output type in the Channels table, but I don’t know how to set their values ​​to constants (such as voltage max = 400V and min = 320V

    https://drive.google.com/file/d/14FRlbuHy8oGxh-WBX2e3ogpGmoZC3wHA/view?usp=drive_link

    Also, I can’t specify numbers in the Limits table, I can only specify what I set in the limits tab

    https://drive.google.com/file/d/1xe5QxEZ95yp3YXbzdZkE2pBj9TzH146L/view?usp=drive_link

    I think I must have made a mistake somewhere.

    in reply to: reference lines of Chart Pro #14954
    grhsc
    Participant

    I don’t quite understand what you mean “ create 2 extra channels”

    Do I need to create it in the channels menu or in limits?
    I remember that the contents of channels are all from the real communicator, and I don’t quite know how to create extra channels

    Can you give me more guidance please?

    • This reply was modified 1 year, 7 months ago by grhsc.
Viewing 15 posts - 1 through 15 (of 69 total)