Кситал GSM-12T

Просмотр 13 сообщений - с 16 по 28 (из 28 всего)
  • Автор
    Записи
  • #26489
    JurasskPark
    Участник

    Я это называю «создать карту тегов». 🙂

    #26490
    Romiros
    Участник

    Вам правильно написали. Нужно использовать линию в режиме TCP Server. Написать свой драйвер, который будет слушать указанный на этой линии порт. Т.е. реализовать два метода, которые указал Михаил. Далее распарить поступившие данные и передать их в созданные сигналы устройства. Много приборов будут подключаться к одному порту?

    #26491
    Romiros
    Участник

    Ещё такой вопрос, а как он работает с TCP. Вроде бы только sms поддерживаются? У нас подобные приборы бросают смс в скаду, а дальше идёт парсинг текста и формирование событий.

    #26499
    Oakim
    Участник

    Пока приборов около десяти. Вот тоже вопрос каждому прибору нужно выделять отдельный порт или можно обойтись одним портом после чего данные распихивать в каналы по идентификатору прибора?

    У Кситала есть возможность передавать данные через GPRS соединение. Посмотрите передача данных на narodmon.ru и в инструкции есть раздел по настройке этого соединения, данная возможность появилась в одной из последних прошивок.

    #26500
    manjey73
    Участник

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

    Если вы будете делать настройку через Параметры линии — TCP Сервер, то порт в принципе будет один.

    • Ответ изменён 3 года, 7 месяцев назад пользователем manjey73.
    #26504
    Oakim
    Участник

    Думаю лучше ручками и для каждого прибора отдельное соединение с отдельным портом

    Руководство пользователя ksytal GSM12
    Страница 49

    #26505
    Mikhail
    Модератор

    Вот тоже вопрос каждому прибору нужно выделять отдельный порт или можно обойтись одним портом после чего данные распихивать в каналы по идентификатору прибора?

    Если протокол обмена содержит ID прибора, то достаточно одного порта на несколько приборов.

    #26506
    Mikhail
    Модератор

    Думаю лучше ручками и для каждого прибора отдельное соединение с отдельным портом

    Возможно, так будет проще, но можно и на общий порт направить.

    #26511
    Oakim
    Участник

    Михаил, если общий порт и один канал принимающий от всех приборов, то как привязывать данные приходящие на порт от разных приборов на разные каналы, в таком случае нужен какой то конфигурационный файл или интерфейс, но в скаде я подобного не увидел

    #26513
    manjey73
    Участник

    Ну я бы делал в автоматическом режиме, по крайней мере драйвера это позволяют.
    Можно не перегружать линию связи а только выставлять специально заданный канал о новых устройствах в 1, что добавлено новое устройство, а в логе Коммуникатора писать, что новое устройство было добавлено в шаблон и перегружать уже в ручном режиме линию
    И потом копируя полученный файл шаблона в проект перегружать уже сервер для добавления каналов.

    А то у вас приборы могут передавать данные от 1 минуты до 999

    #26514
    manjey73
    Участник

    @Oakim интерфейс для настройки драйвера в самом коде драйвера делается.

    У вас вполне реально сделать прослушку и добавления полученных данных в шаблон. Новый идентификатор, новая запись в шаблоне, оповещение по заранее заданному каналу о новом устройстве.

    Потом копируете новый шаблон из ScadaComm/Config в проект, открываете его, по нему добавляете новые каналы и перезапускаете сервер с передачей ему нового конфига. Появится связь с новыми каналами, старые останутся как есть.

    • Ответ изменён 3 года, 7 месяцев назад пользователем manjey73.
    #26523
    Oakim
    Участник

    Спасибо за консультацию попробую

    #26526
    manjey73
    Участник

    Пример

    ну если на моем примере.
    DevView — отвечает за создание каналов из шаблона
    DevLogic за логику работы, из него же читается шаблон при старте линии и создание тегов
    во View вариант создания настроек через DataGridView
    в DevTamplate описание классов для переменных

    Ну и чтение, запись в XML сериализацией есть в ScadaCommFunc библиотеке, она пересобрана под 6-ю версию практически без изменений, есть в релизе драйвера.
    Код есть в папке драйверов к 5-й версии.
    Пока это единственный не косячный способ сериализации, пробовал другие, но они ломают зубы на повторяющих именах в других секциях, обязательно требуют наличие параметра в xml файл и т.д.

Просмотр 13 сообщений - с 16 по 28 (из 28 всего)
  • Для ответа в этой теме необходимо авторизоваться.