Zum Inhalt springen

VB6: RLM an COM Schnittstelle ansprechen


Empfohlene Beiträge

Geschrieben

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???

Geschrieben

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?

Geschrieben

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.

Geschrieben

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

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

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...