O SGCE — Sistema de Gestão de Carregadores Elétricos é desenvolvido pelo
IFRN Campus Santa Cruz e faz uso de bibliotecas e ferramentas de código aberto
listadas abaixo. Agradecemos a todos os mantenedores e contribuidores desses projetos.
Servidor OCPP — Python
Python
PSF License
Linguagem de programação de alto nível utilizada no servidor OCPP. Versão 3.11.
Implementação do protocolo OCPP 1.6J (Open Charge Point Protocol) para Python. Gerencia toda a comunicação com os carregadores elétricos via WebSocket. Versão 0.26.0.
Driver MySQL/MariaDB assíncrono para Python. Permite consultas ao banco sem bloquear o loop de eventos enquanto os carregadores estão conectados. Versão 0.2.0.
Linguagem server-side utilizada em toda a API REST do painel web (autenticação, sessões, usuários, estações, créditos, reservas). Versão 8.2 com extensões PDO e pdo_mysql.
Sistema de gerenciamento de banco de dados relacional. Armazena usuários, estações, sessões de carga, créditos, reservas e configurações do sistema. Versão 10.11.
Servidor web e proxy reverso com HTTPS automático via Let's Encrypt. Roteia o tráfego entre o painel web (PHP) e o servidor OCPP (Python), incluindo os WebSockets e SSE. Versão 2.
Plataforma de containerização utilizada para isolar e orquestrar todos os serviços do SGCE (banco, servidor OCPP, aplicação web e proxy). Garante reprodutibilidade entre ambientes.
Open Charge Point Protocol — protocolo de comunicação entre pontos de recarga e sistemas de gestão (CPMS). Desenvolvido pela Open Charge Alliance (OCA). O SGCE implementa a versão 1.6J via WebSocket com JSON.