Hallo ich möchte ein Schnittstellenprotokoll, dass über eine RS485 läuft, auf ein neues Protokoll, was einfacher ist, umsetzen und über eine RS232 weiterleiten. Ist es mit ein einen PIC und so einen Bausatz (http://www.digitale-elektronik.de/shopsystem/product_info.php?cPath=23_31&products_id=110&osCsid=372d415b4e83) möglich? Oder Gibt es andere Möglichkeiten die einfach und schnell realisierbar sind? Gruß Fozziebear
:
Bearbeitet durch User
Das Board würde es tun. Ansonsten: PIC24FJ64GA002 16 Bit Controller -> einfacher zu programmieren als die 8-Bitter 8 MHz Quarz -> 32 MHz interner Takt MAX3232 für RS232 MAX3485 für RS485 LM1117-3.3V Spannungsregler plus ein paar passive Bauteile. fchk
Bei Ebay gibt es dafür fertige Module, welche auch preiswerter sind. http://www.ebay.de/itm/RS232-auf-RS485-Konverter-Adapter-Datenkommunikation-Converter-Neu-EH-/121272265146?pt=DE_Computer_Sonstige&hash=item1c3c63e9ba
Manfred G. schrieb: > Bei Ebay gibt es dafür fertige Module, welche auch preiswerter sind. Die setzen aber nur die Leitungspegel um und nicht das Protokoll. 6. Setzen. fchk
@Frank, ich möcht gerne eine fertige Hardware einsetzten. Alternativ zu ein PIC könnten ja auch ein Board mit einen AVR Controller und 232 und 485 gehen. Habe aber leider noch nix gefunden.
Ein PC und USB-RS232 und USB-RS485 Umsetzer? Ist natürlich nichts für den Dauereinsatz, aber zum Testen. Gruß, Walter
Die kleinen AVRs (<=28 Pins) haben nur einen UART und sind daher für Dich nicht geeignet. Fertige Boards kenne ich jetzt nicht. Aber der Aufbau ist ja trivial. Welche Stückzahlen brauchst Du denn? fchk
@Walter, ,habe ich auch schon überlegt. So eine embedded System auf Linux oder Windows. Habe aber noch nix einfaches und Kostengünstiges gesehen. @Frank, brauch es erst einmal für Prototyp und eine Miniserien 20-100 Stück. Darum soll der Aufwand auch nicht so hoch sein. Der Vorgang sollte so ablaufen: Systemrechner kommuniziert über RS232 und eine Standartprotokoll verschlüsselt mit dem Wandler. Der Wandler kommuniziert über ein anderes Protokoll und über RS485 mit der Maschine. Diese RS485 Protokoll wird je nach Maschine angepasst. Die Verlagerung des Maschinenprotokolls in den Systemrechner ist nicht möglich, darum ein Wandler. mfg
Frank K. schrieb: > Die kleinen AVRs (<=28 Pins) haben nur einen UART und sind daher für > Dich nicht geeignet. 2 UARTs: 14 Pin: ATtiny841 20 Pin: ATtiny1634 44 Pin: ATmega164
Hi, Fozzie Bear, > Der Vorgang sollte so ablaufen: > Systemrechner kommuniziert über RS232 und eine Standartprotokoll > verschlüsselt mit dem Wandler. > Der Wandler kommuniziert über ein anderes Protokoll und über RS485 mit > der Maschine. Diese RS485 Protokoll wird je nach Maschine angepasst. > Die Verlagerung des Maschinenprotokolls in den Systemrechner ist nicht > möglich, darum ein Wandler. Ja, im Prinzip ja. Der Knackpunkt liegt im "kommuniziert" - genauer: Der Systemrechner muss bestimmen, wann die Maschine nicht mehr zu senden hat. Erst dann darf er selber senden. Das CTS-Signal von RS-232C wird zur Umschaltung gern verwendet. Das Betriebssystem kann Dir aber Ärger machen, wenn nicht der IC wie Intel 8051 den CTS bedient, sondern ein anderer Task - und der zu spät kommt. 10 Mikrosekunden können da stundenlange Diskussionen mit dem Kunden auslösen, wenn dieser Fehler angeblich immer nur beim Kunden aufkommt ... Ich habe Schaltungen gesehen, die das mit zwei Monoflops machen und mit zwei antiparallel geschalteten RS-485-Treibern nach dem Motto: "Wer das Startzeichen etwas eher sendet, der bekommt den RS-485-Bus, dessen Treiber wird über Enable frei gegeben!" Ich bin sicher, Spezialisten wie Meilhaus bieten so was an. Ciao Wolfgang Horn
Ich hab auch schon über den UC-7112 von MOAX nachgedacht. Könnten man unter Linux programmieren und die Hardware ist schon endfertig.
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.