Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

USB-Interface ansteuern

Forumthread: USB-Interface ansteuern

USB-Interface ansteuern
22.02.2007 14:53:34
Karsten
Hallo zusammen,
ich habe eine aufwendige Messeinrichtung für die Messung von Temperaturen und die Ansteurung von Schrittmotoren entwickelt. Derzeit steuere ich ein Interface mit A/D-Wandler (Eingänge) mit einer Auflösung von 8 Bit an (Compulab von ModulBus). Die digitalen Ausgänge können ebenfalls angesteuert werden. Das ganze läuft unter vba über die serielle Schnittstelle. Echt gut geworden. Leider muss ich die Auflösung A/D erhöhen und in diesem Zusammenhang auf ein USB-Interface (ME-RedLab 1024LS) zurückgreifen.
Hat denn schon einmal jemand ein USB-Interface per VBA angsteuert und kann mir ein paar Code-Schnipsel zeigen? Ich hab keine Ahnung wie und ob das möglich ist.
Herzlichen Dank im voraus.
Karsten
Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
;
Anzeige

Infobox / Tutorial

USB-Interface mit Excel und VBA ansteuern


Schritt-für-Schritt-Anleitung

  1. VBA-Umgebung öffnen: Starte Excel und öffne die VBA-Entwicklungsumgebung, indem du ALT + F11 drückst.

  2. Neues Modul erstellen: Klicke im Projekt-Explorer mit der rechten Maustaste auf „VBAProject (DeineDatei.xlsx)“ und wähle „Einfügen“ > „Modul“.

  3. USB-Interface ansteuern: Füge den folgenden VBA-Code ein, um das USB-Interface anzusteuern. Stelle sicher, dass du die richtigen COM-Ports und Parameter für dein Gerät verwendest.

    Sub USBAnsteuerung()
       Dim SerialPort As Object
       Set SerialPort = CreateObject("MSComm.MSComm")
       SerialPort.CommPort = 1 ' Ändere dies auf die richtige COM-Nummer
       SerialPort.Settings = "9600,N,8,1"
       SerialPort.PortOpen = True
    
       ' Beispiel zur Steuerung eines Schrittmotors
       SerialPort.Output = "MotorOn" ' Befehl zum Einschalten des Motors
    
       SerialPort.PortOpen = False
    End Sub
  4. Code ausführen: Schließe das Modul und führe den Code aus, um sicherzustellen, dass das USB-Interface korrekt angesteuert wird.


Häufige Fehler und Lösungen

  • Fehler: COM-Port nicht gefunden
    Lösung: Überprüfe, ob der richtige COM-Port in den VBA-Einstellungen angegeben ist. Du kannst dies im Geräte-Manager unter "Anschlüsse (COM & LPT)" nachsehen.

  • Fehler: Verbindung konnte nicht hergestellt werden
    Lösung: Stelle sicher, dass das USB-Interface korrekt angeschlossen ist und die Treibersoftware installiert ist.


Alternative Methoden

Wenn die VBA-USB-Ansteuerung nicht funktioniert, kannst du auch andere Software verwenden, um mit USB-Schnittstellen zu kommunizieren:

  • Python mit PySerial: Eine beliebte Methode, um über USB zu kommunizieren. Du kannst ein Python-Skript erstellen, das die USB-Schnittstelle ansteuert und die Daten in Excel importiert.

  • Drittanbieter-Tools: Es gibt verschiedene Softwarelösungen, die eine einfache Ansteuerung von USB-Geräten ermöglichen, ohne dass du tief in die Programmierung einsteigen musst.


Praktische Beispiele

Ein Beispiel für die Ansteuerung eines Schrittmotors könnte folgendermaßen aussehen:

Sub MotorSteuerung()
    Dim SerialPort As Object
    Set SerialPort = CreateObject("MSComm.MSComm")
    SerialPort.CommPort = 2 ' Beispiel COM-Port
    SerialPort.Settings = "9600,N,8,1"
    SerialPort.PortOpen = True

    ' Schritt für Schritt Ansteuerung
    Dim i As Integer
    For i = 1 To 10
        SerialPort.Output = "Step" & i ' Sende Schritte an den Motor
        Application.Wait Now + TimeValue("00:00:01") ' 1 Sekunde warten
    Next i

    SerialPort.PortOpen = False
End Sub

In diesem Beispiel wird der Schrittmotor über eine einfache Schleife gesteuert, wobei jeder Schritt eine Sekunde dauert.


Tipps für Profis

  • Verwende Error Handling: Implementiere Fehlerbehandlungsroutinen in deinem VBA-Code, um unerwartete Fehler abzufangen und zu verwalten.

  • Debugging: Nutze die Debugging-Tools in der VBA-Umgebung, um Probleme schnell zu identifizieren und zu beheben.

  • Dokumentation: Halte eine Dokumentation deiner Befehle und der verwendeten Schrittmotor-Berechnungsformel bereit, um zukünftige Anpassungen zu erleichtern.


FAQ: Häufige Fragen

1. Kann ich mehrere USB-Geräte gleichzeitig ansteuern?
Ja, du kannst mehrere USB-Geräte ansteuern, indem du für jedes Gerät einen eigenen COM-Port in deinem VBA-Code verwendest.

2. Welche Excel-Version benötige ich?
Die oben genannten Methoden funktionieren in den meisten aktuellen Excel-Versionen (Excel 2010 und höher). Achte darauf, dass die VBA-Umgebung verfügbar ist.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige