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

 
 
> SIM900, TCP
rat
сообщение May 20 2013, 03:52
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 497
Регистрация: 9-06-05
Из: Новосибирск
Пользователь №: 5 852



Суть вопроса: отправляю данные на сервер:

RDY

+CFUN: 1

+CPIN: READY

Call Ready
AT+CGATT=1
OK
AT+CSTT="internet.mts.ru"
OK
AT+CIICR
OK
AT+CIFSR
10.65.171.75
AT+CIPSTART="TCP","109.111.ХХХ.ХХ","ХХХХ"
OK

CONNECT OK
AT+CIPSEND
> +7913929ХХХХ,GPRMC,014157.000,A,5501.3812,N,08255.0908,E,2.14,181.97,301012,,,A*
6A,L,bat:,imei:ХХХХХ,112#d
SEND OK

Это трекерное приложение,отправляемые данные заданного формата, определяемого сервером. В результате на карте должна отображаться точка в месте с передаваемыми координатами, но этого не происходит. Раньше с TCP не работал, наверняка какой-то очевидный ляп, прошу совета.
Go to the top of the page
 
+Quote Post
2 страниц V   1 2 >  
Start new topic
Ответов (1 - 24)
alexdos
сообщение May 20 2013, 05:34
Сообщение #2


Местный
***

Группа: Участник
Сообщений: 339
Регистрация: 10-07-08
Из: Херсон
Пользователь №: 38 856



Цитата(rat @ May 20 2013, 06:52) *
Суть вопроса: отправляю данные на сервер:

Это трекерное приложение,отправляемые данные заданного формата, определяемого сервером. В результате на карте должна отображаться точка в месте с передаваемыми координатами, но этого не происходит. Раньше с TCP не работал, наверняка какой-то очевидный ляп, прошу совета.



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

Сообщение отредактировал alexdos - May 20 2013, 05:36
Go to the top of the page
 
+Quote Post
rat
сообщение May 20 2013, 07:12
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 497
Регистрация: 9-06-05
Из: Новосибирск
Пользователь №: 5 852



Цитата(alexdos @ May 20 2013, 12:34) *
А отправлять на сервер, те же данные но другими способами пробовали?
Приводит это к появлению точки ?
А то есть где то тут тема, тоже грешили на "транспорт", оказалось что плохо "отсканировали" данные.


Другими это какими? Что такое "отсканировали"?. Разумеется, ошибки возможны, интересует, нет ли откровенной неправильности в вышеописанном отправлении данных?
Go to the top of the page
 
+Quote Post
alexdos
сообщение May 20 2013, 07:47
Сообщение #4


Местный
***

Группа: Участник
Сообщений: 339
Регистрация: 10-07-08
Из: Херсон
Пользователь №: 38 856



Цитата(rat @ May 20 2013, 10:12) *
Другими это какими? Что такое "отсканировали"?. Разумеется, ошибки возможны, интересует, нет ли откровенной неправильности в вышеописанном отправлении данных?


Есть уйма софта которым можно установить соединение с сервером и по TCP или UPD передать данные. Тоесть прямо с компа на сервер.
Формат передачи данных на сервер Вы гдето взяли ведь. способа получения фактически 2, с описания протокола, и с работающего устройства. С работающего устройства Вы можете получить подключившись туда (если такая возможность есть) и "отсканировать" протокол, (Ска́нер (англ. scanner, от scan «пристально разглядывать, рассматривать»)sm.gif.
откровенной неправильности в вышеописанном отправлении данных я не вижу.

Вот сценарий по котором у меня точно передаются данные

--
A T + C G A T T = 1 .
Активировать GPRS сесию
--
A T + C I P C S G P = 1 , " i w w w . k y i v s t a r . n e t " , " g p r s " ," g p r s " .
Передадим CSD и GPRS данные
--
A T + C I P A T S = 0 .
Включим автовреммя ответа
--
A T + C L P O R T = " T C P " , " 2222 " .
Откроем порт
--
A T + C I P S T A R T = " T C P " , " 1 11 . 111 . 1 11 . 11 " , " 2222"
Стартуем подключение
-- .
A T + C I P S T A T U S .
Проверим соединение
--
A T + C R E G ? .
Проверим регистрацию в сети
--
A T + C I P S T A T U S .
Проверим соединение
--
A T + C I P S E N D .

Сообщение отредактировал alexdos - May 20 2013, 07:47
Go to the top of the page
 
+Quote Post
rat
сообщение May 20 2013, 07:53
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 497
Регистрация: 9-06-05
Из: Новосибирск
Пользователь №: 5 852



Цитата(alexdos @ May 20 2013, 14:47) *
Есть уйма софта которым можно установить соединение с сервером и по TCP или UPD передать данные. Тоесть прямо с компа на сервер.


Посоветуйте пожалуйста простой удобный доступный софт для передачи данных на сервер по TCP.
Go to the top of the page
 
+Quote Post
sobr
сообщение May 20 2013, 08:17
Сообщение #6


Знающий
****

Группа: Свой
Сообщений: 926
Регистрация: 18-01-07
Пользователь №: 24 552



Цитата(rat @ May 20 2013, 14:53) *
Посоветуйте пожалуйста простой удобный доступный софт для передачи данных на сервер по TCP.

Советую:
Прикрепленный файл  tcpterm.rar ( 109.58 килобайт ) Кол-во скачиваний: 153
Go to the top of the page
 
+Quote Post
rat
сообщение May 20 2013, 08:49
Сообщение #7


Местный
***

Группа: Свой
Сообщений: 497
Регистрация: 9-06-05
Из: Новосибирск
Пользователь №: 5 852



Цитата(sobr @ May 20 2013, 15:17) *
Советую:
Прикрепленный файл  tcpterm.rar ( 109.58 килобайт ) Кол-во скачиваний: 153


Спасибо )
Go to the top of the page
 
+Quote Post
sobr
сообщение May 20 2013, 08:56
Сообщение #8


Знающий
****

Группа: Свой
Сообщений: 926
Регистрация: 18-01-07
Пользователь №: 24 552



Цитата(rat @ May 20 2013, 15:49) *
Спасибо )
Пожалуйста.
Go to the top of the page
 
+Quote Post
vassabi
сообщение May 20 2013, 08:58
Сообщение #9


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

Группа: Свой
Сообщений: 156
Регистрация: 18-02-13
Из: Киев
Пользователь №: 75 678



Цитата(rat @ May 20 2013, 10:53) *
Посоветуйте пожалуйста простой удобный доступный софт для передачи данных на сервер по TCP.

Вот еще, чуть более функциональна:
Прикрепленные файлы
Прикрепленный файл  hercules_3_2_5.rar ( 461.52 килобайт ) Кол-во скачиваний: 83
 
Go to the top of the page
 
+Quote Post
rat
сообщение May 20 2013, 09:55
Сообщение #10


Местный
***

Группа: Свой
Сообщений: 497
Регистрация: 9-06-05
Из: Новосибирск
Пользователь №: 5 852



Цитата(vassabi @ May 20 2013, 15:58) *
Вот еще, чуть более функциональна:


Спасибо. Еще один вопрос - как помощью этой программы посмотреть, что я посылаю с SIM900 и посылаются ли данные вообще?
Go to the top of the page
 
+Quote Post
alexdos
сообщение May 20 2013, 11:10
Сообщение #11


Местный
***

Группа: Участник
Сообщений: 339
Регистрация: 10-07-08
Из: Херсон
Пользователь №: 38 856



Цитата(rat @ May 20 2013, 12:55) *
Спасибо. Еще один вопрос - как помощью этой программы посмотреть, что я посылаю с SIM900 и посылаются ли данные вообще?


Проще всего установить у себя на компе TCP IP Server, открыть на прием какойто порт, посмотреть какой у Вас IP в данный момент в сети интернета, настроить передачу на эти порт и IP и смотреть. НО! В каждом случае тут возможны свои индивидуальные плаяски "с бубном", зависит какой у Вас интернет.
Второй вариант, попросить на сервере на который Вы передаёте, посмотреть, присылает ли Ваш трекер строку.
Go to the top of the page
 
+Quote Post
rat
сообщение May 21 2013, 03:53
Сообщение #12


Местный
***

Группа: Свой
Сообщений: 497
Регистрация: 9-06-05
Из: Новосибирск
Пользователь №: 5 852



Цитата(alexdos @ May 20 2013, 18:10) *
Проще всего установить у себя на компе TCP IP Server, открыть на прием какойто порт, посмотреть какой у Вас IP в данный момент в сети интернета, настроить передачу на эти порт и IP и смотреть. НО! В каждом случае тут возможны свои индивидуальные плаяски "с бубном", зависит какой у Вас интернет.
Второй вариант, попросить на сервере на который Вы передаёте, посмотреть, присылает ли Ваш трекер строку.


Комп подключен к интернету через внутреннюю сеть. Как быть?
Go to the top of the page
 
+Quote Post
Aner
сообщение May 21 2013, 09:28
Сообщение #13


Гуру
******

Группа: Свой
Сообщений: 4 869
Регистрация: 28-02-08
Из: СПБ
Пользователь №: 35 463



Вам же ответили:
1) открыть на прием какой-то свободный порт, ...смотрите в меню вашего роутера.
2) посмотреть какой у вас IP в данный момент в сети интернета, ... там же в меню вашего роутера.
3) настроить передачу на эти порты, на адрес IP и смотреть. ...
Что тут непонятного? Или для вас эти настройки тёмный лес?
Go to the top of the page
 
+Quote Post
sobr
сообщение May 21 2013, 10:00
Сообщение #14


Знающий
****

Группа: Свой
Сообщений: 926
Регистрация: 18-01-07
Пользователь №: 24 552



Цитата(Aner @ May 21 2013, 16:28) *
Вам же ответили:
1) открыть на прием какой-то свободный порт, ...смотрите в меню вашего роутера.
2) посмотреть какой у вас IP в данный момент в сети интернета, ... там же в меню вашего роутера.
3) настроить передачу на эти порты, на адрес IP и смотреть. ...
Что тут непонятного? Или для вас эти настройки тёмный лес?
А кто нибудь говорил, что у rat есть доступ к настройкам NAT?
Go to the top of the page
 
+Quote Post
Aner
сообщение May 21 2013, 10:43
Сообщение #15


Гуру
******

Группа: Свой
Сообщений: 4 869
Регистрация: 28-02-08
Из: СПБ
Пользователь №: 35 463



Но это не тех проблема а организационная, если он знает как решить тех проблему, думаю с орг проблемой он не задал бы вопроса.
Или что не так?
Go to the top of the page
 
+Quote Post
Alex_TAV
сообщение May 21 2013, 10:43
Сообщение #16


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

Группа: Свой
Сообщений: 145
Регистрация: 12-01-07
Из: Россия, г. Омск
Пользователь №: 24 357



А вот вопрос как все же правильно открывать подключение по TCP? Раньше с SIM300 использовал алгоритм
Алгоритм подключения такой -
AT+CGATT? пока не прийдет CGATT:1
AT+IPR=115200
ATE0
AT+CIPCSGP=1,"internet","gdata","gdata" - точка доступа
AT+CIPSTART=="TCP","xxx.xxx.xxx.xxx","09003" подключится по TCP к серверу и ждем CONNECT OK


Внимательно перечитав доки для SIM900, увидел другой рекомендуемый набор команд, тогда сделал -
AT+CGATT? пока не прийдет CGATT:1
AT+IPR=115200
ATE0
AT+CSTT="internet","gdata","gdata" точка доступа
AT+CIICR
AT+CIFSR // локальный IP
AT+CIPSTART=="TCP","xxx.xxx.xxx.xxx","09003" подключится по TCP к серверу и ждем CONNECT OK

Как правильнее?
Go to the top of the page
 
+Quote Post
vassabi
сообщение May 21 2013, 14:10
Сообщение #17


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

Группа: Свой
Сообщений: 156
Регистрация: 18-02-13
Из: Киев
Пользователь №: 75 678



Цитата(Alex_TAV @ May 21 2013, 13:43) *
...
AT+IPR=115200
...
Как правильнее?

А зачем бодрейт дерагать то?
Правильнее так, как написано в рекомендациях на конкретный модуль.
Go to the top of the page
 
+Quote Post
_Артём_
сообщение May 21 2013, 14:26
Сообщение #18


Гуру
******

Группа: Свой
Сообщений: 2 128
Регистрация: 21-05-06
Пользователь №: 17 322



Цитата(vassabi @ May 21 2013, 17:10) *
А зачем бодрейт дерагать то?

Чтобы автоопределение скорости отключить.
Например при передачи бинарных данных (AT+CIPSEND=xxx) модем пожет автоопределится на какую-нибудь другую скорость.
Go to the top of the page
 
+Quote Post
vassabi
сообщение May 21 2013, 14:36
Сообщение #19


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

Группа: Свой
Сообщений: 156
Регистрация: 18-02-13
Из: Киев
Пользователь №: 75 678



Цитата(_Артём_ @ May 21 2013, 17:26) *
Например при передачи бинарных данных (AT+CIPSEND=xxx) модем пожет автоопределится на какую-нибудь другую скорость.
Это где такое написано? Или это из опыта?
Конечно, зависит от задачи, но в 90% случаев бодрейт устанавливается один раз в жизни девайса (без учета аварийных ситуаций и перепрошивок)

Сообщение отредактировал vassabi - May 21 2013, 14:36
Go to the top of the page
 
+Quote Post
_Артём_
сообщение May 21 2013, 14:57
Сообщение #20


Гуру
******

Группа: Свой
Сообщений: 2 128
Регистрация: 21-05-06
Пользователь №: 17 322



Цитата(vassabi @ May 21 2013, 17:36) *
Это где такое написано? Или это из опыта?

Это из опыта (возможно уже устаревшего).

Цитата(vassabi @ May 21 2013, 17:36) *
Конечно, зависит от задачи, но в 90% случаев бодрейт устанавливается один раз в жизни девайса (без учета аварийных ситуаций и перепрошивок)

Вобщем да, к тому же можно запросить текущую скорость и если она устраивает можно не менять.
Цитата
AT+IPR?

+IPR: 19200

OK

AT+IPR=115200

OK
Go to the top of the page
 
+Quote Post
vassabi
сообщение May 21 2013, 15:55
Сообщение #21


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

Группа: Свой
Сообщений: 156
Регистрация: 18-02-13
Из: Киев
Пользователь №: 75 678



Цитата
AT+IPR?
+IPR: 19200
OK
AT+IPR=115200
OK

Такое врядли возможно, т.к. если модуль отзывался на скорости 19200, то вы о ней точно знаете.
А в режиме автоопределения бодрейта, команда AT+IPR? отвечает всегда +IPR: 0
Переключение в AT+IPR=115200 требует последующего рестарта, а так как AT+IPR попадает в список команд, которые сохраняются в NVRAM, то строки переопределения бодрейта теряют смысл.

Сообщение отредактировал vassabi - May 21 2013, 15:57
Go to the top of the page
 
+Quote Post
_Артём_
сообщение May 21 2013, 16:33
Сообщение #22


Гуру
******

Группа: Свой
Сообщений: 2 128
Регистрация: 21-05-06
Пользователь №: 17 322



Цитата(vassabi @ May 21 2013, 18:55) *
Такое врядли возможно

Что именно невозможно?

Цитата(vassabi @ May 21 2013, 18:55) *
если модуль отзывался на скорости 19200, то вы о ней точно знаете.

Отозваться-то он может, но при этом скорость может быть настоена на автоопределение.

Цитата(vassabi @ May 21 2013, 18:55) *
Переключение в AT+IPR=115200 требует последующего рестарта

Зачем рестарт? Скорость на лету вполне переключалась.

Цитата(vassabi @ May 21 2013, 18:55) *
а так как AT+IPR попадает в список команд, которые сохраняются в NVRAM

Возможно без рестарта новая настройка IPR не запомнится (но это проверять надо) или может AT&W её сохранить может.
Go to the top of the page
 
+Quote Post
vassabi
сообщение May 21 2013, 17:02
Сообщение #23


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

Группа: Свой
Сообщений: 156
Регистрация: 18-02-13
Из: Киев
Пользователь №: 75 678



Цитата
Отозваться-то он может, но при этом скорость может быть настоена на автоопределение.

В этом случае AT+IPR? вам не поможет, ответ будет +IPR: 0

Что вам мешает отловить RDY сразу после включения питания и если ее нет, отправить AT (для авто-бодрейта), а затем зафиксировать необходимую скорость навсегда?
Кстати, для этого вам не нужна AT&W, я же написал AT+IPR автоматически сохраняется в NVRAM.

Сообщение отредактировал vassabi - May 21 2013, 17:06
Go to the top of the page
 
+Quote Post
_Артём_
сообщение May 21 2013, 17:35
Сообщение #24


Гуру
******

Группа: Свой
Сообщений: 2 128
Регистрация: 21-05-06
Пользователь №: 17 322



Цитата(vassabi @ May 21 2013, 20:02) *
В этом случае AT+IPR? вам не поможет, ответ будет +IPR: 0

Если ответит +IPR: 0, значит скорость не настроена, а если +IPR: xxxxxx - то скорость задана и повторно её задавать не нужно.

Цитата(vassabi @ May 21 2013, 20:02) *
Что вам мешает отловить RDY сразу после включения питания и если ее нет, отправить AT (для авто-бодрейта), а затем зафиксировать необходимую скорость навсегда?

Можно и так.
Цитата(vassabi @ May 21 2013, 20:02) *
Кстати, для этого вам не нужна AT&W, я же написал AT+IPR автоматически сохраняется в NVRAM.

Да. Проверил - сохранять или слать AT&W не надо - запоминается и так.
Go to the top of the page
 
+Quote Post
Alex_TAV
сообщение May 23 2013, 12:39
Сообщение #25


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

Группа: Свой
Сообщений: 145
Регистрация: 12-01-07
Из: Россия, г. Омск
Пользователь №: 24 357



Цитата(vassabi @ May 21 2013, 21:10) *
А зачем бодрейт дерагать то?
Правильнее так, как написано в рекомендациях на конкретный модуль.

Т.к. в SIM900 по умолчанию установлено автоопределение скорости, то я предпочитаю подстраховатся и установить ее еще и вручную. А каждый раз - так как я для надежности в случае неудач при подключении, выключаю модуль и начинаю работу "с нуля".
Go to the top of the page
 
+Quote Post

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

 


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


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