Das CANUSB4-ISO ist ein USB-Schnittstellenmodul, das zur Computersteuerung und Anzeige für das CBUS-System verwendet wird. Es gehört zu einer Reihe von Layout-Steuerungsmodulen für die Verwendung mit dem CBUS-System, einem universellen Layout Control Bus (LCB), der den Industriestandard CAN-Bus verwendet. Weitere Informationen zu CBUS/VLCB findest Du hier.
Das CANUSB4-ISO Interface basiert auf dem Kit 80A vom MERG1) . Ich habe die Schaltung um ein galvanisch getrenntes USB-Interface erweitert und ein paar weitere Kleinigkeiten geändert. So haben nun beide PIC ein Programmier-Interface auf der Platine. Es wird für USB ein PIC18F14K50 und für den CAN Bus ein PIC18F26K80 verwendet. Da der PIC18F14K50 nur mit 3,3V programmiert werden darf (mit PICKIT4 oder PICKIT5) und die Originalschaltung darum kein Programmierinterface enthielt, habe ich das ergänzt und einen Jumper vorgesehen, der die 5V Leitung unterbricht. Hier muss man aufpassen, dass zum Flashen des USB Controllers der Jumper entfernt wird und die Spannungsversorgung im MBLAB X Projekt korrekt auf 3,3V eingestellt ist.
Eine weitere Änderung ist, das die Platine nur noch über die +12V vom CAN Bus Stecker (J1) versorgt werden kann. Das ist wegen der galvanischen Trennung nicht anders möglich, außer man würde noch mit Spannungswandlern arbeiten. Das ist aber nicht nötig, da im CBUS/VLCB Kabel die 12V für die Versorgung der Nodes mitgeführt wird.
Einen interaktiven Bestückungsplan und die Stückliste gibt es hier. Für den Nachbau habe ich darauf verzichtet, alle Bauteile in SMD auszuführen. Bei dem ADUM4160 ging es nicht anders, den gibt es nur in SMD. Die PIC Controller und der CAN Bus Transceiver sind als DIP Varianten vorgesehen, die entsprechende IC-Sockel für den leichten Austausch bekommen. Widerstände und Kondensatoren sind alle in 1206, also nicht schwieriger zu löten, als bedrahtete Bauteile.
Mit diesem Interface wird die Verbindung zu Rocrail und/oder JMRI mit dem CAN Bus geschaffen. Auch für das Firmware-Update der Nodes wird dieses Interface benötigt.
Die erste Version 1.00 der Leiterplatte ist bei Aisler bestellt. Ein **Git Repository** für das Projekt ist angelegt. Sobald die Platinen da sind, geht es weiter.