Gerenciamento de pacotes SMS¶
| Bloco de Controle Padrão | |
| Função | Comunicação utilizando Modem GSM |
| Nro. da Função | 236 |
| Caminho | Programa/Editor Ladder/Elementos/Especiais/Bloco de controle Padrão |
| Grupo | Especiais |
| Ícone | ![]() |
| Tabela de compatibilidade de firmwares | |
| Geração de Firmware | G3, G3S, G3R]] |
- A função deste bloco é viabilizar o acesso a funções de comunicação utilizando modem GSM.
- Através destas funções é possível receber, enviar e tratar comandos SMS.
Nota
A execução deste comando pode levar vários ciclos de scan para ser concluído. Portanto, verifique a condição da saída do bloco para certificar-se que o processo está terminado e, avalie o valor para parâmetro P4 para identificar possíveis falhas.
Para inseri-lo no programa, deve-se posicionar o cursor na posição desejada, selecionar no menu à
esquerda o grupo “Especiais” e clicar no botão correspondente, 
Parâmetros¶
X + 0: Número do telefone que enviou o SMS
X + 1: Nome de identificação do telefone que enviou o SMS, que em geral não possui identificação, e neste caso retorna uma string nula.
X + 2: Data e hora de envio do SMS
X + 3: Conteúdo efetivo da mensagem SMS
Por exemplo, se for especificada a variável texto X5, as 4 informações são retornadas nas variáveis X5, X6, X7 e X8 respectivamente.
| Enviar SMS | |||
|---|---|---|---|
| Parâmetros | Tipos | Valores | Descrição |
| P1 | K | 0..Max(K) | Função do bloco SCB de comunicação utilizando modem GSM.Deve ser uma constante inteira (Knn) cujo valor deve ser 236. |
| P2 | M | M[x + 0] | Código da subfunção associada ao envio de SMS, no caso a funçã0 Send SMS e cujo código deve ser 2. |
| M[x + 1] | Número da porta de comunicação do controlador na qual está conectado omodem GSM a ser utilizado para o envio do SMS, onde: 0 – Porta COM1, 1 – Porta COM2, 2 – Porta COM3 (verifique as portas de comunicação disponíveis no controlador da HI Tecnologia utilizado em seu projeto) | ||
| M[x + 2] | Identificador da variável de texto do tipo X, cujo conteúdo deve especificar o número do telefone para o qual a mensagem SMS deve ser enviada. | ||
| M[x + 3] | Identificador da variável de texto do tipo X, cujo conteúdo deve especificar o texto associado à mensagem SMS a ser enviada. | ||
| P3 | M | M[y + 0] | Parâmetro não utilizado para esta função (parâmetro dummy). |
| P4 | M | M[z + 0] | Código de retorno da execução da função, onde: Igual a 0 - Indica função executada com sucesso Diferente de 0 - Indica condição de falha. Vide a lista de códigos de retorno. |
| Execução de Comando SMS | |||
|---|---|---|---|
| Parâmetros | Tipos | Valores | Descrição |
| P1 | K | 0..Max(K) | Função do bloco SCB de comunicação utilizando modem GSM.Deve ser uma constante inteira (Knn) cujo valor deve ser 236. |
| P2 | M | M[x + 0] | Código da subfunção associada à execução de SMS, no caso a função “Exec SMS” e cujo código deve ser 5. Esta função espera por uma mensagem SMS. Quando a mensagem for recebida com sucesso a mesma é interpretada e o comando associado é executado. Em seguida uma mensagem de retorno é enviada para o remetente. Esta mensagem pode conter informações retornadas pelo comando recebido ou apenas um código de retorno associado à execução do mesmo. |
| M[x + 1] | Número da porta de comunicação do controlador na qual está conectado o modem GSM a serutilizado para a recepção do SMS, onde: 0 – Porta COM1, 1 – Porta COM2, 2 – Porta COM3 (verifique as portas de comunicação disponíveis no controlador da HI Tecnologia utilizado em seu projeto). | ||
| M[x + 2] | Identificador da constante de texto do tipo W na qual inicia a tabela de comandos. | ||
| M[x + 3] | Identificador da constante de texto do tipo W na qual inicia a tabela de constantes. | ||
| M[x + 4] | Identificador da constante de texto do tipo W na qual inicia a tabela de celulares Se for um valor negativo indica o índice de uma variável de texto do tipo X na qual inicia a tabela de celulares. | ||
| P3 | M | M[y + 0] | Parâmetro não utilizado para esta função (parâmetro dummy). |
| P4 | M | M[z + 0] | Código de retorno da execução da função, onde: Igual a 0 - Indica função executada com sucesso Diferente de 0 - Indica condição de falha. Vide a lista de códigos de retorno. |
Códigos de erros de P4¶
| Códigos de Erros de P4 | |
|---|---|
| Código de erro | Descrição |
| 0 | Função executada com sucesso. Nenhuma falha identificada no processo. |
| 7 | Função não implementada. Exemplo: Código da função de acesso ao modem GSM não disponível na versão corrente do firmware. |
| 8 | Subfunção inválida. Exemplo: Código da subfunção passada como parâmetro de entrada para o bloco SCB é inválida. |
| 78 | Timeout de transmissão: não foi possível fazer alguma transmissão de dados, pode indicar problemas de comunicação. |
| 79 | Timeout de recebimento: não foi recebida uma comunicação que era esperada, pode indicar que o modem GSM não está conectado com o cabo correto. |
| 81 | Erro de protocolo: Houve algum erro na troca de mensagens entre o controlador e modem, pode indicar que não foi feita a configuração prévia indicada na nota de software PNS00031. |
| 93 | Atingido limite do tamanho da constante de texto. As mensagens devem ter menos de 48 caracteres, caso contrário, não podem ser armazenadas em uma variável de texto, pois excedem a sua capacidade. |
Entradas¶
| Descrição das Entradas | |||
|---|---|---|---|
| Entrada | Função | Estado | Descrição |
| A1 | Ativação | Inativo | Neste estado o bloco não executa nenhuma ação, repassando apenas o estado inativo para a saída B1. |
| Ativo | Neste estado o bloco executa a funcionalidade associada ao mesmo. OBS: Cabe ressaltar que, para o bloco SCB, esta entrada opera por transição ou seja, o bloco é executado apenas quando a entrada A1 muda do estado inativo para o estado ativo. Uma vez ativada, a entrada A1 deverá permanecer ativa até o términoda execução da função que é sinalizado através da ativação da saída B1 do bloco. | ||
Saída¶
| Descrição das Saídas | |||
|---|---|---|---|
| Saída | Função | Estado | Descrição |
| B1 | Ativação/Falha | Inativo | A saída B1 sempre estará inativa se a entrada A1 estiver inativa. Quando a entrada A1 for ativada a saída B1 permanecerá inativa enquando o bloco estiver executando o comando associado indicando que o processo ainda não terminou. |
| Ativo | Indica fim de execução do processo associado ao bloco. Para identificar se a função foi executada com sucesso é necessário examinar o parâmetro P4, que contém o código indicando o resultado da execução do processo associado. Para mais informações sobre os códigos disponíveis para esta função consulte a Tabela de códigos de retorno do controlador. | ||
O tamanho máximo de uma mensagem SMS a ser enviada ou recebida pelo controlador é de 48 caracteres Se o modem tiver feito uma conexão TCP em modo transparente, a função não será executada.
O formato para especificação do telefone destino é o mesmo utilizado para enviar mensagens SMS a partir de um celular. No entanto, para evitar problemas, recomenda-se utilizar o formato completo, que tem o seguinte formato: +ppccffffffff onde:
. **pp*: código internacional do país. No caso do Brasil 55
. **cc*: código da cidade onde se localiza o telefone destino
. **ffffffff*: numero do telefone destino da mensagem SMS
Exemplo, considerando:
. **55*: código internacional do Brasil
. **19*: código da cidade de Campinas onde se localiza o telefone destino
. **21391700*’: numero do telefone destino da mensagem SMS
Teremos: 551921391700
Nota
O conteúdo do texto não pode conter caracteres acentuados. Caracteres acentuados podem ser recebidos como outro caractere.
