14.1. CANopen Overview

CANopen is a real-time, high-speed CAN-based protocol specified by CiA (CAN in Automation) for communicating among multiple nodes. CANopen networks are formed using twisted-pair cabling, where all network nodes can be directly wired together through D-sub connectors.

CANopen EDS (electronic datasheet) files are used to describe the communication parameters and object dictionary of CANopen nodes. Magna-Power Electronics provides this EDS file to customers which contains identifying information, supported communication objects, and parameter settings.

Magna-Power Electronics has implemented basic process data objects (PDOs) for use with our products. Customer PDO remapping is not supported. Layer setting services (LSS) is supported to change the node ID and baud rate of each node.

14.2. Physical Interface

../../../../../../_images/can-physical-interface.svg

Fig. 14.1 Rear interface

14.2.1. D-sub 9 Port

The ALx Series has a single, male D-sub 9 port on the rear of the unit for CANopen communications, shown in Rear interface labeled CANOPEN. The pinout for the D-sub 9 port is as follows:

  • Pin 2: CAN_L

  • Pin 3: CAN GND (isolated)

  • Pin 5: Shield GND

  • Pin 7: CAN_H

14.2.2. LED Codes

In the rear of the ALx Series is a communications interface with two exposed bi-color LEDs. The LED labeled RUN indicates status of the CANopen device and the one labeled ERR indicates CANopen communication errors, as shown in Rear interface. Status is indicated using colors and blink patterns, as shown in the tables below.

Table 14.1 RUN LED States

State

Description

Off

No power or initializing

Green

Online, operational state

Green, flashing

Online, pre-operational state

Green, 1 flash

Online, stopped state

Green, rapid flickering

Baud rate detection or LSS in progress

Red

Fatal event

Table 14.2 ERR LED States

State

Description

Off

No power or no error

Red, 1 flash

Bus warning limit reached

Red, 2 flashes

Error control event

Red, rapid flickering

LSS in progress

Red

Bus off (fatal event)

14.3. Data Objects

14.3.1. Process Data Objects (PDOs)

PDOs are real-time data frequently sent to and from connected Magna-Power Electronics nodes. When describing PDO traffic, it is referenced with respect to the CANopen slave node. For example, Transmit PDOs (TPDO) are transmitted from the slave and are read-only, while Receive PDOs (RPDO) transmits variables to the slave and have write access. Measurement readings would be mapped in the TPDO Mapping, whereas set points would be in the RPDO Mapping.

14.3.2. Service Data Objects (SDOs)

SDOs are messages sent on request and have no timing expectations. SDOs are intended for non-real-time communications, as they must wait for the network to respond. They are typically used for reporting the node status, changing operating modes, etc. SDOs variables should not be used to update values already part of a PDO, as they are updated regularly, and the values would be overwritten by the PDO.

14.4. CANopen State Machine

The master controls slaves by following the CANopen state machine. Slaves can transition between four states: Init, Pre-Operational, Operational, and Stopped. In each state, configuration checks are made and different types of communications are allowed. The transition between states are diagrammed in CANopen state machine. Allowed communications in each state is described in Allowed protocols for each state. Nodes enter Init when first switched-on and reach Operational under normal conditions.

../../../../../../_images/can-statemachine.svg

Fig. 14.2 CANopen state machine

Table 14.3 Allowed protocols for each state

State

RSDO/TSDO

TPDO

RPDO

Init

Pre-Operational

Operational

Stopped

14.5. CANopen Default Node Settings

The default settings for Magna-Power Electronics CANopen nodes are as follows:

  • Node ID: 0x70

  • Data rate: 10 kbps

These settings can be changed using Layer Setting Services (LSS). The exact procedure for changing these settings is device-specific and can be found in your PLC’s user manual. The details needed to reconfigure Magna-Power Electronics CANopen nodes are found in Node details for LSS. Note that the serial number is a unique identifier for each node and can be found printed on on the product label or through the about menu. The serial used for LSS is the part of the serial number that is listed after the - symbol in the product’s serial number.

Table 14.4 Node details for LSS

Property

Value

Vendor ID

0x0000001B

Product Code

0x0000000D

Revision Number

0x00010002

Serial Number

product serial (32-bit)

14.6. Development using Python

Communication with Magna-Power Electronics CANopen nodes can be done using the canopen Python library. The library allows for communication using CANopen and can be used to read and write data to CANopen nodes. The library is available for download on the Python Package Index (PyPI) using the link: canopen

A compatible CAN interface is needed. A full list of compatible interfaces is listed in the canopen library’s documentation, found here. Internally, Magna-Power Electronics uses the Seeed Studio USB to CAN Analyzer (114991193) for its CANopen development and testing.

14.6.1. Device Setup

Ensure that the canopen library and any necessary drivers are installed on your system. In order to correctly access the node’s object dictionary, Magna-Power Electronics supplies an EDS file with your CANopen product.

Magna-Power Electronics EDS File

The following code snippet shows how to create a CANopen network and connect to a node with the default node ID of 0x70 and data rate of 10 kbps. Ensure that the bus type and channel are set to the correct values for your interface. This code snippet also assumes that the EDS file is in the same directory as the script.

import canopen

# Set the interface port and bitrate
INTERFACE_PORT = 'COM7'
BITRATE = 10000

# Create a CANopen network and connect to the node
network = canopen.Network()
network.connect(bustype='seeedstudio', channel=INTERFACE_PORT, bitrate=BITRATE)
mpeNode = canopen.RemoteNode(0x70, 'mpe_canopen.eds')
network.add_node(mpeNode)

# Set the SDO response timeout to 2 seconds
mpeNode.sdo.RESPONSE_TIMEOUT = 2

# Set the state of the node to pre-operational
 mpeNode.nmt.state = 'PRE-OPERATIONAL'

# Add code here to read/write data to the node

network.disconnect()

14.6.2. SDO Communication

The available SDO variables are listed in the Manufacturer Specific Service Data Objects section. The following code snippet shows how to read and write to an SDO variable.

# Read from an SDO variable
current = mpeNode.sdo['MeasCurrQ'].raw

# Write to an SDO variable
mpeNode.sdo['SetpointCurr'].raw = 1.5

For SDO variables with multiple subindices, the subindex can be accessed using the following syntax:

status0 = mpeNode.sdo["StatusRegQ"][1].raw
status1 = mpeNode.sdo["StatusRegQ"][2].raw

14.6.3. PDO Communication

The available PDO variables are listed in the Manufacturer Specific Process Data Objects section. Before enabling PDO communication, the PDO configuration must be read from the node. The following code snippet shows how to read the PDO configuration from the connected node.

# Read PDO configurations from node
mpeNode.tpdo.read()
mpeNode.rpdo.read()

Note that TPDO data is the data transmitted by the Magna-Power Electronics node, while RPDO is the data received by the node.

There are two main ways to access PDO data: using the sync method or by using up an event timer. The sync method` is used to sync the PDO data with the node when a sync command is sent by the master, while the event timer` is used to specify the interval at which the node should transmit and receive its PDO data. The following code snippet shows how to setup the sync method to read PDO data and print to the console. Note that sync commands can be sent manually, or at fixed intervals as shown in the code.

# Set TPDO 1's transmit mode to sync
mpeNode.sdo['TPDO communication parameter 1']['Transmission type'].raw = 1

# Send a single sync command to the node
network.sync.transmit()

# Set up sync timer for automatic sync transmission
network.sync.start(0.25)  # Sync every 0.25 seconds

# Change state to operational (NMT start)
mpeNode.nmt.state = 'OPERATIONAL'

The following code snippet uses an event timer to automatically transmit the data without the need for a sync command:

# Set TPDO 1's transmit mode to be internal-event triggered
mpeNode.sdo['TPDO communication parameter 1']['Transmission type'].raw = 255

# Set event timer to 250 ms
mpeNode.sdo['TPDO communication parameter 1']['Event timer'].raw = 250

# Change state to operational (NMT start)
mpeNode.nmt.state = 'OPERATIONAL'

14.6.4. Layer Setting Services (LSS)

Layer setting services (LSS) can be used to change the node ID and data rate of a target CANopen node to meet the demands of your network. There are two possible states for LSS: configuration and waiting. In the configuration state, the LSS master can change the node ID and data rate of the node. In the waiting state, the node operates normally.

There are two methods to bring a node into the configuration state. The first method is selective and requires knowledge of the connected node’s properties. These include the vendor ID, product code, revision number, and serial number. The default values for these properties can be found in Node details for LSS. To selectively request the node to enter the configuration state, the following code snippet can be used:

network.lss.send_switch_state_selective(vendorId=0x1B, productCode=0xD, revisionNumber=0x10002, serialNumber=SERIAL_NUMBER)

If the node’s properties are not known, users can globally request all connected nodes to enter the configuration state. The following code snippet can be used to globally request all connected nodes to enter the configuration state:

network.lss.send_switch_state_global(network.lss.CONFIGURATION_STATE)

Once a node is in the LSS configuration state, the node ID and data rate can be changed. The following code snippet shows how to change these settings:

# Change the node ID to 0x71
network.lss.configure_node_id(0x71)

# Change the data rate to 500 kbps
network.lss.configure_bit_timing(2)

Note that when setting the node ID, only one node should be connected to the CANopen network to prevent address conflicts. This node ID can be set to any value between 0x01 and 0x7F. Data rates are set based on bit-timing values, as shown in Bit timing values for different data rates.

Table 14.5 Bit timing values for different data rates

idx

Data rate

8

10 kbps

7

20 kbps

6

50 kbps

5

100 kbps

4

125 kbps

3

250 kbps

2

500 kbps

1

800 kbps

0

1 Mbps

Finally, once the node is configured, the settings can be saved and the nodes can be brought back into the operational state using the following code snippet:

network.lss.store_configuration()
network.lss.send_switch_state_global(network.lss.WAITING_STATE)

14.7. Standard Object Dictionary

The physical interface to a CANopen network is performed with an industrial communication module installed internal to the ALx Series. The module complies with version 4.2.0 of the CiA 301 specification. This specification calls for services and standard data object implementations outlined in the reference material below. The data objects reside in allocated address space shown in Data object dictionary

CiA 301

Network Interface Appendix Anybus CompactCom CANopen Doc.Id. SCM-1202-108

Table 14.6 Data object dictionary

Index

Object

0x0000

Reserved

0x001-0x025F

Data types

0x0260-0x0FFF

Reserved

0x1000-0x1FFF

Communication profile area

0x2000-0x5FFF

Manufacturer specific profile area

0x6000-0x9FFF

Standardized device profile area

0xA000-0xBFFF

Standardized interface profile area

0xC000-0xFFFF

Reserved

14.8. Manufacturer Specific Instances Listing

CANopen Command

Write Index

Read Index

Description

Operation Commands

StatusQuesQ

N/A

0x200B

Returns the value of the Questionable Status register

StatusOperQ

N/A

0x200C

Returns the value of the Operation Status register

StatusRegQ

N/A

0x200D

Status Register

Input

0x2011

0x2012

Enables or disables the DC input based on parameter setting

Measurement Commands

MeasCurrQ

N/A

0x2101

Measures and returns the average current at the sense location

MeasVoltQ

N/A

0x2102

Measures and returns the average voltage at the sense location

MeasPwrQ

N/A

0x2103

Measures and returns the instantaneous DC power at sense location

MeasResQ

N/A

0x2104

Measures and returns the instantaneous resistance at sense location

Setpoint Commands

SetpointCurr

0x2201

0x2202

Sets the current set-point

SetpointVolt

0x2203

0x2204

Sets the voltage set-point

SetpointPwr

0x2205

0x2206

Sets the power set-point

SetpointRes

0x2207

0x2208

Sets the resistance set-point

Trip Commands

OverTripCurr

0x2301

0x2302

Sets the over current trip (OCT) set-point

OverTripVolt

0x2303

0x2304

Sets the over voltage trip (OVT) set-point

OverTripPwr

0x2305

0x2306

Sets the over power trip (OPT) set-point

UnderTripVolt

0x2307

0x2308

Sets the under voltage trip (UVT) set-point

Slew Commands

RiseRampCurr

0x2401

0x2402

Sets the rising slew rate for current when in current regulation state

RiseRampVolt

0x2403

0x2404

Sets the rising slew rate for voltage when in voltage regulation state

RiseRampPwr

0x2405

0x2406

Sets the rising slew rate for power when in power regulation state

RiseRampRes

0x2407

0x2408

Sets the rising slew rate for resistance when in resistance regulation state

FallRampCurr

0x2409

0x240A

Sets the falling slew rate for current when in current regulation state

FallRampVolt

0x240B

0x240C

Sets the falling slew rate for voltage when in voltage regulation state

FallRampPwr

0x240D

0x240E

Sets the falling slew rate for power when in power regulation

FallRampRes

0x240F

0x2410

Sets the falling slew rate for resistance when in resistance regulation state

Control Commands

ControlMode

0x2503

0x2504

Sets the control mode

Function Generator Commands

FuncType

0x2601

0x2602

Sets the desired function for the integrated function generator

FuncSinAmpl

0x2603

0x2604

Sets the amplitude for the sinusoid function

FuncSinOff

0x2605

0x2606

Sets the DC offset from zero for the sinusoid function’s midline

FuncSinPrd

0x2607

0x2608

Sets the period for the sinusoid function

FuncSquLoLevel

0x2609

0x260A

Sets the low level amplitude for the square function

FuncSquHiLevel

0x260B

0x260C

Sets the high level amplitude for the square function

FuncSquLoPrd

0x260D

0x260E

Sets the period that the square function remains at the low level amplitude

FuncSquHiPrd

0x260F

0x2610

Sets the period that the square function remains at the high level amplitude

FuncStepLoLevel

0x2611

0x2612

Sets the low level amplitude for the step function

FuncStepHiLevel

0x2613

0x2614

Sets the high level amplitude for the step function

FuncRampLoLevel

0x2615

0x2616

Sets the low level amplitude for the ramp function

FuncRampHiLevel

0x2617

0x2618

Sets the high level amplitude for the ramp function

FuncRampRisePrd

0x2619

0x261A

Sets the period for the ramp function to transition from low to high level amplitude

FuncRampFallPrd

0x261B

0x261C

Sets the period for the ramp function to transition from high to low level amplitude

Configuration Commands

FactoryRestore

0x2701

N/A

Restores the factory EEPROM data

Lock

0x2703

0x2702

Locks and unlocks the product from configuration and set-point changes

SenseMode

0x2706

0x2707

Configures the sense location and automated compensation values

CommProt

0x2708

0x2709

Changes the communication protocol

SetSource

0x270A

0x270B

Sets the setpoint source

MagnaLinkMode

0x270C

0x270D

Changes the MagnaLINK mode to allow for standalone or master-slave configuration

MagnaLinkReinit

0x270E

N/A

Reinitialize all connected slaves

CoolingMode

0x270F

0x2710

Sets the cooling mode

14.9. Manufacturer Specific Process Data Objects

14.9.1. Operation Commands

14.9.2. StatusRegQ

This command queries the Status Register. This read-only register holds the live (unlatched) operation status of the MagnaLOAD electronic load. Issuing a query does not clear the register. The register location and definitions are subject to change after any firmware release to accommodate new features. The Questionable Register is a subset of the status register and does not change between firmware updates. The present bit assignments are shown in the table below.

Access

RO

Data Format

32-bit Integer

Status Register 0

Bit

Name

Description

0

standby

output is in standby

1

live

output is active

2

solenoidStatus

aux power solenoid is open

3

nonhalt2

available

4

overCurrTrip

over current trip

5

overVoltTrip

over voltage trip

6

overPwrTrip

over power trip

7

remoteSenseLoss

remote sense voltage outside of acceptable bounds

8

underVoltTrip

under voltage trip

9

shutdown

target is creating a shutdown condition

10

linPwrLim

power across linear modules exceed ratings

11

resPwrLim

power across resistors exceed ratings

12

bootFailure

one or multiple target did not boot up

13

bootState

one or more targets are waiting to boot

14

phaseCurr

rated phase current exceeded

15

comm

communications are corrupted

16

overCurrProtect

terminal current exceeded product rating

17

overVoltProtect

terminal voltage exceeded product rating

18

tempRLin

linear module exceeded temperature

19

blownFuse

fuse is blown on the auxiliary power supply

20

interlock

interlock open

21

haltUserClear

available

22

maintenance

maintenance

23

tempDMod

diode modules exceeded temperature

24

incompatibleSysConfig

incompatible system configuration

25

stackOverflow

exceeded firmware stack

26

lineFault

line fault analog/digital inputs

27

tempRMod

resistor module exceeded temperature

28

belowRatedMinVolt

below minimum voltage rating(28)

29

outOfRegulation

out of regulation, unexpected currents measured

30

targetUpgrade

mainctrl upgrading other targets

31

haltSelfClear

available

Status Register 1

Bit

Name

Description

0

phaseLoss

one or more phase missing

1

blownFuseInput

input fuse blown on fuse/emi filter

2

fanLockedRotor

one or more fan’s rotor has locked

3

notUsed29

available

4

tempPwrMod

power processing module temperature fault

5

tempOutputMod

output filter module temperature fault

6

tempOutputCap

output capacitors temperature fault

7

tempTransformer

transformer exceeded temperature fault

8

notUsed26

available

9

notUsed27

available

10

notUsed28

available

11

notUsed1

available

12

notUsed2

available

13

notUsed3

available

14

notUsed4

available

15

notUsed5

available

16

invalidSysRating

invalid system rating

17

fwVersConflict

firmware version conflict

18

notUsed8

available

19

notUsed9

available

20

notUsed10

available

21

notUsed11

available

22

notUsed12

available

23

notUsed13

available

24

notUsed14

available

25

notUsed15

available

26

notUsed16

available

27

notUsed17

available

28

notUsed18

available

29

notUsed19

available

30

notUsed20

available

31

notUsed21

available

14.9.3. Measurement Commands

14.9.4. MeasCurrQ

This query commands the MagnaLOAD electronic load to measure and return the average current through the DC terminals.

Access

RO

Data Format

32-bit Floating Point Number

14.9.5. MeasVoltQ

This query commands commands the MagnaLOAD electronic load to measure and return the average voltage at the DC terminals. If the remote sense function is used and engaged, this command returns the voltage measured at the sense terminals.

Access

RO

Data Format

32-bit Floating Point Number

14.9.6. Setpoint Commands

14.9.7. SetpointCurr

This command programs the current set-point that the MagnaLOAD electronic load will regulate to when operating in constant current mode.

Access

RW

Data Format

32-bit Floating Point Number

14.9.8. SetpointVolt

This command programs the voltage set-point, in volts, which the MagnaLOAD electronic load will regulate to when operating in constant voltage mode.

Access

RW

Data Format

32-bit Floating Point Number

14.10. Manufacturer Specific Service Data Objects

14.10.1. Operation Commands

14.10.1.1. StatusQuesQ

This command queries and returns the values of the Questionable Register. This read-only register holds the live (unlatched) questionable statuses of the MagnaLOAD electronic load. Issuing this query does not clear the register. The bit configuration of the Questionable Register is shown in the table below.

Index

0x200B

Access

RO

Data Format

32-bit Integer

Questionable Register

Bit

Weight

Abbreviation

Description

0

1

OVP

over voltage protection, hard fault

1

2

OCT

over current trip, soft fault

2

4

OVT

over voltage trip, soft fault

3

8

OPT

over power trip, soft fault

4

16

OCP

over current protection, hard fault

5

32

OTP

over temperature protection, hard fault

6

64

RSL

remote sense loss, soft fault

7

128

SFLT

soft fault, the ord value of all soft faults

8

256

HFLT

hard fault, the ord value of all hard faults

9

512

ILOC

interlock open, soft fault

10

1024

IPL

input power loss fault, hard fault

11

2048

ADIF

analog or digital input fault, hard fault

14.10.1.2. StatusOperQ

This command queries and returns the values of the Operation Register. This read-only register holds the live (unlatched) operation statuses of the MagnaLOAD electronic load. Issuing this query does not clear the register. The bit configuration of the Operation Register is shown in the table below.

Index

0x200C

Access

RO

Data Format

32-bit Integer

Operation Register

Bit

Weight

Abbreviation

Description

0

1

STBY

standby

1

2

EN

enabled

2

4

RSEN

remote sense

3

8

LOCK

front panel locked

4

16

CC

constant current regulation, regulation status

5

32

CV

constant voltage regulation, regulation status

6

64

CR

constant resistance regulation, regulation status

7

128

CP

constant power regulation, regulation status

14.10.1.3. StatusRegQ

This command queries the Status Register. This read-only register holds the live (unlatched) operation status of the MagnaLOAD electronic load. Issuing a query does not clear the register. The register location and definitions are subject to change after any firmware release to accommodate new features. The Questionable Register is a subset of the status register and does not change between firmware updates. The present bit assignments are shown in the table below.

Index

0x200D

Access

RO

Data Format

32-bit Integer

Status Register 0

Bit

Name

Description

0

standby

output is in standby

1

live

output is active

2

solenoidStatus

aux power solenoid is open

3

nonhalt2

available

4

overCurrTrip

over current trip

5

overVoltTrip

over voltage trip

6

overPwrTrip

over power trip

7

remoteSenseLoss

remote sense voltage outside of acceptable bounds

8

underVoltTrip

under voltage trip

9

shutdown

target is creating a shutdown condition

10

linPwrLim

power across linear modules exceed ratings

11

resPwrLim

power across resistors exceed ratings

12

bootFailure

one or multiple target did not boot up

13

bootState

one or more targets are waiting to boot

14

phaseCurr

rated phase current exceeded

15

comm

communications are corrupted

16

overCurrProtect

terminal current exceeded product rating

17

overVoltProtect

terminal voltage exceeded product rating

18

tempRLin

linear module exceeded temperature

19

blownFuse

fuse is blown on the auxiliary power supply

20

interlock

interlock open

21

haltUserClear

available

22

maintenance

maintenance

23

tempDMod

diode modules exceeded temperature

24

incompatibleSysConfig

incompatible system configuration

25

stackOverflow

exceeded firmware stack

26

lineFault

line fault analog/digital inputs

27

tempRMod

resistor module exceeded temperature

28

belowRatedMinVolt

below minimum voltage rating(28)

29

outOfRegulation

out of regulation, unexpected currents measured

30

targetUpgrade

mainctrl upgrading other targets

31

haltSelfClear

available

Status Register 1

Bit

Name

Description

0

phaseLoss

one or more phase missing

1

blownFuseInput

input fuse blown on fuse/emi filter

2

fanLockedRotor

one or more fan’s rotor has locked

3

notUsed29

available

4

tempPwrMod

power processing module temperature fault

5

tempOutputMod

output filter module temperature fault

6

tempOutputCap

output capacitors temperature fault

7

tempTransformer

transformer exceeded temperature fault

8

notUsed26

available

9

notUsed27

available

10

notUsed28

available

11

notUsed1

available

12

notUsed2

available

13

notUsed3

available

14

notUsed4

available

15

notUsed5

available

16

invalidSysRating

invalid system rating

17

fwVersConflict

firmware version conflict

18

notUsed8

available

19

notUsed9

available

20

notUsed10

available

21

notUsed11

available

22

notUsed12

available

23

notUsed13

available

24

notUsed14

available

25

notUsed15

available

26

notUsed16

available

27

notUsed17

available

28

notUsed18

available

29

notUsed19

available

30

notUsed20

available

31

notUsed21

available

14.10.1.4. Input

This command enables or disables the MagnaLOAD electronic load input. The state of a disabled input is a high impedance condition.

Index

0x2011

Access

RW

Data Format

Boolean

Index

0x2012

Access

RO

Data Format

Boolean

14.10.2. Measurement Commands

14.10.2.1. MeasCurrQ

This query commands the MagnaLOAD electronic load to measure and return the average current through the DC terminals.

Index

0x2101

Access

RO

Data Format

32-bit Floating Point Number

14.10.2.2. MeasVoltQ

This query commands commands the MagnaLOAD electronic load to measure and return the average voltage at the DC terminals. If the remote sense function is used and engaged, this command returns the voltage measured at the sense terminals.

Index

0x2102

Access

RO

Data Format

32-bit Floating Point Number

14.10.2.3. MeasPwrQ

This query commands commands the MagnaLOAD electronic load to measure and return the average power at the DC terminals.

Index

0x2103

Access

RO

Data Format

32-bit Floating Point Number

14.10.2.4. MeasResQ

This query commands commands the MagnaLOAD electronic load to measure and return the average power at the DC terminals.

Index

0x2104

Access

RO

Data Format

32-bit Floating Point Number

14.10.3. Setpoint Commands

14.10.3.1. SetpointCurr

This command programs the current set-point that the MagnaLOAD electronic load will regulate to when operating in constant current mode.

Index

0x2201

Access

RW

Data Format

32-bit Floating Point Number

Index

0x2202

Access

RO

Data Format

32-bit Floating Point Number

14.10.3.2. SetpointVolt

This command programs the voltage set-point, in volts, which the MagnaLOAD electronic load will regulate to when operating in constant voltage mode.

Index

0x2203

Access

RW

Data Format

32-bit Floating Point Number

Index

0x2204

Access

RO

Data Format

32-bit Floating Point Number

14.10.3.3. SetpointPwr

This command programs the power set-point, in watts, which the MagnaLOAD electronic load will regulate to when operating in constant power mode.

Index

0x2205

Access

RW

Data Format

32-bit Floating Point Number

Index

0x2206

Access

RO

Data Format

32-bit Floating Point Number

14.10.3.4. SetpointRes

This command programs the resistance set-point, in ohms, which the MagnaLOAD electronic load will regulate to when operating in constant resistance mode.

Index

0x2207

Access

RW

Data Format

32-bit Floating Point Number

Index

0x2208

Access

RO

Data Format

32-bit Floating Point Number

14.10.4. Trip Commands

14.10.4.1. OverTripCurr

This command programs the over current trip (OCT) set-point. If the input current exceeds the over current trip set-point for multiple samples, the input is disconnected and an OCT fault is indicated.

Index

0x2301

Access

RW

Data Format

32-bit Floating Point Number

Index

0x2302

Access

RO

Data Format

32-bit Floating Point Number

14.10.4.2. OverTripVolt

This command programs the over voltage trip (OVT) set-point. If the input voltage exceeds the over voltage trip set-point for multiple samples, the input is disconnected and an OVT fault is indicated.

Index

0x2303

Access

RW

Data Format

32-bit Floating Point Number

Index

0x2304

Access

RO

Data Format

32-bit Floating Point Number

14.10.4.3. OverTripPwr

This command programs the over power trip (OPT) set-point. If the input power exceeds the over power trip set-point for multiple sample, the input is disconnected and an OPT fault is indicated.

Index

0x2305

Access

RW

Data Format

32-bit Floating Point Number

Index

0x2306

Access

RO

Data Format

32-bit Floating Point Number

14.10.4.4. UnderTripVolt

This command programs the under voltage trip (UVT) set-point. If the input voltage falls below the under voltage trip set-point for multiple samples, the input is disconnected and an UVT fault is indicated.

Index

0x2307

Access

RW

Data Format

32-bit Floating Point Number

Index

0x2308

Access

RO

Data Format

32-bit Floating Point Number

14.10.5. Slew Commands

14.10.5.1. RiseRampCurr

This command sets the current slew rate for increasing current transitions while in constant current regulation. MAXimum sets the slew to the fastest possible rate. MINimum sets the slew to the slowest rate. Slew rates less than the minimum value are set to MINimum. Slew rate settings less than the minimum value are set to MINimum. Slew rate settings greater than the maximum value are set to MAXimum.

Index

0x2401

Access

RW

Data Format

32-bit Floating Point Number

Index

0x2402

Access

RO

Data Format

32-bit Floating Point Number

14.10.5.2. RiseRampVolt

This command sets the voltage slew rate for increasing voltage transitions while in constant voltage regulation. The units for voltage slew rate are volts per millisecond. MAXimum sets the slew to the fastest possible rate. MINimum sets the slew to the slowest rate. Slew rates less than the minimum value are set to MINimum. Slew rate settings less than the minimum value are set to MINimum. Slew rate settings greater than the maximum value are set to MAXimum.

Index

0x2403

Access

RW

Data Format

32-bit Floating Point Number

Index

0x2404

Access

RO

Data Format

32-bit Floating Point Number

14.10.5.3. RiseRampPwr

This command sets the power slew rate for increasing power transitions while in constant power regulation. The units for power slew rate are watts per millisecond. MAXimum sets the slew to the fastest possible rate. MINimum sets the slew to the slowest rate. Slew rates less than the minimum value are set to MINimum. Slew rate settings less than the minimum value are set to MINimum. Slew rate settings greater than the maximum value are set to MAXimum.

Index

0x2405

Access

RW

Data Format

32-bit Floating Point Number

Index

0x2406

Access

RO

Data Format

32-bit Floating Point Number

14.10.5.4. RiseRampRes

This command sets the resistance slew rate for increasing resistance transitions while in constant resistance regulation. The units for resistance slew rate are ohms per millisecond. MAXimum sets the slew to the fastest possible rate. MINimum sets the slew to the slowest rate. Slew rates less than the minimum value are set to MINimum. Slew rate settings less than the minimum value are set to MINimum. Slew rate settings greater than the maximum value are set to MAXimum.

Index

0x2407

Access

RW

Data Format

32-bit Floating Point Number

Index

0x2408

Access

RO

Data Format

32-bit Floating Point Number

14.10.5.5. FallRampCurr

This command sets the current slew rate for decreasing current transitions while in constant current regulation. MAXimum sets the slew to the fastest possible rate. MINimum sets the slew to the slowest rate. Slew rates less than the minimum value are set to MINimum. Slew rate settings less than the minimum value are set to MINimum. Slew rate settings greater than the maximum value are set to MAXimum.

Index

0x2409

Access

RW

Data Format

32-bit Floating Point Number

Index

0x240A

Access

RO

Data Format

32-bit Floating Point Number

14.10.5.6. FallRampVolt

This command sets the voltage slew rate for decreasing voltage transitions while in constant voltage regulation. The units for voltage slew rate are volts per millisecond. MAXimum sets the slew to the fastest possible rate. MINimum sets the slew to the slowest rate. Slew rates less than the minimum value are set to MINimum. Slew rate settings less than the minimum value are set to MINimum. Slew rate settings greater than the maximum value are set to MAXimum.

Index

0x240B

Access

RW

Data Format

32-bit Floating Point Number

Index

0x240C

Access

RO

Data Format

32-bit Floating Point Number

14.10.5.7. FallRampPwr

This command sets the power slew rate for decreasing power transitions while in constant power regulation. The units for power slew rate are watts per millisecond. MAXimum sets the slew to the fastest possible rate. MINimum sets the slew to the slowest rate. Slew rates less than the minimum value are set to MINimum. Slew rate settings less than the minimum value are set to MINimum. Slew rate settings greater than the maximum value are set to MAXimum.

Index

0x240D

Access

RW

Data Format

32-bit Floating Point Number

Index

0x240E

Access

RO

Data Format

32-bit Floating Point Number

14.10.5.8. FallRampRes

This command sets the resistance slew rate for decreasing resistance transitions while in constant resistance regulation. The units for resistance slew rate are ohms per millisecond. MAXimum sets the slew to the fastest possible rate. MINimum sets the slew to the slowest rate. Slew rates less than the minimum value are set to MINimum. Slew rate settings less than the minimum value are set to MINimum. Slew rate settings greater than the maximum value are set to MAXimum.

Index

0x240F

Access

RW

Data Format

32-bit Floating Point Number

Index

0x2410

Access

RO

Data Format

32-bit Floating Point Number

14.10.6. Control Commands

14.10.6.1. ControlMode

This command configures the MagnaLOAD electronic load’s control mode. Control Modes provides more information about the various options.

Index

0x2503

Access

RW

Data Format

16-bit Integer

Index

0x2504

Access

RO

Data Format

16-bit Integer

14.10.7. Function Generator Commands

14.10.7.1. FuncType

This command selects the desired function for the integrated function generator, which is active when the product’s set point source is set to function generator.

Index

0x2601

Access

RW

Data Format

16-bit Integer

Index

0x2602

Access

RO

Data Format

16-bit Integer

14.10.7.2. FuncSinAmpl

This command sets the amplitude (Adc) for the sinusoid function when the set point source is set to 1 (function generator) and the function type is set to 0 (sinusoid).

Index

0x2603

Access

RW

Data Format

32-bit Floating Point Number

Index

0x2604

Access

RO

Data Format

32-bit Floating Point Number

14.10.7.3. FuncSinOff

This command sets the DC offset from zero (Adc) for the sinusoid function midline when the set point source is set to 1 (function generator) and the function type is set to 0 (sinusoid).

Index

0x2605

Access

RW

Data Format

32-bit Floating Point Number

Index

0x2606

Access

RO

Data Format

32-bit Floating Point Number

14.10.7.4. FuncSinPrd

This command sets the period (milliseconds) for the sinusoid function when the set point source is set to 1 (function generator) and the function type is set to 0 (sinusoid). The sinusoid’s period is the length of one full cycle.

Index

0x2607

Access

RW

Data Format

32-bit Floating Point Number

Index

0x2608

Access

RO

Data Format

32-bit Floating Point Number

14.10.7.5. FuncSquLoLevel

This command sets the low level amplitude for the square function when the set point source is set to 1 (function generator) and the function type is set to 1 (square).

Index

0x2609

Access

RW

Data Format

32-bit Floating Point Number

Index

0x260A

Access

RO

Data Format

32-bit Floating Point Number

14.10.7.6. FuncSquHiLevel

This command sets the high level amplitude for the square function when the set point source is set to 1 (function generator) and the function type is set to 1 (square).

Index

0x260B

Access

RW

Data Format

32-bit Floating Point Number

Index

0x260C

Access

RO

Data Format

32-bit Floating Point Number

14.10.7.7. FuncSquLoPrd

This command sets the period/duration (milliseconds) that the square function remains at the low level amplituide when the set point source is set to 1 (function generator) and the function type is set to 1 (square).

Index

0x260D

Access

RW

Data Format

32-bit Floating Point Number

Index

0x260E

Access

RO

Data Format

32-bit Floating Point Number

14.10.7.8. FuncSquHiPrd

This command sets the period/duration (milliseconds) that the square function remains at the low level amplituide when the set point source is set to 1 (function generator) and the function type is set to 1 (square).

Index

0x260F

Access

RW

Data Format

32-bit Floating Point Number

Index

0x2610

Access

RO

Data Format

32-bit Floating Point Number

14.10.7.9. FuncStepLoLevel

This command sets the low level amplitude for the step function when the set point source is set to 1 (function generator) and the function type is set to 2 (step).

Index

0x2611

Access

RW

Data Format

32-bit Floating Point Number

Index

0x2612

Access

RO

Data Format

32-bit Floating Point Number

14.10.7.10. FuncStepHiLevel

This command sets the high level amplitude for the step function when the set point source is set to 1 (function generator) and the function type is set to 2 (step).

Index

0x2613

Access

RW

Data Format

32-bit Floating Point Number

Index

0x2614

Access

RO

Data Format

32-bit Floating Point Number

14.10.7.11. FuncRampLoLevel

This command sets the low level amplitude for the ramp function when the set point source is set to 1 (function generator) and the function type is set to 3 (ramp).

Index

0x2615

Access

RW

Data Format

32-bit Floating Point Number

Index

0x2616

Access

RO

Data Format

32-bit Floating Point Number

14.10.7.12. FuncRampHiLevel

This command sets the high level amplitude for the ramp function when the set point source is set to 1 (function generator) and the function type is set to 3 (ramp).

Index

0x2617

Access

RW

Data Format

32-bit Floating Point Number

Index

0x2618

Access

RO

Data Format

32-bit Floating Point Number

14.10.7.13. FuncRampRisePrd

This command sets the period/duration (milliseconds) for the ramp function to transition from the low level amplitude to the high level amplitude when the set point source is set to 1 (function generator) and the function type is set to 3 (ramp).

Index

0x2619

Access

RW

Data Format

32-bit Floating Point Number

Index

0x261A

Access

RO

Data Format

32-bit Floating Point Number

14.10.7.14. FuncRampFallPrd

This command sets the period/duration (milliseconds) for the ramp function to transition from the high level amplitude to the low level amplitude when the set point source is set to 1 (function generator) and the function type is set to 3 (ramp).

Index

0x261B

Access

RW

Data Format

32-bit Floating Point Number

Index

0x261C

Access

RO

Data Format

32-bit Floating Point Number

14.10.8. Configuration Commands

14.10.8.1. FactoryRestore

This command performs a factory restore to default EPROM values. Both Soft Restore and Hard Restore are available through command parameters.

Index

0x2701

Access

RW

Data Format

16-bit Integer

14.10.8.2. Lock

This command configures the MagnaLOAD electronic load’s lock state. While locked, the stop button is the only functional button on the front panel. See Lock for more details on how lock works and how behaves relative to other locking inputs (front panel and digital input).

Index

0x2703

Access

RW

Data Format

Boolean

Index

0x2702

Access

RO

Data Format

Boolean

14.10.8.3. SenseMode

This command configures where the MagnaLOAD electronic load senses voltage. The sense location also effects how power and resistance are calculated. Local sensing monitors the directly across the output terminals. Remote sensing, as described in Remote Sense Connection, measures across the terminal JS2. This external connection can be used to improve regulation at the point of load, as is needed for example, in compensating voltage drops caused by wire resistance.

Index

0x2706

Access

RW

Data Format

16-bit Integer

Index

0x2707

Access

RO

Data Format

16-bit Integer

14.10.8.4. CommProt

This command changes the command protocol of the MagnaLOAD electronic load.

Index

0x2708

Access

RW

Data Format

16-bit Integer

Index

0x2709

Access

RO

Data Format

16-bit Integer

14.10.8.5. SetSource

The command selects and routes different set points sources to the digital controller. Operation of this feature is described in Set Point Source. By default, the source is set to local (value 0), where set points originating from the front panel or communication interfaces are routed to the ALx Series digital control. When the source is set to function generator (value 1), set points are generated internally, by a periodic function generator block. When external analog input (value 3) is set, the voltage(s) applied to the rear connector are converted into set points.

Index

0x270A

Access

RW

Data Format

16-bit Integer

Index

0x270B

Access

RO

Data Format

16-bit Integer

14.10.8.6. MagnaLinkMode

This command changes the MagnaLINK mode to allow for standalone or master-slave configurations.

Index

0x270C

Access

RW

Data Format

16-bit Integer

Index

0x270D

Access

RO

Data Format

16-bit Integer

14.10.8.7. MagnaLinkReinit

This command should be used to reinitialize system ratings when a slave is added or removed from a master-slave configuration.

Index

0x270E

Access

RW

Data Format

16-bit Integer

14.10.8.8. CoolingMode

This command configures the MagnaLOAD electronic load’s cooling mode. In Automatic Cooling mode (value 0), the cooling output is regulated automatically based on internal operating conditions. In Maximum Cooling mode (value 1), the cooling output is forced on at full capacity. When queried, the command returns two comma-separated values: the configured cooling mode followed by the current solenoid state (0 = OFF, 1 = ON) on water-cooled units, or 0 on air-cooled units.

Index

0x270F

Access

RW

Data Format

16-bit Integer

Index

0x2710

Access

RO

Data Format

16-bit Integer