Forum Replies Created
-
AuthorPosts
-
isabellacog
ParticipantHi,
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?
isabellacog
ParticipantHello,
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 errorI 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!
isabellacog
ParticipantThanks, the Status channel worked correctly when I simulated the communication failure by disabling the VPN.
https://imgur.com/Nn6EK6r Status worksI 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 configurationCould 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.
isabellacog
ParticipantAlright, 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: Emptyisabellacog
ParticipantMy 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.
isabellacog
ParticipantI 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”?
February 27, 2026 at 11:42 am in reply to: Evento de perda de comunicação – Rapid SCADA 6.2.2 #17693isabellacog
ParticipantI 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.
isabellacog
Participant

Here are the channel settings.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.isabellacog
Participant



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?
February 26, 2026 at 12:29 pm in reply to: Evento de perda de comunicação – Rapid SCADA 6.2.2 #17677isabellacog
Participant
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?
February 26, 2026 at 11:41 am in reply to: Evento de perda de comunicação – Rapid SCADA 6.2.2 #17670isabellacog
ParticipantThis 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.
isabellacog
ParticipantHow would the formula look like? I tried this one, but it didn’t work: CnlStat == 0 ? 1 : 0.
isabellacog
ParticipantWhere can I find the ‘status’ service tag in the Communicator? I can’t find it.
-
This reply was modified 1 month, 1 week ago by
-
AuthorPosts