Hi, ich habe mir vor kurzem eine Mechatronika M80 besorgt, soweit funktioniert auch alles recht gut sofern ich eine Platine bestücke. Da im Forum einige andere wohl auch eine Mechatronika haben frage ich mich wie macht ihr das mit den Panels? Eine Platine zu bestücken klappt ja soweit, aber wie überträgt man das auf einen kompletten Nutzen?
:
Gesperrt durch Moderator
- Programm für eine Lp erstellen, abspeichern - In Tab "Programm" gehen - linke Seite: mit der Maus in Block Origin gehen - rechte Maustaste: "Create Array", "Add" usw.... - Davon was passendes auswählen. So ist das jedenfalls bei der M70. OMG, die unbeholfene Jugend heutzutage.
Hi, ich hab leider nicht immer Zugriff auf die Maschine da die nicht bei mir steht - sondern bei meinem Bruder (das nächste mal in 1 1/2 bis 2 Wochen). Welche Paste verwendest Du da eigentlich? Von unserem Hersteller hab ich soweit erfahren das die KOKI S3X58-M406-3 verwenden. Ein Problem hab ich damit noch hin und wieder das die 0402er Bauteile nicht genau zentriert aufgelegt werden, Mechatronika meinte das wir da eine Toleranz konfigurieren müssen.. Naja bis ich das nächste mal dazu komme dauert es aber wie erwähnt wieder 1 1/2 - 2 Wochen. Danke für die Informationen soweit!
Das mit den Arrays hat funktioniert. Ich würde mich wirklich mal gerne mit Dir in Berlin treffen und über Mechatronika austauschen...
Ich freue mich, dass du das innerhalb der letzten zwei Jahre so verifizieren konntest. Frag einfach im offiziellen M70-Thread; Beitrag "Der Mechatronika-M70-Thread" das ist am einfachsten, da ich außer für den Doktor keinerlei Termine mache und meist ohnehin nur halbtags arbeite.
Ich hab Mechatronika einige Vorschläge geschickt, z.B das sie Multiselect in die Software einbauen sollen. Es wäre nicht schlecht wenn sich da eventuell mehrere Nutzer finden könnten die das auch verlangen.
Nächster Vorschlag wäre: Wenn eine Bestückung fehlschlägt soll dies nicht das Programm komplett stoppen, sondern nur das Bauteil als nicht gesetzt markieren damit man's zum Schluss bearbeiten kann. Man sieht das hier wie ein Stopp aussieht: https://youtu.be/0sjRE0etu14?t=1698 (bei dem Videos sind die Bauteile etwas verschoben das kommt wohl von der Bewegung der Maschine da die Bauteile nur lose aufliegen und nicht in eine Paste gedrückt wurden). Bei einer Platine mit mehreren tausenden Bauteilen nervt das wenn man permanent davor sitzen muss und irgendwelche Fehler korrigieren muss. Man bekommt schon langsam ein Gefühl wenn die Maschine läuft und man das regelmäßige Schleifen im Hintergrund hört schläft man ein und wenn sie stoppt wacht man auf. Ich hab da noch ein paar auf der Liste z.B die Fiducials/Passermarken als Referenz zu verwenden und nicht den Koordinaten Ursprung (was oft die Leiterplatten-Kante ist). Man kann natürlich die Bestückungsdaten so vorbereiten indem man den Ursprung auf die Passermarke setzt und die so exportiert - finde das aber auch etwas umständlich. Wenn man 2 Leiterplatten mit mehreren Arrays einspannt kann man die Array Funktionalität nur mit einer Leiterplatte durchführen. Multiselect genauer betrachtet: sagen wir fiktiv wenn der Array 10x10 ist und der Leiterplattenhersteller 5-10 Elemente fehlerhaft geätzt hat dann muss man jedes einzelne Element mit 2 Mausklicks ausschalten - 20 Klickereien und beim resetten das Gleiche Spiel. Wenn man Multiselect hätte oder einen allgemeinen Menüpunkt dann könnte man sich diese denkbefreite Klickerei sparen und die Klicks nahezu halbieren (und im Fall des resets auf 2 Clicks reduzieren). Ein weiterer Punkt Hotkey support, wäre ja noch besser als die Mausklickerei. Beim Bestückungsdaten-Import muss man die CSV Felder auch immer wieder neu zuordnen (oder man lädt diese von einer Datei ... das sollte meiner Meinung nach im Program intern schon abgespeichert werden. Wie man ohne die vorgeschlagenen Updates diese Maschine benutzerfreundlich bedienen soll ist mir ein Rätsel. Vielleicht auch da ich ursprünglich ein Software-Entwickler bin und das einfach viel besser gemacht hätte. Wie kann das sein das ich als Mechatronika Kunde der einzige bin dem dieses umständliche Handling nicht gefällt? Mechatronika hat soweit zumindest gesagt dass sie sich meine Vorschläge anschauen werden. Sie haben auch gesagt das sie bereit wären die Maschinencodes weiterzugeben damit man die Maschine in ein anderes Programm integrieren kann. Die Maschine ist wenigstens genau, die Bestückungsmaschine an sich ist in Ordnung Wie gesagt ich würde mich da gerne mal mit anderen Mechatronika Kunden zusammensetzen und über die Software beraten damit man das Ganze mal etwas benutzerfreundlicher gestalten kann.
Die Mechatronika sind eben Einstiegsgeräte für kleine Serien, ohne Anspruch an hohe Bestückleistungen. Daraus resultierend, muss du wohl die eine oder andere Kröte schlucken. Auch beim Feederkonzept sind die Machatronika ja etwas eigen. Wenn du professionellere Ansprüche hast, musst du dich nach einem anderen Gerät umschauen.
:
Bearbeitet durch User
> Wenn eine Bestückung fehlschlägt soll dies nicht das Programm komplett > stoppen, sondern nur das Bauteil als nicht gesetzt markieren damit man's > zum Schluss bearbeiten kann. Das würde ich als sinnvoll betrachten. > Ich hab da noch ein paar auf der Liste z.B die Fiducials/Passermarken > als Referenz zu verwenden und nicht den Koordinaten Ursprung (was oft > die Leiterplatten-Kante ist). Man kann natürlich die Bestückungsdaten so > vorbereiten indem man den Ursprung auf die Passermarke setzt und die so > exportiert - finde das aber auch etwas umständlich. Nicht verstanden. Nachdem du die Bestückungsliste importiert hast, will doch die Maschine, dass du die am weitesten auseinanderliegenden und in der Liste rot markierten Teile anfährst. Damit wird dann der Ursprung für die Bestückung neu berechnet. Jedenfalls bei meiner M70. Du kannst natürlich auch gerne die Passermarken als Bauteile importieren und sie vorher im Layout maximal weit anordnen (außerhalb der normalen Bestückungsfläche). > Wie man ohne die vorgeschlagenen Updates diese Maschine > benutzerfreundlich bedienen soll ist mir ein Rätsel. Ich komme mit dem Gerät klar. Offenbar, weil ich von irgendwelcher SW ohnehin keine Wunder erwarte und mich freue, wenn selbige mehr oder weniger stabil läuft. Du brauchst wie bei jeder Maschine eine gewisse Empathie, dann geht das schon. > Die Mechatronika sind eben Einstiegsgeräte für kleine Serien, ohne > Anspruch an hohe Bestückleistungen. Full ACK. Das ist die einzige Maschine, die man noch über die Treppe transportieren kann (naja, gerade so) und die ohne Totaldemontage durch die Eingangstür passt. Und die einzige Mschine, die ich mir vor vier Jahren leisten konnte. Und man darf natürlich nie vergessen, dass das erforderliche Maschinengewicht proportional und auch gerne überproportional zur Bestückungsleistung ist. Und ja, Bankfeeder sind nunmal keine Einzelfeeder. Diesen Nachteil kann man locker umgehen, indem man Umrüstungen tunlichst vermeidet. Das erfordert natürlich bei der Geräteentwicklung eine gewisse Disziplin, d.h. du solltest nur die Teile verwenden, die auch auf der Maschine sind. Viel störender für mich waren die fehlenden Schutzleiterverbindungen zwischen eigentlicher Maschine, Sockel sowie Monitor-/Tastaturausleger. Dadurch kam es wegen fehlender ESD-Ableitung zu unvorsehbaren Programmabstürzen mit Einfrieren der Kamerabilder. Es hat ziemlich lange gedauert, bis Mechatronika geahnt hat, woran es liegen könnte.
Hier sind meine ESD-Nachrüstungen zum Gerät. Am Monitorausleger ist selbstverständlich noch die Farbe unter dem Senkkopf der Befestigungsschraube zu entfernen.
Als störend empfand ich eher die fehlende DSub-Buchse an der Frontseite. Im Bild: die Nachrüstlösung. Der Anschluss erfolgt vom linken Stangenfeeder.
Na ich hab die MX80, wenn die Mechatronika Kunden alles so hinnehmen wie es ist wundert es nicht das die Software sich nicht verbessert. Alleine das Bauteil Accounting ist einfach nur sinnlos, ich hab denen vorgeschlagen zumindest eine Datenbankanbindung bereitzustellen damit man das auch mit externen Programmen überwachen kann. Das man die Bauteiltabellen nicht Excel/Openoffice-Like editieren kann sondern die Werte immer mit 5-6 Klicks erst ändern kann ist einfach nicht mehr zeitgemäß. Die Fiducials als Bauteile zu importieren ja das hab ich auch schon mal gemacht finde ich aber ziemlich unschön. Die Bauteil-Referenzen sind halt irgendwie sinnlos und nur zusätzliche Arbeit wenn Fiducials alleine eigentlich schon reichen würden. Die haben halt einen zusätzlichen Schritt eingeführt - die 2 manuellen Bauteilreferenzen werden mit dem Fiducial verbunden und daraus resultierend berechnet. Meiner Meinung nach könnte man sich die 2 manuellen Bauteilreferenzen sparen indem man indem man nur die Fiducials angibt (Lohnbestücker arbeiten doch auch mit Fiducials und nicht mit manuellen Referenzpunkten welche dann erst mit Fiducials verknüpft werden).
Beitrag #5203462 wurde von einem Moderator gelöscht.
> Alleine das Bauteil Accounting ist einfach nur sinnlos, Ich schalte das Mitzählen generell ab, weil meist mehr Teile auf der Rolle sind und das Programm bereits abwinkt, wenn noch 10 oder 20 Gratisstück auf der Rolle sind. Außerdem müsste man beim Herausnehmen der Rolle die Reststückzahl notieren und bei Wiedereinlegen eingeben. > ich hab denen vorgeschlagen zumindest eine Datenbankanbindung > bereitzustellen damit man das auch mit externen Programmen überwachen kann. Och nö, bloß nicht noch irgendwelche Datenbanken, die Maschine soll voll autonom laufen. Meine restliche Lebenszeit ist begrenzt und ich will sie nicht mit weiteren SW-Auswüchsen belasten > Das man die Bauteiltabellen nicht Excel/Openoffice-Like editieren kann > sondern die Werte immer mit 5-6 Klicks erst ändern kann ist einfach > nicht mehr zeitgemäß. Du bist zu sehr softwarefixiert. Ich bin froh über die vergleichsweise Schlichtheit der Maschine und ihrer Bedienung. Dein Problem: du brauchst eine ganz andere Maschine. Gibt es alles, mit Smartfeedern, die sämtliche Bauteildaten einschließlich Losnummer, DC, Stückzahl, Lebenslauf, Versicherungsdaten, elektronischer Gesundheitskarte etc. enthalten. Dann brauchst du noch eine externe Feederrüststation, die selbstverständlich eine DB- und Kanbananbindung hat. Kein Problem, wenn man will und das passende Geld hat. Nochmal: die Maschine ist wegen ihrer Bankfeeder für Lohnbestücker mit ständiger Umrüstung ungeeignet. Kleinserien mit konstantem Baugruppensortiment, das ist ihr Ding. Eine Softwareüberfrachtung wird ihren Einsatzbereich wahrscheinlich nicht wesentlich erweitern. Mechatronika ist übrigens gemeinsam mit Factronix regelmäßig auf der SMT und der Productronica präsent. Vllt findest du dort einen Gesprächspartner.
Ich glaube du hast da was falsch verstanden, kleine Serien und Prototypen will ich über die Maschine laufen lassen größere dann an Lohnbestücker abgeben. Dafür sollte die Maschine schon passen. Das Bauteilaccounting sollte ja optional sein und bleiben. Musst Du am Jahresende keine Inventur machen? Ich lass es auch abgeschalten da es so wie es ist zu umständlich ist und derzeit wird halt geschätzt. Wenn es die Funktionalität in der Maschine schon gibt dann soll sie einfach sinn machen. Natürlich bin ich software-fixiert da die Software das Interface ist und diese Änderungen für Mechatronika relativ einfach durchzuführen sind. Das ist so als ob man ein Auto ohne Lenkrad mit einer Zange steuern will obwohl man eigentlich auch ein Lenkrad benutzen kann das es überall günstig gibt. Ich denke wir sollten eher versuchen hier Vorschläge zu liefern damit Mechatronika das nachbessern kann. Die Software-Änderungen dauern keine Woche wenn der Entwickler sich da mal ran setzt und wir würden davon alle profitieren.
Meine wichtigsten Vorschläge sind zur Zeit einfach: 1. Bestückungsprobleme diverser Bauteile erst mal ignorieren und am Schluss der Bestückung handlen. 2. Multiselect damit man nicht tausend mal rumklicken muss (Hotkeys gibt's ja auch keine), ggf. hinzufügen von Hotkeys. 3. Werte in den Bestückungstabellen soll man direkt editieren können ohne (auch wieder tausend mal rumklicken zu müssen). etwas niedrigere Priorität: 4. das Verwenden von Fiducials wie es sich gehört ohne zusätzliche Bauteilreferenzen 5. internes abspeichern der Feldzuordnung von CSV Dateien (damit man nicht immer Referenzdateien laden muss). 6. Die Array Funktionalität sollte für Platinen an verschiedenen Standorten in der Platine möglich sein (und nicht nur für eine Platine). Wenn 2 Platinen nebeneinander Platz haben ist das einfach nur eine Limitierung die nicht sein muss. 7. Das abspeichern des Bildes warum ein Bauteil von der optischen Erkennung nicht erkannt wurde damit man das Problem verstehen kann (in meinem Fall 0.5mm QFNs werden von der Flying Kamera nicht ordentlich erkannt 20% Fehlerfall) eventuell ist das ja nur ein Problem von deren Software. Es wird empfohlen die fixe Kamera zu verwenden dann müsste die Maschine wieder deutlich weiter fahren. das wären erst mal einige Punkte... Ich bin halt noch nicht in Rente und würde lieber so wenig wie möglich vor der Maschine sitzen wenn sie arbeitet.
Korrektur Nr. 7 6. Die Array Funktionalität sollte für Platinen an verschiedenen Standorten in der Maschine möglich sein (und nicht nur für eine Platine). Wenn 2 Platinen nebeneinander Platz haben ist das einfach nur eine Limitierung die nicht sein muss.
> Musst Du am Jahresende keine Inventur machen? Bei einem Rollenpreis von 2,50 EUR für Widerstände mache ich mir inventurmäßig keine Gedanken. Die teuren Teile werden geschätzt, zumal das Material auf der Maschine bei mir der geringste Posten ist. > Die Software-Änderungen dauern keine Woche wenn der Entwickler sich da mal > ran setzt Du vergisst, dass Mechatronika die SW-Änderungen an allen bisher gelieferten Maschinentypen und Modifikationen testen müsste, sonst könnte der Ärger nachher möglicherweise größer sein als vorher. Aber das nur am Rande. Aber Vorschläge schaden selbstverständlich nicht, werden vielleicht aber erst bei Neuentwicklungen berücksichtigt. Du hast die Maschine nämlich so gekauft, wie sie war. Hast du irgendwelche Vereinbarungen oder Zusagen des Händlers oder Herstellers, dass du in Zukunft außer den Ersatzteilen auch eine aktualisierte Software beziehen kannst? Na gut, vielleicht ist alles ganz anders, als ich es mir vorstelle.
> 7. Das abspeichern des Bildes warum ein Bauteil von der optischen > Erkennung nicht erkannt wurde damit man das Problem verstehen kann Da stimme ich voll zu. > 3. Werte in den Bestückungstabellen soll man direkt editieren können > ohne (auch wieder tausend mal rumklicken zu müssen). Was meinst du damit? Statt 10 kOhm schnell mal 11 kOhm eintragen ohne über die Lib zu gehen?
Bürovorsteher schrieb: >> 7. Das abspeichern des Bildes warum ein Bauteil von der > optischen >> Erkennung nicht erkannt wurde damit man das Problem verstehen kann > > Da stimme ich voll zu. > >> 3. Werte in den Bestückungstabellen soll man direkt editieren können >> ohne (auch wieder tausend mal rumklicken zu müssen). > > Was meinst du damit? Statt 10 kOhm schnell mal 11 kOhm eintragen ohne > über die Lib zu gehen? Genau, wenn z.B ein Bauteil nicht eingelegt ist und man schnell mal ein anderes verwenden möchte, selbst in dem Menü Edit kann man das Bauteil nicht editieren sondern muss mit der Maus über die Bauteilliste springen. Zum Thema Multiselect: z.B STRG halten und die Bauteile in der Bestückungsliste zum Markieren anklicken, danach einfach rechte Maustaste und aus oder einschalten - mit 2 Mausklicks und nicht mit 2 Klicks pro einzelnem Bauteil. Es geht erst mal nur um konkrete Verbesserungsvorschläge. Damit sollte man nicht zu konservativ sein da sich sonst nie was verbessern würde. Und warum sollte man nicht an Verbesserungen interessiert sein? Weil's so billig war?
Da du im Moment noch die Hoffnung auf eine neue SW hast - hast du mal angefragt, ob das geht und wenn ja, was das kostet (selbst ohne Einarbeitung deiner Verbesserungsvorschläge)? > Genau, wenn z.B ein Bauteil nicht eingelegt ist und man schnell mal ein > anderes verwenden möchte, Oh, da kommst du genauso schnell mal zu undokumentierten Ausgabeständen...
Verbesserungsvorschläge: Ein Help-Menü würde helphen. Wenn ich z.B. an den Stangenfeedern was ändern will, würde ich gerne wissen, was Period, Power, Power limit, Ramp, Slope usw. im Detail bewirken und ich nicht nur auf Ausprobieren und Mutmaßungen angewiesen bin. An anderen Stellen würde es ebenso wertvoll sein. Außerdem stört mich, dass ich mit der oberen Kamera nicht in die hintere rechte oder linke Ecke bzw. die Entnahmepositionen der Stangenfeeder sehen kann. Na gut, das hat bauartbedingte Ursachen, dass man da mit der Pipette herumstochern muss. Eine Erklärung zu diesem Umstand wäre trotzdem hilreich. Die Anleitung zur Adresseinstellung der Feeder ist gewöhnungsbedürftig und obendrein noch falsch, jedenfalls bei mir. Bei der SW und besonders bei der Bedienanleitung ist zu sehen, dass der Verantwortliche froh war, endlich damit fertig zu sein. Deshalb hält sich meine Hoffnung auf gute Ergebnisse deines Engagements in engen Grenzen. Die Maschinen verkaufen sich eben sogar mit den unrunden Stellen wie geschnitten Brot.
Ich bin bereit nach Polen zu fliegen und das vor Ort abzuklären, ich habe Mechatronika auch gesagt das wir das halt jetzt öffentlich im Forum diskutieren was uns nicht passt an der Software. Schlussendlich ist es sehr gutes Marketing für Mechatronika unseren doch sehr simplen Wünschen nachzukommen und der Entwickler den die ja sowieso haben müssen wird da keine Woche dransitzen. Immerhin trauen die sich mit dem Produkt 2017 auch auf die Productronica also werden sie sehr wohl an Chancen interessiert sein müssen welche ihr Produkt am Markt verbessert - ansonsten finden diverse potentielle Käufer aus dem deutschsprachigen Raum diesen Beitrag und nehmen gleich mal Abstand von dem Ganzen.
An deinen Überlegungen könnte durchaus was dran sein. Ich werde mir deine SW-Überlegungen mal genauer zu Gemüte führen und mehr oder weniger oder vllt sogar sinnvoll zu ergänzen. Jedenfalls sind die Mechatronika-Leute an der Bewahrung ihres guten Namens sehr interessiert. Das zeigte sich für mich daran, dass sie ihrem niederländischen Händler, bei dem ich die Mschine gekauft habe, gekündigt haben, nachdem dieser irgendwelche Chinamaschinen ins Sortiment aufgenommen hatte.
> Ich hab da noch ein paar auf der Liste z.B die Fiducials/Passermarken > als Referenz zu verwenden Jetzt habe ich es verstanden und rekapituliere: Nachdem die (abspeicherbare!) CSV-BOM einigermaßen in der Maschine ist, muss die Abfrage nach den Koordinaten der Passermarken kommen. Danach erfolgt die Ausrichtung der Geschichte jetzt nicht mehr nach den diametralen Bauelementen, sondern nach den Passermarken. Das würde natürlich einen zweimaligen Fehler pro Richtung und Passer auf einen einmaligen reduzieren. Wenn jedoch keine Passer auf der Platte sind, muss das bisherige Verfahren optional weiterhin verfügbar sein. > 6. Die Array Funktionalität sollte für Platinen an verschiedenen > Standorten in der Maschine möglich sein (und nicht nur für eine > Platine). Ja, man sollte als Minimum auch zwei Einzelleiterplatten nebeneinander spannen können. Mit der existierenden Klemmvorrichtung wird das mit den Zuschitttoleranzen wahrscheinlich nur mit zwei Platten am rechten und (neu anzubringenden) linken Anschlag gehen, damit nichts klappert. bei dreien wird es schwierig werden, da dann bestimmt eine davon hin- und herschlackert. Was hast du eigentlich für ein OS auf dem Rechner? Bei mir ist noch XP drauf.
Ich bin in 1 1/2 Wochen wieder einen Tag in Berlin, wenn Du dann gegen Abend Zeit hättest könnten wir uns mal treffen (bin derzeit häufiger auswärts). Mechatronika will von mir ne genaue Liste was für Änderungen ich mir da vorstelle (hab denen zwar schon ne Liste geschickt aber ich denke die meinen damit Mockups wie die Menüführung abgeändert werden sollte - vor allem Multiselect).
> wenn Du dann gegen Abend Zeit hättest könnten wir uns mal treffen
Hallo Daniel, das ist schade, weil es von der Zeitplanung wohl eher
nicht aufgehen wird. Da ich gesundheitlich etwas angeschlagen bin, führe
ich ein Leben nach der Uhr. Klingt wie eine blöde Ausrede, erleichtert
mir aber das Handling ungemein. Daurch liegt meine Anwesenheit im Office
Mo-Fr zwischen 8.30 und 14.00 Uhr, Freitag auch mal bis 16 Uhr.
Da bleibt mir also wohl nur die Anfertigung einer schriftlichen
Wunschliste.
Es kann sein, dass Mechatronika inzwischen selbst Änderungen an der SW
vorgenommen hat. Ein Angebot von Factronix legt das jedenfalls nahe.
Hier die Email:
Sehr geehrter Herr Bürovorsteher,
im Rahmen unserer Herbstaktion, bieten wir die komplette M70
Jahreswartung zum günstigen Festpreis an.
Aktionszeitraum von September bis Oktober 2017
Die Wartung kostet inkl. kompletter Kalibrierung und Softwareupdate
499,- € plus 250,- € für Anfahrt und Übernachtung (zzgl. MwSt.).
Ausgenommen sind schadhafte Teile, Verbrauchsmaterialien,
Verschleißteile usw.
Das Angebot gilt bei Beauftragung bis 31.08.2017 und Durchführung der
Wartung bis 31.10.2017
Geben Sie uns bitte Bescheid, falls Sie an einer Komplettwartung
interessiert sind,
damit wir die benötigten Materialien vorrätig haben und wir einen
passenden Termin vereinbaren können.
Wenn Sie ein ausführliches Angebot wünschen, oder weitere Fragen haben,
stehen wir Ihnen jeder Zeit gern zur Verfügung .
Der Endesunterzeichner der Mail hat leider nicht auf meine wiederholte
Anfrage nach dem Inhalt des SW-Updates geantwortet.
Da die Antwort ausblieb, ist der ganze Vorgang dann bei mir im sonstigen
Rauschen untergegangen.
Ich werde nochmal nachstoßen.
Hi, ich bin am Donnerstag fuer einen Tag in Berlin (etwas spaeter waer fuer mich am Besten wenn Du Zeit haettest - wuerde mich dann hier registrieren um den Kontakt zu ermoeglichen). Bezueglich dem Update, ich hab die aktuelle Version der Windows Software, die Version von vor einer Woche hat noch nen Bug das diverse Filehandles beim Import nicht zugemacht wurden. Die meinen eventuell auch das sie den Steuerrechner bei Dir aktualisieren wuerden. Die Windows Software ist ja nur ein Binary welches die Steuerbefehle an den Rechner in der Maschine uebermittelt. Da ist ein Update nur ein Austausch der Exe Datei und die bekommt man auch direkt von Mechatronika. Ich bin soweit fast zufrieden mit der Maschine - halt abgesehen von der Software und den von mir erwaehnten Punkten. Ich schaue mal das ich ein Dokument (mit Bildchen wie ich mir einige Dinge vorstelle) bis Dienstag zusammengestellt bekomme.
Hallo Daniel, welchen zeitlichen Rahmen hast du im Auge? Ansonsten konnte ich bei Factronix in dieser vergangenen Woche noch keinen Kontakt bekommen, da alle Wissenden ausgeflogen waren - Productronica. Also - bis bald.
Ich denke ich mach nen Rueckzieher und schreibe meine eigene Software fuer die Maschine. Ich hab unter Linux die Kamera und Motoren bereits in Betrieb genommen, die Kommunikation mit der Maschine ist wirklich einfach. Das wichtigste die Genauigkeit der Maschine stimmt. Ich will ja auch nen Barcode Scanner fuer Bauteile unterstuetzen. Ich rechne damit das ich halt mal 2 Wochen investieren muss damit mir das wirklich passt. Ich hab schon mal soetwas fuer ne einfache CNC Maschine geschrieben mit ner 20 EUR Kamera: https://www.mikrocontroller.net/attachment/223150/pnplacer1.jpg
So wie's aussieht hab ich jetzt erst mal die Grundfunktionalitaet unter Linux zusammengehackt (Kamera, Feeder, Bestueckungskopf, XY Schienen). Mit der MX80 hab ich wohl nen Volltreffer gelandet. Im Grunde kann man da ja sogar eigenen Feeder unterstuetzen. Ich denke in einer Woche hab ich das Programm so wie ich es mir vorstelle :-)
Na dann gutes Gelingen - wenn ich 30 Jahre jünger wäre und gewisse Kenntnisse in der Softwareherstellung hätte... Gib mal Nachricht, wenn du damit erfolgreich bestücken kannst.
Kannst Du die Bauteilvorschuebe via Software regeln, oder musst Du dort auch die 2 Knoepfe bei den Feederboxen einstellen? Wenn das so weitergeht wie heute... dann kann ich in 1-2 Tagen bereits mit meiner eigenen Software bestuecken. Die Daten (Feeder & Nozzleeinstellungen) sind alle in einer MySQL Datenbank abgelegt.
> Kannst Du die Bauteilvorschuebe via Software regeln, oder musst Du dort > auch die 2 Knoepfe bei den Feederboxen einstellen? Die beiden Tasten sowohl an den Bank- als auch an den Stangenfeedern habe ich bisher nur für deren Adresszuweisung benutzt, alles andere ist zu nervig. Der Rest wird schnell und komfortabel über die SW eingestellt: Vorschub, Vorschubgeschwindigkeit, Tape collect delay, noch irgendwas... bei den Bankfeedern, Power, Ramp, Powerlimit, Period, Slope bei den Stangenfeedern. Wenn ich die Maschine eingeschaltet habe, kann ich dir den Rest sagen. Das für mich ungelöste Rätsel besteht darin, weshalb man dafür bei den Stangenfeedern ein Passwort braucht und bei den Bankfeedern nicht.
Kannst Du mir da mal screenshots oder ein Foto schicken wie du dort hinkommst? Ich hab die aktuelle SW von Mechatronika und finde dort nichts bezüglich Feeder Einstellungen - sprich ich muss alles über die 2 Knöpfe regeln. Ich will das Feedersetup auf Barcode Scanner umstellen. Durch das eigene Bestückungsprogramm kann ich z.B Eeproms / SPI Flashs hernehmen und die schon während der Bestückung mit Firmware bespielen. Bevor ich das Bauteil auf die zu bestückende Platine drücke setze kann ich's auf eine Adapterplatine drücken. Auch das ausmessen der Bauteilhöhe kann ich damit so gut wie automatisieren - ich brauche halt einen Sensor der mir die Höhe ausliest - das lässt sich dann auch einfach integrieren. Im Graphischen Userinterface hab ich derzeit folgendes integriert: * Anfahren eines beliebigen Punktes auf der Bestückungsoberfläche XY - Schlitten * Nozzle Changer * Kameras (OpenCV) * 1:1 Altium Bestückungsdatenimport * Stepping und Automode zur Bestückung (ist aber noch nicht mit der Hardware verbunden). Im Testprogramm (kein graphisches Userinterface) unterstütze ich: * Aufnahme und absetzen von Bauteilen * Rotieren von Bauteilen * Z Achse um das Bauteil abzusetzen * Vakuumeinstellungen Ich schätze bis Dezember hab ich das Programm auch funktionabel dann können wir uns im Dezember mal in Berlin zusammensetzen und das durchgehen. Das Programm kann auch von ner Linux Live CD gestartet werden.
ok er sagt anscheinend bei mir das er die Feeder nicht programmieren kann und schickt aber die Programmierbefehle an die Feeder - dann höre ich komische Motorgeräusche (das ist dann auch wieder der Vorteil der Mechatronika Software die ist so unfertig das sie's einem wirklich leicht machen die Dinge rauszufinden). Werde im Dezember mal einen davon zerlegen und mir das Protokoll genauer im Logik Analyzer anschauen, wäre eventuell auch nicht verkehrt alternative Feeder zu unterstützen.
> Kannst Du mir da mal screenshots oder ein Foto schicken wie du dort > hinkommst? Ich hab die aktuelle SW von Mechatronika und finde dort > nichts bezüglich Feeder Einstellungen - sprich ich muss alles über die 2 > Knöpfe regeln. Ich glaube dir kein einziges Wort. Hier ein paar Bildchen: 1. Kopfzeile - Setup - Setup Smartfeeders - Passwort eingeben, dann Bilder 2, 3, 4 2. Oder ohne Passwort über den Reiter Feeder, geht allerdings nur für Bankfeeder Ich weiß nicht recht, wie ich es dir sagen soll - aber wäre es vllt nicht erst mal besser, die bestehende SW gründlich zu erkunden, statt eine neu zu schreiben? Ich denke mir, dass Mechatronika sich bei der jetzigen SW auch irgendetwas gedacht und eine Menge Gehirnschmalz investiert hat.
Ich weiß nur, dass ich an der Maschine nichts ändern werde (außer möglicherweise aktuelle SW vom Hersteller aufspielen zu lassen). Das Gerät fällt bei mir unter die Kategorie Produktionsmittel, mit dem ich meine Brötchen verdienen muss. Ich fürchte, dass du bei deinen Übungen irgentetwas übersiehst, das für den Entwickler bzw. Hersteller der Maschine ganz offensichtlich ist.
Mechatronika hat die Hauptfunktionalität in den Rechner gesteckt der in der Bestückungsmaschine verbaut wurde. Der WinXP Rechner macht nicht besonders viel. Ich will schnell bestücken und nicht im Schneckentempo irgendwelche Dinge durchführen. - Das fängt ja schon an beim Import der Bauteile, ich will die Altium Daten direkt importieren. - Ich will die Bauteile einfach organisiert haben und in einer Datenbank halten (Barcode scanner) - Ich will z.B eine Teilbestückung durchführen können bei Prototypen (einfach sagen R19, R32 (alles dazwischen auslassen) etc. und das nicht jeweils mit 2 Klicks pro Bauteil sondern die Bauteile markieren und danach bestücken. - Wenn es ein Problem mit einem Bauteil bei der Bestückung gibt soll dieses Bauteil erst mal automatisch ignoriert werden und am Schluss bearbeitet werden (und nicht die Bestückung gestoppt werden). Bei mir dauert eine Leiterplatte 20 Minuten, ich könnte 2 einspannen das wären 40 Minuten wo ich die Maschine jetzt Babysitten muss. Ich will die Maschine soweit bringen das ich eine Bestückung problemlos durchführen kann und dies auch etwas Komfort bietet. Ich finde die Windows Software höchst ineffizient (vor allem das fehlende Multiselect). Mechatronika verweist mittlerweile auch darauf das ich deren neue Bestückungssoftware versuchen sollte dort sind aber auch viele meiner Punkte noch in Bearbeitung .. oder man hat mir geschrieben "can do" wobei ich das schneller selber machen kann. Ich könnte die Prototypen genau so komfortabel in Asien fertigen lassen und mir die Kosten für die Mechatronika sparen (für das Geld kann man dort einen Haufen Prototypen fertigen). Die Bestückungsanlage macht meiner Ansicht nur Sinn wenn sie wirklich Vorteile bringt. Und mal schnell etwas damit zu machen ist halt nicht drinnen da die Software so umständlich ist (was ich bei anderen Firmen in der Preisklasse und darunter auch nicht anders erwarten würde).
Hallo Ihr Beiden, Darf ich fragen, was ihr für die M80 gezahlt habt ? Gruß, Stefan
> Darf ich fragen, was ihr für die M80 gezahlt habt ?
Ich habe eine Maschine für arme Leute gekauft: eine M70.
Das Grundgerät ohne Feeder kostete vor vier Jahren 28 k€.
Der Gesamtpreis für die im Bild dargestellte Konfiguration belief sich
dann auf ca. 47 k€ (Neukauf).
Dazu dann noch ca. 1k€ für einen akzeptablen Kompressor.
Inzwischen dürften die Preise noch gestiegen sein.
Ich hab 40k für 4 Feederblöcke, 1x Vibrationsfeeder & M80 bezahlt & generalüberholt (war gebraucht und wurde generalüberholt - hat also jetzt komplett neue Motoren und Kameras verbaut). Der Preis ist absolut in Ordnung wenn man denkt die Maschine besteht aus: 1. einem Steuerungsrechner der in der Maschine verbaut ist welcher die Ansteuerung der Servos und allem übernimmt 2. einem Windows XP Rechner der quasi das Frontend darstellt und Steuerbefehle über RS232 an den Steuerungsrechner schickt und die optische Erkennung macht. Ich schneide zum Teil die RS232 Befehle mit diese sind sehr einfach. z.B <X,Y>g\r\n schiebt den ganzen Wagen herum, der Steuerungscomputer übernimmt die Positionierung, der WinXP Rechner hat hier also wirklich nicht sonderlich viel zu tun. <32>f\r\n schiebe von Feederblock Adresse 30 Slot 1 die Bauteile um eins weiter. etc. Die Verbindung läuft über 57.6kbaud seriell. Ich stelle mich aber schon darauf ein das ich mir die Maschine auch umbauen werde sobald meine Software fertig ist. Ich bin eigentlich Software-Entwickler mit fast 20 Jahren Erfahrung, und vorher hab ich schon so ne Bestückungssoftware für eine umgebaute CNC Maschine geschrieben. Diese Software nehme ich nun und tausche den G-Code durch den (reverse engineerten) Mechatronika Steuerungscode aus, daher konnte ich die Bestückungsmaschine auch schon zur Hälfte nach einem Tag unter Linux mit meiner eigenen Software bedienen.
Daniel schrieb: > <32>f\r\n schiebe von Feederblock Adresse 30 Slot 1 die Bauteile um eins Slot 2 natürlich
Vielen Dank für die Details. In Anbetracht der doch recht einfachen Maschine hatte ich auf Gebrauchtpreise < 20k (ohne Feeder) gehofft. Einen Bestückautomaten haben wir bereits laufen, aber ich hätte Interesse daran gehabt, einen Mechatronika als Station zum Programmieren von Controllern umzubauen.
Die Maschine ist sehr genau, von der Mechanik her und dem Controller gibt's dabei nichts zu bemängeln, ich glaube gerne dass diese bis 0201 funktioniert. Ich habe die Maschine ursprünglich gebraucht für 27K gekauft (M80) und sie für 13k aufrüsten lassen. Die M10V sollte man wohl für 15k oder billiger bekommen (wenn's die gebraucht gibt). Man kann soweit ich auch mitbekommen habe die Geschwindigkeit der Maschine durch einfache Parameter einstellen, muss man halt alles selber austesten. Hier wiedermal ein Link zu Volker Besmen's Anlage: https://www.vbesmens.de/de/ Der Mechatronika Bestückungskopf funktioniert mechanisch gesehen ähnlich, der Kopf hängt lose an einem Riemen welcher zusätzlich mit einer Feder nach unten gedrückt wird.
Wenn noch jemand mit einer Mechatronika M10V - M80X Programmierkenntnisse hat und an einer alternativen Bestückungssoftware interessiert ist bitte melden. Die Smartfeeder funktionieren jetzt bei mir, nach dem Motorenupgrade wurde dem Vibrationsfeeder anscheinend eine falsche Adresse zugeteilt. Werde im Laufe der nächsten Woche OpenCV angehen. Mechatronika macht den Bauteilvorschub direkt an den Feederslots fest und nicht an den Bauteilen an sich - das ist meiner Meinung nach von denen eindeutig falsch gelöst. Das neue Feedersetup ist sehr komfortabel geworden auch mit Barcode, sehe da noch immer ein paar Optimierungsmöglichkeiten bezüglich der Positionierung. Dadurch das der Vorschub jetzt am Bauteil festgemacht ist kann man die Bauteile auch recht einfach in andere Slots reinstecken und muss nur noch das Bauteil dem Slot zuweisen (ohne den Vorschub neu konfigurieren zu müssen). Im Grunde hab ich zuerst deren Feedersetup nachprogrammiert und anschließend erweitert. Die Daten werden wie vorher erwähnt alle in einer MySQL Datenbank gespeichert - man könnte das dann quasi auch im Browser visualisieren. Hier sehe ich auch noch die Möglichkeit die Bauteile in den Gurten nach dem Einspannen initial mittels OpenCV zu lokalisieren - dadurch könnte man sich das manuelle Setup nahezu komplett sparen. Ich will später dann auch FPGAs mit der Maschine programmieren bevor ich sie bestücke. Mit der alternativen Software kann man auch: 1. mit einem Adapter eigene Bestückungsköpfe verwenden (z.B mit einem Adapter Sauger von Juki die gerade mal 10-15$ kosten), werde mir das nächstes Jahr dann drehen lassen. https://www.aliexpress.com/item/1set-505-Nozzle-n-Nozzle-Connector-Fit-for-5mm-Hollow-Shaft-Stepper-Use-for-SMT-Machine/32650066520.html Die Juki Nozzles gefallen mir etwas besser - habe auch einen Satz hier, OpenCV (die optische Erkennung) wird das möglicherweise beachten müssen. 2. alternative Feeder ansteuern. Bezüglich Prototypen kann ich die Maschine jetzt auch so ansteuern das es mir einfach Bauteile in eine Dose werfen soll für eventuelle Handbestückung :-) Wunschtraum: Was ich gerne noch hätte wäre so ein Laser Scanner wie er bei Samsung Bestückungsmaschinen verbaut ist welcher die Bauteile nach dem aufheben scannt (dadurch fällt die Höhenangabe der Bauteile weg).
Hallo, ich habe eine M10V. Klingt interessant. Ich habe da auch so einige Sachen, die mich stören. Programmieren von Bauteilen fände ich klasse. Auch der Abwurf von nicht erkannten Bauteilen in verschiedene Behälter wäre schön. Bin mal gespannt, wie dass hier weiter geht. Michael
Hier mal ein billiger Screenshot mit der Mechatronika Kamera: https://snag.gy/0PuOlt.jpg Das war das ursprüngliche Programm das ich für Stepper hatte (auch dort lief im Hintergrund die Bilderkennung nur schwarz/weiß): https://www.mikrocontroller.net/attachment/223150/pnplacer1.jpg Werde bei Gelegenheit mal ein Video machen wie der Kopf über alle Bauteile drüberfährt. -Auch der Abwurf von nicht erkannten Bauteilen in verschiedene Behälter wäre schön. das ist ein guter Punkt! Ich denke OpenCV sollte dafür ganz gut geeignet sein da die Bauteile üblicherweise recht einfach sind (QFNs/DQFNs/BGA sollen ja sowieso über die stationäre Kamera verwendet werden). Mechatronika verwendet wohl Euresys zur Bilderkennung der Bauteile (es hieß eine bekannte Firma aus Belgien).
Bezüglich der Feeder. Ein paar Gedankenspiele: 1. die Maschine verwendet eine optische Erkennung 2. die Feederblöcke sind an einer fixen Stelle 3. die Feederblöcke werden über Broadcast angesteuert (jeder Block erhält immer alle Steuerungsbefehle) Warum kleben die keine Identifikation links auf die Feederblöcke und geben dem Operator die Möglichkeit einfach alle Blöcke automatisch abzufahren Die Pickup-Position könnte pro Feeder über die Kamera und optische Erkennung ermittelt werden (zumindest bei Standard Bauteilen). Was macht Mechatronika? Man kann die Bauteilposition auf den Feedern - in absoluten Koordinaten in der Maschine abspeichern. Das macht ja überhaupt keinen Sinn. Hängt man einen Feederblock mal wo anders ein stimmen die Koordinaten nicht mehr. Also mit der Software von Mechatronika kann man ja wirklich überhaupt nichts anfangen - das ist mehr Leid als alles andere, das ist doch richtig peinlich was die da mit deren Software treiben. So eine mistige Software konnte man vielleicht 2005 mal anbieten ... 2017 sieht die Welt für mich etwas anders aus. Ich hab denen das letzte mal schon gesagt das Training benötigt kein Mensch wenn deren Software etwas intelligenter wäre. Das sich die anderen Kunden da nicht aufregen wundert mich wirklich, anscheinend bedienen die Maschinen wirklich keine Software-Entwickler die wissen was möglich ist. Bauteilsetup: https://snag.gy/z7DLVo.jpg Die Teile lassen sich direkt in der Tabelle mit Tastatur-Hotkeys bearbeiten. Werde noch nen Android Client zum Scannen der Bauteile schreiben damit man die Bauteile mittels Android Handy/Tablet scannen und in die Feederslots stecken kann. Als Labeldrucker eignet sich der billige P-Touch Drucker von HP https://www.amazon.de/Brother-P-touch-Etikettendrucker-schwarz-silber/dp/B001FQL2HI/ref=sr_1_1?ie=UTF8&qid=1512115789&sr=8-1&keywords=ql-570 Der einzige Wert der Maschine liegt für mich darin das ich sie selber ansteuern kann...
> Also mit der Software von Mechatronika kann man ja wirklich überhaupt > nichts anfangen - das ist mehr Leid als alles andere, das ist doch > richtig peinlich was die da mit deren Software treiben. So eine mistige > Software konnte man vielleicht 2005 mal anbieten ... 2017 sieht die Welt > für mich etwas anders aus. Es ist dein Thread, ich mache mich hier an dieser Stelle mal vom Acker.
Das ist das was ich mit Multiselect meine. Anfahren der Positionen funktioniert soweit, fehlt noch die Array Funktionalität und Positionskorrektur welche ich über die Fiducials ermitteln werde. Das Feedersetup werde ich Tablet-Kompatibel gestalten, einfach Slot+Bauteil(mit Barcode) welches dann via Netzwerk mit der Bestückungssoftware kommuniziert. Das Layout werde ich zum Schluss noch anpassen (zuerst mal die Funktionalität fertigstellen). Die Passermarken werden einfach als Footprint "Fiducial" importiert und landen automatisch an erster Stelle in der Liste. Damit hab ich schon mal 2 Punkte abgearbeitet welche Mechatronika nicht kann und die mir wichtig sind: 1. Multiselect (um nur die ausgewählten Bauteile zu bestücken). 2. Altium Dateien direkt importieren. Fehlt noch der Knopf zum einfachen Umschalten zwischen Top und Bottom (programmtechnisch ist alles soweit vorbereitet).
* Mehrere Paneele/Nutzen werden jetzt auch auf dem Bestückungstisch unterstützt Es gibt nicht nur mehr die Unterteilung wie bei Mechatronika in einzelne PCBs in einem Nutzen sondern mehrere Nutzen mit mehreren PCBs. Ziel der Übung ist das wir z.B 4 Nutzen reinlegen können und diese einfach konfigurieren können. Aber vielleicht baue ich später noch nen Leiterplattenzubringer rein. Wird ein Fiducial im Nutzen nicht erkannt kann der jeweilige PCB einfach beim Bestücken ausgelassen werden. Die Konfiguration läuft über Fiducials, jedes Bauteil der einzelnen PCBs im Panel wird über die jeweiligen Fiducials angesteuert. Setup für ein Paneel: 1. die Fiducials eines einzelnen PCBs (im Paneel) mit der BOM verknüpfen (Passermarke in der BOM markieren, diese mit der Kamera anfahren und set fiducial klicken) 2. festlegen wie viele Reihen und Spalten das Panel hat 3. wieder ein Fiducial (oder Bauteil) in der BOM auswählen, dieses dann im letzten PCB auf dem Paneel anfahren und Create Array klicken. Es gibt den Button Add Panel, damit kann man weitere Nutzen/Paneele hinzufügen. Das ist auch wieder etwas das mit der Mechatronika Software so gut wie nicht machbar ist (oder nur extrem umständlich). Sehr heftig das Mechatronika es in 10 Jahren nicht geschafft hat einen brauchbaren Entwickler mal 2 Wochen hinzusetzen und die Bestückungssoftware anwendungsfreundlich zu gestalten, statt dessen werden die naiven Kunden dazu genötigt eine Schulung zu machen um diese wirren Bestückungsgedankengänge nachzuvollziehen.
Optische Erkennung der trainierten Fiducials/Passermarken klappt jetzt auch (benötigt ca 50% CPU auf einem alten Dualcore Intel für eine live Auswertung 720x576 da die optische Erkennung auf der Leiterplatte ja sowieso nicht so oft gemacht wird absolut in Ordnung), morgen Abend kommt noch die Positionskorrektur der Leiterplatte hinzu, übermorgen versuch ich dann mal die Bauteilerkennung. Möglich ist damit auch schon mal eine Sichtprüfung ob alle Bauteile ordentlich platziert wurden (oder auch ob sie nach dem Lötvorgang alle sind wo sie sein sollten). Mit etwas Glück hab ich die Maschine dann nächste Woche endlich mal komfortabel in Betrieb.
Positionskorrektur der Leiterplatte ist nun auch implementiert, habe Optical Recognition nochmal überarbeitet - die Fiducial Erkennung funktionieren jetzt sehr gut. Gibt auch eine Option "Snap to fiducial" was zum nächsten erkannten Fiducial springt. Habe gesehen das OpenPNP die Fiducial Erkennung pro PCB in einem Nutzen einstellbar hat - habe das jetzt erst mal auch so gemacht. Optische Erkennung der Bauteile kann ich wohl erst ab Mittwoch/Donnerstag angehen. Was danach kommt: * Android App um Bauteilrollen zu scannen und um die Feeder zu konfigurieren (das wird dann über W-Lan mit der Bestückungssoftware arbeiten).
Android app kann ich dir schicken, RFO Basic, einfach barcode scanner, mit Siemens Norm. Setup is für Openpnp (über TCP/IP Sockets), sollte nicht schwer sein dies umzuändern. Ist aber sehr einfach gemacht. Fiducial sieht nicht nach hough circle erkennung aus. Irre ich mich ? OpenPnP hat zwar Panels, dies funktioniert aber nicht, bzw nur einseitige Top Bestückung. Ansonsten muss man für Top und Bot zwei unterschiedliche Job anlegen. Mittels Scripts klappt dies problemlos.
Habe am Anfang noch HoughCircles + Pattern verwendet, bin dann aber auf SimpleBlob + trainierten Pattern (matchTemplate) umgestiegen. Das Bild ist etwas gestaucht da mir in der Vorschau zur Zeit die Relation ziemlich egal ist (man kann auch im Vorschaubild Positionen anklicken und der Schlitten fährt dann dort hin) Mechatronika verwendet bezüglich der optischen Erkennung ziemlich alte Technologie - Interlaced Analog Kameras mit einer Conexant Card aus 2003, ne TV Karte mit dem Brooktree (Bttv) Chip hatte ich schon um 2000 (ziemlich schwachsinnig meiner Ansicht nach). Je nachdem wie weit ich mit dem Ganzen komme werde ich die dann eventuell rausnehmen und Vollbildkameras reinhängen. Bezüglich des Android Apps melde ich mich wenn ich soweit bin - danke. Werde morgen erst mal die Feederdatenbank füllen damit ich mich dann mit der optischen Erkennung für die Bauteile spielen kann. Hat eventuell jemand Ahnung von 3D Laser Scanner für SMD Bauteile? das würde mich interessieren damit man die Höhe nicht manuell festlegen muss (hab damit noch nie etwas zu tun gehabt).
Du meinst Laserpointer , ja ist ziemlich problemlos. Ohne hat man die Möglichkeit mit dem Vacuumsensor die Höhe von Platinen und Bauteilen zu erkunden, und dann wäre noch die Stereoscope Camera, wobei die entsprechend kalibriert werden muss, sprich die Kalibrierung is aufwendiger. Also z.B. mit Kamera 2cm links und 2cm rechts ein Bild machen und dann daraus die Höhe des Bauteiles berechnen, als wäre es mit einer Stereokamera mit 4cm Axenddifferenz aufgenommen worden. Laserpointer geht einfach, laserpointer mit z.B. 20 Grad differenz zur Kameraachse ungefähr mittig auf Kamerabild zentrieren. Am besten mit Diffraktionsraster (so figuren, bekommt man oft als Aufsatz zu Laserpointer + Blende) und dann dies Kalibrieren, damit man den genauen Winkel des Laserstrahls rausbekommt. Der Rest ist Trigonometrie. Ohne diese Figuren ist der Laserstrahl zu groß, da ist es dann eventuell besser einen Linienlaser zu nehmen, und die Kante in der Mitte des Bauteiles zu setzen. Trotzdem muss man es auf einer vorher definierten Fläche aufsetzen, wo die Höhe bekannt ist. Da kann man es aber auch auf einen toolsensor setzen. Klar, bei einer kommerziellen PnP hat man nicht den Luxus des G38 Gcode welcher die Höhe dann ausspuckt. Dies alles erspart dir aber nicht die Tests mit der Briefwage, denn man braucht ja einen definierten Aufpressdruck, welcher dann je Bauteilklasse unterschiedlich ist, zumindest wenn man schnell bestücken will, bei langsamer Bestückung braucht es dies nicht.
Whow so hab ich noch überhaupt nicht darüber nachgedacht das ist ja wirklich nicht all zu schwer. Werde morgen mal anfangen die optische Erkennung für die Bauteile einzubauen. Das Zusammenspiel zwischen optischer Erkennung und der Positionskorrektur funktioniert sehr gut. Über die Fiducial wird der Nullpunkt errechnet und davon ausgehend dann der Rest justiert. Meine Leiterplatte ist z.b laut optischer Erkennung über die Fiducials 0.2 Grad schief auf dem Bestückungstisch (die Halterungen kann man selber montieren und die sind nicht streng für 90° ausgelegt), ohne die Erkennung und Positionskorrektur liegen Bauteile welche 5cm vom Ursprung entfernt sind bereits 1-2mm daneben. Ich muss nur 1 Fiducial angeben und der Rest (die anderen Fiducial) werden über die Toleranz und optische Erkennung automatisch ermittelt. Die Positionskorrektur wird pro Nutzen abgespeichert, ich könnte bei mir ja wie vorher erwähnt 4 Nutzen (etwas größere Eurokarte) einspannen.
Der Nullpunkt der centroid Dateien kann irgendwo sein. Nach dem importieren und konfigurieren der Fiducials usw rechne ich mittels Skript den Nullpunkt der Platine auf Board-0 Position der pnp um. Dann genügt Platine einlegen und Start drucken und die Daten sind dann immer relativ zur Ecke links unten.
Habe hier ein interessantes Video gefunden: https://youtu.be/5oZ41mYq-W0?t=106 Ich habe auch noch paar alte Leiterplatten im Lager die sich scheinbar nach einem Jahr gewölbt haben (perfekt zum Testen). Das sind anscheinend alles Dinge die man bei der Herstellung so eines Automaten beachten sollte. Mechatronika hat leider so gut wie überhaupt nichts bedacht bei der Windows Software, das nachzurüsten sollte mit nem Laser (wie vorher beschrieben) dann eigentlich auch nicht so schwierig sein.
Dies glaube ich siehst du etwas falsch. Eine PNP welche unter 10kcph ist was anderes als eine in der 100kcph Liga. Wie lange ist der Federweg deiner Nozzle. 3mm 5mm 8mm ? Bei einem Chipshoother ist dieser genau null, und deshalb haben diese auch Waagen im Bestuckungskopf sowie Laserdistanzsensoren zur Leiterplatte. Bei einer langsamen PNP gleicht dies die Feder im Nozzle aus, zumindest was die Wölbung nach oben betrifft, für die Wölbung nach unten braucht es die Pins von Unten welche die Leiterplatte stützt sowie das Festklemmen von der Seite. Damit wird eine Wölbung nach unten in eine nach oben umgewandelt.
Was meinst du mit Feederweg der Nozzle? Nein es geht darum wenn man die Bestückung auf "schnell" einstellt (es gibt in der API 3 Geschwindigkeiten - die Geschwindigkeit wie schnell der Bestückkopf die Bauteile vertikal auf die LP aufbringt) dann könnte das absetzen der Bauteile andere Bauteile durch die Vibration von der LP werfen. Das ist in der Tat hin und wieder passiert - und für Nacharbeiten sorgt. Werde wohl noch 1 netto Arbeitswoche brauchen bis ich alle Features fertig habe, bin zur Zeit nur beruflich sehr eingespannt sodass ich für die Maschine wieder keine Zeit habe.
>Was meinst du mit Feederweg der Nozzle
Ich errinnere mich nicht wie es bei dieser PnP ist.
Generell hat eine Nozzle eine Feder (spring), bzw dessen Halter.
Damit wird sei es die Variation der Bauteilhöhe sowie die Wölbung der
Platine
nach oben kompensiert, abgesehen von einer falschen Konfiguration der
Höhe.
Schnellere PnP haben keine Feder mehr, da diese warscheinlich zu langsam
reagieren, bzw zuviel Zeit zum stabilisieren brauchen.
Vibration, sollte nicht passieren sofern die Platine unterstützt ist. Verwendest du denn keine magnetische "Pins" auf denen die Platine aufliegen kann ?
Bin erst vor kurzem wieder aus dem Ausland zurückgekommen. Habe die Feeder-Dateien reverse engineered und ein Web-User-Interface dafür geschrieben (inklusive brauchbarem Bauteil-Management System): https://snag.gy/rOpA7M.jpg Sobald ich im "Component" Feld etwas eingebe kommt ein Dropdown wo die Bauteile mittels regex gematched werden. https://snag.gy/CBXOQo.jpg Werde jetzt noch die Bauteil-Dateien reverse-Engineeren damit ich diese auch via Web konfigurieren kann. Wie's aussieht kann ich die Linux Version kompatibel machen zu den Windows Konfigurationsdateien. Danach werde ich die optische Erkennung auch unter Linux implementieren (das fehlt dort ja noch). Ich verwende die Maschine schon produktiv, werde mir aber wohl eine 2. Vorrichtung selber bauen um QFNs aus Trays zu setzen da ich in der Maschine zu wenig Platz für 3-4 Trays habe.
CPD Datei Format: - Bauteil-Listen in den Kategorien können extrahiert werden - Die Einstellungen in den ersten 2 Tabs der Bauteil-Gruppen sind mittlerweile soweit ebenfalls bekannt * Motion Speed * Pick Speed * Place Speed * Nozzle * Pick Delay * Place Delay * Overstroke * Polarity * Max drift * Max Skew Angle * Disposal put back / drop * Transport component raised high use optical centering Use VAC for checking part placement Das sind nur Konfigurationen die dann später während des Bestückungsvorganges aufgelöst werden - Die Referenz-Bilder für die optische Bauteil-Erkennung kann ich ebenfalls größtenteils extrahieren (der Teil muss noch feingetuned werden das sind die letzten 5-10% die derzeit noch fehlen - n paar Offset Bytes machen mir noch das Leben schwer) Werde die Werte dann ebenfalls in die Datenbank stecken und per Knopfdruck exportierbar machen. Diese Optionen werde ich dann später auch in die Linux Applikation einbauen (so viele sind's ja nicht).
Sagt mal hattet ihr noch nie Bedarf an einem Tray Feeder für die Mechatronika? Schon bei 2 Trays habe ich Probleme mit dem Platz in der Maschine. Mechatronika selber hat keine Tray Feeder.
Bauteilerkennung hab ich mittlerweile auch mit OpenCV integriert. Die Mechatronika Maschinen sind an so manchen Stellen wirklich gut durchdacht die Flying Cameras sind wirklich gut integriert. Die Kameras unter Linux anzusteuern ist kein Problem. Die primitive Windows XP Software steht ja in überhaupt keinem Verhältnis zu dem was man mit der Maschine eigentlich machen kann. Als nächstes werde ich die Funktionalität einbauen um Firmware direkt bei der Bestückung aufzuspielen. Dann fehlt mir nur noch n Tray Feeder und ich bin glücklich damit.
Hi Daniel, ich lese jetzt auch schon eine Weile mit. Sehr schönes Projekt und ich kann Deinen Überlegungen nur voll und ganz zustimmen. Ich habe auch schon lange mit dem Gedanken gespielt die Software einer M10V zu ersetzen. Bisher habe ich es aber immer verschoben, da es ja doch einiges an Aufwand bedeutet die ganzen Kleinigkeiten die für ein anständiges Bestücken notwendig sind einzubauen. Könntest Du Dir vorstellen den aktuellen Stand Deiner Software irgendwo mal hochzuladen (github oder so)? Das würde mir, und vielleicht auch einigen anderen stillen Mitlesern, echt weiterhelfen.
Ich werde die Dinge noch etwas weiter testen und mich dann mit Mechatronika kurzschließen. Mechatronika ist eine kleine Firma, Opensource würde uns Kunden insoweit schädigen das Ersatzteile eventuell nicht mehr verfügbar sein werden sobald man alternative Teile einsetzen kann, und ich kann aktuell alternative Feeder, alternative Nozzles, ja selbst nen alternativen Bestückungskopf dort verwenden. Die Bestückungssoftware an sich ist nicht so aufwendig, das aufwendige ist eher das Bauteil und Projektmanagement (Top&Bottom Leiterplatten) was ich mir da zusammengestellt habe (inkl. Gerber Viewer mit Suchfunktion für Designator und Values im Browser)
Da Mechatronika hier mitliest. Deren Bestückungssoftware kann keine leicht gebogenen Leiterplatten problemlos bestücken, man muss die Höhe der Leiterplatte in dem Fall selber angeben. Die Ablage auf dem Bestückungstisch für die Leiterplatten nimmt etwa 5mm von der Leiterplattenaussenseite. Hierfür müsste die Software wohl mehrere Referenzpunkte ausmessen (tut sie aber natürlich nicht). Bei Panels ca 150x130 @ 1mm ist eine leichte Biegung durchaus möglich. Beim Nacharbeiten der fehlenden Bauteile muss man das Bauteil einzeln anwählen und den Schrittmodus einschalten, beim Schrittmodus werden dann die Referenzpunkte immer erneut angefahren und man wird immer gefragt ob das so in Ordnung ist. Bei 5 fehlenden Bauteilen dürfte man dann (insgesamt) 10x die Referenzpunkte und 5x ob die optische Erkennung in Ordnung ist bestätigen (also mindestens 15 Klicks um 5 Bauteile zu setzen). Also Mechatronika nicht wundern wenn ich eure Software für Müll halte, es liegt an euch diese Situation zu verbessern in den Mails wurde mehrmals darauf hingewiesen, gemacht wurde üblicherweise überhaupt nichts und deshalb gibt es das Projekt hier (ich verwende die Maschine maximal ein halbes Jahr im Jahr da ich zu 50% im Ausland bin). Wäre die Software auch nur ein bißchen intelligent dann würde man auch die Designatoren direkt auf die Leiterplatte bzw. das Kamerabild zeichnen damit man sich das hin und herschauen spart welches Bauteil denn nicht gesetzt wurde.
Hi Daniel, toll, das Du so viel Engagement zeigst. Ich lese hier mit, da wir früher auch mal über eine Mechatronika nachdachten und mir die Maschine aufgrund des einfchen mechanischen Aufbaus durchaus sympathisch ist. Jörg fragte, ob Du planst, die Software auf GitHub bereitzustellen und ich werde aus Deiner Antwort nicht schlau. Planst Du, andere mit einzubinden ? Gruß, Stefan
Ich wage mal einen Blick in die Glaskugel: Aus den ersten Beiträgen zu schließen, war das mal der Gedanke. Aber jetzt ist einfach schon zu viel Arbeit in die Software geflossen, als das man das einfach so "verschenken" will. Das kann ich auch sehr gut verstehen, vor allem, wenn man selbständig ist und mit seinem Können und Wissen Geld verdienen muss. Ich nehme an, Daniel hatte Kontakt mit Mechatronika, aber die haben kein Interesse dafür etwas zu bezahlen, bzw. einfach so kein Interesse etwas zu verändern, denn die Maschinen laufen, so wie sie sind, wie geschnitten Brot. Ich fände es natürlich besser, wenn Daniel sich entschliessen könnte das Projekt zu veröffentlichen in irgendeiner Form. Denn es wird immer irgendwelche Feature Requests oder Sonderwünsche geben, und wenn man dann nicht von der Gunst von Mechatronika oder einem Entwickler bzw. Release Cycle abhängig ist, wäre das toll. Andernfalls kann ich Mechatronika nur empfehlen, etwas an der Software zu machen, bzw. machen zu lassen. Die Maschinen sind von der Mechanik Top, von der Software grottig. Ich denke es könnte viele Kunden den letzten Grund für einen Kauf geben, wenn die Software überzeugt. Die Billig-China Dinger werden auch immer mehr kommen und da muss man sich davon abheben. Ein richtig moderner Move von Mechatronika wäre die Entwicklung von Daniel zu bezahlen und dann Open Source zu stellen. Ich würde sofort eine weitere Maschine kaufen :-).
> Die Maschinen sind von der Mechanik Top, von der Software grottig.
Die Maschine ist exzellent. Außer der Software ist auch die
Bedienungsanleitung unter aller Sau. Eine Erläuerung der Parameter und
derer Wirkung wäre absolut notwendig. Hier möchte man nicht ständig auf
das Wohlwollen des Verkäufers angewiesen sein, der auch nicht alles
weiß.
Derjenige, der die teuere Einweisung für die Maschine wahrnahm, hat die
Hälfte des gesagten bereits vergessen oder gar nicht erst auf Details
geachtet oder hat die Firma bereits verlassen...
Bürovorsteher schrieb: >> Die Maschinen sind von der Mechanik Top, von der Software grottig. > > Die Maschine ist exzellent. Außer der Software ist auch die > Bedienungsanleitung unter aller Sau. Eine Erläuerung der Parameter und > derer Wirkung wäre absolut notwendig. Hier möchte man nicht ständig auf > das Wohlwollen des Verkäufers angewiesen sein, der auch nicht alles > weiß. > Derjenige, der die teuere Einweisung für die Maschine wahrnahm, hat die > Hälfte des gesagten bereits vergessen oder gar nicht erst auf Details > geachtet oder hat die Firma bereits verlassen... Und zu allem Überfluß kann man die Fragen die einen dann Beschäftigen sowieso erst nach einiger Zeit Arbeiten mit der Maschine stellen. Deshalb gibt es Üblicherweise zuerst eine Unterweisung und danach erst eine Schulung. Das Mitarbeiter gehen ist natürlich nicht Vorraussehbar, jedoch sollten sowieso mehr als nur eine Person "Frau/Mann" eine solche Unterweisung und Schulung bekommen. Krankheit und Urlaub will ja auch Überlebt werden. Und Mitschreiben sollte JEDER bei einer Schulung, es sind immer viel Infos bei solchen Weiterbildungen vorhanden.
> Und Mitschreiben sollte JEDER bei einer Schulung, es sind immer viel > Infos bei solchen Weiterbildungen vorhanden. Ich hätte dieses Geheimwissen aber gerne in Schriftform. PDF, Buch oder ganz neumodiscH als Onlinehilfe.
Bürovorsteher schrieb: >> Und Mitschreiben sollte JEDER bei einer Schulung, es sind immer viel >> Infos bei solchen Weiterbildungen vorhanden. > > Ich hätte dieses Geheimwissen aber gerne in Schriftform. PDF, Buch oder > ganz neumodiscH als Onlinehilfe. Eine Schulung für so eine Bestückungsanlage die noch nicht mal eine ausgetüftelte Software hat finde ich nicht akzeptabel. Im Jahr 2018 ist die beste Werbung für ein Produkt ein Manual auf Youtube. Wenn die Schulungen ein Geschäftsmodell sein sollen, dann sollte man schnellstens das Geschäftsmodell ändern, und ja ordentliche Dokumentation online stellen. Das Setup für die Platinen ist mit meiner Software ein Traum und nahezu vollautomatisch, da könnte sich Mechatronika schon einiges abschauen. SmallSMT hat auch einige Videos bezüglich Bauteil-Alignment online (die Maschinen kosten ein zehntel von den Mechatronika Geräten). Da kommt Mechatronika mit den maximal 360 Pixel Kameras bei weitem nicht hin (die Auflösung ist in etwa 720x576 Analog, es wird nur der Luma Anteil bei Mechatronika verwendet YUYV (Luma=Y), U/V wird verworfen). Und wenn man für das Setzen von 5 ausgewählten Bauteilen 30 Mausklicks benötigt, da fragt man sich halt schon was sich der Entwickler dabei gedacht hat? Multiselect gibt's ja auch nicht dafür. Die Maschine bestückt zuverlässig sofern sie über die Bilderkennungshürde drüberkommt (tut sie bei unseren Panels mit kleinen Bauteilen nie, und die Fehler sind so dass der Operator auch nicht sieht was los ist, die Logfiles geben einen Anhaltspunkt aber es wäre halt nicht schlecht wenn man auch das Bild sehen könnte warum es während einer Produktion fehlschlägt, einfach RETRY klicken lässt die Maschine dann wie gehabt weiterlaufen auch mit dem Problembauteil). Mechatronika sitzt hier auf dem hohen Ross und hört nicht auf Kundenprobleme - um diese gar zu beheben. Multiselect hat ja wohl auch noch keiner der Kunden benötigt, und 30 Mausklicks für 5 ausgewählte Bauteile finden die dann wohl auch in Ordnung. Die Antwort: wir haben tausende Kunden welche damit zufrieden sind nur Sie haben damit ein Problem hilft hier nicht weiter, Fakt ist das die Maschine dank der Windows Software für unsere Projekte unzuverlässig läuft.
Stefan . schrieb: > Jörg fragte, ob Du planst, die Software auf GitHub bereitzustellen und > ich werde aus Deiner Antwort nicht schlau. Planst Du, andere mit > einzubinden ? kann sein dass ich das noch freigebe, ich will als nächstes die Bilderkennung in einen synchronisierten Thread geben damit die Live-Vorschau nicht von OpenCV blockiert wird. Ich hab noch bis Ende Dezember etwas Zeit dafür dann bin ich wieder für 6 Monate weg. Die erste Version wird sowieso nur eine Konzeptversion, die zweite Version kann man dann auf Python abändern damit die Einstiegshürde für Entwickler niedriger ist. Die Software ist ja noch nicht fertig, und bei einigen Projekten fahren wir deshalb auch noch mit Windows. Bestücken geht soweit zwar schon (pick - run over camera - place) - die OpenCV Bauteilerkennung ist aber noch in den Anfangsstunden. Sitze halt auch nicht Vollzeit daran da wir ja auch andere Produkte herstellen.
> Die Maschine bestückt zuverlässig sofern sie über die > Bilderkennungshürde drüberkommt Wenn es schon keine Erklärung in der Ba gibt, sollte es mindestens einen Link zu Euresys geben, was mit den diesbezüglichen Einstellungen gemeint ist. Manches ist leider irgendwie auf dem Niveau der Jahrhundertwende stehen geblieben. Mechatronika sollte sich mal ein DSO oder MSO von z.B. Keysight ansehen. Da ist die gesamte Bedienanleitung einschließlich Schulungsmaterial (EDU)und Trainigssignalen mit drin. In 15 Sprachen. Und nein, ich will es nicht kostenlos haben. Ich bin bereit, für gute Ware auch gutes Geld zu bezahlen.
> Autor: Daniel (Gast) > Datum: 21.11.2017 00:19 > Ich denke ich mach nen Rueckzieher und schreibe >meine eigene Software > fuer die Maschine. > Ich rechne damit das ich halt mal 2 Wochen investieren muss damit mir > das wirklich passt. ---- > Autor: Daniel (Gast) > Datum: 26.10.2018 12:45 > Die erste Version wird sowieso nur eine Konzeptversion. > Die Software ist ja noch nicht fertig, und bei einigen Projekten fahren > wir deshalb auch noch mit Windows. Ist halt Komplex das Thema Software, Linux ist schonmal was, und das du Juki Nozzln verwenden möchtest finde ich auch gut. Hast du dir schon mal die Cyberoptics Laser Align Module Angesehen? Juki verwendet die, ebenso Samsung und Assembleon. Wird halt dann nicht so Preiswert.
Wer hätte hier denn Lust mitzumachen? Und welche Maschinen habt ihr? Eine billige Bestückungssoftware so wie Mechatronika sie hat kann man wirklich in 2 Wochen selber schreiben, aber es geht ja darum was brauchbares zu entwickeln. Ich hab eine MX80 (M80 gebraucht gekauft und auf MX80 aktualisieren lassen). Aktuell hab ich den Code in C / C++ geschrieben, ich würde aber Python bevorzugen da das jeder schnell bearbeiten kann. Die Steuerungscodes sind recht einfach. Im Grunde fehlt mir nur noch eine ordentliche OpenCV integration (nicht weil ich's nicht kann sondern weil mir die Zeit etwas fehlt - werde versuchen mir das nächste Woche anzusehen). OpenCV verwende ich zur Zeit für die Leiterplatten-Justierung. Zur Bauteilerkennung: man nimmt das Bauteil einfach hoch schaltet die Kamera auf einen Trigger Modus, und fährt dann einfach das Ziel auf der Leiterplatte an. Das Video der Flying Camera wird dann von der Maschine eingefroren und man muss sich wirklich nur noch um die Justierung des Bauteils kümmern. Sobald man fertig ist schaltet man den ausgelösten Trigger Modus wieder ab. Ein Bild hab ich angehängt (das Bild hab ich im Linux aufgenommen). Man sieht wie schlecht diese Kamera überhaupt ist.... Das Bauteil ist 0402. Übrigens die Windows Referenz-Bilder zur Bilderkennung findet man in deren Konfigurationsdateien die haben wirklich keine "hohe" Auflösung (irgendwo hatte ich hier mal n Bild angehängt). Bei der BTTV/Brooktree/Conexant Karte sollte man wie beim Windows Programm die Helligkeit/Kontrast/(die Karte kann noch mehr) anpassen.
Hier noch ein paar Beispielbilder was deren Windows Software so produzieren kann: https://snag.gy/CJeRUf.jpg https://snag.gy/RswbBW.jpg Grund: Leiterplatte ist leicht gebogen, die Stelle war aber nicht offensichtlich bei den ersten beiden Panels (auf der rechten Seite) Man kann hier als Workaround das Leiterplatten-Niveau einfach etwas etwas tiefer angeben. Meiner Meinung nach soll die Software das dem Operator durch einfache Guidance klar machen. Bei den billigen China Bestückungsanlagen würde mich ein Handling wie bei Mechatronika nicht wundern - aber die Mechatronika Maschinen sind dafür einfach zu teuer um diese Fälle nicht abzudecken. Man könnte ja sogar einen Gerber-Viewer einbeziehen und eine Leiterplatte Matrix-basiert ausmessen. Die Gerber Dateien nur dazu um Schlitze und Bohrlöcher zu vermeiden. Und welche Doppelseitige Leiterplatte ist denn schon nach einem Ofendurchgang von einer Seite nach wie vor 100% gerade. Sprich die Option welche Mechatronika da in der Software hat lässt den Operator geradlinig in's Messer laufen. Wenn man einen 2. Screen hätte, oder die Bestückungssoftware größer machen würde dann könnte man nach der Bestückung kurz Fotos machen und die letzten 10 bestückten Bauteile eventuell darstellen damit man frühzeitig abbrechen kann. Oder eventuell auch direkt eine AOI einbauen.
Die Beleuchtung ist gut, die Nozzle kann man leicht rausfiltern. 0201 ist bei dieser Kamera machbar, eventuell auch kleiner. Python hat ca 25% overhead auf C bei opencv, und das Bild muss von der Kamera zur Auswertung auch noch uebertragen werden. Die Frage ist dann, ob man die 80ms dann noch hat welche Python angenommenerweise braucht, oder ob man nur weniger zur Verfuegung hat. Chris
>> Hast du dir schon mal die Cyberoptics Laser Align Module Angesehen? ich hab gestern ein Video von Fritsch gesehen, das war dort anscheinend nur ein kleiner Aufsatz bei der Bestückungsmaschine / vor der Nadel. Sieht sehr interessant aus (ist aber noch entfernt da die Software erst mal rund werden muss). So wie Mechatronika sagt es gibt mehrere tausende Kunden, wäre eventuell für später interessant. Bin ca. 30 KM von der Maschine entfernt, hab die Nozzles gestern über's Internet mit meinem Programm gewechselt und das Foto vom Bauteil aufgenommen, also grundsätzlich funktioniert die Software soweit. >> Python hat ca 25% overhead Finde das ist kein Problem, das Bild ist eingefroren und ein Bild 360x576 innerhalb weniger als 0.5 Sekunden auszuwerten sollte kein Problem sein (zudem das Bauteil innerhalb dieser Frame-Größe nur einen kleinen Teil ausmacht - die Area of interest auch klein ist) Python erlernt man bald mal und dann könnten eventuell mehr Leute leichter mithelfen. Sollten die Dinge freigegeben werden dann könnte man die Software auch für andere Bestückungsmaschinen verwenden. Ich mach das nicht aus Spass sondern nur deshalb da deren Software einfach eine Qual ist und ich die Maschine der Sekretärin oder ungeschultem Personal so nicht überlassen kann. Mit intelligenter Software kann so eine Maschine jeder benutzen, mit passender Guidance sogar ohne eine Schulung.
Solltest du ein sot23 sowie tssop/soic und einige Fotos von div. Widerstanden bzw caps haben, dann kann ich dir den c code für die Auswertung machen. Auch ein qfn mit zentraler Massepad sowie ein assymetrisches to... sollte dabei sein. Was auch wichtig ist sind leichte fehlpicks von kleineren widerstanden wo neben dem Widerstand auch teilweise das Nozzle ersichtlich ist. Natürlich sollte die Kamera kalibriert werden. Dies wenn es in C gemacht werden soll. Als Ausgangspunkt für eine Python implementation ist es jedoch nicht geeignet.
Mein Code ist aktuell wiegesagt in C/C++ aber ich denke schon nen Schritt weiter für die Zukunft. Python ist für die Masse halt einfacher, und ich will die Dinge in den Browser integrieren um Betriebssystem-unabhängig zu sein. Bin erst mitte nächster Woche wieder vor der Maschine dann schau ich mal bezüglich SOT23. Muss bei der Rückgabe der Nozzles noch einen Vakuum-Check einbauen da mir die 2. Nozzle hin und wieder steckenbleibt (auch im Windows) und es 2 oder 3 Versuche benötigt um den Sauger runter zu bekommen (hab mir schon eine neue bestellt). Setze mich dann auch kurz mal mit nem Schlosser zusammen um die Juki Clone-Nozzles zu besprechen. Ich brauche nur nen gedrehten Aufsatz für die Nozzles ne Halterung kann ich mir aus Fischer-Technik & 3D Drucker Elementen bauen (Sowas brauch ich sowieso da mir die Nozzle Halterung den Platz für meine AluProfil-Fischer-Technik Tray-Feeder versperrt).
Browser wird ein Alptraum werden, zumindest wenn man Flott arbeiten will. Aber jedem das Seine. Weiters, eine Vorschau ohne OpenCV ist Kontraproduktiv, da man dann mit unkalibrierten Bildern arbeitet, bei denen optische Verzerrungen vorhanden sind. Klickt man dann auf einen Punkt ist man weit davon entfernt wenn dieser angefahren wird. Es funktioniert wenn nur das Livebild sehen kann, wenn man dieses aber Anklicken kann, um verschiedene Sachen zu definieren oder die Kamera zu bewegen, dann wird das nichts. Es kommt also darauf an wozu das Bild gezeigt wird. Bei dem von dier geliefertem Bild mit einer Bildverarbeitung welche nicht auf deine Maschine eingestellt ist wird z.B. ein Rechteck mit 23x8 pixel erkannt welches den Bauteilmittelpunkt bei 20.5 X und 5 Y pixels hat mit rotation 0.0 Grad. Koordinate 0:0 ist hier oben links. Ein Pixel dürfte so ca 0.04mm ausmachen, dies sind ca 2.5pixel/mm wobei die Bildverarbeitung derzeit mit 32Pixel/mm arbeitet und nicht für so niedrige Auflösungen eingestellt ist. Bei besser eingestellter Bildverarbeitung wird dann auch die Rotation besser erkannt, hier in diesem Beilspiel wird einfach zuviel weggefiltert, was man auch an dem Ratio des Rechteckes von 2.875 erkennt, normalerwiese ist diese eher 1.4... und bei mehr als 1.8 oder unter 1.2 wird bei einem Widerstand der Place Zyklus abgebrochen. Chris
sorry, es dürften ca 20pixel/mm sein und die Bildverarbeitung ist für 27-42 Pixel/mm eingestellt.
Naja mich interessiert vor allem die Fortschrittsanzeige via Browser und eventuell Fehlermeldungen oder Probleme. Hab mittlerweile auch eine optische Erkennung für 2-Pad Elemente mit OpenCV (klappt wirklich gut und sehe da jetzt schon Vorteile gegenüber dem was Mechatronika hat). Hab da noch: Schwarz/Grüne und Weiss/Graue Induktivitäten. Am wichtigsten ist mir der 8Pin Onsemi TSSOP wo die Mechatronika Software mir viel zu viele Bauteile verwirft - ich hab da schon so ziemlich alles probiert der klappt einfach nicht zuverlässig. https://media.rs-online.com/t_large/R0368583-80.jpg Der sieht so in etwa aus, man bekommt 16 weiße Flecken angezeigt, und Mechatronika shiftet dort hin und wieder die "Pin"-reihe beim Bildabgleich und wirft das Bauteil dann weg. Wenn ich nächste Woche mehr Zeit rausschlagen kann könnte ich die wichtigsten Dinge bis Freitag fertig haben.
OpenCV ist da sehr Mächtig, wobei die 3.x bzw 4.x Version derzeit noch zu vermeiden wäre, ausser man kompiliert sich die "vergessenen" und wichtigen Sachen aus der 2.4 Version dazu.
Anbei noch ein paar Bilder. 0402 ausgewertet SOT-233 wo Noise gefiltert wurde. Läuft soweit Realtime.
Sot23 ist zuviel gefiltert, da passiert dir dann dass unter gewissen Umständen der Winkel falsch erkannt wird und somit falsch bestückt. Bei dem Bild, Gauss 5, Grayscale, Normalize, Threshold mit 240 dann RotatedRect, angle merken, bild rotieren, nochmals rotatedRect(gray) und den abgespeicherten angle ins rotatedrect reinschreiben, sowie center von r.center abziehen. center sollte die calibrierte Nozzleposition sein wie auch der Drehpunkt, oder einfach nur Bildmittelpunkt wenn der Offset in die Kamerkalibrierung eingegangen ist. Bei Juki nozzles, nimm bitte die Schwarzen, nicht die Grünen. Sind ein paar Cent teurer, man braucht dafür aber nicht so viel in der Bildbearbeitung filtern bzw verliert nicht so viel and Auflösung. Die Grünen sind nähmlich für rote Led-Beleuchtung optimiert sowie die Verwendung des blauen Bildkanals, oder für BW Kamera mit Watten Farbfilter. Chris
SMT_Service schrieb: > Hast du dir schon mal die Cyberoptics Laser Align Module Angesehen? Hast Du das schon mal gesehen, bzw. technisch damit gearbeitet (also nicht als Anwender - sondern als Entwickler)? Ich baue derzeit meine Web-Bauteildatenbank mit dem Bestückungsprogramm zusammen (hatte im Bestückungsprogramm nur eine rudimentäre Bauteildatenbank, die Web-Bauteildatenbank hat so ziemlich alle Informationen über das jeweilige Bauteil). Danach kann ich die optische Erkennung wohl fertig machen (sollte alles bis Freitag machbar sein, dann bin ich auch wieder vor der Maschine). > Bei Juki nozzles, nimm bitte die Schwarzen, nicht die Grünen. danke für die Info, hab mir so nen Adapter für die Juki Nozzles bestellt. Der Hauptgrund warum ich an die Nozzles ran muss ist nur dass der Nozzleblock zu breit ist und mir die Fläche für den Tray-Feeder versperrt.
> Hab da noch: > Schwarz/Grüne und Weiss/Graue Induktivitäten. Am wichtigsten ist mir der > 8Pin Onsemi TSSOP wo die Mechatronika Software mir viel zu viele > Bauteile verwirft - ich hab da schon so ziemlich alles probiert der > klappt einfach nicht zuverlässig. Vllt einfach mal die Deckenbeleuchtung ausschalten oder die Vorhänge schließen? Ich hatte das Problem mit allen Sorten SOT23 (3, 5 und 6 Beine). Viele Abwürfe wegen Nichterkennung, teilweise bis 20%. Wenn die Maschine (M70) im Halbdunkel läuft, gibt es überhaupt keine Abwürfe mehr. Da bleibt sie nur noch stehen, wenn die Teile alle sind. Ich habe einige Zeit gebraucht, um darauf zu kommen.
Also mit OpenCV bekomme ich das Bauteil problemlos hin, mit der Mechatronika Software nicht. ON Semi EEprom https://at.farnell.com/on-semiconductor/cat24c64yi-gt3/eeprom-seriell-64kbit-400khz-tssop/dp/2306652 (Das Bild ist nur ein Symbolbild, die Beinchen sind anders als bei anderen TSSOPs die wir haben, die anderen werden problemlos erkannt). Mechatronika kümmert sich nicht um seine Kunden (dazu gehört auch ordentliche Software bereitzustellen). Habe bis jetzt ca. 500 Leiterplatten bestückt und ich kann keine einzige Leiterplatte mit der Mechatronika MX80 bestücken ohne von deren Software genervt zu werden (üblicherweise von der optischen Erkennung, eine LP hat pro Seite ca 800-1500 Bauteile). Kein vernünftiger Mensch würde sich eine Maschine mit so einer Software kaufen. Die Maschine wäre mit guter Software auch preislich in Ordnung - aber das passt so einfach nicht. Die Bestückungsgenauigkeit ist ja durchaus in Ordnung. Ich denke meine Software wird Mitte nächsten Jahres weit genug sein (bin halt bald wieder ein halbes Jahr weg, seit meinem letzten Beitrag habe ich auch nur n paar Stunden an der Bestückungs-Software weitergearbeitet. Feedersetup usw. kann ich ja mit meiner Software alles schon machen, aber die Entwicklung muss halt so nebenbei laufen da ich auch meine eigenen Produkte habe. Den Großteil der Arbeit hab ich bis jetzt eher in's Bauteilmanagement investiert, hab mir auch nen Bauteilzähler gebaut (Mikrocontroller + KY-010 Light Block Sensor Module) - schafft mindestens 100 Lochzählungen pro Sekunde (hab's noch nicht schneller getestet). Labels für die Rollen (inkl. QR Code) lassen sich über'n Webinterface via Raspberry PI auf nem Labelprinter ausdrucken.
Letztens habe ich jemand anderen mit Windows eine LP mit der Windows Software bestücken lassen: Es gab soweit einige Erkenntnisse: - Mechatronika hat große Probleme mit 1mm Leiterplatten sofern sie auch nur ein bißchen gebogen sind. Insbesondere sind davon 1mm PCBs betroffen. Hier müssten die eigentlich vor der Bestückung der LPs mehrere Referenzpunkte nehmen (sie erlauben aber nur einen Referenzpunkt von der Master-Platine). Jetzt sagen sie zwar das man bei gebogenen LPs die Referenzpunkte tiefer einstellen soll, aber wozu haben die denn dann die gesamte Funktionalität eingebaut und setzen nicht by default alle Referenzpunkte tiefer? Die Antwort ist relativ simpel - die Nozzles werden stärker abgenutzt (was Mechatronika natürlich nicht sagen würde). Da würden wir wieder zurückkommen auf meinen Request - vor der Bestückung des jeweiligen Nutzens mehrere (User-definierte) Referenzpunkte zu nehmen. - Auch gibt es Probleme mit Fiducials welche durch den HASL Prozess verzinnt wurden, da diese anscheinend Schatten werfen und die Bestückungspositionen dadurch negativ beeinflussen können, einen manuellen Workaround gibt es nicht in der Software. Man könnte wohl versuchen die Fiducials abzuschleifen. Das ist wohl sehr Herstellerabhängig, aber eine Maschine für über 40K sollte das doch handlen können. - Ein Kollege hat mal versucht die Maschine bei einer Temperatur um die 10°C in Betrieb zu nehmen, da kam's sogar zu Problemen mit der Steuerungs-Elektronik(!) welche dann ab 18°C komplett verschwunden sind (zumindest sind diese Probleme bei 50k Bauteilen nicht mehr aufgetreten, zuvor mehrfach innerhalb eines Durchgangs mit 800 Bauteilen). ---- Wenn ich im August wieder zurück bin geht der Umbau der Maschine weiter, habe ein interessantes Video gefunden: https://www.youtube.com/watch?v=X0ZK2BYRfek Ich habe die Feederbefehle sowieso bereits komplett reverse engineered, mit nem kleinen Adapter sollte sich das also recht einfach lösen lassen. Die Entscheidung ist auch getroffen ich werde die Befehlssätze im August wenn ich wieder vor der Maschine bin dann auch auf Github online stellen. Wer Interesse hat kann ja auch an nem Adapter für alternative Feeder mithelfen :-) ---- Zu Mechatronika, die Chefs sind >50 Jahre alt, es gab in den letzten Jahren keinerlei Innovationen bzw. brauchbare Weiterentwicklungen bezüglich diesen Maschinen. Es passt gerade mal ein Tray in die Maschine (deren Top Modell), Tray Feeder gibt es ja nicht (ich vergleiche hier insbesondere mit einem anderen kleinen Hersteller - Fritsch die eigentlich permanent was machen und solche Tray-Feeder auch anbieten) - somit wird so eine Maschine wohl nur von Kunden für ziemlich kleine Projekte verwendet. Machbar ist natürlich alles, die Windows Software benötigt nur sehr viele umständliche Schritte... Was ich nicht ganz verstehe ist warum die einem unbedingt ihre Schulung aufzwingen wollen, eine Schulung in Workarounds für fehlerhafte Dinge in deren Software. Multiselect gibt's auch mit einer Schulung nicht in deren Software, und ein einzelnes Bauteil mit weniger als 5 Mausklicks kann man dann immer noch nicht setzen (was ja toll ist wenn man 10 Bauteile setzen möchte, dann sind's nämlich 50 Mausklicks - aber deren Kunden sind ja absolut zufrieden damit?). Durch die 100% negativen Erfahrungen mit der Windows Software, und den Zukunftsaussichten kann ich von Mechatronika Produkten nur abraten. Wenn die Chefs dann mal in Rente gehen ist wohl komplett Schluss mit diesen Maschinen (und wenn man mit ihnen in Kontakt tritt antwortet üblicherweise einer von den beiden Chefs). Auch sind sie absolut lernresistent und denken das ihr Bestückungsautomat so wirklich brauchbar ist... Wer sich Mechatronika antut kann mittelfristig sicher sein eine überteuerte DIY Maschine zu kaufen.
Frage: Was bringt es einem eine sehr gute Hardware zu kaufen, wenn die Software scheiße ist? Ich meine, wenn ich eine Maschine kaufe die 01005 hochpräzise und extrem schnell bestücken kann, aber die Software murks ist, bringt mir das ganze doch gar nichts? Selbst 1000 LPs am Tag müssen fehlerfrei bestückbar sein.
Ich war einfach zu blöd beim Kauf (ist auch schon ein paar Jahre her, das Upgrade hat auch überhaupt nichts gebracht, es war nur teuer). Selbst wenn man sich's vorführen lässt heißt es nicht das die eigenen Leiterplatten dann damit funktionieren. Mit meiner eigenen Software bekomm ich's zum Glück soweit hin das alles klappt, aber es kostet sehr viel Zeit. Was ich bei der Aktion vor allem gelernt habe ist das die Bauteildatenbank nicht einfach nur rudimentär sein darf sondern wirklich Informationen benötigt (die Mechatronika Bauteildatenbank ist nutzlos aber auch wichtig...., man kann weder sortieren noch suchen noch sich anzeigen lassen welche Bauteile bald zu Ende gehen, noch den Pitch dort einstellen). Der Pitch muss unabhängig von den Bauteilen konfiguriert werden, sehr schlau nicht? Ich versuch jetzt einfach das Beste draus zu machen. Es ist nur eine potentielle Warnung an andere sich Mechatronika nicht anzutun, sonst muss man wirklich in den sauren Apfel beissen. Verkaufen werde ich die Maschine jetzt auch nicht mehr da ich schon zu weit bin. Zum Glück läuft mein Geschäft gut genug das ich nicht darauf angewiesen bin. Wir haben die Bestückung das letzte mal inkl. Reworkarbeiten zusammengerechnet, man kommt effektiv auf ca 400 Bauteile pro Stunde (die Maschine an sich bestückt ca 3000 BT/H). Von 100 kleinen PCBs haben 40 ohne Reworking funktioniert. Spec: 1mm PCB, 0402 Bauteile, HASL Oberfläche. Das mit den Schulungen ist wohl auch nur Geschäftemacherei (normalerweise verkaufen die ja das Service mit, auch wenn sie es uns kostenlos anbieten würden, es ändert wie erwähnt nichts an der idiotischen Steuerung der Software, um wirtschaftlich zu arbeiten sollte die Software die Probleme selber lösen ODER Mechatronika ein Handbuch anbieten (gibt es anscheinend nicht, bzw. unsere Probleme werden anscheinend nur in den Geheimschulungen behandelt!)). Die Maschine wird wohl eher keine Probleme mit 1.5-6 mm LPs und 0603 Bauteilen haben. Dafür kann man aber auch eine günstige Sub-10k Maschine mit ebenbürtiger schlechter Software nehmen.
Das betrifft jetzt vorrangig die Mechatronika MX80 So ein kleiner Tipp für Mechatronika geplagte mit Delta ASDA-A2 Controllern. Die Delta ASDA-A2 Controller können über USB überwacht und konfiguriert werden. http://www.deltaww.com/services/DownloadCenter2.aspx?secID=8&pid=2&tid=0&CID=06&itemID=060201&typeID=1&downloadID=ASDA-A2&title=ASDA-A2&dataType=8;&check=1&hl=en-US Es gibt dort auch ein Oszilloskop mit dem man den PID Controller überwachen kann sollte man dort so etwas wie "Noise"/ein Rauschen sehen dann sind die Einstellungen nicht optimal. Es gibt dort auch einen Jog Mode, mit dem man die Bewegungen direkt überprüfen kann. Bei 400rpm zuckte die Maschine schon heftig rum, nach diversen Einstellungen konnten wir dort auch deutlich höher gehen. Auch hier Vorsicht die Maschine hat keinen Stop-Sensor man muss mit dem Portal also unbedingt innerhalb des mechanisch möglichen Bereichs bleiben. Im Windows kann man mit dem Controlpanel einen Freemove des Bestückungsheads machen, dort mehrfach mit dem Kopf Zick-Zack von links nach rechts fahren. Die Y Distanz sollte bei jedem Durchgang gleich bleiben um die Konsistenz sicherzustellen. z.B erster Durchgang 3-4 cm, zweiter Durchgang 4-10cm, dritter Durchgang 10-30cm usw. Das Monitoring kann im Hintergrund weiter laufen. Es darf zu keinem "Reissen" des Portals kommen. Wenn es auch nur zu einer kleinen Oszillation (also einem Überschwingen der Bewegung kommt) sofort bei Mechatronika anrufen damit sie deren Scheisse in Ordnung bringen - das ist nur ein Zeichen dafür das der Controller falsch eingestellt wurde (so wie bei uns). Die X/Y Bewegungen der Maschine muss über alle Distanzen hinweg ruhig sein. Unser erster Workaround war den Y-Riemen anzuziehen was nur mehr Last auf den Motoren verursacht hat und für das eingestellte Profil des Motors in Ordnung war. Das ist keine Lösung, durch die Neukonfiguration des Motors konnten wir die Spannung auf dem Riemen wieder deutlich lockern. Die Delta ASDA-A2 Windows Controller Software hat sehr viele Einstellungsmöglichkeiten, wer dort das falsche einstellt läuft nicht nur Gefahr das die Maschine einen Totalschaden erleidet sondern es kann auch zu **Personenschäden** kommen da die Motoren ziemlich stark sind. Vor allem keine automatische Kalibration durchführen, die Applikation warnt ohnehin davor. Wir haben diese auch nicht durchgeführt. Keine Einstellungen vornehmen ohne die vorigen Werte irgendwo zu sichern (das haben wir natürlich nicht gemacht und gleich mal ein starkes Surren mit auf dem Y Motor gehabt, die Delta Controller schalten bei Überlastung zum Glück selber ab sodass es schwierig sein sollte durch eine Falscheinstellung etwas zu beschädigen). Mit den Delta Motoren und Controllern hab ich bis jetzt nur positive Erfahrungen gemacht, das sind wirklich ausgereifte Produkte. Wir haben das nur selber angefasst da Mechatronika (die Firmenchefs Lezlaw und Dariusz) in Polen den Schwanz bei uns eingezogen haben und anscheinend selber keine großartige Ahnung von den zugekauften Teilen haben. Sie haben uns als Kunden mit deren Top Modell einfach links liegen gelassen und sind mit unserem Geld wohl abfeiern gegangen.
Nun ja, das erklärt einiges. Ich fasse mal zusammen: bei der MX80 werden ggü der M70 größere Massen mit höherer Beschleunigung bewegt, mit dem Ziel, den Durchsatz zu erhöhen. Die mitlaufende Kamera wird offenbar gemeinsam mit dem Bestückungskopf bewegt und bringt zusätzliche Masse mit. Deshalb hat man einen stärkeren Antrieb eingebaut. Und einen Controller, der unpassend parametriert wurde. Die Masse der Maschine ist lediglich um 100 kg größer als bei der M70 (250 kg zu ca 150 kg). Die relative Massendifferenz verringert sich bei fünf oder sechs angebauten Feedern. Die Geschwindigkeit soll etwa das 1,6-fache betragen, wobei die angegeben BE/h sehr optimistisch sind. Die zugrunde liegende Konstruktion ist mit dem Portal und Zahnriemenantrieb bei beiden Maschinen gleich. Meine unmaßgebliche Meinung dazu: das Potenzial dieser Konstruktionsweise ist mit der M70 ausgeschöpft. Bei höheren Geschwindigkeiten und krätigerem Antrieb führt das unweigerlich zu Schwingungen und Verwindungen des Portals. Da die Linearmaßstäbe dummerweise im Portal oben liegen, kann da auch nichts ausgeregelt werden. Wenn ich die M70 im Betrieb anfasse, dann ist das Ruckeln und Vibrieren deutlich spürbar. Dass ich 0402 gut damit bestücken kann, liegt offenbar daran, dass ich das Gerät ohne Dispenser bestellt habe, der mit seiner ständig mitfahrenden Masse für zusätzlichen Bestückungsversatz sorgen würde.
Werde am Montag mal mit Mechatronika telefonieren, ich schätze sie verkaufen einfach ein Produkt das nicht funktioniert, und als nicht funktionierend ist für mich bereits ein Produkt das 0.1mm Versatz nach einiger Zeit aufweist ohne dies zu korrigieren. Ich habe lediglich die Motorsteuerung für die Y Achse angepasst, habe mir jetzt ein Testprogramm für die Maschine geschrieben schnelles herumfahren mit dem Portal und dem Bestückungskopf kann die Maschine aus dem Gleichgewicht bringen - was meine Annahme mit der Temperaturverzerrung war - war in Wirklichkeit ein Versatz des Motors, anscheinend gibt es Probleme mit dem Feedback loop. Ich kann ja durchaus bestücken, der Versatz ist durch meine Einstellungen im schlechtesten Fall wohl noch weiter runtergegangen. Je nach Einstellung des Y Controllers kann ich richtig viel Versatz bekommen (2cm) oder Minimalversatz (0.1mm) nach sehr häufigem, schnellen herumfahren von einer Ecke zur anderen. Die Default Settings von Mechatronika haben mindestens für 0.25mm Versatz nach einiger Zeit verursacht. Das größte Problem ist schätze ich dass die Firmenchefs so um die 60 sind und sich um nichts ordentlich kümmmern (das ist mein Eindruck). Wenn's um's abkassieren geht sind sie zur Stelle.
Gerade im Delta ASDA-A2 Controller Manual gelesen: > Main Circuit Wiring > Install the encoder cables in a separate conduit from the motor power cables > to avoid > signal noise. Separate the conduits by 30cm (11.8inches) above. Die Kabel sind natürlich direkt nebeneinander verlegt, und was die Qualität der Kabel anbelangt da habe ich auch so meine Zweifel. > Use multi-stranded twisted-pair wires or multi-core shielded-pair wires for > signal, encoder > (PG) feedback cables. The maximum length of command input cable is 3m (9.84ft.) > and > the maximum length of encoder (PG) feedback cables is 20m (65.62ft.). > As a charge may still remain in the drive with hazardous voltages even after > power has > been removed, be sure to wait at least 10 minutes after power has been removed > before > performing any wiring and/or inspection. Ich sage ja schon das ich nur Laien-Ahnung von den Motoren habe, jedoch scheint Mechatronika da noch deutlich weniger Ahnung zu haben :-(
> Die Kabel sind natürlich direkt nebeneinander verlegt, und was die > Qualität der Kabel anbelangt da habe ich auch so meine Zweifel. Wenn die Encoder Differenzialausgänge (HTL oder RS422) haben, gibt es bei den 2 m in der Maschine genaugenommen keine großen Anforderungen. Bei einpoligem Betrieb sieht es deutlich schlechter aus. Ein kurzer Blick ins ASDA-Manual lässt mich befürchten, dass die Jungs irgendetwas mit den Encodern vergeigt haben. Mich stört die offenbare Benutzung des Motorencoders ganz gewaltig. Es scheint so zu sein, dass die Z-Spur irgendwann mal die Nullmarken liest und dann nur noch der Motorencoder zur Inkrementalauswertung benutzt wird. Das wäre der GAU schlechthin und läuft letzendlich auf die Funktionsqualität eines Schrittmotors hinaus. Ist aber nur ein Schuss ins Blaue -
Es sind RLS Encoder (LM10IC005CC30F00) an der Maschine montiert, es dürfte hier zu überhaupt keinen Abweichungen kommen. Wenn die Maschine eingeschalten wird, wird sie auf die Nullstelle gesetzt. Ich muss mal einen Langzeittest vornehmen der etwas Pause einfügt zwischen den Bewegungen (mit Pausen habe ich bis jetzt eigentlich erst mal keine Probleme gesehen), die 0.1mm Abweichung kam nur vor wenn ich die Befehl direkt ohne Pause/Barrier aneinanderqueue (man kann das auch im Windows Programm machen indem man dort wild in der Table-Ansicht herumklickt). Ich muss mal ein Projekt bestücken, dann mache ich mir mal einen genauen Plan der Verkabelung. Elektronik ist da wirklich nicht viel vorhanden in der Maschine.. der größte Teil sind die Delta Einheiten.
Daniel schrieb: > Wenn die Maschine eingeschalten wird, wird sie auf die Nullstelle > gesetzt. sie wird ohne die Kamera auf die Nullstelle gesetzt. Das scheint im Controller verankert zu sein da wenn ein Misalignment passiert ein Nullen nichts bringt, es bleibt konsistent verschoben.
> Es sind RLS Encoder (LM10IC005CC30F00) an der Maschine montiert, es > dürfte hier zu überhaupt keinen Abweichungen kommen. Ebend. Aber anbauen ist das eine, die sachgemäße Benutzung das andere.
> sie wird ohne die Kamera auf die Nullstelle gesetzt. Das scheint im > Controller verankert zu sein da wenn ein Misalignment passiert ein > Nullen nichts bringt, es bleibt konsistent verschoben. Naja. Die M70 fährt nach dem Einschalten in allen drei Achsen kurze Strecken ab und sieht sich an, wo die Z-Marken auf den Linealen liegen. Im Normalfall reicht das auch, klärt aber nicht einen eventuellen Offset zwischen Portal und Tisch. Wären die Jungs clever gewesen, würden sie beim Anfahren auch sofort die Positionen der unteren Kamera(s) vermessen. Da wäre alles paletti. Wenn man im Moment alles ganz exakt haben will, muss man nach dem Einschalten erstmal die unteren Kameras vermessen (nur mit Hilfswerkzeug möglich). Das mache ich nur gelegentlich.
Wir warten noch auf die Reaktion von Mechatronika, telefonisch ist dort erst mal niemand erreichbar (sage ja Mechatronika ist wohl eine Firma mit weniger als 5 Bediensteten). Zum technischen Teil: Zusätzlich verwenden wir jetzt auch einen aufgeklebten QR Code um die Positionierung des Bestückungskopfes in unserer Applikation zu überwachen. Zu Mechatronika: Es ist einfach unglaublich man kauft sich so ein Produkt für viel Geld und die Firma dahinter reagiert überhaupt nicht. Das sind jetzt keine 100 EUR Beträge sondern 5stellige Beträge. Eine Firma die auf eine Bestückung angewiesen ist und in solche Probleme läuft kann die Maschine gleich aus dem Fenster werfen. Die Maschine an sich ist mir schon egal da wir sie unter Kontrolle haben, jetzt geht's mir vorrangig darum das diese Firma ihre Existenz, bzw. die hohen Preise überhaupt rechtfertigt. Der Herr wird wohl schon auf die 60 zugehen, da mache ich mir als Kunde im Grunde sorgen dass die das einfach alles links liegen lassen (interview 2007, die Google übersetzung ist ganz brauchbar): https://elektronikab2b.pl/wywiady/1466-rozmowa-z-dr.-inz.-dariuszem-pieczerakiem-wspolwlascicielem-firmy-mechatronika-w-warszawie Ich habe diese Erfahrung schon mal gemacht, jemand der mit 54 noch motiviert war und wirklich gut drauf war hat so um die 60 alles stehen und liegenlassen (inkl. seiner Frau) und sich dann vor allem Golf spielen gewidmet. Im Unternehmen ist der nur noch spasshalber. (ja alles richtig gemacht von seinem Standpunkt aus, aber für die jüngere Belegschaft ist das dann halt nicht unbedingt so toll)
Hat hier eigentlich noch jemand eine Mechatronika aus der MX Serie? Werde dann auch anfangen in den englischen Foren zu suchen (eevblog, edaboard, etc.). Mir scheint so als ob es Mechatronika nicht mehr gut geht, bei einem Anruf sagte die Sekretärin sie sei die einzige in der Firma. Was bei uns abgelaufen ist ist eindeutig Betrug. Wir haben mittlerweile auch mit Umbauten bei der Maschine begonnen (also jetzt darf sich unser Dorfschlosser (mit TU Background) mal mit der Maschine spielen). Wir werden auch an einem 4x Bestückungskopf arbeiten. Die Flying Camera Module können wir genau so gut selber bauen, Kamerasensor + FPGA + Speicher ist ja kein Problem, dann können wir das System gleich auf AHD (non-interlaced umstellen und mit Vollbildern arbeiten). Bei einer 4x Matrix müsste man immer noch mit jedem Kopf alle Bauteile auf jeder Seite der Maschine anfahren können. Anbei ein Foto des polnischen LPC Motor Controllers, die einzige Intelligenz in der Maschine ist der Motor Controller von Delta Taiwan (die großen Boxen) 200W für X und 400W für Y.
> Mir scheint so als ob es Mechatronika nicht mehr gut geht Da werden sich ja Faktronix und Paggen mächtig freuen, wenn der Ärger dann komplett an ihnen hängenbleibt. > Bei einer 4x Matrix müsste man immer noch mit jedem Kopf alle Bauteile > auf jeder Seite der Maschine anfahren können. Kannst du das? Zumindest am hinteren Feeder dürfte es eng werden. Bei der M70 kann ich z.B. nicht mit der Kamera auf die Schaltkreise in Stangenfeedern draufsehen, weil das Portal dann an der Begrenzung ist. Die Pipette kann vllt gerade noch 20 mm weiter hinter die Schaltkreismitte. Viel Spaß beim Umbau!
Ich denke es müssten sich 4 Nozzles ausgehen (ich gehe da jetzt nicht unbedingt davon aus weiterhin die Mechatronika Nozzles zu verwenden), als Beispiel würde ich hier eher die Essemtec Fox Nozzles nehmen. Hatte heute ein Gespräch mit dem Maschinenbauer, er scheint soweit auch interessiert zu sein an der Maschine zu arbeiten. Er fertigt auch Feinmechanik. Die Maschine an sich ist ja wirklich okay, aber halt vor vielen Jahren in der Entwicklung steckengeblieben. Für den Anfang können wir dann wohl auch alternative Nozzles für die Mechatronika Maschinen anbieten, die 100 EUR/Nozzle die Mechatronika da verlangt sind absolut übertrieben, aber wenn das Geschäft nicht mehr läuft auch irgendwie verständlich (es unterstreicht nur die Aussage das sie sich auf existierende Kunden fokussieren um diese zu melken). Werde nächste Woche auch anfangen die LPC Steuerungseinheit genauer zu untersuchen, welcher Output genau was macht. Auch ein passendes Projekt um die NXP Mikrocontroller mal genauer kennenzulernen, hatte im Mikrocontrollerbereich bis jetzt nur mit ST Micro und Nuvoton zu tun Mal mit dem Oszilloskop/Logicanalyzer rangehen, ich denke ich müsste aber ohnehin bereits 98% der RS232 Funktionalität reverse engineered haben. Auch habe ich ein HG-C1030 Laser Distanz-Modul bestellt, ich will das Distanzmessen per Vacuum-Check und Nozzle abstellen. Habe gestern auch noch das Windows Tool getestet, es funktioniert so wie immer, auch mit den neuen Delta Servo-Einstellungen (abgesehen davon ist die Maschine auch mit dem Windows Tool deutlich ruhiger).. Einen Versatz hab ich bei 8000 Bauteilen keinen bemerkt.
> Die Maschine an sich ist ja wirklich okay, aber halt vor vielen Jahren > in der Entwicklung steckengeblieben. Da gibt es eigentlich nur eine unternehmerisch richtige Konsequenz: die Maschine mit den neu angefügten Ergänzungen und Änderungen ausgiebig erproben, dann die besagte Firma kaufen und mit der eigentlich guten Mechanik dann moderne Maschinen auf den Markt werfen.
Die Maschine ist bis nächste Woche erst mal ausser betrieb da ich auf die neue Alu Unter-Platte warte (ansonsten verschmutzt mir die Elektronik mit Öl). Die Screenshots wurden (ohne angeschlossene Maschine auf meinem Entwicklungsrechner gemacht). Im Bild sieht man die OpenGL Implementierung des Bestückungstisches (zoom in/out wird unterstützt wie auf nem Tablet), die Feeder können alle abfotografiert werden, auch die Leiterplatte und dann Onscreen mit Designatoren versehen werden, jede Position des virtuellen Bestückungstisches ist genau anfahrbar. Die Bauteilkonfiguration (Location & Pick up höhe) kann direkt via OpenGL Interface vorgenommen werden, die Steuerung des OpenGL Fenters ist wie bei Altium :-) Die Live Kamera läuft zur Zeit auf einem 2. Bildschirm (dafür nehme ich den alten 4:3 1024x768 Bildschirm der Mechatronika). Werde das User-Interface noch etwas hübscher machen wenn alle Features integriert wurden, werde heute noch Tablet-Support integrieren damit man die Feeder via Tablet konfigurieren kann. Die Feeder können dann sogar via Web in einem Format heruntergeladen werden welches von der Mechatronika Applikation importiert werden kann (nehme das nur noch zum Vergleichen). Für Windows hab ich auch ein kleines Tool das sich den Component Pitch aus der Datenbank zieht und die Feeder dementsprechend einstellt. Die Bauteildatenbank an sich ist bei uns zentralisiert, vom Einkäufer, Entwickler bis zu dem was in der Maschine landet ist eine Einheit. ----
1 | From: mechatronika <email hidden> |
2 | Subject: Re: M80 => MX80 |
3 | Date: 6. November 2017 at 14:32:59 CET |
4 | To: <email hidden> |
5 | |
6 | Hi, |
7 | |
8 | The serious discussion can start when you send us the list of your software proposals... |
9 | And one more thing - the list with the range of the refurbishment was sent you in advance and nowhere was indicated, that we put the huge software improvements, but - if you want to build your own software we can send you the machine commands for that machine. |
10 | BTW: |
11 | - 0402 components are standard packages for all our machines |
12 | - what other P&P machines have you experienced before ? |
13 | |
14 | Best regards |
15 | D. P. |
Sie haben sich nicht daran gehalten.
Hübsch. Kannst du auch Teile mit derselben Bezeichnung wahlweise aus dem einen oder anderen Feeder entnehmen? Das ist zwar nicht wichtig, aber ganz nett, wenn ich z.B. erst einmal restliches Schüttgutt aus dem Tray statt von der Rolle verarbeiten will. Lohnt sich z.B. auch bei teuerem Abwurf.
Bei mir hat jede Rolle einen eigenen Barcode, wenn man 2 Rollen eingespannt hat wird die jeweils vorher definierte verwendet. Die Bom lädt man in das Webfrontend hoch und weist dann jedem Bauteil der BOM ein Bauteil aus dem Lager zu. Das Webfrontend ist noch etwas schlicht gehalten, funktioniert aber einwandfrei. In der Bauteildatenbank ist auch Ort und Schacht des jeweiligen Bauteils eingetragen, der Barcode wird über einen billigen (und guten) Brother Labeldrucker über's Webfrontend ausgedruckt. In der Lagerverwaltung kann man Bauteile auch kopieren (z.B wenn ein Bauteil dem Ende zugeht und man eine neue Rolle nachschieben will, alternativ könnte man auch ein altes Label weiterverwenden). Ich arbeite nicht mit vorher definierten Dingen "Packages" wie dieser Component list https://youtu.be/XuHYhp0ltME?t=1570
1 | mysql> desc smd_components; |
2 | +----------------------+----------------------------+------+-----+-------------------+----------------+ |
3 | | Field | Type | Null | Key | Default | Extra | |
4 | +----------------------+----------------------------+------+-----+-------------------+----------------+ |
5 | | id | int(11) | NO | PRI | NULL | auto_increment | |
6 | | type | varchar(255) | YES | | NULL | | |
7 | | component_name | varchar(255) | YES | | NULL | | |
8 | | component_value | varchar(255) | YES | | NULL | | |
9 | | qrcode | varchar(255) | YES | | NULL | | |
10 | | component_location | varchar(255) | YES | | NULL | | |
11 | | component_type | varchar(255) | YES | | NULL | | |
12 | | component_size | varchar(255) | YES | | NULL | | |
13 | | package_type | varchar(255) | YES | | NULL | | |
14 | | component_desc | varchar(255) | YES | | NULL | | |
15 | | component_stock | varchar(255) | YES | | NULL | | |
16 | | component_height | varchar(255) | YES | | NULL | | |
17 | | changed | timestamp | NO | | CURRENT_TIMESTAMP | | |
18 | | max_voltage | decimal(10,2) | YES | | NULL | | |
19 | | tolerance | decimal(10,2) | YES | | NULL | | |
20 | | in_pnp | enum('Y','N') | YES | | N | | |
21 | | feeder_address | decimal(10,0) | YES | | NULL | | |
22 | | feeder_lane | decimal(10,0) | YES | | NULL | | |
23 | | box_location | varchar(255) | YES | | NULL | | |
24 | | package_name | varchar(255) | YES | | | | |
25 | | smd_pitch | decimal(10,2) | YES | | 0.00 | | |
26 | | component_width | decimal(10,2) | YES | | NULL | | |
27 | | component_length | decimal(10,2) | YES | | NULL | | |
28 | | x | int(11) | YES | | NULL | | |
29 | | y | int(11) | YES | | NULL | | |
30 | | z | int(11) | YES | | NULL | | |
31 | | adv_speed | enum('fast','slow') | YES | | slow | | |
32 | | tape_collection_mode | enum('standard','delayed') | YES | | standard | | |
33 | | pickup_nozzle | int(11) | YES | | 1 | | |
34 | | deleted | enum('Y','N') | YES | | N | | |
35 | | picture | varchar(255) | YES | | | | |
36 | | rotation | decimal(10,2) | YES | | 0.00 | | |
37 | | cvfilter | varchar(8000) | YES | | | | |
1 | mysql> desc feeder_configuration_master; |
2 | +-------------------+--------------+------+-----+---------+----------------+ |
3 | | Field | Type | Null | Key | Default | Extra | |
4 | +-------------------+--------------+------+-----+---------+----------------+ |
5 | | id | int(11) | NO | PRI | NULL | auto_increment | |
6 | | feeder_slots | int(11) | YES | | NULL | | |
7 | | selected_feederid | int(11) | YES | | NULL | | |
8 | | address | int(11) | YES | | NULL | | |
9 | | feedertype | varchar(255) | YES | | NULL | | |
10 | +-------------------+--------------+------+-----+---------+----------------+ |
11 | 5 rows in set (0.00 sec) |
12 | |
13 | feedertype = aktuell Stripe oder Tray feeder |
14 | |
15 | |
16 | mysql> desc feeder_configuration; |
17 | +--------------+---------------------+------+-----+---------+----------------+ |
18 | | Field | Type | Null | Key | Default | Extra | |
19 | +--------------+---------------------+------+-----+---------+----------------+ |
20 | | id | int(11) | NO | PRI | NULL | auto_increment | |
21 | | address | varchar(255) | YES | | NULL | | |
22 | | lane | int(11) | YES | | NULL | | |
23 | | enabled | varchar(1) | YES | | NULL | | |
24 | | component | varchar(255) | YES | | NULL | | |
25 | | x | int(11) | YES | | NULL | | |
26 | | y | int(11) | YES | | NULL | | |
27 | | z | int(11) | YES | | NULL | | |
28 | | f_id | int(11) | YES | | NULL | | |
29 | | component_id | int(11) | YES | | NULL | | |
30 | (folgende Felder werden nicht mehr verwendet, sie werden aus der Bauteilliste direkt mit einem Join ausgegeben) |
31 | | rotation | decimal(10,2) | YES | | NULL | | |
32 | | speed | enum('fast','slow') | YES | | NULL | | |
33 | | cgroup | varchar(255) | YES | | NULL | | |
34 | | pitch | int(11) | YES | | 0 | | |
35 | +--------------+---------------------+------+-----+---------+----------------+ |
36 | 14 rows in set (0.00 sec) |
Die Daten sind via JSON zugänglich und so auch in's Webfrontend und die Bestückungsapplikation integriert. Der OpenCV Filter wird durchgeführt bevor ein Bauteil gematched wird, es ist noch in Entwicklung und für Standardbauteile werde ich dann auch einfach Standard Filter anlegen. Durch intelligentes Matching wird der Bauteilabwurf deutlich minimiert verglichen mit der Mechatronika Applikation (ich will für 0402 keine Templates anlegen müssen und das "optische zentrieren" alleine klappt ja auch nicht ordentlich mit Mechatronika - vor allem wenn die Nozzle auch im Bild ist) Ich bin aber noch weiter am optimieren, so schlecht und umständlich wie Mechatronika das macht machen wir's schon mal nicht. Ziel ist es später auch verschiedene Bauteile sortieren zu können wie bei OpenCV (Bauteil Trays hab ich noch nicht integriert, ist aber für Prototypen ebenfalls ein wichtiger Punkt). https://www.youtube.com/watch?v=ynMOINxySbM Prototypen-Maschinen müssen - wenn sie in Europa hergestellt werden - ein Maximum an Flexibilität bieten ansonsten haben sie heutzutage keine Berechtigung mehr. Billige Maschinen kann ich auch aus China kaufen.
So wird die BOM im Web von der Liste mit dem Lagerbestand gematched, die finale Bestückungsliste für die Maschine kann man dann herunterladen und in's Programm reinladen, werde das aber auch noch direkt integrieren damit man die Daten direkt aus der Datenbank ziehen kann und sich das herunterladen und reinladen in die Bestückungsapplikation spart.
Bin gerade über eine Email an Mechatronika gestoßen, wo ich mich damals über die miese Integrierung der optische Erkennung ausgelassen habe. User-freundlich ist wenn der Kunde nicht mal die Möglichkeit hat so ein Bauteil falsch zu konfigurieren, und das Bild ist ja wirklich eindeutig. Nur mistige Software lässt den User bei exakt so einem Bauteil direkt in's Messer laufen. Bei so einem Bild ist jegliche Ausrede dass ein Bauteil nicht gematched werden konnte eigentlich hinfällig. Es kam zu einem Bauteilabwurf. So ein Bauteil hat bei uns mit OpenCV und Vektor-basierter Erkennung überhaupt keine Chance abgeworfen zu werden.
1 | - we do not want comment your mails, but I think, that offending, blackmailing, ageing, putting false information on forums (without any similar response there..) is not a behaviour from our story - it definitely finishes any cooperation with you |
Falsch konfigurierte Servos gehören ja wohl auch zu den "falschen" Anschuldigungen. Aber wir hätten ja nach Polen fliegen sollen um die Maschine dort abzunehmen. Alles klar, bevor ich in ein Luxus-Auto einsteige überprüfe ich auch immer ob der Hersteller die Motoren richtig eingebaut hat und diverse Spaltmaße, macht ja jeder so. Hätte ich so einen Kunden dann würde ich mich mehr als demütig entschuldigen für die Probleme und eventuell einen Rückversand und eine kostenlose Überprüfung des nicht günstigen Spielzeugs organisieren.
Bei 0402 und teilweise 0603, hängt aber von der Nozzle ab. legt man einen schwarzen Kreis in die Bildmitte, damit die Nozzle sowie deren Streulichter abgedeckt wird. Es passiert aber öfters auch bei 0603 dass die Nozzle leicht seitlich sichtbar wird, und so damit das RotatedRect verfälscht, weshalb ich dies auch bei 0603 mache. Man kann die Nozzle schwärzen, abe es braucht nur einen kleinen Kratzer/gebrauchsspuren, oder etwas Staub auf der Nozzle, und man hat dasselbe Problem. Dann macht man ein oder zwei Threshold und mit Imgproc.minAreaRect bekommt man das Bauteil korrekt erkannt, deren Größe sowie Position und Drehung. Abhänging von Position und Größe entscheided man nun ob es abgeworfen werden soll, oder nicht, bzw die Seitenverhältnisse nicht stimmen (Bauteil nicht korrekt aufgenommen), Größe ungefähr stimmt (falscher feeder) oder Bauteilmittelpunk zu weit von Nozzle weg, sprich wird vom Vacuum nicht richtig gehalten. Hier kann man ev. noch die Geschwindigkeit reduzieren, oder eben Abwurf. Ich berechne den Abwurf so, dass ich ein neue Mat nehme, dort in Weiss den Kreis der Nozzle zeichne gefüllt natürlich und dann des RotatedRect gefüllt mit Schwarz einzeichne. Übersteigt nun die summe der Pixel (countNonZero) einen gewissen Wert, Nozzle und Package Abhängig, wird dieser Abgeworfen, bzw die Geschwindigkeit gesenkt (niederer Wert).
Ich sehe, es ist alles noch sehr in den Anfängen, von der Datenbank her. Das mit den Packages solltest du dir nochmals überlegen, es hat nur Vorteile. Du spricht von Prototypen. Da werden die Bauteile doch automatisch ausgemessen. Einfach einlegen und Los. Bei der ersten Verwendung wenn das Bauteil polarisiert ist muss noch Pin 1 bestätigt werden, und wenn die Pads mit der Leiterplatte nicht übereinstimmen wird dies auch gemeldet, ansonsten geht dies doch alles automatisch, im Gegensatz zu Production Machinen, wo eine Offline Programmierung benötigt wird, wie auch ein eventuelles Balancing auf mehreren Maschinen und Aufträge. Ein optischer Nozzlesensor wird dafür gebraucht, bei CNC Maschinen wird dafür ein G38 Befehl abgesetzt. Fehlt dir dieser Sensor und das CalibrationsPod dann bleibt einem nichts anderes übrig als die Daten von Hand eingeben. Soweit ich aber verstanden habe willst du aber keine z.B. Juki Nozzle haben, alternativ auch keinen Kopf wie bei z.B. ASM welche so einen Sensor ermöglichen. Naja, auch eine Designentscheidung. Voraussetzung dafür ist, dass du openCV Filter hast, welcher zuverlässig die Pins detectieren , die Outline, sowie das Bauteil automatisch auf Pin1 auszurichten, ohne dass diese Info von Pin1 existiert. Weiters dass aus diesen Infos eine ID generiert wird, womit dann in der DB gesucht werden kann. Von ASM gibt es ein separates manuelles Calibrationspad für die Offlineprogrammierung, heisst "SIPLACE Vision Teach Station" und ist ohne Bauteilhöhensensor. Ein Vorteil von so einem Pod in der PnP ist zweifelsfrei die zusätzlichte Beleuchtung welche man da haben kann. Dies ermöglicht auch bei ungünstiger Beleuchtung problemlos Bauteile anhand der Beschriftung sowie Pin1Hole einmalig zwecks Verifikation der korrekten Bauteilzuführung und der korrekten Orientation.
Ich will mittelfristig die Firmware für den Mechatronika Controller neu schreiben (die Controller Hardware kann ruhig bleiben), und den Bestückungskopf durch eine 4x Matrix neu ersetzen. Die Kompatibilität zur Mechatronika Applikation soll soweit für Vergleichszwecke erst mal bestehen bleiben. Effektiv macht die Firmware ja nicht viel da die Delta Servos im Hintergrund ja komplette Positionierungsbefehle annehmen. Was bleibt sind die Motoren für die Z Achse und die Rotierung, Vakuum-Switch Da sind noch so einige Schritte notwendig. Habe gesehen das der Bestückungskopf wohl auch Druckluft hat, mit einem zusätzlichen Switch könnte man die Bauteile dann auch von der Nadel blasen, hatte letzte Woche bei einem Projekt ein leicht magnetisches Bauteil und mit Standard-Parameter blieb es lieber auf der Nadel als in der Lötpaste. Eine Bestückungsmaschine die nicht mal selber abwerfen kann ist ja schon ein Qualitätsmerkmal, aber man konnte ja wieder ein Bauteil sparen. Mechatronika hat's ja nicht notwendig sich mit solchen Themen auseinanderzusetzen :-) Sie sehen lieber kommentarlos deren Maschine komplett analysiert von einem Kunden online der dann doch eine Menge Leiterplatten bestückt und die Dinge so optimiert haben möchte wie es nur geht. Was fehlt denn Deiner Meinung nach in der DB? Die DB & Verwendung finde ich schon ziemlich komfortabel, fehlt ja nur noch das Tablet. Ob ich zukünftig Packages verwenden kann wird sich zeigen, bei Mechatronika gab's bei der Bilderkennung immer wieder Probleme wenn die Bauteile einen unterschiedlichen Farbton hatten (Kondensatoren...). Daher hab ich in unserer Applikation gleich alles per Component gemacht und man kann diese halt über nen Button kopieren und dann die anderen Parameter abändern. Ich bin auch nicht festgelegt das mittelfristig irgendwas so bleiben wird wie ich es derzeit in die Applikation eingebaut habe, was sich bewährt wird bleiben der Rest fliegt raus. Die Maschine läuft produktiv, daher muss ich mit den einzelnen Schritten etwas vorsichtig sein.
Chris, spuckt deine Bestückungsmaschine etwas Luft beim Niedersetzen des Bauteils aus, oder bist du auf die Haftung der Paste angewiesen?
Daniel schrieb: > Was fehlt denn Deiner Meinung nach in der DB? Die DB & Verwendung finde > ich schon ziemlich komfortabel, fehlt ja nur noch das Tablet. > Vieles, oder die unsauberen Dinger welche die Datenbank kompliziert macht. Offsets, alternative Parts, Authorisation (Nur diese Parts sind für project XY genehmigt)... Ein kleines Unterbeispiel für Offsets. Einige Bauelemente haben pickup und Placements offsets. Ein Beispiel ist to252 dpack. Da beim layout Programm der placementcenter aus den Mittelpunkten der Pins errechnet wird ist dies ein anderer als von den Outlines der Pin des Vision. Diesen Offset will man nicht jedes mal korrigieren sondern einfach einmal im Master Package des to252 und dann wird er automatisch berücksichtigt. > Ob ich zukünftig Packages verwenden kann wird sich zeigen, bei > Mechatronika gab's bei der Bilderkennung immer wieder Probleme wenn die > Bauteile einen unterschiedlichen Farbton hatten (Kondensatoren...). > Daher hab ich in unserer Applikation gleich alles per Component gemacht > und man kann diese halt über nen Button kopieren und dann die anderen > Parameter abändern. > Packages ist mehr für die Datenbank und um ein hierarchische DB zu haben. Dies ermöglicht z.b. den Automatischen Import von Centeroid Daten wo nur Kompatible Packages und Parts angeboten werden und man nicht das Bauteil aus den 1000en suchen muss. Dazu braucht man nur den stencil Gerber layer oder ein Scan der Platine. > Ich bin auch nicht festgelegt das mittelfristig irgendwas so bleiben > wird wie ich es derzeit in die Applikation eingebaut habe, was sich > bewährt wird bleiben der Rest fliegt raus. > > Die Maschine läuft produktiv, daher muss ich mit den einzelnenSchritten > etwas vorsichtig sein. Naia, schon bei den Trays wirst du merken dass einiges nicht mehr so funktionieren kann, ausser du verwendet die OpenPnP Methode welche aber horrende setupzeiten benötigt. Dies ist deshalb so da openpnp kleine Maschinen sind welche meistens keine Jedec trays laden können. Deshalb nutzen sie auch nicht die Vorteile des Jedec Standards. Was definitiv fehlt sind Grundlegende Sachen in der Part DB. Z.b. ob ein Part polarisiert ist, ob das Part in den PNP Koordinaten/rules ist oder ob die Orientation vom Feeder bestimmt ist. Wenn man die Orientation checkt, dann will man nicht jeden Widerstand kontrolliere, wo die Rotation ja egal ist. Auch hier sind Packages Vorteilhaft. Passt ein Packages kann man generell davon ausgehen dass alle Parts desselben Packages auch richtig sind.
Daniel schrieb: > Chris, spuckt deine Bestückungsmaschine etwas Luft beim > Niedersetzen des Bauteils aus, oder bist du auf die Haftung der Paste > angewiesen? Ja, sonst dauert es ja ewig das Vacuum abzubauen ind man könnte keine Nozzles mit Dichtingsringen verwenden oder th LEDs bestücken.
Hat hier eigentlich noch wer eine Mechatronika mit Delta Motoren? Es ist sehr wahrscheinlich, bzw. ich vermute dass alle Mechatronika Maschinen mit diesen Motoren driften und über einen gewissen Zeitraum nicht genau sind. Man sieht das üblicherweise eher nicht da die Windows Software keine Vergleiche bietet. Beim Reflow Prozess werden die Bauteile üblicherweise auch wieder gleichgerückt. Durch das neu-Ausmessen mit neuen Passermarken wird die Leiterplatte wenigstens korrigiert - aber die Feeder Positionen halt nicht. Das Upgrade Angebot welches wir damals angenommen haben sah so aus: - AC servo drives in X and Y axes, cover significantly faster work of machine and significantly reduce noise - new linear encoders in X and Y axes - new Z axis drive with new control unit and new features - higher (doubled) resolution of theta axis - new and better quality of flying cameras - new stage camera - new targeting camera with new white illuminator - new electronic control system - new supply unit - upgraded software - some additional improvements in existing mechanical units Also mit neuen Encodern und neuen Motoren dürfte es überhaupt keine Probleme in X/Y Richtung geben. Mechatronika supportet uns ja nicht mehr was in dem Fall eindeutig Betrug ist da ihr Produkt nach dem Upgrade nie ordentlich funktionierte. Auch mit unserer Software driftet die Maschine langsam ab, wenn man alle paar hundert Bauteile kurz die Position mit einer Referenzmarke abgleicht kann man's wenigstens korrigieren ohne die Ursprungskoordinaten der Bauteile oder der Leiterplatte verändern zu müssen (wir haben einen QR Code neben die Table-Kamera geklebt um die Position dort zu überprüfen und zu korrigieren).
Wir haben die Feeder noch etwas genauer überprüft, die Platte für die Zuführung scheint sehr viel Spiel zu haben. Wir haben bei den Feedern damals noch ein Service für 2500 EUR durchführen lassen, und dass ist das was wir damals von Mechatronika zurückbekommen haben (gutes Geld für ein schlechtes Service....) Die Slots sind in eine Platte gefräst und haben ein Spiel von 0.45mm. Und da träumen die wirklich davon dass eine Maschine mit solchen Zuführungen 0201 unterstützt. Vielleicht solange ein Gurt an der Außenseite anliegt und nicht davondriftet. Unnötiger Bauteilabwurf ist damit ja schon wieder vorprogrammiert.
Ab 0201 sollte der Feeder nicht perfect sein, benutzt man dort vision pocketerkennung um die Pickupposition zu korrigieren. Auch wird oft die Option benutzt, pickup mit Rotation 0 zu verwenden, um ein runout-problem aus dem Weg zu gehen.
Zumindest kann man versuchen den Feeder an die Seite zu schieben, ich denke ich habe da einige Feeder gesehen welche z.b das Plastik etwas schräg abziehen, ein schräges abziehen zieht den Gurt schon mal an eine Seite. Ein Run-Out geht mit 0402 noch gerade so mit diesen Feedern. Dennoch halte ich ein mögliches Run-Out des Gurtes während der Laufzeit für absolut inakzeptabel, das ist nur ein schlechtes mechanisches Design.
Das mit den Bauteilgruppen ist jetzt auch komplett erledigt. Man muss nur noch SMD(0402,0603,.. die sind eine Gruppe), SOT323, SMA, "optische Zentrierung"(z.B für kleine Chipsätze die werden dadurch auch geradegedreht), etc. auswählen und keine Templatebilder mehr machen wie im Windows... SMD(0402,0603,..) eher eine Rechteck-Erkennung, welche auch die Bauteilgröße ermittelt. Eine überstehende Nozzle auf der Außenseite ist überhaupt kein Problem. Im Windows Programm werden die Bauteil-Gruppen durch erzwungene Referenzbilder organisiert, ich meinte ja solche Gruppen will ich nicht sie kosten nur unnötig Zeit und sind ineffizient (... wie das gesamte Mechatronika Bestückungsprogramm) zudem fehlt bei den Bauteilen in der Mechatronika Datenbank die Pitch Information (Bauteilvorschub). Mechatronika organisiert Bauteilgruppen so: heller 0402 Kondensator, ein anderer dunklerer 0402 Kondensator, etc. alle Varianten durchgehend, es können zwar viele in gleiche Gruppen gesteckt werden aber es gibt immer wieder ein paar Bauteile die halt etwas anders aussehen und von der Bilderkennung abgelehnt werden. Da kommt's schon mal vor das für verschiedene SOT323 auch verschiedene Gruppen angelegt werden müssen, und verschiedene Gruppen bedeuten immer dass neue Referenzbilder trainiert werden müssen. Und eine überstehende Nozzle sollte man mit einer "Don't care" Area maskieren... das brauche ich in meiner Software alles nicht, die ganzen Arbeitsschritte bei der Mechatronika Software sind nur Zeitverschwendung. Ah an Bürovorsteher, meine Maschine muss ich auch nicht abdecken um eine ordentliche Bilderkennung hinzubekommen. OpenCV sei dank. Bin ich froh nicht mehr von der ineffizienten Mechatronika Software abhängig zu sein.....
Da ich mich die letzten Tage über mit den Schrittverlusten der Nozzle bei kleinen Schritten <4° beschäftigt habe, ein paar Details wie Mechatronika Bauteile rotiert (vorab sie haben es natürlich billigstens implementiert). Waren natürlich wiedermal die Motor-Einstellungen von Mechatronika falsch. (Wohlgemerkt dass ist das was wir nach einem 10.000 EUR Upgrade zurückbekommen haben) 1.) Die Nozzles können nur 190 Grad gedreht werden 2.) Für ein Pickup bei 0° bzw 180° gibt es einen maximalen Spielraum von 10° für die Justierung (so haben die es im Windows eingebaut, hatte damals die Drehung via RS232 analysiert). 0° ... Pickup Rotation 0° After-Pickup Rotation 0° (von 190) 180° ... Pickup Rotation 0° After-Pickup Rotation 180° Durch bessere Software kann man den Spielraum zumindest auf einer Seite deutlich erhöhen, damit nur noch 180° für den 10° Spielraum übrig bleibt. Schwierig wird's eigentlich nur dann wenn ein Bauteil wirklich 180 Grad gedreht werden muss (dann muss man sich entscheiden ob man von links oder von rechts auf das Bauteil losgeht. Aktuell bearbeite ich Corner-Cases, im Fehlerfall lege ich das Bauteil dann zurück in die Tasche und versuche es erneut (Mechatronika würde hier schon wieder Bauteile abwerfen). Mechatronika bescheisst seine Kunden wirklich absolut, durch die Limitierung der Rotierung bei 190 Grad wird die Bilderkennung zum Teil ganz schön kastriert, und 0° oder 180° Bauteile kommen nicht selten vor. Sie haben sich nicht mal die Mühe gemacht eine optimale Initialrotierung zu berechnen. Anbei noch ein Bild wie eine Nozzle damals angeliefert wurde (das kostete damals auch 100 EUR), Qualität ist gleich 0 ... Der Dreck steckte in der Nozzle und wir haben den mit einem Draht rausgedrückt.
Daniel schrieb: > 0° ... Pickup Rotation 0° After-Pickup Rotation 0° (von 190) Korrektur die Bauteile werden mit 10° aufgenommen (im Text wurde es ja erwähnt dass es bei einem 0° Bauteil und bei einem 180° Bauteil nur 10° in eine Richtung als Toleranz gibt (die andere Richtung wäre dann natürlich weiterhin 180° offen). 1° entspricht 22.755... Hardware-Schritte, die Schritte gehen von 0 - 4300.
Das lässt sich feintunen P23 ist die Einheit der Rotierung, dafür muss man aber mit der Zange ran und den Vakuum Zugang zur Nozzle lockern und neu justieren. Default war bei uns 4300, neu ist jetzt 5200 (im Windows ist das Maximum 5000, unser Programm hat dort keine Restriktion und kann 5200 direkt setzen, der RS232 56.7Kbit Befehl lautet <22,5000>r (abspeichern auf dem Eeprom, Index beginnt dort bei 0), das gibt mir the jetzt 38 Grad mehr für die Korrektur der optischen Erkennung (anstatt zuvor die lächerlichen 10°), unser Programm ist für eine Korrektur bis zu <45° ausgelegt. Das Mechatronika Windows Programm zeigt dann halt an der Stelle out of range an (obwohl's wohl mit den besseren Werten arbeiten kann), aber wer den Scheiss benutzen muss den kann man ohnehin nur bemitleiden.
Wir haben die Hardware-Limitierung mit der Feile entfernt, jetzt liegen wir erst mal bei 270° (gibt uns 80 Grad mehr als Mechatronika erlaubt hätte), deren Applikation lässt ja nur Einstellungen bis 219 Grad zu (über Telnet kann man da ja noch mehr einstellen). Die Limitierung ist jetzt nur noch der Vakuum-Anschluss am Shaft (aber selbst den kann man .. werden wir noch umbauen, damit wir dort wirklich 360° Drehungen möglich sind). https://youtu.be/ko5_7DaBs7A?t=43 Dort sieht man den Vakuum Anschluss, wenn man die schwarze Alu Aufhängung daneben umdreht (es ist ein L Profil, die untere Seite vom L ist unten an der Maschine angeschraubt, nun ist der längere Shaft des L Profils an der Maschine angeschraubt) und etwas abfeilt wird die mechanische Limitierung der Rotierung komplett entfernt. Dadurch verliert die Maschine die 190 Grad Limitierung, bzw hat eine deutlich höhere Toleranz für die Bildkorrektur als nur 10° bei 180° bzw 0° gedrehten Bauteilen (gepaart mit der P23 bzw. Telnet Einstellung wie erwähnt) Nur Dilettanten bauen eine 190° Restriktierung in so eine Maschine ein... 30 years of innovation & excellence.... Finanziell sind sie sicher Gewinner, aber technisch gesehen sind die Leute bei Mechatronika Sp.J / Dariusz Pieczerak und Leslaw Gajda absolute Anfänger, die es mit ihren Produkten nicht mal in die Amateurliga schaffen (da nicht mal die OpenPNP Entwickler jemals so eine idiotische Limitierung entwickelt haben)
Die Tray Halterungen für die Maschinen die sie für 270 EUR bzw. über 200 EUR verkaufen wollen kann man sich übrigens für 1-2 EUR selber drucken oder drucken lassen. Selbst aus Alu gefertigt haben die keinen sonderlichen Wert. Schon blöd wenn man nur vom Ruf leben möchte (und den versauen verbitterte Kunden lieber nicht bevor sie so eine überteuerte Maschine wieder abstoßen wollen) und nicht von der Leistung. Ich kann mir gut vorstellen das wir für deren Distributoren mit unseren Detailinformationen über diese Produkte künftig auch noch zum Problem werden könnten (eine gesamte Review-Page wird später noch kommen)
Hier noch ein kleines Video von der modifizierten und ausgefeilten Aufhängung (hab die Stelle nach dem kurzen Clip noch etwas mehr entgratet): https://streamable.com/kso4h Der fordere Teil der Aufhängung (des umgedrehten L Profils) wäre im Normalfall das Ende der möglichen Rotation). Telnet (57.6k) Einstellung <6200,22>r = 272° Eine Nullung findet dort so oder so nicht statt, der Shaft muss aber vor dem Einschalten ganz auf die rechte Seite gestellt werden (sorry für die Hand in der Mitte des Videos... ist schon etwas spät noch n Video mach ich nicht). Ein Nachbau wird dafür sorgen dass weniger Bauteile abgeworfen werden.
Um die Belichtungsprobleme der Mechatronika MX80 bei Leiterplatten mit HASL Oberfläche genauer zu veranschaulichen anbei ein paar Bilder, und ein möglicher Workaround für die Maschine, das betrifft nun mal alle Mechatronika Maschinen, und die LED Stärke bzw. Kontrast/Helligkeit zu justieren brachte in diesem Fall auch überhaupt nichts. Mit herumgewickeltem Papier ist die Beleuchtung der Leiterplatte brauchbar. Diese Probleme treten nicht bei vergoldeten Leiterplatten auf. Auch hier hat sich Mechatronika (Dariusz und Lezlaw) geweigert eine Lösung zu erarbeiten. Ich kann nur vor denen warnen, solange man ihnen Geld nachwirft reden diese Amateure mit einem, sobald man auf den Beschiss aufmerksam wird gibt's nur noch schweigen im Walde. Dann kamen sie irgendwann mit dem Satz, dass wir eigentlich eine DIY Maschine wollen und Mechatronika keine DIY ist ... na klar dafür zahlt man 40.000 EUR (ist jetzt zwar schon einige Jahre her aber was diese Betrüger aufführen ist nicht in Ordnung). Nacharbeiten von deren Seite um die Probleme zu beheben werden ja auch abgelehnt.
hatte das falsche Bild hochgeladen, und in der Vorschau war das auch nicht ersichtlich. Anbei der Workaround wie man die Belichtung verbessert.
Also entgegen einiger Anderer hier, finde ich es einwandfrei, das Daniel die Probleme in der Mechanik, der Software und grundsätzlichen Umsetzung, sowie die Art und Weise wie man mit Kunden umgeht und mit ihnen kommuniziert –bzw. das eben nicht macht– einwandfrei. Er hat sicher genug Belege gesammelt um, im Falle eines Falles, alles zu belegen. Von daher - Thumbs Up ! Und auch meinen Respekt für die konsequente Herangehensweise bzgl. der Mechatronika.
Ja leider passt bei der Mechatronika MX80 vieles nicht. Die Genauigkeit der Maschine ist im Detail nur mäßig, das ist vor allem der Ausrichtung der Kameras und den mehr oder weniger falsch ausgewählten Linsen geschuldet (die Bauteile sind bei den Flying Kameras einfach zu klein). Das ist jetzt sehr MX80 spezifisch (da die anderen ja keine Flying Kameras haben). Eventuell ist die Windows Bauteilerkennung so langsam dass sie dort die Bauteile nur klein fotografieren. Mit OpenCV gibt's keine Probleme. Die Flying Kameras sind zudem nicht gerade mit der Staging Kamera ausgerichtet (es gibt dort wohl einen ca 1-2° Offset, und die Staging Kamera ist zudem noch 180° gedreht und 3cm zu weit im Innenraum installiert sodass wir mit unseren Leiterplatten keine 2 Trays unterbringt (im Grund. Die Bohrungen werden wir wohl innerhalb der nächsten Tage machen. Auf dem Bestückungstisch gibt es bereits Bohrungen im 6 cm Abstand ... 3cm wäre deutlich besser. Ein weiteres Thema die Nozzles, da wir ja aktuell noch mit den original Nozzles arbeiten - wir werden erst mal 30 Stück selber fertigen wenn jemand Bedarf an diversen Nozzles hat einfach melden (geplant sind 0.5mm - 0.8mm Nadeln/Kegel). Wäre bei Mechatronika ca 30*100 = 3000 EUR, das geht wirklich deutlich günstiger.
Anbei wieder mal ein paar Bilder welche die (un)Genauigkeit der Mechatronika MX80 hervorhebt. chip1/chip2 auf der Linken Flying Kamera wurde die Nozzle einfach weiter hinuntergesetzt, das Ganze Ding ist mechanisch nicht ordentlich zentriert. left_flying_camera / right_flying_camera der Chip wurde überhalb der Flying Kameras platziert. Nicht nur dass die gesamte X Achse schief montiert bei uns eingetroffen ist im Grunde ist dort alles irgendwie schief zusammengeschustert. Und da rühmen sie sich mit Angle resolution 0,05°, ja die Auflösung mag theoretisch schon passen aber dann sollte die Mechanik auch dementsprechend kalibriert von Mechatronika ausgeliefert werden, zudem die 0,05° vollkommen unrealistisch sind da der Motor für die Rotierung Schritte verliert (closed loop wurde dort wohl nicht ordentlich eingebaut ist wohl nur um dem Kunden nen Fake zu verkaufen)
Selbst wenn closed-loop nicht implementiert wurde, verliert doch ein Schrittmotor nicht einfach so Schritte. Das kann doch nur an einer grundsätzlich zu schwachen Auslegung des Motors, einem zu gering eingestelltem Motorstrom oder einer zu schwergängigen Mechanik liegen !?
Ich denke sie haben die Schritte normalisiert und diese Normalisierung bildet die Hardware einfach nicht ordentlich ab. Grob gesagt man will 0.5° fahren der Schrittmotor lässt aber nur 0.4 oder 0.6 zu, oder es könnte auch Floating Point Probleme bei der Berechnung sein. Die Closed Loop Einheit wurde wie erwähnt entweder nicht oder nicht richtig eingebaut da es zu keiner Korrektur kommt. Die Rotierung läuft von der Mechanik her flüssig es gibt dort keinen Widerstand (im ausgeschaltenen Zustand, im eingeschaltenen Zustand gibt es natürlich Haltekräfte). Die Probleme treten hauptsächlich bei kleineren Schritten auf. Das ist mir im Grunde sowieso egal, der Schrittverlust ist minimal und hat praktisch gesehen keine Auswirkung; Vom Theoretischen Standpunkt: der Schrittverlust an sich kann sich bei längeren Bestückungen wohl fortpflanzen, und dort eventuell auch Probleme bereiten (vor allem bei den normalen Maschinen welche die Aufhängung nicht so ausgefeilt haben - die Maschine könnte da unter Umständen an's mechanische Limit geraten). Wir wollen da jetzt auch bei der existierenden Implementierung nichts weiteres machen da wir den Kopf als Ganzen so schnell wie möglich durch einen mehrfach Bestückungskopf selber aktualisieren wollen. Damals meinte ich zu Mechatronika, eure Maschine ist ein einziges Bauteilgrab. Das hat ihnen nicht so gefallen :-) Keypoint ist einfach eine wirtschaftliche Konfiguration der wirklich einfachen Maschine ist von einem Laien nicht möglich da die Windows Software zu umständlich ist. Dass es nicht so sein muss zeigen wir ja mit unserer Software. Für die Abstandsmessung habe ich im übrigen ein HG-C1030 bei TME besorgt (Anlieferung in 4 Wochen), die Preise sind nach der Bestellung von 270 EUR auf 300 EUR für weitere Neubestellungen gestiegen.
Stefan . schrieb: > Irre, was für einen Einsatz ihr bei der Anpassung der Hardware zeigt. Nur deshalb da Mechatronika so dämlich war die Ansteuerung der Maschine unverschlüsselt über RS232 zu übertragen und die Kommunikation wirklich einfach ist. Die gesamte Kommunikation wird bei der Maschine via Plaintext durchgeführt (also nicht mal Hex Werte). Das Protokoll entspricht einer einfachen State-Maschine, und viele Befehle bewirken offensichtliche Bewegungen und Aktionen. Dadurch verliert Mechatronika nun den Einfluss und die Kontrolle über die Maschine. Es hat ja schon mal jemand geschrieben, solche (also wirklich solche wie Mechatronika's Maschinen) Bestückungsmaschinen sind heutzutage wirklich nichts besonderes mehr. Die ganzen Präzisionsbauteile kann man komfortabel im Internet bestellen. Vor dem Kauf der Bestückungsmaschine hatte ich keinerlei Ahnung von Mechanik (nur Software und Elektronik), das hat sich dank Mechatronika gründlichst geändert.
Daniel schrieb: > Nur deshalb da Mechatronika so dämlich war die Ansteuerung der Maschine > unverschlüsselt über RS232 zu übertragen und die Kommunikation wirklich > einfach ist. Die gesamte Kommunikation wird bei der Maschine via > Plaintext durchgeführt (also nicht mal Hex Werte). > Das Protokoll entspricht einer einfachen State-Maschine, und viele > Befehle bewirken offensichtliche Bewegungen und Aktionen. Im Gegensatz zu dem präsentierten Rest finde ich das sogar Spitze. Das (also im Inneren der Maschine selbsterklärende) Kommunikation hilft ungemein wenn man im Nachhinein (also nach Support Ende) eine gebrauchte Maschine wieder flott machen darf. 73
Hans W. schrieb: > Daniel schrieb: >> Nur deshalb da Mechatronika so dämlich war die Ansteuerung der Maschine >> unverschlüsselt über RS232 zu übertragen und die Kommunikation wirklich >> einfach ist. Die gesamte Kommunikation wird bei der Maschine via >> Plaintext durchgeführt (also nicht mal Hex Werte). >> Das Protokoll entspricht einer einfachen State-Maschine, und viele >> Befehle bewirken offensichtliche Bewegungen und Aktionen. > > Im Gegensatz zu dem präsentierten Rest finde ich das sogar Spitze. Das > (also im Inneren der Maschine selbsterklärende) Kommunikation hilft > ungemein wenn man im Nachhinein (also nach Support Ende) eine gebrauchte > Maschine wieder flott machen darf. > > 73 Ja es ist ja auch zu unserem Vorteil. Man muss sich keine Sorgen machen, die Software ist so umständlich, wer auch Bauteile umspannen muss wird damit nicht glücklich da bleibt wirklich nur noch selber Hand anzulegen. War ja auch wirklich eine Katastrophe was Mechatronika abgeliefert hat, selbst der PID Controller der Servo Motoren war falsch programmiert und ließ wie erwähnt die X Achse hin und wieder oszillieren (bei 400 Watt wackelt ne Maschine dann schon etwas, und es wirft auch alle Bauteile aus den Taschen). Noch besser als das mit dem Protokoll von Mechatronika sind die Delta Motoren, die sind wirklich gut. Man lädt die Support Software von Delta runter, geht mit dem USB Kabel an die Steuerungseinheit und lernt erst mal das Verhalten der Motoren kennen. Die Delta Controller haben auch einen Überlastungsschutz man kann da nahezu nichts zerstören. Sie bieten recht viele Einstellungsmöglichkeiten. Der Delta Controller ist via RS232 am Mechatronika Mikrocontroller angeschlossen (natürlich mit Pegelwandler). Die Koordinaten des Systems (also welche in der Software angezeigt wurden, wurden auch auf dem Delta Controller angezeigt - da wird also nur durchgeleitet. Hätte ich eine M10V/M70/MX70 dann würde ich diese sofort auf OpenPNP umstellen, die MX80 (wie wir sie haben) hat ja die Flying Cameras die braucht halt eine Eigenentwicklung.
Schade, dass Du mit Deiner Umrüstung der MX80 noch so beschäftigt bist. Ich hätte großes Interesse an einer Software für die SMT660, die die Asiaten für 15k€ anbieten. Die –laut eevblog– robuste Mechanik, in Verbindung mit Feederpreisen so um die 50 USD wäre –im Zusammenspiel mit einer intuitiven Software– eine interessante Lösung, für die ich Geld in die Hand nehmen würde. Einfach mal genug Feeder, um nicht mehr auf ein anderes Bauteil rüsten zu müssen … Es ist absehbar, das wir demnächst eine zusätzliche Maschine benötigen und die SMT660 sind mechanisch wohl gut genug um eine solide Basis zu stellen. Zudem vom Design her ausreichend simpel, um nicht alle Nase lang einen Techniker zu benötigen und preislich einfach super zu skalieren...
Hab mir gerade vorher die Feeder-Konstruktion etwas oberflächlicher aber genauer von außen angesehen, mir ist jetzt auch ganz gut klar warum die abgegriffenen Gurtabschnitte stecken bleiben.... Schlussendlich denke ich wirklich das einzig gute an dieser gesamten Maschine sind die Delta Motoren, alles andere was Mechatronika da zusammenschustert ist überteuerter Sperrmüll. Als Anfänger in der Mechanik hab ich da anscheinend mehr Ahnung als diese polnische Firma Mechatronika die schon seit über 20 Jahre solche Maschinen baut... schon sehr merkwürdig. Dinge müssen meiner Meinung nach so entwickelt und gebaut werden dass Kunden so wenig wie möglich Probleme bekommen. Jedem Kunden eine Schulung in Workarounds in Dingen die Mechatronika nicht auf die Reihe bekommt aufzwingen zu wollen ist nicht der richtige Weg.... Die Gurte können sich zwischen Maschine und Feeder-Box einkeilen und dadurch hängt dann natürlich der Bauteilvorschub, und dann wird die Bestückung wieder angehalten und der Operator muss das fixen... also der Operator muss Babysitten und die Probleme im Auge behalten. Wenn man bei den Feedern eine kleine vertikale Führung installieren würde dann würden die Gurtabschnitte wenigstens nach unten aus der Maschine rausgeführt werden... eine noch bessere Möglichkeit wäre dort Kugellager zu verwenden welche die Gurtabschnitte passend aus der Maschine führen. Bei mechatronika_crap_feeder2 sieht man das sich ein Gurt schön reingekeilt hat - und das passiert relativ leicht wenn ein neuer Gurt eingelegt....
SMT660 wird letztens mit zeitlich limitertem Programm und laut Gerüchten Firmware ausgeliefert.
Gerade auf Youtube gesehen, also geht's anderen doch nicht besser als uns damals mit Windows.... Mechatronika MX70 ... https://youtu.be/4D4ot88kaCU?t=1002 Der schaut sich den Pastendruck manuell an... da wird man ja blöd dabei... Das macht bei uns bereits unsere Software.. Und in dem angehängten Bild sieht man nicht gerade wenige abgeworfene Bauteile, ein eindeutiges Qualitätsmerkmal der Mechatronika Dinger. Einige Bauteile funktionieren halt einfach nicht mit der Maschine da die optische Erkennung im Windows fehlerhaft ist (so wie OnSemi TSSOP). Bauteil-Grab Maschinen :-)
Mal ein paar Screenshots unseres aktuellen Programms für die Mechatronika MX80. Es läuft alles auf 2 Screens, die Live Kamera läuft auf dem alten Bildschirm und auf einem großen gibt's dann die Übersicht. Panelization wird ja schon länger unterstützt, mittlerweile werden auch mehrere Panels an sich unterstützt (und da ist es auch egal ob Top oder Bottom bestückt wird, alles einstellbar). Projekte werden mit Top und Bottom Informationen abgespeichert und können auch wieder geladen werden. Einfach nur schade dass wir unser eigenes Programm schreiben mussten um all die Maschinenprobleme zu identifizieren welche die angelieferte Maschine bei uns eigentlich hatte.
Anbei noch ein paar Beispiele wie die Bauteilerkennung nun ohne Referenzbilder funktioniert, Mechatronika benötigt ja für jedes Bauteil das etwas anders aussieht ein Referenzbild. Und dort muss ja auch noch eine Don't Care Area eingetragen werden ... ich sag ja alles unnötig und nur Zeitverschwendung was Mechatronika da von den Kunden verlangt... Die Bilder kommen von der Flying Kamera. Die Top & Staging Kamera werden demnächst auch durch eine 720p(1280/720) Global Shutter Kamera ausgetauscht da die Bildstabilisierung der CVBS Kameras (bis die Interlacing Effekte weg sind) einfach zu lange dauert (80 Millisekunden um sicher zu sein). Das Laser Modul von Panasonic werde ich mir nächste Woche dann ansehen und auch die Trays damit ausmessen (welche Slots frei bzw. belegt sind). Die händische Angabe finde ich etwas blöd, und mittels der Kamera ist das auch etwas schwierig.
component_10uF_crosshair.png (im vorigen Beitrag) bei solchen Bauteilen ist man bei Mechatronika auf Gedeih und Verderb ausgeliefert. Das Bauteil beinhaltet Reflexionen - und dort traten üblicherweise die Bauteilabwürfe im Windows auf da die Reflexionen schwer in einem Template - sodass ein Template System auch Sinn machen würde - unterzubringen sind. Wie oft mir die Ferrite Beads im Windows schon auf der Nadel hängengeblieben sind... komischerweise haben wir die Probleme unter Linux alle nicht, und die Einrichtungszeit hat sich deutlich verkürzt (auch dank Hotkeys kann man schnell mal die Position der Feederslots bei der ersten Bestückung nachjustieren falls notwendig). Ich würde hier mal die Maschinenpreise von Mechatronika revidieren, gemäß der Leistung die sie erbringen: Mechatronika MX80 ... maximal 5000 EUR Mechatronika MX70 ... maximal 3000 EUR Mechatronika M10V ... maximal 800 EUR Feederblöcke jeweils nicht mehr als 800 EUR Nozzles ... 29 EUR Gewinn ... max 30 EUR. Wir sind hier weit entfernt von den geforderten Preisen von Mechatronika (z.B MX80 inkl 4 Feederblöcke ca 50.000 EUR oder den Nozzlepreisen von 100 EUR/Stück) Wer sich eine Mechatronika gebraucht kauft kann diese Preise als Referenzbeträge nehmen (und davon nochmal abziehen), da die Mechatronika Software den Wert der Maschine deutlich reduziert (sie hat keine Features und ist auch nicht komfortabel zu benutzen). Das Argument ja wenn man die Maschine einmal eingerichtet hat läuft sie ist Nonsense, so eine Maschine ist sehr leicht zu konfigurieren da sie ja fast nichts kann und eine Neu-Einrichtung (Bauteilwechsel) ist ja überhaupt nicht erwähnenswert. Wir haben Hardware sowie Software genau analysiert... sonst hätten wir wohl keine Alternative Software schreiben können. Prototypen inkl. Umspannen ist nun tatsächlich wirtschaftlich möglich, und es benötigt auch keine von Mechatronika oder sonstwem eingeschulte Person. Das ist einfach nur Beschiss & Abzocke der Kunden.
Kontakt solltest Du haben. Wir planen mittlerweile selber für die Maschinen Upgrade-Kits zusammenzustellen, wird aber wohl noch einige Monate dauern, da wir unsere Maschine ja selber noch modifizieren. Die Global Shutter Kameras sind ja auch noch im Zulauf.
> Das Laser Modul von Panasonic werde ich mir nächste Woche dann ansehen > und auch die Trays damit ausmessen (welche Slots frei bzw. belegt sind). > Die händische Angabe finde ich etwas blöd, und mittels der Kamera ist > das auch etwas schwierig. Brilliant !
Wir werden unsere Software mal bis Dezember ausgiebig testen und dann auch anderen Mechatronika Kunden anbieten (eventuell mit ner Schnittstelle damit jemand falls Interesse besteht auch OpenPNP anbinden kann). Es ist wirklich so dass die Mechatronika Bestückungs-Applikation nur sehr bedingt für die Bestückung geeignet ist, es wäre laut unseren aktuellen Erkenntnissen unmöglich gewesen unsere Produkte einwandfrei und ohne großartige Nacharbeiten mit der Original-Software zu bestücken. Auch die Maschine benötigt einige Tweaks (z.B die Flying Kameras benötigen ein anderes Objektiv um die Bauteile größer auf den Sensor zu projizieren, eine größere Auflösung des Bauteils ermöglicht eine genauere Positionskorrektur über die optische Erkennung). Wenn die Situation bei uns jetzt erst mal so bleibt wie sie mit unserer Software ist können wir damit schon mal ganz gut leben. Über Mechatronika kann ich nur den Kopf schütteln, Qualitätsarbeit ist das sicher keine. Jeder Fehler der Auftritt ist ein Fehler den der Hersteller nicht beachtet hat. Und die ganzen verworfenen Bauteile bei uns sind ein Epic Fail dieser Firma, es geht in die Tausende (von 0402, bis hin zu SOT323, zu TSSOP8 (insbesondere unserem OnSemi Liebling) die nicht hätten sein müssen.
Leider baut Mechatronika eine doch recht überschaubare Hardware. Eine Lizenz für eine portierte Version für eine SMT660 wäre mir 5.000 Euro je Installation wert. Mit reichlich Feedern wären das dann ~20 kEUR für eine vergleichsweise schnelle, leicht und preiswert skalierbare Basis. Bei USD60 pro Yamaha Nachbau-Feeder müsste man endlich nie wieder auf andere Bauteile rüsten. Nozzles kosten auch fast nichts … Mit 3 SMT660 und guter Software am Start hätte man auch ausreichen Redunzanz im Falle eines Defekts. Mit einer Juki für 100 k€ liegen wir am Boden, bis der Techniker kommt.
Das Problem ist wenn man die Maschine nicht kennt braucht es schon einige Zeit sich einzuarbeiten, das ist ja bei jeder Maschine gleich. Dass ist ja die Existenzberechtigung dieser Firmen dass sie ihre Dinge am Laufen halten. Wenn etwas bricht steht man im Grunde da (gerade da hat man halt den Vorteil bei Mechatronika (was auch wirklich der einzige Vorteil ist) dass man die 0815 Teile überall einfach nachbekommt). Von Mechatronika würde ich nichts mehr kaufen, sie haben eigentlich keine Existenzberechtigung, jedes mal als wir damals bestücken wollten ging irgendwas schief, ein paar mal haben sie draufgeschaut und dann auch Ersatzteile geschickt aber sie haben nie alles in Ordnung gebracht (und das aber wohlgemerkt nachdem die Maschine zu Mechatronika eingeschickt und aktualisiert wurde). Eine Zeit lang haben wir uns an die 5% Ausschüsse gewöhnt bis wir eines Tages einen Prototypen bestücken wollten und dort 7 von 10 Bauteilen Probleme machten... es machte micht einfach zu wütend sodass wir die Bestückungssoftware halt selber angefangen haben. Als ich die Maschine dann langsam verstanden habe und denen gesagt habe was sie zu tun haben meinten sie ja dass ich eigentlich eine DIY Maschine möchte. Schon sehr frech gegenüber dem Kunden. Prototypen werden jetzt ganz komfortabel gebaut, einfach Leertaste drücken das Bauteil wird bestückt und auch gleich angezeigt wie es bestückt wurde. Drückt man öfter Leertaste, werden einfach mehrere Bauteile hintereinander bestückt. Wenn im Programm irgendetwas benötigt wird, bauen wir's einfach hinzu und fertig. Die Software für solche Automaten sollte man aber nicht unterschätzen, auch wenn's relativ überschaubar ist es braucht einfach Zeit. So eine minderwertige Applikation wie Mechatronika sie hat wird man wohl in wenigen Wochen zusammengeklopft haben, wenn's ordentlich sein soll dauert's Monate (vor allem ein effizientes Bauteilmanagement ... das ist mindestens 25% der Codebase.
Daniel schrieb: > Das Problem ist wenn man die Maschine nicht kennt braucht es schon > einige Zeit sich einzuarbeiten, das ist ja bei jeder Maschine gleich. Bin da 100% bei Dir. Ich wollte das ja auch nur mal in den Raum werfen. Es gibt einfach nur dir üblichen Verdächtigen im Bereich von >80 k€ und z.T. hochkomplexer Mechanik. Oder eben langsames, auch nicht eben billiges von Fritsch oder ggf. sogar SmallSMT. Eine halbwegs schnelle Machine mit einer Software aus Anwenderhand wäre da schon super. > Wenn etwas bricht steht man im Grunde da (gerade da hat man halt den > Vorteil bei Mechatronika dass man die 0815 Teile überall einfach > nachbekommt. Das war es auch, was mich für die SMT660 votieren ließ (-;
"manuelles" QFN Placing: https://streamable.com/muepw Stefan . schrieb: > Eine halbwegs schnelle > Machine mit einer Software aus Anwenderhand wäre da schon super. Genau das hab ich mir bei der Mechatronika auch gedacht die haben wohl selber noch nie so richtig damit bestückt. Von Standardbauteilen Referenzbilder benötigen, die reinste Zeitverschwendung. Vorher blieb mir wieder ein Feeder stecken und einige Bauteile wurden nicht bestückt, das nacharbeiten mit der Maschine macht mit unserem Programm sogar noch spass. In dem Fehlerfall läuft die Maschine aber einfach durch - die Fehler werden alle zum Schluss behoben. Die Delta Motoren liefern eine super Genauigkeit, ich kann damit sogar 0402 übereinander stapeln (sofern sie flach sind).
Mittlerweile läuft die Maschine mit unserer Software sogar schneller als im Windows da wir X/Y bei der Bestückung nicht mehr sequentiell anfahren sondern gleichzeitig. Das hat mich schon gewundert da die auf den Youtube Videos auch schräg fahren und nicht sequenziell. Keine Ahnung ob das Murks in der aktuellen WinXP Applikation ist oder gewollt, jedenfalls läuft's super. Die ganze Woche über haben wir nun mit unserer Software bestückt und es wird immer besser, bis zum letzten Winkel ist jetzt alles reproduzierbar und logisch nachvollziehbar, und wenn's Probleme gibt wird das schnell in der Software nachgearbeitet. Jetzt nochmal die Servos tunen damit's noch etwas schneller wird und das war's dann mit der Basismaschine. So wird aus der Murksmaschine glücklicherweise doch noch was. Die Grundprobleme kamen jedenfalls daher das Mechatronika unsere Maschine falsch konfiguriert hat und wir daher bei den bestückten Leiterplatten zu Nacharbeiten gezwungen wurden - und dort halt dann auch Software-Verbesserungen verlangt haben welche wir nicht bekommen haben. Ob die Qualität unserer Maschine repräsentativ ist (also die Konfiguration) kann man also nicht wirklich sagen. Beim Support hat die Murksfirma jedenfalls kläglich versagt, was für eine Firma die ihre eigenen Produkte herstellt ein absolutes KO Kriterium ist.
https://streamable.com/t8cfl hier noch n Video, sequentielles X/Y wurde aufgehoben und fährt jetzt gleichzeitig wie auf der rechten Seite. Die Geschwindigkeit der Servos kann noch erhöht werden. Bezüglich der 0.5mm Nozzles für die 0402er Bauteile, die China Nadeln (0.8 + 0.5mm) für die Nozzles sind auch eingetroffen, jetzt muss ich noch die Drehmaschine aktivieren und den Kegel drehen. Die Nadeln werden ineinandergesteckt und verklebt - funktioniert soweit schon mal sehr gut. Ich schätze den Arbeitsaufwand für eine Nozzle ca 15-20 Minuten ein. Kosten beim Distributor 140 EUR / beim Hersteller 100 EUR. Da es jetzt nicht kritisch ist werde ich aber erst mal ein Service bei der gebrauchten alten Tisch-Drehmaschine durchführen. https://streamable.com/muepw in dem Video sieht man auch das wir die Designatoren über die Bauteile im Video zeichnen, wir werden diese dann noch anklickbar machen. Gerade wenn ein Feeder spinnt und es hängenbleibt fehlt halt n Bauteil auf der Platine. Das coolste ist einfach jede Platine fährt jetzt voll durch ohne den Operator während des Durchganges zu nerven. Was fehlt kommt zum Schluss rauf. Werde dann noch n Android Programm schreiben damit wir n Tablet in der Entwicklung aufhängen können wo der Status der Maschine angezeigt wurde. * Bauteilprobleme * Feederprobleme * Erfolgreich bestückte Bauteile * Ausstehende Bauteile * CPH * Zeitabschätzung wann eine bzw. mehrere Panels fertig sind. Wenn mehr als 3-4 Bauteile eines Feeders fehlschlagen wird der Feeder im Programm ausgeschalten und die fehlenden Bauteile werden in einer Liste gespeichert. Bloß nicht den Operator während der Hauptbestückung nerven. Einziger Grund eines Stopps der Maschine ist ein Problem mit der Nozzle bzw. fehlender Druckluft.
So Änderungen die bis Jahresende geplant sind: - Drehen der eigenen Nozzles (warte jetzt noch auf die HSS-CO Bohrer aus China), will das unbedingt selber machen da mich die kleine Drehmaschine die wir jetzt haben sehr interessiert (die größeren Änderungen werden von einem Maschinenbauer direkt durchgeführt). - Unterstützung für CL Druckluft Feeder (Yamaha Feeder). Ursprünglich wollte ich mir eigentlich noch einen Feederblock von Mechatronika kaufen, nachdem ich deren Drecks-Support kennengelernt habe will ich überhaupt nichts mehr von denen. Mir scheinen die Feederboxen nach einer Woche Stillstand zum Teil einzurasten, und man muss dort entweder neu justieren oder für den neuen Initialbetrieb einmal zusätzlich vorspulen (passiert wohl nicht bei allen Feederslots, das ist ein mechanisches Problem bei unseren Feederblöcken - man hört auch das Klacken, aber das Band springt beim ersten mal nach längerer Zeit nicht vor). Deshalb ist hier meine Wahl erst mal auf die Yamaha CL Feeder gefallen da die einfach einen soliden Eindruck machen. Dadurch das wir die Software ja jetzt selber haben kann ich entweder das native Interface von Mechatronika verwenden oder unsere Bypassleitung verwenden :-) - Laser Distanzmodul Die Software hat jetzt auch die Option - Select Component by Value, und ich kann allen Teilen dann auf einmal Alternativteile zuordnen. Multiselect ist eine enorme Zeitersparnis. Bei diversen Prototypen plane ich z.B als Begrenzung 1 Ohm Widerstände ein um Fehler einfacher eindämmen zu können, nun kann ich da dann einfach andere Bauteile auf einmal assignen - sehr komfortabel oder wenn ich mal ein Bauteil ausgelassen habe. Auch kann ich sofort bestücken wenn nicht alle Bauteile eingespannt sind, dann ignoriert die Software die jeweiligen Zeilen einfach - und ich muss hier nicht alle Bauteile die nicht eingespannt sind explizit abwählen damit ich mit der Bestückung beginnen kann - hier wieder für Prototypen ist das jetzt wirklich gut. Die Kernberechnungen werden alle metrisch durchgeführt, der Kern des eigenen Programms ist sehr gut durchdacht und darauf kann ich einfach weitere Features aufbauen. Pixel<->Metrisch (Kernberechnungen)<->Hardware-Schritte für den Servo. Da kann ich wirklich nur sagen die Mechatronika Bestückungs-Software ist unterentwickelter Kinderkrams... die spielen auf hohem Niveau haben aber genau überhaupt nichts zu bieten. Vom Bauteilmanagement bis hin zur Bestückung läuft jetzt alles rund in unserem Labor. Mittlerweile geht's bei unserer Software ja nur um Verbesserungen und um zu sehen welche Features sich bei uns im Betrieb bewähren und welche besser rausfallen da sie nicht effizient genug umgesetzt wurden.
@Daniel Wenn Du Interesse an der Adaption einer SMT660 hat, schick' mir doch mal ne PM. Gruß, Stefan
Stefan . schrieb: > @Daniel > Wenn Du Interesse an der Adaption einer SMT660 hat, schick' mir doch mal > ne PM. > > Gruß, Stefan du kannst ja ne Nachricht an danieldx schicken. Details kann man im Grunde erst nennen wenn man so eine Maschine vor sich hat und sich alle Teile genau angesehen hat.
Mittlerweile sind die Type & Status Felder auch vollständig integriert (der Failed status wurde nur zum Testen manuell gesetzt). Die Idee wurde von OpenPNP übernommen (wie das dort aber im Detail umgesetzt wurde weiß ich nicht). - Type, dort kann man Panel-bezogene Optionen (der Panel-Name ist in dem Fall Default "Top") einstellen (Ignorieren des Bauteils, Fiducial oder Pick and Place); Multipanel werden ja auch unterstützt. - Status, Pending (noch nicht bestückt); Failed (fehlgeschlagen bei der Bestückung/wird dort nur als Referenz angezeigt); Ignore (auslassen des Bauteils auf dem ausgewählten PCB im Panel/Array). Dort kann man die fehlgeschlagenen Teile auch auf Pending zurücksetzen (und die bereits bestückten unberührt lassen) um sie dann dediziert über Run auf einmal zu bestücken; Sprich die Maschine bestückt erst mal alles durch was geht, wenn ein Fehler auftritt oder ein Bauteil gerade nicht verfügbar ist dann können die zum Schluss einfach nachbestückt werden. Falls jemand der so eine Mechatronika hat mal einen Screenshot der "Default Motion Dynamics" machen kann bitte hier anfügen. Hab mal einen Screenshot unserer "originalen" Einstellungen angefügt (die sind mir aber auch n bißchen zu langsam). Mittlerweile startet der WinXP Rechner auch nicht mehr, also nochmal Glück gehabt dass wir unsere eigene Software verwenden können.
Es wäre nach wie vor nicht schlecht wenn jemand seine "Motion Dynamics" Einstellung hier hochladen könnte. ---- Habe mittlerweile auch einen Timer in unsere Applikation eingebaut. Die Mechatronika MX80 schafft bei einer Bestückung ca. 1600 BT/Stunde (mit Vision). Mit dieser Bestückungsgeschwindigkeit ist sie bereits schneller als mit der Applikation von Mechatronika. Die haben beim Upgrade ja einfach die Motoren ausgetauscht und überhaupt nicht konfiguriert. Das ist ca. die Hälfte langsamer wie auf ihrer Website angegeben. Die Bestückungsdauer variiert je nach Feederposition zwischen 1.5 - 2.5 Sekunden. Das Programm ist jetzt zu 99% dort wo ich es eigentlich von Mechatronika erwartet hätte. Einfach nur in Ruhe bestücken ohne sich jedes mal über irgendwelche sinnlose Fehler aufzuregen. Durch das Component Tracking weiß man auch sofort wo ein Fehler auftritt (gibt's in der Software von Mechatronika ja auch nicht). Wahrscheinlich ist eine Bestückung von 0402/0201 über die stationäre Kamera vorgesehen, dann wäre die Bestückungsleistung aber wohl eher 800 BT/Stunde. Die Objektive der Flying Kamera passen auch nicht wirklich, die 0402/0201 Bauteile sind im Grunde eigentlich etwas zu klein.
1600 cph sind für den Hintern - und auch das nur mit der ungenauen, weil wackelnden, Mitlaufkamera. Meine M70 macht etwas mehr als 1400 cph, davon sind 2% (TQFP und Steckverbinder) im Langsamlauf. Zusammengefasst: die MX80 ist gute 100 kg schwerer als die M70, nimmt etwas mehr Platz weg und läuft bei Teilen kleiner 0603 grottig oder wahlweise schnarchlangsam. Offenbar war die M70 die letzte gut funktionierende Maschine in der Geschichte der Herstellerfirma. Im Anhang noch ein Screenshot; ich mag dich nicht leiden sehen, du Giftpilz.
Danke für den Screenshot. Ich habe die D Einstellungen für den vertikalen Aktuator mal deutlich hochgedreht und siehe da es geht wirklich deutlich schneller; Ich bin da aber noch am Testen. Bei uns hat Mechatronika am Anfang gesagt dass wir Natural für die optische Erkennung verwenden sollen, bei Dir sehe ich dort "Uniform" was auch immer das macht. Wir können mit der MX80 mittlerweile 0402 bestücken, 0201 würde ich mir mit den Flying Kameras aber nicht zutrauen (solche Bauteile haben wir zum Glück aber auch nicht). Mit den stationären Kameras sollte das aber funktionieren. Ich melde mich dann wieder wenn's bei uns weitergeht, das sind die nächsten Schritte: - Bauteile für die 20pos Single-Feeder-Bank sind noch im Zulauf (die Feederbänke sind dann kompatibel zu den Mechatronika Feedern und könnten auch im Windows verwendet werden, eine 20er Position wird wie erwähnt als 2 Blöcke abgebildet). Wenn jemand an einer pneumatischen CL-Einzelfeeder-Feederbank interessiert ist einfach melden; Bei mehreren CL-Feeder Bestellungen lässt sich sicher was am Preis machen. - Das Kamerasystem für die Flying Kameras will ich dann auch noch austauschen damit die Software nicht so lange für die Bildstabilisierung warten muss.
> bei Dir sehe ich dort "Uniform" was auch immer das macht. Keine Ahnung. Es gibt nur die Möglichkeiten "Uniform" und "Low Pass". Das wird wohl original so von der Euresys-SW durchgereicht werden. Eine Beschreibung der Euresys-Software hätte der Maschine gutgetan. > Ich bin da aber noch am Testen. Die Testergebnisse würden mich interessieren. Vllt kann ich die Maschine noch eine Kleinigkeit schneller machen.
Bürovorsteher schrieb: > ich mag dich nicht leiden sehen, du > Giftpilz. Mensch, wer hätte gedacht das Ihr Euch mal zusammenrauft ;-) +1
3 Feederblöcke sind ab August verfügbar (einen behalten wir). 2x16 8mm 1x14 (denke ich) überwiegend 8mm mit ein paar 12mm Slots Bei Interesse PN, die Feeder wurden 2016 von Mechatronika gewartet (so ein komischer Sticker ist in den Feedern drauf der das bestätigt) und wurden nur moderat verwendet da wir die Maschine ja on/off reverse engineered haben und mittlerweile sowieso nur noch mit unserer Software bestücken. Wir steigen wie erwähnt auf pneumatische Single-Feeder um welche das Setup der Maschine deutlich verbessern, auch passen dadurch mehr Feeder in die Maschine, anstatt 16x8 schaffen wir damit 20x8.
Habe hier noch ein Foto von den Angeboten (Stand 2014) https://snipboard.io/sGyDvc.jpg Bei den Feedern wurden 2016 ein Service (>2500 EUR) durchgeführt. https://snipboard.io/AcqM4k.jpg Preisvorstellung: 1800E pro Feederbox (8x16 Mxx-12) (excl.) 1700E für die 8-12-16-a Mxx-11 Version. (excl.) Verbaut sind in den Feedern größere Sanyo Stepper Motoren, im Allgemeinen verwenden sie eigentlich für alle Dinge Bauteile von bekannten Firmen (Beim Vakuum Modul z.B Festo, Ersatzteile sind also leicht zu haben). Verkauf aus Deutschland mit Umsatzsteuer oder aus dem Ausland ohne Umsatzsteuer mit Firmenrechnung möglich. ---- Sollte jemand an pneumatischen Einzelfeedern für die Mechatronika Maschinen interessiert sein für 3200 EUR könnte ich solche Sets zusammenstellen (die Einzelfeeder sind flexibel & kompatibel). Die Maschine müsste etwas angebohrt werden um eine Halterung zu installieren. Ein 20er Block benötigt so viel Platz wie ein Mechatronika 16er Block und wird im System als 2 Feederblöcke dargestellt 16 + 4 (jede Splittung möglich und alle Einzelfeeder mischbar). Werde aber erst im August wieder damit weitermachen. Das Service ist auch denkbar einfach, da man überall rankommt und die Teile einfach austauschen kann.
Hier noch eine Aufschlüsselung was bei den Feedern 2016 gemacht wurde: ---- After the total inspection of your feeders the situation is as follows: 1. the first feeder cassettes in the standard version has to be upgraded in the full range, i.e.: - new control unit, - new stepper motors (this gives faster advancing of tape), - new clutches components, - new belt, - extra "white" anti friction reels, - new springs and holder for them, - total adjustment price for that feeder: 990,- EUR 2. the second feeder cassettes in the standard version has to be upgraded as follows: - new firmware - total adjustment price for that feeder: 180,- EUR 3. the two feeder cassettes in the M80 version have to be upgraded as follows: - firmware upgrade of control unit, - new stepper motors (this gives faster advancing of tape), - new clutches components, - new belt, - new springs and holder for them, - total adjustment price for that feeder: 690,- EUR each (totally 1 380,- EUR) The total cost of the upgrade of these four feeder cassettes is: 2 550,- EUR Please confirm, that you accept and then we will send you the Invoice Proforma. ---- (wiegesagt die 3 oben erwähnten Kassetten stehen zum Verkauf).
Da mich einige angeschrieben haben und gefragt haben wie das mit Single-Feedern aussieht... (das Foto ist etwas älter als wir den Adapter reingebaut haben, Druckluft war da noch nicht dran). Werde das später (inkl. Controller) noch genau dokumentieren.. Bin zur Zeit mit anderen Dingen beschäftigt.
Ein kleines Update bezüglich Feeder: Mechatronika Feeder haben zum Teil erhebliche Probleme Plastik-Tapes einzuziehen. Das Tape spult nach dem eigentlichen Einzug immer noch etwas weiter (an der Stelle wo die Software bereits erwartet dass das Tape eine fixe Position hat). Das kann soweit gehen dass sich der gesamte Feeder-Block Mechanismus verkeilt und sogar andere Tapes in den Boxen beeinflusst. Jeder Block der Plastikfeeder beinhaltet hat bei uns früher oder später irgendwo Probleme. Leider konnte ich da kein Video machen, aber ich hab mal Bilder angehängt (bevor ich die Fotos gemacht habe hatte sich das Tape bereits mindestens 0.2mm bewegt) Ich schätze nach dem Tape-Forwarding fährt das Tape immer noch 0.1mm/Sek weiter bis es irgendwann stehen bleibt. Der Skew beträgt bis zu 1mm. Der Mechanismus funktioniert wie schon mal erwähnt über einen Pin (welcher durch ein Solenoid in das Loch des Gurtes getrieben wird). Die Pins sind auf einer Platte montiert welche über einen Stepper Motor nach Vorne geschoben wird. Der Rückschub funktioniert jedoch über die Schwerkraft. Wenn es da zu Verkeilungen kommt funktionieren kann es sein dass auf einmal 14-16 Feeder Lanes nicht mehr ordentlich funktionieren. Das wäre der worst case den wir auch schon mal hatten. Wenn man's weiß gut. Mechatronika's Antwort hierbei: wir haben den Feeder durch das Reverse Engineering verstellt. Na klar ein mechanisches verkeilen durch Software-Updates was anderes würde ich von der Firma nicht erwarten. Wir haben die Feeder nicht angerührt. Die denken wirklich sie können Bestückungsmaschinen bauen .... sie würden auch niemals im Detail auf Probleme eingehen sondern wälzen dies nur auf den Kunden ab. Aber ein Beispiel was ich mir als Kunde erwartet hätte: Antwort: Leider gibt es tatsächlich Probleme mit Plastik-Tapes, sie müssen das Plastik-Tape leider vorerst in der Maschine aufspannen unsere Techniker werden sich das Problem etwas genauer anschauen (aber so etwas bekommt man von Mechatronika sicher nicht zu hören, diese Amateure beschuldigen nur). Als Kunde würde ich sagen: in Ordnung, gebt mir bitte Bescheid wenn ihr eine Lösung habt. Bei Mechatronika ist man aber nur am Fluchen bis man's selber durch eine mechanische Änderung bei der Maschine repariert. Die Plastik-Tapes sind bei uns jetzt alle in den pneumatischen CL-Feeder Einzelfeedern (welche auch erheblich günstiger sind als die Mechatronika Feeder), diese haben das Problem nicht. Während der Bewährungszeit gab es vereinzelt Probleme mit der Feder (wirklich Feder/engl. Spring) welche den Plastik-Schutz der Tapes einklemmt und abzieht. Das ist jetzt soweit aber nichts schlimmeres. Von der Positionierungsgenauigkeit her sind selbst die billigsten CL-Feeder für 0402 ausreichend (für 0201 reichen die billigsten wohl eher nicht aus) Anbei auch ein Foto des CL-Feeders. Richtig gut ist dass man die Feeder jetzt rausnehmen kann und einfach umhängen, das dauert keine 30 Sekunden, auch sind die Bauteile immer an der gleichen Stelle. Das Fazit ist schon mal dass die CL-Feeder den Mechatronika Feederboxen deutlich überlegen sind. Die CL-Feeder"Box" hängt bei uns an der Front der Maschine. Es gibt ja einige elektronische CL-Feeder, die ganzen Feeder-Nachbauten verwenden ja in etwa das gleiche Design, wenn nicht sogar die Stepper Motoren des gleichen Herstellers in China.
:
Bearbeitet durch User
Hier noch eine genauere Überlegung warum diverse Plastik-Tapes nicht mit Mechatronika Feedern funktionieren: - die Plastik Tapes sind deutlich dünner als die Paper-Tapes - Die Klappe auf der Oberseite der Mechatronika Feeder hat den Zweck den Gurt nach unten zu drücken und würde einen zusätzlichen Buffer benötigen damit problematische Plastik-Tapes auch einen Halt haben. Das betrifft einige Plastik Tapes aber wohl nicht alle. Wenn die Situation eintrifft dass man mehrere solche problematischen Tapes in einer Feeder Bank hat kann man den gesamten Block vergessen da es sich dann richtig verkeilt. Was für ein Amateurdesign... Diese Feeder werden in Deutschland für 3000 EUR angeboten. 2 Stepper Motoren, ein paar Solenoids für 187 EUR/Lane .. Gewinn 2600 EUR. Für 130 USD bekommt man bereits elektronische CL-Feeder (wo dann jeder Slot 2 Stepper Motoren hat), wenn man sie selber baut bekommt man's wohl auch billiger hin und die Qualität der Mechatronika Block-Feeder erreicht man bald mal.
> - die Plastik Tapes sind deutlich dünner als die Paper-Tapes Das ist korrekt. > - Die Klappe auf der Oberseite der Mechatronika Feeder hat den Zweck den > Gurt nach unten zu drücken Auch korrekt. > und würde einen zusätzlichen Buffer benötigen > damit problematische Plastik-Tapes auch einen Halt haben. Nein. Die Tiefe der Führungsnut ist geringer als die Dicke der Plastikkgurte plus Abdeckband. Messzange aus der Werkzeugkiste hervorkramen!
Hallo, das stimmt soweit, aber Probleme mit dem Transport von Kunststoff kann ich bestätigen, und das Massiv. Meiner Meinung nach wird das Kunststoff zu fest angepresst. Dadurch benötigt der Mechanismus für den Vorschub mehr Kraft, was bei mir regelmäßig die Bänder zerstört. Das Papier ist eben nicht so adhäsiv und gleitet besser. Korrigiert mich wenn ich da falsch liege.
Wir werden im Sommer dann ordentliche Adapterplatten für CL-Feeder Fräsen lassen, damit gibt's die Probleme überhaupt nicht. Unser Feeder Controller ist kompatibel zu dem RS232 Stecker (dort ist natürlich kein Uart sondern ein eigenes Protokoll plus 30Volt). Mechatronika's Antwort: ---- Feeder Eeprom settings can be changed remotely by the machine software (as well as delta servo settings) so it is possible that you changed it incidently it during yours reverse engineering works. And the last comment: for the first long period after the upgrade machine was fine, only the software was shitty as you wrote. You started yours reverse engineering and now machine is rubbish... ---- Sehr lösungswillig sind die Jungs nicht. Wir haben kein Problem mit der Maschine da wir die Probleme ja alle identifiziert haben und selber repariert haben.
Erster Versuch zur Abhilfe: Vorschub auf Slow.
Zweiter Versuch: schmalen Papierstreifen unter das Andruckblech neben
dem Gurt auf der Seite der Transportlochung klemmen.
> Das Papier ist eben nicht so adhäsiv und gleitet besser.
Für die Unterseite stimmt das offenbar.
Bei scharfer Beobachtung stellen wir aber fest, dass das Abdeckband bei
Papp- und Plastikgurten offenbar das gleiche Material ist und das
Ausreißen der Transportlöcher durch die Gurteigenschaften verursacht
werden könnte.
Anmerkung: das mit dem Papierstreifen muss ich lediglich bei Dioden BAS40-06 von Nexperia machen. Alle anderen Plastikkurte laufen normal.
Und damit (0402er) sind wir schon zufrieden. Nicht mal das gab's vorher zuverlässig. Zeig mal was besseres falls möglich (damit ich einen Vergleich habe). Ich schätze es gibt mehrere Firmware Bugs in der MX80 die man durch diverse Vorgehensweisen triggern kann.
@Daniel Sind die Teile ohne Probleme lötbar (Grabsteinbildung)? Die Pads sind teilweise recht groß.
Hier noch ein aktueller Screenshot unserer Applikation für den MX80er Automaten. pneumatische CL-Einzelfeeder sind als Blockfeeder integriert (dort aber jetzt nicht sichtbar). Das Programm hat all unsere Wünsche integriert. Seit der ersten Version hat sich sehr viel getan. Beitrag "Re: Mechatronika M80"
:
Bearbeitet durch User