Inhaltsverzeichnis - Wienecke & Sinske GmbH
Inhaltsverzeichnis - Wienecke & Sinske GmbH
Inhaltsverzeichnis - Wienecke & Sinske GmbH
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
<strong>Inhaltsverzeichnis</strong><br />
Stand: 12.10.2006<br />
Seite<br />
E - Einleitung E 1 - E 11<br />
B - Befehlssatzübersicht B 1 - B 4<br />
P - Energiepulsbetrieb P 1 - P 2<br />
W - weitere Befehle W 1 - W 2<br />
F - Fehlermeldungen F 1 - F 2<br />
A - Anhang A 1 - A 9<br />
Technische Daten siehe Rückseite
Kurzbeschreibung (Hardware)<br />
Einheit MINI MOT<br />
Die MINI MOT ist eine 1 bis 30 Achsen Motorregelung<br />
- 19“ Kassette oder Tischgehäuse<br />
- 7 TE 90 mm tief<br />
- Versorgungsspannung: 24V / 1,5A max.<br />
5V / 500mA<br />
- 4 Eingängen - Optoentkoppelt<br />
- 4 Ausgängen - Optoentkoppelt<br />
- RS 422S Ringschnittstelle<br />
mit Wandler 232/422<br />
- RS 422 Encodereingang cos; sin; Index<br />
- OPTION Analogausgang +/- 10V<br />
- PWM - Motorausgang<br />
- 3 Analogwandlereingänge 8 bit<br />
Alle Anschlüsse sind als D-Sub-Stecker ausgeführt.<br />
E 1
FRONTANSICHT MINI MOT<br />
3 HE / 7 TE 90 mm tief<br />
Rückansicht MINI MOT<br />
LED-SELEKT (grün)<br />
ENC MINI MOT I/0<br />
LED-Positioniermodus (rot)<br />
-Energieimpulsmodus (grün)<br />
422 Power 422/Power 422/Power<br />
9 pol Stecker 15 pol Stecker 15 pol Stecker 15 pol Buchse<br />
Steckerbelegung<br />
ENC<br />
Signal PIN 9pol D-Sub Buchse<br />
A+<br />
A-<br />
B+<br />
B-<br />
I-<br />
I+<br />
5V<br />
GND<br />
Schirm<br />
Außenschirm<br />
6<br />
1<br />
8<br />
3<br />
9<br />
5<br />
7<br />
2<br />
4<br />
Gehäuse<br />
E 2
422<br />
Signal PIN 9pol D-Sub-Stecker<br />
RX+<br />
RX-<br />
TX+<br />
TX-<br />
GND<br />
VCC<br />
1<br />
6<br />
2<br />
7<br />
3, 4, 8, 9<br />
5<br />
Schnittstellenparameter: BAUD RATE PARITY DATA BITS STOP BITS<br />
38400 NONE 8 1<br />
Ab Version B005 ist die Baudrate einstellbar.<br />
[0B1] � 9600 Baud [0B4] � 57600 Baud<br />
[0B2] � 19200 Baud [0B5] � 115200 Baud<br />
[0B3] � 38400 Baud<br />
Mit [0ff00] wird die Einstellung im EEPROM hinterlegt.<br />
Die neue Baudrate ist nach AUS- u. EIN-Schalten aktiv.<br />
POWER<br />
Signal PIN 15pol D-Sub-Stecker/Buchse<br />
5 V<br />
5 V<br />
NC<br />
RX+<br />
TX+<br />
NC<br />
24 V<br />
24 V<br />
GND (5 V)<br />
GND (5 V)<br />
NC<br />
RX-<br />
TX-<br />
GND ( 24 V)<br />
GND (24 V)<br />
1<br />
2<br />
3<br />
4<br />
5<br />
6<br />
7<br />
8<br />
9<br />
10<br />
11<br />
12<br />
13<br />
14<br />
15<br />
E 3
MINI MOT I/0<br />
Signal PIN 25pol D-Sub-Buchse<br />
E0 = Freigabe Joystick<br />
E1 = Limit- [FY]<br />
E2 = Limit+ [FX]<br />
E3 = NOTAUS<br />
A0 = frei<br />
A1 = frei<br />
A2 = frei<br />
A3 = NOTAUS erkannt<br />
M+<br />
M+<br />
M-<br />
M-<br />
V EXT,24V<br />
+ 24V<br />
VCC<br />
GND EXT.<br />
GND<br />
GND<br />
AN0<br />
AN1 Joystick<br />
AN2<br />
Bemerkung:<br />
1<br />
2<br />
3<br />
4<br />
14<br />
15<br />
16<br />
17<br />
18<br />
19<br />
20<br />
21<br />
9<br />
10<br />
13<br />
22<br />
23<br />
25<br />
12<br />
24<br />
11<br />
Joystick<br />
4,7K-Ohm ...10K-Ohm<br />
- Wenn keine EXTERNE I/0-Spannungsversorgung gewünscht wird,<br />
müssen PIN 9 und 10 sowie PIN 22 und 23 gebrückt werden.<br />
E 4
Kommunikation über serielle 422 - Busschnittstelle<br />
! Für den Betrieb an einer RS232 (COM) muß unser Wandler RS232/422 benutzt werden !<br />
Für die Ansteuerung der MINI MOT gibt es einen sinnvollen und übersichtlichen Befehlssatz.<br />
Das Master / Slave - Prinzip wird hierbei konsequent eingehalten, d. h. der Controler reagiert<br />
nur auf Befehle vom Rechner.<br />
Allg. Befehlsaufbau:<br />
[XBBAA........]<br />
[ - Befehlsstart<br />
X - Befehlsart<br />
BB - Befehlskennung<br />
AA... - Argumente ( wenn notwendig )<br />
] - Befehlsende<br />
Die Zusammensetzung eines Befehls für eine bestimmte Funktion entnimmt man der<br />
Befehlsübersicht ( Befehlssatzübersicht B1 ... B4 ).<br />
Es gibt Befehle ohne Argumente z. B. Positionszähler auf Null setzen.<br />
senden [1PR] --> Antwort [1PR!]<br />
Befehle mit 4-stelligem Argument (4xASCII HEX) z. B. die Geschwindigkeit für ABS. u.<br />
REL. - Positionieren auf 90 Inkremente setzen<br />
senden [1VP005A] --> pos. Antwort [1VP!]<br />
Befehle mit 8-stelligem Argument (8xASCII HEX) z. B. relativ Positionieren um 1000<br />
Counts<br />
senden [1FR000003E8] --> pos. Antwort [1FR!]<br />
E 5
Antwort auf Befehle<br />
In der Regel folgt auf einen Befehl unmittelbar eine positive oder negative Antwort.<br />
Bei einer positiven Antwort ist das 5. Zeichen immer ein „!“. Bei einer negativen Antwort<br />
steht an dieser Stelle ein „?“ gefolgt von einer Fehlernummer (siehe Fehlertabelle F1...F2).<br />
Beispiel: Positionszähler --> 0<br />
senden [1PR] --> Antwort [1PR!]<br />
Nur bei Positionierbefehlen wie [1FA..], [1FR..], [1SA..], [1SR..], [1FS..]<br />
kommt die Antwort erst, wenn der Befehl komplett abgearbeitet ist, d. h. das Ziel erreicht ist.<br />
Die Zeitdauer ist hier abhängig von der Fahrstrecke, der Geschwindigkeit und der Beschleu-<br />
nigung.<br />
! Kann zu Master / Slave - Konflikten führen !<br />
Abhilfe: [0pe] - Pollen EIN, [0pa] - Pollen AUS und [0po] - Pollen<br />
Der [0pe] - Befehl ist hier sehr hilfreich, denn alle Positionierbefehle werden danach unmittel-<br />
bar beantwortet.<br />
Beispiel: fahre Absolut nach 0<br />
senden [1FA00000000] --> Antwort [1FA>] der Befehl wird ausgeführt.<br />
Ist der Befehl nicht ausführbar, kann [1FA?0008] die unmittelbare Antwort sein.<br />
Mit [0po] kann nun zwischendurch immer wieder abgefragt werden, ob der aktuelle Befehl<br />
abgearbeitet ist.<br />
Beispiel:<br />
senden [0po] --> Antwort [0po!] noch nicht abgearbeitet.<br />
senden [0po] --> Antwort [1FA!] Ziel erreicht.<br />
Mit [0pa] wird [0pe] wieder aufgehoben.<br />
E 6
Mehrkanalbetrieb<br />
Beim Mehrkanalbetrieb können bis zu 30 MINI MOT über eine serielle 422-Busschnittstelle<br />
angesteuert werden. Jede Achse hat eine eigene Adresse (Kanalnummer). Sie ist werksseitig<br />
im EE-PROM ausfallsicher abgelegt; kann jederzeit geändert werden.<br />
Mit der Zeichenkette Contr.R AA wird nur der Kanal mit der Adresse „AA“ aktiviert.<br />
Wobei „AA“ eine Zahl in HEX-ASCII von 01 für Kanal 1, OF für Kanal 15, 81 für Kanal 16<br />
und 8F für Kanal 30 ist. Ist „AA“ = 00 sind alle Kanäle passiv.<br />
Contr.R = Chr$(18) = ^R = DC2<br />
Kanalumschaltung<br />
^RAA Kanal AA ist aktiv (LED-SELEKT auf Frontplatte ist EIN)<br />
auf diesen Befehl erfolgt keine Antwort<br />
! Die Umschaltung darf erst erfolgen, wenn aktueller Befehl<br />
komplett beantwortet ist.<br />
Beispiel : Zähler von Kanal 1 und Kanal 2 auf 0 setzen und danach Kanal 2<br />
auf Tippgeschwindigkeit von V=0010 setzen (die Zahlen-<br />
angabe ist Hexadezimal)<br />
Senden: Contr.R 01 Umschaltbefehl ohne eckige Klammer<br />
Senden: [1PR]<br />
Antwort: [1PR!] Antwort unbedingt vor Achsumschaltung abwarten<br />
Senden: Contr.R 02<br />
Senden: [1PR]<br />
Antwort: [1PR!]<br />
Senden: [1VT0010]<br />
Antwort: [1VT!]<br />
E 7
Befehlssatz<br />
^R00 - alle Achsen passiv<br />
[0ST] - Statusabfrage ( Zustandsabfrage einer Achse )<br />
senden [0ST] --> Antwort [0ST!00000000] alles OK<br />
im Fehlerfall --> Antwort [0ST?AAAAaaaa]<br />
Das Argument „AAAAaaaa“ enthält 2 Fehlercodes in HEX-ASCII<br />
wobei „AAAA“ ein Fehlercode aus der Fehlentabelle für Befehlsart 0<br />
und „aaaa“ ein Fehlercode aus der Fehlertabelle für Befehlsart 1 ist.<br />
Nach dem Abfragen wird das Statusregister wieder auf „OK“ gesetzt.<br />
[1BR] - Funktionsabbruch aktive Achse ( Software NOT - AUS )<br />
senden [1BR] --> Antwort [1BR!]<br />
auf vorher gestartete Abläufe erfolgt keine weitere Antwort.<br />
^R00[1BR] - Funktionsabbruch aller Achsen ( Software NOT - AUS )<br />
senden ^R00[1BR] --> keine Antwort<br />
[0OUaaaa] - Ausgänge setzen ( [0OUA3...A0] )<br />
wobei „a“ folgendes sein kann: = 1 --> Ausgang high (24V)<br />
= 0 --> Ausgang low (0 V)<br />
= X --> Ausgang bleibt unverändert<br />
! A3 ist reserviert für NOT-AUS erkannt. Kann nicht geändert werden.<br />
E 8
[1AP...], [1AT...], [1AE...] - Beschleunigungen<br />
Es können 3 Beschleunigungen pro Achse hinterlegt werden.<br />
[1APAAAA] - für REL.u.ABS. - Positionierung, [1ATAAAA] - für Tippbetrieb und<br />
[1AEAAAA] - Endschalterfahrt<br />
wobei AAAA = 0001...FFFF betragen darf.<br />
Mit [1aP], [1aT] und [1aE] kann der Wert zurückgelesen werden. Antwort z.B. [1aP!AAAA].<br />
[1VP...], [1VT...], [1VE...] - Geschwindigkeiten<br />
Es können 3 Geschwindigkeiten pro Achse hinterlegt werden.<br />
[1VPAAAA] - für REL.u.ABS. - Positionierung, [1VTAAAA] - für Tippbetrieb und<br />
[1VEAAAA] - Endschalterfahrt<br />
wobei AAAA = 0001...0070 betragen darf.<br />
Mit [1vP], [1vT] und [1vE] kann der Wert zurückgelesen werden. Antwort z.B. [1vP!AAAA].<br />
[1PS..], [1DP..], [1DS..] - Toleranzen<br />
[1PSaaaaaaaa] - Schleppabstand (laufender Soll/Ist Vergleich)<br />
[1DPaaaaaaaa] - Positioniertoleranz<br />
[1DSaaaaaaaa] - Positioniertoleranz für „Superpos.“<br />
Das Argument „aaaaaaaa“ ist jeweils die Toleranz in 8stellig HEX - ASCII<br />
Mit [1pS], [1dP] und [1dS] kann der Wert zurückgelesen werden. Antwort z.B. [1pS!aaaaaaaa].<br />
[1L5..], [1L6..] - Software - Endschalter<br />
Pro Achse können 2 Software -Endschalter - Positionen definiert werden.<br />
[1L5aaaaaaaa] „-“Richtung E1 und [1L6AAAAAAAA] “+“Richtung E2.<br />
Das Argument „aaaaaaaa“ und „AAAAAAAA“ ist jeweils die Position in 8stellig HEX - ASCII<br />
Beachte: es muß aaaaaaaa < AAAAAAAA sein.<br />
Mit [1l5] und [1l6] kann der Wert zurückgelesen werden. Antwort z.B. [1l5!aaaaaaaa].<br />
[1FX], [1FY] - Hardware - Endschalter<br />
[1FX] - fahre zum Hardware - Endschalter E2 (+Richtung)<br />
[1FY] - fahre zum Hardware - Endschalter E1 (-Richtung)<br />
! Software - Endschalter werden ignoriert.<br />
E 9
[1PR], [1PA], [1PP...] - Positionszähler<br />
[1PR] - Positionszähler auf Null setzen.<br />
[1PA] - Positionszählerstand abfragen.<br />
[1PPaaaaaaaa] - Positionszähler setzen.<br />
[1FA...], [1FR...], [1SA...], [1SR...], [1FS...] - Positionierbefehle<br />
Es gibt 5 Positionierbefehle, die eine unmittelbare Bewegung auslösen.<br />
[1FAaaaaaaaa] - fahre absolut, [1FRaaaaaaaa] - fahre relativ.<br />
Wobei „aaaaaaaa“ = Zielposition (8stellig HEX-ASCII).<br />
[1SAaaaaaaaa] - fahre „super“ absolut, [1SRaaaaaaaa] - fahre „super“ relativ.<br />
Wobei „aaaaaaaa“ = Verfahrbetrag (8stellig HEX-ASCII).<br />
[1FSaaaaaaaa] - fahre im „Schleichgang“ mit Tippgeschwindigkeit absolut.<br />
Wobei „aaaaaaaa“ = Zielposition (8stellig HEX-ASCII).<br />
[1TA...], [1GA], - Zielposition hinterlegen / starten<br />
[1TAaaaaaaaa] - Zielposition „aaaaaaaa“ hinterlegen.<br />
[1GA] - fahre zur Zielposition „aaaaaaaa“ ( Go absolut )<br />
[1TR...], [1GR], - Verfahrbetrag hinterlegen / starten<br />
[1TRaaaaaaaa] - Verfahrbetrag „aaaaaaaa“ hinterlegen.<br />
[1GR] - fahre relativ „aaaaaaaa“ ( Go relativ )<br />
[1IS] - Index sperren. [1IF] - freischalten, [1IA] - lesen<br />
Mit diesen Befehlen kann ein Indexsuchlauf realisiert werden.<br />
E 10
[1CJ] - Joystick EIN, [1CS] - Joystick AUS<br />
Am Stecker MINI MOT I/0 kann ein Joystick angeschlossen werden.<br />
! Befehle nur mit angeschlossenem Joystick benutzen.<br />
Max. Joystick - Geschwindigkeit ist die Tipp - Geschwindigkeitsvorgabe [1VT...].<br />
Wenn „V - Joystick“ = 1 Inkrement, dann können extrem langsame Bewegungen reasiliert<br />
werden, die sich nun aus den Energiepulsparametern [1KW..] ergeben.<br />
Die Freigabe des Joystick ist mit E0 (Eingang 1) =1 verknüpft.<br />
[1RS...] - Regelkreisparameter setzen, [1RL..] - lesen<br />
senden [1RSsszzppgg] --> Antwort (1RS!]<br />
wobei: ss - Sample Time ( standard 7C = 1ms )<br />
zz - Zero ( D )<br />
pp - Pole ( I )<br />
gg - Gain ( P )<br />
senden [1RL] --> Antwort [1RL!SSzzppgg]<br />
Hinweis: SS ist ein Momentwert<br />
E 11
Befehlssatz Übersicht<br />
Befehl Bedeutung pos. Antwort neg. Antwort<br />
Kommentar Kommentar Kommentar Kommentar<br />
allgemeine Befehle<br />
^R03<br />
Ctr.R 03 o.Chr$(18)&“03“<br />
Kanal aktivieren<br />
z.B. auf Kanal 03 umschalten<br />
[1BR]<br />
Halt<br />
aktuelle Bewegung stoppen<br />
[0ST] Status<br />
Abfragen<br />
[0VN] Versionsnummer<br />
Abfragen<br />
[0CI] Achsnummer<br />
von z.B. 05 abfragen<br />
[0CS0F] Achsnummer<br />
z.B. 0F neu vergeben<br />
[0IN] Eingänge lesen<br />
[0OU....] Ausgänge setzen<br />
[0OUA3...A0]<br />
Beschleunigungen<br />
[1APHHHH]<br />
HHHH= 4 stellig HEX<br />
[1ATHHHH]<br />
HHHH= 4 stellig HEX<br />
[1AEHHHH]<br />
HHHH= 4 stellig HEX<br />
Geschwindigkeiten<br />
[1VPHHHH]<br />
HHHH= 4 stellig HEX<br />
[1VTHHHH]<br />
HHHH= 4 stellig HEX<br />
[1VEHHHH]<br />
HHHH= 4 stellig HEX<br />
Toleranzen<br />
[1PSHHHHHHHH]<br />
HHHHHHH= 8 stellig HEX<br />
[1DPHHHHHHHH]<br />
HHHHHHHH= 8 stellig HEX<br />
[1DSHHHHHHHH]<br />
HHHHHHHH= 8 stellig HEX<br />
Beschleunigung für<br />
ABS.u.REL.Positionierung<br />
Beschleunigung für<br />
Tippbetrieb + ( E0 )<br />
Beschleunigung für<br />
Endschalterfahrt<br />
Geschwindigkeit für<br />
ABS.u.REL.Positionierung<br />
Geschwindigkeit für<br />
Tippbetrieb u. Joystick + ( E0)<br />
Geschwindigkeit für<br />
Endschalterfahrt<br />
Keine<br />
LED-SELEKT EIN<br />
[1BR!]<br />
[0ST!00000000]<br />
alles OK !<br />
[0VN!001]<br />
[0CI!05]<br />
Achse schaltet sich<br />
vom Bus<br />
[0IN!1100]<br />
E3...E0<br />
[0OU!]<br />
Keine<br />
LED-SELEKT bleibt AUS<br />
[0ST?0005001D]<br />
Fehler aufgetreten<br />
Achse muß mit ^R0F<br />
wieder aktiviert werden<br />
[1AP!] [1AP?FFFF]<br />
FFFF=Fehler 4 stellig HEX<br />
[1AT!] [1AT?FFFF]<br />
FFFF=Fehler 4 stellig HEX<br />
[1AE!] [1AE?FFFF]<br />
FFFF=Fehler 4 stellig HEX<br />
[1VP!] [1VP?FFFF)<br />
FFFF=Fehler 4 stellig HEX<br />
[1VT!] [1VT?FFFF)<br />
FFFF=Fehler 4 stellig HEX<br />
[1VE!] [1VE?FFFF)<br />
FFFF=Fehler 4 stellig HEX<br />
Schleppabstand [1PS!] [1PS?FFFF)<br />
FFFF=Fehler 4 stellig HEX<br />
Positioniertoleranz<br />
[1DP!] [1DP?FFFF)<br />
FFFF=Fehler 4 stellig HEX<br />
Positioniertoleranz für<br />
„Superpos.“<br />
B 1<br />
[1DS!] [1DS?FFFF)<br />
FFFF=Fehler 4 stellig HEX
Befehlssatz Übersicht<br />
Befehl Bedeutung pos. Antwort neg. Antwort<br />
Kommentar Kommentar Kommentar Kommentar<br />
Software-Endschalter<br />
[1L5HHHHHHHH] Software-Endschalter<br />
festlegen für Richtung „-“-->E1<br />
[1L6HHHHHHHH] Software-Endschalter<br />
festlegen für Richtung „+“-->E2<br />
Hardware-Endschalter<br />
[1FY]<br />
fahre-->Limit“-“<br />
[1FX]<br />
fahre-->Limit“+“<br />
Positionszähler<br />
[1PR]<br />
Zähler-->„0“<br />
[1PA]<br />
? aktuelle Position<br />
[1PPHHHHHHHH]<br />
HHHHHHHH = POS(8xHEX)<br />
Positionierbefehle<br />
[1FAHHHHHHHH]<br />
HHHHHHHH = POS(8xHEX)<br />
[1FRHHHHHHHH]<br />
HHHHHHHH =<br />
Betrag(8xHEX)<br />
[1SAHHHHHHHH]<br />
HHHHHHHH = POS(8xHEX)<br />
[1SRHHHHHHHH]<br />
HHHHHHHH =<br />
Betrag(8xHEX)<br />
[1FSHHHHHHHH]<br />
HHHHHHHH = POS(8xHEX)<br />
Endschalterfahrt<br />
Richtung „-“ --> E1<br />
Endschalterfahrt<br />
Richtung „+“ --> E2<br />
Positionszähler --> 0 [1PR!]<br />
Positionszähler abfragen [1PA!HHHHHHHH]<br />
HHHHHHHH=POS(8xHEX<br />
)<br />
Positionszähler setzen [1PP!]<br />
HHHHHHHH=POS(8xHEX<br />
Absolut Positionieren<br />
fahre absolut nach POSITION<br />
Relativ Positionieren<br />
fahre relativ um Betrag<br />
„Super“-ABS Positionieren<br />
Feinstpositionierung<br />
„Super“-REL Positionieren<br />
Feinstpositionierung<br />
ABS Positionieren mit V-Tip<br />
! mit Tipp-Betrieb Geschwindigkeit !<br />
Zielposition hinterlegen / starten<br />
[1TAHHHHHHHH] ABS-POS. hinterlegen<br />
HHHHHHHH = POS(8xHEX)<br />
[1GA]<br />
go absolut<br />
[1TRHHHHHHHH]<br />
HHHHHHHH =<br />
Betrag(8xHEX)<br />
[1GR]<br />
go relativ<br />
Start von [1TA...]<br />
REL-POS. hinterlegen<br />
Start von [1TR...]<br />
B 2<br />
[1L5!] [1L5?HHHH]<br />
FFFF=Fehler 4 stellig HEX<br />
[1L6!] [1L6?HHHH]<br />
FFFF=Fehler 4 stellig HEX<br />
[1FY!] [1FY?HHHH]<br />
[1FX!] [1FX?HHHH]<br />
[1PA?FFFF]<br />
FFFF=Fehler 4 stellig HEX<br />
[1PP?FFFF]<br />
FFFF=Fehler 4 stellig HEX<br />
[1FA!] [1FA?FFFF]<br />
FFFF=Fehler 4 stellig HEX<br />
[1FR!] [1FR?FFFF]<br />
FFFF=Fehler 4 stellig HEX<br />
[1SA!] [1SA?FFFF]<br />
FFFF=Fehler 4 stellig HEX<br />
[1SR!] [1SR?FFFF]<br />
FFFF=Fehler 4 stellig HEX<br />
[1FS!] [1FS?FFFF]<br />
FFFF=Fehler 4 stellig HEX<br />
[1TA!] [1TA?FFFF]<br />
FFFF=Fehler 4 stellig HEX<br />
[1GA!] [1GA?FFFF]<br />
FFFF=Fehler 4 stellig HEX<br />
[1TR!] [1TR?FFFF]<br />
FFFF=Fehler 4 stellig HEX<br />
[1GR!] [1GR?FFFF]<br />
FFFF=Fehler 4 stellig HEX
Befehlssatz Übersicht<br />
Befehl Bedeutung pos. Antwort neg. Antwort<br />
Kommentar Kommentar Kommentar Kommentar<br />
Befehle für INDEX - Fahrt<br />
[1IS] Index sperren [1IS!] [1IS?FFFF]<br />
FFFF=Fehler 4 stellig HEX<br />
[1IF] Index freischalten<br />
[1IF!] [1IF?FFFF]<br />
FFFF=Fehler 4 stellig HEX<br />
[1IA] Index lesen<br />
während Index-Fahrt<br />
Joystick<br />
[1CJ] Joystick EIN<br />
! nur mit angeschl. Joystick aktivieren<br />
!<br />
[1CS] Joystick AUS<br />
[1IA!HHHHHHHH] [1IA?FFFF]<br />
FFFF=Fehler 4 stellig HEX<br />
Antwort für Positionierbefehl FA, FR, SA, SR, FS<br />
[0pe] Umschalten auf Pollen EIN [0pe!]<br />
nach [0pe] ist die unmittelbare Antwort auf Pos.-Befehl z. B. [1FA...] immer [1FA>]<br />
[0pa] Umschalten auf Pollen AUS [0pa!]<br />
nach [0pa] kommt die Antwort erst, wenn Pos.-Befehl beendet ist z. B. [1FA...] mit [1FA!] (standard)<br />
[0po]<br />
Pos.-Befehl abgearbeitet ?<br />
Energieimpulsmodus<br />
[1KWwwwwPPZZppzz]<br />
Pollen<br />
Antwort vorhanden ?<br />
Energieimpulsparameter<br />
wwww-Wdh.Frequ.,PP-Intens.->„-“,ZZ-Dauer->„-“,pp-Intens.->„+“,zz-Dauer->„+"<br />
[1KS]<br />
! Antrieb stromlos !<br />
[1CJ!] [1CJ?FFFF]<br />
FFFF=Fehler 4 stellig HEX<br />
[1CS!] [1CS?FFFF]<br />
FFFF=Fehler 4 stellig HEX<br />
z.B. [1FA!]<br />
für [1FA...]<br />
Energiepulsmodus EIN [1KS!]<br />
! Antrieb stromlos !<br />
[0po!]<br />
Pos.-Befehl noch nicht<br />
beendet<br />
[1KW!] [1KW?FFFF]<br />
FFFF=Fehler 4 stellig HEX<br />
[1KS?FFFF]<br />
FFFF=Fehler 4 stellig HEX<br />
[1KO] Energiepulsmodus AUS [1KO!] [1KO?FFFF]<br />
FFFF=Fehler 4 stellig HEX<br />
[1K5]<br />
wenn Energiepulsmodus EIN<br />
[1K6]<br />
wenn Energiepulsmodus EIN<br />
einen Energiepuls<br />
in Richtung „-“<br />
einen Energiepuls<br />
in Richtung „+“<br />
Regelkreis<br />
[1RSSSZZPPGG] Regelkreisparameter<br />
einstellen<br />
[1RL] Regelkreisparameter<br />
abfragen<br />
B 3<br />
[1K5!] [1K5?FFFF]<br />
FFFF=Fehler 4 stellig HEX<br />
[1K6!] [1K6?FFFF]<br />
FFFF=Fehler 4 stellig HEX<br />
[1RS!] [1RS?FFFF]<br />
FFFF=Fehler 4 stellig HEX<br />
[1RL!] [1RL?FFFF]<br />
FFFF=Fehler 4 stellig HEX
Befehlssatz Übersicht<br />
Befehl Bedeutung pos. Antwort neg. Antwort<br />
Kommentar Kommentar Kommentar Kommentar<br />
Parameter dauerhaft speichern<br />
[0ff00] Kanalnummer -->EEPROM<br />
wenn zuvor mit [0CS..] geändert<br />
[0ff!]<br />
[0ff01] Kanaldaten -->EEPROM [0ff!]<br />
alle Daten aus Befehlen wie z.B. RS, KW, AP, AT, AE, VP, VT, VE, PS, DP, DS, L5, L6<br />
Kanalkennung ( Klartext, 20 ASCIL-Zeichen )<br />
[0LStext]<br />
text=20 ASCII-Zeichen !<br />
Kanalkennung schreiben [0LS!] [0LS?FFFF]<br />
Der Inhalt bleibt nur solange erhalten, wie die Versorungsspannung anliegt !<br />
[0LL]<br />
Kanalkennung lesen<br />
aus [0LStext]<br />
[0LL!text]<br />
[0PStext]<br />
text=20 ASCII-Zeichen !<br />
[0PL]<br />
Service - Befehle<br />
[1rr]<br />
HP-Register<br />
[0ee01]<br />
[1yy]<br />
Finalposition<br />
Kanalkennung schreiben [0PS!] [0PS?FFFF]<br />
Der Inhalt kann mit [0ff09] dauerhaft (im EEPROM) abgespeichert werden !<br />
Kanalkennung lesen [0PL!text]<br />
aus EEPROM<br />
Controler-Register<br />
abfragen<br />
Preset für<br />
Regelparameter<br />
Sollposition<br />
abfragen<br />
B 4<br />
alle Reg. Daten<br />
Text<br />
[0ee!]<br />
[1yy!HHHHHHHH]<br />
HHHHHHHH=POS(8xHEX)
Energiepulsbetrieb<br />
Im Energiepulsmodus - nach dem Befehl „[1KS]“ aktiv - kann eine Achse um sehr kleine Beträge (auch<br />
kleiner als 1 Inkr.) bewegt werden. Achtung, in diesem Betriebsmodus [1KS] ist die Achse stromlos.<br />
Der Achsenaufbau muß aus diesem Grund zwingend selbsthemmend sein. Die Wirkung des<br />
Energiepulses ist abhängig von den mechanischen Eigenschaften der Achse und der<br />
Energiepulsparameter - Vorgabe „[1KWwwwwPPZZppzz]“.<br />
Mit jedem „[1K5]“ bewegt sich die Achse in „-“Richtung und mit jedem „[1K6]“ in „+“Richtung um je<br />
einen „Schritt“.<br />
Nach dem Befehl „[1K0]“ ist die Achse wieder im normalen Regelmodus.<br />
Mit Hilfe der Parameter Energiepulsintensität und Energiepulsdauer lassen sich für beide Richtungen<br />
getrennt (individuell) fast beliebig Schrittweiten von ca. 0,01µm ... 2 µm voreinstellen. Die Wiederholbarkeit<br />
hängt jedoch von den mechanischen Eigenschaften der Achse ab.<br />
Beim „Super“positionieren mit den Befehlen [1SRHHHHHHHH] für „Super“ relativ positionieren und<br />
[1SAHHHHHHHH] für „Super“ absolut positionieren wird der Positioniervorgang von der MINI MOT<br />
automatisch abgearbeitet.<br />
Hier wird die Position im normalen Regelkreismodus angefahren und im 2. Schritt im Energiepulsmodus<br />
mit einstellbarer Pulsfrequenz äußerst präzise die Zielposition angefahren.<br />
Die Dauer des Vorganges ist sehr kurz.<br />
Das Zurückschalten in den Regelkreismodus (Halt) erfolgt<br />
1. wenn die Zielposition innerhalb einer voreingestellten Toleranz (z. B. [1DS00000001]<br />
= ± 1 Inkrement) erreicht wurde<br />
oder<br />
2. wenn eine maximale Pulsanzahl von 100 überschritten wurde.<br />
Der „Super“-Positionierbefehl ist sehr hilfsreich, wenn bei hoher Regelkreissicherheit eine Position<br />
trotzdem sehr präzise erreicht werden soll.<br />
Energieimpulsparameter<br />
[1KWwwwwPPZZppzz] PP - Energieimpulsintensität min 01, max. 7F - - > „-“Richtung<br />
ZZ - Energieimpulsdauer min 01, max. FF - - > „-“Richtung<br />
pp - Energieimpulsintensität min 01, max. 7F - - > „+“Richtung<br />
zz - Energieimpulsdauer min 01, max. FF - - > „+“Richtung<br />
wwww- Wiederholfrequenz<br />
wirksam nur bei „Super“Positionierung<br />
für „+“ und „-“Richtung<br />
Antwort: I0 --> [1KW!] bzw. NIO [1KW?HHHH]<br />
P 1
Energieimpulsmodus<br />
[1KS] schaltet Energieimpulsmodus ein<br />
ANTWORT: [1KS!]<br />
Achtung: Antrieb „stromlos“<br />
[1KO] schaltet Energieimpulsmodus aus<br />
ANTWORT: [1KO!] bzw. [1KO?HHHH]<br />
[1K5] Energieimpuls, wenn mit „1KS“ eingeschaltet,<br />
in Richtung E1 ( - )<br />
ANTWORT: [1K5!] bzw. [1K5?HHHH]<br />
[1K6] Energieimpuls, wenn mit „1KS“ eingeschaltet,<br />
in Richtung E2 ( + )<br />
ANTWORT: [1K6!] bzw. [1K6?HHHH]<br />
P 2
[1WS..], [1FT] und [1WA]- Ablaufmodul<br />
[1WSddddSSSSSSAAAAVVSSSSSSAAAAVV... SSSSSSAAAAVV] - Ablaufdefinition<br />
Das Argument beginnt mit Anzahl der Durchläufe „dddd“ 4-stellig HEX - ASCII,<br />
gefolgt von der 1.Fahrstrecke „SSSSSS“ 6-stellig HEX - ASCII, der<br />
1.Beschleunigung „AAAA“ 4-stellig HEX - ASCII und der 1.Geschwindigkeit „VV“ 2stellig<br />
HEX - ASCII u. s. w.<br />
Antwort: [1WS!] oder im Fehlerfall [1WS?Fehlernr.]<br />
[1FT] - startet den Ablauf.<br />
Antwort: [1FT!] oder im Fehlerfall [1FT?Fehlernr.]<br />
[1WA] - gibt die aktuelle Anzahl der Durchläufe in 8 x Hex-ASCII aus.<br />
Antwort: [1WA!hhhhhhhh]<br />
Visual-Basic Beispiel:<br />
Sub sin_Click ()<br />
Dim z, d, a, v, i, anz<br />
Dim sz$, sd$, sa$, sv$<br />
anz = schritta - 1<br />
z = wartena<br />
sz$ = Hex(z): sz$ = String$(4 - Len(sz$), "0") & sz$<br />
tx$ = "[1WS" + sz$<br />
For i = 0 To anz<br />
d = (posa(i).Text) * motfak<br />
sd$ = Hex(d): sd$ = String$(8 - Len(sd$), "0") & sd$: sd$ = Right$(sd$, 6)<br />
a = (aa(i).Text) * motfak * hpafak / (STF * STF)<br />
sa$ = Hex(a): sa$ = String$(8 - Len(sa$), "0") & sa$: sa$ = Right$(sa$, 4)<br />
v = (va(i).Text) * motfak / STF<br />
sv$ = Hex(v): sv$ = String$(8 - Len(sv$), "0") & sv$: sv$ = Right$(sv$, 2)<br />
tx$ = tx$ + sd$ + sa$ + sv$<br />
Next<br />
tx$ = tx$ + "]"<br />
'textABW.Text = Len(tx$) + tx$<br />
comsend<br />
End Sub<br />
W 1
[1IW...], [1IO...], [1IP...], [1GX] und [1GY]- autom. Indexsuchlauf<br />
[1GX] - startet Indexsuchlauf beginnend mit Endschalterfahrt (+) E2<br />
Antwort: [1GX!] oder im Fehlerfall z. B. [1GX?001D] (kein Index gefunden).<br />
[1GY] - startet Indexsuchlauf beginnend mit Endschalterfahrt (-) E1<br />
Antwort: [1GY!] oder im Fehlerfall z. B. [1GY?001D] (kein Index gefunden).<br />
Zuvor muß der Suchweg vom Endschalter aus mit<br />
[1IWhhhhhhhh],<br />
der Offset von der Indexposition mit<br />
[1IOhhhhhhhh] und<br />
der Positonszählerstand nach erfolgreichem Ablauf der Funktion mit<br />
[1IPhhhhhhhh] hinterlegt werden.<br />
Das Argument „hhhhhhhh“ ist jeweils 8-stellig HEX - ASCII.<br />
[1IW...]-, [1IO...]- und [1IP...]-Daten können mit [0ff01] fest im EEPROM hinterlegt<br />
werden.<br />
Für die Endschalterfahrt wird die hinterlegte Endschaltergeschwindigkeit und für den<br />
Indexsuchlauf die Positioniergeschwindigkeit benutzt.<br />
W 2
MINI MOT FEHLERMELDUNGEN:<br />
FEHLERTABELLE FÜR BEFEHLSART 0<br />
0000: ALLES OK<br />
0001: KEINE FREIGABE (NOT-AUS)<br />
0002:<br />
0003: UNGÜLTIGER BEFEHL<br />
0004: UNKENNTLICHER SELEKT GEFORDERT<br />
0005: FEHLERHAFTER BEFEHL<br />
0006: REGELKREISPARAMETER NICHT VOLLSTÄNDIG<br />
0007: a-/v-... PARAMETER NICHT VOLLSTÄNDIG<br />
0008: KEINE FREIGABE FUER SELEKTEINTRAG PER 'RUNDRUF'<br />
0009: FKT. ZUR ZEIT NICHT AUSFÜHRBAR<br />
000A: PARAMETER NIO (CRC- SUMME IST NIO)<br />
000B:<br />
000C:<br />
000D:<br />
000E:<br />
000F: PARITÄTSFEHLER<br />
0010: INTERNER BUFFER-ÜBERLAUF<br />
0011:<br />
0012:<br />
0013:<br />
0014: ANDERE FUNKTION AKTIV<br />
F 1
FEHLERTABELLE FÜR BEFEHLSART 1<br />
0000: ALLES OK<br />
0001: KEINE FREIGABE<br />
0002:<br />
0003: UNGÜLTIGER BEFEHL<br />
0004:<br />
0005: FEHLERHAFTE ARGUMENTE<br />
0006: REGELKREISPARAMETER NICHT VOLLSTÄNDIG<br />
0007: a-/v-... PARAMETER NICHT VOLLSTÄNDIG<br />
0008: SCHLEPPFEHLER ZU GROSS<br />
0009:<br />
000A: PARAMETER NIO<br />
000B: ENERGIEIMPULSPARAMETER NICHT VORHANDEN<br />
000C:<br />
000D:<br />
000E:<br />
000F: PARITÄTSFEHLER<br />
0010: INTERNER BUFFER-ÜBERLAUF<br />
0011: ENDSTUFENSPANNUNG 24V NICHT VORHANDEN<br />
0012: SOFTLIMIT ERREICHT<br />
0013: ZIEL LIEGT AUSSERHALB DER SOFTLIMITS<br />
0014: ANDERE FUNKTION AKTIV<br />
0015: KEINE ACHSBEWEGUNG ERLAUBT, DA LIMIT VORHANDEN<br />
0016: FAHRT NACH A/D- WANDLER ÜBER E2 ABGEBROCHEN<br />
0017: POSITIONIERFEHLER<br />
0018: UNBEKANNTER AUSLÖSER<br />
0019: LIMIT E1 VORHANDEN<br />
001A: LIMIT E2 VORHANDEN<br />
001B:<br />
001C: DAS ZIELFENSTER DES SUPER-POS.-MODUS NICHT ERREICHT<br />
001D: ES WURDE NOCH KEIN INDEX GEFUNDEN<br />
001E: E3 –INDEX KANN NICHT VERWENDET WERDEN<br />
001F: UNGÜLTIGE FAHRTABELLE<br />
0020: TABELLENFAHRT NICHT ANGEWÄHLT<br />
0021: INDEX-SUCHWEG ÜBERSCHRITTEN<br />
0022: MAXIMALER VERFAHRWEG ZU GROSS<br />
F 2
Berechnung von Geschwindigkeit und Beschleunigung<br />
ST - sample time und STF – sample-time-faktor<br />
STF = 1 / (0.0000005 * 16 * (ST + 1))<br />
Beispiel : sample time 1 ms = 7C (hex) � 124 (dez)<br />
STF = 1 / ( 0,0000005 * 16 * ( 124 +1 )) = 1000<br />
motfaktor - Umrechnungsfaktor counts �������� mm<br />
motfak = ( encoder * interpolation * motkonst * gear ) / ( leadscrew )<br />
Beispiel : STF = 1000, hpafak = 256 (const.), motkonst = 4 ( const.), interpolation = 1<br />
encoder = 500 Imp./U, leadscrew 100 mm/U, Gear = 13,738:1<br />
motfak = ( 500 * 1 * 4 * 13,738 ) / ( 100 ) = 274,76 counts / mm<br />
Vmin = 3,64 mm/s , Vmax = 407,63 mm/s und Amin = 14,22 mm/s^2<br />
Geschwindigkeit<br />
vpos = vpos_mm/s * motfak / STF<br />
Beispiel : 100 mm/s : vpos = 100 * 274,76 / 1000 = 27,476<br />
gerundet 27 � [1VP001B] (Sendestring mit Hex-Wert)<br />
Beschleunigung<br />
apos = apos_mm/s^2 * motfak * hpafak / ( STF * STF )<br />
Beispiel : 1000 mm/s^2 : apos = 1000 * 274,76 * 256 / (1000 * 1000) = 70,338<br />
gerundet = 70 � [1AP0046] (Sendestring mit Hex-Wert)<br />
Motfaktor für Achsen mit Maßstab<br />
Motfak =(1000 / Gitterkonstante) * interpolation * Motkonst<br />
Beispiel : Gitterkonstante = 20 µm, Interpolation = 50, Motkonst = 4<br />
Motfak = (1000 / 20) * 50 * 4 = 10000 counts / mm<br />
A 1
Visual Basic Module<br />
Sub comsend ()<br />
'---------------------------------------------------------<br />
'Senderoutine<br />
flaganzcom = 1 'Merker für Senden und Empfangen<br />
comm1.Output = tx$ 'tx$ senden<br />
anzcom1 'Empfangsroutine<br />
flaganzcom = 0<br />
End Sub<br />
Sub anzcom1 ()<br />
'---------------------------------------------------------<br />
' Empfangsroutine<br />
Dim Y$<br />
Dim start, delta<br />
start = Timer<br />
empf$ = ""<br />
Do<br />
DoEvents<br />
delta = Timer - start<br />
Y$ = comm1.Input<br />
empf$ = empf$ + Y$<br />
Loop Until Right$(empf$, 1) = "]" Or delta > waitpos ']=Stringendetrigger<br />
If delta > waitpos Then : GoTo endea1 'Timeout<br />
If Mid$(empf$, 5, 1) = "?" Then statusanz<br />
endea1:<br />
End Sub<br />
Sub achsum ()<br />
'---------------------------------------------------------<br />
flaganzcom = 1<br />
comm1.Output = achse$(achse_n) 'contr.R AA<br />
flaganzcom = 0<br />
End Sub<br />
A 2
Sub motfaktor ()<br />
'---------------------------------------------------------<br />
'Umrechnungfaktor Inkremente mm motfak()<br />
Dim i, vmit<br />
If opt_maßst(achse_n) = True Then 'Maßstab<br />
incr_U_mm(achse_n).Caption = "GK [µm]"<br />
Else<br />
'Encoder<br />
incr_U_mm(achse_n).Caption = "Inkr./U"<br />
End If<br />
spg(achse_n) = (txt_spg(achse_n).Text)<br />
enc(achse_n) = (txt_enc(achse_n).Text)<br />
getr(achse_n) = (txt_getr(achse_n).Text)<br />
spin(achse_n) = (txt_spin(achse_n).Text)<br />
ipl(achse_n) = (txt_ipl(achse_n).Text)<br />
motspgkonst(achse_n) = (txt_motspgkonst(achse_n).Text)<br />
motfak(achse_n) = (enc(achse_n) * ipl(achse_n) * motkonst * getr(achse_n)) / spin(achse_n)<br />
If opt_maßst(achse_n) = True Then 'Maßstab<br />
motfak(achse_n) = (1000 / enc(achse_n) * ipl(achse_n) * motkonst * 1) / 1<br />
getr(achse_n) = 1<br />
spin(achse_n) = 1<br />
End If<br />
'textmotkonst(1).Text = Format(motfak, "######0.0#")<br />
vmaxiabs = 112 '(hex0070) incr/ms<br />
vmini = 1 'incr/ms<br />
STF = 1 / (.0000005 * 16 * (ST + 1))<br />
vmax(achse_n) = 60 * (spg(achse_n) * spin(achse_n) * .9) / (motspgkonst(achse_n) *<br />
getr(achse_n))'mm/s<br />
vmin(achse_n) = STF / motfak(achse_n) '1000 ms/s * 1 incr/ms / incr/mm = mm/s<br />
vmaxabs = STF * vmaxiabs / motfak(achse_n) ' mm/s<br />
If vmax(achse_n) > vmaxabs Then vmax(achse_n) = vmaxabs<br />
amin(achse_n) = STF * STF / (motfak(achse_n) * hpafak)<br />
aufl(achse_n) = 1000 / motfak(achse_n)<br />
txt_aufl(achse_n) = Format(aufl(achse_n), "###0.0##")<br />
txt_vmax(achse_n).Text = Format(vmax(achse_n), "##0.0#")<br />
txt_vmin(achse_n).Text = Format(vmin(achse_n), "##0.0#")<br />
vmit = vmax(achse_n) / 2<br />
End Sub<br />
A 3
Sub downldef ()<br />
'---------------------------------------------------------<br />
Dim tx$<br />
softendp(achse_n) = (txt_softendp(achse_n).Text)<br />
softendp(achse_n) = softendp(achse_n) * motfak(achse_n)<br />
tx$ = Hex(softendp(achse_n)): tx$ = String$(8 - Len(tx$), "0") & tx$<br />
sep$(achse_n) = "[1L6" & tx$ & "]" 'Softlimit in +Richtung<br />
softendm(achse_n) = (txt_softendm(achse_n).Text)<br />
softendm(achse_n) = softendm(achse_n) * motfak(achse_n)<br />
tx$ = Hex(softendm(achse_n)): tx$ = String$(8 - Len(tx$), "0") & tx$<br />
sem$(achse_n) = "[1L5" & tx$ & "]" 'Softlimit in -Richtung<br />
delta(achse_n) = txt_delta(achse_n).Text<br />
delta(achse_n) = delta(achse_n) * motfak(achse_n)<br />
tx$ = Hex(delta(achse_n)): tx$ = String$(8 - Len(tx$), "0") & tx$<br />
dp$(achse_n) = "[1DP" & tx$ & "]" 'Positioniertoleranz<br />
schlepp(achse_n) = txt_schlepp(achse_n).Text<br />
schlepp(achse_n) = schlepp(achse_n) * motfak(achse_n)<br />
tx$ = Hex(schlepp(achse_n)): tx$ = String$(8 - Len(tx$), "0") & tx$<br />
ps$(achse_n) = "[1PS" & tx$ & "]" 'Schleppabstand<br />
vpos(achse_n) = txt_vabs(achse_n).Text<br />
vpos(achse_n) = vpos(achse_n) * motfak(achse_n) / STF<br />
tx$ = Hex(vpos(achse_n)): tx$ = String$(4 - Len(tx$), "0") & tx$<br />
vp$(achse_n) = "[1VP" & tx$ & "]" 'Positioniergeschwindigkeit<br />
apos(achse_n) = txt_aabs(achse_n).Text<br />
apos(achse_n) = apos(achse_n) * motfak(achse_n) * hpafak / (STF * STF)<br />
tx$ = Hex(apos(achse_n)): tx$ = String$(4 - Len(tx$), "0") & tx$<br />
ap$(achse_n) = "[1AP" & tx$ & "]" 'Positionierbeschleunigung<br />
vend(achse_n) = txt_vend(achse_n).Text<br />
vend(achse_n) = vend(achse_n) * motfak(achse_n) / STF<br />
tx$ = Hex(vend(achse_n)): tx$ = String$(4 - Len(tx$), "0") & tx$<br />
ve$(achse_n) = "[1VE" & tx$ & "]" 'Geschwindigkeit-Endschalter<br />
aend(achse_n) = txt_aend(achse_n).Text<br />
aend(achse_n) = aend(achse_n) * motfak(achse_n) * hpafak / (STF * STF)<br />
tx$ = Hex(aend(achse_n)): tx$ = String$(4 - Len(tx$), "0") & tx$<br />
ae$(achse_n) = "[1AE" & tx$ & "]" 'Beschleunigung-Endschalter<br />
A 4
vtip(achse_n) = txt_vtip(achse_n).Text<br />
vtip(achse_n) = vtip(achse_n) * motfak(achse_n) / STF<br />
tx$ = Hex(vtip(achse_n)): tx$ = String$(4 - Len(tx$), "0") & tx$<br />
vt$(achse_n) = "[1VT" & tx$ & "]" 'Geschwindigkeit-Tippbetrieb<br />
atip(achse_n) = txt_atip(achse_n).Text<br />
atip(achse_n) = atip(achse_n) * motfak(achse_n) * hpafak / (STF * STF)<br />
tx$ = Hex(atip(achse_n)): tx$ = String$(4 - Len(tx$), "0") & tx$<br />
at$(achse_n) = "[1AT" & tx$ & "]" 'Beschleunigung-Tippbetrieb<br />
tx$ = txt_puls(achse_n).Text<br />
pls$(achse_n) = "[1KW" & tx$ & "]" 'Pulsparameter<br />
End Sub<br />
Sub c_download_Click (index As Integer)<br />
'---------------------------------------------------------<br />
'Download-Daten senden<br />
achse_n = index<br />
achsum<br />
downldef<br />
tx$ = sep$(index)<br />
comsend<br />
tx$ = sem$(index)<br />
comsend<br />
tx$ = dp$(index)<br />
comsend<br />
tx$ = ps$(index)<br />
comsend<br />
tx$ = vp$(index)<br />
comsend<br />
tx$ = ap$(index)<br />
comsend<br />
tx$ = ve$(index)<br />
comsend<br />
tx$ = ae$(index)<br />
comsend<br />
tx$ = vt$(index)<br />
comsend<br />
tx$ = at$(index)<br />
comsend<br />
tx$ = pls$(index)<br />
comsend<br />
downloadein<br />
timer1.Enabled = True<br />
End Sub<br />
A 5
MOT-TEST 2000<br />
Installation: A:\ Setup.exe<br />
Beschreibung<br />
MOT-Test dient zur Inbetriebnahme, zum Testen und zum Optimieren einer oder mehrerer<br />
Achsen.<br />
Nach dem Start von MOT-Test erscheint das „Datei öffnen Fenster“. Hier werden alle Dateien<br />
„*.mot“ angezeigt.<br />
Man kann eine Datei auswählen und mit „OK“ weitergehen. Man kann aber auch, insbesondere<br />
wenn es noch keine „*.mot“ – Datei gibt, mit „Abbrechen“ fortfahren.<br />
Nun ist man in Hauptmenue.<br />
Mit „chan. 01“ wird die Achse mit der Adresse 01 aktiviert.<br />
Mit „motor-gear-enc.-data“ werden die Parameter angezeigt und können geändert werden.<br />
Aus den Parametern werden die Auflösung vmax, vmin usw. berechnet.<br />
In den „download-data“ müssen nun die Geschwindigkeiten, Beschleunigungen,<br />
Positioniertoleranz, Schleppabstand, Softwarelimits usw. eingetragen werden.<br />
Mit „download“ werden die Dateien zur aktiven Achse gesendet.<br />
Mit „chan. 02“ kann man nun die Achse 02 aktivieren und mit der Dateneingabe fortfahren.<br />
Sind alle Daten eingegeben und an die Achsen gesendet, kann dieser Datensatz mit „Datei“,<br />
gefolgt von „Datei speichern unter“, z.B. als „xyz_01.mot“ abgespeichert werden.<br />
Mit „control parameter“ öffnet sich das Fenster, indem die Regelparameter abgefragt, geändert und in<br />
der aktiven Achse hinterlegt werden können.<br />
Mit „read“ werden die Regelparameter der aktiven Achse angezeigt. Man kann sie ändern und mit<br />
„send“ an die Achse senden.<br />
Mit „save“ werden die Parameter in der Achse fest hinterlegt.<br />
Hat man zuvor im Hauptmenue eine Verfahrstrecke eingegeben, kann mit „start“ das Verhalten<br />
der Achse grafisch dargestellt werden.<br />
Mit „ABS(0)“ kann man wieder in die Nullposition fahren.<br />
Im Hauptmenue kann man Wegvorgaben auswählen oder beliebig eingeben. Man kann relativ<br />
oder absolut positionieren. Mit „Pos+“ bewegt sich die Achse entsprechend in positive und<br />
mit „Pos –„ in negative Zählrichtung.<br />
„Stop“ unterbricht alle Aktivitäten.<br />
Ist „Super Pos“ angewählt, kann man, wenn die Energiepulsparameter entsprechend optimiert sind,<br />
Positionen hochgenau anfahren.<br />
Wird „sequence“ ausgewählt, öffnet sich ein Fenster, in dem ein Bewegungsablauf auch<br />
mehrerer Achsen realisiert werden kann.<br />
A 6
Nach dem Start von MOT-TEST erscheint Appears after starting MOT-TEST<br />
Hauptmenue Main menu<br />
A 7
Chan01 (Kanal 01) ist angewählt Chan.01 (channel 01) has been selected<br />
Motor-gear-enc.data und download-data geöffnet Motor-gear-enc.data and download-data opened
A 8<br />
Control-Parameter geöffnet Control-Parameter opened<br />
A 9