isabellacog

Forum Replies Created

Viewing 14 posts - 1 through 14 (of 14 total)
  • Author
    Posts
  • in reply to: Evento de perda de comunicação – Rapid SCADA 6.2.2 #17757
    isabellacog
    Participant

    Hi,

    I managed to get it working by importing the script — thanks for the guidance!

    Now I have a question about the Beep functionality. I configured the channel events by enabling: 0: Event enabled, 1: Event beep, and 3: Channel data has changed. However, the beep only sounds once.

    Is there a way to make it beep repeatedly until an operator acknowledges the alarm? Something like a continuous or repeating beep until acknowledgment would be ideal for our use case.

    Has anyone implemented something like this?

    in reply to: Evento de perda de comunicação – Rapid SCADA 6.2.2 #17724
    isabellacog
    Participant

    Hello,

    When I created the script, my server stopped working. The errors that appear are the ones shown in the image.

    https://imgur.com/XqFxH9t script
    https://imgur.com/ohZxCGY error

    I tested both the TON script and also a very simple formula using Val(), and the same problem occurred.

    I am able to save the script in Administrator, but when I deploy the configuration, the server stops running and those errors appear. I didn’t even create a channel using the script yet — the problem happens just by having the script in the Scripts table.

    If I delete the script and deploy again, the server starts running normally.

    So it seems that any script added to the Scripts table causes the server to stop after deployment, even a very simple one.

    Do you know what could cause this behavior?

    Also, regarding the Auto Control Module solution: how would that work in this case?
    Do I need to install or download this module, or is it included by default?

    I would still like to understand and fix the script approach, because I want to learn why it is not working in my project.

    Thank you!

    • This reply was modified 1 month, 1 week ago by Mikhail.
    • This reply was modified 1 month, 1 week ago by Mikhail.
    in reply to: Evento de perda de comunicação – Rapid SCADA 6.2.2 #17710
    isabellacog
    Participant

    Thanks, the Status channel worked correctly when I simulated the communication failure by disabling the VPN.
    https://imgur.com/Nn6EK6r Status works

    I really liked the timer idea. However, I was not able to implement the script correctly. It is showing an error when I try to save it.
    https://imgur.com/dCw3PT1 error 1
    https://imgur.com/o4mia9r error 2
    https://imgur.com/9b7maP8 channel configuration

    Could you please help me identify what I did wrong?

    Below is the code I added to the Script Table:
    `// IEC timers and others
    public static long Ticks()
    {
    DateTime now = DateTime.Now;
    long time = now.Ticks/10000;
    return time;
    }

    protected class UtilTimer
    {
    public long et;
    public bool flag;
    public bool q;
    }

    protected Dictionary<string, UtilTimer> TonTimer = new Dictionary<string, UtilTimer>();

    // Timer with a delay of turning on TON
    public double TON(double IN, double PT, double Q, string str = “”, int idx = 0)
    {
    var ut = new UtilTimer() {et = 0L, flag = false, q = false};
    string keys = $”{CnlNum}_{idx}”; // The key is the channel number plus the timer index, zero by default.

    long ET = 0L;
    long _pt = Convert.ToInt64(PT);
    bool q = Q > 0;
    bool _in = IN > 0;
    string s = str.ToLower();

    if (s == “s” || s == “sec”) _pt = Convert.ToInt64(PT) * 1000;
    if (s == “m” || s == “min”) _pt = Convert.ToInt64(PT) * 60000;
    if (s == “h” || s == “hour”) _pt = Convert.ToInt64(PT) * 3600000;

    if (!TonTimer.ContainsKey(keys))
    {
    TonTimer.Add(keys, ut);
    }

    if (!_in)
    {
    TonTimer[keys].q = false;
    TonTimer[keys].flag = false;
    TonTimer[keys].et = 0L;
    }
    else
    {
    if (!TonTimer[keys].flag)
    {
    TonTimer[keys].flag = true;
    TonTimer[keys].et = Ticks();
    }
    else
    {
    if (!q) ET = Ticks() – TonTimer[keys].et;
    }
    if (ET >= _pt) q = true;
    TonTimer[keys].q = q;
    }
    q = TonTimer[keys].q;
    return Convert.ToDouble(q);
    }

    // Returns the channel value relative to the current channel.
    public double ValRel(int offset)
    {
    return Val(CnlNum + offset);
    }

    • This reply was modified 1 month, 1 week ago by Mikhail.
    in reply to: Evento de perda de comunicação – Rapid SCADA 6.2.2 #17708
    isabellacog
    Participant

    Alright, I will temporarily disable our VPN to interrupt communication and simulate a real communication failure with the device.
    Please confirm if this is correct.

    For the configuration:

    Data Type: Double (or should it be Integer?)
    Channel Type: Input (or should it be Calculated?)
    Tag Code: Status
    Formula enabled: No
    Input formula: Empty

    in reply to: Evento de perda de comunicação – Rapid SCADA 6.2.2 #17704
    isabellacog
    Participant

    My goal is to generate an alarm when a device stops sending data.

    We are an operation center, so when a device loses communication, we must be notified immediately.

    I am looking for the best way to implement this in Rapid SCADA.

    The main objective is to reliably detect communication loss while avoiding false alarms caused by short-term communication interruptions.

    Based on your experience, which solution would you consider the most reliable? I would appreciate it if you could provide a step-by-step guide on how to implement it.

    in reply to: Evento de perda de comunicação – Rapid SCADA 6.2.2 #17703
    isabellacog
    Participant

    I disabled the device in the line configuration to simulate a communication error or a device fault. However, in this case, that attempt didn’t work to test the variable “status”?

    in reply to: Evento de perda de comunicação – Rapid SCADA 6.2.2 #17693
    isabellacog
    Participant

    I disabled the device to check if the status variable would be able to identify that the device is not communicating. In other words, even when the device is not sending data, I would like a variable that can indicate this. Currently, I am using another SCADA system that checks the variable’s timestamp, and if it hasn’t changed in over 5 minutes, I receive a communication loss alarm. However, Rapid SCADA is new to me, and I am trying to set up the same alarms that I would have in my previous system, but I am still trying to understand how everything works.

    in reply to: Evento de perda de comunicação – Rapid SCADA 6.2.2 #17685
    isabellacog
    Participant

    channel settingstable view
    Here are the channel settings.

    in reply to: Evento de perda de comunicação – Rapid SCADA 6.2.2 #17682
    isabellacog
    Participant

    ble view” />
    I followed the steps, but it seems that the value of channel 21 stopped updating along with the other values when the device stopped communicating. I removed the ‘Normal-Error’ format just to observe which value would appear.

    in reply to: Evento de perda de comunicação – Rapid SCADA 6.2.2 #17680
    isabellacog
    Participant

    channel configuration
    status device
    value statustable view

    The value of the channel status is not changing, and I can see in Device 1 that my device is changing in reality. Did I make any configuration mistake?

    in reply to: Evento de perda de comunicação – Rapid SCADA 6.2.2 #17677
    isabellacog
    Participant

    Channel
    Table

    I did what you suggested. I created a new channel of the calculated type and set the tag code field to status. Now it is returning the value 1, but the device is off, so it should be returning 0, correct? Can you verify if I did something wrong?

    in reply to: Evento de perda de comunicação – Rapid SCADA 6.2.2 #17670
    isabellacog
    Participant

    This is a supervisory system for an operations center. So, when my device stops communicating, I need an alarm for that. If the formula is strange or incorrect, please show me the correct one. Otherwise, I would appreciate your help in clarifying it.

    in reply to: Evento de perda de comunicação – Rapid SCADA 6.2.2 #17668
    isabellacog
    Participant

    How would the formula look like? I tried this one, but it didn’t work: CnlStat == 0 ? 1 : 0.

    in reply to: Evento de perda de comunicação – Rapid SCADA 6.2.2 #17666
    isabellacog
    Participant

    Where can I find the ‘status’ service tag in the Communicator? I can’t find it.

Viewing 14 posts - 1 through 14 (of 14 total)