Уважаемые коллеги, речь пойдет об стандартной утилите InTouch
SPC Pro
SPC дословно означает Statistical Process Control – то есть это инструмент статистического анализа данных,
позволяющий проводить анализ случайных величин (фактически, всякая физическая величина имеет случайную составляющую)
Есть понятия Измерения (Measurement) и Выборки (Sample) – число измерений в выборке устанавливается в SPC->Datasets и
прежде чем Вы увидите первую точку в Control Chart должна быть создана хотя бы одна выборка!
Теперь по порядку:
*********************_Настройка_доступа_к SQL*****************
◘Прежде всего необходимо установить MSSQL сервер – допустим он установлен и для аутентификации используются
Username: sa, Password: sa.
◘Открываем WindowMaker заходим в SPC->Database. В окне Configure SPC Database выбираем Database Type: Microsoft SQL Server, ODBC Data Source: New
теперь нажимаем Modify напротив New,
•Выберите User DSN далее нажмите Add и в появившемся окне выберите драйвер SQL Server.
Введите какое нибудь уникальное имя источника данных, выберите из ниспадающего списка нужный SQL сервер, нажмите Next
•Выберите встроенную аутентификацию With Windows NT Authentification, протестируйте соединение для этого на этой вкладке должна быть выбрана выбрана опция Connect to SQL Server. Next
•Выберите базу данных – Change default database – например tempdb. Нажмите Next и Finish. Убедитесь что соединение проходит – Test Data Source.
Нажмите OK.
◘Теперь мы возвращаемся в окно Configure SPC Database. Если все было сделано правильно (указан сервер и база данных) поля
Server Name и Database должны содержать имя сервера и базы данных. Нажмите кнопку Save.(если потребует ввести пароль – жмите enter)
Появится окно Warning: The SPC database you’ve connected is not initialized/Initialize? Выберите Yes – приложение соединится с БД и создаст в ней
Необходимые таблицы данных. Если таблицы созданы Вы увидите SPC initialization successful.
Нажмите Verify и OK – теперь БД готова для работы.
*****************_Настройка_структуры_данных_*****************
◘Создайте тэг, представляющий случайную величину. Используйте тэги I/O, но не удаленные ссылки.
◘Заходим в SPC->Datasets. В окне SPC Dataset Configuration вводим уникальное имя и имя созданного тэга.
Выберите опцию Time Based из Data Collection, укажите агента – Agent->Add->Done.
Можете также использовать опцию Manual Based для работы с SPC через Quick Scripts.
Настройте параметры Seconds between Measurements, Minutes between Samples, а также Control Limits исходя из времени, которым Вы располагаете.
На вкладке _ расположены различные типы графиков статистического контроля – Отклонение от среднего, скользящее среднее и другие (подробнее надо смотреть в документации) например X bar,R.
Параметр Measurements per Sample – это число измерений в выборке – вообще говоря чем оно больше тем лучше гистограмма соответствует
математической модели.
Параметр Samples per Chart это число «ячеек» в гистограмме – оно должно быть выбрано «правильно» не слишком большим и не слишком маленьким – в зависимости от ожидаемого распределения случайной величины. Неправильно выбранный параметр может исказить видимый результат. Нажмите кнопку Save.
•откройте вкладку Products – введите любое имя продукта и задайте ожидаемое среднее (Target)и уставки для отклонения(Upper/Lower Limits).
Этого достаточно для начала.
В том же окне во вкладке Causes можно выбрать описания особых случаев, должно начинаться с цифры(например 1-низкое, 2- высокое значение ),
А также задать как работать алармам.
◘В окно разрабатываемого приложения добавьте Control Chart и SPC Limits Wizard, свяжите Control Chart c созданным Dataset и Limits Wizard c созданным тэгом (можете отдельно задать тэги для уставок).
◘Запустите приложение, дождитесь окончания выборки и убедитесь что точки отрисовываются.
********************_Использование_Quick_Scripts_*************
Прошу извинить меня что я не выкладываю здесь готовый скрипт для работы с SPC,поскольку все функции документированы и доступны в редакторе скриптов через контекстное меню.
Функция SPCSetMeasurement – образует выборку из последовательных значений тэга.
Функция SPCSaveSample – записывает полученную выборку в базу CurrentCauseCode – номер особого случая для текущей выборки
Установите CurrentUpdate в 1 для внесения в базу.
Функция SPCConnect – автоматический режим работы через агента.
**********************************************************
Я локально проверял – все работает. Желаю успехов!