Platforma za ChargeMeCar

Apostol CSMS — motor, který pohání ChargeMeCar

ChargeMeCar je retailová služba na Apostol CSMS: platformě pro správu nabíjecích stanic se třemi verzemi OCPP, roamingem OCPI, platbami přes Stripe Connect a několika nezávislými operátory na jedné instanci. Tato stránka říká na rovinu, co je v produkci, co je hotové a co je zatím v plánu.

OCPP 1.5 / 1.6 / 2.0.1OCPI 2.2.1 + 2.3.0Stripe ConnectAd hoc platba podle AFIRVíce operátorů, jedna instanceOtevřené jádro
Jak to souvisí

Jak se ChargeMeCar vztahuje k platformě

Tři věci, které stojí za to vědět - kvůli transparentnosti, ne kvůli brožuře.

1

Stejný motor, žádný fork

ChargeMeCar běží na stejném sestavení softwaru jako každá jiná značka na platformě, pod kryptograficky podepsanou licencí značky. Vydání platformy k němu přicházejí stejně jako ke všem: jeden příkaz aktualizace, kontroly zdraví, rollback stejného tvaru.

2

Provozně nezávislý

Náš účet Stripe, naše infrastruktura, naše právnická osoba - FROG IT SARL, Nice. Vlastník platformy ChargeMeCar neprovozuje a nemůže sáhnout na jeho peníze: platby se strhávají na účtech Stripe majitelů stanic a data značky jsou šifrována klíčem vlastním značce.

3

Otevřený základ, dokumentované jádro

Platforma stojí na otevřeném základu zveřejněném pod svobodnou licencí na GitHubu: transportním frameworku a platformní vrstvě v PostgreSQL. To, co značka kupuje nebo licencuje, je doménová vrstva nabíjení nad ním - a jádro, na němž závisí, si může přečíst kdokoli.

Možnosti

Co platforma umí - s poctivým stavem každé řádky

Tři úrovně, záměrně oddělené: v produkci - běží na živých stanicích se skutečnými penězi; hotové - implementované a pokryté testy a simulátorem stanic, ale zatím bez produkčního objemu; v plánu - na roadmapě, nedodáno.

V produkciHotovéČástečněV plánu

Stanice

  • OCPP 1.6 - hlavní protokol platformy; každá stanice, která jím mluví, se připojí bez úpravV produkci
  • OCPP 2.0.1 - 12 z 16 funkčních bloků kompletně, 4 částečněHotové
  • OCPP 1.5 - starší parkyHotové
  • Smíšený park: verze se rozpozná automaticky, příkazy se překládají mezi formátyHotové
  • Připojení svépomocí majitelem - asi 15 minut; stanice se registruje při prvním navázání spojeníV produkci
  • Vzdálený start, stop, odemknutí kabelu, restart, zapnutí a vyřazení - z portálu, aplikace pro řidiče nebo přes QRV produkci
  • Aktualizace firmwaru z odkazu nebo z knihovny souborů platformy; log bezpečnostních událostí staniceHotové
  • Hromadné operace nad parkem, hierarchie lokalit (region → město → lokalita → zóna)V plánu

Tarify a peníze

  • Pět účtovatelných služeb: za kWh, za minutu nabíjení, stání po skončení, rezervace, pauzaV produkci
  • Tarify podle rozvrhu: den v týdnu, hodina, den/nocHotové
  • Stripe a Stripe Connect: přímé stržení na účtu majitele stanice, účtenky na jméno majitele, vratkyHotové
  • Ad hoc platba QR kódem bez registrace - požadavek EU AFIR; otestováno end-to-end proti skutečnému StripeHotové
  • Poplatek platformy zadržený z každé platby; měsíční rozepsaný výpis majiteliV produkci
  • Předplacený zůstatek organizace, účtování za nabíjení a kWh pro vlastní flotilyV produkci
  • Podvojné účetnictví na interních účtech - součty sedí z principuV produkci
  • Dynamické ceny (podle poptávky, podle ceny elektřiny)V plánu

Operátoři a řidiči

  • Více nezávislých operátorů na jedné instanci, každý vidí jen svéV produkci
  • Role: vlastník, administrátor, operátor, inženýr, podpora, řidič, partnerV produkci
  • Partneři - podsíť uvnitř operátora, s evidencí výnosůHotové
  • Webová aplikace pro řidiče: mapa s filtry, start a stop, průběh nabíjení, historie, uložené karty, RFID, rezervace - osm jazykůV produkci
  • Notifikace: push, e-mail, v aplikaci; hromadné zprávyHotové
  • AI asistent podpory v aplikaci pro řidiče, jednající přísně v právech řidičeHotové
  • Nativní aplikace v App Store a Google PlayV plánu

Roaming a integrace

  • OCPI 2.2.1 a 2.3.0 současně, v obou rolích: provozovatel nabíjecích bodů i poskytovatel služeb mobilityHotové
  • Publikace stanic, tarifů, nabíjení a zúčtovacích záznamů partnerské síti přes hub - prošlo živou výměnouV produkci
  • Příjem tokenů a příkazů partnera v živé výměněČástečně
  • Smlouvy s Hubject a Gireve - obchodní krok operátora; technický předpoklad je splněnV plánu
  • Otevřené REST API - stovky metod se specifikací OpenAPI, události v reálném čase, webhookyV produkci
  • Konektory pro účetnictví a ERPV plánu

Provoz a bezpečnost

  • Přehled operátora: stanice podle stavu, energie, výnosy, vytížení, alarmy; konzole incidentů se živým proudem událostíV produkci
  • Dodávka v kontejnerech; instalace, aktualizace bez výpadku a rollback - čtyři nasazení na jedné pipelineV produkci
  • Přihlášení OAuth 2.0 včetně Googlu; ochrana relace prohlížeče; tři nezávislé úrovně řízení přístupu; auditní deníkyV produkci
  • Export reportů do Excelu/CSV, tvůrce reportů, metriky vytížení a dostupnostiV plánu
  • Externí monitoring a upozornění, záloha k bodu v časeV plánu
  • ISO 15118 Plug & Charge, vzájemné certifikátyV plánu
Protokoly

Otevřené standardy, žádná závislost na dodavateli

Platforma mluví protokoly, které používá každá moderní nabíjecí síť - OCPP směrem k hardwaru, OCPI směrem k ostatním sítím. Funguje každá stanice kompatibilní s OCPP, ať ji vyrobil kdokoli.

OCPP - tři verze, jeden runtime

  • OCPP 1.5 (SOAP)

    Kompatibilita se starším zařízením, které je stále v provozu.

  • OCPP 1.6 (JSON / WebSocket)

    Hlavní protokol platformy: stanice, která jím mluví, se připojí bez úprav.

  • OCPP 2.0.1

    Třívrstvý model Stanice → EVSE → Konektor, perzistentní model zařízení, bezpečnostní události, správa firmwaru. 12 z 16 funkčních bloků kompletně.

Verze se rozpozná při připojení. Příkazy z portálu se překládají 1.6 ↔ 2.0.1, takže smíšený park se spravuje v jednom rozhraní.

OCPI - roaming s oběma aktivními verzemi

  • Role CPO

    Zpřístupňuje stanice, tarify a nabíjení značky partnerským sítím - publikace přes hub prošla živou výměnou.

  • Role eMSP

    Přijímá tokeny řidičů partnerů a příkazy vzdáleného startu stejným kanálem - implementováno a otestováno, v živé výměně zatím neprokázáno.

Neutrální k hardwaru už z návrhu

Jakákoli stanice OCPP 1.5 / 1.6 / 2.0.1 - i konkurenční. Smíšený park se sloučí do jednoho portálu bez přeflashování: adresa serveru OCPP se mění ve vlastním webovém rozhraní stanice.

Platby a soulad s předpisy

Postaveno kolem regulačního rámce EU

Přímá stržení Stripe Connect na účet majitele stanice, ad hoc platba QR kódem pro AFIR, silné ověření zákazníka podle PSD2, GDPR v datové vrstvě.

Stripe Connect

«Připojit přes Stripe» z portálu - váš vlastní účet Stripe, z jakékoli země; přímá stržení na účtu majitele; účtenka se vystavuje z účtu majitele na jeho jméno; poplatek platformy se zadrží z každé platby, s měsíčním výpisem pro účetnictví; vratky stejným kanálem.

AFIR - ad hoc platba

Veřejně přístupné body musí přijímat platbu od jakéhokoli řidiče bez smlouvy či aplikace: řidič naskenuje QR kód na stanici, vidí tarif, zaplatí kartou a nabíjí. Implementováno a otestováno end-to-end proti skutečnému Stripe.

PSD2 / 3-D Secure

Silné ověření zákazníka u evropských karet vynucuje Stripe; žádná platební cesta ho neobchází.

GDPR

Data zůstávají v EU, řidič si může smazat účet z aplikace, souhlasy se evidují, každá akce zanechává auditní stopu.

Architektura

Tenký transport, logika v databázi

Dvě vrstvy v jádru: transport s jednou smyčkou napsaný v moderním C++ - HTTP, WebSocket, TLS, OCPP - a byznys logika napsaná přímo v PostgreSQL. Záměrné inženýrské rozhodnutí, s uvedenými argumenty.

Jedna smyčka událostí pro HTTP i PostgreSQL

Databázová spojení žijí ve stejné smyčce událostí jako spojení HTTP a WebSocket: požadavek je jedna cesta do databáze, jedna transakce. Desetitisíce stanic drží trvalá spojení k jedinému uzlu se stabilní latencí.

Integrita peněz z principu

Výpočet ceny, kontrola zůstatku, ochrana proti dvojímu utracení a fakturace běží v jedné databázové transakci - atomicitu zaručuje PostgreSQL, ne aplikační kód. Dokončené nabíjení se ztracenou fakturou nebo dvojí stržení při souběžných požadavcích je vyloučeno návrhem.

Licence a manifest značky

Značka běží pod kryptograficky podepsanou licencí - název, právnická osoba, trh, doména, daňové údaje - kterou nelze znovu vydat bez vlastníka platformy. Vzhled, poskytovatel plateb, jazyk, měna a mapy žijí v manifestu značky, který se upravuje v portálu a aplikuje bez nového sestavení.

Otevřený základ

Transportní framework a platformní vrstva v PostgreSQL jsou zveřejněny pod svobodnou licencí na GitHubu; doménová vrstva nabíjení nad nimi je produkt. Dodávka je Docker Compose na vlastním serveru značky, s databází nedostupnou z vnějšího síťového segmentu.

Roadmapa

Kde platforma zaostává za enterprise lídry - a říká to

Nic z toho nebrání provozovat a vydělávat už dnes; vše je plánovaná práce.

V plánu

ISO 15118 Plug & Charge

Auto se autorizuje samo, bez karty či aplikace. Důležité pro prémiové DC flotily a součást některých národních dotačních programů.

V plánu

Nativní mobilní aplikace

Řidiči používají webovou aplikaci, která se nainstaluje do telefonu jedním klepnutím; přítomnost v App Store a Google Play je další krok.

V plánu

Vyvažování zátěže na úrovni lokality

Výkonové profily se předávají stanici a ukládají; rozdělování výkonu mezi stanice jedné lokality a reakce na špičky v síti jsou v plánu.

V plánu

Provoz parku ve velkém

Hromadné operace s firmwarem a nastavením, hierarchie lokalit, export reportů a tvůrce reportů - to, co žádá operátor s padesáti a více stanicemi.

V plánu

Roamingové huby

Polovina eMSP v OCPI v živé výměně a smlouvy s Hubject a Gireve.

Chcete platformu pod vlastní značkou?

Nová značka se nasadí na připravený server za pár minut - s vlastní doménou, právnickou osobou, poskytovatelem plateb a vzhledem. Výrobci a operátoři: white-label program je na další stránce.