Регистрация | Последние сообщения | Персональный список | Поиск | Настройка конференции | Личные данные | Правила конференции | Список участников | Top 64 | Статистика раздела | faq | Что нового v.2.3 | Чат
Skunk Forum - Техника, Наука, Общество » АСУТП »
кто работает с iFIX... (страница 5)

Версия для печати (настроить)
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17

Новая тема | Написать ответ

Подписаться

Автор Тема:   кто работает с iFIX...
SFJake
Junior Member

Сообщений: 1
Откуда: Казахстан, Алматы
Регистрация: Октябрь 2007

написано 15 Октября 2007 08:19ИнфоПравкаОтветитьIP

Здравствуйте!
Подскажите пожалуйста кто знает, как правильно настроить систему iFIX 2.6 для сбора журналов (History Points 35 day и History Points 60 min) с контроллера ROC 407 (FloBoss).
Все что нам нужно – это получить данные непосредственно с журналов контроллера, в виде файлов или в виде записей в базе данных – не важно.
Уже месяц мучаюсь. Ничего не работает.
Система:
iFIX: iFIX 2.6 Build (4790) русская локализация (Режим ДЕМО)
ROC driver: ROC – Fisher ROC v.6.31
Historian: Proficy Historian 3.1 (English)

HelpFix
Junior Member

Сообщений: 22
Регистрация: Февраль 2007

написано 15 Октября 2007 10:58ИнфоПравкаОтветитьIP

Попробуйте воспользоваться Support-ом GE...

ссылка
в строке запроса можно набрать ROC.

boykir
Junior Member

Сообщений: 5
Откуда: Россия
Регистрация: Июнь 2007

написано 15 Октября 2007 16:52ИнфоПравкаОтветитьIP

Всем здравствуйте.
Вопрос: Можете подсказать в Expression Builder при выборе тега предлагает еще выбрать в поле тэга (Field Tag) определенные параметры этого тэга(например F_CV, A_PREV, A_NAREA и т.д.). Так вот значение некоторых параметров мне не ясны. Можете подсказать, где про них информацию посмотреть, чтоб понять где тот или иной параметр использовать?

HelpFix
Junior Member

Сообщений: 23
Регистрация: Февраль 2007

написано 15 Октября 2007 21:37ИнфоПравкаОтветитьIP

boykir

1. С:\Dynamics\NLS\DatabaseManager.hlp
Запуск iFix\в системном Дереве\Справка & Информация\Справка по администратору базы данных
Запуск iFix\Администратор базы данных iFix\меню Справка\Разделы справки\Справочник по полям блоков

2. C:\Dynamics\NLS\dynamics.chm
Запуск iFix\в системном Дереве\Справка & Информация\Электронные книги
Building a SCADA System \ 4. Working with Database Blocks \ Block Types and Descriptions
Building a SCADA System \ 4. Working with Database Blocks \ Block Fields

3. Можно посмотреть значения полей "вживую"
Запуск iFix\Администратор базы данных iFix\меню Вид\Свойства\вкладка Столбец - добавляете необходимые поля для просмотра

4. Небольшой пример ...
ссылка

boykir
Junior Member

Сообщений: 6
Откуда: Россия
Регистрация: Июнь 2007

написано 16 Октября 2007 09:01ИнфоПравкаОтветитьIP

Огромное тебе-HelpFix ЧЕЛОВЕЧЕСКОЕ спасибо.

dyakov72
Junior Member

Сообщений: 18
Откуда: Ульяновск
Регистрация: Апрель 2006

написано 16 Октября 2007 15:16ИнфоПравкаОтветитьIP

Добрый день!
Хотелось бы затронуть следующую тему. Кто нибудь использует у себя на предприятии программный пакет GE Fanuc, в частности, Proficy Plant Application. Хотелось бы знать мнение на этот счет.
Всем спасибо.

XAMUS
unregistered
написано 16 Октября 2007 16:07  ПравкаОтветитьIP

Вопрос: Есть желание сделать общую процедуру, которая лежала бы на экране (или была глобальной), и ее входные данные определялись объектом, с которого она вызывается. То есть аргумент в процедуре брался бы по принципу (например) "Используем свойство Source даталинка, который меня вызвал".
Намерение простое: не клонировать однотипный код для многих однотипных объектов.
Если это поможет, в Cimplicity есть что-то подобное под названием EventTriggeredObject.
Понятное дело интересует реализация в VBA. Заранее благодарен.

S.Andrei
Junior Member

Сообщений: 9
Откуда: Россия
Регистрация: Февраль 2007

написано 17 Октября 2007 12:31ИнфоПравкаОтветитьIP

to HelpFix

Суть вопроса в следующем:
Требуется передавать переменную(по Modbus), изменение значения которой происходит в определенном диапазоне, к примеру: 0-30; Для передачи аналоговых переменных по Modbus используются 2 байта(если не прав - поправьте), что, сугубо имхо, достаточно "жирно", в данном случае ) И, собственно, сам вопрос:
Возможно ли "настроить" обращение по-байтам, так же, как это можно реализовать для дискретных тэгов? Что-нибудь, по типу: modbus:4033:0 и modbus:4033:8, но для AI/AO? И, если можно, то как?

HelpFix
Junior Member

Сообщений: 24
Регистрация: Февраль 2007

написано 17 Октября 2007 15:29ИнфоПравкаОтветитьIP

dyakov72
посмотрите, может найдете что-нибудь из successstory...

ссылка
ссылка
ссылка

Добавление от 18 Октября 2007 00:30:

XAMUS

можете попробовать следующий вариант...

Используйте событие рисунка SelectionChanged, это динамическая коллекция объектов, которые вы выбираете
на мнемосхеме удерживая клавишу Ctrl (объекты должны быть с включенным свойством IsSelectable).

1. Установите для объектов на мнемосхеме, для которых хотите применять общую процедуру, свойство IsSelectable=True ("вкл.Выбор")
2. Заведите объект Text1 для вывода информации (количество линий сделайте побольше)
3. Добавьте код для текущего рисунка...

==================================================================
Private Sub CFixPicture_SelectionChanged()
Dim obj As Object
Dim m As Integer
Dim StrObjName As String
Dim StrReport As String


' изменили коллекцию выделенных объектов
m = Me.ContainedSelections.Count

StrReport = StrReport & Str(m) & "-объектов выбрано" & Chr(13)

For Each obj In Me.ContainedSelections

StrObjName = obj.Name
StrReport = StrReport & StrObjName & Chr(13)

Next

Text1.Caption = StrReport

' вызов общей для всех объектов процедуры
' GlobalProc ()

End Sub
==================================================================


Но не забывайте про "дедовский способ" писать на каждый объект свой скрипт обработки.
Также можно сделать механизм в среде конфигурирования, который будет автоматически изменять параметры скрипта для каждого объекта в зависимости от источника данных.

XAMUS
unregistered
написано 18 Октября 2007 07:09  ПравкаОтветитьIP

to HelpFix:
Благодарю за отзыв. Я почесал тыкву и придумал как сделать это. Если интересно, опишу смысл:
Даталинки упакованы в группы ( главное чтоб группы были одинаковыми, что достигается копированием-дублированием и пр. ))) По клику у каждой группы скриптом изменяется свойство Selected=true (по-умолчанию оно равно false), а затем вызывается общая процедура на экране, которая через цикл for each... проверяет у каких групп свойство Selected=true. У кого найдет - обращается к вложенным объектам найденной группы и использует ее свойства.
Тут возникла проблема: По условиям организации интерфейса клик делается правой кнопкой. У iFIX 4 есть такая новая фича как контекстное меню (статус тэга и быстрый тренд) по правому клику. Как ее отключить (Не нужны мне эти Статусы и тренды)? Я конечно обошел эту проблему (вместо Selected использовал свойство GradientAngle. Градиента на группе нет, следовательно и угол его можно без проблем использовать под свои нужды). Тем не менее интересно можно ли отключить вызов контекстного меню?

HelpFix
Junior Member

Сообщений: 25
Регистрация: Февраль 2007

написано 19 Октября 2007 20:26ИнфоПравкаОтветитьIP

to XAMUS

Метод-1.
-------------------------------------
Вроде отключается, если подправите конфигурационный файл - \PIC\TagStatus\TS.ini

;=============================================================================
; This is the list of all Tag Status pictures that are available to be opened.
;=============================================================================
[TS_PICS]
*здесь стираем все...*

Чтобы изменения .ini-файла вступили в силу, перезапустите Workspace
(по ходу, зачем в 4.0 иконку у Workspace-а поменяли, теперь она хуже читается-отличается от иконки iFix?

Отключается по всем рисункам в проекте, что не всегда хорошо.


Метод-2.
-------------------------------------
Рисунок TagStatus вылезает когда:
1. объект имеет свойство IsSelectable = True
2. объект выделили на рисунке левой кнопкой мыши - он обвелся двойной рамкой.
3. нажали после пункта 2 правую кнопку.

Давайте на пункте 2 поставим TagStatus-у грабли...
----------------------------------------
Private Sub CFixPicture_SelectionChanged()

obj.DeselectObject False

End Sub
----------------------------------------

Метод-3.
-------------------------------------
Поставьте свойство IsSelectable = False для объектов, по которым не надо выводить TagStatus.
В принципе это грабли на пункте 1 в Методе-2


to S.Andrei
Для передачи аналоговых переменных по Modbus используются 2 байта(если не прав - поправьте), что, сугубо имхо, достаточно "жирно",

для вещественных проде 4 байта...
32-bit floating point (IEEE)
вот взято из справки к драйверу MBE 6.0 (кстати а у вас какая версия ?)
------------------------------
Data type Description
------------------------------
UNSIGNED Unsigned 16-bit integer
SIGNED Signed 16-bit integer
LONG Unsigned 32-bit integer
ASCII 8-bit character
FLOAT 32-bit floating point (IEEE)
DIGITAL Digital
SLONG Signed 32-bit integer
CFLOAT 32-bit float point with the word order reversed.

почему "жирно", где вы натолкнулись на ограничения ?
по адресному пространству, по скорости, объему передачи?
заводите на тег AI на каждое значение, назначаете адрес MBE и вперед.

Bugaga
unregistered
написано 23 Октября 2007 11:05  ПравкаОтветитьIP

Здравствуйте, уважаемые форумчане.
Помогите, пожалуйста со слеедующим вопросом:
Мне нужно сделать анимацию некоего элемента экрана по свойству VISIBLE таким образом, чтобы при пропадании связи с контроллером (источником данных) элемент становился невидимым.
Пока что наблюдаю следующее: при пропадании связи с источником элемент не изменяет своего свойства Visible, т.е. если по условию анимации он был виден, то так и остается видимым, и наоборот.

boykir
Junior Member

Сообщений: 7
Откуда: Россия
Регистрация: Июнь 2007

написано 24 Октября 2007 08:39ИнфоПравкаОтветитьIP

Здравствуйте.
Подскажите, пожалуйста: Как сделать чтобы элемент при определенном значении тега, постоянно то исчезал, то появлялся -многократно, не просто окрашивался в другой цвет создавая эффект мигания, а именно исчезал и появлялся?

HelpFix
Junior Member

Сообщений: 26
Регистрация: Февраль 2007

написано 24 Октября 2007 15:02ИнфоПравкаОтветитьIP

Bugaga
Настройте свойство Visible объекта на поле .A_CUALM вашего тега и при значении "COMM" установите значение "False"
а для остальных "OK", "HI", "HIHI" и др., которые вылезут при создании анимации - значение "True"
Только необходимо этот тег (или какой-нибудь один тег, отслеживающий состояние контроллера) поставить на сигнализацию в БД, а то .A_CUALM будет иметь значение DSAB - выключено.

boykir
Смотрите свойство вашего элемента (объекта) - Visible.
Там можно установить опцию мигание,
соответственно возможны 3 варианта в зависимости от значения тега:
- объект видимый
- объект невидимый
- объект мигает (видимый/невидимый) с заданной частотой.

S.Andrei
Junior Member

Сообщений: 10
Откуда: Россия
Регистрация: Февраль 2007

написано 24 Октября 2007 15:36ИнфоПравкаОтветитьIP

to HelpFix

Версия iFix - 3.5, драйвера Модбас - 7.14b

Скажем так: ограничений как таковых нет, но, с увеличением передаваемого буфера данных появляются timeouts, overruns, errors, что не есть хорошо. Поэтому и родилась подобная мысля.

Вопрос: если в настройках datablock поставить datatype ASCII, то можно ли реализовать уже вышеозвученную идею?

заводите на тег AI на каждое значение, назначаете адрес MBE и вперед.

ну, собственно, так и сделали уже ) просто так получается, что на каждые 100 байт передавамой информации, 50 байт передаются "впустую"

XAMUS
unregistered
написано 25 Октября 2007 10:26  ПравкаОтветитьIP

Добрый день.
Есть задача добавлять перья на Chart динамически (скриптом). Перья подгружаются без проблем, НО Легенда подгружаемых перьев и настройки шкал берутся "по-умолчанию", а мне это не подходит. Особенно напрягает Легенда. Я раскопал, как убирать ненужные столбцы из легенды, Но добавлять нужные не получается: взял пример из Хелпа - не работает, выдает сообщение об ошибке (то ли объект не поддерживает такое свойство, толи что-то еще).
Вопрос: Есть ли в Фиксе где-нить возможность изменения настроек легенды перьев по-умолчанию? Если нет помогите примером кода по добавлению в легенду например столбца с единицами измерения. (Пример из Хелпа я видел - у меня он не работает (что странно))

HelpFix
Junior Member

Сообщений: 27
Регистрация: Февраль 2007

написано 26 Октября 2007 00:14ИнфоПравкаОтветитьIP

S.Andrei
с увеличением передаваемого буфера данных появляются timeouts, overruns, errors, что не есть хорошо
для более конкретной помощи мне требуется ваш файл .mbe, кидайте на e-mail, если есть необходимость.
Вообще, планирую подготовить пример БД iFix с примером сконфигурированного драйвера, который работает у меня без ошибок.

XAMUS
со кодом помочь не смогу, как вариант ...
попробуйте отказаться от легенды Сhart-а вообще, сделайте свою из даталинков

S.Andrei
Junior Member

Сообщений: 11
Откуда: Россия
Регистрация: Февраль 2007

написано 29 Октября 2007 11:18ИнфоПравкаОтветитьIP

HelpFix

Да, собственно говоря, особой необходимости нету ) Настроили, работает вроде нормально все ) А вот пример было бы все равно интересно посмотреть ))

P.s. я немного недопонял, а что это за файл с расширением *.mbe?

HelpFix
Junior Member

Сообщений: 28
Регистрация: Февраль 2007

написано 29 Октября 2007 13:48ИнфоПравкаОтветитьIP

а что это за файл с расширением *.mbe?
это конфигурационный файл драйвера MBE, обычно живет в \PDB.
Обычно имя файла конфигурации совпадает с именем узла iFix - FixNODE.mbe
Хотя конфигурацию можно сохранить и в CSV-формате.

knv
Junior Member

Сообщений: 1
Откуда: Ukraine
Регистрация: Октябрь 2007

написано 30 Октября 2007 11:03ИнфоПравкаОтветитьIP

Здравствуйте.
Снова хотелось бы вернуться к теме OPC-серверов. Никак не могу решить проблему автоматического запуска драйвера с нужным конфигурационным файлом. Драйвер - OPC Client v7.33h; в настройках самого драйвера, в Setup прописаны название и путь к файлу(FIX.opc в PDB), выбран AutoStart, отключен AutoCreate . При запуске iFix запускается драйвер и создается новый файл. Связь устанавливается только когда вручную открываешь FIX.opc через File/Open.Кто-нибудь поборол подобную проблему?

HelpFix
Junior Member

Сообщений: 29
Регистрация: Февраль 2007

написано 30 Октября 2007 14:14ИнфоПравкаОтветитьIP

Проверяем необходимое...
1) в SCU, Cконифгурированные драйверы I/O должен
выбираться OPC - OPC Client v7.33h
2) в SCU, в списке выполняемых задач должен запускатся C:\DYNAMICS\IOCNTRL.EXE /a

Будет не лишним, хотя и не обязательно...
.opc - это конфигурационный файл драйвера OPC, обычно живет в \PDB.
Обычно имя файла конфигурации совпадает с именем узла iFix - FixNODE.opc

Amit
Junior Member

Сообщений: 1
Регистрация: Ноябрь 2007

написано 09 Ноября 2007 13:08ИнфоПравкаОтветитьIP

Здравствуйте. Не давно начал заниматься ФИКсом. Работаю пока с демкой 3.5. С отображением процесс проблем не возникло. Есть проблема научиться создавать отчетные формы.
Требуется по событию записать в архив значения тегов (два десятка). В SCADA-е создать графический интерфейс для просмотра записей (с возможностью выборки во времени), печать и экспорт отображаемых данных в файл с различными расширениями (*.txt, *,csv) в форме отчета. Как это сделать? Заранее благодарен. НЕ требуется конкретных решений, нужно направление движения.

Ваш ответ:

Коды форума
Смайлики


Ник:    Пароль       
Отключить смайлики
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17

Все время MSK

Склеить | Разбить | Закрыть | Переместить | Удалить

Новая тема | Написать ответ
Последние сообщения         
Перейти к:

Свяжитесь с нами | skunksworks.net

Copyright © skunksworks.net, 2000-2018

Разработка и техническая поддержка: skunksworks.net


Рейтинг@Mail.ru Яндекс.Метрика