Zum Inhalt springen

VB6: RLM an COM Schnittstelle ansprechen


Vampire

Empfohlene Beiträge

Also, dass ist jetzt was ziemlich spezielles, ich habe hier eine Ringlesemaschine (RLM) von DISAG stehen.

Die kann ich per Seriell oder USB an PC hängen.

Die ganzen Programme für die Auswertmaschinen sind entweder sauteuer, oder entsprechen nicht den anforderungen.

Ich habe mir bereits ein Tutorial für die COM angeguckt, aber ich komme damit nicht weiter.

Hier gibts die Informationen vom Hersteller (http://www.knestel.de/deutsch/protokol.htm).

Ich weiß nicht, wie ich die Daten da hin hin schicken muss.

Aber bei mir sendet die Maschine nichts wenn ich da was hinschicke.

Hat schon mal einer was mit diesem MS Comm Control gemacht???

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi Vampire,

auf der Seite, die du oben angegeben hast, gibt's auch eine Download-Seite

Dort wird beschrieben, wie Daten zu senden sin. Nämlich über ein sogenanntes BSSB - Protokoll für SAM 4000:

BSSB - Protokoll für SAM 4000

Parameter der Schnittstelle : 9600 Baud, 8 Datenbits, 1 Startbit,

1 Stopbit, no Parity

Mit der Adresse wird das PC-Protokoll ausgewählt.

Adresse 0xB1 : Auswertung mit Barcode

Adresse 0xB2 : Auswertung ohne Barcode

PC SAM 4000

-------------------------------------

1. ENQ ->

<- NAK wenn keine Ergebnisse

2. ENQ ->

<- STX wenn Ergebnisse vorhanden

Daten

ETB

Checksumme XOR ( von STX bis ETB )

$

ACK -> wenn Daten richtig empfangen

oder

NAK -> Datensatz wird wiederholt

Daten :

Barcode ( ASCII 8 Stellen : nur Ziffern '0' - '9' ) CR

Manueller Code ( ASCII 8 Stellen : nur Ziffern '0' - '9' ) CR

Scheibentyp ( ASCII 2 Stellen : 'LG', 'LP', 'KK' oder 'ZS' ) CR

Anzahl Scheiben ( ASCII 2 Stellen : XX ) CR

Teiler-Teilerfaktor ( ASCII 3 Stellen : X.X ) CR

Anzahl Einschüsse ( ASCII 2 Stellen : XX ) CR

Einschüsse : Ringwert ( ASCII 4 Stellen : XX.X ) CR

Teiler ( ASCII 6 Stellen : XXXX.X ) CR

X-Abstand ( ASCII 4 Stellen : ±XXXX ) CR

Y-Abstand ( ASCII 4 Stellen : ±XXXX ) CR

Fehlerhafte oder fehlende Werte werden als ? übertragen. Alle

Zahlenwerte werden mit Vornullen gefüllt. Nach jeder Zeile wird

ein Carriage Return ( CR ) übertragen. Die Teiler, X-Abstand und

Y-Abstand sind 1/100 mm vom Scheibenmittelpunkt.

STX = 0x02, ENQ = 0x05, ACK = 0x06, CR = 0x0D, NAK = 0x15

Du musst also zuerst ein einzelnen Zeichen (ENQ = 0x02) senden, um von der Hardware zu erfahren, ob sie zur Zeit Daten senden kann (Antwort = STX) oder nicht (Antwort =NAK). Konnten diese Daten erfolgreich gelesen werden, musst du abschliessen noch ein ACK senden.

Reicht das?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hab mich schlecht ausgedrückt, die Seite hatte ich auch gefunden, aber meine Versuche das mit VB zu senden waren nicht erfolgreich.

Da steht ja, zum anmelden muss man 0xB2 senden.

Das hab ich dann als HEX(&HB2) und als CHR(&HB2) versucht, aber nichts wollte klappen.

Und die ganzen beispiele für die COM-Schnittstelle in VB senden immer nur einfachen Text, kann ich nichts mit anfangen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi Vampire,

also wenn's nur das ist.

Kontrolliere folgende Eigenschaften von deinem MSComm-Objekt:

1.) CommPort=1

2.) InputLen=1

3.) InputMode=1 (commInputModeText)

4.) RThreshold=1

5.) Settings=9600,n,8,1

Dann muss noch die EreignisRoutine OnComm() ausprogrammiert sein (Doppelclick auf dein MSComm-Objekt.

Sende das Zeichen ENQ:

MSComm1.Output = Chr(&H5&)

Die Antwortdaten landen in:

MSComm1.Input

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...