Beiträge von Pitl

    Hallo Rudi,


    deinem Festplattentyp entnehme ich daß das eine 3,5" Festplatte ist, du also eine 3-Slot SIO in deinem System hast. Berichtige mich wenn ich falsch liege.


    Wenn während des Systemstarts die Led 1 und 4 der SIO dauerhaft leuchten, bedeutet daß auf die Festplatte zugegriffen werden soll und das System damit nicht fertig wird.
    Das kann folgende Gründe haben:
    1.) Du hast keine SCSI Festplatte eingebaut. Das scheint nach deinen Angaben aber nicht so zu sein.
    2.) Der DDT (ist so eine Art BIOS) kommt mit der Größe deiner Festplatte nicht klar. Wieviel MB hat die Platte die du eingebau hast?
    Es kommt zu einem Timeout und du nicht weiter. Die mögliche Lösung wäre ein DDT Chip neuerer Rev. für dein Prozessorboard.


    Viele Grüße,


    Pitl

    Eine Feinkalibrierung bei Adept minimiert die Unterschiede die beim Anfahren der selben Position in unterschiedlichen Armkonfigurationen entstehen.
    Grundsätzlich sollte das bei allen Robotern und Robotertypen möglich sein. Bei Scararobotern ist es etwas einfacher, da die Anzahl der möglichen Armkonfigurationen nur Rechtsarmig und Linksarmig ist. Bei Sechsachsrobotern gibt es halt ein paar mögliche Armkonfigurationen mehr.


    Du siehst deine Frage ist nicht mit JA oder NEIN zu beantworten. Es gibt Firmen die damit sogar ihr Geld verdienen, durch verschiedenste Methoden, wie Laser- oder Stringkalibrierung usw., Roboter genauer zu machen.


    Viele Grüße,


    Pitl

    Hallo,


    es gibt zwei Möglichkeiten dein Problem zu handeln.


    Die eine hast du schon erwähnt: Lass deinen TCP-Server in einer anderen Task als der Robotertask laufen. Die Kommunikation zur Robotertask kannst du über Variablen, Strings, Softsignale machen.


    Wenn du deinen TCP-Server unbedingt in der Robotertask laufen lassen willst, musst du dafür sorgen, dass deine Robotertask immer läuft und auch im Fehlerfall nicht abbricht. Das heisst du musst ein Errorhandling aktivieren mit REACTE, dann in der REACTE Routine die Fehler abfangen und ggf. in einer Interuptroutine abarbeiten.


    Ich bevorzuge die erste Variante, denn deine Kommunikation hat nicht mit deinem Roboterprogramm zu tun. So kannst du auch ganz einfach einen Fehlerstatus mitteilen.



    Viele Grüße,


    pitl

    Hallo Blob,


    ich wusste gar nicht, dass Version 1 überhaupt noch irgendwo aktiv ist. Ich habe ich einem Manual zu dieser Version nachgeschaut und du hast Recht, da gab es nur Aquire Image und den Locator.


    Bitte schreibe mir mal eine mail an pit.lange@gmx.de und gib mir eine Telefonnummer unter der ich dich ab 06.01. erreichen kann.


    Viele Grüsse,


    pitl

    Hallo Blob,


    zu aller erst einmal ist AdeptSight und iSight das selbe, der einzigste Unterschied ist die Art der Kommunikation (RS2323 oder EtherNet).


    Welche Version iSight verwendets du denn?


    In Version 2, aktuelle Lieferversion, gehst du einfach in deiner Sequence in den Toolbereich. Das ist da auf der linken Seite wo du auch deinen Locator hast und machst einen Rechtsklick. Da findset du alle weiteren Tools die du verwenden kannst, wie das ImageHistogramm usw.


    Solltest du noch Version 1 haben, was mich schwer wundern würde, müsste ich mich mal schlau machen.


    Viele Grüsse,


    Pitl

    Hallo blob,


    ich fange mit deinem zweiten Problem an.
    Du kannst im Locator mehrere Modelle einlernen. Mit Modell_nr = VRESULT(seq, locator, 1, 1312) kannst du die Modellnummer abfragen. Das erste eingelernte Modell ist 0 das zweite eingelernte Modell ist 1 usw.
    Wenn die verschiedenen Modelle nie zusammen auftreten solltest du allerdings eine neue Sequenz in AdeptSight entwickeln, denn je mehr Modelle AdeptSight zum Abfragen hat um so länger dauert die Ausführung der Sequenz.


    Jetzt zu Problem eins.
    Einfachste Lösung ist Farbvision. Wenn du die nicht hast must du in AdeptSight ein ImageHistogramm Tool benutzen. Als Input wählst du den Locator und dann kannst du einen FRAME definieren. Im ImageHistoGramm Tool kannst du Werte definieren, ab welchem Grey Level die Pixel in dem FRAME gezählt werden sollen. Abfragen kannst du das ganze dann mit
    allePixel = VRESULT(seq, image_hist, instance, 1512)
    imgPixel = VRESULT(seq, image_hist, instance, 1513)
    Ich hoffe du bekommst stabile Werte, denn das ganze ist natürlich extrem von deiner Beleuchtung abhängig. Du solltest das auf alle Fälle erst einmal nur mit AdeptSight testen.


    Um das ganze zu vereinfachen, kannst du aber auch ein ResultInspection Tool in AdeptSight benutzen. Da kannst du alle deine Tools verUNDen und verODERn. Der Vorteil ist, dass du nicht jedes Tool seperat aus MicroV+ abfragst, sondern nur den Locator und das ResultInspection Tool.


    Viele Grüsse,


    pitl

    Moin blob,


    wie viele Modelle gibt es in deinem Locator Tool? Die Position die du mit dem VLOCATION ausliest ist die Position der Vision:Tooloffset. Mir scheint, dass da die Zuordnung nicht stimmt, sprich du hast mehrere Tooloffsets eingelernt und der falsche ist aktiv oder es ist gar keiner aktiv.



    Viele Grüsse,


    pitl

    Hallo blob,


    wie sieht der Rotationswert deines Teiles in deinem Locator aus? Einfach mal das Teil in verschiedenen Rotationen unter die Kamera legen und dann die Sequenz laufen lassen.


    Ich gehe davon aus, dass die Kamera statisch angebracht ist. Somit müsste für die Korrektur der Rotation das Teil verdreht gegriffen werden und dann in der richtigen Position abgelegt werden. Hast du dafür einen Greiferoffset geteacht?


    Viele Grüsse,


    pitl

    Hallo,


    zurücklesen kann man unter V+ die Speed als speed(select). Bei Select = 1 ist das die Monitorspeed (0....100%), bei Select = 2 die Programmspeed, die kann auch über 100% sein.


    V+ ist ein Adept Produkt, welches mal aus VAL hervorgegangen ist. So lange Stäubli Adept Controller benutzt hat liefen die hat unter V+.
    VAL3 ist ein Stäubli Produkt, nachdem beschlossen wurde keine Controller mehr von Adept zu beziehen.


    Viele Grüsse,


    pitl

    MV-Controller haben 12 Eingänge und 8 Ausgänge am CIP und dann noch 32 Eingänge und 32 Ausgänge auch am CIP.
    MV-Controller haben auch einen Devicenet - Anschluss und diverse RS232. Die digitalen Eingänge und Ausgänge sind erweiterbar, die Anzahl hängt aber von der Anzahl der freien Steckplätze im Controller ab. Pro Steckplatz sind es +32 Eingänge und +32 Ausgänge.

    Etwas mehr Info wäre nicht schlecht, z.B. welche Steuerung du hast.


    Ich denke die Pufferbatterien der Encoder werden leer sein. Deshalb verliert der Roboter seine Position. Die Batterien findest du im Schaltschrank soviel ich weiss.

    Also bei den Robotern handelt es sich um Cobra 600 und nicht um Cobra s600. Da ist ein gewaltiger technischer Unterschied. Die Cobra 600 werden seit Mitte 2003 nicht mehr gebaut, da weisst du ungefähr wie alt diese Roboter mindestens sind.


    Deine Aufgabge für die Roboter hört sich relativ simpel an, bis auf deine Aussage: Er legt zwar immer an der selben Stelle ab, die Aufnahmeposition ändert sich jedoch nach jedem Teil. Heisst das dass du ein Fliessband verfolgen willst?
    Wenn ja brauchst du die Lizenz dafür, falls diese nicht installiert ist. Die Anschlüsse für Fliessbadencoder sind im System grundsätzlich vorhanden.


    Was die Programmierung angeht, solltest du einen Kurs bei Adept besuchen, oder dir einen Freelancer von denen empfehlen lassen. Dann hast du Gewissheit, dass aus deinem Projekt was wird.

    Nur kurz zur Syntax: FCOPY Ziel = Quelle, FCOPY nfs>xc:\loc.lc = disk>d:\loc.lc kopiert die Datei loc.lc von disk>d:\ (Compactflash im Controller) zu nfs>xc:\ (Laufwerk auf dem PC.


    Ansonsten müssen die verschiedensten Einstellungen des NFS-Servers auf dem PC gemacht werden. Welche Einstellungen zu machen sind hängt von der Windowsversion des PC's ab.
    Ganz wichtig: Die UID und die GID auf PC und der Netzworkconfiguration in config_c auf dem Controller müssen gleich sein, sonst gibt es einen *Protection error*. Manchmal muss der Ordner des gemounteten PC-Laufwerks in den Windows-Eigenschaften auch auf Netzwerkfreigabe eingestellt sein.