ach .... ich hirny ..... ist schzon klar.....
[color=red]
Aufpassen: vermutlich hast Du den Punkt "holen" auch aus Versehen in Base 0, Tool 0 geteacht!
trotzdem Danke !!!!!!!
ach .... ich hirny ..... ist schzon klar.....
[color=red]
Aufpassen: vermutlich hast Du den Punkt "holen" auch aus Versehen in Base 0, Tool 0 geteacht!
trotzdem Danke !!!!!!!
Was heist umstellen?
wie stell ich denn um?
so?:
$TOOL = TOOL_DATA[1]
$BASE = BASE_DATA[1]
PTP HOME
PTP Holen
$BASE = BASE_DATA[1]
LIN_REL {FRAME:Y 300}
Hallo Leute.....
ich habe mein TOOL und BASE vermessen.
So: nun fahre ich
$TOOL = TOOL_DATA[1]
$BASE = BASE_DATA[1]
PTP HOME
PTP Holen
LIN_REL {FRAME:Y 300} // Sollte eigendlich im BASE Koordinaten system um 300mm in Y Richtung verfahren.....
// tut er aber nicht sondern im WeltK.
warum? was mache ich fasch? oder habe ich was vergessen?
danke schon mal....
Gruß
Das Problem hat sich erledigt. ist wieder mal fast peinlich.
Wir haben den Roboter gebraucht gekauft, es wahr mal ein 125kg Roboter der dan zu einem 200kg Roboter umgebaut wurde.
Uns wurde aber die falsche Steuerung bzw die Maschienendaten wurden nicht geändert.
Resultat: die Steuerung wollte schon richtig fahren, nur wegen der falschen Getriebeübersetzung hat der Roboter es falsch ausgeführt.
Maschienendaten geändert und siehe da es geht.......
Danke erstmal für die schnellen antworten.
also alle besagten Variablen stehen auf null, $Base=$NULLFRAME probiert.... neu Justiert....
alles hilft nicht.
Wenn ich in HomePosition (ist wie Justiert) stehe und un der Z achse verfahre verdreht sich bei mir die achse 5 um den winkel X .
Ich meine die Flanschplatte bleibt nicht im rechten Winkel zum Boden.
kann man $WORLD verstellen? nicht das da was falsch ist....????
Hallo (wieder mal) alle miteinander
zu meiner Frage....
wenn ich schreibe:
$BASE = $WORLD
$TOOL = $NULLFRAME
und nun den Robi in Hand mit den Weltkoordinaten in richtung "Z" verfahre....warum streckt sich dan die A5 Achse in negative richtung?
der Flansch sollte doch parallel zum Boden verfahren.... was mache ich falsch?
OK danke ich werde es mal probieren.
gibts da so was wie ne Standart lösung um das Thema Plausibilitäts Kontrolle zu lösen?
Danke erst mal für die schnellen Antworten.
ich war der meinung das das $ zeichen hin muß weil es Global ist aber ok. (*Wieder mehr weiß* :D)
nein es sind keine Daten in der CPU angekommen, aber das lag nicht an der übergabe an die CPU das funzt. in $Test Stand nichts drin.
aber das lag an dem $ und an der Aktualisierung.
habe das ganze jetzt in die SPS.sup reingetippt und das $ weggelassen. jetzt funzt es. :ylsuper:
aber wenn wir schon dabei sind ......
ich übergebe jetzt Koordinaten von der SPS an den Robi. kann ich das direct schreiben ?
"PositionIN" ist jetzt variable Type Frame (( X 0.0,Y 0.0,Z 100.0,A 0.0,B 0.0,C 0.0))
zb. so :
PTP...........
LIN_REL PositionIN <-- ???
Hallo alle zusammen...
ich habe in der $Config.dat eine Global Variable (TEST) vom type Frame angelegt, die dann via CP5614 Profibus Koordinaten an die SPS weiter geben soll.
Frage:
wenn ich in meiner *.src nun schreibe:
$TEST = $BASE
wobei in $BASE meine BaseKoordinaten stehen
sollte er doch die Daten die in $Base stehen in $TEST schreiben, oder schreibe ich da was falsch.
beide sind doch vom Type Frame und BASE ist doch eine fest vom Roboter vorgegebene Global Variable die ich mit :
$BASE = BASE_DATA[1] ; beschreibe. das geht auch.
Danke schon mal für eure hilfe.......
hallo....
also noch mal kurz zu meiner Dekleration:
in der IOSYS.ini :
INDW10=127,0,x1 also 1Doppelword (( $in[81] to $in[112] ))
OUTDW10=127,0x1 also das selbe wie oben
in der Config.dat :
Signal inTemp1_X $in[81] to $in[112]
Decl Real inTemp1_X = 0.0
Signal outTemp1_X $out[81] to $out[112]
Decl Real outTemp1_X = 0.0
das ganze sollte ja so stimmen!?!?!?!?!
durch das 2erKompliment wird es ja nur mit 65535 dargestellt, vom Prinzip ist es ja das selbe wie -1
also Punkt 1. : Das Deklarierte Format mit Doppelword wäre ja richtig das heist kein Überlauf oder so etwas.
Punkt 2. : Das ist richtig das wenn ich Werte die über "65535" liegen im Roboter Programm mit 65535 subtrahiere
den richtigen minus Wert raus bekomme, damit ist aber das ursprüngliche Problem doch nicht gelöst, sondern nur umgangen.
ja das ist richtig..... was ich nur nicht verstehe ist,
das ich an den Roboter das gleiche bit-muster schicke wie ich es in der CPU bekomme.
er aber nicht das selbe anzeigt wie ich es schreibe.
Hi Leutz.....
nachdem das geklappt hat ( http://www.roboterforum.de/rob…s_via_cp5614-t6129.0.html )
habe ich jetzt ein anderes Problem.
Ich beschreibe den Ausgang ( iosys.ini -> OUTDW10=127,0,x1 )
nach vertauschen des Hi/LO bytes bekomme ich auch in der CPU die Richtige Zahl angezeigt. ( sowohl [+] als auch [-] werte) :ylsuper:
schiebe ich jetzt in der CPU das E/Doppelword direkt wieder in das A/Doppelword , ohne irgend was zu drehen oder sonstiges. (1:1)
Ergebnis in der Variablen Anzeige:
Roboter OUT = 1 <==> Roboter IN 1
Roboter OUT = -1 <==> Roboter IN 65535
woran liegt das?
PS.: ach ja der Eingang in der iosys.ini ( INDW10=127,0,x1)
jetzt muß ich das nur noch rumdrehen bzw. von der SPS koordinaten an den Roboter schicken.
das sollte ich aber in der SPS.sub machen, da es zyklisch bzw mit einem Handshake machen sollte ( Koordinaten anfordern....übergabe......Übergabe bestätigen.... )
ein Lehrgang währe nicht schlecht!!!!
danke trotzdem allen erstmal an dieser stelle
Stethi:
wenn ich den wert jetzt in der Variablen anzeige ändere kommt er in der SPS richtig an.
aber dafür ist jetzt das sps_tool.src und *.dat rot makiert.
Fehler: "DEFDAT" sps_tool PUBLIC -> ist nicht erlaubt.
oh ich habe glaub ich den 2.teil von die Falsch verstanden. so wie du sagst geht es.
ist eigendlich die Variable outAX_X jetzt global? wenn ja warum das denn?
....
Name : outAX_X
Aktueller Wert : 0.0
hallo notime ,
ich schreibe den wert 35 zum testen.
wenn ich aber in den editor von "sps_tool.src" wechsel und dort zb 10 rein schreibe und speicher,
kommt der werd nicht mehr in der SPS an. Das er die 35 geschrieben hat war irgend wie nur eine einmalige sache.
hallo
in welcher denn?
in \R1\System\$config.dat
oder \Steu\$config.dat
Hallo Leutz,
ich habe ein problem und weiß nicht was ich falsch mache.
Problem: kontunuierliches senden einer Real Zahl zur SPS
-----------------------------------------------------------
iosys.ini :
[PBMASL]
indw10=127,0x1 ;$in[81-112]
indw14=127,0x1 ;$in[113-144]
outdw10=127,0x1 ;$out[81-112]
outdw14=127,0x1 ;$out[113-144]
----------------------------------------------------------
----------------------------------------------------------
sps.sub :
Declarations
INI
Loop
....
....
sps_tool()
ENDLOOP
------------------------------------------------------------------
------------------------------------------------------------------
sps_tool.dat :
DEFDAT sps_tool PUBLIC
DECL GLOBAL REAL AX_X = 0
DECL GLOBAL REAL AX_Y = 0
DECL GLOBAL REAL outAX_X = 0
DECL GLOBAL REAL outAX_Y = 0
ENDDAT
--------------------------------------------------------------------
-------------------------------------------------------------------
sps_tool.src :
SIGNAL outAX_X $out[81] to $out[112]
outAX_X = 35
-------------------------------------------------------------------
Die Wert Zuweisung sollte natürlich nicht im Roboter Ablauf gemachtwerden, daher die SPS.sub .
die 35 habe ich auch in der SPS jetzt stehen, aber wenn ich den Wert ändere passiert nichts.
was mache ich falsch bzw was habe ich übersehen....?
würde mich über eure hilfe freuen....