УкраїнськаEnglishmRussian
Вход/Новый
В теме много сообщений

[Alarms][Сигнализация]Есть ли способ формирования алармов без виджетов?


Автор Сообщение
Сообщение создано: 31. 08. 2012 [18:40]
s60ru
Антон Петров
Зарегистрирован(а) с: 10.05.2012
Сообщения: 141
"roman" wrote:


Не нужно было распаковывать!



это не моя блаж - я запусти в консоли "play -q /home/user/alarm.wav" и play сказал, что файл encoded mp3 который он не могет победить
я спорить не стал и просто сконвертировал файл в PCM


user@oscada:~$ play -q /home/user/sounds/alarm.wav
play FAIL formats: can't open input file `/home/user/sounds/alarm.wav': WAV file encoding `MP3' is not supported



[Сообщение редактировалось 1 раз(а), в последний раз 14.09.2012 в 13:55.]
Сообщение создано: 14. 09. 2012 [14:15]
s60ru
Антон Петров
Зарегистрирован(а) с: 10.05.2012
Сообщения: 141
В итоге решение пока такое:

1) в модуле Modbus заведен КОНТРОЛЛЕР, у него ПАРАМЕТРЫ с атрибутами (получаем данные от объектов автоматизации по модбасу)
2) в шаблонах создан шаблон (пока один, для одного типового агрегата, далее надо будет создать шаблон с набором атрибутов под каждый объект автоматизации)
3) в шаблоне созданы атрибуты по количеству сигналов одного ПАРАМЕТРА + столько же атрибутов-флагов (чтобы не делать запись в архив событий каждый цикл обработки шаблона) + несколько вспомогательных атрибутов
4) в программе (на основе поста Лог. уровень:Шаблон:IO:доступ к свойствам переменной ) получаю список атрибутов (отсеивая "ненужные" по префиксам и постфиксам) и в цикле, для каждого "годного" атрибута сравниваю его значение со значением соответствующего атрибута-флага, если они не равны, то делаю запись в журнал (соответственно фиксация "пришел"/"ушел")

5) в дальнейшем надо вынести обработку в отдельную функцию Java-калькулятора и в нее из шаблона передавать только данные, необходимые SYS.DAQ["LogicLev"][CtrlID][ParamID][Attribute]

в дебаг-моде (пока еще) это выглядит как-то так:
JAVASCRIPT
attr = "";	// атрибут-тег
attrName = "";	// имя атрибута-тега
attrF = "";	// атрибут-флаг
attrFName = "";	// имя атрибута-флага
 
 
CtrlID = this.nodePrev().name();
ParamID = this.cfg("SHIFR");	// получаем имя параметра
nodeList = this.nodeList();		// получаем список узлов параметра ParamID
 
for(var i=0; i < nodeList.length; i++)
  {
 
	attr = SYS.DAQ["LogicLev"][CtrlID][ParamID][nodeList[i]];	// укорачиваем способо доступа к атрибуту
	attrName = nodeList[i].substring(2); // имя тега = ID аттрибута = DI_fire
 
		if(attrName.charAt(0) == "D"  && attrName !="DESCR" && attrName.substring(-2) != "_f")
			{
				for(var j=0; j < nodeList.length; j++)
					{
						attrF = SYS.DAQ["LogicLev"][CtrlID][ParamID][nodeList[i]+"_f"];	// укорачиваем способ доступа к атрибуту-флагу
						if(attr.get() != attrF.get())
						{
							SYS.messDebug("Категория",attr.descr() + " = " + attr.get());
							attrF.set(attr.get());
							SYS.messDebug("attrF = " + attrF.get() + " attr = " + attr.get(),"флаг изменен");
						}
					}
			}
	}
Сообщение создано: 14. 09. 2012 [14:17]
s60ru
Антон Петров
Зарегистрирован(а) с: 10.05.2012
Сообщения: 141
на стороне визуализации остается только анимировать аларм и .... как-то заносить в журнал факт квитирования сигнализации оператором....
Сообщение создано: 17. 02. 2016 [17:58]
patak3000
hadi ram
Зарегистрирован(а) с: 24.12.2015
Сообщения: 7
Hello
I am writing the following command but did not alert sound
please help :roll:

alarm="10|Prm||0x04|file:/home/am/Music/alarm.ogg"
Сообщение создано: 17. 02. 2016 [19:56]
roman
Roman Savochenko
Moderator
Contributor
Developer
Зарегистрирован(а) с: 12.12.2007
Сообщения: 3747
"patak3000" wrote:

alarm="10|Prm||0x04|file:/home/am/Music/alarm.ogg"

Set as: alarm="10|Prm||4|file:/home/am/Music/alarm.ogg"
And update to r2333

Learn, learn and learn better than work, work and work.
Сообщение создано: 18. 02. 2016 [07:11]
patak3000
hadi ram
Зарегистрирован(а) с: 24.12.2015
Сообщения: 7
"roman" wrote:

"patak3000" wrote:

alarm="10|Prm||0x04|file:/home/am/Music/alarm.ogg"

Set as: alarm="10|Prm||4|file:/home/am/Music/alarm.ogg"
And update to r2333




thanks. but what is r2333 ?
Сообщение создано: 19. 02. 2016 [09:43]
roman
Roman Savochenko
Moderator
Contributor
Developer
Зарегистрирован(а) с: 12.12.2007
Сообщения: 3747
"patak3000" wrote:

thanks. but what is r2333 ?

http://oscada.org/websvn/listing.php?repname=OpenSCADA&path=%2Ftrunk%2FOpenSCADA%2F

Learn, learn and learn better than work, work and work.



3282