Kommunikation USB, RS232, CAN, CANopen. 2 Ablauf Kurzüberblick USB/RS232 CAN/CANopen

Preview:

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

Recommended