Hi, Welche modifikation muss ich durchfuehren um ein Lin Netzwerk mit 100 Nodes zu benutzen. Wenn ich den empfangs Kondensator auf von 220 pF auf 82 pF reduziere komme ich wieder in den 10 nF max bereich, laut der Spezifikation. Natuerlich kann ich das Ident Field nicht effektive nutzen da es nur bis 64 identifier hat. Aber die NAD Adresse geht ja von 1 bis 126. Vielen Dnak im Voraus fuer Eure Kommentare. Gruss Fleming
So genau habe ich die LIN-Spec jetzt nicht im Kopp, aber für 100 Nodes ist LIN nicht spezifiziert. Die Kondensatoren sind doch aus EMV-Gründen drin, damit die Flanken nicht zu steil werden. Notfalls geh noch weiter runter, denn bei 100 Nodes gibt es noch genügend Leitungskapazitäten (die abstrahlen und auch aufnehmen....). Ich nehme mal an, daß du noch einige Probleme aus elektrischer Sicht bekommen wirst oder aber soweit rumfrikkeln mußt, daß aus LIN was LIN-artiges wird, also sich von der Norm wegbewegt. Ich kenne LIN-Busse mit 20 Slaves, aber 100?
Oh ja: Der eine zieht I²C quer durch's Haus, der andere hängt 100 Knoten an LIN und der dritte bohrt seine Löcher in Stahlbeton mit'm Korkenzieher. Spezifikationen sind dazu da umgangen zu werden und der größte Unfug auf dieser Welt scheint zu sein, dass man für verschiedene Aufgaben verschiedene Werkzeuge erfunden hat...
Kann man 100 Nodes mit LIN überhaupt adressieren? Ohne die Spezifikation zu verbiegen, versteht sich...
Danke fuer die Kommentare. Habt ihr denn eine andere idee wie ich 100 Microchip PIC16F Controller verbinden kann? Mfg Fleming
Ich werde in den naechsten Tage ein Test Circuit aufbauen und das ganze mal testen. Mfg Fleming
Die NAD Adressierung laesst den Bereich von 1 bis 126 als Adresse zu. Bloss im Identifier Block habe ich nur 64 Adressen. Mfg Fleing
Hallo Fleming, rückst Du noch mit ein paar weiteren Randbedingungen der Implementierung heraus (Übertragungsrate, Leitungslänge, Echtzeitanforderungen, Topologie)? Dann könnte man vielleicht ein paar sinnigere Kommentare/Empfehlungen geben... (Oder wird auch bei SunSil das Pflichtenheft nach der Entwicklung geschrieben? ;-))
Hi Stefan, naturlich, ca 100 PIC16F Microcontroller auf 2 qm Fläche verteilt, also eng an eng. Die Geschwindigkeit spielt keine wirkliche Rolle ca. 10 kbits/s. Die Gesammtleitungslänge wird die 20 m Marke in den 2 qm nicht überschreiten eher 15 m. Die Aufgabe ist es das ein Master alle 100 Clients steuern kann (keine Echtzeit oder Topologie Anforderungen). Es muss möglich sein alle Clients nach einander einen Befehl zu geben und das am besten inerhalb einer sekunde. Der Befehl wird so ca 25 bit lang sein. RS485 ist zu teuer und hat einen zu komplexen Transreceiver. Gibt es sonst eine Möglichkeit mit dem EUSART vom PIC einen BUS mit 100 Clients zu betreiben? Vielen Dank im Voraus, Fleming
Wieso nimmst Du nicht leistungsfähiger Prozessoren, dann lässt sich die Zahl sicher senken, oder nicht? Du schreibst, dass es keine Echtzeitanforderungen gibt, d.h. es sollte kein Problem sein.
Hallo Peter, Danke für die gute Idee. Leider ist das nicht möglich, da jeder Processor ein eigenes analoges Gerät steuert. ... Doch es wäre rein Theoretisch möglich das ein Processor 2 vieleicht max 4 Geräte steuern könnte. Also bleiben mir dann noch 25 bis 50 Clients auf dem Bus. Immernoch recht viele für das reine LIN Protocol. (MAX 16). Mfg Fleming
Wenn keine Potentialunterschiede vorhanden sind (nehme ich an wenn alles auf 2m² installiert wird) dann einfach die Serielle Schnittstelle verwenden und auf OpenCollector mit Pullup umsetzen = billiger Treiber, vielleicht mit kurzschlussfesten "Transistor". Master serial out -> an serial in von allen Slaves alle serial out der Slaves -> gemeinsam an serial in von Master Interface wäre auch mit Optokoppler moeglich.
Hallo Peter, Super das hört sich doch gut an. An sowas habe ich auch gedacht, als Protocol wollte ich LIN nehmen, weil der genau diesen Driver benutzt, den du beschrieben hast. Wie würdest du es mit der Adressierung der einzelenen Slaves machen? Leider habe ich große potenzial unterschiede. Bis 300 Volt. Ich habe mir vorgestellt das ich das mit Optokopplen oder anderen Galvanischen trennungen beheben kann. Hast du noch eine gloreiche Idee wie man das sonst noch beheben könnte? Mfg Fleming
Wenn deine Message max. 25 Bist ist hast du immer noch 4 leere Bytes pro Identifier. Eine Lösung wäre 2 Slave hören auf die selbe ID, werten allerdings jeweils nur das erste oder zweite Signal aus.
Adressierung mittels des ersten Bytes (8 Bit = 256 Nodes). Einfaches Protokoll wie Modbus.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.