5 — VEHICLE CONTROL LANGUAGE (VCL)
pg. 105
Return to TOC Curtis Model 1351 – December 2018
SRDOs
CANopen standard DS304 denes the method to produce Safety Related Date Objects. When enabled,
the Primary will create the rst message and the Supervisor will follow with the data inverted second
message. If the CAN ports are linked, these messages will go out the same ports and thus conform to
the CANopen standard. If the ports are not linked, each message will go out its own port, but in the
same format and timing.
For SRDO transmission, a mailbox in the Primary must be set up and set to transmit on command
and a mailbox must be setup up to match in the supervisor. e 11 bit identier must be set according
to the DS304 denition, which also means the Node_IDs must be set to the proper standard as well.
SRDOs may also be received. To do this, a mailbox in the Primary (port1) must be setup to receive one
message and mailbox to receive the inverted data message in the Supervisor (port 2).
e following VCL functions can then be used to send SRDOs and validate incoming SRDOs
SRDO_Handle = Setup_Transmit_SRDO() Links two mailboxes to be
transmitted in a linked fashion.
Setup_Transmit_SRDO (Mailbox_Handle_1, Mailbox_Handle_2,
Rate, Interval)
:
Mailbox_Handle_1 e Primary mailbox (Primary_Handler)
Mailbox_Handle_2 e Supervisory mailbox (Supervisor_Handler)
Rate If set to EVENT (=0) then this mailbox will
send on the send command otherwise is it the
rate between sending each primary mailbox in
milliseconds
Interval e time, in milliseconds, between sending the
Primary and Supervisor messages.
:
The handle to the setup SRDO function
:
Enable_Transmit_SRDO() Starts the SRDO
Enable_Receive_SRDO() Starts the SRDO
These two functions start the SRDO. If set to a cyclic rate, this will start
transmissions
Enable_Transmit_SRDO(SRDO_Handle)
Enable_Receive_SRDO(SRDO_Handle)
:
SRDO_Handle See RETURN: SRDO_Handle = Setup_Transmit_
SRDO()
:
: