für mein LFP Projekt habe ich mich für das REC-BMS entschieden. Wenn die Zellen schon China kommen kann wenigstens das Geld für das BMS in einer europäischen Firma bleiben. Außerdem fand ich den grundsätzlichen Aufbau des BMS zusammen mit dem Neuen Wifimodul und der Victron integration überzeugend.
Ich benutze keinen Cerbo GX sondern einen Raspberry Pi 4 für Venus, also muß der noch um einen CAN-Bus HAT ergänzt werden. Entschieden habe ich mich für einen PiCAN2 DUO. Dieser besitzt den Standard MCP2515 Chip. Die Kerneltreiber dafür sind im Venus OS schon drin also sollte es problemlos gehen.
Auf --> Link hat ein Entwickler ein Script für eine einfach installation geschrieben. Diese hat aber leider nicht funktioniert. Also war jetzt Handarbeit angesagt.
Zuerst wird in /u-boot/config.txt folgendes eingefügt:
- Code: --> Link
[all]
dtparam=spi=on
# Bring up the PiCAN controllers.
dtoverlay=mcp2515-can0-overlay,oscillator=16000000,interrupt=25
dtoverlay=mcp2515-can1-overlay,oscillator=16000000,interrupt=24
dtoverlay=spi-bcm2835-overlay
gefolgt von einem reboot. Ob der nötig ist weiß ich aber nicht.
Nach dem reboot muß der CAN-Bus entsprechend gestartet werden
- Code: --> Link
raspberrypi4:~# ip link set can1 up type can bitrate 500000
Wichtig hier ist das die Bitrate mit der des REC-BMS übereinstimmt.
Da das REC-BMS bei mir am CAN1 hängt kann man jetzt mit candump schauen ob eine Kommunikation da ist
- Code: --> Link
raspberrypi4:~# candump can1
can1 377 [8] 32 00 00 00 00 00 00 00
can1 378 [8] 00 00 00 00 00 00 00 00
can1 379 [8] C8 00 00 00 00 00 00 00
can1 380 [8] 31 41 2D 31 34 39 33 00
can1 351 [8] 90 00 B0 04 C4 09 73 00
can1 355 [6] 62 00 64 00 7B 26
can1 356 [6] 60 05 02 00 CD 00
Passt!
Jetzt muss nur noch das Venus OS überzeugt werden, dass die Daten auf dem D-Bus landen und damit ins komplette Netzwerk, in die GUI, ins VRM etc gesendet werden.
Dafür ist folgendes zu machen
- Code: --> Link
ln -s /opt/victronenergy/can-bus-bms/service /service/can-bus-bms.can1
ln -s /opt/victronenergy/dbus-motordrive/service /service/dbus-motordrive.can1
ln -s /opt/victronenergy/dbus-valence/service /service/dbus-valence.can1
ln -s /opt/victronenergy/vecan-dbus/service /service/vecan-dbus.can1
ln -s /opt/victronenergy/mqtt-n2k/service /service/mqtt-n2k.can1
gefolgt von
- Code: --> Link
echo "can1" > /etc/venus/canbus_ports
Eventuell funktioniert es jetzt schon nach einen reboot. Ich musste aber noch folgendes ändern
- Code: --> Link
nano /opt/victronenergy/can-bus-bms/service/run
und dort in dem File das "DEV" in "can1" ändern.
Nach einem reboot muss dann in der GUI noch die CAN-Bus Geschwindigkeit auf 500kbit/s abgeändert werden. Der default Wert ist 250 was so natürlich nicht funktioniert.
Das Endresultat ist dann dies:
Der nächste Schritt ist dann die Ansteuerung der Relaisausgänge für OVP, UVP etc

