Módulo Bluetooth Low Energy HM-10: Guia Técnico Completo
A comunicação sem fio é um conceito empolgante nesta nova era. Alguns, se não a maioria, dos dispositivos eletrônicos modernos usam comunicação sem fio de uma forma ou outra. Este artigo examinará o HM-10 e seu papel vital no estabelecimento de comunicação sem fio usando o módulo Bluetooth de baixa energia. Leia e obtenha todas as informações necessárias para entender o HM-10, e os vários componentes necessários estão disponíveis aqui.
1. Configuração de Pinos do HM-10
O design do modelo emprega o CC2540 ou CC2541 Bluetooth SOC (System on Chip) Bluetooth Low Energy (BLE).
O módulo HM-10 tem 34 pinos, dos quais apenas quatro são necessários para estabelecer comunicação.
| Pino Nº | Nome do Pino | Descrição do Pino |
|---|---|---|
| 1 | UART_TX | Interface UART - Transmissão |
| 2 | UART_RX | Interface UART - Recepção |
| 3 | UART_CTS | Interface UART |
| 4 | UART_RTS | Interface UART |
| 5-10 | NC | Sem Conexão |
| 11 | RESET | Reset se baixo por 100ms |
| 12 | VCC | 3.3V |
| 13-14 | GND | Terra |
| 15 | USB_D- | Interface USB |
| 16-19 | NC | Sem Conexão |
| 20 | USB_D+ | Interface USB |
| 21-22 | GND | Terra |
| 23 | PIO0 | Tecla do Sistema |
| 24 | PIO1 | LED do Sistema |
| 25-34 | PIO2-11 | Linha programável de entrada/saída |
A tabela acima ilustra cada pino e sua função.
Existem duas versões do Módulo BLE HM-10: HM10C e HM-10S.
2. Características do Módulo HM-10
- Sem limite de bytes ao enviar e receber
- Consumo de energia Bluetooth Low Energy (chip BLE)
- Versão Bluetooth: V4.0
- Frequência de trabalho: banda ISM 2.4GHz
- Usa 50-200µA quando o dispositivo está em modo sleep
- 12 pinos de Entrada e Saída de Propósito Geral
- Interface Serial UART e Interface USB Full-Speed
- Timer de Sleep de 32-kHz com Captura
- Programação Serial Em Circuito 128 KB ou 256KB
- 8 KB Memória RAM Estática
- Longa distância: Espaço aberto até 100m
- Tamanho portátil
2.1 As especificações do Módulo HM-10 são:
- Tensão de operação do MÓDULO: 2.0V – 3.6V
- Opera em BAIXA tensão
- Consumo de bateria de backup de 235µA
- Nível de Entrada RF: 10dBm
- +3.9V tensão máxima
- Temperaturas de operação de -40ºC a +85ºC
- Descarga eletrostática: 750V
O HM-11, HM-01 a HM-09 também podem ser usados no lugar do HM-10.
3. Onde Podemos Usar o MÓDULO HM-10?
- O Módulo BLE HM-10 é conveniente para comunicações sem fio de curta distância de no máximo 100 metros.
- Também conveniente para dispositivo móvel devido ao baixo consumo de energia.
- O módulo Bluetooth 4.0 HM-10 é barato, preferível para projetos de baixo custo.
- Usa comunicação UART para conectar à maioria dos controladores e processadores, ex: placa Arduino.
Outras aplicações incluem:
- Robótica
- Dongles USB
- Servidores
- Equipamentos médicos
- Equipamentos de lazer e esportivos
- Periféricos de computador
4. Como Usar o MÓDULO HM-10
A conexão serial UART torna fácil parear o módulo com um Arduino.
Em caso de problemas ao integrar o Módulo com Arduino ou Raspberry Pi, você pode consultar o datasheet do HM-10.
Garantir que seu módulo HM-10 seja genuíno antes de usá-lo em um projeto é vital.
Portanto, para evitar o módulo clonado, certifique-se de que o seu tem o oscilador de cristal de 32KHz.
Alternativamente, você precisará alterar a versão do firmware do módulo via download de firmware para um módulo clonado.
Caso contrário, será impossível acessar o Módulo com comandos AT ou pareá-lo com um smartphone sem alterar o firmware.
Os módulos BLE podem se comunicar com outros dispositivos capazes de BLE, como um dispositivo Android, ou seja, 2 HM-10s.
A comunicação é possível através de UART serial e é totalmente personalizável usando conjuntos de comandos AT.
O módulo é uma breakout board para Bluetooth CC2541 que inclui regulador de energia de 3.3V.
Notavelmente, ao usar a placa Arduino 5V, o pino RX do HM-10 geralmente ainda está em 3.3V. Portanto, é necessário converter o pino TX do HM-10 do Arduino para 3.3V.
4.1 Componentes Necessários
- Controlador Bluetooth Arduino
- Módulo Bluetooth HM-10
- Resistores (1 kΩ, 470 Ω)
- Fios de conexão (FTDI)
- Arduino IDE
- App Android - BLE Scanner (Módulo HM-10)
4.2 Diagrama de Circuito
fonte: https://www.youtube.com/watch?v=geSEbu6mj2Q
4.3 Configuração do módulo Arduino + comando AT
Para executar os comandos AT, abra a placa Arduino no seu PC e certifique-se de selecionar a porta USB correta.
Em seguida, abra os monitores seriais e confirme que a taxa de baud padrão está no padrão de fábrica de 9600.
Então digite o comando AT+NAME? Sem espaços. Deve mostrar OK+NAME: HMSoft
Agora você pode se comunicar com o Bluetooth 4.0 LE.
4.4 Enviando e Recebendo Dados entre 2 HM-10s
Nesta etapa, você pode fazer 2 HM-10s enviarem e receberem dados entre si.
Use o comando AT AT+ADDR? para consultar o endereço MAC original.
A saída será parecida com 20C38FF61DA1, lembrando que cada HM-10 BLE tem endereço único.
Para parear 2 HM-10s use o comando AT+CON[param1] e AT+ROLE[param1].
4.5 Conectando o HM-10 BLE 4.0 com placa Arduino
A interface do controlador Bluetooth Arduino com o módulo deve conectar da seguinte forma:
| HM-10 | Arduino |
|---|---|
| HM-10 TX | D2 |
| HN-10 RX | D3 |
| GND | GND |
| VCC | 3.3V |
Você pode usar tanto a serial por software quanto a serial por hardware para programar o Arduino UNO. Em nosso projeto de exemplo, usaremos a serial por software.
Fonte: https://www.youtube.com/watch?v=Xt5e10B4Eq0&t=13s
O código abaixo explica como você pode controlar um LED usando um controlador Bluetooth Arduino e Bluetooth Low Energy.
#include <SoftwareSerial.h>
SoftwareSerial HM10(2, 3); // RX = 2, TX = 3
char appData;
String inData = "";
void setup()
{
Serial.begin(9600);
Serial.println("HM10 serial started at 9600");
HM10.begin(9600); // set HM10 serial at 9600 baud rate
pinMode(13, OUTPUT); // onboard LED
digitalWrite(13, LOW); // switch OFF LED
}
void loop()
{
HM10.listen(); // listen the HM10 port
while (HM10.available() > 0) { // if HM10 sends something then read
appData = HM10.read();
inData = String(appData); // save the data in string format
Serial.write(appData);
}
if (Serial.available()) { // Read user input if available.
delay(10);
HM10.write(Serial.read());
}
if ( inData == "F") {
Serial.println("LED OFF");
digitalWrite(13, LOW); // switch OFF LED
delay(500);
}
if ( inData == "N") {
Serial.println("LED ON");
digitalWrite(13, HIGH); // switch OFF LED
delay(500);
digitalWrite(13, LOW); // switch OFF LEDs
delay(500);
}
}
4.6 App scanner BLE Android
Para usar um dispositivo Android com o módulo Bluetooth Low Energy, você primeiro precisa baixar o scanner BLE para seu dispositivo móvel.
Aqui está o link.
Uma vez feito, inicie o app e conceda permissões de Bluetooth e localização.
fonte: captura de tela do app (https://play.google.com/store/apps/details?id=com.macdom.ble.blescanner&hl=en_IN)
Então escaneie por dispositivos, o Bluetooth low energy 4.0 estará sob MLT-BT05
Use 123456789 como código de pareamento. Conecte, e pronto.
Uma vez que a conexão esteja pronta, clique em MLT-BT05 para mais opções — selecione Custom Service.
Em seguida, haverá opções R, W, N.
Para teste, clique W para enviar 1 ou 0 para manipular o LED com seu dispositivo Android.
5. Como o HM-10 BLE Difere de Outros Módulos?
A diferença significativa do Bluetooth 4.0 LE para outros é a versão do Bluetooth.
Lembre-se que as configurações padrão de fábrica contêm todos os recursos do Bluetooth 4.0.
As configurações padrão de fábrica também permitem transmitir até 24Mbps com baixo consumo de energia.
Portanto, ao comparar o HM-10 a outros módulos, como o Bluetooth 2/2.1, o HM-10 performa melhor.
O módulo HC-05 está entre os módulos que usam Bluetooth 2.0.
Fonte: https://freesvg.org/1554744332
6. Conclusão
Em resumo, examinamos extensivamente as características do módulo HM-10. Também, agora é fácil integrar Arduino em sua configuração padrão. Com uma placa base e mais alguns componentes, você agora é capaz de conduzir seu projeto sem complicações. Para mais informações, dúvidas ou busca por compra destes componentes, entre em contato conosco aqui.
Tecnologia industrial
- Linguagem de Programação C: Visão Geral Abrangente
- C#: Visão Abrangente da Linguagem Moderna da Microsoft
- Desbloqueando o UID: Série de Três Partes sobre História, Mandato e Futuro
- Domine o Fishbowl Manufacturing: Hotkeys Essenciais para o Módulo de Ordem de Fabricação
- Módulo BOM do Fishbowl: Hotkeys Essenciais para Produção Rápida
- Dominando o Grupo de Módulos de Fabricação: Lista de Materiais e Gestão de Ordens
- Guia Aprofundado de Máquinas de Corte a Plasma CNC: Características, Benefícios e Aplicações
- Máquinas de Alta Velocidade Explicadas: Principais Características e Impacto na Indústria
- Dominando a Retificação de Rolos de Borracha: Guia Profissional para Qualidade Superior de Superfície
- Bombas de Água de Corrente Contínua: Guia Completo para Uso Residencial e Industrial