Удаленное управление через sim900

Что бы еще такого сделать?... Предлагайте! Обсудим все!!!
Ответить
Аватара пользователя
olegkomak
Встал на лапы
Сообщения: 123
Зарегистрирован: Пт янв 08, 2010 16:21:41
Откуда: Тамбов
Контактная информация:

Удаленное управление через sim900

Сообщение olegkomak »

попалась в руки микросхема sim900
Вдоволь наигравшись звонками и СМС решил что то более интересное сварганить .
Например удаленное управление и мониторинг чего угодно (да пусть в итоге хоть сигнализация ).
Решено использовать GPRS .

Сначала попробовал по FTP передавать команды (читать из файла , записывать в файл) - у очень долго проходит соединение с FTP - до 60 секунд !!!

Потом попробовал по HTTP . Команду передавал в строке адреса
AT+HTTPPARA="URL","СЕРВЕР.ru/p.php?n=1"
там на сервере уже PHP скрипт обрабатывал команду.

Тут время соединения (передача адреса) гораздо быстрее - около 5-10 секунд.
Но опять же - для оперативного управления чем нибудь это очень долго .

Каким образом с помощью sim900 можно быстрее передавать и получать команды ?
Талантам надо помогать, бездарности пробьются сами! (Л.Гольдберг)
Реклама
Аватара пользователя
РадиоЛоматель
Мудрый кот
Сообщения: 1733
Зарегистрирован: Чт авг 21, 2008 22:03:30
Откуда: Одесса(Украина)
Контактная информация:

Re: Удаленное управление через sim900

Сообщение РадиоЛоматель »

olegkomak писал(а):Каким образом с помощью sim900 можно быстрее передавать и получать команды ?
Никаким. Пинг через GPRS все равно будет высоким, как ни крути. Тут 3G может помочь, наверное, и то не обязательно. Самое меньшее, что удавалось получить с SIM-а - это 3-4 секнды при работе через TCP. И то местами бывало и 10 и 20 секунд. Для оперативного управления это все равно не годится.
(*tmp) &= ~( ( (param1 & (1<<PARAM1_BIT6)) || ((param2==PARAM2_TRUE)&&(--param3)) ) ? (param1 & (~param2)) : (Func1() | FUNC1_FLAGS) );
Люблю Си...
Реклама
Аватара пользователя
olegkomak
Встал на лапы
Сообщения: 123
Зарегистрирован: Пт янв 08, 2010 16:21:41
Откуда: Тамбов
Контактная информация:

Re: Удаленное управление через sim900

Сообщение olegkomak »

Вот как раз сейчас TCP и пытаюсь попробовать .
Каждая комада будет 1-2 байта . Соединение устанавливается один раз и потом передача-получение команд - не так ? Ведь время тратится на соединение , передача 1-2 байт быстро должна проскочить - нет ?

Бьюсь пока с сервером на компе . Не могу зайти на сервер из инета . Кругом только динамические IP .
При использовании инета на компе через USB модем со статическим IP должно работать ? (имею ввиду зайти на сервер из инета)

РадиоЛоматель ты сервер создавал когда TCP протокол пробовал ?
Талантам надо помогать, бездарности пробьются сами! (Л.Гольдберг)
Аватара пользователя
РадиоЛоматель
Мудрый кот
Сообщения: 1733
Зарегистрирован: Чт авг 21, 2008 22:03:30
Откуда: Одесса(Украина)
Контактная информация:

Re: Удаленное управление через sim900

Сообщение РадиоЛоматель »

olegkomak писал(а):РадиоЛоматель ты сервер создавал когда TCP протокол пробовал ?
Это был сервер крупного предприятия, со статическим "внешним" ай-пи. "Домашний интернет" (в частности, и с юсб модема) не имеет возможности принимать входящие подключения рядовым пользователям. Для решения этой проблемы можно воспользоваться бесплатным DNS-именем, привязывающимся к вашему компьютеру. Кажется, этот сервис именуется DynDNS.
Да, конечно соеденение устанавливается один раз. Но, в любом случае, передавая два байта по TCP, или 65535 байт, вы передаете целый пакет с заголовком. Время передачи от этого почти не зависит, лишь вероятность доставки пакета по месту назначения падает с увеличением его размера. Но не это страшно. Ваши данные просто физически не могут преодолеть все узлы от базовой станции вашей GSM сети до вашего сервера за небольшое время. Пусть это будет UDP пакет, или TCP - разницы нет. Работа через HTTP очень медленная. Там целая туча подтверждений ходит туда-сюда. Не говоря уже про FTP. Через TCP чуть быстрее. Но вряд-ли пинг упадет ниже 2-3 секунд. Тем более, вы пускаете пакеты через GSM или 3G сети два раза.
(*tmp) &= ~( ( (param1 & (1<<PARAM1_BIT6)) || ((param2==PARAM2_TRUE)&&(--param3)) ) ? (param1 & (~param2)) : (Func1() | FUNC1_FLAGS) );
Люблю Си...
Реклама
Эиком - электронные компоненты и радиодетали
Ответить

Вернуться в «Умные мысли»