Hallo zusammen ich hoffe ihr könnt mir weiterhelfen. Bin nun schon seit Tagen am rumprobieren was der Fehler sein könnte aber ich komm nicht darauf.
Ich muss im Zuge einer Probearbeit die Lage eines Würfels an den Kuka Roboter Übergeben und dann den Würfel automatisch aufnehmen lassen.
Als Equipment wurden mir die Kamera Schunk SRV 300 und ein Kuka Roboter zur Verfügung gestellt.
Die Kommunikation soll nun über die Serielle Schnittstelle mit CRead und CWrite erfolgen.
Habe dafür auch schon einiges hier im Forum nachgelesen bzw ausprobiert.
Wenn ich die Hex Werte direkt mit einem PC an die Kamera schicke macht diese ein Bild.
Schicke ich diese aber über den krc mit CWrite passiert gar nichts.
Ich kann aber die werte, die die KRC schickt mittels SerialPort Monitor auslesen.
Hier mein Programm:
ZitatAlles anzeigenDEF SRV_cread_cwrite_test( )
MW_T=#SYNC
MR_T=#ABS
TIMEOUT=10.0 ;Zeit nach dem CRead abgebrochen wird
OFFSET=24 ;Lese Offset (z.B. 5.Byte)
BILDA[1] = 'H05'
BILDA[2] = 'H12'
BILDA[3] = 'H01'
BILDA[4] = 'HFE'
BILDA[5] = 'H20'
BILDA[6] = 'HD9'
COPEN(:SER_3,HANDLE) ;COM3 Oeffnen
IF HANDLE==0 THEN ;Fehler falls kein COM3 angeschlossen
HALT
ENDIF
WAIT SEC 2.0
CWRITE(HANDLE,SW_T,MW_T,"%1r",BILDA[]) ; Schicke Array für Bild auslöser
WAIT SEC 2.0
CREAD(HANDLE,SR_T,MR_T,TIMEOUT,OFFSET,"%1r%1r%1r%1r%1r%1r%1r%1r%1r%1r%1r%1r",F[1],F[2],F[3],F[4],F[5],F[6],F[7],F[8],F[9],F[10],F[11],F[12])
; lese Werte von Kamera ein Funktioniert aber bis jetzt noch nicht da kein Bild gemacht wird Kode allgemein ok??
CCLOSE(HANDLE,SC_T)
END
Serial.Ini und hw_inf.ini und custom.dat wurden entsprechend der Anleitung geändert.
Sobald der Cwrite Befehl ausgeführt wird sind diese hex werte am Serial Port Monitor zu lesen.
Die Kamera macht aber nichts. Werden die 6 hex zahlen des Arrays über den PC geschickt macht die Kamera ein Bild.
Zitat11 ; für copen
dann folgen die 6 Werte vom Array für die Bildaufnahme Bilda[]
und danach noch 13 für CClose
Was könnte der Fehler sein? Ist es möglich, dass die 11 und 13 stören aber dafür habe ich ja die Wait sec 2.0 Anweisung.
Ich hoffe ihr könnt mir helfen. Vielen Dank im Voraus.
Zitat