Администрирование Железо HLK-RM04 Thu, November 21 2024  

Поделиться

Нашли опечатку?

Пожалуйста, сообщите об этом - просто выделите ошибочное слово или фразу и нажмите Shift Enter.


HLK-RM04 Печать
Добавил(а) microsin   

HLK-RM04 это новый, недорогой модуль со встроенными интерфейсами UART, USB, Ethernet и Wi-Fi. Конечно, есть более дешевые модули (например ESP-01 на контроллере ESP8266 [2]), но HLK-RM04 подкупает обилием интерфейсов. Причем интерфейсов Ethernet у него целых 2 штуки - чтобы их получить, нужно всего лишь подключить к дифференциальным сигналам приема/передачи Ethernet-трансформаторы. Модуль поддерживает стек TCP/IP, и может при соответствующей настройке гонять трафик между всеми имеющимися интерфейсами. Wi-Fi поддерживает режим как точки доступа, так и беспроводного клиента. С помощью модуля HLK-RM04 обычные микроконтроллерные устройства можно довольно легко подключить как к локальной сети, так и к Интернет.

HLK RM04 block diagram

[Основные возможности модуля]

• Wi-Fi, совместимый с IEEE802.11b/g/n (2.4 ГГц), работающий в режиме точки доступа и станции (WPS/WDS). Поддержка протоколов безопасности WEP64/WEP128/TKIP/AES, WEP/WPA-PSK/WPA2-PSK.
• TTL UART со скоростью 1200..500000 бод. Через этот интерфейс может осуществляться обмен данными с другими интерфейсами и управление AT-командами.
• Ethernet интерфейсы WAN и LAN, с поддержкой протоколов стека TCP/IP: PPPoE, UDP, DDNS, DHCP, HTTP.
• Встроенный WEB-сервер для конфигурирования.

Области применения:

• Беспроводное управление, телеметрия.
• Домашняя (системы "Умный дом") и производственная автоматизация.
• Автодиагностика OBD-II через Wi-Fi.

[Технические параметры]

Параметр Значение Примечание
Типовые параметры DC (питание)
Напряжение питания VDD +5V Допустимый максимальный диапазон 3.9..5.5V.
Ток потребления при работе только Wi-Fi ~140mA Обмен данными Serial - Wi-Fi.
Ток потребления при использовании одного RJ45 ~120mA Обмен данными Serial - RJ45.
Ток потребления при использовании двух RJ45 ~135mA Обмен данными WAN - LAN.
Использование WiFi и двух RJ45. ~160mA Режим по умолчанию / заводские настройки.
Типовые радиочастотные характеристики
Чувствительность приема -70dBm(802.11n)  
Максимальная выходная мощность передатчика 18dBm/15dBm/13.5dBm IEEE802.11b/g/n
Волновое сопротивления коннектора и кабеля для антенны 50 Ω 2.4..2.5 ГГц
Коэффициент стоячей волны по напряжению (VSWR) 2:1 2.4..2.5 ГГц
Точность установки частоты ±25ppm Дополнительно допускается ±15ppm.
Периферийные устройства, выходы
UART Сигналы UART_RX, UART_TX Диапазон скоростей 1200 бод .. 500 кбод.
RJ45 LAN Сигналы TXOP1, TXON1, RXIP1, RXIN1 Поддерживается протокол DHCP (сервер).
RJ45 WAN Сигналы TXOP2, TXON2, RXIP2, RXIN2 Поддерживается PPPoE, протокол DHCP (клиент).
Выход стабилизатора 1.8V +1.8V Ток до 300mA, возможный диапазон выходного напряжения 1.65..1.9V.
Выход стабилизатора 3.3V +3.3V Ток до 300mA, возможный диапазон выходного напряжения 3.1..3.5V.
Напряжение выводов GPIO 3.3V Диапазон напряжений 3.1..3.5V.

Габаритные размеры:

HLK RM04 dimensions

Цоколевка выводов:

Мнемоника Описание
1 VCC5V Напряжение питания +5V±10%.
2 GND Аналоговая земля.
3 WIFILED Светодиод активности Wi-Fi.
4 VO3.3 Выход стабилизатора 3.3V/300mA.
5 LINK1 Светодиод активности 1-го порта 10/100 PHY (LAN Ethernet), активный уровень лог. 0.
6 USB_P Зарезервировано. Может использоваться как сигналы порта USB.
7 USB_M
8 GPIO0 Вывод порта ввода/вывода, может использоваться как SDA интерфейса I2C.
9 GPIO1 Вывод порта ввода/вывода, может использоваться как SCK интерфейса I2C или сигнал управления приемопередатчиком RS485.
10 ES/RST Вход для выхода из режима прозрачной передачи данных. Также используется для восстановления заводских настроек по умолчанию (подключается к кнопке SW2 Exit/Default).
11 TXOP1 Дифференциальные сигналы передачи 1-го порта 10/100 PHY Ethernet (должен подключаться к трансформатору наподобие HR911105A).
12 TXON1
13 RXIP2 Дифференциальные сигналы приема 2-го порта 10/100 PHY Ethernet (должен подключаться к трансформатору наподобие HR911105A).
14 RXIN2
15 RXIN1 Дифференциальные сигналы приема 1-го порта 10/100 PHY Ethernet (должен подключаться к трансформатору наподобие HR911105A).
16 RXIP1
17 TXON2 Дифференциальные сигналы передачи 2-го порта 10/100 PHY Ethernet (должен подключаться к трансформатору наподобие HR911105A).
18 TXOP2
19 GPIO2 Вывод порта ввода/вывода, может использоваться как RTS_N (сигнал RTS аппаратного управления потоком интерфейса RS232).
20 UART_RX UART RXD
21 UART_TX UART TXD
22 GPIO3 Вывод порта ввода/вывода, RX второго интерфейса UART.
23 LINK2 Светодиод активности 2-го порта 10/100 PHY (WAN Ethernet), активный уровень лог. 0.
24 GPOI4 Вывод порта ввода/вывода, может использоваться как CTS_N (сигнал CTS аппаратного управления потоком интерфейса RS232).
25 WPS/RST WiFi Protected Setup (WPS) / восстановление заводских настроек по умолчанию (подключается к кнопке SW1 WPS/Default).
26 GPIO5 Ножка порта ввода/вывода, TX второго интерфейса UART.
27 VO1.8 Выход стабилизатора 1.8V/300mA.
28 VCC5V Напряжение питания +5V±10%.

Примечание: все логические уровни логики привязаны к напряжению питания 3.3V (т. е. лог. 0 близок к 0V, лог. 1 близка к 3.3V).

[Кнопка Exit/Default]

Эта кнопка при нажатии выдает на вывод модуля ES/RST логический 0. Если после включения питания нажать на эту кнопку на длительность больше 0.1 сек, но меньше 5 сек, то модуль HLK-RM04 перейдет в режим конфигурирования AT-командами. Если же после включения питания нажать и удерживать кнопку больше 5 сек, и потом отпустить её, то модуль сбросит все свои настройки и установит заводские настройки по умолчанию.

[RS-232 (UART1)]

Интерфейс UART1 может работать в 2 режимах - прозрачный (включен по умолчанию после включения питания) и режим AT-команд. По умолчанию UART1 настроен с параметрами 115200 бод, 8 бит данных, 1 стоп-бит, без контроля четности. Переключение между прозрачным режимом и AT-режимом может осуществляться либо с помощью вывода ES/RST (выход из прозрачного режима импульсом лог. 0 длительностью около 200 мс), либо с помощью специальной последовательности символов. Обратное переключение из AT-режима в прозрачный режим может произойти либо перезагрузкой модуля, либо специальной AT-командой.

Режим AT-команд это режим, который позволяет Вам поменять все настройки через интерфейс UART (с помощью микроконтроллера).

Перевести модуль в режим AT-команд можно тремя способами:

Способ 1: выдать импульс лог. 0 на вывод ES/RST на время больше Tes и меньше Trst; здесь по умолчанию Tes = 100 мс Trst = 6 с. Таким образом, если удерживать вывод ES/RST в лог. 0 на время около 200 мс, то модуль перейдет в режим AT-команд.

HLK RM04 enter AT mode with ES RST pin

Способ 2: с помощью специально сформированной последовательности символов, переданной микроконтроллером. Этот способ работает, если он разрешен командой at+escape=1. Последовательность состоит из 3 символов "+" с интервалом между ними Tpt (время последовательного фрейма) from one another, затем пауза 500 мс (интервал между 400 мс и 600 мс), после чего посылаются 3 символа 0x1B с интервалом Tpt. После того, как модуль принял эту последовательность данных, он перейдет в режим AT-команд.

HLK RM04 enter AT mode with special ESC sequence

Способ 3: есть еще одна специальная последовательность симоволов для выхода из прозрачного режима, её работа разрешается командой at+escape2=1. Она состоит из 3 символов "+", см. диаграмму ниже. Перед этими треся символами должен быть интервал паузы Tescape (длительностью 2000 мс), и после него должен быть интервал времени Tpt (время последовательного фрейма).

HLK RM04 enter AT mode with special sequence Tescape2

По сравнению с предыдущим способом последний способ проще, однако из-за простоты может произойти неожиданный выход из прозрачного режима, если в потоке данных встретятся подряд три символа "+".

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

[Быстрый запуск]

Чтобы можно было использовать модуль HLK-RM04, нужна минимальная обвязка, позволяющая подключить его к сети Ethernet. Тогда через веб-интерфейс станет доступен интерфейс конфигурирования модуля. К Ethernet модуль подключается через стандартный Ethernet-трансформатор, что можно сделать самому. Однако удобнее всего купить внешнюю материнскую плату для модуля KIT-V2.3 (стоит она недорого, всего лишь $4.45 на aliexpress):

HLK RM04 KIT V2 3 top HLK RM04 KIT V2 3 bottom HLK RM04 KIT V2 3 with module

Для питания модуля HLK-RM04 потребуется источник постоянного стабилизированного напряжения 5V на ток не менее 500 мА. Я взял для этой цели обычное зарядное устройство для смартфона (обычно такие зарядные устройства дают ток 1A и больше).

Чтобы сконфигурировать модуль HLK-RM04, нужно подключиться к его веб-серверу. Это можно сделать 2 способами - либо через интерфейс WAN, либо через интерфейс LAN. Оба эти способа отличаются друг от друга только сетевыми настройками - нужно подключить модуль к компьютеру через сеть. Дальше, если знать сетевой IP-адрес модуля, нужно подключиться к нему браузером к порту 80, ввести логин/пароль admin/admin, после чего откроется WEB-интерфейс конфигурирования модуля.

WAN. Этот вариант подключения требует наличия внешнего сервера DHCP. Это может быть, примеру, DHCP-сервер домашнего роутера, через который Вы подключаетесь к Интернет. При подключении модуля через интерфейс WAN модуль HLK-RM04 получит IP-адрес. Этот адрес можно узнать из утилиты администрирования DHCP-сервера (для домашнего роутера это обычно HTTP-админка).

LAN. Этот интерфейс с завода имеет фиксированную настройку на IP-адрес 192.168.16.254 с маской 255.255.255.0. Поэтому потребуется настройка сетевого интерфейса компьютера так, чтобы они соответствовали этим фиксированным настройкам. Вбейте в настройку сетевой карты компьютера любой адрес, чтобы он попал в эту подсеть, например 192.168.16.100.

Итак, модуль подключен к сети, мы знаем его IP-адрес. Теперь запустите браузер, и введите в строке адреса браузера этот адрес IP. Для подключения через WAN это будет адрес, который дал сервер DHCP, а для подключения через LAN это будет адрес 192.168.16.254.

[HTTP-сервер модуля HLK-RM04]

Веб-сервер модуля HLK-RM04 предназначен для администрирования. Вот его основные функции:

• Экспорт и импорт настроек через выгрузку/загрузку файла.
• Перепрошивка модуля (обновление firmware).
• Изменения логина/пароля админки.
• Настройка скорости и параметров последовательного интерфейса.
• Настройка режима, параметров и настроек безопасности Wi-Fi.
• Настройка интерфейсов WAN и LAN.
• Установка общего режима работы модуля.

[Режимы работы модуля HLK-RM04 как моста для передачи данных]

Модуль может быть сконфигурирован в 4 основных режимах: режим по умолчанию как точка доступа WiFi и всеми включенными интерфейсами (как модуль приходит с завода), мост UART - Ethernet, мост UART - клиент WiFi, мост UART - точка доступа WiFi. Режим может быть настроен либо через WEB-интерфейс, либо AT-командами. Эти режимы определяют физический сетевой канал связи, по которому данные будут поступать в интерфейс UART1 и обратно.

В этом режиме Wi-Fi включен в режиме точки доступа (Access Point, AP), Интерфейсы Ethernet1 (LAN) и Ethernet2 (WAN) включены. При соответствующей настройке данные передаются между UART1 и сетевыми интерфейсами. Безопасность Wi-Fi поддерживает все существующие системы шифрования.

HLK RM04 mode default

В этом режиме включен Ethernet2 (WAN), остальные сетевые интерфейсы (WiFi, Ethernet1 LAN) отключены. При соответствующей настройке данные передаются между UART1 и Ethernet2. На интерфейсе Ethernet2 может быть сконфигурирован как динамический IP-адрес (через DHCP), так и статический IP-адрес.

HLK RM04 mode serial WAN

В этом режиме Wi-Fi включен в режиме клиента, интерфейсы Ethernet1 и Ethernet2 отключены. С помощью соответствующих установок данные могут передаваться между UART1 и сетью Wi-Fi. WiFi клиент может быть настроен как на получение IP-адреса через DHCP, таки и может быть настроен статический IP-адрес. Безопасность Wi-Fi поддерживает все существующие методы шифрования.

HLK RM04 mode serial WiFi client

В этом режиме Wi-Fi включен в режиме точки доступа (Access Point, AP), интерфейсы Ethernet1 и Ethernet2 отключены. С помощью соответствующих установок данные могут передаваться между UART1 и сетью Wi-Fi. Сервер DHCP модуля включен по умолчанию, он может раздавать адреса клиентам WiFi. Безопасность Wi-Fi поддерживает все существующие методы шифрования.

HLK RM04 mode serial WiFi AP

[Сетевые коммуникации модуля HLK-RM04]

Вышеуказанные методы настройки режима работы только определяют, как могут быть переданы через сеть данные, которые поступают в обоих направлениях через интерфейс UART модуля HLK-RM04. Другими словами это определение физической среды передачи данных через сеть. Но необходимо также настроить метод передачи данных на основе имеющихся сетевых протоколов. Для модуля HLK-RM04 имеется 4 таких метода:

• Сервер TCP
• Клиент TCP
• Сервер UDB
• Клиент UDB

Чаще всего обмен данными в сети происходит между двумя точками таким образом, что одна точка считается сервером, другая клиентом. Сервер является пассивной стороной соединения - он ждет, когда клиент к нему подключится. К одному серверу обычно может подключиться больше одного сетевого клиента. Модуль HLK-RM04 поддерживает в режиме сервера до 20 одновременных подключений.

Клиент устроен так, что к нему не может подключиться другой клиент или сервер, но клиент может подключиться к серверу. Для подключения клиенту нужно знать IP-адрес и номер порта сервера.

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

По этим причинам у этих протоколов разные сферы применения - TCP лучше всего подходит для передачи файлов и защищенных данных, требующих 100% целостности. UDP применяется для приложений, требующих быстрой доставки с минимальными задержками когда допустимо некоторое количество ошибок (передача потокового видео, звука).

В режиме сервера TCP модуль начинает прослушивать указанный порт TCP как сервер telnet (по умолчанию 8080), и может принимать соединения клиентов (до 20 одновременно). После того, как клиент подключился, все данные, полученные от клиента, будут прозрачно пересланы через UART1, и все данные, поступившие на UART1, будут прозрачно пересланы клиенту telnet.

В режиме клиента TCP модуль подключается как telnet-клиент к серверу telnet по указанному IP-адресу и номеру порта. При этом также все принятые и переданные данные прозрачно проходят в обоих направлениях через UART1. Если по какой-то причине соединение оказалось разорванным, то модуль может (если это разрешено соответствующей опцией) делать попытки повторного подключения с серверу.

В режиме сервера UDP модуль слушает сокет на указанном номеру порта. Как только поступил UDP-пакет на этот порт, его данные прозрачно передаются через UART1, и IP-адрес, с которого пришел пакет, запоминается. После того, как на UART1 поступили данные, эти данные передаются в UDP пакете по тому адресу, который был запомнен последний раз. Имейте в виду что модуль запоминает IP-адрес только последнего пришедшего пакета, по этой причине нельзя обработать несколько UDP-соединений одновременно.

В режиме клиента UDP модуль прозрачно пересылает полученные через UART1 данные на сервер UDP (на указанный адрес и порт). И аналогично все данные, приходящие от этого сервера, прозрачно передаются в интерфейс UART1.

[Сброс настроек модуля HLK-RM04 в заводское состояние]

Для сброса настроек в состояние по умолчанию используется вывод ES/RST (ножка 10 модуля). На материнской плате этот сигнал подключен к специальной кнопке Exit/Default:

HLK RM04 KIT V2 3 buttons

Если по какой-то причине необходимо сбросить настройки модуля (например, Вы забыли сетевые настройки, и не можете подключиться к модулю), выполните следующие действия. Подключите источник питания 5V/500mA, и удерживая вывод ES/RST в лог. 0 подождите около 2.5 минут (для этого нужно удерживать кнопку Exit/Default в нажатом состоянии), пока система модуля загрузится, после чего отпустите вывод ES/RST (отпустите кнопку Exit/Default), система автоматически перезагрузится. После перезагрузки все настройки перейдут в заводское состояние. Заводские настройки следующие:

Параметр Значение
Логин HTTP-админки admin
Пароль HTTP-админки admin
IP/маска LAN 192.168.16.254/255.255.255.0
IP/маска WAN не установлено (можно получить настройки по DHCP)
SSID HL-LINK_xxx
Пароль WiFi 0000000000 или 12345678
Настройка UART 115200,8,n,1
Длина последовательного фрейма 64
Таймаут последовательного фрейма 10
Сетевой режим Клиент
IP адрес внешнего сервера 192.168.11.245
Порт локального или внешнего сервера 8080
Сетевой протокол UDP
Сетевой таймаут 0
TES 100 мс
TRST 5 сек (иногда в документации указано 6 сек)
Tescape2 2 сек

Примечание: интервалы времени TES, TRST, Tescape2 относятся к специальным длительностям импульса лог. 0 на выводе ES/RST. TES: если длительность лог. 0 будет больше TES и меньше TRST, то модуль перейдет в режим обработки AT-команд. Если длительность лог. 0 превысит TRST, то модуль сбросит свои настройки в состояние по умолчанию (заводские настройки).

Команда Значение параметра
at+C2_CLport 0
at+C2_mode 0
at+C2_port 8081
at+C2_protocol 1
at+C2_remoteip 192.168.1.245
at+C2_tcp_auto 1
at+C2_tcp_client_check 1
at+C2_timeout 0
at+C2_uart 57600,8,n,1
at+C2_uartpacklen 64
at+C2_uartpacktimeout 10
at+Channel 1
at+dhcpc 1
at+dhcpd 1
at+dhcpd_dns 192.168.16.1,8.8.8.8
at+dhcpd_ip 192.168.16.100,192.168.16.200,255.255.255.0,192.168.16.1
at+dhcpd_time 86400 (секунд)
at+escape 0
at+escape2 1
at+mode server
at+net_dns 192.168.11.1,8.8.8.8
at+net_ip 192.168.11.254,255.255.255.0,192.168.11.1
at+netmode 0
at+remoteip 192.168.11.245
at+remoteport 8080
at+remotepro tcp
at+tcp_auto 1
at+timeout 0
at+uart 115200,8,n,1
at+uartpacklen 64
at+uartpacktimeout 10
at+wifi_conf Hi-Link_,wpa2_aes,12345678

[Ссылки]

1. Hi-Link HLK-RM04 site:wiki.openwrt.org.
2. ESP8266: микросхема Wi-Fi.
3. HLK-RM04: система AT-команд.
4. 160501HLK-xxyy.zip - схема платы KIT-V2.3, документация на модуль HLK-RM04, фотографии.

 

Комментарии  

 
0 #2 Алексей 11.04.2022 09:20
Цитирую sendsay:
Хочу использовать этот модуль для передачи файлов в станок ЧПУ. Подключил, настроил, передаю. Если дынные идут из СОМ порта в ТСР, то все ок, но в обратную строну станок говорит что ошибка четности. Слушаю Сом порт, и в мониторе получаю кашу из символов - но не всех, не которые передаются правильно, а остальные подменяются на что то другое. Выглядит как кодировка неправильная. Что я только не делал ничего не помогает. Могли бы вы подсказать что-нибудь, или указать что почитать, или у кого спросить?


Здравствуйте sendsay, не могли бы поделится как настроили hlk-rm04 ?
Цитировать
 
 
0 #1 sendsay 13.04.2021 11:18
Хочу использовать этот модуль для передачи файлов в станок ЧПУ. Подключил, настроил, передаю. Если дынные идут из СОМ порта в ТСР, то все ок, но в обратную строну станок говорит что ошибка четности. Слушаю Сом порт, и в мониторе получаю кашу из символов - но не всех, не которые передаются правильно, а остальные подменяются на что то другое. Выглядит как кодировка неправильная. Что я только не делал ничего не помогает. Могли бы вы подсказать что-нибудь, или указать что почитать, или у кого спросить?
Цитировать
 

Добавить комментарий


Защитный код
Обновить

Top of Page