Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Редкая передача данных - что выбрать CDS или GPRS?
Форум разработчиков электроники ELECTRONIX.ru > Интерфейсы > Форумы по интерфейсам > Сотовая связь и ее приложения
ThePPK
Здравствуйте!

Хотел бы просить совета от форумчан-практиков.

Задача такая - в степи стоит шкаф (температура от -30 (зимой) до +40 (в тени летом) и +60 (на солнце летом)). Питание - от аккумулятора 2 х 130 Ач = 260 Ач (зимой, очевидно, останется только 40-50Ач) и солнечных батарей. Уровень сигнала очень плохой (на земле - 108 dBm) - думаем располагать пассиную антенну типа http://www.electronshik.ru/card/gsm-antenn...a-akl-900-60453 на шесте метров в 10-15 высотой.

Шкаф должен собирать данные с метеодатчиков и слать их раз в 15 минут на сервер - не больше 100 байт. Какова оптимальная стратегия передачи данных:
1. передавать по GPRS или CDS?
2. выключать ли целиком модем / делать ли отключение GPRS несущей на время простоя?

Судя по форуму (в т.ч. http://electronix.ru/forum/index.php?showtopic=91897) выключать модем не стоит (большие энергозатраты на включение, может полететь sim-карта). Будет ли вообще работать sim-карта при -30? В форуме рассматривалась возможность ее подогрева.

Еще доп. вопрос - стоит ли использовать smart-модемы типа http://www.gsm-gate.ru/product/gsm-modem-irz-tc65-smart/ для более гибкого управления передачей и сбором данных с использованием Java. Стоит ли принимать во внимание доп. потребление энергии более мощным процессором по сравнению с обычным модемом или на фоне потребления при передаче это будет просто шумом?

Большое спасибо!
molecul
Цитата(ThePPK @ Nov 21 2011, 10:10) *
Здравствуйте!

Хотел бы просить совета от форумчан-практиков.

Задача такая - в степи стоит шкаф (температура от -30 (зимой) до +40 (в тени летом) и +60 (на солнце летом)). Питание - от аккумулятора 2 х 130 Ач = 260 Ач (зимой, очевидно, останется только 40-50Ач) и солнечных батарей. Уровень сигнала очень плохой (на земле - 108 dBm) - думаем располагать пассиную антенну типа http://www.electronshik.ru/card/gsm-antenn...a-akl-900-60453 на шесте метров в 10-15 высотой.

Шкаф должен собирать данные с метеодатчиков и слать их раз в 15 минут на сервер - не больше 100 байт. Какова оптимальная стратегия передачи данных:
1. передавать по GPRS или CDS?
2. выключать ли целиком модем / делать ли отключение GPRS несущей на время простоя?

Судя по форуму (в т.ч. http://electronix.ru/forum/index.php?showtopic=91897) выключать модем не стоит (большие энергозатраты на включение, может полететь sim-карта). Будет ли вообще работать sim-карта при -30? В форуме рассматривалась возможность ее подогрева.

Еще доп. вопрос - стоит ли использовать smart-модемы типа http://www.gsm-gate.ru/product/gsm-modem-irz-tc65-smart/ для более гибкого управления передачей и сбором данных с использованием Java. Стоит ли принимать во внимание доп. потребление энергии более мощным процессором по сравнению с обычным модемом или на фоне потребления при передаче это будет просто шумом?

Большое спасибо!

Рекомендации такие:
1. Раз в 15 минут - это не редкая передача данных, а довольно таки частая для GSM канала. Поэтому включать-выключать модуль действительно будет слишком затратно по энергосбережению. Проще ввести модуль в режим пониженного энергопотребления (такой почти у всех современных модулей есть).
2. CSD или GPRS - я бы выбрал GPRS, поскольку для передачи 100 байт по CSD потребуется около минуты работы модуля на максимальной мощности (с учетом уровня сигнала), а по GPRS это займет от силы 15-20 секунд, даже если сессию заново открывать.
3. SIM карты лучше вообще не использовать, а применять чип-симы, они от -40 прекрасно работают, не окисляются и счетчика перезагрузок там нет. Если же все-таки SIM карта, то подогрев делается навесными резисторами над SIM холдером.
4. Смарт-модем по ссылке, если я правильно понял - это TC65 с поддержкой Java и в корпусе с разъемом, только и всего. Если не смущает достаточно высокая цена и наличие SIM холдеров (см. п.3) то можно и его использовать. Если смущает, можно сэкономить раза в 3-4 как минимум.
Russky
Извиняюсь что влезаю, но возникли пару вопросов:

1. Что это за счетчик перезагрузок в сим карте? Поясните пожалуйста.

2. В CSD режиме, после установки связи, в отличии от gprs я буду иметь гарантированно 9600 бот, и эти данные будут бежать по голосовому каналу вместо голоса?

Спасибо!

А если по теме, то мне кажется было бы логичней передавать не по 100 байт (для этого есть СМС), а пакетировать сразу по килобайту и передавать этот килобайт, как наберется, т.е. не раз в 15 минут, а раз в два-три часа.
Тогда тут речь конечно идет о gprs.
Baser
При выборе схемы работы и типа подключения может быть важно разобраться с возможными тарифными планами местных ГСМ операторов.
Сейчас бывают очень разнообразные тарифные планы.
Напр. бывает оплата GPRS по объему данных (с различными округлениями при разрыве связи и платой за каждое подключение),
бывает фиксированная плата в сутки (месяц).
CSD бывает плата поминутно, как за голосовой звонок, бывают договоры с оператором с другими условиями.
Узнайте и прикиньте, что вам выгоднее.

По аккумуляторам: какие у вас - свинцово-кислотные гелевые или что-то еще?
В шкафу много другого электропотребляющего оборудования?
Может оказаться, что при ваших ампер-часах, заморачиваться с минимизацией потребления ГСМ блока нету смысла.
Потребление остальной аппаратуры и саморазряд может будет все перевешивать.

э.ы. передавать регулярно данные по SMS - денег не напасешься. Да и гарантированность доставки данных с SMS самая низкая,
проще говоря - никакая.
molecul
Цитата(Russky @ Nov 21 2011, 13:44) *
1. Что это за счетчик перезагрузок в сим карте? Поясните пожалуйста.

Вообще-то он называется счетчик перерегистраций в сети. Обычно имеет значение 10000, соответственно после 10 тыс. включений (а для m2m это не так и много) симка требует замены. В чип-симах этот счесчик отключен.
Цитата(Russky @ Nov 21 2011, 13:44) *
2. В CSD режиме, после установки связи, в отличии от gprs я буду иметь гарантированно 9600 бот, и эти данные будут бежать по голосовому каналу вместо голоса?

Нет, гарантировано будет только соединение, а скорость может быть существенно ниже - и 4800 и 2400 и меньше.
Цитата(Russky @ Nov 21 2011, 13:44) *
А если по теме, то мне кажется было бы логичней передавать не по 100 байт (для этого есть СМС), а пакетировать сразу по килобайту и передавать этот килобайт, как наберется, т.е. не раз в 15 минут, а раз в два-три часа.
Тогда тут речь конечно идет о gprs.

Если речь об онлайн-мониторинге погоды (а похоже это именно такое приложение), то задержки недопустимы.


Цитата(Baser @ Nov 21 2011, 14:40) *
э.ы. передавать регулярно данные по SMS - денег не напасешься. Да и гарантированность доставки данных с SMS самая низкая,
проще говоря - никакая.

Тут тоже все индивидуально, есть тарифные планы где смс стоят по 1 копейке. А гарантированность можно обеспечить подтверждением о приеме, причем на уровне принимающего сервера, а не функции сети - подтвержения о доставке. Все равно и по GPRS подтверждение необходимо, и вероятность потери пакета в GPRS никак не меньше вероятности недоставки SMS.
Baser
Цитата(molecul @ Nov 21 2011, 13:13) *
Тут тоже все индивидуально, есть тарифные планы где смс стоят по 1 копейке. А гарантированность можно обеспечить подтверждением о приеме, причем на уровне принимающего сервера, а не функции сети - подтвержения о доставке. Все равно и по GPRS подтверждение необходимо, и вероятность потери пакета в GPRS никак не меньше вероятности недоставки SMS.

Насчет стоимости согласен, такое может быть.
А насчет вероятности недоставки SMS, все же с этим хуже, чем с GRPS.
В обеих случаях сервис предоставляется по остаточному принципу (если без спец.договора с оператором).
Но при пиковой загрузке сети при GPRS просто не будет связи с сервером, это логически просто отследить.
В случае SMS они могут преспокойно уходить и складироваться в SMS-центре и лежать там пока не отправятся или не выйдет время жизни.
Обычно это сутки, если не ошибаюсь. А на другой день вдруг придут всей пачкой адресату.
Правда такое я у нас обычно наблюдаю только на Новый год. А вот задержки в минуты и десятки минут случаются чаще.
ThePPK
Огромное спасибо всем за ответы!

Судя по всему, лучше использовать GRPS, модем выключать не надо.

Цитата(molecul @ Nov 21 2011, 15:13) *
Если речь об онлайн-мониторинге погоды (а похоже это именно такое приложение), то задержки недопустимы.

Абсолютно верно, на самом деле, даже 15 минут - это очень редко для решения задачи. Скорее всего, будем делать раз в 5 минут отправку.

Цитата(molecul)
1. Раз в 15 минут - это не редкая передача данных, а довольно таки частая для GSM канала. Поэтому включать-выключать модуль действительно будет слишком затратно по энергосбережению. Проще ввести модуль в режим пониженного энергопотребления (такой почти у всех современных модулей есть).

Если делать отправку раз в 15 минут, имеет ли смысл закрывать сессию GPRS, или лучше ее непрерывно держать? Что лучше, если все-таки раз в 5 минут? Режим пониженного энергопотребления возможен при открытой сессии GPRS?

Цитата(molecul)
3. SIM карты лучше вообще не использовать, а применять чип-симы, они от -40 прекрасно работают, не окисляются и счетчика перезагрузок там нет. Если же все-таки SIM карта, то подогрев делается навесными резисторами над SIM холдером.

Спасибо за совет! А можно ли использовать чип-симы с обычным SIM-картовым модемом или нужен специальный ридер/модем?

Цитата(molecul)
4. Смарт-модем по ссылке, если я правильно понял - это TC65 с поддержкой Java и в корпусе с разъемом, только и всего. Если не смущает достаточно высокая цена и наличие SIM холдеров (см. п.3) то можно и его использовать. Если смущает, можно сэкономить раза в 3-4 как минимум.

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

Цитата(baser)
По аккумуляторам: какие у вас - свинцово-кислотные гелевые или что-то еще?
В шкафу много другого электропотребляющего оборудования?
Может оказаться, что при ваших ампер-часах, заморачиваться с минимизацией потребления ГСМ блока нету смысла.
Потребление остальной аппаратуры и саморазряд может будет все перевешивать.

Гелевые аккумуляторы. Из оборудования: GSM модем, плата сбора данных с датчиков (она же управляет модемом через RS232 и собирает данные о ветре, температуре, влажности), зарядное устройство для аккумуляторов от солнечных батарей. По идее датчики все вместе должны потреблять не больше 0,3А при 12В. Про саморазряд - не знаю. Еще шкаф думаю обложить изнутри теплоизоляцией и фольгой.


Baser
Цитата(ThePPK @ Nov 21 2011, 16:06) *
Если делать отправку раз в 15 минут, имеет ли смысл закрывать сессию GPRS, или лучше ее непрерывно держать? Что лучше, если все-таки раз в 5 минут? Режим пониженного энергопотребления возможен при открытой сессии GPRS?

Гелевые аккумуляторы. Из оборудования: GSM модем, плата сбора данных с датчиков (она же управляет модемом через RS232 и собирает данные о ветре, температуре, влажности), зарядное устройство для аккумуляторов от солнечных батарей. По идее датчики все вместе должны потреблять не больше 0,3А при 12В. Про саморазряд - не знаю.

Да, при таком небольшом энергопотреблении прочего оборудования модем будет вносить весомый вклад.

У меня проектов с борьбой за экономию потребления не было, поэтому проверенных советов не дам. Скажу только то, что видел в документации.
В частности, модем SIMCOM SIM900 вроде-бы умеет уходить в спячку при открытых GPRS TCP/UDP соединениях с сервером. При этом обещают потребление всего пару мА.

см. документ SIM900_TCPIP_Application_Note_V1.02.pdf
гл.10 Power Consumption with Existing Connections

Если это так, то можно открывать коннект с сервером и держать его постоянно, пока не оборвется.
Обрываться временами будет обязательно из-за связи и из-за причуд оператора (любят они временами принудительно рвать коннекты).
Так что соединение нужно будет периодически контролировать и восстанавливать при обрывах.
Aner
Может вам исползовать радио мдемы (или только передатчики) на 433 или 868 или 915Мгц и не мучиться с GSM?
molecul
Цитата(ThePPK @ Nov 21 2011, 18:06) *
Если делать отправку раз в 15 минут, имеет ли смысл закрывать сессию GPRS, или лучше ее непрерывно держать? Что лучше, если все-таки раз в 5 минут? Режим пониженного энергопотребления возможен при открытой сессии GPRS?

Да, возможен. Telit в таком режиме потребляет около 1.5 мА.
Цитата(ThePPK @ Nov 21 2011, 18:06) *
Спасибо за совет! А можно ли использовать чип-симы с обычным SIM-картовым модемом или нужен специальный ридер/модем?
Честно говоря, хотелось добиться надежности за счет 2х сим-карт разных операторов, - вы можете посоветовать какой-нибудь модем (не модуль), чтобы им можно было управлять через COM-порт и использовать чип-симы?

Есть вариант - платка, на которую напаивается сим-чип, в итоге получается полный аналог SIM карты. Проблемы с температурой и счетчиком перерегистраций в этом случае решаются, но окисление контактов никто не отменял.
Но по большому счету лучше сделать специализированное устройство, обычные модемы не предназначены для энергосберегающих режимов. Напишите сюда - обсудим проект более пристально, в том числе и по сим-чипам.
vka_
Цитата(ThePPK @ Nov 21 2011, 18:06) *
Огромное спасибо всем за ответы!

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

Посмотрите этот: http://www.amrita.ru/index.php?units.php?num=276 . Потребляет в среднем около 100 мА. Сам в GPRS устанавливает связь с сервером и предоставляет прозрачный канал. При применении термосимок работает на-40.
ThePPK
Благодарю еще раз за помощь в решении задачи! sm.gif

Цитата
Может вам исползовать радио мдемы (или только передатчики) на 433 или 868 или 915Мгц и не мучиться с GSM?

К сожалению, расстояния не позволяют. Но часть датчиков нам придется из шкафа опрашивать по радиомодему. Т.е. собираем данные в шкаф по проводам и радиомодему, а потом шлем через GPRS.

Цитата
Посмотрите этот: http://www.amrita.ru/index.php?units.php?num=276 . Потребляет в среднем около 100 мА. Сам в GPRS устанавливает связь с сервером и предоставляет прозрачный канал. При применении термосимок работает на-40.

Хм, выглядит любопытно, а "в среднем около 100 мА" - это при какой частоте передачи данных? Т.е. если раз в 5 минут по 100 байт слать его потребление будет ~100 мА * 5 В (его питание) - 0,5Вт в среднем, верно?

Цитата( @ Nov 22 2011, 01:22) *
Если это так, то можно открывать коннект с сервером и держать его постоянно, пока не оборвется.
Обрываться временами будет обязательно из-за связи и из-за причуд оператора (любят они временами принудительно рвать коннекты).
Так что соединение нужно будет периодически контролировать и восстанавливать при обрывах.

Цитата(molecul)
Да, возможен. Telit в таком режиме потребляет около 1.5 мА.

Т.е. получается выгоднее всего постоянно держать GPRS коннект, но переходить в режим энергосбережения. Тогда лучше всего сделать пассивный режим прозрачного COM-порта: сервер какой-нибудь пакет (запрос) шлет на модем, а тот в ответ - текущие данные. Верно?

Если нужно контролировать соединение и восстанавливать, то сама эта процедура (контроля соединения) по питанию затратна?

А если модем находится в этом состоянии пониженного энергопотребления, и придет входящий пакет (запрос от сервера), модем его получит?
molecul
Цитата(ThePPK @ Nov 22 2011, 16:52) *
Т.е. получается выгоднее всего постоянно держать GPRS коннект, но переходить в режим энергосбережения. Тогда лучше всего сделать пассивный режим прозрачного COM-порта: сервер какой-нибудь пакет (запрос) шлет на модем, а тот в ответ - текущие данные. Верно?

Откровенно говоря, я бы не использовал GSM модем в серверном режиме - во-первых, это надо с оператором договариваться о внешнем IP либо вообще о выделенной сети, а во-вторых, это сложнее в программной реализации, хотя и ненамного. Лучше если GSM модуль будет слать пакеты по расписанию.
Цитата(ThePPK @ Nov 22 2011, 16:52) *
Если нужно контролировать соединение и восстанавливать, то сама эта процедура (контроля соединения) по питанию затратна?

Как правило, используют keep-alive пакеты - небольшие пакеты, пересылающиеся туда-обратно. Если пакет вернулся, значит связь с сервером есть. Соответственно, чем чаще эти пакеты шлются, тем больше потребление.
Цитата(ThePPK @ Nov 22 2011, 16:52) *
А если модем находится в этом состоянии пониженного энергопотребления, и придет входящий пакет (запрос от сервера), модем его получит?

Да, получит.
Baser
Цитата(ThePPK @ Nov 22 2011, 14:52) *
Т.е. получается выгоднее всего постоянно держать GPRS коннект, но переходить в режим энергосбережения. Тогда лучше всего сделать пассивный режим прозрачного COM-порта: сервер какой-нибудь пакет (запрос) шлет на модем, а тот в ответ - текущие данные. Верно?

Реализация соединения это уже вопрос личных предпочтений и наработок.
Я, например, прозрачный режим не люблю и не применяю. Главным образом из-за необходимости переключаться в командный и обратно.
Да и при обрыве связи модем сам вылетает в командный режим с выдачей соответствующих сообщений - а ПО ждет данные.
Считаю, что такой вариант более геморройный по сложности ПО, хотя, повторюсь, это вопрос вкуса.
Тем более есть модемы с двумя UART-ами. Через один управляешь, второй для данных...

Я бы сделал модем клиентом, который всегда стремиться подключиться к серверу.
А при наличии коннекта и сервер может инициировать обмен.
И применял бы пакетную передачу в командном режиме.

Цитата
Если нужно контролировать соединение и восстанавливать, то сама эта процедура (контроля соединения) по питанию затратна?

А если модем находится в этом состоянии пониженного энергопотребления, и придет входящий пакет (запрос от сервера), модем его получит?

Обычно или перед началом обмена шлют короткий пакет типа "пинга" или просто шлют сами данные и по неприходу подтверждения начинают переподключаться.

Передача данных в любом направлении должна будить модем и возвращать его в режим нормального энергопотребления.
GeGeL
Хочу еще добавить: используйте UDP, а не TCP. За счет более короткого IP-заголовка при небольших данных выиграш будет весомым. Кроме того, нет процедуры коннекта с сервером ("тройного рукопожатия"), и нет необходимости в keep-alive, поддерживающих tcp-сокет.
UDP - он как пионер, всегда готов. Что касается надежности доставки, то логично самому писать алгоритм подтверждения доставки и повторов при пакетлосе на уровне клиентского приложения, а не стандартный сокет, т.к. можно заточить конкретно под вашу задачу с ее таймаутами, компромисом "надежность/экономность" и т.д.

Инициировать связь однозначно должен клиент, а не сервер. Во первых, айпи всегда динамический у сисопов (хоть и реальный), а приплетать сюда динднс - еще тот гимор. Во вторых, заметил такую штуку у сисопов - входящий айпи-пакет далеко не всегда с первого раза доходит до мобильного клиента. Хотя если клиент проявляет параллельную активность (даже в другом айпи-направлении), то всегда сразу. Подозреваю, что это какой-то механизм блокировки вирусного трафика (сканеров айпи-диаппазона) со стороны сисопов, но внятного ответа ни у кого так и не получил.

Если уж совсем необходим механизм инициализации обмена сервером, лучше использовать входящий звонок, которым будить модем, и затем опять же инициализировать обмен со стороны модема.
Aner
я бы не советовал UDP, хорош в локалках только. Надежность в инете неопределённая, потерь на длинных трафиках много. Как только роутер, фаервол, и тп на пути то все. А если их несколько? Не побороть. Да и провайдеры не любят UDP_шников. С опсосами ещё и свои сложности, если у них с TCP проблем много то с UDP поболее будет. Да и роботы быстро забъют/замусорят канал, терять данные начнете в любой момент.
GeGeL
Не согласен абсолютно. Яркий пример - кардшаринг в спутниковом тв. Смена ключа каждые 10 сек, за это время надо отослать запрос на сервер и успеть получить ключ. Сервер находится за тысячи км от клиента, зачастую для анонимизации применяются редиректы. И на ДЕСЯТКАХ ТЫСЯЧ хардварных клиентах на трубах Siemens, на SIM300 и SIM900 видно, что использование UDP-based протокола в сети GPRS дает суммарно лучшие результаты по надежности, чем TCP. Тут факт на лицо - при не восстановленной потере пакета - на экране ТВ малевич, и юзер в гневе. Я статистически анализировал логи паралельно с нескольких клиентов, определяя таким образом места потерь и т.д.
Тем более, что TCP изначально предназначен для ГАРАНТИРОВАННОЙ доставки данных, это нужно для работы базирующихся на нем протоклов верхнего уровня HTTP, FTP и т.п. Если в нем часть данных выпадает, то сокет пытается восстановить целостность, и если не получается, то закрывает сессию, надо открывать снова. А для реалтайм-передачи в мультимедийных задачах лучше UDP. Многие телеметрические задачи именно такого плана, например, трекинг: если точка не передана до пояления новой точки, то забыли про старую и передаем новую.

Так что не стоит недооценивать UDP. Тем более, если смотреть шире, то и UDP, и TCP базируются на IP-транспорте, и маршрутизируются именно IP-пакеты. А выше (уровень сокета) надстраивается UDP или TCP. Т.о. вероятность потери IP-пакета та же.
ThePPK
Цитата
Хочу еще добавить: используйте UDP, а не TCP.

Честно говоря, хотелось бы какое-то более высокоуровневное решение, даже, чем TCP, т.к. реализация проверки и переотправки через UDP требует много времени на разработку. Если в дальнейшем будем писать свое решение, обязательно попробуем. Спасибо!

Цитата( @ Nov 22 2011, 17:15) *
Откровенно говоря, я бы не использовал GSM модем в серверном режиме - во-первых, это надо с оператором договариваться о внешнем IP либо вообще о выделенной сети, а во-вторых, это сложнее в программной реализации, хотя и ненамного. Лучше если GSM модуль будет слать пакеты по расписанию.

Скорее всего у нас будет выделенная сеть со статическими внутренними адресами, так проще делать программную реализацию. Или тут есть подводные камни?

Цитата(Baser)
Я бы сделал модем клиентом, который всегда стремиться подключиться к серверу.
А при наличии коннекта и сервер может инициировать обмен.
И применял бы пакетную передачу в командном режиме.

Получается, что это наиболее оптимальный вариант, т.к. частота опроса, как я уже понял, для сетей GSM у нас вполне высокая, а, учитывая режим экономии при подключенной сессии GPRS, все вроде неплохо получается.

Не могли бы вы посоветовать какое-то готовое для покупки решение - сегодня я наткнулся на M2M Gate. Вроде прозрачный ком-порт (мы, например, можем настроить посылку байта от сервера, при получении которой, плата, подключенная ко COM-порту, будет высылать обратно текущие данные). Но не знаю, эффективно ли оно по потреблению энергии, когда данные не пересылаются, переводит ли оно модем в режим экономии в сессии GPRS.

Возможно, есть какое-то другое готовое решение?

Честно говоря, смущает тот факт, что когда обычным сотовым подключаешься к GPRS и ничего не качаешь, батарея разряжается очень быстро. Он не включает режим экономии?
Aner
Цитата(GeGeL @ Nov 23 2011, 11:04) *
Не согласен абсолютно. Яркий пример - кардшаринг в спутниковом тв. Смена ключа каждые 10 сек, за это время надо отослать запрос на сервер и успеть получить ключ. Сервер находится за тысячи км от клиента, зачастую для анонимизации применяются редиректы. И на ДЕСЯТКАХ ТЫСЯЧ хардварных клиентах на трубах Siemens, на SIM300 и SIM900 видно, что использование UDP-based протокола в сети GPRS дает суммарно лучшие результаты по надежности, чем TCP. Тут факт на лицо - при не восстановленной потере пакета - на экране ТВ малевич, и юзер в гневе. Я статистически анализировал логи паралельно с нескольких клиентов, определяя таким образом места потерь и т.д.
Тем более, что TCP изначально предназначен для ГАРАНТИРОВАННОЙ доставки данных, это нужно для работы базирующихся на нем протоклов верхнего уровня HTTP, FTP и т.п. Если в нем часть данных выпадает, то сокет пытается восстановить целостность, и если не получается, то закрывает сессию, надо открывать снова. А для реалтайм-передачи в мультимедийных задачах лучше UDP. Многие телеметрические задачи именно такого плана, например, трекинг: если точка не передана до пояления новой точки, то забыли про старую и передаем новую.

Так что не стоит недооценивать UDP. Тем более, если смотреть шире, то и UDP, и TCP базируются на IP-транспорте, и маршрутизируются именно IP-пакеты. А выше (уровень сокета) надстраивается UDP или TCP. Т.о. вероятность потери IP-пакета та же.

Так в том то и суть, потеряли данные и нет возможности их востановить, для медийности непроблема. UDP не для гарантированной передачи данных. Многих это не устраивает. Тех же охранно-пожарные компаний не пользуют UDP если есть инет железки. А уронить ваш UDP достаточно просто, что и наблюдаем часто в инете.
... вероятность потери TCP, IP-пакета меньше чем у UDP, поскольку у них гарантированная доставка.
aaarrr
Цитата(Aner @ Nov 23 2011, 14:34) *
... вероятность потери TCP, IP-пакета меньше чем у UDP, поскольку у них гарантированная доставка.

Казнить нельзя помиловать? Вероятность потери пакета как раз одинаковая. Другое дело, что в случае TCP повторная передача будет организована средствами самого TCP-транспорта, и не факт, что оптимально и успешно.
Для помянутых ста байт телеметрии UDP - самое то. Механизм подтверждения и повторной передачи пугать не должен, он предельно прост в таком случае.
stream
Цитата(Aner @ Nov 23 2011, 14:34) *
Так в том то и суть, потеряли данные и нет возможности их востановить, для медийности непроблема. UDP не для гарантированной передачи данных. Многих это не устраивает. Тех же охранно-пожарные компаний не пользуют UDP если есть инет железки.

Мне кажется, что бодрый и уверенный тон Ваших сообщений основывается только на Вашем сугубо поверхностном знании и сетевых протоколов, и охранно-пожарных тактик.
Velund
QUOTE (aaarrr @ Nov 23 2011, 15:11) *
Для помянутых ста байт телеметрии UDP - самое то. Механизм подтверждения и повторной передачи пугать не должен, он предельно прост в таком случае.


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

Я сам сторонник именно UDP для телеметрии. И вопросы резервирования серверов решаются проще, и можно более оптимально механизм перепосылок сделать, учитывая особенности транспорта...

Вот только как показывает практика не все производители GPRS модулей вообще думают о том, как их встроенные TCP/IP стеки с UDP использовать.
GeGeL
Я анализировал поведение конкретного тсп-сокета в конкретной ОС при потере IP-пакета вне окна.
Он запрашивал/отсылал дубли (с тем же SEQ) с прогрессивно увеличивающимися интервалами от 0.5 сек до 32 сек (всего 7 повторов), затем слал FIN. На сколько я в курсе, это жестко не регламентировано RFC, зависит от реализации сокета. В случае UDP можно сделать свой более "умный" алго, компромиссно учитывая тайминги задачи, требования надежности, энергосбережения, экономии трафика и т.п. и это в итоге будет лучше, чем стандартный тсп-сокет. Универсальных вещей хороших не бывает...
ThePPK
Не могли бы вы, пожалуйста, посоветовать какое-нибудь готовое энергоэффективное решение по передаче данных, чтобы не писать самому?
GeGeL
Если вопрос конкретно ко мне, то, к сожалению, не могу. Мне проще написать самому, чем подстраиваться под готовое.
Baser
Тут, в основном, разработчики тусуются, а это вопрос к системным интеграторам.
Хотя, дистрибьюторов модемов тут тоже хватает, может чего и посоветуют laughing.gif

В любом случае, готовое решение (GPRS модем в коробочке) будет мало чем отличаться от модуля, в основном наличием источника питания и интерфейсными м/с на UARTе. И предоставят какой-нибудь прозрачный COM порт.
Но управлять им все равно придется самому.
ThePPK
Огромное всем спасибо! :-) Вы мне очень помогли!
Ruslan1
Цитата(molecul @ Nov 21 2011, 13:13) *
Вообще-то он называется счетчик перерегистраций в сети. Обычно имеет значение 10000, соответственно после 10 тыс. включений (а для m2m это не так и много) симка требует замены. В чип-симах этот счесчик отключен.

Скажите пожалуйста, как этот счетчик называется в английском варианте? Где почитать про него?
Чем/кем определяется и как его применение согласуется с договором, который я подписал с оператором? Я запросто представляю ситуацию, когда мобильник, работая на границе зоны приема или в условиях частовозникающих помех, теряет связь много раз в час, и, соответственно, много раз в час проходит регистрацию в сети по новой.
И что, в какой-то момент мне откажут в регистрации?
molecul
Цитата(Ruslan1 @ Nov 24 2011, 15:55) *
Скажите пожалуйста, как этот счетчик называется в английском варианте? Где почитать про него?
Чем/кем определяется и как его применение согласуется с договором, который я подписал с оператором? Я запросто представляю ситуацию, когда мобильник, работая на границе зоны приема или в условиях частовозникающих помех, теряет связь много раз в час, и, соответственно, много раз в час проходит регистрацию в сети по новой.
И что, в какой-то момент мне откажут в регистрации?

В какой-то момент SIM карта просто перестает работать, только и всего. Как это называется официально в англоязычной документации, не знаю. Но наличие такого счетчика подтвердили все представители "Большой тройки". А при чем здесь договор? Замена неисправной симки практически у всех операторов бесплатна и делается моментально, поэтому если это произошло в телефоне, проблемы никакой нет.
Ruslan1
Цитата(molecul @ Nov 25 2011, 08:06) *
В какой-то момент SIM карта просто перестает работать, только и всего. Как это называется официально в англоязычной документации, не знаю. Но наличие такого счетчика подтвердили все представители "Большой тройки". А при чем здесь договор? Замена неисправной симки практически у всех операторов бесплатна и делается моментально, поэтому если это произошло в телефоне, проблемы никакой нет.

Что такое "Большая тройка"? Комплект российских операторов?
Хотя если внимательно подумать, проблема не так остро стоит, если раз в час регистрироваться- то больше чем на год хватит. Можно вписать смену симки в список ежегодных регламентных работ и спать спокойно. Конечно, если оператор подтверждает наличие и активацию этого счетчика.
molecul
Цитата(Ruslan1 @ Nov 25 2011, 17:12) *
Что такое "Большая тройка"? Комплект российских операторов?
Хотя если внимательно подумать, проблема не так остро стоит, если раз в час регистрироваться- то больше чем на год хватит. Можно вписать смену симки в список ежегодных регламентных работ и спать спокойно. Конечно, если оператор подтверждает наличие и активацию этого счетчика.

Мегафон-МТС-Билайн. У МТС, в принципе, есть SIM карты специально для m2m приложений, там этот счетчик отключен. Возможно и у Билайн есть что-то аналогичное.
Versatile
Цитата(ThePPK @ Nov 21 2011, 09:10) *
Здравствуйте!

Хотел бы просить совета от форумчан-практиков.

Задача такая - в степи стоит шкаф (температура от -30 (зимой) до +40 (в тени летом) и +60 (на солнце летом)). Питание - от аккумулятора 2 х 130 Ач = 260 Ач (зимой, очевидно, останется только 40-50Ач) и солнечных батарей. Уровень сигнала очень плохой (на земле - 108 dBm) - думаем располагать пассиную антенну типа http://www.electronshik.ru/card/gsm-antenn...a-akl-900-60453 на шесте метров в 10-15 высотой.

Шкаф должен собирать данные с метеодатчиков и слать их раз в 15 минут на сервер - не больше 100 байт. Какова оптимальная стратегия передачи данных:
1. передавать по GPRS или CDS?
2. выключать ли целиком модем / делать ли отключение GPRS несущей на время простоя?

Судя по форуму (в т.ч. http://electronix.ru/forum/index.php?showtopic=91897) выключать модем не стоит (большие энергозатраты на включение, может полететь sim-карта). Будет ли вообще работать sim-карта при -30? В форуме рассматривалась возможность ее подогрева.

Еще доп. вопрос - стоит ли использовать smart-модемы типа http://www.gsm-gate.ru/product/gsm-modem-irz-tc65-smart/ для более гибкого управления передачей и сбором данных с использованием Java. Стоит ли принимать во внимание доп. потребление энергии более мощным процессором по сравнению с обычным модемом или на фоне потребления при передаче это будет просто шумом?

Большое спасибо!

Занимаемся подобными делами. На что стоит обратить внимание
Мы отдали предпочтение GPRS каналу, более быстр. Цены тут как договоришся с оператором. Особенно обратите внимание на аккумуляторы - в мороз они теряют свойства чтобы это не привело к проблемам. SIM карточка работает при -20 точно, нужно учитывать и рассчитывать корпус устройства так чтобы при всех возможных темперетурах там был хоть какой то микроклимат.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.