Вход

Просмотр полной версии : Заполнение таблицы веса произведённой продукции в скаде



Party3AH
29.10.2025, 17:36
Добрый день всем!
Нужна помощь специалиста по скаде, желательно TraceMode 7, но может кто-то реализовывал такую же задачу простыми методами и в других скадах...
На форум TraceMode просьба не отсылать, там за месяц мне 1 человек ответил...

Есть интересная задачка - печать отчёта о произведённой продукции (время порции, вес порции).
Количество порций может быть различным - в теории до 500 штук точно, время производства различное - в теории более суток.

Вид таблички:

29.10.2025 17:23:32 - 100 кг
29.10.2025 17:23:54 - 101 кг
....
30.10.2025 23:45:59 - 95 кг


ПЛК управляет автоматической линией, которая работает по циклу, в конце цикла выдаётся порция продукта, идёт подсчёт веса этой порции.
Есть общая сумма веса - в конце каждого цикла идёт суммирование.
ПЛК связывается со скадой TM7, в отчёте пока только суммарный вес.

Мучался с отчётами и архивными таблицами в TM7 - в итоге в архивную таблицу можно сделать выгрузку из архива, но обязательно шаг разбивки идёт по времени, что никак не подходит, т.к. порция может изготавливаться и 30 секунд, а может и несколько минут. Привязываться ко времени нельзя, только к биту завершения цикла.
Можно писать в архив значение веса, при каждом изменении по идее будет новая запись. Но может быть такое, что в один цикл изготовилось 101 кг, и в следующий ровно столько же - записи в архив не будет.

Пока идея только одна - в тупую создавать массив 500 переменных и вручную его забивать по биту завершения цикла.
Делать это в скаде очень не хочется, а передавать массив 500 переменных в ПЛК по Modbus - не очень идея, т.к. есть ограничения лицензии по источникам (регистрам).
Есть подозрения, что нужно использовать базу данных, но ради одной мелкой задачи не хотелось бы.

melky
29.10.2025, 19:44
Так у вас привязка не к изменению значения должна быть, а к тому самому биту, который говорит о завершении цикла.

А что, диапазон каналов, которые требуется сохранить, задать нельзя?

Возможности писать в файл суммы и метки времени?

з.ы. на другой скада это может решаться совершенно иначе. Тут надо понимать, какие механизмы может предоставить TM

МихаилГл
30.10.2025, 07:07
Недавно тут приобрели ТМ7 для одного объекта, но не понадобился... Тяжёлая штука, если разбираться в старых проектах, особенно импортированных с ТМ6.
А у вас нету модуля интеграции с базами данных? Там, думаю, можно это скриптами сделать и в базу класть... И не понимаю, зачем делать отчётность силами скады, мне больше mssql и репорт сервер нравится, хотя Майкрософт не скоро вернётся, а может и никогда...

Party3AH
30.10.2025, 10:16
Так у вас привязка не к изменению значения должна быть, а к тому самому биту, который говорит о завершении цикла.

А что, диапазон каналов, которые требуется сохранить, задать нельзя?

Возможности писать в файл суммы и метки времени?

з.ы. на другой скада это может решаться совершенно иначе. Тут надо понимать, какие механизмы может предоставить TM

Прямой возможности писать данные в файл нет, но можно экспортировать в xml данные тренда. Отсюда появилась идея - сделать тренд суммы веса порций, экспортировать в xml время и значения.
Да, хотелось бы привязку к биту завершения цикла сделать, но пока не вижу способов, как это реализовать.

Party3AH
30.10.2025, 10:25
Недавно тут приобрели ТМ7 для одного объекта, но не понадобился... Тяжёлая штука, если разбираться в старых проектах, особенно импортированных с ТМ6.
А у вас нету модуля интеграции с базами данных? Там, думаю, можно это скриптами сделать и в базу класть... И не понимаю, зачем делать отчётность силами скады, мне больше mssql и репорт сервер нравится, хотя Майкрософт не скоро вернётся, а может и никогда...

Тяжёлая скада для освоения, особенно удивляет стиль обучающей документации (самоучителя и справки), до многих вещей приходится доходить самому...
Есть возможность подключения к СУБД, но в самоучителе ни слова, и похожих примеров тоже не нашёл.
Есть удобная штука - SIAD собственная система записи архива без внешних СУБД, хотелось бы с помощью неё обойтись.

ps: нашёл видеоуроки и примеры, может кому пригодится "Связь TRACE MODE 7 с внешними приложениями"