Российский производитель и разработчик сертифицированного измерительного оборудования с 1987 года

Разблокировка LTR

Вы не вошли.

 Поиск | Регистрация | Вход 

03.11.2024 18:41:17
#1

Участник
Здесь с 22.06.2023
Сообщений: 37

Разблокировка LTR

Существует ли возможность разблокировать крейт в нештатных ситуациях посылкой какой-либо команды по порту 11113 без использования временного отключения крейта от напряжения?
В документе "ltrcrate_protocol.pdf" описана работа с крейтом непосредственно по TCP по портам 11113 и 11110. В некоторых случая при нештатных ситуациях крейт LTR приходит в такое состояние, что оказывается недоступен для дальнейшей работы из нашей программы средствами штатного API.
В реализованном нами проекте использовали внешнее реле для временного отключения и подключения крейта к питанию. Может получится обходиться без дополнительного оборудования.

07.11.2024 04:36:16
#2

Сотрудник "Л Кард"
Здесь с 17.04.2014
Сообщений: 1,290

Re: Разблокировка LTR

А какая версия прошивки у Ваших крейтов?

08.11.2024 15:20:38
#3

Участник
Здесь с 22.06.2023
Сообщений: 37

Re: Разблокировка LTR

Железо предыдущего проекта сейчас вне доступа, но в новом проекте в этом году закуплены крейты. Прошивка от этого года. Кстати, как ее посмотреть программно? Мне крейты доступны только удаленно и в режиме черного экрана. ltrmanager использовать не могу - нет графики.

08.11.2024 15:32:16
#4

Участник
Здесь с 22.06.2023
Сообщений: 37

Re: Разблокировка LTR

Поставленный вопрос можно сформулировать так: "Как программно вызвать перезагрузку крейта, чтобы от него отвалились все коннекты?"

10.11.2024 15:08:23
#5

Участник
Здесь с 22.06.2023
Сообщений: 37

Re: Разблокировка LTR

1) Обнаружил в ltrapi функцию LTR_ServerRestart. В описании сказано, что перед рестартом службы закрываются все соединения. Эта функция может заменить передергивание питания крейтов, когда связь с ними пропадает?
2) Опробовал эту функцию в ситуации, когда ltrd на одном компьютере, а программа с LTR_ServerRestart запускается на другом. Служба просто остановилась. Ее пришлось запускать на компьютере, где она и работает, причем из-под администратора. В реальности нам придется запускать ее на том же компьютере, где она работает под Linux. Программу надо запускать под "su -" ?

11.11.2024 17:13:58
#6

Сотрудник "Л Кард"
Здесь с 17.04.2014
Сообщений: 1,290

Re: Разблокировка LTR

Версию прошивки можно узнать через функцию ltrapi  LTR_GetCrateDescr() (поле soft_ver полученной структуры).

В версии 2.0.0.0 была проблема, что при некорректном закрытия соединения (когда крейту не пришел пакет завершения соединения по TCP, либо если не было физически связи с крейтом во время закрытия соединения, либо зависание/выключение питания ПК без завершения работы, либо еще по каким причинам...) создать новое соединение прошивка крейта не позволяла, соответственно без снятия питания невозможно снова установить соединение. В версиях 3.0.0.x эта проблема должна быть исправлена, но не уверен, что она шьется штатно в крейты (я к этой разработке не отношусь, точно не могу сказать).  Обновить ее можно, но только через интерфейс USB.

Если у Вас именно эта проблема, то перезапуск службы тут не поможет (если соединения с крейтом нет, то значит со стороны службы оно закрыто, проблема в том что крейт считает, что оно не закрыто).
Про то, что служба ltrd не запустилась после LTR_ServerRestart() странно, по какой-то причине перезапуск не отрабтал, но тут нужно знать какая версия службы, какая ОС и желательно системный журнал с сообщениями, относящимися к службе ltrd (например через  journalctl | grep ltrd  , если дистрибутив использует systemd (большинство нынешних)), как ставилась служба - из пакетов или Вы сами собирали?
Про su не совсем понял, про что речь - программе, использующей функции ltrapi не требуются права администратора, она может работать от обычного пользователя.
Запуск/останов службы системными средствами Linux как правило требует специальный прав  (например sudo systemctl start ltrd.service).

Контакты

Адрес: 117105, Москва, Варшавское шоссе, д. 5, корп. 4, стр. 2

Многоканальный телефон:
+7 (495) 785-95-25

Отдел продаж: sale@lcard.ru
Техническая поддержка: support@lcard.ru

Время работы: с 9-00 до 19-00 мск