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

 
 
4 страниц V   1 2 3 > »   
Reply to this topicStart new topic
> передача данных через модемы wavecom
dimonbest
сообщение Feb 14 2008, 14:22
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 17
Регистрация: 15-07-07
Пользователь №: 29 137



Доброго времени суток форумчане.
Возникла следующая задача:
Есть два устройства на модемамах 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

С ним разобраться не получилось: не понял что за пользователь и пароль. И как принимать данные?
Подскажите пожалуйста, от чего отталкиваться, куда рыть... Спасибо!
Go to the top of the page
 
+Quote Post
beketata
сообщение Feb 17 2008, 22:42
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 33
Регистрация: 17-02-08
Пользователь №: 35 126



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

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

APN - это точка доступа для соединения с Internet, предоставляемая GSM провайдером. Ее можно узнать по телефону сервис центра или на сайте того GSM оператора, чъей GSM SIM карточкой вы пользуетесь. Логин и пароль для такого подключения, как правило, пустые.
Некоторве GSM операторы предоставляют услугу типа "Корпоративный GPRS" без выхода в publuic Internet на тот случай, если у вас есть сеть GPRS теминалов, например в банковском оборудовании и свой сервер со статическим IP адресом, с которым они связываются. В этом случае логин и пароль будут.
Go to the top of the page
 
+Quote Post
dimonbest
сообщение Feb 18 2008, 11:18
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 17
Регистрация: 15-07-07
Пользователь №: 29 137



Цитата(beketata @ Feb 18 2008, 01:42) *
Насколько мне известно, в GSM сети невозможно установить соединение между двумя GPRS модемами.

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

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

А можно такое сделать: Одним модемом подключится к gprs и стать сервером, а второй будет к нему подключаться и передавать информацию?
Go to the top of the page
 
+Quote Post
beketata
сообщение Feb 18 2008, 18:43
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 33
Регистрация: 17-02-08
Пользователь №: 35 126



Цитата(dimonbest @ Feb 18 2008, 14:18) *
А можно такое сделать: Одним модемом подключится к gprs и стать сервером, а второй будет к нему подключаться и передавать информацию?


В подавляющем большинстве случаев ответ отрицательный, т.к. во-первых GSM оператор после установки соединения выдаст вашему GPRS модему динамическиий IP адрес, который второму модему заранее не известен, чтобы подключаться к первому, как к серверу. Ну а во-вторых, этот IP адрес скрыт за их NAT-сервером и к нему нет доступа из интернета.
Вообще-то эта тема уже обсуждалась. Например, здесь: http://electronix.ru/forum/index.php?showtopic=18970

Опишите подробнее, какая перед вами стоит задача?
Go to the top of the page
 
+Quote Post
almat
сообщение Feb 19 2008, 07:42
Сообщение #5


Участник
*

Группа: Свой
Сообщений: 43
Регистрация: 5-10-07
Пользователь №: 31 081



Цитата(beketata @ Feb 18 2008, 21:43) *
В подавляющем большинстве случаев ответ отрицательный, т.к. во-первых GSM оператор после установки соединения выдаст вашему GPRS модему динамическиий IP адрес, который второму модему заранее не известен, чтобы подключаться к первому, как к серверу. Ну а во-вторых, этот IP адрес скрыт за их NAT-сервером и к нему нет доступа из интернета.


Как вариант - договориться с оператором о предоставлении статического IP.
Go to the top of the page
 
+Quote Post
beketata
сообщение Feb 19 2008, 08:47
Сообщение #6


Участник
*

Группа: Участник
Сообщений: 33
Регистрация: 17-02-08
Пользователь №: 35 126



Цитата(almat @ Feb 19 2008, 10:42) *
Как вариант - договориться с оператором о предоставлении статического IP.


Лучше использовать свой сервер для обмена информацией между модемами. Это будет универсальное решение не зависящее от оператора.
Go to the top of the page
 
+Quote Post
dimonbest
сообщение Feb 19 2008, 13:05
Сообщение #7


Участник
*

Группа: Участник
Сообщений: 17
Регистрация: 15-07-07
Пользователь №: 29 137



Цитата(beketata @ Feb 18 2008, 21:43) *
В подавляющем большинстве случаев ответ отрицательный, т.к. во-первых GSM оператор после установки соединения выдаст вашему GPRS модему динамическиий IP адрес, который второму модему заранее не известен, чтобы подключаться к первому, как к серверу. Ну а во-вторых, этот IP адрес скрыт за их NAT-сервером и к нему нет доступа из интернета.
Вообще-то эта тема уже обсуждалась. Например, здесь: http://electronix.ru/forum/index.php?showtopic=18970

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

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

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


Цитата(beketata @ Feb 19 2008, 11:47) *
Лучше использовать свой сервер для обмена информацией между модемами. Это будет универсальное решение не зависящее от оператора.

А можете подробней написать,что это за сервер должен быть?
Go to the top of the page
 
+Quote Post
almat
сообщение Feb 19 2008, 14:30
Сообщение #8


Участник
*

Группа: Свой
Сообщений: 43
Регистрация: 5-10-07
Пользователь №: 31 081



Цитата(dimonbest @ Feb 19 2008, 16:05) *
Задача следующая: в одном месте находится модем, который управляется микроконтроллером. В другом находится точно такой же модем. Общение должно быть двустронним - один дает запрос - второй ответ.

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


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

Цитата(dimonbest @ Feb 19 2008, 16:05) *
А можете подробней написать,что это за сервер должен быть?


Сервер-ретранслятор с известным обеим модемам IP-адресом (вот он-то может настраиваться по СМС), с которым они устанавливают соединение. Сервер должен пересылать данные от одного абонента к другому.
Go to the top of the page
 
+Quote Post
beketata
сообщение Feb 19 2008, 18:30
Сообщение #9


Участник
*

Группа: Участник
Сообщений: 33
Регистрация: 17-02-08
Пользователь №: 35 126



Цитата(dimonbest @ Feb 19 2008, 16:05) *
Задача следующая: в одном месте находится модем, который управляется микроконтроллером. В другом находится точно такой же модем. Общение должно быть двустронним - один дает запрос - второй ответ.

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


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

Есть другой способ, без использования своего сервера. Можно реализовать это на каком нибудь платном/бесплатном WEB сервере, поддерживающим, например, PHP и MySQL. И общаться с ним через 80-й порт, но в этом случае сложнее парсить ответы от сервера на стороне модема.
Go to the top of the page
 
+Quote Post
dimonbest
сообщение Feb 20 2008, 08:13
Сообщение #10


Участник
*

Группа: Участник
Сообщений: 17
Регистрация: 15-07-07
Пользователь №: 29 137



Цитата(beketata @ Feb 19 2008, 21:30) *
Оставьте идею сделать один из модемов сервером.

По каким причинам? Из-за сложности?
Такой еще вопросик: а возможно организовать соединение между модемами по протоколу PPP?
С модемами никогда не работал, по этому вопросов много, возможно и глупых...
Go to the top of the page
 
+Quote Post
dimonbest
сообщение Feb 20 2008, 10:14
Сообщение #11


Участник
*

Группа: Участник
Сообщений: 17
Регистрация: 15-07-07
Пользователь №: 29 137



Еще вычитал, что можно открыть TCP сервер и TCP клиент и передавать данные напрямую. Как такой вариант?
А что можно сказать про отправку данных через SMTP и прием через pop3? Бред?
Go to the top of the page
 
+Quote Post
Ndf
сообщение Feb 20 2008, 13:01
Сообщение #12


Частый гость
**

Группа: Свой
Сообщений: 101
Регистрация: 22-08-07
Пользователь №: 29 977



Цитата(dimonbest @ Feb 20 2008, 13:14) *
Еще вычитал, что можно открыть TCP сервер и TCP клиент и передавать данные напрямую. Как такой вариант?

Оставь надежду всяк сюда входящий... smile.gif
Организовать надежный и недорогой GPRS канал данных думаю у вас не получится, вот причины из горького опыта
1. ОпСоС не гарантирует надежность канала передачи данных, надо контролировать socket вручную
2. Постоянный коннект встанет вам в копеечку, даже если вы ничего не передаете из-за их програмных фишек
3. В праздники GPRS отдыхает или работает через раз, правда это у кого как...
4. так как ваш фиксированный IP виден всем из интернета, то существует минимум способов 100, как завалить сервер, и никакой файервол не поможет!
Покритикуйте меня если наврал...
Go to the top of the page
 
+Quote Post
dimonbest
сообщение Feb 21 2008, 10:08
Сообщение #13


Участник
*

Группа: Участник
Сообщений: 17
Регистрация: 15-07-07
Пользователь №: 29 137



Некоторых результатов уже добился.
С помощью одного модема создал сервер. В нем выбираю порт, фильтрацию ро IP адрессам клиентов не делаю. Этот модем передает с помощью смс клиенту свой IP. Тот в свою очередь подключается к серверу по тому же порту, и происходит двусторонний обмен данных. То что нужно...
По поводу замечаний Ndf:
1. Не понимаю что такое ОпСоС
2. У нас в Украине у одного мобильного оператора есть возможность покупать 1GB траффика за 12$, так что вопрос о стоимости передачи не стоит.
3. В выходные и праздники будем тестировать, будет видно.
4. IP адресс не фиксированный, а динамический. К тому же чтоб завалить сервер надо еще и знать порт...

Какие еще могут быть замечания?
Go to the top of the page
 
+Quote Post
Ndf
сообщение Feb 21 2008, 14:55
Сообщение #14


Частый гость
**

Группа: Свой
Сообщений: 101
Регистрация: 22-08-07
Пользователь №: 29 977



Цитата(dimonbest @ Feb 21 2008, 13:08) *
Некоторых результатов уже добился.
С помощью одного модема создал сервер. В нем выбираю порт, фильтрацию ро IP адрессам клиентов не делаю. Этот модем передает с помощью смс клиенту свой IP. Тот в свою очередь подключается к серверу по тому же порту, и происходит двусторонний обмен данных. То что нужно...
1. Не понимаю что такое ОпСоС
2. У нас в Украине у одного мобильного оператора есть возможность покупать 1GB траффика за 12$, так что вопрос о стоимости передачи не стоит.
Какие еще могут быть замечания?

Если сервер всегда on-line то динамический IP не очень-то отличается от фиксированного, а если дисконнекты часто будут, будете поливать клиентов SMS? Да и очередность SMS может нарушиться.
ОпСоС - оператор сотовой связи.
На счет п 2 вам везет... smile.gif
Go to the top of the page
 
+Quote Post
AlexBoss
сообщение Mar 5 2008, 11:32
Сообщение #15


Участник
*

Группа: Новичок
Сообщений: 19
Регистрация: 30-06-06
Из: Донецк
Пользователь №: 18 488



Мужуки! А зачем так сложно?
Для такой тривиальной задачки достаточно чтобы любой из контроллеров выдал в модем команду
ATDxxx..xxxx, где: xxx..xxxx - телефонный номер абонента. Модемы установят DATA соединение
и после этого считайте, что Serial порты Ваших контроллеров просто соединены проволокой!
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 27th July 2025 - 06:53
Рейтинг@Mail.ru


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