Форум TRACE MODE: техническая поддержка Послать новую тему / Post New Topic  Послать ответ / Post A Reply
мой профиль / my profile авторизация / login | регистрация / register | поиск / search | часто задаваемые вопросы / faq | начало / forum home

  Следующая старая тема / next oldest topic   Следующая новая тема / next newest topic
» Форум TRACE MODE: техническая поддержка » ТЕХНИЧЕСКАЯ ПОДДЕРЖКА / TECHNICAL SUPPORT TRACE MODE 7 » TRACE MODE 7 бесплатная базовая версия / TRACE MODE 7 free basic version » RWH TM7 Linux Red Os

   
Автор / Author Тема / Topic: RWH TM7 Linux Red Os
Nikituny
Junior Member / Новичок
Участник № / Member № 9588


Icon 1 отправлено / posted      Профиль для / Profile for Nikituny           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Здравствуйте, такой вопрос, необходимо создать внешний драйвер в системе Linux, в справке для разработки и подключения драйвера к МРВ используется создаваемая библиотека rwh.dll, как должна называться и как будет подключаться библиотека в линуксе? (и нужно ли вместе с этой библиотекой файлы с кодом помещать в папку с проектом МРВ). Драйвер самый обычный, просто прямо в коде привязать допустим v = 5, и вывести 5 в МРВ.
Сообщения / Posts 16 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Nico
Forum Professor / Завсегдатай форума
Участник № / Member № 5342


Icon 1 отправлено / posted      Профиль для / Profile for Nico           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
- должна лежать где исполняемые файлы
- имя файла librwh_64.so
- данный вид драйвера должен использоваться
для быстрого обмена с устройством (без задержек );
- не желательно использовать внешние библиотеки
- он вызывается из основного потока TM и блокирует
его до возврата управления
- для написания драйверов обмена с устройством по
сети или последовательному интерфейсы необходимо
пользоваться t41/t12

Сообщения / Posts 808 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Nikituny
Junior Member / Новичок
Участник № / Member № 9588


Icon 1 отправлено / posted      Профиль для / Profile for Nikituny           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Спасибо
Сообщения / Posts 16 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Nikituny
Junior Member / Новичок
Участник № / Member № 9588


Icon 1 отправлено / posted      Профиль для / Profile for Nikituny           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
#define RWHIS

#include "rwh_64.h"

#include <memory.h>


unsigned do_val[256];
float ao_val[256];
unsigned opt_val[256];

/*
Вызывается на старте
0 - ok
> 0 error
*/
int rwh_start()
{
memset(do_val, 0, sizeof(int) * 256);
memset(ao_val, 0, sizeof(float) * 256);
memset(opt_val, 0, sizeof(int) * 256);

return(-1);
}

/*
Вызывается на стопе
*/
void rwh_stop()
{
}

/*
Вызывается на старте
после вызова rwh_start()
для
типов
1.15 IN, 1.31 OUT
2.15 IN 2,31 OUT если канал FLOAT
*/
void rwh_aio_init(IA &ia)
{
}

/*
Вызывается на старте
после вызова rwh_start()
2.15 IN 2,31 OUT если канал HEX32
*/
void rwh_dio_init(IA &ia)
{
}
/*
далее для всех фукций код возврата =
0 - успешно недостоверность сбрасывается
> 0 - ошибка недостоверность устанавливается

<type>v - значение из 9 атрибута для записи
<type>v - считанное значение для передачи во вход канала
*/

/*
тип 2.15, 2.31
получается в IDE из AI_RWH
*/
int rwh_aio_write_i32(IA &ia,int v)
{
v = 5;
ao_val[ia.c[2]] = v;
return(0);
}

/*
тип 2.15
получается в IDE из DI_RWH залинкованного на FLOAT INPUT
*/
int rwh_aio_read_i32(IA &ia,int &v)
{
v= 6;

return(0);
}

/*
тип 2.31
получается в IDE из DO_RWH залинкованного на FLOAT INPUT
*/
int rwh_aio_read_i32_readback(IA& ia, int& v)
{
v = 7;
return(0);
}

Еще один вопрос, может я делаю что то не так, мне просто в МРВ нужно вывести значения привязанный к V, чтобы разобраться как это работает, в МРВ выводятся нули и все, скопировал библиотеку в папку с проектом, выводит нули  -
 -
 -

Сообщения / Posts 16 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Nikituny
Junior Member / Новичок
Участник № / Member № 9588


Icon 1 отправлено / posted      Профиль для / Profile for Nikituny           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
 -  -  -
Сообщения / Posts 16 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Nikituny
Junior Member / Новичок
Участник № / Member № 9588


Icon 1 отправлено / posted      Профиль для / Profile for Nikituny           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
https://disk.yandex.ru/d/zzJXPIEETG0b4A
https://disk.yandex.ru/i/OieKtPI1NHXYFQ
https://disk.yandex.ru/d/xuaGouXosA6O8A

Сообщения / Posts 16 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Nico
Forum Professor / Завсегдатай форума
Участник № / Member № 5342


Icon 1 отправлено / posted      Профиль для / Profile for Nico           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
ответ на заданный вами вопрос был таким
- должна лежать где исполняемые файлы
- имя файла librwh_64.so

Сообщения / Posts 808 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
quote:
Отправитель / Originally posted by Nikituny:

Еще один вопрос, может я делаю что то не так, мне просто в МРВ нужно вывести значения привязанный к V, чтобы разобраться как это работает, в МРВ выводятся нули и все, скопировал библиотеку в папку с проектом, выводит нули

Здравствуйте.
Пользователь Nico дал ответы.
Библиотеки поместите в папку Среды Разработки (Монитора Реального Времени).
Проверьте название файлов библиотек.

Сообщения / Posts 17114 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Nikituny
Junior Member / Новичок
Участник № / Member № 9588


Icon 1 отправлено / posted      Профиль для / Profile for Nikituny           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Меня интересовало, может есть какие то особенности при написании драйвера, или при его вызове в ТМ, может тип переменной указать надо и тд, или ai указать, или же базовый адрес поменять, может сам код драйвера не рабочий? вот что меня интересовало. На предыдущий вопрос да, я получил ответ
Сообщения / Posts 16 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Nico
Forum Professor / Завсегдатай форума
Участник № / Member № 5342


Icon 1 отправлено / posted      Профиль для / Profile for Nico           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
- код рабочий( поскольку кода пара строк )
- если правильно скомпилировано и загрузился
то функции будут дергаться

Сообщения / Posts 808 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Nikituny
Junior Member / Новичок
Участник № / Member № 9588


Icon 1 отправлено / posted      Профиль для / Profile for Nikituny           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Извините конечно меня за мою глупость, но может есть какие то особенности в настройке каналов, ну вот я создал AI_RWH_1, ничего в нем не менял, перенес его в канал где находится экран, привязал к аргументу для вывода на экран, но ничего не выводится, может куда то надо подавать значение при работе с МРВ, что бы AI_RWH_1 активировался, или же нужно изменить тип аргумента, или настроить создание базового адреса, компилирую в QT creator
Сообщения / Posts 16 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Nikituny
Junior Member / Новичок
Участник № / Member № 9588


Icon 1 отправлено / posted      Профиль для / Profile for Nikituny           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Так, я понял в чем был мой косяк, теперь более точный вопрос, я в QT creator создал свой проект и загрузил туда код драйвера из примера, запустил его, у меня скомпилировалась библиотека, ее я загрузил в папку МРВ, но при запуске МРВ вылетает
QT -= gui

TEMPLATE = lib
DEFINES += RWH_64_LIBRARY

CONFIG += c++17

# You can make your code fail to compile if it uses deprecated APIs.
# In order to do so, uncomment the following line.
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0

SOURCES += \
rwh_64.cpp

HEADERS += \
rwh_64.h

# Default rules for deployment.
unix {
target.path = /usr/lib
}
!isEmpty(target.path): INSTALLS += target
Вот код .pro у меня подозрения что в правилах для развертывания ошибка, что исправить нужно, подскажите пожалуйста, последний вопрос( проект создал в виндовс, чтобы легче ориентироваться, и загружаю тут же)

Сообщения / Posts 16 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Nikituny
Junior Member / Новичок
Участник № / Member № 9588


Icon 1 отправлено / posted      Профиль для / Profile for Nikituny           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Не правильно задал вопрос, если разбираетесь в Qt подскажите как правильно создать библиотеку, пожет пути какие то указать надо в .pro или в принципе надо как то по особенному настроить Creator, может есть руководство, или что-то еще на эту тему
Сообщения / Posts 16 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Nico
Forum Professor / Завсегдатай форума
Участник № / Member № 5342


Icon 1 отправлено / posted      Профиль для / Profile for Nico           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
- (повторно)не желательно использовать внешние
библиотеки
- Qt creator это оболочка вокруг gcc
- конфигурирование оболочек, каких много
не относиться к вопросам о TM

Сообщения / Posts 808 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
   

Quick Reply
Сообщение / Message:

HTML код не разрешен. / HTML is not enabled.
UBB код разрешен. / UBB Code is enabled.

Значки Graemlins / Instant Graemlins
   


Послать новую тему / Post New Topic  Послать ответ / Post A Reply Закрыть тему / Close Topic   Feature Topic   Переместить топик / Move Topic   Удалить топик / Delete Topic Следующая старая тема / next oldest topic   Следующая новая тема / next newest topic
 - Printer-friendly view of this topic
Перейти к / Hop To


Новости АСУ ТП / News | SCADA / HMI | Обучение / Trainings | Свяжитесь с нами / Contact Us



Powered by Infopop Corporation
UBB.classic™ 6.7.2