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

Есть такая задача: нужно контролировать удаленное устройсто через интернет.

Планирую использовать в качестве модема GPRS Siemens 35 серии + AVR.

Вопрос такой, в каком направленни мне двигаться (протокол по проще, пример

сайта для контроля и т. д.)

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


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

Не понятно, что подразумевается под словом "контролировать"?

Вы хотите управлять устройством? Или читать с него значения измерений? Какие задержки вас устраивают? Будете держать все время канал? Или поднимать только в случае необходимоти связи?

 

Техническое задание давайте. Тогда и поговорим.

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


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

Не понятно, что подразумевается под словом "контролировать"?

Вы хотите управлять устройством? Или читать с него значения измерений? Какие задержки вас устраивают? Будете держать все время канал? Или поднимать только в случае необходимоти связи?

 

Техническое задание давайте. Тогда и поговорим.

 

Нужно читать и при необходимости управлять. Задержка не важна.

Связь будет в случаи необходимости.

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


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

Варианты:

1. Прямой телефонный звонок, далее скрипучее модемное соединение и "говорите, что устройству делать, или сколько там на входе?"

 

2. SMS "Вкл. реле", AVR его разбирает/понимает, и делает "вкл. реле", и тут же в ответ дает SMS "реле есть вкл".

Или "Сколько на входе?", AVR думает, и отсылает "На входе 300".

 

3. Удаленное устройство держит поднятой GPRS-сессию, если валится, то тут же заново поднимает.

Тогда устройство имеет свой "адрес, порт" в сети Internet, и вы можете слать команды/запросы в этот порт.

 

Протокол... А что протокол... Шифрование от постороннего управления? Размер передаваемых данных в одну сторону, в другую... Тут я вообще ничего не знаю.

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


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

3. Удаленное устройство держит поднятой GPRS-сессию, если валится, то тут же заново поднимает.

Тогда устройство имеет свой "адрес, порт" в сети Internet, и вы можете слать команды/запросы в этот порт.

 

Насколько я понимаю, проще, если в качестве сервера будет выступать стационарный компьютер. Получить фиксированный адрес от сотового провайдера значительно сложнее...

 

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

 

Что касается протокола - то в простейшем случае можно просто пихать в tcp\ip свои собственные структуры, предваряя их полем типа и дополняя CRC.

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


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

Насколько я понимаю, проще, если в качестве сервера будет выступать стационарный компьютер. Получить фиксированный адрес от сотового провайдера значительно сложнее...

 

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

 

А я и не говорил, что это будет статический адрес.

У нас есть система телеметрии удаленных объектов на базе собственного сервера. По причине уменьшения задержек (например, авария на удаленном объекте) удаленный модуль держит все время поднятой GPRS-сессию. Как только она валится, модуль опять ее поднимает и стучится на сервер "вот он я, мой номер такой-то", сервер сидит новый "адрес" модуля с номером такой-то, и тут они начинают общаться.

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


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

3. Удаленное устройство держит поднятой GPRS-сессию, если валится, то тут же заново поднимает.

Тогда устройство имеет свой "адрес, порт" в сети Internet, и вы можете слать команды/запросы в этот порт.

 

Надо этот вариант.

 

Алгоритм подключения такой:

1. Я звоню на номер удаленного устройства.

2. Устройство определит мой номер и сбросит вызов.

3. Через пару секунд оно подкючается к нету и далее обмен данными.

 

А управление надо сделать через сайт.

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


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

Алгоритм подключения такой:

1. Я звоню на номер удаленного устройства.

2. Устройство определит мой номер и сбросит вызов.

3. Через пару секунд оно подкючается к нету и далее обмен данными.

 

А ваш номер ему зачем?

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


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

Надо этот вариант.

 

Алгоритм подключения такой:

1. Я звоню на номер удаленного устройства.

2. Устройство определит мой номер и сбросит вызов.

3. Через пару секунд оно подкючается к нету и далее обмен данными.

 

А управление надо сделать через сайт.

 

Ну вот вы сами и ответили себе на все вопросы.

 

Мы так делали: кидали смс в модуль "забери прошивку", модуль лез на наш сервер, забирал файлик для него, сам перепрошивался, сбрасывался и работал с новой прошивкой.

 

А номер телефона, чтоб отсечь ложные звонки.

Изменено пользователем Glupen'

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


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

простите что вмешиваюсь:

а откуда у сименса 35 серии жопорез??? если использовать CSD - соединение то это дорого обойдется ... и мне кажется что оно уже отошло...

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


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

Я делал проще, но при этом использовал Siemens TC65 (писал на Java, но можно управлять и через AVR) :

1. Пользователь звонит на номер, модем его определяет и сбрасывает звонок

2. Поднимается соединение через GPRS и поднимается HTTP сервер

3. На телефон пользователя пересылает полученный IP и порт, который открыл. (необходимо включить услугу "IP адрес" иначе адреса будут недоступны, т.к. будут за NATом)

4. Пользователь заходит через инет по данному адресу и порту через браузер и работает с устройством.

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


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

а откуда у сименса 35 серии жопорез??? если использовать CSD - соединение то это дорого обойдется ... и мне кажется что оно уже отошло...

Видимо имеется в виду модем MC35(i), там что то под названием GPRS есть :biggrin:

 

2 Alex_1811:

Как по мне на AVR поднимать TCP/IP соединение самостоятельно очень проблемная вещь, а проблемы использования встроенных в модемы стеков TCP/IP в этом форуме уже обсуждалось не раз.

Может проще (и как раз по силам AVR) обмениваться sms. Пмоему по 160 символов можно передавать запросто. Взять пакет с шаровыми sms и наслаждаться простотой и работающим устройством.

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


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

Как по мне на AVR поднимать TCP/IP соединение самостоятельно очень проблемная вещь,

Зато UDP/IP можно поднять хоть в секции бутлоадера. Чем недостаточно для обмена?

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


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

Зато UDP/IP можно поднять хоть в секции бутлоадера. Чем недостаточно для обмена?

 

А можно про него подробнее.

Может есть пример реализации обмена?

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


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

А можно про него подробнее.

http://www.rfc.net/rfc768.html

 

Может есть пример реализации обмена?

тут есть пошаговый пример того что нужно сделать, правда для ethernet

http://www.astrosurf.com/cavadore/Ethernet...er/sources.html

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


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

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

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

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

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

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

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

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

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

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