- LiFePO4 Speicher Test         
Seite 1 von 3 123 LetzteLetzte
Ergebnis 1 bis 10 von 21

Thema: CAN Pegel automatisch messen (mit PC)

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    02.08.2005
    Beiträge
    78

    CAN Pegel automatisch messen (mit PC)

    Anzeige

    Praxistest und DIY Projekte
    Hallo,

    folgende Thematik beschaeftigt mich schon ein Weile, aber ich komme einfach nicht weiter:

    Ich moechte eine automatische CAN Spannungsmessung aufbauen.
    Die Eingangssignale sind CAN High und CAN Low.
    Anhand von der CAN Spezifikation sollen die Signal ausgewertet werden und darueber befunden werden, ob das gemessene Signal innerhalb der fuer CAN Busse zulaessigen Toleranz liegt.
    Das ganze mittels PC.

    Mein Problem ist, wie bekomm ich die CAN Signale in den PC?
    Habe schon das Internet durchstoebert aber nichts brauchbares gefunden.

    Vielleicht gibt es hier ja den einen oder anderen schlauen Kopf der sich mit dem Thema auskennt?!

    Danke!

  2. #2
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    02.11.2005
    Alter
    49
    Beiträge
    1.146
    Wenn Du nur die Pegel und nicht den Inhalt der Signale auswerten möchtest, kannst Du doch einfach einen µC mit AD-Wandler an den CAN hängen, damit in einem Zeitfenster jeweils den Maximal- und den Minimalwert der Spannung ermitteln und das ganze dann zur Auswertung per RS232 oder USB an den PC weiterleiten.

    Du kannst natürlich auch, wie bei einem Digitalscope, das ganze Signal erfassen und komplett an den PC weiterleiten - das wird aber (je nach Bitrate des CANs) um einiges aufwendiger.

    Gruß,
    askazo

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    02.08.2005
    Beiträge
    78
    ja da hast du recht!

    kannst du einen AD Wandler oder mC empfehlen?
    gibt es eine Anleitung wie ich dann auf die Daten per USB oder RS232 zugreifen kann?

    USB wuerde ich vorziehen da mein Laptop keine RS232 Schnittstelle hat.

    Gibt es zu diesem Thema Links oder aehnlich?
    Habe ueber die Suchfunktion leider nichts passendes gefunden.

    das ganze soll unter XP und Win2000 funktionieren.

  4. #4
    Benutzer Stammmitglied
    Registriert seit
    02.08.2005
    Beiträge
    78
    muss ich eigentlich einen mikrokontroller verwenden oder reicht ein einfacher A/D Wandler aus?
    Bei einem Mikrokontroller muss ich ja noch ein Programm draufspielen, kann ich mir diese Arbeit ersparen?
    Ich frage deshalb da ich mich in der Materie nicht sehr gut auskenne und mich in alles einarbeiten muss und somit versuche den Aufwand so gering wie moeglich zu halten.

    Wie seht ihr das, kann ich einfach das Signal digitalisieren und dann an eine PC Schnittstelle senden und per Software auf dem PC einlesen und verarbeiten?

    Was fuer einen Wandler, Programmiersprache und Schnittstelle koennt ihr mir empfehlen? Wie schon gesagt so einfach wie moeglich.

    DANKE!

  5. #5
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    02.11.2005
    Alter
    49
    Beiträge
    1.146
    Das kommt ganz auf Deine Kenntnisse an.
    Es gibt auch fertige Messwerterfassungskarten (vermutlich auch für PCMCIA oder USB) die Du dann direkt per PC programmierst und auswertest. Da müsstest Du Dich mal ein bißchen im Netz umschauen.

    Einfach einen AD-Wandler an den PC hängen wird nicht gehen. Höchstens über Parallelport, aber der ist ja nun ein wenig veraltet.
    Ansonsten brauchst Du immer ein Kommunikationsprotokoll, das halt am einfachsten über einen µC zu realisieren ist.
    Eine USB-Kommunikation ist auf beiden Seiten nicht ganz so einfach aufzubauen. Von daher würde ich Dir zu RS232 mit USB-zu-RS232-Konverter raten.

    Welchen Controller man nimmt ist Geschmachssache. Ich persönlich bin (wie wohl die meisten hier im Forum) AVR-Fan. Als Programmiersprache würde ich Dir C/C++ empfehlen, kommt aber natürlich auf Deine Kenntnisse an. Welche Sprachkenntnisse hast Du denn?

    Was Du auf jeden Fall benötigst, sind gute Programmierkenntnisse auf der PC-Seite.

    askazo

  6. #6
    Benutzer Stammmitglied
    Registriert seit
    02.08.2005
    Beiträge
    78
    Zitat Zitat von askazo
    Das kommt ganz auf Deine Kenntnisse an.
    Es gibt auch fertige Messwerterfassungskarten (vermutlich auch für PCMCIA oder USB) die Du dann direkt per PC programmierst und auswertest. Da müsstest Du Dich mal ein bißchen im Netz umschauen.

    Einfach einen AD-Wandler an den PC hängen wird nicht gehen. Höchstens über Parallelport, aber der ist ja nun ein wenig veraltet.
    Ansonsten brauchst Du immer ein Kommunikationsprotokoll, das halt am einfachsten über einen µC zu realisieren ist.
    Eine USB-Kommunikation ist auf beiden Seiten nicht ganz so einfach aufzubauen. Von daher würde ich Dir zu RS232 mit USB-zu-RS232-Konverter raten.

    Welchen Controller man nimmt ist Geschmachssache. Ich persönlich bin (wie wohl die meisten hier im Forum) AVR-Fan. Als Programmiersprache würde ich Dir C/C++ empfehlen, kommt aber natürlich auf Deine Kenntnisse an. Welche Sprachkenntnisse hast Du denn?

    Was Du auf jeden Fall benötigst, sind gute Programmierkenntnisse auf der PC-Seite.

    askazo

    tja, gute programmierkentnisse habe ich nicht.
    im gymnasium hatte ich mal Java und an der Hochschule C++.
    Wobei ich mit Schnittstellenprogrammierung noch nie was gemacht habe.
    woher bekomm ich denn anleitungen wie man mit schnittstellen porgrammiert bzw. wie man ueber schnittstellen daten einlesen und verarbeiten kann?
    ich habe hier noch einen anderes notebook, das laeuft mit win2000 und hat sogar eine RS232 schnittstelle - wenn das damit wirklich einfacher ist werde ich dann dieses notebook benutzten.

    ueber infomaterial wuerde ich mich freuen!

  7. #7
    Benutzer Stammmitglied
    Registriert seit
    02.08.2005
    Beiträge
    78
    Kann ich eigentlich mit der RS232 Schnittstelle mehrere Signale gleichzeitig verarbeiten?

  8. #8
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    02.11.2005
    Alter
    49
    Beiträge
    1.146
    Auf der PC-Seite kenne ich mich mit der Programmierung leider auch nicht aus. Da muss Dir hier jemand anderes weiterhelfen.

    Die RS232-Schnittstelle ist aber definitiv sehr leicht zu programmieren. Auf der Controller-Seite auf jeden Fall und soweit ich weiß auch auf der PC-Seite.

    Was meinst Du mit "mehrere Signale gleichzeitig verarbeiten"?

    Du solltest Dir für die Datenübertragen ein Protokoll überlegen. Das sieht in der Regel so aus:

    Byte 1: Art der Daten
    Byte 2: Anzahl der folgenden Datenbytes
    Byte 3 - Byte n: Datenbytes
    Byte n: Checksumme

    Über Byte 1 kannst Du dann steuern, von welchem Signal die Daten kommen.

    askazo

  9. #9
    Zitat Zitat von askazo
    Auf der PC-Seite kenne ich mich mit der Programmierung leider auch nicht aus. Da muss Dir hier jemand anderes weiterhelfen.

    Die RS232-Schnittstelle ist aber definitiv sehr leicht zu programmieren. Auf der Controller-Seite auf jeden Fall und soweit ich weiß auch auf der PC-Seite.

    Was meinst Du mit "mehrere Signale gleichzeitig verarbeiten"?

    Du solltest Dir für die Datenübertragen ein Protokoll überlegen. Das sieht in der Regel so aus:

    Byte 1: Art der Daten
    Byte 2: Anzahl der folgenden Datenbytes
    Byte 3 - Byte n: Datenbytes
    Byte n: Checksumme

    Über Byte 1 kannst Du dann steuern, von welchem Signal die Daten kommen.

    askazo

    Man muss nicht unbedindgt ein binäres Protokoll benutzen. Du kannst auch die Zahlen nacheinander leerzeichengetrennt als ASCII ausgeben (mit sprintf).

    Du kannst auch eine billige Datenerfassungskarte in USB reinstecken und entweder mit der mitgelieferten Bediensoftware die Daten anschauen oder selbst mit dem mitgeliefertem Treiber ein kleines PC-Programm schreiben.

    http://iusbdaq.eu/catalog/product_in...products_id=30

    Eugen

  10. #10
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    02.11.2005
    Alter
    49
    Beiträge
    1.146
    Zitat Zitat von eugengraf
    Man muss nicht unbedindgt ein binäres Protokoll benutzen. Du kannst auch die Zahlen nacheinander leerzeichengetrennt als ASCII ausgeben (mit sprintf).
    Naja, das halte ich aber für sehr uneffektiv. Und ein binäres Protokoll ist auch nicht komplizierter.

    askazo

Seite 1 von 3 123 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

fchao-Sinus-Wechselrichter AliExpress