Difference between revisions of "Simple EVSE"
Jump to navigation
Jump to search
(Created page with "= QModBus = https://github.com/ed-chemnitz/qmodbus/") |
(→Start) |
||
(46 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
+ | = DIY = | ||
+ | <youtube>vQ7WK8AE1Ts</youtube> | ||
+ | <youtube>IOv_SOgpoAw</youtube> | ||
+ | * https://github.com/kortas87/simple-evse/wiki/SimpleEvseJ1772guideExternal | ||
+ | * http://www.goingelectric.de/forum/ladeequipment/simple-evse-charge-controler-von-ev-power-t7556-100.html | ||
+ | = Parts = | ||
+ | # [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 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/> |