Перейти к содержанию
    

передача данных через модемы wavecom

Доброго времени суток форумчане.

Возникла следующая задача:

Есть два устройства на модемамах wavecom модели М1206В.

Модемы к компу не будут подключаться, управлять ими будут микроконтроллеры (ATmega).

Общение должно проходить по такому принципу: один дает запрос, второй ответ, и наоборот. Будут участвовать только два модема. Обьмы даных передаваться будут небольшие.

Это направление для меня новое, поэтому есть трудности.

С АТ командами ознакомился (отправлял через терминалку).

А вот организовать пересылку данных через GPRS - для меня загадка.

В сети нашел такой код:

Настройка и подсоединение к GPRS:
AT+CGATT=1
AT#APNSERV="xxxx", где xxxx - APN сервер провайдера сотовой связи.
AT#APNUN="yyyy", где yyyy - имя пользователя;
AT#APNPW="zzzz", где zzzz - пароль;
AT#CONNECTIONSTART

Ответ: xxx.xxx.xxx.xxx, где xxx.xxx.xxx.xxx - IP адрес выделенный сотовому терминалу.
Ответ: Ok_Info_GprsActivation

Подсоединение к TCP-Серверу
AT#DLEMODE=1,0
AT#TCPSERV=1,"xxx.xxx.xxx.xxx", где xxx.xxx.xxx.xxx - фиксированный IP адрес сервера (того терминала или компьютера с кем надо установить связь)

AT#OTCP=1

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

Подскажите пожалуйста, от чего отталкиваться, куда рыть... Спасибо!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Насколько мне известно, в GSM сети невозможно установить соединение между двумя GPRS модемами.

 

Вы можете установить соединение между GPRS модемом и, например, каким нибудь сервером в интернете, зная его IP адрес и если на этом сервере на определенном порту работает слушающая программа, которая и будет обмениваться/получать данные от вашего модема.

 

APN - это точка доступа для соединения с Internet, предоставляемая GSM провайдером. Ее можно узнать по телефону сервис центра или на сайте того GSM оператора, чъей GSM SIM карточкой вы пользуетесь. Логин и пароль для такого подключения, как правило, пустые.

Некоторве GSM операторы предоставляют услугу типа "Корпоративный GPRS" без выхода в publuic Internet на тот случай, если у вас есть сеть GPRS теминалов, например в банковском оборудовании и свой сервер со статическим IP адресом, с которым они связываются. В этом случае логин и пароль будут.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Насколько мне известно, в GSM сети невозможно установить соединение между двумя GPRS модемами.

 

Вы можете установить соединение между GPRS модемом и, например, каким нибудь сервером в интернете, зная его IP адрес и если на этом сервере на определенном порту работает слушающая программа, которая и будет обмениваться/получать данные от вашего модема.

 

APN - это точка доступа для соединения с Internet, предоставляемая GSM провайдером. Ее можно узнать по телефону сервис центра или на сайте того GSM оператора, чъей GSM SIM карточкой вы пользуетесь. Логин и пароль для такого подключения, как правило, пустые.

Некоторве GSM операторы предоставляют услугу типа "Корпоративный GPRS" без выхода в publuic Internet на тот случай, если у вас есть сеть GPRS теминалов, например в банковском оборудовании и свой сервер со статическим IP адресом, с которым они связываются. В этом случае логин и пароль будут.

А можно такое сделать: Одним модемом подключится к gprs и стать сервером, а второй будет к нему подключаться и передавать информацию?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А можно такое сделать: Одним модемом подключится к gprs и стать сервером, а второй будет к нему подключаться и передавать информацию?

 

В подавляющем большинстве случаев ответ отрицательный, т.к. во-первых GSM оператор после установки соединения выдаст вашему GPRS модему динамическиий IP адрес, который второму модему заранее не известен, чтобы подключаться к первому, как к серверу. Ну а во-вторых, этот IP адрес скрыт за их NAT-сервером и к нему нет доступа из интернета.

Вообще-то эта тема уже обсуждалась. Например, здесь: http://electronix.ru/forum/index.php?showtopic=18970

 

Опишите подробнее, какая перед вами стоит задача?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В подавляющем большинстве случаев ответ отрицательный, т.к. во-первых GSM оператор после установки соединения выдаст вашему GPRS модему динамическиий IP адрес, который второму модему заранее не известен, чтобы подключаться к первому, как к серверу. Ну а во-вторых, этот IP адрес скрыт за их NAT-сервером и к нему нет доступа из интернета.

 

Как вариант - договориться с оператором о предоставлении статического IP.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Как вариант - договориться с оператором о предоставлении статического IP.

 

Лучше использовать свой сервер для обмена информацией между модемами. Это будет универсальное решение не зависящее от оператора.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В подавляющем большинстве случаев ответ отрицательный, т.к. во-первых GSM оператор после установки соединения выдаст вашему GPRS модему динамическиий IP адрес, который второму модему заранее не известен, чтобы подключаться к первому, как к серверу. Ну а во-вторых, этот IP адрес скрыт за их NAT-сервером и к нему нет доступа из интернета.

Вообще-то эта тема уже обсуждалась. Например, здесь: http://electronix.ru/forum/index.php?showtopic=18970

 

Опишите подробнее, какая перед вами стоит задача?

Задача следующая: в одном месте находится модем, который управляется микроконтроллером. В другом находится точно такой же модем. Общение должно быть двустронним - один дает запрос - второй ответ.

 

А такое решение можно использовать? Один модем стает TCP сервером, второй соответственно клиентом. А для того чтоб они ip адреса узнали друг друга, можно их передать по смс. Получится так или бредовая идея?

 

 

Лучше использовать свой сервер для обмена информацией между модемами. Это будет универсальное решение не зависящее от оператора.

А можете подробней написать,что это за сервер должен быть?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Задача следующая: в одном месте находится модем, который управляется микроконтроллером. В другом находится точно такой же модем. Общение должно быть двустронним - один дает запрос - второй ответ.

 

А такое решение можно использовать? Один модем стает TCP сервером, второй соответственно клиентом. А для того чтоб они ip адреса узнали друг друга, можно их передать по смс. Получится так или бредовая идея?

 

Получится, если сервер будет иметь статический IP. Иначе они оба будут за NAT-ом оператора.

 

А можете подробней написать,что это за сервер должен быть?

 

Сервер-ретранслятор с известным обеим модемам IP-адресом (вот он-то может настраиваться по СМС), с которым они устанавливают соединение. Сервер должен пересылать данные от одного абонента к другому.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Задача следующая: в одном месте находится модем, который управляется микроконтроллером. В другом находится точно такой же модем. Общение должно быть двустронним - один дает запрос - второй ответ.

 

А такое решение можно использовать? Один модем стает TCP сервером, второй соответственно клиентом. А для того чтоб они ip адреса узнали друг друга, можно их передать по смс. Получится так или бредовая идея?

А можете подробней написать,что это за сервер должен быть?

 

Оставьте идею сделать один из модемов сервером.

Для решения данной задачи подойдет любой, самый "чахлый" сервер со статическим IP адресом в интернете. Не знаю, в каком городе вы находитесь, но получить статику у местного интернет провайдера намного проще ( и в будущем, полезнее ), чем у GSM оператора. Если вы делаете этот проект на заказ и заказчик готов платить, то ему нужно будет получить статический IP и поставить у себя сервер ( а может быть у него уже и есть такой, только он об этом не знает :) ).

Затем для этого компьютера необходимо написать программу, которая будет слушать на определенном порту, естественно, известном всем GPRS модемам и принимать/передавать от них данные. Логично реализовать это на основе базы данных, тогда потом можно будет получать какую нибудь статистику по обмену данными и т.п.

Т.е. этот сервер будет выступать в роли коммутатора между модемами, причем количество модемов, теоретически, может быть любым.

 

Есть другой способ, без использования своего сервера. Можно реализовать это на каком нибудь платном/бесплатном WEB сервере, поддерживающим, например, PHP и MySQL. И общаться с ним через 80-й порт, но в этом случае сложнее парсить ответы от сервера на стороне модема.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Оставьте идею сделать один из модемов сервером.

По каким причинам? Из-за сложности?

Такой еще вопросик: а возможно организовать соединение между модемами по протоколу PPP?

С модемами никогда не работал, по этому вопросов много, возможно и глупых...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Еще вычитал, что можно открыть TCP сервер и TCP клиент и передавать данные напрямую. Как такой вариант?

А что можно сказать про отправку данных через SMTP и прием через pop3? Бред?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Еще вычитал, что можно открыть TCP сервер и TCP клиент и передавать данные напрямую. Как такой вариант?

Оставь надежду всяк сюда входящий... :)

Организовать надежный и недорогой GPRS канал данных думаю у вас не получится, вот причины из горького опыта

1. ОпСоС не гарантирует надежность канала передачи данных, надо контролировать socket вручную

2. Постоянный коннект встанет вам в копеечку, даже если вы ничего не передаете из-за их програмных фишек

3. В праздники GPRS отдыхает или работает через раз, правда это у кого как...

4. так как ваш фиксированный IP виден всем из интернета, то существует минимум способов 100, как завалить сервер, и никакой файервол не поможет!

Покритикуйте меня если наврал...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Некоторых результатов уже добился.

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

По поводу замечаний Ndf:

1. Не понимаю что такое ОпСоС

2. У нас в Украине у одного мобильного оператора есть возможность покупать 1GB траффика за 12$, так что вопрос о стоимости передачи не стоит.

3. В выходные и праздники будем тестировать, будет видно.

4. IP адресс не фиксированный, а динамический. К тому же чтоб завалить сервер надо еще и знать порт...

 

Какие еще могут быть замечания?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Некоторых результатов уже добился.

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

1. Не понимаю что такое ОпСоС

2. У нас в Украине у одного мобильного оператора есть возможность покупать 1GB траффика за 12$, так что вопрос о стоимости передачи не стоит.

Какие еще могут быть замечания?

Если сервер всегда on-line то динамический IP не очень-то отличается от фиксированного, а если дисконнекты часто будут, будете поливать клиентов SMS? Да и очередность SMS может нарушиться.

ОпСоС - оператор сотовой связи.

На счет п 2 вам везет... :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Мужуки! А зачем так сложно?

Для такой тривиальной задачки достаточно чтобы любой из контроллеров выдал в модем команду

ATDxxx..xxxx, где: xxx..xxxx - телефонный номер абонента. Модемы установят DATA соединение

и после этого считайте, что Serial порты Ваших контроллеров просто соединены проволокой!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...