Elmo DSP 402 manual Sub-index, Buffer strategies, Fifo, Ring buffer

Page 96
Buffer strategies

CANopen DSP 402 Implementation Guide

MAN-CAN402IG (Ver. 1.2)

90

Sub-index

6

Description

Buffer clear

Entry category

Mandatory

Access

Write only

PDO mapping

No

Value range

UNSIGNED8 (described below)

Default value

0

Notes:

The maximum and actual buffer size are the number of interpolated data records that may be sent to the drive to fill the input buffer. They are not the size in bytes. The actual buffer size may be between max buffer size to.

The buffer position has an effect when the ring buffer is selected.

The buffer organization may change only when interpolated mode is not active. Reorganization of the buffer clears the input buffer.

Buffer can be clear by sub-index 6 only if interpolation is not active.

Buffer strategies

The contents of the buffer items can only be accessed via the interpolation data record. The maximum buffer size is given in object 0x60C4 is used by the host to determine the actual buffer size.

Commonly, first-in-first-out (FIFO) structures or ring buffers are used as input buffers.

FIFO:

If the buffer is organized as FIFO, every new received interpolation data record is placed at the end of the queue, and the drive takes the next data record from the top of the queue. When the last item of a data record is stored, the buffer pointer is incremented in order to point to the next buffer position. With this buffer principle, the object buffer position has no affect. The FIFO buffer is organized as a cyclic buffer so that after the last buffer entry is updated (entry of max buffer size), the first entry may be available again depending on actual buffer size. When the buffer is full, an emergency is transmitted and the last message is discarded.

If buffer is empty interpolation is disabled and emergency may be transmitted if defined so by object 0x2F21 (refer to the Elmo CANopen Implementation Guide).

Ring buffer:

If the buffer is structured as a ring, the host can place an interpolation data record into any valid position in the ring by changing the pointer defined in buffer position. Without changing the buffer position, all data records are written at the same location. The drive reads the next entry out of the buffer by an internal ring pointer. It is set to the first data record with buffer clear, after the reorganization of the input buffer. The user cannot exceed the max buffer

Image 96
Contents Elmo Motion Control CANopen DSP Implementation GuideDecember Important Notice Revision HistoryContents 1 Introduction2 The DSP 402 Object Dictionary 3 Emergencies10.1 11.1 Appendix A Dimension Index Table 14 Profiled Torque ModeAppendix B Notation Index Table 1 Introduction 1.1Operating Principles1.2Abbreviations and Terms 1.3Elmo Documentation Programming Setup InstallationSimplIQ Command Reference Manual CANopen Implementation Guide2 The DSP 402 Object Dictionary AccessImplementation Guide NamePosition Homing offset value and actual position valuePosition encoder Motor type 3 Emergencies 4 PredefinitionObject 0x1001 Error register Default Value1800h StatuswordIndex 5.1Drive Error 5 Common EntriesObject 0x6007 Abort connection option code 5.2Motor Data Object 0x603F Error code6407h Motor service period 6402h: Motor type 6403h: Motor catalog numberIndex 6402hObject 0x6403 Motor catalog number IndexObject 0x6404 Motor manufacturer Index6404h Object 0x6406 Motor calibration data5.3Drive Data 6502h Supported drive modes6504h Drive manufacturer 6505h Http drive catalog addressObject 0x6502 Supported drive modes Index6502h Object 0x6504 Drive manufacturerObject 0x6505 http drive catalog address Index6505h Object 0x60FD Digital inputsPage 6 Device Control 6.1Objects6040h controlword 6041h statusword Figure 6-3 State Machine Block Diagram Figure 6-2 State Machine in System ContextState Machine NOT READY TO SWITCH ON The drive function is disabledThe drive function is disabled READY TO SWITCH ONThe fault reaction function is being executed The drive function is disabledThe drive function is disabled Event ResetEvent Enable Operation command received from host Action NoneImportant Notes about State Transition Illegal Transition Object 0x6040 ControlwordIndex 6040hBits 0 - 3 and Bits 4, 5, 6 and Bits 9 andBits 11, 12, 13, 14 and Object 0x6041 StatuswordDescription Bits 0 - 3, 5 andValue binary StateBit 4 Voltage Enabled Bit 5 Quick StopBit 7 Warning Bit 9 Remote6.2Halt, Stop and Fault Objects 605C Disable operation mode605D Halt option code 605E Fault reaction code 605A Quick stop option codeValue DescriptionObject 0x605B Shutdown option code IndexObject 0x605C Disable operation option code ValueDescription IndexObject 0x605D Halt option code Index605Dh ValueObject 0x605E Fault reaction option code Index605Eh Value7 Modes of Operation 7.1Functional Description7.2Objects 6060h Modes of operationValue DescriptionObject 0x6061 Modes of operation display Index8 Factors 8.2Functions and Limits608Ah Position dimension index 608Ch Velocity dimension index8.3Objects Object 0x607E PolarityIndex 607EhObject 0x608A Position dimension index Object 0x6089 Position notation indexIndex 6089hObject 0x608B Velocity notation index Index608Bh Object 0x608C Velocity dimension index Index608Ch Object 0x608D Acceleration notation indexObject 0x608E Acceleration dimension index Index608Eh Object 0x608F Position encoder resolution motor revolutionsIndex 608Fhvelocity encoder resolution = Object 0x6090 Velocity encoder resolutionencoder increments / sec motor revolutions / secObject 0x6093 Position factor Index6093h Sub-indexObject 0x6094 Velocity encoder factor Index6094h Sub-indexSub-index Object 0x6095 Velocity factorIndex 6095hSub-index Sub-indexObject 0x6096 Velocity factor IndexEntry description Object 0x6097 Acceleration factor Index6097h Sub-indexThe acceleration factor is calculated according to this object regardless of the setting of any other objects, such as 0x6094 velocity encoder factor 9 Homing 9.1General Information607Ch Home offset 6098h Homing method 6099h Homing speeds 609Ah Homing accelerationName 9.2Objects Object 0x607C Home offsetIndex 607ChObject 0x6098 Homing method Index6098h ValueObject 0x6099 Homing speeds Index6099h Sub-index9.3Functional Description Object 0x609A Homing accelerationIndex 609AhError Cases 9.4DSP 402 Homing Methods 9.4.3Methods 3 and 4 Homing on the positive home switch and index pulse Page Figure 9-7 Homing on the positive home switch Figure 9-8 Homing on the positive home switch9.4.6Methods 15 and 16 Reserved 9.4.8Methods 31 and 32 Reserved10 Position Control Function 10.1General Information6065h Following error window 60F4h Following error actual value10.2Objects Object 0x6062 Position demand valueIndex 6062hObject 0x6065 Following error window Object 0x6064 Position actual valueIndex 6064HObject 0x6066 Following error time out Index6066h Object 0x6067 Position window Index6067h Object 0x6068: Position window timeObject 0x60FC Position demand value - increments Index60FCh 11 Profiled Position 11.1General Information607Ah Target position 607Bh Position range limitName ValueDescription Assumes target position11.2Objects Object 0x607A Target positionIndex 607AhEntry description Object 0x607D Software position limit Index607Dh Sub-indexSub-index Object 0x607F Max profile velocityIndex 607FhObject 0x6081 Profile velocity Index6081h Object 0x6082 End velocity not yet implementedObject 0x6083 Profile acceleration Index6083h Object 0x6084 Profile decelerationObject 0x6085 Quick stop deceleration Index6085h Object 0x6086 Motion profile type11.3Functional Description 5.Unless it was interrupted by a change set immediately, the next trajectory is executed as soon as a target reached is set 12 Interpolated Position 12.1General Information60C4h Interpolation data configuration 60C0h Interpolation sub mode selectBuffer reset Interpolation inactiveInterpolation active Controlword of Interpolated Position mode 12.2Objects Object 0x60C0 Interpolation sub mode selectIndex 60C0hObject 0x60C1 Interpolation data record Index60C1h Sub-indexObject 0x60C2 Interpolation time period Index60C2h Sub-indexObject 0x60C3 Interpolation sync definition Object 0x60C4 Interpolation data configuration ValueDescription ValueSub-index Sub-index Buffer strategiesFIFO Ring buffer12.3Functional Description Page 12.3.3Motion Synchronization 13 Profiled Velocity 13.1General Information6069h Velocity sensor actual value 6060h Velocity windowControlword of the profiled velocity mode 13.2Objects Object 0x6069 Velocity sensor actual valueIndex 6069hValue DescriptionObject 0x606B Velocity demand value IndexObject 0x606C Velocity actual value Index606Ch Object 0x606D Velocity windowObject 0x606E Velocity window time Index606Eh Object 0x606F Velocity thresholdObject 0x6070 Velocity threshold time Index6070h Object 0x60FF Target velocity14 Profiled Torque Mode 14.1General Information14.1.1Internal states Controlword of profile torque modeFunction Name14.2Objects dictionary entries 14.2.1Objects defined in other chapters14.2.2Objects description Target torque reachedObject 0x6072 Max torque Index6072h Object 0x6073 Max CurrentObject 0x6074 Torque Demand value Index6074h Object 0x6075 Motor Rate Current Index6075h Object 0x6076 Motor Rate TorqueObject 0x6077 Torque Actual value Index6077h Object 0x6078 Current Actual valueObject 0x6087 Torque slope Index6087h Object 0x6088 Torque profile typeAppendix A Dimension Index Table Physical DimensionDimension Index UnitAppendix B Notation Index Table SymbolPrefix Factor