Difference between revisions of "Simple EVSE"

From BITPlan can4eve Wiki
Jump to navigation Jump to search
 
(42 intermediate revisions by the same user not shown)
Line 5: Line 5:
 
* http://www.goingelectric.de/forum/ladeequipment/simple-evse-charge-controler-von-ev-power-t7556-100.html
 
* http://www.goingelectric.de/forum/ladeequipment/simple-evse-charge-controler-von-ev-power-t7556-100.html
 
= Parts =
 
= Parts =
https://www.elektrofahrzeug-umbau.de/shop/ladetechnik/
+
# [https://www.elektrofahrzeug-umbau.de/shop/ladetechnik/ SimpleEVSE Wallbox] <img src='https://image.jimcdn.com/app/cms/image/transf/dimension=1820x1280:format=gif/path/s9f797ea9ad7dc140/image/i3b98618ecb7a3048/version/1468768366/image.gif' width='150'>
https://www.bauhaus.info/sicherungsautomaten/abb-install-schuetz24a-4-schliesser/p/20409784?q=installationssch%C3%BCtz
+
# [https://www.bauhaus.info/sicherungsautomaten/abb-install-schuetz24a-4-schliesser/p/20409784?q=installationssch%C3%BCtz 24 Ampere 4 Fach Schütz] <img src='https://media.bahag.com/assets/resp_product/13/15/1315833_22404234.jpg' width='250px'>
 +
# [http://www.ebay.de/itm/Sicherungskasten-Kleinverteiler-IP40-aufputz-Unterverteilung-LUX-PLUS-/291240725404 Kleinverteiler Sicherungskasten] http://i.ebayimg.com/images/g/-kgAAOSwQItUJWkW/s-l500.jpg
 +
# [https://www.reichelt.de//index.html?ARTICLE=164977 Raspberry PI 3] https://cdn-reichelt.de/bilder/web/artikel_ws/A300/RASP_03_01.jpg
 +
# [https://www.reichelt.de/index.html?ARTICLE=160286 Raspberry PI Hutschienen-Gehäuse] https://cdn-reichelt.de/bilder/web/artikel_ws/C700/RPI_CASE_DINRAIL_01.jpg
 +
# [https://www.reichelt.de//index.html?ARTICLE=56051 ggf. Endhalter für Hutschine] https://cdn-reichelt.de/bilder/web/artikel_ws/C153/CLIPFIX35-5.jpg
 +
# [https://www.reichelt.de/index.html?ARTICLE=148095 5 Volt Netzteil Hutschiene] https://cdn-reichelt.de/bilder/web/artikel_ws/D400/DR_15_01.jpg
 +
# [http://bg-etech.de/os/product_info.php/products_id/429 Stromzähler]<img src='http://www.bg-etech.de/_shop/WG10/DRS155DE_web1.jpg' width='200px'>
 +
# [https://www.amazon.de/Demarkt-Adapter-RS232-PL2303HX-Konverter/dp/B013GBXZTM TTL - Uart / USB Converter]
 +
# [https://www.amazon.de/CSL-Seriell-Adapterkabel-Konverter-u/dp/B072M4NB5C RS232 - USB / USB Converter]
 +
 
 +
= Manuals =
 +
* https://www.elektrofahrzeug-umbau.de/anleitungen/bluetooth-modul/
  
 
= QModBus =
 
= QModBus =
 
https://github.com/ed-chemnitz/qmodbus/
 
https://github.com/ed-chemnitz/qmodbus/
 +
== Installation ==
 +
=== Prerequisites ===
 +
<source lang='bash'>
 +
sudo apt-get install qt4-dev-tools
 +
</source>
 +
If you have no superuser rights prepend <nowiki>sudo</nowiki> before the commands below or type
 +
<source lang='bash'>
 +
sudo -s
 +
</source>
 +
before you start
 +
==== Debug tools ====
 +
<source lang='bash'>
 +
sudo apt-get install x11-apps
 +
</source>
 +
 +
=== qmodbus installations ===
 +
<source lang='bash'>
 +
cd /usr/local/src
 +
git clone https://github.com/ed-chemnitz/qmodbus/
 +
qmake
 +
make
 +
</source>
 +
 +
== Start ==
 +
<source lang='bash'>
 +
ssh -Y <computer with QModBus>
 +
cd /usr/local/scr/qmodbus
 +
./QModBus&
 +
</source>
 +
 +
== Example result ==
 +
[[File:registers2017-07-18.png|400px]]
 +
 +
= Volkszähler =
 +
* https://wiki.volkszaehler.org/
 +
 +
== S0 Pulse auslesen ==
 +
* https://wiki.volkszaehler.org/hardware/controllers/s0-an-rs232
 +
 +
= EVSE Software =
 +
To get this software simply contact us via http://web.bitplan.com/kontakt/
 +
== Usage ==
 +
<source lang='bash'>
 +
java -jar simpleevse.jar Usage
 +
SimpleEvSe: 0.0.1
 +
 +
  usage: java SimpleEvSe
 +
-a (--readall)    : read all
 +
                    read values of all registers
 +
-d (--debug)      : debug
 +
                    create additional debug output if this switch is used
 +
-g (--gui)        : graphical user interface
 +
                    show the graphical user interface
 +
-h (--help)      : help
 +
                    show this usage
 +
-j (--jmod2)      : jmod2
 +
                    use jmod2 communication library
 +
-l (--list)      : listserial
 +
                    list the available serial ports
 +
-p (--port) WERT  : serialPort
 +
                    the serial Port to use
 +
-r (--read) WERT  : read
 +
                    read value for the given register
 +
-s (--server)    : web server
 +
                    start the webserver
 +
-t (--timeOut) N  : timeOut
 +
                    the serial Port timeout in msecs to apply
 +
-v (--version)    : showVersion
 +
                    show current version if this switch is used
 +
-vb (--verbose)  : verbose
 +
                    show descriptions and numbers
 +
-w (--write) WERT : write
 +
                    write value to the given register
 +
</source>
 +
== Check serial devices ==
 +
<source lang='bash'>
 +
java -jar simpleevse.jar  --list
 +
available serial devices are:
 +
ttyUSB1
 +
ttyUSB0
 +
ttyAMA0
 +
</source>
 +
== read all registers ==
 +
<source lang='bash'>
 +
java -jar simpleevse.jar  --port ttyUSB0 --readall
 +
SetChargeCurrent=  8
 +
ChargeCurrent=  8
 +
VehicleState=  3
 +
MaximumCurrent= 20
 +
StopCharging=  0
 +
FirmwareRevision=  5
 +
DefaultCurrent= 32
 +
ModbusActivate=  1
 +
LowestANCurrent=  0
 +
DigitalOrAnalog=  1
 +
SaveValuesOnPowerDown=  0
 +
StopLoadViaButton=  0
 +
Reserved2006=  0
 +
PP-Recognition=  0
 +
Current1=64262
 +
Current2=  0
 +
Current3=  0
 +
Current4=  0
 +
Current5=  0
 +
Current6=  0
 +
Current7=  0
 +
Current8=  0
 +
</source>
 +
same but verbose
 +
<source lang='bash'>
 +
java -jar simpleevse.jar  --port ttyUSB0 --readall --verbose
 +
1000 (    SetChargeCurrent)=  8
 +
Ladestrom einstellen
 +
Über dieses Register können Sie den gewünschten Ladestrom einstellen. (6-80A).
 +
1001 (      ChargeCurrent)=  8
 +
Aktueller Ladestrom
 +
Zeigt den über das CP-Signal kommunizierte Strom an.
 +
Dieser Wert entspricht dem eingestellten Ladestrom in Register 1000,
 +
kann jedoch nie den Wert aus Register 1003 überschreiten.
 +
Wird der analoge Eingang AN benutzt, kann der dort eingestellte Ladestrom über dieses Register abgerufen werden.
 +
1002 (        VehicleState)=  3
 +
Fahrzeugstatus
 +
1: kein Fahrzeug angeschlossen, EVSE bereit 2: Fahrzeug angeschlossen
 +
3: Laden gestartet
 +
4: Laden mit Ventilation gestartet
 +
1003 (      MaximumCurrent)= 20
 +
Maximaler Strom
 +
Zeigt den maximalen Strom an, der durch den PP-Widerstand bzw.
 +
dem angeschlossenen Ladekabel begrenzt wird (6A, 13A, 20A, 32A, 63A, 80A), oder über das Register 2007 eingestellt wurde.
 +
1004 (        StopCharging)=  0
 +
Laden beenden
 +
1: Laden sofort beenden 0: default/start charging
 +
1005 (    FirmwareRevision)=  5
 +
Firmware Revision
 +
2000 (      DefaultCurrent)= 32
 +
Default Ladestrom
 +
Der Ladestrom, der beim Einschalten der EVSE anliegen soll.
 +
Manuelles Einstellen nur dann sinnvoll, wenn das Abspeichern des zuletzt eingestellten Ladestroms deaktiviert wird (Register 2004).
 +
2001 (      ModbusActivate)=  1
 +
Modbus aktivieren
 +
Hier kann der Modbus aktiviert und deaktiviert werden.
 +
Bei deaktiviertem Modbus kann Pin 4 und Pin 5 des 5-poligen PROG-Anschlusses verwendet werden, um den maximalen Strom manuell über Widerstände einzustellen.
 +
0: Analog-Eingang über Pin 4 / Pin 5 aktiv
 +
1: Modbus aktiv (Analog-Eingang über Pin 4 / Pin 5 deaktiviert)
 +
Achtung: Die Benutzung des analogen Eingangs an Pin 4/Pin 5 ist nicht möglich, wenn das BT-Modul gesteckt ist. Dieses Register bitte nur auf 0 setzen, wenn das BT-Modul nicht angeschlossen ist, da es ansonsten zu Fehlfunktionen der EVSE kommen kann.
 +
2002 (    LowestANCurrent)=  0
 +
Kleinster einstellbarer Ladestrom über AN-Eingang
 +
Wird der AN-Eingang (0-5V) zur Stromeinstellung benutzt (Register 2003), so kann der minimale Strom über dieses Register gewählt werden (6A bis max. Strom), der über den AN-Eingang minimal eingestellt werden kann.
 +
Wird der Wert 0 gesetzt, stoppt das Laden (Schütz öffnet) bei einem über den AN-Eingang eingestellten Strom kleiner 6A .
 +
2003 (    DigitalOrAnalog)=  1
 +
Digitale oder analoge Stromeinstellung
 +
0: analoge Stromeinstellung über AN-Eingang (0-5V), das Register 1000 wird ausgeblendet.
 +
Digitale Stromeinstellung über Taster am AN-Eingang auf GND:
 +
1: jedes Aufblinken der LED eine Stromänderung um 1A, gestartet von 0A
 +
2: jedes Aufblinken der LED eine Stromänderung um 2A, gestartet von 0A
 +
3: jedes Aufblinken der LED eine Stromänderung um 3A, gestartet von 0A
 +
......
 +
10: jedes Aufblinken der LED eine Stromänderung um 10A, gestartet von 0A 11: feste Werte, die über die Register 2010 bis 2017 eingestellt werden können
 +
1x Aufleuchten = Stromwert aus Register 2010 2x Aufleuchten = Stromwert aus Register 2011
 +
2004 (SaveValuesOnPowerDown)=  0
 +
Stromwerte bei Stromausfall abspeichern oder zurücksetzen auf Default-Wert
 +
0: Stromwerte werden nicht gespeichert (default)
 +
1: Stromwerte werden gespeichert (in Register 2000)
 +
2005 (  StopLoadViaButton)=  0
 +
Laden über Taster unterbrechen
 +
0: Laden kann nicht über Taster unterbrochen werden
 +
1: Laden kann durch Taster (> 1 Sekunde halten) unterbrochen werden und kann erst wieder durch Abstecken und wieder Einstecken des Ladesteckers aktiviert werden.
 +
Bootloader aktivieren
 +
33000: Bootloader aktiv, LED leuchtet dauerhaft, bis Update durchgeführt wurde
 +
2006 (        Reserved2006)=  0
 +
reserviert, wird vorerst nicht bedient
 +
2007 (      PP-Recognition)=  0
 +
PP Erkennung
 +
0: PP-Erkennung über PP-Pin ist aktiv
 +
Wert > 0: Anstelle des über den PP-Widerstand begrenzten Ladestrom, kann über diesen Wert ein fester maximaler Ladestrom eingestellt werden. Der Widerstand m PP-Pin wird nicht berücksichtigt.
 +
2010 (            Current1)=64262
 +
Stromwert 1 (default 6A)
 +
2011 (            Current2)=  0
 +
Stromwert 2 (default 10A)
 +
2012 (            Current3)=  0
 +
Stromwert 3 (default 16A)
 +
2013 (            Current4)=  0
 +
Stromwert 4 (default 25A)
 +
2014 (            Current5)=  0
 +
Stromwert 5 (default 6A)
 +
2015 (            Current6)=  0
 +
Stromwert 6 (default 10A)
 +
2016 (            Current7)=  0
 +
Stromwert 7 (default 16A)
 +
2017 (            Current8)=  0
 +
Stromwert 8 (default 25A)
 +
</source>
 +
 +
== read a single register ==
 +
<source lang='bash'>
 +
java -jar simpleevse.jar  --port ttyUSB0 --read SetChargeCurrent
 +
SetChargeCurrent=  8
 +
</source>
 +
same but verbose
 +
<source lang='bash'>
 +
java -jar simpleevse.jar  --port ttyUSB0 --read SetChargeCurrent --verbose
 +
1000 (    SetChargeCurrent)=  8
 +
Ladestrom einstellen
 +
Über dieses Register können Sie den gewünschten Ladestrom einstellen. (6-80A).
 +
</source>
 +
same but verbose and with debug information
 +
<source lang='bash'>
 +
java -jar simpleevse.jar  --port ttyUSB0 --read SetChargeCurrent --verbose --debug
 +
SimpleEvSe: 0.0.1
 +
 +
INFO: Frame sent: 010303E8000645B8
 +
INFO: Frame recv: 01030C0008000800030014000000051DD0
 +
INFO: Frame sent: 010307D000084481
 +
INFO: Frame recv: 01031000200001000000010000000000000000CB50
 +
INFO: Frame sent: 010307DA00086483
 +
INFO: Frame recv: 010310FB0600000000000000000000000000006128
 +
1000 (    SetChargeCurrent)=  8
 +
Ladestrom einstellen
 +
Über dieses Register können Sie den gewünschten Ladestrom einstellen. (6-80A).
 +
</source>
 +
== write a single register ==
 +
<source lang='bash'>
 +
java -jar simpleevse.jar  --write SetChargeCurrent=8 --port ttyUSB0
 +
SetChargeCurrent=  8
 +
</source>
 +
same but verbose
 +
<source lang='bash'>
 +
java -jar simpleevse.jar  --write SetChargeCurrent=8 --port ttyUSB0 --verbose
 +
1000 (    SetChargeCurrent)=  8
 +
Ladestrom einstellen
 +
Über dieses Register können Sie den gewünschten Ladestrom einstellen. (6-80A).
 +
</source>
 +
== start a local graphical user interface ==
 +
<source lang='bash'>
 +
java -jar simpleevse.jar  --port ttyUSB0 --gui
 +
to edit a value click the corresponding cell in the value column and press enter
 +
</source>
 +
== start a web server ==
 +
<source lang='bash'>
 +
java -jar simpleevse.ja --port ttyUSB0 --server --debug
 +
SimpleEvSe: 0.0.1
 +
 +
Jul 29, 2017 6:40:46 PM com.sun.jersey.api.core.PackagesResourceConfig init
 +
INFORMATION: Scanning for root resource and provider classes in the packages:
 +
  com.bitplan.simpleevse.resources
 +
  com.bitplan.rest.providers
 +
Jul 29, 2017 6:40:54 PM com.sun.jersey.api.core.ScanningResourceConfig logClasses
 +
INFORMATION: Root resource classes found:
 +
  class com.bitplan.simpleevse.resources.SimpleEvseResource
 +
Jul 29, 2017 6:40:54 PM com.sun.jersey.api.core.ScanningResourceConfig logClasses
 +
INFORMATION: Provider classes found:
 +
  class com.bitplan.rest.providers.JsonProvider
 +
Jul 29, 2017 6:40:55 PM com.sun.jersey.server.impl.application.WebApplicationImpl _initiate
 +
INFORMATION: Initiating Jersey application, version 'Jersey: 1.19.3 10/24/2016 03:43 PM'
 +
Jul 29, 2017 6:40:57 PM com.bitplan.rest.RestServerImpl addHttpHandler
 +
INFORMATION: adding classpath httphandler /static/->/
 +
Jul 29, 2017 6:40:57 PM org.glassfish.grizzly.http.server.NetworkListener start
 +
INFORMATION: Started listener bound to [0.0.0.0:8102]
 +
Jul 29, 2017 6:40:57 PM org.glassfish.grizzly.http.server.HttpServer start
 +
INFORMATION: [HttpServer] Started.
 +
Jul 29, 2017 6:40:57 PM com.bitplan.rest.RestServerImpl startWebServer
 +
INFORMATION: starting server for URL: http://0.0.0.0:8102
 +
</source>
 +
Now you can use your browser or curl to issue restful commands
 +
 +
Valid commands are e.g.:
 +
 +
*    http://localhost:8102/charge/control/write/StopCharging/1
 +
*    http://localhost:8102/charge/control/write/StopCharging/0
 +
*    http://localhost:8102/charge/control/write/SetChargeCurrent/6
 +
*    http://localhost:8102/charge/control/read/SetChargeCurrent
 +
*    http://localhost:8102/charge/control/read/all
 +
 
<headertabs/>
 
<headertabs/>

Latest revision as of 12:33, 7 October 2017