реклама на сайте
подробности

 
 
> Беспроводная передача данных
Herz
сообщение Mar 15 2018, 19:58
Сообщение #1


Гуру
******

Группа: Модераторы
Сообщений: 10 983
Регистрация: 23-11-05
Пользователь №: 11 287



Коллеги, помогите с идеями. Задача такова. Есть удалённый компьютер, на котором крутится программа, собирающая информацию с датчиков и выдающая поток данных на COM-порт.
Требуется организовать передачу этих данных на центральный компьютер, который мог бы получать поток в квази-реальном времени. Ну, то есть, как если бы они были связаны шнурком RS-232 физически. В удалённом месте есть возможность подключить только USB-net stick или, скажем, GPRS-модуль. Но никаких драйверов писать нет возможности, особенно под USB.
Подскажите, каким образом можно решить такое с минимальной морокой?

Да, удаление - несколько километров в условиях города. То есть, радиомодули не внушают надёжности. Предпочтительнее всего интернет.
Go to the top of the page
 
+Quote Post
2 страниц V   1 2 >  
Start new topic
Ответов (1 - 24)
rx3apf
сообщение Mar 15 2018, 20:46
Сообщение #2


Гуру
******

Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047



Может, я чего не понял, но...

Taltech TCP-com, на "удаленной" стороне клиент с виртуальным COM, на который программа шлет данные. С другой стороны он же (TCP-com) в режиме сервера, можно на виртуальный или реальный порт, или что и как вообще предполагается делать с принятым потоком ?

Да, и что за машина с какой ОС стоит на "удаленной" стороне ? Если не с win, то предложенное решение отпадает, само собой...

Сообщение отредактировал rx3apf - Mar 15 2018, 20:47
Go to the top of the page
 
+Quote Post
Leka
сообщение Mar 15 2018, 21:33
Сообщение #3


Профессионал
*****

Группа: Участник
Сообщений: 1 075
Регистрация: 30-09-05
Пользователь №: 9 118



Цитата(Herz @ Mar 15 2018, 22:58) *
Есть удалённый компьютер, на котором крутится программа, собирающая информацию с датчиков и выдающая поток данных на COM-порт.

А поток информации какой? Допустимая средняя скорость, задержки?
Тоже интересует такая задача, M2M GPRS телематика стоит ~~100руб/месяц в РФ.
Но пока не понял, можно ли организовать такой режим на обычных GPRS модулях, те без покупки готовых устройств.

Сообщение отредактировал Leka - Mar 15 2018, 21:33
Go to the top of the page
 
+Quote Post
Herz
сообщение Mar 15 2018, 21:39
Сообщение #4


Гуру
******

Группа: Модераторы
Сообщений: 10 983
Регистрация: 23-11-05
Пользователь №: 11 287



На удалённой машине Win7, поток относительно медленный: samle rate 8Hz, baud rate 115200. На центральном компьютере предполагается принять данные, обработать в МАТЛАБ, и выдать на монитор картинку. Задержка в несколько секунд допустима. Посмотрю на Taltech, спасибо.
Go to the top of the page
 
+Quote Post
Leka
сообщение Mar 15 2018, 21:41
Сообщение #5


Профессионал
*****

Группа: Участник
Сообщений: 1 075
Регистрация: 30-09-05
Пользователь №: 9 118



Посмотрел, M2M услуга - только на страничке для корпоративных клиентов - не подходит для частного разового устройства?
(мне нужно мобильное решение)

Сообщение отредактировал Leka - Mar 15 2018, 21:55
Go to the top of the page
 
+Quote Post
_pv
сообщение Mar 15 2018, 23:41
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 2 563
Регистрация: 8-04-05
Из: Nsk
Пользователь №: 3 954



как-то пробрасывал порты через сеть если не ошибаюсь с помощью com0com. но там надо было именно чужой программе устройство пробросить.
а если в свою программу обработки в матлабе, то можно наверное вообще тупо писать в файл на удалённом ПК чуть ли не средствами ОС.
copy COM1 somefile поди до сих пор работает и в win7
а из матлаба потом этот файл по сети как угодно забирать, хоть по http, и отображать.
ну а уж как лучше интернет на удалённом компе организовать в условиях города вам там поди виднее.
Go to the top of the page
 
+Quote Post
rx3apf
сообщение Mar 16 2018, 07:28
Сообщение #7


Гуру
******

Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047



Цитата(Herz @ Mar 16 2018, 00:39) *
Посмотрю на Taltech, спасибо.

Если не ошибаюсь, там используется создание виртуальных портов от Eltima. Софтина с определенными ограничениями, но все решаемо. Ну, а на приемной стороне можно принять чем угодно, хоть терминалом с поддержкой TCP, хоть вообще на vbs с сетевым компонентом за пару часов накропать. Ну или опять же в порт перенаправить.
Go to the top of the page
 
+Quote Post
Herz
сообщение Mar 16 2018, 10:09
Сообщение #8


Гуру
******

Группа: Модераторы
Сообщений: 10 983
Регистрация: 23-11-05
Пользователь №: 11 287



Цитата(_pv @ Mar 16 2018, 01:41) *
как-то пробрасывал порты через сеть если не ошибаюсь с помощью com0com. но там надо было именно чужой программе устройство пробросить.
а если в свою программу обработки в матлабе, то можно наверное вообще тупо писать в файл на удалённом ПК чуть ли не средствами ОС.
copy COM1 somefile поди до сих пор работает и в win7
а из матлаба потом этот файл по сети как угодно забирать, хоть по http, и отображать.
ну а уж как лучше интернет на удалённом компе организовать в условиях города вам там поди виднее.

На удалённом компьютере сейчас программа и так пишет данные в таблицу, csv-file, помимо выдачи потока на порт. В USB вставлен модем (USB-net stick), при помощи которого есть доступ к компьютеру по интернету через TeamViewer. Через него же я забираю готовые файлы, останавливая запись и отрывая новый файл. Это могу делать раз в сутки или неделю. Но теперь нужно получать в реал-тайм, или почти в реал-тайм. Обработку в любом случае делать уже в центральном, на удалённом МАТЛАБ ставить громоздко, да и ни к чему. Вопрос как раз в том, чем передать данные по интернету, я в веб-сервисах полный ноль.
Цитата(rx3apf @ Mar 16 2018, 09:28) *
Если не ошибаюсь, там используется создание виртуальных портов от Eltima. Софтина с определенными ограничениями, но все решаемо. Ну, а на приемной стороне можно принять чем угодно, хоть терминалом с поддержкой TCP, хоть вообще на vbs с сетевым компонентом за пару часов накропать. Ну или опять же в порт перенаправить.

Буду разбираться. Вся проблема в том, что для меня эти сетевые компоненты, TCP и vbs - в диковинку. biggrin.gif Нужно что-то готовое по максимуму.
Go to the top of the page
 
+Quote Post
rx3apf
сообщение Mar 16 2018, 10:17
Сообщение #9


Гуру
******

Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047



Для меня, в общем-то, тоже (тридцать лет прекрасно обходился без ЯВУ). Но быстренько накропать что-то суррогатное из нескольких строчек basic может кто угодно, ничего там сложного нет. А, оказалось, вещь-то (vbs) удобная и и полезная, если нужно быстренько соорудить какую-нибудь консольную утилиту.
Go to the top of the page
 
+Quote Post
jcxz
сообщение Mar 16 2018, 10:34
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(Herz @ Mar 15 2018, 21:58) *
Коллеги, помогите с идеями. Задача такова. Есть удалённый компьютер, на котором крутится программа, собирающая информацию с датчиков и выдающая поток данных на COM-порт.
Требуется организовать передачу этих данных на центральный компьютер,
...
Предпочтительнее всего интернет.

Уже много лет для решения подобных задач (преобразования интерфейса виртуального COM-порта в TCP-сокет) использую "Tibbo VSP Manager".
На прошлой работе он широко использовался и в системах АСКУЭ и АСДУЭ в коммерческих проектах.
По этой ссылке http://tibbo.com/ru/soi/software.html
Только там смотреть и ставить нужно именно только "VSP Manager". Остальное - не нужно.
Пример конфигурирования для создания порта в пассивном режиме:
Прикрепленное изображение

Для активного режима - всё то же самое, только "Routing mode" == "Client" и нужно задать "Destination" вместо "Listening port":
Прикрепленное изображение

Теперь при открытии порта COM51 будет установлено соединение COM51<->COM50.

Цитата(Herz @ Mar 16 2018, 12:09) *
Буду разбираться. Вся проблема в том, что для меня эти сетевые компоненты, TCP и vbs - в диковинку. biggrin.gif Нужно что-то готовое по максимуму.

Tibbo очень легко сконфигурить: только нужно определиться в каком режиме порт нужен - пассивный (при открытии COM-порта открывается TCP-порт в режиме listening и ждёт входящего соединения с удалённой стороны) или активный (при открытии такого COM-порта инициируется исходящее активное TCP-соединение на удалённый TCP-порт).
Протокола передачи в сокете там никакого нет, данные передаются "как есть", так что связать можно не только два приложения, работающие через интерфейс COM-порта, но и приложение работающее через COM-порт с приложением работающим через TCP-порт.
Есть ограничение для портов в пассивном режиме: они могут принимать только одно входящее соединение.

PS: Для VSP Manager кряков никаких не нужно - он и так работает без ограничений. sm.gif
Go to the top of the page
 
+Quote Post
rx3apf
сообщение Mar 16 2018, 10:38
Сообщение #11


Гуру
******

Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047



А Tibbo в режиме UDP понимает, когда исходящий порт у отправителя меняется ? А то у софтины от Taltech с этим проблема - если на удаленном конце сотовый модем в режиме UDP и интервал между посылками достаточно велик, то порт может смениться, а софтина этого не понимает, и продолжает отправлять на старый порт, и приходится перезапускать. В TCP все хорошо, а вот в UDP - такая неприятность...
Go to the top of the page
 
+Quote Post
jcxz
сообщение Mar 16 2018, 10:45
Сообщение #12


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(rx3apf @ Mar 16 2018, 12:38) *
А Tibbo в режиме UDP понимает, когда исходящий порт у отправителя меняется ?

Никогда не использовал её в UDP. Зачем?
Go to the top of the page
 
+Quote Post
rx3apf
сообщение Mar 16 2018, 11:54
Сообщение #13


Гуру
******

Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047



В системах сбора данных с множеством абонентов и одним сервером. TCP там совершенно не подходит. Ладно, при случае попробую, интересно...
Go to the top of the page
 
+Quote Post
_pv
сообщение Mar 16 2018, 14:43
Сообщение #14


Гуру
******

Группа: Свой
Сообщений: 2 563
Регистрация: 8-04-05
Из: Nsk
Пользователь №: 3 954



Цитата(Herz @ Mar 16 2018, 17:09) *
На удалённом компьютере сейчас программа и так пишет данные в таблицу, csv-file, помимо выдачи потока на порт.

можно просто запустить какой-нибудь miniweb в директории с csv файлом.
а со стороны матлаба забирать этот файл частично по http, последние n байт.
если матлаб сам не умеет куски файла забирать, он может запускать какой-нибудь wget который будет просто докачивать недостающее, а csv файл пусть пишется непрерывно.
ну а самый простой наверное способ это какой-нибудь dropbox (google/yandex диск/...) на обоих компах установить, но вроде бы достаточно умный должен быть чтобы файл не целиком пересылать каждый раз если ему в конец что-то дописали.
на раз в несколько секунд поди хватит.
ну или может просто расшарить директорию с csv файлом через smb, и подключить на комп с матлабом как сетевой диск.
Go to the top of the page
 
+Quote Post
Ruslan1
сообщение Mar 16 2018, 15:09
Сообщение #15


Гуру
******

Группа: Свой
Сообщений: 2 360
Регистрация: 6-03-06
Из: Кишинев
Пользователь №: 15 025



Есть несколько проектов, где на объектах стоит GSM модем, который имеет железячный COM-порт.
Этот порт виден в интернете по IP, и к нему возможен удаленный доступ как к виртуальному порту.
На центральном сервере стоит своя программа (писал в си++билдере), которая может достучаться до данного виртуального порта, ну а дальше работает с этим портом как с локальным.

Утилит и софта, как работать с виртуальным портом со стороны сервера- много, нужно только решить как оптимально этот порт организовать на удаленном устройстве. Например, GSM модем или COM/TCP или COM/DSL коробочка, да мало ли что.

В своем софте использовал Indy компоненты для виртуального порта, так как были какие-то глюки в сетевых компонентах от привычного AsyncProfessional.
Go to the top of the page
 
+Quote Post
x736C
сообщение Mar 16 2018, 17:44
Сообщение #16


Профессионал
*****

Группа: Участник
Сообщений: 1 273
Регистрация: 3-03-06
Пользователь №: 14 942



Цитата(Herz @ Mar 16 2018, 13:09) *
В USB вставлен модем (USB-net stick), при помощи которого есть доступ к компьютеру по интернету через TeamViewer. Через него же я забираю готовые файлы, останавливая запись и отрывая новый файл.

Может, не в тему, но у TeamViewer есть режим подключения VPN, формирующий общую локалку.
Я через него поднимал соединение с JTAG-сервером и прошивал плисины, но использовался UDP или что-то вроде того. В Вашем случае можно, как тут советовали, с помощью специальных транслирующих программ. Правда, это всё костыли, требующие иногда переподключения.
Go to the top of the page
 
+Quote Post
Herz
сообщение Mar 16 2018, 20:10
Сообщение #17


Гуру
******

Группа: Модераторы
Сообщений: 10 983
Регистрация: 23-11-05
Пользователь №: 11 287



Спасибо, есть пища для подумать.

Цитата(_pv @ Mar 16 2018, 16:43) *
ну или может просто расшарить директорию с csv файлом через smb, и подключить на комп с матлабом как сетевой диск.

Интересная мысль, как-то не приходила в голову. Стоит попробовать.
Go to the top of the page
 
+Quote Post
Leka
сообщение Mar 16 2018, 21:22
Сообщение #18


Профессионал
*****

Группа: Участник
Сообщений: 1 075
Регистрация: 30-09-05
Пользователь №: 9 118



В этой ветке спрашивать, или новую создать?
Хочется напрямую связать по GPRS пару GSM модулей, например SIM800L (и тп).
Это возможно в сети одного провайдера?
Попробовал перевести модуль в режим сервера (по документации), отвечает ОК, показывает свой IP (локальный ?),
но ping от компа не проходит. Попробовать со вторым модулем?
Знаний сетевых протоколов и тп у меня нет, куда копать?
Go to the top of the page
 
+Quote Post
rx3apf
сообщение Mar 16 2018, 21:27
Сообщение #19


Гуру
******

Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047



Без отдельного сервера с "белым" ip (хоть бы даже динамическим) фокус не получится. Или нужно для GPRS-сервера покупать "белый" ip.
Go to the top of the page
 
+Quote Post
Leka
сообщение Mar 17 2018, 20:56
Сообщение #20


Профессионал
*****

Группа: Участник
Сообщений: 1 075
Регистрация: 30-09-05
Пользователь №: 9 118



Купил "белый" ip (динамический),
ping с компа прошел, зашел с компа по telnet - модем увидел подключение,
а дальше зависло все, кроме модема - что-то не так сделал, наверно, надо разбираться с протоколами.
Go to the top of the page
 
+Quote Post
Herz
сообщение Mar 19 2018, 13:56
Сообщение #21


Гуру
******

Группа: Модераторы
Сообщений: 10 983
Регистрация: 23-11-05
Пользователь №: 11 287



Гугление показало, что проблема, конечно, не нова и решения имеются. Как правило, платные, вроде того же Taltech, Perle, Eltima и многих других...
Даже термин такой, оказывается есть: "Serial Tunneling".
Но, с одной стороны, несколько избыточные, ведь мне не нужно физическое подключение к порту,
с другой - не все "перехватывают" данные с порта, который уже открыт другой программой (выдают ошибку и - капут!),
ну, а с третьей - хотелось бы подешевле... biggrin.gif
Цитата(jcxz @ Mar 16 2018, 12:34) *
Уже много лет для решения подобных задач (преобразования интерфейса виртуального COM-порта в TCP-сокет) использую "Tibbo VSP Manager".

Спасибо, попробовал, в локалке работает, но с интернетом не получилось. Как-то ведь надо указать клиенту не только IP шлюза, но и конкретный хост. А то ведь под одним IP несколько устройств... Как это делается? И ещё вопрос. Вот создаёт VSP Manager виртуальный порт, если я туда шлю данные из гипертерминала, нет проблем. А как его связать с реальным портом?
Go to the top of the page
 
+Quote Post
jcxz
сообщение Mar 19 2018, 15:21
Сообщение #22


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(Herz @ Mar 19 2018, 15:56) *
Спасибо, попробовал, в локалке работает, но с интернетом не получилось. Как-то ведь надо указать клиенту не только IP шлюза, но и конкретный хост. А то ведь под одним IP несколько устройств... Как это делается?

Вы имеете в виду, что устройство у Вас в локальной сети за роутером (шлюзом)? Тогда нужно пробросить TCP-порт с внешнего интерфейса роутера во внутреннюю сеть роутера. Сколько устройств - столько и портов пробросить. Как это делается - см. доку на роутер, у всех по разному. У роутеров MikroTik например эта операция называется "netmap".

Цитата(Herz @ Mar 19 2018, 15:56) *
И ещё вопрос. Вот создаёт VSP Manager виртуальный порт, если я туда шлю данные из гипертерминала, нет проблем. А как его связать с реальным портом?

Tibbo только делает преобразование виртуальный_COM <-> TCP-порт.
Для преобразования реальный_COM <-> TCP-порт нужно юзать другие тулзы. Их тоже много разных, платных в основном. Но есть и фриварные.
Я например пользовал эту: ip_com_v3_0_0.exe (не помню где брал, но в инфо указано "IP->Com is Copyright ©2002, Stephen Hill").
Go to the top of the page
 
+Quote Post
Herz
сообщение Mar 19 2018, 15:33
Сообщение #23


Гуру
******

Группа: Модераторы
Сообщений: 10 983
Регистрация: 23-11-05
Пользователь №: 11 287



Ясно, спасибо. Буду копать дальше.
Go to the top of the page
 
+Quote Post
Leka
сообщение Mar 22 2018, 23:16
Сообщение #24


Профессионал
*****

Группа: Участник
Сообщений: 1 075
Регистрация: 30-09-05
Пользователь №: 9 118



Цитата(Leka @ Mar 17 2018, 00:22) *
Хочется напрямую связать по GPRS пару GSM модулей, например SIM800L (и тп).

Получилось. Но удобные телематические тарифы (с округлением сессии до 1КБ) почему-то исчезли из продажи...
Go to the top of the page
 
+Quote Post
k155la3
сообщение Mar 23 2018, 15:10
Сообщение #25


Профессионал
*****

Группа: Свой
Сообщений: 1 123
Регистрация: 8-03-09
Из: Днепр
Пользователь №: 45 848



Цитата(Leka @ Mar 23 2018, 02:16) *
Получилось. Но удобные телематические тарифы (с округлением сессии до 1КБ) почему-то исчезли из продажи...

Удобные тарифы и услуги для таких задач предоставляются провайдерами для очень-корпоративных клиентов в виде VPN.
Нужен сервер с белым IP, на котором (или через который) Вы можете запустить свое host-сервер ПО.
(это будет "посредник" между Вашими GPRS точками.)
В сети есть сервисы, которые так или иначе предоставляют подобные возможности (broker).
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 04:42
Рейтинг@Mail.ru


Страница сгенерированна за 0.01629 секунд с 7
ELECTRONIX ©2004-2016