PDA

Просмотр полной версии : Создание отчета в Мастер-скада3



in37usd
30.03.2021, 20:16
Создание отчета в Мастер-скада3- не получается создать связь
"Начало"- в объектах не получается соединить с "Начало " в отчете
кто расскажет как? перетаскивание не проходит, через контекстное меню - что-то все равно упирается, что-то не так.
....................................
при создании тренда аналогично:
" Свяжем входы динамизации Дата С и Дата По с переменными Начало и Конец дерева объектов. " - (по букварю полагается сделать-связать) .

Дата С и Дата По- там конкретные даты типа 30.03.2021
Начало и Конец - в дереве объекта -это команы
Спецы их связывают, возникают связи.
.................................................. .........
И где почитать об экспорте данных во внешнюю базу данных(поподробнее)?

SCADAMaster
30.03.2021, 21:39
Что именно не получается? Тащите переменную отпускаете на параметре начало - все.
Какой то индикации при этом не произойдет. Если нужно убедится что связь установилась, выделите переменую в дереве и посмотрите ее свойства.
Посмотрите видеопримеры по отчетам - там это детаельно разбиралось
https://insat.ru/products/?category=1524

И где почитать об экспорте данных во внешнюю базу данных(поподробнее)?
https://insat.ru/products/?category=1525
Часть 1. Хранение данных и сообщений. Экспорт данных и сообщений

in37usd
31.03.2021, 11:25
"Если нужно убедится что связь установилась, выделите переменую в дереве и посмотрите ее свойства."-связь не устанавливается!
БД внешняя создается- освоил это!
но команда -переменная в мастер-скада равна и фигурирует как 77, а в БД экспортированной и в отчете, созданном WISARD она равна 0 !!!!

SCADAMaster
31.03.2021, 11:41
"Если нужно убедится что связь установилась, выделите переменую в дереве и посмотрите ее свойства."-связь не устанавливается!

Пришлите видео с последовательностью действий. Для записи можно использовать:
https://www.flashbackrecorder.com/ru/
или jing
https://www.techsmith.com/jing-tool.html



но команда -переменная в мастер-скада равна и фигурирует как 77, а в БД экспортированной и в отчете, созданном WISARD она равна 0 !!!!
Что здесь имеется ввиду?
Опишите проблему подробнее и приложите несколько скриншотов

in37usd
31.03.2021, 13:01
сейчас смотрю рекомендованные Вами Видео- границы экрана у разработчика не видны , попробую скачать другой видеоплеер , видна только центральная часть экрана

SCADAMaster
31.03.2021, 13:13
Про какие видео идет речь? Если про видеопримеры, то можете смотреть на Youtube

in37usd
31.03.2021, 13:37
скачал два плеера - что по краям экрана - по 25% с каждого краю не видно- хочется ругаться!
Адобе плеер и SWF-плеер

SCADAMaster
31.03.2021, 13:44
Вы можете смотреть на YouTube. Все ссылки здесь
https://insat.ru/products/?category=1524
Или вам нужно непременно скачать?

in37usd
31.03.2021, 14:14
так в примере инсата

SCADAMaster
31.03.2021, 14:24
Сейчас в чем вопрос?

in37usd
31.03.2021, 14:55
мне надо повторить пример
https://insat.ru/blog/postroenie-grafika-zavisimosti/
там есть такая строчка " . Создадим у объекта мнемосхему и добавим на него тренд из палитры мнемосхемы, также разместим на нем кнопку вытащив команду Запуск. "
и
"Свяжем входы динамизации Дата С и Дата По с переменными Начало и Конец дерева объектов. "

SCADAMaster
31.03.2021, 15:01
Так что не получается? Вы перетащили Начало и конец в эти поля?
Если что-то не получается, то пришлите видео с последовательностью действий

in37usd
31.03.2021, 15:31
Мне надо переменную из ОРС сервера "Усилие " связать с "АргументY", переменную "Перемещение" связать с "АргументX" ,
по кнопке "Пуск " должен строиться график НОРМАЛЬНЫЙ, с лево на право!!!
По СТОП -остановка построения
и не должен рисоваться шумоподобный сигнал
и "Усилие ","Перемещение" во внешнюю БД и на экран в таблицу - а так туда идет пустой файл
Доработать этот пример было бы отлично!
И рисовать может лучше не на ТРЭНДЕ, а непрерывно в отчете, по мере обновления перемещения
В тренде перо будет, наверное, двигаться даже от течения времени
а мне надо движение по Х только от изменения Х!!

in37usd
31.03.2021, 15:54
вот как у меня получалось

SCADAMaster
31.03.2021, 18:54
Вы тащите в свойства контрола, а нужно тащить на входы динамизации.

in37usd
31.03.2021, 19:50
Спасибо!
А по кнопке Старт-пуск как правильно надо делать?
" также разместим на нем кнопку вытащив команду Запуск. "-'Это как?
а как связывать "Усилие "с "АргументY" ,"Перемещение" с "АргументX"-раньше они связывались просто перетаскиванием, а сейчас не хотят

SCADAMaster
31.03.2021, 20:34
Создаете команду, указываете у нее тип дискретный, вытаскиваете на мнемосхему правой кнопкой мыши и в свойствах кнопки включаете фиксацию.
Посмотрите пример готовый идет в блоге.

in37usd
04.04.2021, 18:56
Откуда "прет" шумоподобный сигнал в примере
https://insat.ru/blog/postroenie-grafika-zavisimosti/ ?
хочу вместо него подключить источник из OPC-сервера

при каждом новом запуске график меняется, то есть сигнал шумоподобный
Похоже из функций отчета
И еще один вопрос:
"Аргумент Х и Аргумент Y – переменные от которых мы будем строить наш график зависимости. "Но
они смотрятся как ВЫХОДЫ ФБ , хотя в MasterScada они значатся как "Команда"
И закладка есть как "Опрос выхода"
Т.е. это выходы ФБ
А где входы?

SCADAMaster
05.04.2021, 09:57
Шум идет от Аргумент X и Аргумент Y - это команды у которых включена имитация. В реальном проекте это будут выходы или значения.

in37usd
05.04.2021, 12:13
В Отчетах увидел нарисованную точку,
как разыскать таблицу, куда идет архивация?

SCADAMaster
05.04.2021, 12:48
Про какую таблицу идет речь?
Архивация по умолчанию идет в файловый архив. Чтобы архивация началась нужно у переменной на вкладке Архив поставить флаг Архивировать.
Подробнее в документации Архивы MasterSCADA
https://insat.ru/products/?category=1525

in37usd
05.04.2021, 21:13
Вот переделал под чтение из OPC - сервера-перемещение и усилие- нужен график Y=F(X).
Симулятора OPC-сервера у меня нет
Один раз принял одну точку на "отчете"
посмотрите, что не так

SCADAMaster
05.04.2021, 21:46
Архивацию не включили (см. приложение)

in37usd
07.04.2021, 12:29
1)а если архивирую во внутреннюю БД, то как ее просматривать?
2)хочу скачать непрерывно-периодический отчет, но нарываюсь только на PDF-файлы. Где скачать?
3)где скачать симулятор OPC-сервера?
4)если архивирую во внешнюю БД, то как настроить архивацию, что бы туда реально поступали данные?

SCADAMaster
07.04.2021, 13:26
1)а если архивирую во внутреннюю БД, то как ее просматривать?

Файловый архив?
Точно также - через источник данных "Архив MasterSCADA"
Или имеется ввиду просто посмотреть что данные в архиве есть?




2)хочу скачать непрерывно-периодический отчет, но нарываюсь только на PDF-файлы. Где скачать?

Проект имеется ввиду?
Все примеры тут (https://insat.ru/metodicheskie-materialy/Примеры%20проектов.zip)




3)где скачать симулятор OPC-сервера?

В Modbus Universal в поставку входит конфигурация Simulator. Можете использовать теги из нее, или на основе нее сделаю свою конфигурацию



4)если архивирую во внешнюю БД, то как настроить архивацию, что бы туда реально поступали данные?

Посмотрите вот эту документацию (https://insat.ru/metodicheskie-materialy/Хранение%20данных%20и%20сообщений.Экспорт%20данных %20и%20сообщений.pdf) страница 11-12

in37usd
07.04.2021, 14:18
В Modbus Universal в поставку входит конфигурация Simulator. Можете использовать теги из нее, или на основе нее сделаю свою конфигурацию-Это как?

SCADAMaster
07.04.2021, 14:28
Копируете конфигурацию, меняете имя. Открываете. Берете симуляционные теги, копируете, переименовываете, изменяете в скрипте алгоритм или диапазоны имитации. Лишние теги удаляете.
Проще говоря адаптируете под вашу задачу.

in37usd
07.04.2021, 14:48
Берете симуляционные теги-это как?Не представляю как

SCADAMaster
07.04.2021, 15:06
Откройте конфигурацию Simulator. Там есть два тега - Sin и Saw. Их можно копировать, вырезать, удалять, изменять параметры имитации

in37usd
09.04.2021, 12:31
Пытаюсь запустить вариант программы "ФБ _Скрипт C#_ и его использование в MasterSCADA. Управление трендом – задающий график.html "
Ракета "Стартует", но график не рисуется
"Непрерывно -кусочный " и все варианты из папки "Примеры проектов"-тоже самое
Как запустить?
давайте хоть первый вариант запустим , чтобы работал- или от иммитатора, но мне лучше от OPC- сервера
а какой номер на ICQ у INSAT?

SCADAMaster
09.04.2021, 12:52
Пришлите ваш проект. Выполните Проект - Экспортировать, сформированную папку заархивируйте и вышлите нам.

in37usd
10.04.2021, 11:39
В данный момент не рисуется на тренде график-подозреваю проблемы на шкале Х("перемещениеХ")

in37usd
10.04.2021, 18:50
не могу найти БД ---->Объект.Объект 1.mdb
хоть путь указан-->
D:\OPS_server\Примеры проектов\Скрипт задающего графика\Данные
это по статье "ФБ "Скрипт C#" и его использование в MasterSCADA. Управление трендом – задающий график"
я хочу подкооректировать значения

in37usd
11.04.2021, 12:10
вот у меня начало рисовать значение Y

SCADAMaster
11.04.2021, 13:55
В приложении исправленный проект.

in37usd
11.04.2021, 15:19
А как будут выглядеть коды проекта "ФБ "Скрипт C#" и его использование в MasterSCADA. Управление трендом – задающий график" если его переделать под случай
Y=f(X) на основе таблицы ,заранее заданной в программе???
мне надо будет просто дорисовывать на мой график "Y рисует" еще два графика на основе таблицы заранее заданной
........................................
Сейчас опробовал тот вариант, который Вы прислали- работает, НО внизу щкала
" бежит " временная, а надо , чтобы была неподвижная от 0 до 10 или от 0 до 20.
можно просто добавить еще одну шкалу, неподвижную от 0 до 10 или от 0 до 20.
..............................................
Добавил проверенный, работающий каскад -ПИД-регулятор
и эта часть не запускается
Работающий ПИД-регулятор неплохо было-бы объединить в ФБ

SCADAMaster
12.04.2021, 09:26
Сейчас опробовал тот вариант, который Вы прислали- работает, НО внизу щкала
" бежит " временная, а надо , чтобы была неподвижная от 0 до 10 или от 0 до 20.
можно просто добавить еще одну шкалу, неподвижную от 0 до 10 или от 0 до 20.

В блоге это описано - нужно добавить еще одну горизонтальную шкалу.



Добавил проверенный, работающий каскад -ПИД-регулятор
и эта часть не запускается
Работающий ПИД-регулятор неплохо было-бы объединить в ФБ
Какая именно часть не работает?

in37usd
12.04.2021, 14:03
ПИД-регулятор не функционирует- ТОК-(уровень) не меняется , хотя задание есть
"задание тока"
вопрос : !)язык скриптов С# - он сильно отличается от того, что в Visual Studio?
2)почему у меня не хочет устанавливаться Visual Studio в компе?
год назад вполне нормально работал
win10 +2 ГГБ- неужели из-за компа?
язык скриптов С#- по какой книге изучать?
HELP в OPC-сервере?

SCADAMaster
12.04.2021, 14:37
ПИД-регулятор не функционирует- ТОК-(уровень) не меняется , хотя задание есть
"задание тока"

Для начала - у вас параметр и задание перепутаны.



вопрос : !)язык скриптов С# - он сильно отличается от того, что в Visual Studio?

Ничем не отличается.



2)почему у меня не хочет устанавливаться Visual Studio в компе?
год назад вполне нормально работал
win10 +2 ГГБ- неужели из-за компа?

Это уже не к нам.



язык скриптов С#- по какой книге изучать?
HELP в OPC-сервере?
https://insat.ru/blog/?category=9
Конкретно по C# есть специализированные книги, а также сайты:
https://metanit.com/sharp/

in37usd
12.04.2021, 17:56
пытаюсь дорисовать график "Скрипт задающего графика" к графику y=f(X)
что не так?

SCADAMaster
18.04.2021, 09:59
var param=list[0];
В скрипте берется нулевое перо (самое первое в легенде), а вам нужно другое перо.

in37usd
24.04.2021, 12:02
using System;
using System.Windows;
using System.Threading;
using System.Linq;
using MasterSCADA.GUI;
using InSAT.Library.Gui.Windowless;
using MasterSCADA.Script.FB;
using MasterSCADA.Hlp;
using System.Windows.Forms;
using MasterSCADA.Trend.Controls;
using MasterSCADA.Trend.Helpers;
using MasterSCADA.Trend.Services;
using MGDesign.MasterSCADA;
using MGDesign.Hosts;
using MGDesign.Items;
using System.Collections.Generic;
using MasterSCADA.RT;
using MasterSCADA.Graph.Objects;

public partial class ФБ : ScriptBase
{
bool? M=false;
string ИМЯ_ТРЕНДА = "Тренд";
string ИМЯ_ОКНА = "Мнемосхема";
public override void Execute()
{

if (Применить==true && M==false)
{
if (!День.HasValue || !X1.HasValue || !X2.HasValue || !X3.HasValue || !X4.HasValue || !X5.HasValue ||
!Y1.HasValue || !Y2.HasValue || !Y3.HasValue || !Y4.HasValue || !Y5.HasValue)
{
Ошибка="Не заданы все параметры";
return;
}
DateTime Start=День.Value.Date;
Начало=Start;
Конец=Start.AddDays(1);
//System.Diagnostics.Debug.Assert(false);
//Ссылка на текущий проект
var проект = HostFB.TreeItemHlp.Project;
//получаем корневой объект
var объект = (ITreeItemHlp)HostFB.TreeItemHlp.Parent;
//получаем тренд
RTManager.Instance.ThreadHolder.BeginInvoke(new ThreadStart(delegate
{
foreach (Trend trend in проект.GetService<TrendService>().Opened)
{
var host = trend.Host as System.Windows.Forms.Control;
if (host!=null)
{
Object name = WinFormsControlBase.GetAmbientProperty(host, WindowlessControlBase.DISPID.DISPID_AMBIENT_NAME);
if (name.ToString()!=ИМЯ_ТРЕНДА || trend.Attribute.TreeItem.ID!=объект.ID || trend.Attribute.DisplayName!=ИМЯ_ОКНА) continue;
//получаем коллекцию перьев
var list = trend.Settings.Objects.OfType<MasterSCADA.Graph.Objects.UserGraph2D>().ToList();
//получаем нулевое перо
var param=list[0];
param.XMLTableValues = new GraphFigureCollection
{
new GraphFigure
{
Coords = new CoordCollection
{
new Coord {Logic = new Point((Start.Date.ToUniversalTime()+X1.Value.TimeO fDay).ToOADate(), Y1.Value)},
new Coord {Logic = new Point((Start.Date.ToUniversalTime()+X2.Value.TimeO fDay).ToOADate(), Y2.Value)},
new Coord {Logic = new Point((Start.Date.ToUniversalTime()+X3.Value.TimeO fDay).ToOADate(), Y3.Value)},
new Coord {Logic = new Point((Start.Date.ToUniversalTime()+X4.Value.TimeO fDay).ToOADate(), Y4.Value)},
new Coord {Logic = new Point((Start.Date.ToUniversalTime()+X5.Value.TimeO fDay).ToOADate(), Y5.Value)},

}
}
};
}
}
}));
}
M=Применить;
}
}

.................................................. ..
Start.Date.ToUniversalTime()+X1.Value.TimeOfDay).T oOADate() — это печатает относительно
координаты времени
а если я ставлю ось вещественную , то где осуществляется к ней привязка- в свойствах оси ?
а если меняю эту запись на
Point(X1.Value, Y1.Value)
- почему бьет ошибку?
где указывается, что первый аргумент у функции
POINT в этой программе должен быть временным?

SCADAMaster
24.04.2021, 16:20
Потому что это график, и точка на графике должна иметь привязку ко времени.
Поэтому вам в любом случае нужно формировать точку в меткой времени.
Если нужно выводить значения с привязкой к оси значений X, то просто прибавляйте Start.Date.ToUniversalTime() сколько вам нужно секунд (то ест значение координаты X). Ось времени потом сделаете невидимой.

in37usd
24.04.2021, 20:08
Мне нисколько не нужно ни минут ни секунд- мне надо время исключить СОВЕРШЕННО!
в программу на C# надо передать один хотя бы массив точек , а лучше два, и построить один , а лучше два графика по точкам
я брал просто два массива в программе и строил на их основе два графика , не зависящие от времени

int[] YH = { 45, 50, 52, 57, 58, 59, 60, 61, 62, 63 }, YL = { 5, 6, 8, 9, 7, 1, 2, 3, 4, 5 };
for (int x = 0; x < 10; x++)
{
chart1.Series[0].Points.AddXY(x * 10, YH[x]);
chart1.Series[0].Points.AddXY(x * 10, YL[x]);
}

а потом между ними будет строиться третий график, на основе двух переменных от
OPC-сервера- все совершенно не должно зависеть от времени!
то есть первые два графика - допустимый "коридор" для третьего графика
третий график должен идти между первыми двумя и не касаться их визуально
третий график мы уже с Вами построили- см выше!
меня совершенно устроили бы точки на основе массива(массивов) в программе

int[] YH = { 45, 50, 52, 57, 58, 59, 60, 61, 62, 63 }, YL = { 5, 6, 8, 9, 7, 1, 2, 3, 4, 5 };
а "передвигаться " по координате X можно с помощью цикла наращивания Х:
///////////////////////////////////////////////////////
for (int x = 0; x < 10; x++)
{
chart1.Series[0].Points.AddXY(x * 10, YH[x]);
chart1.Series[0].Points.AddXY(x * 10, YL[x]);
}

SCADAMaster
25.04.2021, 19:29
Еще раз - это тренд, тренд по определению - это временной ряд.
Как сделать - мы вам описали, делаете точку с привязкой ко времени - прибавляете пропорциональное количество секунд к Start.Date.ToUniversalTime()
int[] YH = { 45, 50, 52, 57, 58, 59, 60, 61, 62, 63 }
Вот и прибавляйте к Start.Date.ToUniversalTime() 45, 50 и т.д. Временную ось потом скроете и добавите горизонательную ось значений

in37usd
27.04.2021, 06:00
Вроде заработало
По графику, который делали выше пару страниц-
1)как делать очистку -сброс "RESET" всего графика?
2)сохранять пробовал во внешний файл типа ACSESS- там пусто!
и где почитать , как сохраняют график в таблице на форме

SCADAMaster
27.04.2021, 09:28
1)как делать очистку -сброс "RESET" всего графика?

Вот так можно сделать:
param.XMLTableValues=new GraphFigureCollection();




2)сохранять пробовал во внешний файл типа ACSESS- там пусто!

Сохранять что? Если делать экспорт в Access данных, то в случае с задающим графиком сохранять нечего - так как данные существует только на тренде, а в архиве их нет.
Если же график зависимости - должен экспортироваться.
Посмотрите документацию
https://insat.ru/products/?category=1525
Архивы MasterSCADA



и где почитать , как сохраняют график в таблице на форме
В виде таблицы?
Вкладка Значение.
Если нужно автоматизированно - с помощью ФБ "Управление документом". В документации Архивы MasterSCADA это описывается

in37usd
28.04.2021, 12:02
смотрю в Visual studio выполнение кода C#
как посмотреть значение переменных в точке остановки
для строчки

new Coord {Logic = new Point((Start.Date.ToUniversalTime()+X5.Value.TimeO fDay).ToOADate(), Y5.Value)},???
точка остановки ниже

in37usd
28.04.2021, 17:57
///////////////

SCADAMaster
29.04.2021, 12:30
смотрю в Visual studio выполнение кода C#
как посмотреть значение переменных в точке остановки
для строчки

new Coord {Logic = new Point((Start.Date.ToUniversalTime()+X5.Value.TimeO fDay).ToOADate(), Y5.Value)},???
точка остановки ниже

Разбиваете на несколько промежуточных переменных и смотрите для них.
вида
var startTime=Start.Date.ToUniversalTime();
var startTimeWithValue=startTime+X5.Value.TimeO fDay;
и тд
их же потом и используете в этой переменной
Logic = new Point((startTimeWithValue).ToOADate(), Y5.Value)

in37usd
30.04.2021, 10:18
это понятно
комп не выводит на экран значения переменных (Value) в точке останова
как это до "доработать"? Где смотреть?

SCADAMaster
30.04.2021, 12:33
Что значит не выводит? Покажите скриншот как это выглядит у вас

in37usd
30.04.2021, 13:00
совершенно не знаю как " Привязать " задающий график-пероN1(по таблице) к группе точек- объектов К1...K5
а N2 к группе точек L1...L5???
два графика строятся по коду
using System;
using System.Windows;
using System.Threading;
using System.Linq;
using MasterSCADA.GUI;
using InSAT.Library.Gui.Windowless;
using MasterSCADA.Script.FB;
using MasterSCADA.Hlp;
using System.Windows.Forms;
using MasterSCADA.Trend.Controls;
using MasterSCADA.Trend.Helpers;
using MasterSCADA.Trend.Services;
using MGDesign.MasterSCADA;
using MGDesign.Hosts;
using MGDesign.Items;
using System.Collections.Generic;
using MasterSCADA.RT;
using MasterSCADA.Graph.Objects;


public partial class ФБ : ScriptBase
{
bool? M=false;
string ИМЯ_ТРЕНДА = "Тренд";
string ИМЯ_ОКНА = "Мнемосхема";
public override void Execute()
{

if (Применить==true && M==false)
{
if (!День.HasValue || !X1.HasValue || !X2.HasValue || !X3.HasValue || !X4.HasValue || !X5.HasValue ||
!Y1.HasValue || !Y2.HasValue || !Y3.HasValue || !Y4.HasValue || !Y5.HasValue)
{
Ошибка="Не заданы все параметры";
return;
}
DateTime Start=День.Value.Date;
Начало=Start;
Конец=Start.AddDays(1);
//System.Diagnostics.Debug.Assert(false);
//Ссылка на текущий проект
var проект = HostFB.TreeItemHlp.Project;
//получаем корневой объект
var объект = (ITreeItemHlp)HostFB.TreeItemHlp.Parent;
//получаем тренд
RTManager.Instance.ThreadHolder.BeginInvoke(new ThreadStart(delegate
{
foreach (Trend trend in проект.GetService<TrendService>().Opened)
{
var host = trend.Host as System.Windows.Forms.Control;
if (host!=null)
{
Object name = WinFormsControlBase.GetAmbientProperty(host, WindowlessControlBase.DISPID.DISPID_AMBIENT_NAME);
if (name.ToString()!=ИМЯ_ТРЕНДА || trend.Attribute.TreeItem.ID!=объект.ID || trend.Attribute.DisplayName!=ИМЯ_ОКНА) continue;
//получаем коллекцию перьев
var list = trend.Settings.Objects.OfType<MasterSCADA.Graph.Objects.UserGraph2D>().ToList();
//получаем нулевое перо
var param=list[0];
param.XMLTableValues = new GraphFigureCollection
{
new GraphFigure
{
Coords = new CoordCollection
{
new Coord {Logic = new Point((Start.Date.ToUniversalTime()+X1.Value.TimeO fDay).ToOADate()+0, Y1.Value)},
new Coord {Logic = new Point((Start.Date.ToUniversalTime()+X2.Value.TimeO fDay).ToOADate()+0.25, Y2.Value)},
new Coord {Logic = new Point((Start.Date.ToUniversalTime()+X3.Value.TimeO fDay).ToOADate()+0.5, Y3.Value)},
new Coord {Logic = new Point((Start.Date.ToUniversalTime()+X4.Value.TimeO fDay).ToOADate()+0.75, Y4.Value)},
new Coord {Logic = new Point((Start.Date.ToUniversalTime()+X5.Value.TimeO fDay).ToOADate()+1, Y5.Value)},

}
}
};
var param1=list[1];
param1.XMLTableValues = new GraphFigureCollection
{
new GraphFigure
{
Coords = new CoordCollection
{
new Coord {Logic = new Point((Start.Date.ToUniversalTime()+X6.Value.TimeO fDay).ToOADate()+0, Y6.Value)},
new Coord {Logic = new Point((Start.Date.ToUniversalTime()+X7.Value.TimeO fDay).ToOADate()+0.25, Y7.Value)},
new Coord {Logic = new Point((Start.Date.ToUniversalTime()+X8.Value.TimeO fDay).ToOADate()+0.5, Y8.Value)},
new Coord {Logic = new Point((Start.Date.ToUniversalTime()+X9.Value.TimeO fDay).ToOADate()+0.75, Y9.Value)},
new Coord {Logic = new Point((Start.Date.ToUniversalTime()+X10.Value.Time OfDay).ToOADate()+1, Y10.Value)},

}
}
};
}
}
}));
}
M=Применить;
}
}
но если достраиваю третий Y=f(x)
то первые два исчезают

in37usd
01.05.2021, 14:48
переменные научился просматривать

in37usd
11.05.2021, 16:40
Добрый день!
Вроде создал DLL-файл на основе Ваших файлов «BLINK» и других из ФБ- примеров на C#
Но нигде не написано, как пользоваться* «Органайзер регистрации ФБ»
Вот как им пользоваться конкретно!!!
как dll-файл "Прописать " в MasterSCADA??

SCADAMaster
11.05.2021, 16:52
Мы вам ответили по почте.
Если вы все сделали правильно, то ваш ФБ должен автоматически появится в палитре в указанной категории после обновления палитры ФБ