← Dashboard'a Dön

🚀 VCSS Dashboard - Hızlı Başlangıç Kılavuzu

1. Dashboard'a Erişim

1 Server'ı Başlatın

Terminal'de şu komutu çalıştırın:

cd /home/basar/apps/vcss/server && npm start
2 Tarayıcıda Açın
Yerel Erişim:
http://localhost:5001/dashboard
Uzak Erişim:
http://SUNUCU_IP:5001/dashboard
💡 İpucu: Server başladığında terminal'de şu mesajları göreceksiniz:
✅ VCSS Server running on http://0.0.0.0:5001
📊 Dashboard available at http://0.0.0.0:5001/dashboard

2. Dashboard Özellikleri

📊 Ana Sayfa (Dashboard)

🔌 Stations Sayfası

⚙️ Settings Sayfası

3. Temel Kullanım

1 Dashboard'u Açın

Tarayıcıda http://localhost:5001/dashboard adresini açın

2 Navigasyon

Üst menüden sayfalar arasında geçiş yapabilirsiniz:

  • 🏠 Dashboard - Ana sayfa
  • 🔌 Stations - İstasyon listesi
  • ⚙️ Settings - Ayarlar
3 Tema Değiştirme

Sağ üstteki 🌙/☀️ butonuna tıklayarak karanlık/aydınlık tema arasında geçiş yapabilirsiniz.

4 Manuel Yenileme

"Refresh" butonlarına tıklayarak verileri manuel olarak yenileyebilirsiniz.

4. Özellikler

🌐 Real-Time Updates (WebSocket)

Dashboard WebSocket üzerinden gerçek zamanlı güncellemeler alır. İstatistikler otomatik olarak güncellenir.

📱 Progressive Web App (PWA)

Dashboard'u mobil cihazınıza PWA olarak yükleyebilirsiniz. Offline çalışma desteği vardır.

🎨 Responsive Design

Dashboard desktop, tablet ve mobil cihazlarda mükemmel çalışır.

♿ Accessibility

Klavye navigasyonu ve ekran okuyucu desteği vardır.

5. OCPP Protokol Açıklamaları

OCPP Nedir?

OCPP (Open Charge Point Protocol), şarj istasyonları (Charge Points) ile merkezi yönetim sistemleri (CSMS - Central System Management System) arasındaki iletişimi sağlayan açık bir protokoldür.

💡 Önemli: OCPP, şarj istasyonlarının farklı CSMS sistemleriyle uyumlu çalışmasını sağlar. Bu sayede istasyon üreticileri ve CSMS sağlayıcıları arasında standart bir iletişim protokolü oluşturulur.

OCPP 2.0.1 vs 1.6J Farkları

OCPP 2.0.1 (Önerilen):
  • Daha modern ve güvenli protokol
  • JSON formatında mesajlar
  • WebSocket üzerinden iletişim
  • Gelişmiş transaction yönetimi
  • ChargingProfile desteği
  • Daha detaylı hata mesajları
OCPP 1.6J (Eski):
  • Eski protokol versiyonu
  • JSON formatında mesajlar
  • WebSocket üzerinden iletişim
  • Basic Authentication desteği
  • Daha basit transaction yönetimi

OCPP Mesaj Tipleri

Call (Çağrı): İstasyon veya CSMS tarafından gönderilen istek mesajı
["Call", messageId, action, payload]
CallResult (Sonuç): Call mesajına başarılı yanıt
["CallResult", messageId, payload]
CallError (Hata): Call mesajına hata yanıtı
["CallError", messageId, errorCode, errorDescription, errorDetails]

Temel OCPP Mesajları

BootNotification: İstasyon başlatıldığında CSMS'e gönderilen mesaj. İstasyon bilgilerini (vendor, model, serial, firmware) içerir.
Heartbeat: İstasyonun canlı olduğunu göstermek için periyodik olarak gönderilen mesaj. CSMS'ten güncel saat bilgisini alır.
StatusNotification: Connector durumu değiştiğinde gönderilen mesaj. Durumlar: Available, Preparing, Charging, SuspendedEVSE, SuspendedEV, Finishing, Reserved, Unavailable, Faulted.
Authorize: ID Tag'in yetkilendirilip yetkilendirilmediğini kontrol eden mesaj.
StartTransaction: Şarj işlemini başlatan mesaj. Transaction ID döndürür ve meter start değerini içerir.
StopTransaction: Şarj işlemini durduran mesaj. Meter stop değerini ve transaction ID'yi içerir.
MeterValues: Periyodik olarak gönderilen enerji, güç, voltaj ve akım değerlerini içeren mesaj.

6. CSMS Bağlantısı Kurma

1 CSMS URL Formatı

OCPP bağlantısı için WebSocket URL'i kullanılır:

Güvenli Bağlantı (WSS - Önerilen):
wss://csms.example.com/ocpp/station-id
Güvenli Olmayan Bağlantı (WS - Test için):
ws://csms.example.com/ocpp/station-id
2 OCPP Protokol Seçimi

İstasyon eklerken veya düzenlerken OCPP protokolünü seçin:

  • OCPP 2.0.1: Modern protokol (önerilen)
  • OCPP 1.6J: Eski protokol (uyumluluk için)
3 Basic Authentication (OCPP 1.6J)

OCPP 1.6J protokolünde Basic Authentication kullanılabilir:

  • Username: İstasyon kullanıcı adı
  • Password: İstasyon şifresi
💡 Not: OCPP 2.0.1'de Basic Authentication kullanılmaz, güvenlik WebSocket TLS (WSS) ile sağlanır.
4 Bağlantı Kurma Adımları
  1. İstasyon ekleyin veya düzenleyin
  2. CSMS URL'ini girin (ws:// veya wss:// ile başlamalı)
  3. OCPP protokolünü seçin (2.0.1 veya 1.6J)
  4. OCPP 1.6J için Username ve Password girin (opsiyonel)
  5. "Connect" butonuna tıklayın
  6. Bağlantı durumunu kontrol edin (Connected/Disconnected badge)
⚠️ Bağlantı Sorunları:
1. CSMS URL'inin doğru olduğunu kontrol edin
2. WebSocket protokolünün (ws:// veya wss://) kullanıldığını kontrol edin
3. Firewall ayarlarını kontrol edin (port 80/443 veya özel port)
4. TLS sertifikası sorunları için WSS yerine WS deneyin (test için)
5. CSMS'in çalıştığını ve erişilebilir olduğunu kontrol edin

7. Şarj İşlemi Simülasyonu

1 İstasyon Ekleme ve Yapılandırma
  1. Stations sayfasına gidin
  2. "Add Station" butonuna tıklayın
  3. İstasyon bilgilerini girin:
    • Station Name: İstasyon adı
    • Station ID: Benzersiz istasyon ID'si
    • CSMS URL: WebSocket URL'i (ws:// veya wss://)
    • Protocol: OCPP 2.0.1 veya 1.6J
    • Connector Type: Type 2, CCS, CHAdeMO, vb.
    • Power Rating: kW cinsinden güç
    • Number of Connectors: Connector sayısı
  4. "Create Station" butonuna tıklayın
2 CSMS'e Bağlanma
  1. İstasyon listesinde istasyonunuzu bulun
  2. "View" butonuna tıklayın
  3. İstasyon detay modal'ında "Connect" butonuna tıklayın
  4. Bağlantı durumunu kontrol edin (Connected badge görünmeli)
  5. BootNotification otomatik olarak gönderilir
3 Transaction Başlatma

İki yöntemle transaction başlatabilirsiniz:

Yöntem 1: API ile Başlatma

POST /api/v1/stations/:id/start-transaction
Body: {"connectorId": 1, "idTag": "TEST_TAG", "meterStart": 0}

Yöntem 2: CSMS'ten RemoteStartTransaction

CSMS'ten RemoteStartTransaction mesajı gönderilir, istasyon otomatik olarak transaction başlatır.

4 MeterValues Periyodik Gönderimi

Transaction başladıktan sonra:

  • MeterValues mesajları periyodik olarak gönderilir (varsayılan: 30 saniye)
  • Her mesajda enerji, güç, voltaj ve akım değerleri bulunur
  • Enerji değeri artarak simüle edilir
  • ChargingProfile varsa power limit uygulanır
5 Transaction Durdurma

İki yöntemle transaction durdurabilirsiniz:

Yöntem 1: API ile Durdurma

POST /api/v1/stations/:id/stop-transaction
Body: {"transactionId": "123", "idTag": "TEST_TAG", "meterStop": 5000, "reason": "Local"}

Yöntem 2: CSMS'ten RemoteStopTransaction

CSMS'ten RemoteStopTransaction mesajı gönderilir, istasyon otomatik olarak transaction durdurur.

6 OCPP Mesaj Akışı
Bağlantı Akışı:
1. WebSocket bağlantısı kurulur
2. BootNotification gönderilir → CSMS'ten interval alınır
3. Heartbeat periyodik olarak gönderilir
4. StatusNotification gönderilir (Available durumu)
Transaction Akışı:
1. StartTransaction gönderilir → Transaction ID alınır
2. StatusNotification gönderilir (Charging durumu)
3. MeterValues periyodik olarak gönderilir
4. StopTransaction gönderilir → Transaction durdurulur
5. StatusNotification gönderilir (Finishing → Available)

8. Troubleshooting Rehberi

Bağlantı Sorunları

⚠️ WebSocket Bağlantısı Kurulamıyor
Çözüm Adımları:
1. CSMS URL'inin doğru olduğunu kontrol edin (ws:// veya wss:// ile başlamalı)
2. CSMS'in çalıştığını ve erişilebilir olduğunu kontrol edin
3. Firewall ayarlarını kontrol edin (port 80/443 veya özel port)
4. TLS sertifikası sorunları için WSS yerine WS deneyin (test için)
5. Network bağlantısını kontrol edin
6. Tarayıcı konsolunda WebSocket hatalarını kontrol edin (F12)
⚠️ BootNotification Gönderilemiyor
Çözüm Adımları:
1. Bağlantı durumunu kontrol edin (Connected olmalı)
2. İstasyon detay modal'ında "Send BootNotification" butonuna tıklayın
3. OCPP mesaj loglarını kontrol edin (CallError mesajları var mı?)
4. CSMS'in BootNotification mesajını kabul ettiğini kontrol edin

Mesaj Hataları

⚠️ CallError Mesajları Alınıyor
Çözüm Adımları:
1. OCPP mesaj loglarını kontrol edin (Error Code ve Description)
2. Mesaj formatının doğru olduğunu kontrol edin
3. OCPP protokol versiyonunun uyumlu olduğunu kontrol edin
4. Payload'ın geçerli olduğunu kontrol edin
5. CSMS dokümantasyonuna bakın (desteklenen mesajlar ve formatlar)
⚠️ Heartbeat Gönderilemiyor
Çözüm Adımları:
1. Bağlantı durumunu kontrol edin (Connected olmalı)
2. Heartbeat interval ayarını kontrol edin (Settings sayfası)
3. OCPP mesaj loglarını kontrol edin
4. CSMS'in Heartbeat mesajını kabul ettiğini kontrol edin

Transaction Sorunları

⚠️ Transaction Başlatılamıyor
Çözüm Adımları:
1. Bağlantı durumunu kontrol edin (Connected olmalı)
2. Connector durumunu kontrol edin (Available olmalı)
3. Aktif transaction olmadığını kontrol edin
4. ID Tag'in geçerli olduğunu kontrol edin
5. OCPP mesaj loglarını kontrol edin (CallError mesajları var mı?)
6. StartTransaction mesajının gönderildiğini kontrol edin
⚠️ MeterValues Gönderilmiyor
Çözüm Adımları:
1. Aktif transaction olduğunu kontrol edin
2. MeterValues interval ayarını kontrol edin (Settings sayfası)
3. Meter device'ın çalıştığını kontrol edin
4. OCPP mesaj loglarını kontrol edin
5. Transaction'ın aktif olduğunu kontrol edin
⚠️ Transaction Durdurulamıyor
Çözüm Adımları:
1. Transaction ID'nin doğru olduğunu kontrol edin
2. Transaction'ın aktif olduğunu kontrol edin
3. Bağlantı durumunu kontrol edin (Connected olmalı)
4. OCPP mesaj loglarını kontrol edin
5. StopTransaction mesajının gönderildiğini kontrol edin

Configuration Sorunları

⚠️ Configuration Değiştirilemiyor
Çözüm Adımları:
1. Configuration key'in readonly olmadığını kontrol edin
2. Value formatının doğru olduğunu kontrol edin (type, range, format)
3. OCPP mesaj loglarını kontrol edin (CallError mesajları var mı?)
4. ChangeConfiguration mesajının gönderildiğini kontrol edin
5. CSMS'in configuration değişikliğini kabul ettiğini kontrol edin
⚠️ GetConfiguration Çalışmıyor
Çözüm Adımları:
1. Bağlantı durumunu kontrol edin (Connected olmalı)
2. GetConfiguration mesajının gönderildiğini kontrol edin
3. OCPP mesaj loglarını kontrol edin
4. CSMS'in GetConfiguration mesajını kabul ettiğini kontrol edin

9. Dashboard Sorun Giderme

⚠️ Dashboard Açılmıyor?
1. Server'ın çalıştığını kontrol edin: curl http://localhost:5001/health
2. Port'un kullanımda olmadığını kontrol edin
3. Firewall ayarlarını kontrol edin
⚠️ Grafikler Görünmüyor?
1. İnternet bağlantınızı kontrol edin (Chart.js CDN'den yüklenir)
2. Tarayıcı konsolunda hataları kontrol edin (F12)
3. Sayfayı yenileyin
⚠️ Veriler Güncellenmiyor?
1. WebSocket bağlantısını kontrol edin
2. "Refresh" butonuna tıklayın
3. Otomatik yenileme ayarlarını kontrol edin

10. Hızlı Test

Test Checklist:
  • Dashboard açılıyor mu?
  • İstatistik kartları görünüyor mu?
  • Grafikler yüklendi mi?
  • Tema değiştirme çalışıyor mu?
  • Navigasyon menüsü çalışıyor mu?
  • WebSocket bağlantısı kuruldu mu?
  • İstasyon eklenebiliyor mu?
  • CSMS'e bağlanılabiliyor mu?
  • Transaction başlatılabiliyor mu?
  • MeterValues gönderiliyor mu?

VCSS Dashboard v1.0.0

Son Güncelleme: 2025-11-12

OCPP 2.0.1 ve 1.6J Desteği