Upload
emil-boehler
View
225
Download
4
Embed Size (px)
Citation preview
KommunikationUSB, RS232, CAN, CANopen
2
AblaufKurzüberblick
USB/RS232CAN/CANopen
3
Kurzüberblick USB/RS232USB Treiber InstalliertNur auf kurzen DistanzenNicht EchtzeitfähigNicht EMV stabilSehr leichte ProgrammierungKeine Zyklischen oder Asynchrone Nachrichten vom DriveMinimale State Machine
4
USB/RS232 Allgemein
Direkt Point-to-Point Verbindung
5
Motor AN
USB State-Maschine
Motor AUS
MO=1;
Werte wie PX können nicht gerändert werdenSV nicht machbar
Fahrbefehle werden nicht angenommenUnit Mode kann geändert werden
MO=0;
Unit Mode PX, SV
Homing PR, PA, SP
6
USB VerbindungsaufbauProtokoll Einstellungen
7
Beispiel, Simple PTP fahrtGroß und klein Schreibung ist egalKommandos werden dann ausgeführt wenn Sie empfangen werdenJeder Befehl wird bestätigt
8
Wie siehst im Detail ausGrundregel:
Kommando + (Sub Index) + (=Anweisung) + ;P X ;
0x50 0x58 0x3B
P X ; 3 7 0 8 9 ;0x50 0x58 0x3B 0x33 0x37 0x30 0x38 0x39 0x3B
P R = 1 0 0 0 0 ;0x50 0x52 0x3D 0x31 0x30 0x30 0x30 0x30 0x3B
P R = 1 0 0 0 0 ; ;0x50 0x52 0x3D 0x31 0x30 0x30 0x30 0x30 0x3B 0x3B
9
FehlerNachricht nicht im Datenformat, nicht verstanden
Außerhalb der State- Maschine
P X Y ;0x50 0x58 0x59 0x3B
P X Y ; ? ;0x50 0x58 0x59 0x3B 0x02 0x3F 0x3B
P R = 1 0 0 0 0 ;0x50 0x52 0x3D 0x31 0x30 0x30 0x30 0x30 0x3B
P R = 1 0 0 0 0 ; : ? ;0x50 0x52 0x3D 0x31 0x30 0x30 0x30 0x30 0x3B 0x3A 0x3F 0x3B
10
CAN/CANopen
11
CAN/CANopenVon Bosch als Prototyp von 1993 bis 1995 entwickeltSeit 1995 wird es von der Organisation CAN in Automation (CiA) verwaltetMaximal 127 TeilnehmerMaximal 1 Mbit/secMaximal 1,3 km@50 kbits/sec
12
Kurzüberblick CAN/CANopenAuch wenn ein Teilnehmer ausfällt, bleibt der Rest des CAN Busses weiter intaktSynchrone und Asynchrone TelegrammeCAN 2.0A
13
CAN/CANopen Allgemein
BussystemBeidseitig 120 Ohm
14
CAN/CANopenVoraussetzung für eine schnelle Integration:Elmo ReglerPC mit CAN Analyser (z.B. Kvaser CANKing)Wenn Ethernet Kabel verwendet werden soll, dann STP/SSTP Kabel (Screened Shielded Twisted Pair)
15
CAN/CANopenCANopen Binary Interpreter
DS301, DS305, DS402Kompatibel zwischen verschiedenen HerstellernKonverter von anderen Feldbussen verfügbarSollte mit Expertenhilfe gemacht werden
Elmo´s eigene SpracheSyntax und State- Maschine wie bei USB/RS232FlexibelNur PDO2 KommunikationLeichte Integration
16
Motor AN
Binary State-Maschine
Motor AUS
MO=1;
Werte wie PX können nicht gerändert werdenSV nicht machbar
Fahrbefehle werden nicht angenommenUnit Mode kann geändert werden
MO=0;
Unit Mode PX, SV
Homing PR, PA, SP
17
CAN Binary Interpreter Faustregel
Byte 1&2 Das Kommando ACSII Codiert
3 Falls vorhanden ein Index. z.B. UI[2]
4 Anzeichen ob es eine Abfrage oder eine Zuweisung ist.5-8 Falls vorhanden bei einer Zuweisung der Zahlenwert
0000037F 8 4D 4F 00 00 01 00 00 00 000002FF 8 4D 4F 00 00 01 00 00 00 0000037F 8 4A 56 00 00 E8 03 00 00 000002FF 8 4A 56 00 00 E8 03 00 00 0000037F 8 42 47 00 40 00 00 00 00000002FF 8 42 47 00 00 00 00 00 00
Datenwort 0 Node ID
18
CAN Beispiel Telegramm0x37F 0x4A 0x56 0x00 0x00 0xE8 0x03 0x00 0x00
300h+Node
ID
ACSII Wert
J
ACSII Wert
V
Wert in HEX umgerechnet
0000037F 8 4A 56 00 00 E8 03 00 00 000002FF 8 4A 56 00 00 E8 03 00 00
19
CAN BeispielNMT, Bus starten 0x00 0x01 0x00
MO=1 0x37F 0x4D 0x4F 0x00 0x00 0x01 0x00 0x00 0x00
0x2FF 0x4D 0x4F 0x00 0x00 0x01 0x00 0x00 0x00
JV=1000 0x37F 0x4A 0x56 0x00 0x00 0xE8 0x03 0x00 0x00
0x2FF 0x4A 0x56 0x00 0x00 0xE8 0x03 0x00 0x00
BG 0x37F 0x42 0x47 0x00 0x40 0x00 0x00 0x00 0x00
0x2FF 0x42 0x47 0x00 0x00 0x00 0x00 0x00 0x00
20
CANopen AllgemeinSeit 1995 wird es von der Organisation CAN in Automation (CiA) gepflegt und ist als Europäische Norm EN 50325-4 standardisiertVerschieden Geräteprofile
Standart GeräteklasseDS401 Ein-/Ausgabe-Module
DS402 elektrische Antriebe
DS404 Sensoren und Regler
DS406 Lineare und rotierende Geber (Encoder)
DS408 hydraulische Ventile und Antriebe
21
CANopen HilfestellungJeder CANopen Befehl kann im EAS beobachtet/gesetzt werden
CANopen Elmo
0x6040 cw
0x6041 sw
22
CANopen MöglichkeitenVerschiedene Teilnehmer/Hersteller an einen Bus
23
CANopen MöglichkeitenVerbindung zwischen andere Feldbussen
24
CAN/CANopen *.EDS FileBeschreibt was das Gerät kann, gerade für Fremdsteuerungen wichtigObjektverzeichnis
VendorNumber=0x0000009AProductNumber=0x00030923SupportedObjects=0x0076
[6040]SubNumber=ParameterName=KontrollwortObjectType=7AccessType=RWWDataType=0x0006PDOMapping=1LowLimit=0HighLimit=65535DefaultValue=
25
CANopen State-MaschineEs können nur bestimmte Änderungen zu bestimmten States gemacht werden
26
CAN NMTBus VerwaltungsinstrumentBeim Einschalten meldet sich jede Achse auf den CAN. bedeutet aber nicht das man Sie direkt ansprechen kann. Durch den NMT wird Sie initialisiertKann nur Ausgeführt werden wenn Motor AUS ist.Nur als ID0
27
CAN NMT BeispielAchse schickt wenn Sie eingeschaltet wird eine Startup NachrichtNMT wird vom Master geschicktAchse meldet Bereitschaft mit den Senden des Statuses
28
CAN EMCYEmergency TelegrammeKommen nur wenn ein Fehler passiertID 0x81 bis 0xFF
29
CAN EMCY Wird immer ASYNCRON abgeschicktAnhand des SDO ID´s kann erkannt werde welche Achse einen Fehler hatHaben höchste Priorität
SDO ID0x081
30
CAN EMCY BeispielBeispiel, Achse 1 hat ein Problem
Handbuch, Command Referenz für Gold
31
CAN SDO„Service data objects“Für Kommandos welche selten vorkommenz.B. für Homing´s oder Mode´s umschaltenNiedrige PrioritätEinrichten von PDO´sID 0x581 bis 0x67F
32
CAN PDO„Process data objects“PDO Konfiguration geht nach Neustart immer auf DefaultID 0x181 bis 0x57F
Unser Default Mapping TxPDO RxPDO
1 6041 ,Statuswort 6040 ,Kontrollwort
2 2013 ,Binary interpreter result 2012 ,Binary interpreter command
3
4
33
CAN PDOWeniger OverheadEs können bis zu 4 PDO in beiden Richtungen definiert werdenPDO´s können selbstständig übertragen werden
SDO IDz.B 0x581 Objekt Nutzdaten SDO ID
0x181 Nutzdaten Nutzdaten
34
CAN PDOPDO´s haben je nach Aufgabe verschiedene AdressenRx und Tx PDO´s werden Anhand des SDO ID unterschieden, z.B. 180 + Node ID
SDO ID0x181 Nutzdaten Nutzdaten
SDO ID0x201 Nutzdaten Nutzdaten
35
CANopen ModesFest vorgeschriebene ModesJeder Mode hat seine Vor- und Nachteile
0x6060
Reserved 0Profile position mode 1Velocity (not supported) 2Profiled velocity mode 3Torque profiled mode 4
Reserved 5Homing mode 6Interpolated position mode 7
36
CANopen Profile position mode
Sende ZielpositionSende BeschleunigungSende Kontrollwort zum losfahren
Empfange Status: In Bewegung
Empfange Status: Am Ziel
Objekt
37
CANopen Profile position mode
+ wenig Daten Traffic+ bei Zustellachsen- bei Bahnfahrten
38
CANopen Profile position mode
Motor AN Bewegung 1 Bewegung 2
39
CANopen Profile position mode0 0000067F 8 22 60 60 00 01 00 00 00 T
0 000005FF 8 60 60 60 00 00 00 00 00 R
0 0000067F 8 22 40 60 00 06 00 00 00 T
0 000001FF 2 37 06 R 0 000005FF 8 60 40 60 00 00 00 00 00 R 0 000001FF 2 37 02 R 0 000001FF 2 31 02 R 0 0000067F 8 40 41 60 00 00 00 00 00 T 0 000005FF 8 4B 41 60 00 31 02 00 00 R 0 0000067F 8 22 40 60 00 07 00 00 00 T 0 000001FF 2 33 02 R 0 000005FF 8 60 40 60 00 00 00 00 00 R 0 0000067F 8 40 41 60 00 00 00 00 00 T 0 000005FF 8 4B 41 60 00 33 02 00 00 R 0 0000067F 8 22 40 60 00 0F 00 00 00 T 0 000005FF 8 60 40 60 00 00 00 00 00 R 0 000001FF 2 37 02 R 0 0000067F 8 40 41 60 00 00 00 00 00 T 0 000005FF 8 4B 41 60 00 37 02 00 00 R
0 0000067F 8 22 81 60 00 10 27 00 00 T 0 000005FF 8 60 81 60 00 00 00 00 00 R 0 0000067F 8 22 7A 60 00 00 00 00 00 T 0 000005FF 8 60 7A 60 00 00 00 00 00 R 0 0000067F 8 22 40 60 00 0F 00 00 00 T 0 000005FF 8 60 40 60 00 00 00 00 00 R
0 0000067F 8 22 40 60 00 1F 00 00 00 T 0 000005FF 8 60 40 60 00 00 00 00 00 R 0 000001FF 2 37 12 R 0 000001FF 2 37 16 R
Achse in Profile position mode bringen
Achse Einschalten
PTP konfigurieren
Losfahren
40
CANopen Interpolated Position Mode
Sende Zielposition +10cntEmpfange Istposition
Sende Zielposition +10cntEmpfange Istposition
Sende Zielposition +10cntEmpfange Istposition
Sende Zielposition +10cntEmpfange Istposition
Sende Zielposition +10cntEmpfange Istposition
Objekt
41
CANopen Interpolated Position Mode
+ bei Bahnfahrten- Rechenintensiv für die Steuerung- großer Bandbreitenverbrauch
42
CANopen Interpolated Position Mode
ΔT = 0x60c2, meist Zykluszeit der SPSPx = 0x60C1, sollte per PDO an den Regler geschickt werden
43
CANopen Interpolated Position Mode
Auf den Bus sieht es so aus:00000181 7 37 12 FD AE C9 00 00 00000201 6 1F 00 2C B3 C9 00 00000080 0 00000181 7 37 12 4A B0 C9 00 00 00000201 6 1F 00 79 B4 C9 00 00000080 0 00000181 7 37 12 97 B1 C9 00 00 00000201 6 1F 00 C6 B5 C9 00 00000080 0 00000181 7 37 12 E4 B2 C9 00 00 00000201 6 1F 00 13 B7 C9 00
Kontrollwort & SollpositionStatuswort & IstpositionSync
Kontrollwort & SollpositionStatuswort & IstpositionSync
Kontrollwort & SollpositionStatuswort & IstpositionSync
Kontrollwort & SollpositionStatuswort & IstpositionSync
44
Fragen?
45
Kaffeepause