Подключаем Ethernet Shield к интернету
В статье разобрано подключение клиента на ардуине с платой Ethernet shield к сети Интернет через 3G модем. Применен минироутер TP-link MR-3020.
Разобранные ранее примеры Web-сервер, Web-клиент проверялись в проводной локальной сети, подключенной через роутер к Интернет. В таких "тепличных" условиях редко приходится работать автономным контроллерам. Поэтому интерес представляет создание "прямого" (без домашней сети) подключения к глобальной сети.
Подключение делаем с помощью недорогого 3G модема и самого дешевого роутера с USB-хостом. Применение роутера позволяет попутно решить проблему питания ардуино - мощности блока питания хватает на всех...
Разобранные ранее примеры Web-сервер, Web-клиент проверялись в проводной локальной сети, подключенной через роутер к Интернет. В таких "тепличных" условиях редко приходится работать автономным контроллерам. Поэтому интерес представляет создание "прямого" (без домашней сети) подключения к глобальной сети.
Подключение делаем с помощью недорогого 3G модема и самого дешевого роутера с USB-хостом. Применение роутера позволяет попутно решить проблему питания ардуино - мощности блока питания хватает на всех...
Оборудование и его настройка...
В качестве 3G модема используем Мегафон (Huawei) E1550 - см фото. Модем пришлось предварительно "разлочить". Дело это, на удивление, не сложное: набираем в поисковике, получаем программку, которая быстренько определит нам код, который надо ввести в поле ввода, появляющееся при попытке входа в неродную Мегафоновскую сеть. После такой процедуры модем "понимает" любую сеть (испытано на Украине в сетях МТС и Life:). Здесь проверено с МТС-овской симкой.
Роутер пришлось купить - посмотрел по прайсам: самый недорогой с портами LAN и USB - TP-link MR-3020 (см фото). Удобно то, что нет "лишних" сетевых портов, питание через стандартный миниUSB, отдельный внешний блок питания с выходом в виде стандартного USB AF разъема. Кабель питания имеет дополнительный разъем, через который можно запитать ардуино через USB порт (на фото ниже видно питание через переходник AF-AF и кабель AM-BM).
Итак: сначала подключаем модем к компьютеру "напрямую" - убеждаемся, что ввод pin-кода не требуется, подключение проходит, Интернет работает.
Затем подключаем патч-кордом "пустой" роутер к LAN порту компьютера. Заходим на 192.168.0.254 - видим странички роутера (сетевое подключение надо настраивать на автоматическое получение IP-адреса, т.к. в роутере есть DHCP-сервер). Отметим, что роутер начинает раздавать адреса начиная с 192.168.0.100. Сразу ставим переключатель режима работы роутера в положение "3G".
Вставляем в роутер модем, убеждаемся, что начинает мигать светодиод модема. Ждем на страничке "Status" роутера определения модема. Теоретически, через 1-2 минуты модем должен "прописаться". В моем случае модем не определился и через 20 минут. Помогло обновление прошивки роутера на более свежую версиюTL-MR3020_V1.00_120817. Когда модем определится, можно проверить работу Интернет через 3G подключение через роутер.
Можно отключить WiFi в роутере, чтоб не расходовать мощность блока питания, но я оставил для проверки соединения в дальнейшем.
Роутер пришлось купить - посмотрел по прайсам: самый недорогой с портами LAN и USB - TP-link MR-3020 (см фото). Удобно то, что нет "лишних" сетевых портов, питание через стандартный миниUSB, отдельный внешний блок питания с выходом в виде стандартного USB AF разъема. Кабель питания имеет дополнительный разъем, через который можно запитать ардуино через USB порт (на фото ниже видно питание через переходник AF-AF и кабель AM-BM).
Итак: сначала подключаем модем к компьютеру "напрямую" - убеждаемся, что ввод pin-кода не требуется, подключение проходит, Интернет работает.
Затем подключаем патч-кордом "пустой" роутер к LAN порту компьютера. Заходим на 192.168.0.254 - видим странички роутера (сетевое подключение надо настраивать на автоматическое получение IP-адреса, т.к. в роутере есть DHCP-сервер). Отметим, что роутер начинает раздавать адреса начиная с 192.168.0.100. Сразу ставим переключатель режима работы роутера в положение "3G".
Вставляем в роутер модем, убеждаемся, что начинает мигать светодиод модема. Ждем на страничке "Status" роутера определения модема. Теоретически, через 1-2 минуты модем должен "прописаться". В моем случае модем не определился и через 20 минут. Помогло обновление прошивки роутера на более свежую версиюTL-MR3020_V1.00_120817. Когда модем определится, можно проверить работу Интернет через 3G подключение через роутер.
Можно отключить WiFi в роутере, чтоб не расходовать мощность блока питания, но я оставил для проверки соединения в дальнейшем.
Собираем автономную систему...
На данном этапе все компоненты системы у нас проверены по отдельности: можно собирать все воедино. Собираем как на фото выше, включаем, ждем ...
Никаких признаков нормальной работы. Подключаем порт USB Arduino к компьютеру, мониторим СОМ соединение - видим, что соединение с web-сервером не происходит. Проверяем скетч - сразу видим, что у нас прописан IP-адрес "не нашей" сети и DNS сервер прописан совсем иной. Снова подключаем к роутеру компьютер, набираем в командной строке ipconfig /all. Запоминаем адрес DNS, определяемся с IP-адресом. Корректируем скетч, результат - тот же: нет соединения. Вспоминаем, что роутер сам раздает адреса. Изучаем библиотеку Ethernet: отмечаем, что в методе begin() есть вариант, когда IP принимается картой с DHCP сервера - это нам и нужно... Корректируем скетч. Проверяем... через 2-3 минуты после включения, все определяется и нормально работает.
Заходим на сайт, читаем базу - видим, что данные поступают. Проверяем управление светодиодом - с запаздыванием до 15 секунд все отрабатывается!
Никаких признаков нормальной работы. Подключаем порт USB Arduino к компьютеру, мониторим СОМ соединение - видим, что соединение с web-сервером не происходит. Проверяем скетч - сразу видим, что у нас прописан IP-адрес "не нашей" сети и DNS сервер прописан совсем иной. Снова подключаем к роутеру компьютер, набираем в командной строке ipconfig /all. Запоминаем адрес DNS, определяемся с IP-адресом. Корректируем скетч, результат - тот же: нет соединения. Вспоминаем, что роутер сам раздает адреса. Изучаем библиотеку Ethernet: отмечаем, что в методе begin() есть вариант, когда IP принимается картой с DHCP сервера - это нам и нужно... Корректируем скетч. Проверяем... через 2-3 минуты после включения, все определяется и нормально работает.
Заходим на сайт, читаем базу - видим, что данные поступают. Проверяем управление светодиодом - с запаздыванием до 15 секунд все отрабатывается!
Ну, вот, теперь наше устройство полностью автономно (в пределах покрытия GPRS/3G). Можно управлять гаражом и домом в деревне...
Для удобства обращения к сайту на Hostinger, приведу ссылки: Просмотр базы данных. Управление состоянием pin 9 Arduino - у меня на нем светодиод - можете помигать...
размещено: 6 апреля 2013 года