
Jetter AG
Parameterization | 8
User Manual – JXM-IO-E30
52 / 70
8.6.5 Sending interface input values via TPDO
To send interface input values via TPDO, proceed as follows:
1.
Switch the JXM-IO-E30 to
Pre-Operational
state.
2.
Assign the desired interface.
3.
Invalidate the TxPDO object.
4.
Disable the mapping.
5.
Enter the mapping value.
6.
Enable the mapping.
7.
Validate the TxPDO object.
8.
Switch the JXM-IO-E30 to
Operational
state.
STX example
The following STX example shows you in part how you can output the value AI1 Voltage on
TPDO1.
//Switch
JXM-IO-E30
to Pre-Operational state
CanOpenSetCommand(
cCanChannel,CAN_CMD_NMT,CAN_CMD_NMT_Value(
cJXMNodeId,CAN_NMT_PREOPERATIONAL));
//AI_1 port type to AI_VOLTAGE (=1)
iTemp :=
1
;
CanOpenDownloadSDO(
cCanChannel, cJXMNodeId,
0x2100
,
1
, CANOPEN_DWORD,
4
, iTemp, iBusy);
when
SDOACCESS_FINISHED(iBusy)
continue
;
//Invalidating TxPDO object, setting uppermost bit to 1
dTemp :=
0x80000000
+
0x180
+0x30;
CanOpenDownloadSDO(
cCanChannel, cJXMNodeId,
0x1800
,
1
, CANOPEN_DWORD,
4
, dTemp, iBusy);
when
SDOACCESS_FINISHED(iBusy)
continue
;
//Disabling mapping
dTemp :=
0
;
CanOpenDownloadSDO(
cCanChannel, cJXMNodeId,
0x1a00
,
0
, CANOPEN_BYTE,
1
, dTemp, iBusy);
when
SDOACCESS_FINISHED(iBusy)
continue
;
//Entering value for AI1 voltage
dTemp :=
0x21000a10
;
// Index: 0x2100, subindex 0x0a = 10, length 0x10 = 16
bits
CanOpenDownloadSDO(
cCanChannel, cJXMNodeId,
0x1a00
,
1
, CANOPEN_DWORD,
4
, dTemp, iBusy);
when
SDOACCESS_FINISHED(iBusy)
continue
;
//Enabling mapping
dTemp :=
1
;
// Number of mapping entries
CanOpenDownloadSDO(
cCanChannel, cJXMNodeId,
0x1a00
,
0
, CANOPEN_BYTE,
1
, dTemp, iBusy);
when
SDOACCESS_FINISHED(iBusy)
continue
;