Cricut Explore Air 2

Aus der Mikrocontroller.net Artikelsammlung, mit Beiträgen verschiedener Autoren (siehe Versionsgeschichte)
Wechseln zu: Navigation, Suche

von minifloat

In diesem Projekt geht es um einen Schneidplotter Cricut Explore Air 2 und wie man den mit eigenem Controller bedient.

Einleitung

Die Firma Cricut deaktiviert Schneidplotter, nachdem innerhalb der Garantiezeit irgendein - sei es noch so kleiner - Defekt aufgetreten ist. Daraufhin bekommt der Eigentümer (?) der deaktivierten Maschine, auf Anforderung und unter Herausgabe der Seriennummer der Maschine, eine neue zugeschickt.

Soweit abzusehen, gibt es keine Software außer der Cricut-hauseigenen, mit der sich die Maschine bespaßen lässt. Außerdem telefoniert die Software nach Hause, um festzustellen, ob die an einen Rechner angeschlossene oder mit Bluetooth verbundene Maschine nicht deaktiviert ist.

So kommt es, dass auf Kleinanzeigenportalen mechanisch eigentlich intakte Maschinen zum kleinen Preis auftauchen. Um so eine geht es hier.

Zunächst wird das vorliegende Exemplar analysiert. Ziel ist, die Mechanik mit einer eigenen Elektronik zu bedienen.

Zerlegen

Beim Zerlegen hat mir dieses Cricut Explore Air 2 Disassembly, How to tear down. Youtube-Video geholfen.

Es empfiehlt sich,

  • nicht ganz so rabiat, wie der Kerl im Video, mit den Teilen umzugehen
  • aufzuschreiben oder zu markieren, wo welche Schrauben hingehören

(noch ist unbekannt, was alles wieder direkt benutzt werden kann)

Komponenten

Hauptplatine - ICs

Cricut Explore Air 2 Hauptplatine - mit Hinweisen auf ICs und Schnittstellen
Cricut Explore Air 2 Hauptplatine
# Uxxx Bezeichnung Case marking Hersteller Bauteil
1 U900 Schaltregler 05XVT L285B TI LMR12015XSD/NOPB
2 U901 Chargepump DCDC TPS60131 02T AKJF TI TPS60131
3 U700 Motortreiber 4954LPT 2027 777U Allegro 4954LPT
4 U1 Haupt-CPU FJ0931 2034CTT Microchip PIC32MZ series 64pin TQFP (?) [1]
5a 5b U600 U601 Stepper-Treiber A4985 2026 321L Allegro A4985
6 U100 Schmitt-Trigger LVC14A TI SN74LVC14A [3]
7 U101 Encoder-CPU LF0362 2029227 Microchip PIC16F688 (?) [2]
8 U800 BT-Modul RN4678 Microchip RN4678
9 U801 ??? 490 3959 2017 Microchip (?) PIC12F629/675 DFN (?) [4]
n.p. U400 -- -- -- --

Anmerkungen
[1] zu U1. Die Pinbelegung, wo der USB und Versorgung angeschlossen ist, hat den Hinweis gegeben, dass es ein PIC32MZ sein müsste. Programmierung des PIC32 werde ich mir jetzt nicht reinziehen, zumal die Kommunikation zum U101 unbekannt ist. Normaler Betrieb der Maschine kann nicht untersucht werden - sie ist deaktiviert.
[2] zu U101. Der U1 hat offensichtlich keine Timer, die Encoderbetrieb unterstützen. Außerdem schient der U1 bereits mit Motion Control, Kommunikation usw. zu stark ausgelastet zu sein, als selber per externen Interrupts die Encoder einzulesen. So musste dem U1 der U101 beiseite gestellt werden. Wieder mal hat die typisch PIC Pinbelegung Pin1=VCC Pin14=GND den Hinweis gegben, dass es ein PIC16 sein müsste.
[3] zu U100. Die Signale der Encoder an den X- und Y-Motoren (siehe später) werden mit dem Schmitt-Trigger aufbereitet - dieses Vorgehen kann in die eigene Elektronik übernommen werden.
[4] Bei dem Teil bin ich mir nicht sicher. Irgendwie Hängt das Teil aber teils am BT-Modul U800 als auch am Hauptprozessor U1. Funktion bzw. Aufgabe in dem System ist unklar.

Hauptplatine - Schnittstellen

Cricut Explore Air 2 Hauptplatine - mit Hinweisen auf ICs und Schnittstellen
Cricut Explore Air 2 Hauptplatine
# Jxxx Pxxx Pins Bezeichnung
18V J900 2 Stromversorgung 18V
USB J2 4+s USB-A
A P700 4 DC-Motoren X+Y
B J400 14 X-Schlitten
C J300 10 Data Cartridge (Rechts)
D P100 8 Encoder X+Y
E J200 17  Bedienpanel (Links)
-- P101 6 ICSP Encoder-CPU U101 (?)
-- P6 6 (?)
-- P301 6 (?)
-- P800 8 JTAG Haupt-CPU U1 (?)

Der Versuch, den FFC-Stecker "B" J400, auszuschlachten, ist gründlich Misslungen. Egal, kommt eben eigene Verkabelung rein.

Hauptplatine - P700 - DC-DC-Motoren X+Y

P700 ist wie folgt belegt:

Pin# Farbe Funktion
1 orange X-Motor +
2 grau X-Motor -
3 gelb Y-Motor +
4 rot Y-Motor -

Das Datenblatt der Motoren und die Verkabelung der Maschine hat den Hinweis gegeben.

Hauptplatine - J400 - X-Schlitten

J400 ist wie folgt belegt: (Es wird von rechts gezählt.)

HP Überschrift
1 Stift-Schrittmotor / A-Achse 2B
2 Stift-Schrittmotor / A-Achse 2A
3 Stift-Schrittmotor / A-Achse 1A
4 Stift-Schrittmotor / A-Achse 1B
5 GND
6 Stift- / A-Limit Low-Aktiv
7 X-Limit (siehe X-Schlitten)
8 +3.3V
9 Klinge- / Z-Limit Low-Aktiv
10 GND
11 Klinge-Schrittmotor / Z-Achse 2B
12 Klinge-Schrittmotor / Z-Achse 2A
13 Klinge-Schrittmotor / Z-Achse 1A
14 Klinge-Schrittmotor / Z-Achse 1B

Hauptplatine - P100 - XY-Encoder

P100 ist wie folgt belegt:

Pin# Farbe Funktion
1 blau Y-Encoder Spur A
2 rot +3.3V (von U101 geschaltet)
3 grün Y-Encoder Spur B
4 schwarz GND
5 blau X-Encoder Spur A
6 rot  +3.3V (von U101 geschaltet)
7 grün  X-Encoder Spur B
8 schwarz  GND

Motoren - X- und Y-Motoren

Auf dem X-Motor meines Exemplars ist zu lesen:

X- und Y-Motor
X- und Y-Motor

Folgendes Datenblatt gab es da auf einer taiwanesischen Shoppingseite:

X-/Y-Motor Datenblatt
X-/Y-Motor Datenblatt

( https://cf.shopee.tw/file/2d28471d3174438a242d1403fc02c3b3 )
Der ausgebaute X-Motor wurde kurz außerhab der Maschine im Leerlauf getestet.
Dazu 3,3V an Sensor-Supply (orange und weiß im Datenblatt) angelegt und mit verschiedenen Spannungen an "Motoe+-" stimuliert und die Frequenz der Encoderspuren mit dem Oszi vermessen:

Umot V f kHz v r/sec v rpm
5V 4.33kHz 45.1u/sec 2706rpm
9V 8.08kHz 84.2u/sec 5052rpm
12V 10,88kHz 133.3u/sec 6789rpm

Die Freqzenz durch die Anzahl der Pulse pro Umdrehung - 96 - geteilt ergibt die Anzahl der Umdrehungen pro Sekunde.
A- und B-Spur produzieren sehr harte Flanken, man kann annehmen, dass da bereits ein Schmitt-Trigger im Sensor verbaut ist.
Bei händischem Drehen um ca. eine Umdrehung kamen 97 Pulse heraus - die Angabe der 96 Pulse pro Umdrehung scheint also korrekt zu sein.
Der Motor verhält sich also wie im Datenblatt angegeben.
Angesichts der Tatsache, dass pro Puls 4 Flankenwechsel zu verarbeiten sind, ergibt der Einsatz eines Mikrocontrollers mit Timer, der Encodersignale verarbeiten kann, Sinn.

Motoren - A- und Z-Achse Schrittmotoren

Für Stift (nenne ich willkürlich mal A-Achse) und Schneidklinge (nenne ich mal willkürlich Z-Achse) sind kleine Schrittmotoren verbaut:

Die Motoren sind kleiner als NEMA23 - es ist nach nachmessen wohl NEMA11.
Zu dem Motor habe ich kein 100% passendes Datenblatt gefunden.
Vergleich der Abmaße und elektrischen Eigenschaften mit folgenden Referenzen...

RB 11HA2210 11HS12-0674S RB 11HA0005
Länge ~32mm 31.5mm 31.5mm
Breite 28mm 28mm 28mm
Gewicht 106g(*) 110g ??
Typ Bipolar Bipolar Hybrid
Step 1.8°(**) 1.8° ??
Unenn ?? 3.8V 12V
Inenn ?? 0.67A 0.8A
Rphase 6.0Ω(*) 5.6Ω 15Ω
Lphase 4.2mH @1kHz(*) 4.2mH ±20% @1kHz 8mH @??kHz
Mhalt ?? 60mNm (6Ncm) 35mNm

Der Motor ist dem 11HS12-0674S sehr ähnlich. Ich denke, man kann den Motoren schon gut 500mA bis 600mA gönnen.
(*) selbst gemessen bzw. gewogen
(**) Die Steps habe ich durch

  • Anlegen von 50Hz Rechtecksignal an eine Phase
  • der Achse einen Schubs geben
  • Umdrehungen in 10sec zählen

ermittelt. 1,8° Step ist eine übliche Grad-Pro-Schritt Charakteristik. Werde ich später sowieso sehen, ob ich da grob falsch liege.