 | |
Предыдущие результаты
Спасибо большое ВСЕМ!
Дело было в следующем, время в контроллерах было нестабильным,
то и дело в минутах, секундах, иногда и в часах, что влияло на
формирование двухчасовок. Двухчасовки формировались во внутренних переменных контроллера, всего 12. И в итоге влияло на сводку. Т.е.,например 10-00, в ячейку 4 записывалась текущая двухчасовка с 8-00 по 10-00, далее время контроллера "перескакивала" на 9-57 и обратно в 10-00, после которой ячейка 4 обнулялась. ИЗ-ЗА КОРЯВОГО СКРИПТА, КОНТРОЛЛЕРЫ СИНХРОНИЗИРОВАСЬ СРАЗУ С 4-х АРМов.
Можно было бы конечно установить Logix5000 Clock Update Tool
Но в итоге переписал
IF myNodeName == "opr-1" THEN
IF HMI-PLC-YEAR <> $Year THEN
HMI-PLC-YEAR = $Year ;
HMI-PLC-SYNCHRONIZE-INTERN = 1;
ENDIF;
IF HMI-PLC-MONTH <> $Month THEN
HMI-PLC-MONTH = $Month ;
HMI-PLC-SYNCHRONIZE-INTERN = 1;
ENDIF;
IF HMI-PLC-DATE<> $Day THEN
HMI-PLC-DATE = $Day ;
HMI-PLC-SYNCHRONIZE-INTERN = 1;
ENDIF;
IF HMI-PLC-HOUR <> $Hour THEN
HMI-PLC-HOUR = $Hour ;
HMI-PLC-SYNCHRONIZE-INTERN = 1;
ENDIF;
IF HMI-PLC-MINUTE <> $Minute THEN
HMI-PLC-MINUTE = $Minute ;
HMI-PLC-SYNCHRONIZE-INTERN = 1;
ENDIF;
IF Abs(HMI-PLC-SECOND - $Second) > 10 THEN
HMI-PLC-SECOND = $Second;
HMI-PLC-SYNCHRONIZE-INTERN = 1;
ENDIF;
IF HMI-PLC-SYNCHRONIZE-INTERN == 1 THEN
HMI-PLC-SYNCHRONIZE = 1;
HMI-PLC-SYNCHRONIZE-INTERN = 0;
ENDIF;
ENDIF;
И она работает, пробывал менять время в 3-х АРМах время в контроллере не меняется, поменял в oper-1 время изменилось.
Время в системе АСУТП должна быть единой, т.е. синхронизироваться. В моем случае данные с ControLogix 5561 через FSGateway в Intouch (это на сервере историй, скрипт на АРМ оператора) далее в INSQL Server. Есть программа которая собственно и берет данные с INSQL Server и формирует сводку
|
Что-то засомневался, что они там вообще есть и специально проверил, для чего создал новый проект и в нём UserForm.
Нет, всё правильно: при создании UserForm нет ни этих кнопок, ни соответствующих им Properties:
[img:7bc3c8c8f7]http://img38.imageshack.us/img38/6623/image2fqd.jpg[/img:7bc3c8c8f7]
Более того, люди специально, чтобы создать такую кнопку, пишут [url=http://www.vbaexpress.com/kb/getarticle.php?kb_id=165]специальные скрипты[/url].
|
Опыт показывет, что привязка к usb-2-ethernet-адаптерам возможна:
[img:82cdf5fb25]http://img269.imageshack.us/img269/4062/usb2eth.jpg[/img:82cdf5fb25]
Важно, чтобы устройство имело свой Mac-адрес, из которго вычисляется Host ID.
|
Подскажите плиз, как в UserForm VBA проекта отключить (убрать) кнопки управления "Minimaze", "Maximize". Что то немогу отыскать этих свойств.
|
а как на счет привязки к usb-ethernet или usb-wifi адаптерам? не будет ли проблем?
сейчас нет ни ПО, ни железа, отсюда и вопросы, опробовать пока сам ничего не могу.
|
[quote:315747636e="oldDad"]Вы спрашиваете: "Что может быть?", я отвечаю: "Возможно, привод неисправен" :)
Причину можно поискать приблизительно в главе 12 "Troubleshooting" документа [url=http://literature.rockwellautomation.com/idc/groups/literature/documents/um/1336e-um001_-en-p.pdf]1336 IMPACT Adjustable Frequency AC Drive. User Manual[/url].[/quote:315747636e]
читал. нет ничего похожего. были бы fautls или alarms, было бы проще.
|
Вы спрашиваете: "Что может быть?", я отвечаю: "Возможно, привод неисправен" :)
Причину можно поискать приблизительно в главе 12 "Troubleshooting" документа [url=http://literature.rockwellautomation.com/idc/groups/literature/documents/um/1336e-um001_-en-p.pdf]1336 IMPACT Adjustable Frequency AC Drive. User Manual[/url].
|
Allen-Bradley 1336E-CX300-ANENHA1. Мотор не подключен. Нет Faults или Allerts. Нажимаю СТАРТ. Горит постоянно вращение вперед и моргает вращение назад. Обороты прыгают: +200; -10; +350; -100... итп. Выходное напряжение прыгает: 200; 50, 420; 5; 320... итп. Что может быть?
|
[quote:6af5cfce99="dv_"][quote:6af5cfce99="Ayrat"]Вообще проект на 2 аппарата канадский. [/quote:6af5cfce99]
Хоть одним глазком бы глянуть - канадских еще не видел.[/quote:6af5cfce99]
Но потенциальную угрозу усмотрел:
[quote:6af5cfce99="Ayrat"]IF [color=red:6af5cfce99]HMI-PLC-HOUR[/color:6af5cfce99] <> [color=red:6af5cfce99]$Hour[/color:6af5cfce99] THEN
[color=red:6af5cfce99]HMI-PLC-HOUR[/color:6af5cfce99] = [color=red:6af5cfce99]$Hour [/color:6af5cfce99];
HMI-PLC-SYNCHRONIZE-INTERN = 1;
ENDIF;[/quote:6af5cfce99]
Читаем и пишем в одну переменную :(
Ох, будут проблемы даже с применением [b:6af5cfce99]Logix5000 Clock Update Tool[/b:6af5cfce99] - в контроллере придется удалять "зловредный код".
|
[quote:489efc5320="Ayrat"]....И если HMI-PLC-SYNCHRONIZE = 1, то присваивается например $Minute к внутреннему тегу контроллера Program:ProcessorStatus.HMI_DateTime[4], но дело в том, что там 2 АРМа и 2 контроллера на разных шасси и контроллер синхронизируется то с одним АРМом (opr-1) то со другим АРМом (opr-2), и в итоге получается нестабильность времени. Да можно было бы поставить RSLogix5000 Clock Update, но пока думаю только про скрипт этот myNodeName=="opr-1", он походу не работает. [/quote:489efc5320]
Сделай синхронизацию времени между АРМами (настройка служб в Windows) и пусть настраивают оба (на одно и тоже :D ).
[quote:489efc5320="Ayrat"]Вообще проект на 2 аппарата канадский. [/quote:489efc5320]
Хоть одним глазком бы глянуть - канадских еще не видел.
|
Предыдущие результаты
Ещё результаты |
|
| |
|