Vielen Dank!
Hat geklappt!
Vielen Dank!
Hat geklappt!
Ich hab das Mal mit dem Systemjob gemacht. Dort kannst Du die aktuelle Position auslesen (GETS LP000 $PX001) über das Pulsen eines Ausgangs (Da musst Du aufpassen, dass der Pulsbefehl nur ein Mal ausgeführt wird. Wenn ein Puls gerade abläuft und Du wieder auf den Befehl kommst, bleibt der Systemjob stehen, bis der erste Puls zu Ende ist). Nach je z.Bsp. 0,5 Sek die Position auslesen und anhand der zurückgelegten Strecke die Geschw. berechnen.
Guten Abend zusammen,
ich komme aus der Yaskawa-Fraktion. Einer meiner Kunden ist bei der Bestellung neuer Maschinen auf Fanuc umgestiegen und möchte, dass ich auch dort die Wartungen mache. Soweit ja auch nichts anderes als bei den blauen, nur die Steuerung kenne ich noch gar nicht. Deswegen vorab ein paar Fragen:
Vielen Dank schon Mal!
Das ist wahrscheinlich das Statusbyte, oder irgenwelche System IO's, die sind im Standard-Ladderprogramm auf die ersten Bytes nach dem Statusbyte geschaltet. Dann gibt es ja noch die Problematik, dass die Hersteller die Bytes aus verschiedenen Richtungen zählen. Mit B&R habe ich noch nie was gemacht, aber Siemens zählt die Byte's in einem DINT 4321 und Yaskawa 1234 - die muss man dann immer drehen.
Jepp das ist wirklich kniffliger, als es auf den ersten Blick scheint. Im Moment kann ich leider nicht viel Zeit erübrigen. Evtl. später Mal.
Ja, da hast Du recht.
Mach ein Rechtwinkiges Dreieck mit der Hypotenuse vom Mittelpunkt Rolle links unten zu Mittelpunkt Rolle rechts oben ziehe die beiden Radien ab , dann hast Du den Durchmesser.
GETS B000 $B002 liest die System-Bytevariable Nr. 2 aus. Die steht auf 1, wenn beim letzten ausführen der SRCH-Funktion das VKE = 1 war. Über die Funktion kannst Du auch die aktuelle Position o.ä. auslesen. Die Liste die zu den Systemvariablen im Manual steht, ist nicht unbedingt vollständig. Manchmal findet man eben ein undokumentiertes Schätzchen. Hab ich aber seit XRC-Zeiten nicht ausprobiert. Könnte also sein, das da irgenwo was schlummert.
Wäre mir neu, wenn das bei Yaskawa geht. Leider sind die Systemwerte im Userbereich nicht so zugänglich wie bei andren Herstellern. Was Du Mal versuchen kannst, die $-Variablen nacheinander auszulesen. Evtl. ist da was bei, aber wahrscheinlich nicht.
interessant
Hast Du eine WHILE-Schleife? Dann versuch es Mal mit dem JUMP-Befehl, der wird etwas schneller abgearbeitet:
*LOOP
...
...
JUMP LOOP
Das SPS-Program im Maintenence-Mode zurücksetzten geht in Europa leider nicht, da Du dann irgendein Standard-Programm drin hast. Die in Europa werden aber mit eigenen SPS-Programmen ausgeliefert. Am besten Du schaust in den Lieferunterlagen nach, welches installiert war dann kannst Du eine Kopie bei Yaskawa bekommen, es sei denn es gibt noch eine Datensicherung.
Bin zwar etwas spät dran...
Du bekommst das auch ohne CMOS.BIN wieder ans laufen. Als erstes die Parameter und Systemdaten einspielen und zwischendurch booten. Danach die Userdaten einspielen, dann ist er wieder lebendig.
Das geht grundsätzlich nicht. Wenn Du die Nullposition der 1.Achse um 90 Grad drehst, dann würde es passen. Dann müssten allerdings die Hard- und Softwaregrenzen auch angepasst werden. Ist also keine gute Lösung. Am besten Du machst Dir ein UserFrame mit der richtigen Lage.
Das wäre wirklich nett
Wie klappt das denn zwischen PC und Roboter?
Ich hab noch nie mit dem Sensor gearbeitet, weil es günstigere Lösungen gibt. Meines Wissens ist der Sensor aber genau für so einen Fall wie bei Dir gedacht. Du kannst ja Mal die Messung mit dem Sensor machen und schauen was er ausspuckt. Ich weiss nur nicht, ob nach dem einrichten der Nullposition die Offsetwerte für den Sensor noch stimmen. Also dann am besten mit den Werten aus einer Datensicherung vergleichen.
Das sind ein paar Infos zu wenig, um den konkreten Fall einzuschätzen. Aber grundsätzlich zu dem Sensor: Im Werk wird die Nullposition und ein Offsetwert für den Sensor ermittelt. Wenn dann ein Getriebe getauscht wird, oder ein Zahnriemen überspringt, kann man mit dem Sensor die Position auf plus minus einen Puls wieder einmessen.