O que é o protocolo NTCIP de comunicação?

Publicado: 29 de maio de 2015 em Assuntos Técnicos
Tags:, , , , , , , , ,

Rua noturna

.

Introdução

A ANTT (Agência Nacional de Transportes Terrestres) estabeleceu por meio da resolução nº 3.323-A[1], de 18 de novembro de 2009, que em todo o território nacional, os equipamentos de ITS (Intelligent Transportation Systems) deverão adotar os padrões de Protocolos de Comunicação de Dados e Dicionários de Padrões de dados do NTCIP (National Transportation Communications for ITS Protocol). Essa ação da ANTT obriga as empresas, os desenvolvedores, concessionários e homologadores a adaptarem os seus produtos e processos para cumprir essa resolução. Este artigo apresenta o protocolo de comunicação NTCIP de maneira bastante resumida, para que se possa ter uma visão panorâmica sobre esse assunto.

.

O que é NTCIP?

O setor de gerenciamento de tráfego possui uma longa história de implantação de sistemas com definições de dados privativos e protocolos de comunicações proprietários. Os dispositivos de campo e sistemas fornecidos por um determinado fabricante ou desenvolvedor não permitiam a interoperabilidade com os de outros fabricantes ou desenvolvedores. Como resultado disto, a expansão do sistema após a implantação inicial geralmente só podia ser feita usando-se dispositivos do mesmo tipo e geralmente do mesmo fabricante, como havia sido utilizado na implantação inicial. Com protocolos proprietários há pouca ou nenhuma oportunidade para que seja realizada uma licitação realmente competitiva na expansão do sistema e compra de dispositivos de campo, devido à falta de intercambiabilidade. Também não há qualquer oportunidade para licitação competitiva para adicionarem-se outros tipos de dispositivos de campo no sistema, devido à falta de interoperabilidade. As normas NTCIP[1] especificam definições de dados comuns e protocolos abertos. Elas são uma família completa de normas destinadas a satisfazer as necessidades de comunicação de vários dispositivos nas estradas e centros de gerenciamento de tráfego. A abordagem de padrões do tipo aberto é ilustrada na Figura 1.

  Figura 1

Figura 1: O NTCIP facilita a interoperabilidade e intercambiabilidade de dispositivos de campo

.

Interoperabilidade e intercambiabilidade são dois objetivos fundamentais do esforço para se criar as normas do NTCIP. Os termos interoperabilidade e intercambiabilidade geralmente refletem a capacidade de se usar dispositivos de fabricantes diversos no mesmo canal de comunicação, juntamente com a capacidade de trocá-los entre si. Por exemplo, a capacidade de se colocar qualquer marca de um controlador de semáforo que esteja em conformidade com as normas NTCIP no mesmo sistema, ao mesmo tempo reflete intercambiabilidade para esse tipo de dispositivo. Este texto está baseado no documento NTCIP 9001 v0406[2]. Para entender os detalhes desse protocolo, é recomendável a leitura desse documento, também chamado de The NTCIP Guide.

.

Conceitos

Interoperabilidade

A interoperabilidade reflete a capacidade de vários sistemas de gerenciamento centrais e dispositivos de diferentes fabricantes trocarem informações entre si objetivando alguma finalidade comum. A interoperabilidade permite que componentes do sistema, de fornecedores diferentes, se comuniquem uns com os outros de forma a prover as funções do sistema e a trabalhar conjuntamente como um sistema coeso. Por exemplo, a capacidade de usar a mesma infra-estrutura de comunicação para interconectar um sistema de gerenciamento central com os controladores de tráfego de sinal, painéis de mensagens variáveis (PMV) e outros dispositivos para gerenciar o tráfego, são um exemplo de aplicação real de interoperabilidade.

Intercambiabilidade

Intercambialidade reflete a capacidade de troca de dispositivos do mesmo tipo no mesmo canal de comunicações e esses dispositivos interagirem com outros dispositivos do mesmo tipo usando funções baseadas em padrões. Com intercambialidade, os componentes do sistema podem ser trocados por componentes semelhantes de fornecedores diferentes porque eles possuem características físicas e funcionais comuns. Um exemplo de intercambiabilidade é um controlador de semáforo, que pode ser de fabricantes distintos, interagir com outros semáforos para coordenar em conjunto uma via importante.

.

Panorama do NTCIP

 NTCIP é uma família de padrões de comunicação para transmissão de dados e mensagens entre sistemas de computador usados em sistemas de transporte inteligentes (ITS). Uma comunicação padrão especifica um conjunto de regras de como as mensagens são codificadas e transmitidas entre dispositivos eletrônicos. O equipamento em cada extremidade de uma transmissão de dados usa a mesma especificação para se comunicar com êxito.

  Comunicação do tipo “Centro para Campo” (C2F – Center to Field)

O protocolo NTCIP fornece padrões de comunicação para dois tipos diferentes de estruturas dos sistemas. O primeiro tipo é um sistema de comunicação entre um centro de monitoramento e controle  e vários dispositivos de controle ou monitoramento gerenciados por esse centro. Um exemplo de um sistema desse tipo é um computador no centro de gerenciamento de tráfego de uma cidade, monitorando e controlando a operação de controladores de semáforos nas vias de trânsito dentro dessa cidade. O sistema central pode enviar instruções para os controladores de semáforos para alterar os intervalos de tempo dos controladores conforme se alteram as condições de tráfego. Os controladores de semáforo também enviam informações de fluxo de tráfego e seu status para o computador.

Uma vez que a maioria dos aplicativos desse tipo envolvem um sistema central se comunicando com vários dispositivos de campo, este tipo de comunicação é definido como do tipo “Centro para o Campo” (C2F).   Comunicações do tipo “Centro para Centro” (C2C – Center to Center)

O segundo tipo de comunicação envolve as mensagens enviadas entre dois ou mais sistemas centrais de gerenciamento. Este tipo de comunicação é referido como comunicações de “Centro para Centro” (C2C), embora dois ou mais dos vários sistemas de fato podem estar localizados fisicamente no mesmo local, eles estão logicamente separados. A comunicação entre centrais envolve a comunicação ponto a ponto entre qualquer número de sistemas centrais numa rede complexa. Este tipo de comunicação é semelhante à Internet, em que qualquer centro pode solicitar informações de, ou fornecer informações para qualquer número de outros centros.

Um exemplo de comunicações entre centrais é a de dois centros de gerenciamento de tráfego que trocam informações em tempo real sobre o número e o status dos dispositivos de controle de tráfego. Isso permite que cada sistema central saiba qual o perfil de temporização que o outro sistema central está executando para permitir a coordenação de semáforos dentro dos seus limites geográficos. Na Figura 2 podemos observar como o NTCIP pode integrar sistemas de sistemas inteligentes de tráfego (ITS).

 Integração

Figura 2: Exemplo de integração de ITS utilizando o NTCIP

.

Estrutura do NTCIP

A estrutura do protocolo NTCIP, mostrada na Figura 3, usa uma abordagem em camadas ou modular para os padrões de comunicação, semelhantes à abordagem em camadas adotada pela Internet e pela Organização Internacional de Normas (ISO – International Standards Organization). Em geral, a comunicação de dados entre dois computadores ou outros dispositivos eletrônicos pode ser considerada para envolver as seguintes camadas primárias, chamadas “níveis” em NTCIP, para distingui-los daqueles definidos pela organização internacional para padronização (ISO) e a Internet. Os cinco níveis do NTCIP são:

  • nível de informação
  • nível de aplicação
  • nível de transporte
  • nível de sub-rede
  • nível de campo.

Os níveis no âmbito NTCIP são um pouco diferentes das camadas da pilha de comunicação definidas pelo modelo de referência de sete camadas de interconexão de sistemas abertos (OSI – Open Systems Interconnection) da ISO. O modelo OSI divide o processo de comunicação em sete camadas bem definidas. Cada camada tem um propósito definido, geralmente independente de camadas adjacentes. Apesar dos protocolos de comunicações OSI não serem amplamente utilizados, o modelo de estrutura em camadas permanece como referência.

A pilha de níveis do protocolo NTCIP estende-se além da pilha usual de comunicações para incluir dados informativos e interfaces para a infraestrutura física de comunicações. Os níveis e a terminologia usada no NTCIP foram escolhidos pela simplicidade e facilidade de compreensão por leitores leigos e relevância para aplicações típicas do setor de transporte. Note que na Figura 3 também são indicados através de um número entre parêntesis, os documentos que contêm as especificações NTCIP referentes a cada bloco. Por exemplo as especificações do bloco SNMP estão no documento 2301.

 Figura 2

Figura 3: Estrutura dos protocolos do NTCIP

.

  Conformance x Compliance

Cada norma do NTCIP contém uma seção que indica critérios de conformidade (conformance), que descrevem claramente quais os requisitos são necessários de serem atendidos para estar em conformidade com a norma. A facilidade ou dificuldade de se determinar a conformidade depende da complexidade da norma e a implementação resultante. Fica definido como estar em conformidade em relação às normas do NTCIP (conformance), quando um determinado dispositivo atende a todos os requisitos obrigatórios definidos por uma norma.

Fica definido como estar em conformidade em relação às especificações (compliance), quando um determinado item atende a todos os requisitos definidos por um usuário, em geral uma empresa de gerenciamento de tráfego.

 .

 Perfil de Implementação

Todo dispositivo, que está em conformidade com o NTCIP, utiliza um perfil de implementação, que determina a definição dentre as opções de cada nível do protocolo e quais as que estão implementados no equipamento. Define-se como pilha um subconjunto da estrutura geral de NTCIP determinando uma “rota” selecionada através dos níveis, dadas as opções disponíveis. Algumas pilhas incluem duas normas em alguns níveis, o que geralmente significa que o protocolo pode usar qualquer uma das normas opcionais. Protocolos NTCIP geralmente oferecem mais opções dentro da maior parte das normas. A parte destacada da Figura 4 ilustra um exemplo de uma escolha de pilha de protocolo que pode ser definida usando-se as normas do NTCIP.

Figura 3

Figura 4: Um exemplo de definição de perfil ou pilha de uma comunicação C2F

.

O protocolo ilustrado na Figura 4 tem um perfil SNMP – UDP/IP – Ethernet. Portanto esse perfil é quem define a que partes das normas do protocolo NTCIP o equipamento deve atender. Para auxiliar a identificação desse perfil, deve-se aplicar o Diagrama de Seleção de Perfil de NTCIP ilustrado na Figura 5. As formas de losango identificam os pontos de decisão. A progressão de pontos de decisão é identificada por um número entre colchetes, por exemplo [1]. Caixas com uma linha curva inferior representam documentos, nomeadamente as publicações de normas NTCIP. Estas caixas são codificadas por cores para corresponder com as cores do diagrama da estrutura do NTCIP (Figura 4): azul para o padrão de nível de aplicativo, verde para o nível de transporte e amarelo para o nível de sub-rede. As ovais representam o ponto inicial e o ponto final do caminho decisão tomado para selecionar as publicações de padrões NTCIP.

Fluxo

Figura 5: Diagrama de Seleção de Perfil de NTCIP

.

Seguem abaixo as explicações e considerações referentes aos textos escritos dentro de cada ponto de decisão:

  1. O dispositivo usa Ethernet [1]? — A porta de comunicação primária no dispositivo é um conector RJ-45? Se a resposta for SIM, deve-se verificar também se o dispositivo não está usando um servidor de terminal interno, que poderia aceitar um pacote de dados Ethernet, mas internamente extirpa o cabeçalho/rodapé de Ethernet para entregar um pacote de dados serial para o aplicativo de dispositivo do campo. Se o dispositivo não usa comunicações Ethernet então a resposta é NÃO. Se a resposta for NÃO, então prossiga com a pergunta “Dispositivo usa Serial [2]?”;
  2. O dispositivo usa Serial [2]? — se a resposta à primeira pergunta (Ethernet) é NÃO então o dispositivo usa uma interface serial, uma interface de dial-up ou uma interface não-definida pelo NTCIP. Se o dispositivo está em conformidade com o NTCIP, a resposta tem que ser SIM. Se o dispositivo é algo diferente, então a resposta é NÃO. Se a resposta à primeira pergunta (Ethernet) é NÃO e a resposta a esta pergunta (Serial) é NÃO, então não há padrão NTCIP para a configuração de comunicações em questão;
  3. Está usando Dial-Up [3]? — se a resposta à segunda pergunta (Serial) é SIM, o dispositivo ou utiliza uma interface serial ou então uma interface de dial-up. Se o dispositivo usa uma interface RS-232, então é provável que a resposta seja NÃO. Se o dispositivo tem um modem dial-up interno ou se conecta a um modem dial-up externo, a resposta é SIM;
  4. Tem Modem FSK [4]? — se a interface do dispositivo é serial, o usuário deve decidir se está sendo usado um modem FSK (também conhecido como Bell 202. Mesmo que se utilize um modem externo FSK, que normalmente contém uma porta RS-232 comum de conexão com o dispositivo, um usuário poderia decidir responder a esta pergunta como NÃO. Se os modems externos FSK são usados em ambas as extremidades, a resposta também é NÃO. É uma questão de onde se verifica a conformidade com o NTCIP, fora ou dentro do modem FSK externo.
  5. É requerida a transferência de arquivos [5]? — Não há atualmente algum tipo de dispositivo em conformidade com o NTCIP que opere utilizando exclusivamente um mecanismo de transferência de arquivos.. Se o sistema exige que sejam realizadas transferências de arquivos, a resposta é SIM. Caso contrário, a resposta é NÃO.
  6. É necessário o ACK [6]? — Aqui deve ser decidido se deve ser suportado o TCP/IP ou UDP/IP. Se o protocolo de transferência de arquivos é o FTP, então a resposta é SIM. Se for o TFTP, então a resposta é NÃO. O FTP é mais comumente utilizado, mas o FTP requer mais largura de banda de comunicação e mais recursos de processamento. Se nem o FTP ou o TFTP é usado, pode-se utilizar o TCP ou o UDP; no entanto, UDP é recomendado devido à sua maior eficiência.
  7. É obrigatório utilizar o STMP [7]? — O SMTP é um protocolo que é atualmente suportado apenas por dispositivos de controle de semáforo. A necessidade de se usar o STMP baseia-se nos requisitos de largura de banda do sistema e mídia utilizada.

Após a aplicação do Diagrama de Seleção de Perfil de NTCIP, temos uma relação das normas a que o dispositivo deve atender, além é claro da norma específica para o dispositivo (NTCIP Data Dictionaries) indicada no diagrama da estrutura do protocolo NTCIP em vermelho, quase no topo da estrutura.

O próximo passo, seguindo as orientações das normas do NTCIP, é o levantamento e preenchimento dos requisitos do dispositivo amarrados com os requisitos do protocolo. Trata-se da PRL (Protocol Requirements List) ou lista de requisitos de protocolo. Muitas das normas do NTCIP contêm a descrição de uma PRL, que serve para mapear a correspondência de cada necessidade de um usuário, para os requisitos que satisfazem essa necessidade, garantindo que todas as necessidades sejam atendidas. A PRL é também uma lista de todos os requisitos obrigatórios, opcionais e condicionais que satisfazem a cada necessidade do usuário suportada pelas normas do NTCIP. Se uma necessidade de um usuário é marcada na sua especificação, todos os requisitos obrigatórios que decorrem dessa necessidade de usuário devem ser suportados pela implementação. Requisitos opcionais também podem ser selecionados numa especificação técnica, se acaso esses requisitos forem considerados necessários para a sua execução. Requisitos condicionais podem ser obrigatórios ou facultativos, mas se aplicam somente quando o recurso ou as características identificadas são suportados. Na Tabela 1, observa-se um exemplo de uma PRL parcial relativa à norma NTCIP 1203 v03 [5] (PMV). Nessa tabela M (Mandatory) quer dizer obrigatório e O opcional.

Tabela 1: Exemplo de uma PRL – Lista de requisitos de protocolo.

PRL

.

Associada à PRL é definida uma matriz de rastreabilidade de requisitos (RTM). Uma matriz de rastreabilidade de requisitos (RTM) mapeia os requisitos de sistema para os elementos da solução de uma norma NTCIP, ou seja, os conceitos de dados tais como os elementos de dicionário de dados e diálogos normalizados. Se um requisito é incluído em uma especificação de um usuário, a matriz RTM descreve os conceitos de dados, incluindo os diálogos que devem ser implementados para atender a essa necessidade e em conformidade com a norma NTCIP. Essa matriz serve de guia para a realização de testes de conformidade. Um exemplo de uma matriz RTM parcial da  NTCIP 1203[5] é mostrado na Tabela 2.

Tabela 2: Exemplo de uma matriz de rastreabilidade de requisitos (RTM)

RTM

.

Na Figura 6 pode-se observar a ilustração de um diálogo padronizado para a ativação de uma mensagem, conforme definido na norma NTCIP 1203 v0300 [5].

 Dialogo Definir Mensagem

Figura 6: Diálogo padrão para a ativação de uma mensagem no PMV

.

Em algumas normas do NTCIP específicas para os dispositivos, são detalhados no Anexo C os procedimentos de teste normatizado.s  Esses procedimentos de teste têm o seu formato definido pela norma NTCIP 8007 – Testing and Conformity Assessment Documentation within NTCIP Standards Publications[4] e por sua vez segue as diretrizes da norma IEEE 829 – Standard for Software Test Documentation e definem os testes mínimos que deverão ser realizados para verificar a conformidade do equipamento com as normas do NTCIP. Na Figura 7, pode-se observar um Test-Case padronizado definido no Anexo C da NTCIP 1203 v0300[6].

Test

Figura 7: Exemplo de Test-Case padronizado, definido na norma do NTCIP

.

Essa padronização facilita muito a automação dos testes, uma vez que fica definido em norma todo o procedimento, diálogos e condições de aceite ou falha.

.

Resumo

Neste artigo técnico foi apresentado um breve panorama do protocolo de comunicação NTCIP. Devido à sua implementação ser obrigatória nas novas aquisições de equipamentos de ITS para as rodovias brasileiras, por determinação da ANTT, tornou-se necessário o estudo e conhecimento dos requisitos desse protocolo por parte de todos os agentes envolvidos no processo:

  • Fabricantes de equipamentos de ITS;
  • Desenvolvedores de equipamentos e sistemas;
  • Autoridades de gerenciamento de tráfego (licitações de compra);
  • Dos homologadores (testes de conformidade).

Uma ótima fonte de treinamento gratuito sobre NTCIP você encontra nos cursos online do ITS Professional Capacity Building Program (ITS-PCB)[7], oferecidos pelo Departamento Norte Americano de Transportes.

Leia também os demais artigos dessa série:

  • Painéis de Mensagens Variáveis com NTCIP[8] – Neste artigo são apontados os principais aspectos do NTCIP em PMVs;
  • Conformidade de PMV com NTCIP 1203 [9] – Aborda os desafios de se verificar a conformidade de PMVs com as especificações NTCIP.

Referências

[1] http://www.antt.gov.br/index.php/content/view/4323/Resolucao_3323.html

[2] https://www.ntcip.org/

[3] https://www.ntcip.org/library/documents/pdf/9001v0406r.pdf

[4] http://www.ntcip.org/library/documents/pdf/8007v01-19b.pdf

[5] http://www.ntcip.org/library/documents/pdf/1203v03-04_part_1_dms2011.pdf

[6] http://www.ntcip.org/new/1203v0301b_annex_c_ucd.pdf

[7] http://www.pcb.its.dot.gov/stds_training.aspx

[8] https://consulteengenheiroeletronico.wordpress.com/2015/06/07/paineis-de-mensagens-variaveis-com-ntcip/

[9] https://consulteengenheiroeletronico.wordpress.com/2015/06/14/conformidade-de-pmv-com-ntcip-1203/

.

Licença Creative Commons

Esta obra, “O que é o protocolo NTCIP de comunicação?”, de Henrique Frank W. Puhlmann, foi licenciada sob uma Licença Creative Commons Atribuição-NãoComercial-CompartilhaIgual 3.0 Não Adaptada.

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Google

Você está comentando utilizando sua conta Google. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s