Home

Description - ICP DAS USA`s I

image

Contents

1. 80 3 5 57 18123 _ RemoveNMTErrlISR Description When the user doesn t need the NMTErr IST function call this function to remove the user s IST Syntax WORD 18123 _RemoveNMTErrlSR BYTE SlotNo Parameter SlotNo input 8123W slot number 0 7 I 8123W user manual ver 2 00 Oct 26 2011 81 3 5 58 18123 GetMasterReadSDOEvent Description Using this function can get all the read SDO messages sent to the specific node ID of the I 8123W For example the I 8123W is initialized with node ID 2 If someone sends an SDO message with the COB ID 0x602 to the I 8123W for reading an object users can use the function 18123 GetMasterReadSDOEvent for obtaining this SDO message and respond some information to the SDO sender The parameter SlotNo indicates the number of the I 8123W which receives the read SDO message The parameters Index and Sublndex are the object indicator The function 18123 _GetMasterReadSDOEvent is usually applied with the function 18123 _InstallReadSDOISR About the demo please refer to the section 4 1 6 SDO_PDO_ISR Note The function is valid while the Node parameter of the function 18123 _InitMaster is gt 0 Syntax WORD 18123 GetMasterReadSDOEvent BYTE SlotNo WORD Index BYTE SubIndex Parameter SlotNo output Get the slot number of the I 8123W which receives the read SDO message Index output Get the object index of
2. 18 8 Program Start CANopen Master Initialization 18123_InitMaster Add Slave Nodes Manual Setting 18123_AddNode p 18123_InstallPDO List 18123_EDS_Load 18123_SetSYNC List 18123 SetEMCY List CANopen Master Functionalities Interrupt ISR NMT sonigas EMCY ISR SYNC NMT Error Control ISR EMCY Services Read SDO ISR SDO Services Remote PDO ISR PDO Services S CANopen Master Shutdown 18123 ShutdownMaster 8 Program End Figure 3 1 Main programming flow chart I 8123W user manual ver 2 00 Oct 26 2011 19 3 4 Communication Services Introduction NMT Services The CANopen Master Library provides several NMT service functions such as the functions 18123 AddNode 18123 EDS Load 18123 RemoveNode 18123 NMTChangeState 18123 NMTGetState 18123 NMTHeartbeat and 18123 NMTGuarding As the prerequisite for the master the slave nodes have to be registered by the function 18123 AddNode or 18123 EDS _ Load with providing its Node ID The registered slave nodes can be individually removed from the node list by the function 18123 _RemoveNode Through NMT services the NMT Master controls the state of the slaves Table 3 3 is the command value and corresponding NMT command for the input parameters of the function 18123 _
3. 29 3 5 8 18123 GetMasterMode Description If user want to know what operation mode of the master is call the function to get it Syntax WORD 18123 GetMasterMode BYTE SlotNo BYTE Mode BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 Mode output 0 is normal mode default mode and 1 is listen mode BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 30 3 5 9 18123 GetFirmwareVersion Description The function can let users know what is the version number of the I 8123W s firmware Syntax WORD 18123 _GetFirmwareVersion BYTE SlotNo WORD Fir_Ver BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 Fir_Ver output 8123W firmware version information BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the
4. 65 3 5 42 18123 GetSYNCID Description This function can get the SYNC ID from the COB ID list of the I 8123W Syntax WORD 18123 GetSYNCID BYTE SlotNo BYTE Node WORD Cobid BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 Node input Slave device Node ID 1 127 Cobid output Return the COB ID used by the SYNC object BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo and Node again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 66 3 5 43 18123 SendSYNCMsg Description Use the function 18123 SendSYNCMsg to send a SYNC message with specified COB ID cyclically If the parameter Timer is 0 the SYNC message will be stopped If the parameter Timer is more than 0 the function will send SYNC message per Timer millisecond until finish the parameter Times When the Times is set to 0 the function will send SYNC message continuously until set Timer to 0 Users can set at most 5 SYNC messages with different ID to be
5. Parameter SlotNo input 8123W slot number 0 7 PDOCnt input The number of the Cobid array Cobid input COB ID array used by the TxPDO objects PollingTime input The minimum polling timer for the COB ID array BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo and Cobid again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 48 3 5 26 18123 GetPDOLastData Description Using the function 18123_GetPDOLastData can get the last data of the RxPDO and TxPDO from the PDO data buffer The last PDO data is saved in PDO buffer so it may not the same with the real situation Syntax WORD 18123 _GetPDOLastData BYTE SlotNo WORD Cobid BYTE IsNew BYTE Den BYTE RData BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 Cobid input COB ID used by the PDO object IsNew output Check the data if had been read before 0 is been read before and 1 is new one DLen output The data length of the PDO message RData output The PDO message gets fro
6. Description This function can get the EMCY ID from the COB ID list of the I 8123W Syntax WORD 18123 GetEMCYID BYTE SlotNo BYTE Node WORD Cobid BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 Node input Slave device Node ID 1 127 Cobid output Return the COB ID used by the EMCY object BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo and Node again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 71 3 5 48 18123 ReadLastEMCY Description This function can check if one slave had produced EMCY If yes this function will return the last EMCY message of the specific slave Syntax WORD 18123 ReadLastEMCY BYTE SlotNo BYTE Node BYTE IsNew BYTE RData BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 Node input Slave device Node ID 1 127 IsNew output Check the data if had been read before 0 is been read before and 1 is new one RData output 8 byte EMCY message gets from the EMCY buffer Bl
7. Parameter SlotNo input 8123W slot number 0 7 Status output The pointer for obtaining the CAN status It indicates the value of status register of SJA1000 Its meanings are described below Bit NO Description MSB Bus status 1 for bus off 0 for bus on Error status 1 for at least one error 0 for OK SJA1000 Transmit status 1 for transmitting O for idle SJA1000 Transmit completes status 1 for complete O for incomplete SJA1000 Transmit buffer status 1 for released 0 for locked Data overrun status 1 for SJA1000 reception buffer overrun 0 for OK 7 6 5 4 SJA1000Receive status 1 for receiving 0 for idles 3 2 1 0 LSB Receive buffer status 1 for at least one message stored in the SJA1000 reception buffer 0 for empty I 8123W user manual ver 2 00 Oct 26 2011 27 3 5 6 18123 MasterSendBootupMsg Description To use the function 18123 _MasterSendBootupMsg can let I 8123W sends a boot up message after 18123 _InitMaster is called Note The function is valid while the Node parameter of the function 18123 _InitMaster is gt 0 Syntax WORD 18123 _MasterSendBootupMsg BYTE SlotNo BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedu
8. 9 2 Hardware Specification 2 1 Hardware Structure vw RK ee 1 3123W CANopen Tx Rx LED Master via Loci gt I 8123W user manual ver 2 00 Oct 26 2011 10 2 2 Wire Connection In order to minimize the reflection effects on the CAN bus line the CAN bus line has to be terminated at both ends by two terminator resistors as in the following figure According to the ISO 11898 2 spec each terminator resistor is 120Q or between 108 2 132 The length related resistance should have 70m 2 m Users should check the resistances of the CAN bus before they install a new CAN network Device Device N CAN_H COI CAN_L Moreover to minimize the voltage drop over long distances the terminator resistor should be higher than the value defined in the ISO 11898 2 The following table can be used as a good reference Bus Cable Parameters Bus Length Length Related Terminator Cross Section meter Resistance Resistor Q mQ m Type 0 40 70 Ree EEN mm 22AWG 40 300 lt 60 ee EE mm 20AWG 300 600 lt 40 EE 150 300 20AWG 0 75 0 8mm 600 1K lt 20 18AWG 150 300 I 8123W user manual ver 2 00 Oct 26 2011 11 In the I 8123W the 120Q terminator resistor is supplied The SW1 of the I 8123W is for the terminator resistor Its location is shown in the following figure CAN Connector JP3 PTY e 8123W Connect
9. Enable Sys Msg Pause Rx Msg Buffer Disable Sys Msg V Show message on the list SaveToFile Send CAN Message 11 bit ID ID Hex Len Data Hex separated by space 29 bit m BFF RTR E FF FF FF FF FF FF FF FP Send The download dialog will be popped up Users can see the firmware name modified date and file size of the firmware stored in the I 8123W Then click Update button to continue I 8123W user manual ver 2 00 Oct 26 2011 107 Filter Setting Hex Baud Setti Hex Slot NO fSlot4 v g Hex ing Hex Msg Format Acc Code 00000000 Baud 125K bps Ki Hex C Dec Update Firmware Acc Mask FFFFFFFF BTO kr BT1 ke O asc CAN Status Enable Sys Msg CAN Status Hex Clear Status Disable Sys Msg Pause Rx Msg Buffer g Buffer Firmware CM1S107 EXE Modified 2009 3 3 11 37 15 Size 112918 V Show message on the list SaveToFile Send CAN Message 11 bit ID ID Hex Len Data Hex separated by space 2o bitID Eer mb Freen Send In the browser select the file which you want to download Then click OK button to go on the download procedure Take a note that when users click OK button the download procedure will be started The original firmware stored in the I 8123W will be killed mao 120 _Utility Name KI Type Execution Files exe v When the procedure is finished users can see the present firmware information of the I 8123W Click OK
10. Send the SDO abort message 18123 _PDOWrite Use the PDO to write data to the CANopen node 18123 PDORemote Use the PDO to get data from the CANopen node 18213 _SetPDORemotePolling Set PDO polling list table and poll them 18123 GetPDOLastData Get the last input or output PDO data 18123 GetMultiPDOData Get the several input or output PDO data once 18123_GetRxPDOID Get all COB ID of the RxPDO of the specific slave 18123 _GetTxPDOID Get all COB ID of the TxPDO of the specific slave xIOIOJOJO Xx x xk x lt x xix OlIoloix ol xiolololojoliolojlolo 18123 _InstallPDO Install and enable a specific PDO I 8123W user manual ver 2 00 Oct 26 2011 14 18123_ DynamicPDO New or change a PDO mapping to the slave 18123 _ RemovePDO Remove a specific PDO mapping entry or object 18123_ChangePDOID Change the PDO COB ID of a specific slave 18123 _ GetPDOMapInfo Obtain all the PDO related information 18123_InstallPDO_List Install a PDO manually without check if it exists 18123 RemovePDO List Remove PDO object without check real states 18123 PDOUseEntry Change the valid entry number of the PDO objects 18123 PDOTxType Set transmission type of the specific TxPDO 18123 PDOEventTimer Set event timer of the specific TxPDO 18123 ChangeSYNCID Change the SYNC COB ID 18123 SetSYNC_List Set
11. button to close the download dialog Afterwards the new firmware will be run automatically I 8123W user manual ver 2 00 Oct 26 2011 108 OK X ota vi Cen BEE pooooooo Baud 125Kbps v S Update Firmware bm Fe mb O Enable Sys Msg Clear Status Pause Disable Sys Msg 18120W_Utility k x re Te o SEET J 8123W user manual ver 2 00 Oct 26 2011 109
12. BYTE E_Node BYTE NodeList BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 SG Node input Start node ID E Node input End node ID This function will scan node ID from S_Node to E_Node If S_ Node gt E_Node it will scan all slave node ID 1 127 on the CANopen network NodeList output This is a 16 byte array parameter Each bit of the parameter means a node ID the bit is 0 means that the node ID doesn t exist and 1 means the node ID is on the CANopen network For example if the NodeList 0 is 0x16 0001 0110 it means that the nodes with ID 1 2 and 4 exist and the nodes with ID 0 3 5 6 and 7 dont exist If the NodeList 1 is 0x41 0100 0001 it means that the nodes with ID 8 and 14 exist and the nodes with ID 9 10 11 12 13 and 15 don t exist BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 36 3 5 14 18123 GetNodeList Description User can use the function 18123 GetNodeList to know how many
13. If the ResType is 1 write type the Len and Data parameter is useless Data input Return 0 4 bytes of the SDO response data I 8123W user manual ver 2 00 Oct 26 2011 84 3 5 61 18123 _InstallReadSDOISR Description This function allows the user to apply the ReadSDO IST interrupt service thread of I 8123W When the user puts his read SDO process into this function all the read SDO messages sent to the specified I 8123W will trigger the IST For example the I 8123W is initialized with node ID 2 If someone sends an SDO message with the COB ID 0x602 for reading the object of the I 8123W the I 8213W will go into the IST if the user has installed it Note The function is valid while the Node parameter of the function 18123 _InitMaster is gt 0 Syntax WORD 18123 _InstallReadSDOISR BYTE SlotNo void RSDOISR Parameter SlotNo input 8123W slot number 0 7 RSDOISR input The pointer which points a function with format void XXX y The XXX is the function name of the user s process This process is usually used with the function 18123 GetMasterReadSDOE vent I 8123W user manual ver 2 00 Oct 26 2011 85 3 5 62 18123 RemoveReadSDOISR Description When the user doesn t need the ReadSDO IST function call this function to remove the user IST Syntax WORD 18123_ RemoveReadSDOISR BYTE SlotNo Parameter SlotNo inp
14. 18123_InstallRxPDOISR Install the user defined Write Master PDO process 18123_ RemoveRxPDOISR Remove the Write Master PDO process 18123_InstallTxPDOISR Install the user defined Remote Master PDO process O O O O0 0 O0 O O O 0 0 0 0 0 0 0 0 0 0 XIX OOJ x XIX OOJO x X x 18123 _ RemoveTxPDOISR Remove the Remote Master PDO process Table 3 1 Description of functions I 8123W user manual ver 2 00 Oct 26 2011 3 2 Function Return Code The following table interprets all the return code returned by I 8123W E Error ID Description Code 0 CPM_NoError OK 3 CPM_SlotNumberErr There is no I 8123W on the specific slot No 5 CPM_ConfigErr The I 8123W hasn t been configured successfully 6 CPM_MasterlnitErr The I 8123W initialization error 7 CPM_MasterNotlnit The I 8123W hasn t been initialized 8 CPM_ListenMode The l 8123W is in listen mode now 9 CPM_NodeErr Set node number error 10 CPM_NodeExist The node had been added to the Master 12 CPM_TxBusy Tx buffer is busy please wait a minute to send again 13 CPM_UnknowCmd This version of firmware doesn t support the function 14 CPM_CmdReceErr I 8123W receive command of wrong length 15 CPM_DataEmpty There is no data to receive 16 CPM_MemAllocErr I 8123W has not enough memory 17 CPM_SendCycMsgErr Cyclic message send error 18 C
15. 3 5 65 18123 GetMasterRemotePDOEvent Description Using this function can get all the Remote PDO messages sent to the I 8123W For example the I 8123W has used the function 18123 InstallPDO_List to install an 8123W s TxPDO object with the COB ID 0x444 If someone sends a Remote PDO message with the COB ID 0x444 to the l 8123W users can use the function 18123 GetMasterRemotePDOEvent to get this PDO message The parameter SlotNo indicates the number of the I 8123W which receives the Remote PDO message The parameter Cobid is the PDO COB ID sent to the I 8123W This function is usually used with the function 18123 InstallRemotePDOISR About the demo please refer to the section 4 1 6 SDO_PDO_ISR Note The function is valid while the Node parameter of the function 18123 _InitMaster is gt 0 Syntax WORD 18123 GetMasterRemotePDOEvent BYTE SIotNo WORD Cobld Parameter SlotNo output Get the slot number of the I 8123W which receives the Remote PDO message Cobld output Return the COB ID of the Remote PDO message I 8123W user manual ver 2 00 Oct 26 2011 89 3 5 66 18123 GetMasterRxPDOEvent Description Using this function can get all the RxPDO messages sent to the I 8123W For example the 1I 8123W has used the function 18123 InstallPDO_List to install an I 8123W s RxPDO object with the COB ID 0x333 If someone sends an RxPDO message with the COB ID 0x333 to the I 8123W
16. function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo and Node again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 39 3 5 17 18123 _ NMTGuarding Description Use the function 18123 _NMTGuarding to set guard time and life time factor of the slave with the specified node ID Then the master will automatically send the guarding message to slave device according to the GuardTime parameters of this function If the master doesn t receive the confirmation of guarding message from the salve the I 8123W will produce a Node Guarding Event event to users Users may use the function 18123 InstalINMTErrlSR to install a user defined process to get the guarding fail event and process the guarding fail procedure However if the slave doesn t receive the guarding message during the Node Life time period Node Life time GuardTime LifeTime it will be triggered to send the EMCY message It is recommended that LifeTime value is set to more than 1 Take a note that following the CANopen specification it is not allowed for one slave device to use both error control mechanism
17. function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 31 3 5 10 18123 EDS Load Description The function 18123 EDS Load can let users load EDS file for adding a CANopen slave with specified Node ID into the master node list Using this function will not send any message to check if the slave is existent or not Syntax WORD 18123 _EDS_Load BYTE SlotNo BYTE Node char FilePath WORD DelayTime WORD ResTimeout BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 Node input Slave device Node ID 1 127 FilePath input Absolute or relative file path of the EDS file DelayTime input The parameter defines the time interval between sending two messages from the I 8123W It can avoid the master frequently sending messages that may overrun the buffer of the slave Too large value of this parameter reduces the performance of the I 8123W The unit of the parameter is ms This parameter will be applied to the specified slave after finishing the ESD loading ResTimeout input The timeout value of the response of the CANopen slaves When the master sends a CANopen message to the slave it will wait the response until timeout if there
18. is a response The unit of this parameter is millisecond This parameter will be applied to the specified slave after finishing the ESD loading BlockMode input 0 means this function is non block function and 1 is block function If set this parameter to 1 the running procedure of the users application is held until finishing this function If 0 this function returns CPM_ Processing directly While users apply it with the same SlotNo again it returns the process status If the procedure is still not complete it returns CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 32 3 5 11 18123 AddNode Description The function 18123 AddNode can add a CANopen slave with specified Node ID into the master node list There are three mode of the function Mode 1 is adding node automatically mode 2 is adding node manually and mode 3 is waiting node s boot up massage for add In the automatic mode after calling this function to add a slave the slave will be into the operational state directly And master will scan the TxPDO1 TxPDO10 and RxPDO1 RxPDO10 and install them into the firmware of the I 8123W if the slave supports these PDO objects In the manual mode this function will add a CANopen slave into the master node list only and will not send any message to check if the slave is existent or not Besides the manual mode doesn t install the SYNC ID EMCY ID and any PDO object into the firm
19. is usually used with the 18123 _InstallRemotePDOISR function About the demo please refer to the section 4 1 6 SDO_PDO_ISR Note The function is valid while the Node parameter of the function 18123 _InitMaster is gt 0 Syntax WORD 18123 _ResponseMasterPDO BYTE SlotNo WORD Cobld BYTE Len BYTE Data Parameter SlotNo input 8123W slot number 0 7 Cobld input TxPDO COB ID for replying the PDO message Len input The data length of the response data Data input Return the COB ID of the TxPDO PDO message I 8123W user manual ver 2 00 Oct 26 2011 91 3 5 68 18123_InstallRxPDOISR Description This function allows the user to apply the RxPDO IST interrupt service routine of the 8123W When the user puts his process into this function all the RXxPDO messages with the I 8123W s PDO objects will trigger the IST For example the I 8123W has used 18123 _InstallPDO_List to install a PDO object with the COB ID 0x333 of the I 8123W If some one sends a PDO message with the COB ID 0x333 to the I 8123W the I 8213W will go into the IST if the user had installed it Note The function will usefully when the Node parameter of the function 18123 _InitMaster is gt 0 Syntax WORD 18123 _InstallRxPDOISR BYTE SlotNo void RXPDOISR Parameter SlotNo input 8123W slot number 0 7 RXPDOISR input The pointer which points a function with format
20. of the SDO write data I 8123W user manual ver 2 00 Oct 26 2011 83 3 5 60 18123_ ResponseMasterSDO Description Using this function can reply the SDO messages to the SDO sender For example the I 8123W is initialized with node ID 2 If someone sends a SDO message with the COB ID 0x602 for reading or writing the object of the I 8123W the I 8123W need to reply the corresponding SDO message use the function 18123_ResponseMasterSDO to do it When users implement the function 18123 _ResponseMasterSDO the I 8123W will send a SDO message with COB ID 0x582 to the CANopen network This function is usually applied with the SDO ISR series function About the demo please refer to the section 4 1 6 SDO_PDO_ISR Note1 The function is valid while the Node parameter of the function 18123 _InitMaster is gt 0 Note2 If the I 8123W want to reply a SDO Abort message please use the function 18123 SDOAbortTransmit section 3 5 20 to do it Syntax WORD 18123 ResponseMasterSDO BYTE SlotNo BYTE ResType WORD Index BYTE Sublndex BYTE Len BYTE Data Parameter SlotNo input 8123W slot number 0 7 ResType input Response type of SDO message 0 for replying the read SDO message and 1 for the write SDO message Index input Object index of object dictionary of slave devices Subindex input Object subindex of object dictionary of slave devices Len input The data length of the response data
21. sent cyclically Syntax WORD 18123 SendSYNCMsg BYTE SlotNo WORD Cobid WORD Timer DWORD Times BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 Cobid input COB ID used by the SYNC object Timer input SYNC message transmission period If the timer is 0 the SYNC message will be stopped Times input SYNC message transmission times If the time is 0 the SYNC message will be sending until Timer is set to 0 BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo and Cobid again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 67 3 5 44 18123 GetCyclicSYNCInfo Description This function can get at most 5 SYNC messages information which have been configured by the function 18123 _SendSYNCMsg User can know what SYNC ID had been set Syntax WORD 18123 GetCyclicSYNCInfo BYTE SlotNo WORD Cobid WORD Timer DWORD Times BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 Cobid input COB ID array Return most 5 SYNC ID Tim
22. slave nodes are added to the node list of the I 8123W Syntax WORD 18123 GetNodeList BYTE SlotNo BYTE NodeList BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 NodeList output This is a 16 byte array parameter Each bit of the parameter means a node ID the bit is 0 means the node ID not exist and 1 means the node ID now on the CANopen bus For example if the NodeList 0 is 0x16 0001 0110 it means that the nodes with ID 1 2 and 4 have been added into node list and the nodes with ID 0 3 5 6 and 7 dont If the NodeList 1 is 0x41 0100 0001 it means that the nodes with ID 8 and 14 have been added into node list and the nodes with ID 9 10 11 12 13 and 15 don t BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 37 3 5 15 18123_ NMTChangeState Description The function 18123 _NMTChangeState is used to change the NMT state of a slave If the node parameter of this function is set to 0 the state of all
23. the parameter offset to set the start position of the PDO data and use the parameters TData and DLen to point the data and data length Then this function will follow the data length to cover the slave PDO buffer of the I 8123W with the data from the specified start position and send the data to the specified slave via PDO protocol at the same time Syntax WORD 18123 PDOWrite BYTE SlotNo WORD Cobid BYTE Offset BYTE DLlen BYTE TData BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 Cobid input COB ID used by the PDO object Offset input The start byte position of PDO data 0 7 DLen input data size dlen offset lt 8 total length of the PDO TData output The data pointer point to the PDO data BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo and Cobid again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 46 3 5 24 18123 PDORemote Description Use the function 18123 PDORemote to send a RTR remote transmit request PDO message
24. the SYNC COB ID without check if it exists 18123 _GetSYNCID Get the SYNC COB ID 18123 SendSYNCMsg Send the SYNC message 18123 GetCyclicSYNCInfo Get all the cyclic sending SYNC information 18123 ChangeEMCYID Change the EMCY COB ID 18123_SetEMCY_List Set the EMCY COB ID and don t check if it exists 18123_GetEMCYID Get the EMCY COB ID 18123 ReadLastEMCY Get the last EMCY message of the slave 18123 GetEMCYData Get the EMCY message from the EMCY buffer 18123 GetNMTError Get the NMT Error event from the NMT event buffer 18123_InstallEMCYISR Install user defined EMCY process 18123_ RemoveEMCYISR Remove the EMCY process 18123_InstalINMTErrlSR Install user defined Guarding Heartbeat event process 18123 RemoveNMTErrlSR Remove the Guarding Heartbeat event process 18123 GetMasterReadSDOEvent Get the read SDO message sent to the I 8123W 18123 GetMasterWriteSDOEvent Get the write SDO message sent to the I 8123W 18123 ResponseMasterSDO Response the SDO message to the SDO sender 18123 GetMasterRemotePDOEvent Get the remote PDO message send to the I 8123W 18123 GetMasterRxPDOEvent Get the RxPDO RTR sent to the I 8123W 18123 ResponseMasterPDO Response the RxPDO RTR to the RTR sender 18123_InstallRXxSDOISR Install the user defined Master SDO process 18123 RemoveRxSDOISR Remove the master SDO process
25. this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo and Cobid again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 50 3 5 28 18123 GetRxPDOID Description Use the function 18123 _GetRxPDOID to get all the RxPDO COB IDs of the specified slave which have been installed to the master Syntax WORD 18123 GetRxPDOID BYTE SlotNo BYTE Node BYTE PDO_ Cnt WORD ID List BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 Node input Slave device Node ID 1 127 PDO_Cnt output The number of installed RxPDO ID_List output The RxPDO COB ID list BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo and Node again If the procedure is still not complete it
26. to the slave device Syntax WORD 18123 PDORemote BYTE SlotNo WORD Cobid BYTE Den BYTE TData BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 Cobid input COB ID used by the PDO object DLen output The data length of the RTR PDO message TData output The PDO message received from the slave device BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo and Cobid again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 47 3 5 25 18123 SetPDORemotePolling Description If the CANopen slaves do not support the event timer function of the TxPDOs using the function 18123 SetPDORemotePolling can config the most 125 TxPDO objects into the remote polling list Then the I 8123W will poll the configured TxPDOs and update the data into buffer automatically Users can use 18123 GetMultiPDOData to get these TxPDOs data from the buffer faster and easily Syntax WORD 18123 _SetPDORemotePolling BYTE SlotNo BYTE PDOCrt WORD Cobid WORD PollingTime BYTE BlockMode
27. users can use this function to get this RxPDO message The parameter SlotNo indicates the number of the I 8123W which receives the RxPDO message The parameter Cobid is the RxPDO COB ID ID The two parameters Wen and WData are the data length and contents of the RxPDO message This function is usually applied with the function 18123 InstallTRxPDOISR About the demo please refer to the section 4 1 6 SDO_PDO_ISR Note The function is valid while the Node parameter of the function 18123 _InitMaster is gt 0 Syntax WORD 18123 GetMasterRxPDOEvent BYTE SlotNo WORD Cobld BYTE WLen BYTE WData Parameter SlotNo output Get the slot number of the I 8123W which receives the RxPDO message Cobld output Return the RxPDO COB ID WLen output The data length of the RxPDO data WData output Return 0 4 bytes of the RxPDO data I 8123W user manual ver 2 00 Oct 26 2011 90 3 5 67 18123_ ResponseMasterPDO Description Using this function can reply the Remote PDO messages to the sender For example the I 8123W has used 18123 InstallPDO_List to install a TxPDO object with the COB ID 0x444 If someone sends a Remote PDO message with the COB ID 0x444 to the I 8123W and the I 8123W needs to reply a TxPDO message users can use this function to do it When users implement the function 18123 _ResponseMasterPDO the I 8123W will send a TxPDO message to the CANopen network This function
28. 23 PDOTxType 18123 PDOUseEntry 18123 PDOEventTimer 18123 GetTxPDOID 18123 GetRxPDOID 18123 GetPDOMapInfo I 8123W user manual ver 2 00 Oct 26 2011 99 4 1 4 PDO _ Protocol The PDO protocol is the main protocol to control the I O of the specific slave device in the CANopen network This demo shows how to read and write data to the slave device with the PDO functions Slot No fo canst ees en TP Cob ID hex Len FE EEEEEEE 1000 kbps 1552C 00 00 Remote OK Clear Applied function list 18123 InitMaster 18123 Shutdown 18123 AddNode 18123 RemoveNode 18123 PDOWrite 18123 PDORemote 18123 GetPDOLastData I 8123W user manual ver 2 00 Oct 26 2011 100 4 1 5 Scan_Node When users want to know which slave nodes exist on the CANopen network or which slave nodes are under the control of the I 8123W this demo will is useful Slot No fo Baud Rate 1000 kbps en WR Master Node List Node 001 under controll Applied function list 18123 InitMaster 18123 Shutdown 18123 AddNode 18123 RemoveNode 18123 SetFunctionTimeout 18123 ScanNode 18123 GetNodeList I 8123W user manual ver 2 00 Oct 26 2011 101 4 1 6 SDO PDO ISR In this demo it is allowed to configure the I 8123W as a CANopen slave Users can use another CANopen master to read write the users defined object dictionary of the I 8123W by SDO protocol or to get s
29. 23 _GetPDOLastData to get the last RxPDO and TxPDO data from the PDO buffer I 8123W user manual ver 2 00 Oct 26 2011 21 SYNC Services Calling the function 18123 SendSYNCMsg starts the SYNC object transmission This function supports single SYNC message transmission and cyclic SYNC message transmission The parameter Timer of the function 18123 SendSYNCMsg can adjust the cyclic period of the SYNC COB ID sent by master And the parameter Times can set the sending times of the SYNC message If the timer parameter is set to 0 the SYNC object transmission will be stopped When the times parameter is set to non zero value the function will send the SYNC message until the timer is set to 0 or the parameter Times is achieved EMCY Services The Emergency messages are triggered by the occurrence of a device internal error situation Users can call the function 18123 ReadLastEMCY to receive the EMCY message or the function 18123 InstallEMCYISR to install user defined EMCY interrupt process In this case if there are CAN slaves sending the EMCY these EMCY messages will be processed by the user defined EMCY interrupt process I 8123W user manual ver 2 00 Oct 26 2011 22 3 5 Function Description 3 5 1 18123 GetVersion Description This function is used to obtain the version information of the 18123W lib library Syntax WORD 18123 _GetVersion void Parameter
30. 5 40 3 5 41 3 5 42 3 5 43 3 5 44 3 5 45 3 5 46 3 5 47 3 5 48 3 5 49 3 5 50 3 5 51 3 5 52 3 5 53 3 5 54 3 5 55 3 5 56 3 5 57 3 5 58 Eeer de 44 18123 SDOADOrt Tramsmitt s 205ccsccetasccsenstavsdaesesssteuesdedeantesusecceonnds 45 18123 PDOWTtite nienn cas Gah E S 46 18123 PD OR e 47 18123_SetPDORemotePolling dagegen eege 48 18123 GetPDOLast Data ci ccsccasscscies sedeaeatvcrcctesnceceensvcvannesebsneveiens 49 18123_GetMultiPDOData uss ce eege 50 18123 GetRXPDOID mann a R 51 kee E E E 52 18123 Instal PDO nn n n a RARE 53 1 123 Dyami c PDO ipn Jor ca eal aid A EN 54 18123 REMOVER DO ET 55 Seeerei gege iea 56 18123 GetPDOMap lilo eut cessscsseisccsainaseessceesateneenssccadtisduenttacens 57 S123 istallPDO cist ccna ant ae alo aati 58 ES 123 RemovePDO LAist cng ie e E OEE 60 13123 P OU Se Ee 61 181232 KREE 62 15 1235 KEN IMET ee eekleg eler 63 IR EE CET EE 64 18129 SetSYNC Et E 65 18123 GetSYNCID EE 66 B123 Send el E 67 18123 GetEyclic SYNC Ii e EE 68 HE e MC VD es oie o e aaa sxccusocavessy esos 69 TS 123 SetEMCY e E EEN 70 18123 GetEMCY ID EE 71 1 123 R adLastEMC E T2 18123_GetBootUpNodeA fterAdd A 73 18123 GeEtEMCY RE 74 B52 Ss Get RRE re 75 18123_InstallBootUpISR siccs cajcscgeess cect antenkerntas aes sandanedeeaseveacdonnss 76 18123 RemoveBootU pis R622 eee A Ease 77 IHR EE E Leg KE 78 18123_RemoveEMCYISR EE 79 18123_Instal INMTETTISR ess iets goetteergterten geet ats Posaseeaghe
31. 7 GEN Lea ie e A R A aA 103 4 1 8 RRE 104 4 1 9 SYNC e RE 105 AASKO PDO Mula ata secs Sout slice tee eb chanced and ode ae Gh te 106 5 Update Fir mwa es iivcciniscvievccissinssiissinsnesscinesinsnnnusanenicinesinsnnnsnuwawnwinans 107 I 8123W user manual ver 2 00 Oct 26 2011 4 1 General Information 1 1 CANopen Introduction The CAN Controller Area Network is a kind of serial communication protocols which efficiently supports distributed real time control with a very high level of security It is an especially suited for networking intelligent devices as well as sensors and actuators within a system or sub system In CAN networks there is no addressing of subscribers or stations in the conventional sense but instead prioritized messages are transmitted CANopen is one kind of the network protocols based on the CAN bus and it is applied in a low level network that provides the connections between simple industrial devices sensors actuators and higher level devices controllers as shown in the Figure 1 1 CANopen Analyzer CANopen Network CANopen Device Figure 1 1 Example of the CANopen network CANopen was developed as a standardized embedded network with highly flexible configuration capabilities It provides standardized communication objects for real time data Process Data Objects PDO configuration data Service Data Objects SDO network management data NMT message and Err
32. I 8123W CANopen Master Module User s Manual Warranty All products manufactured by ICP DAS are warranted against defective materials for a period of one year from the date of delivery to the original purchaser Warning ICP DAS assume no liability for damages consequent to the use of this product ICP DAS reserves the right to change this manual at any time without notice The information furnished by ICP DAS is believed to be accurate and reliable However no responsibility is assumed by ICP DAS for its use nor for any infringements of patents or other rights of third parties resulting from its use Copyright Copyright 2010 by ICP DAS All rights are reserved Trademark The names used for identification only maybe registered trademarks of their respective companies I 8123W user manual ver 2 00 Oct 26 2011 1 Tables of Content 1 General dell 5 1 1 CANopen Introduction sicicicccccicicisisdedeccscicasencadndncrcadsessccsteinansncwene 5 1 2 CANopen Applications i visescsispinsnasscdeseweueicisanntdeannretteacanantenaauaduans 6 1 3 1 8123 Library Characteristics cccccccessesesseeeeeeeeeeeeeeeeeeeeeeeees 7 Hardware Specification cccccccceseseseeeeeeeeeeeeseseeeeeeeeeeeeeeeeseeeeeeeeeees 10 2 1 Hardware SU Clune eene 10 2 2 Wire CONMECHOM DE 11 2 3 Power LED BE 13 24 XRX LED WER 13 2 5 ERR CE Deiisccscecscuscavaacescaviudvscevesdvscavendvecevesdvacevendvacevesdvacevendv
33. InstalINMTErrlSR to install a user defined process to get the heartbeat fail event and process the heartbeat fail procedure It is recommended that ConsumeTime value is set to bigger than the ProduceTime value Take a note that following the CANopen specification it is not allowed for one slave device to use both error control mechanisms Guarding Protocol and Heartbeat Protocol at the same time Syntax WORD 18123 NMHartbeat BYTE SlotNo BYTE Node WORD ProduceTime WORD ConsumeTime BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 Node input Slave device Node ID 1 127 ProduceTime input Produce Time of slave device 1 65535 ms ConsumetTime input Consume Time of master 1 65535 ms BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo and Node again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 41 3 5 19 18123 SDOReadData Description The function 18123_SDOReadData is useful to the SDO upload from a specified slave When users use this func
34. NMTChangeState When using the function 18123 _NMTGetState the slave status values and their descriptions are shown in the table 3 4 The Node Guarding and Heartbeat protocol are implemented via the function 18123 NMTGuarding and the function 18123_NMTHeartbeat If the slave nodes are in the node list users can change the node guarding or heartbeat parameters defined in the slave nodes by calling the function 18123_NMT Guarding or 18123_ NMTHeartbeat Command Value 1 0x01 Enter Operational 2 0x02 128 0x80 Enter Pre Operational 129 0x81 130 0x82 Table 3 3 NMT Command Specifier State of Slave 4 0x04 STOPPED 5 0x05 OPERATIONAL 127 0x7F PRE OPERATIONAL Table 3 4 The state of the slaves I 8123W user manual ver 2 00 Oct 26 2011 20 SDO Services Initiate SDO download protocol or Initiate SDO upload protocol is used when the object data length lt 4 bytes If the object data length gt 4 bytes Download SDO segment protocol or Upload SDO segment protocol will be used Calling these two functions 18123 SDOReadData and 18123 SDOWriteData the initiate protocol and segment protocol will be selected automatically according to the object data length 18123 SDOAbortTransmit function can abort a pending SDO transfer at any time Applying the abort service will have no confirmation from the salve device PDO Services After using the 18123 _AddNode to add a slave t
35. None Return The library version information I 8123W user manual ver 2 00 Oct 26 2011 _ KE 3 5 2 18123 SetFunctionTimeout Description Sometimes some function cost more time to complete its task such as 18123_ScanNode If some API of the I 8123W library never gets the feedback from the I 8123W until timeout value goes by the error code CPM_Timeout will be returned Through this function the user can adjust the suitable maximum timeout value of all functions for application Default timeout value is 1 second Syntax void 18123 SetFunctionTimeout BYTE SlotNo WORD Timeout Parameter SlotNo input 8123W slot number 0 7 Timeout input Maximum timeout value of all functions ms I 8123W user manual ver 2 00 Oct 26 2011 24 3 5 3 18123 _InitMaster Description The function must be applied when configuring the CAN controller and initialize the l 8123W It must be called once before using other functions of the 18123W lib Syntax WORD 18123 _InitWaster BYTE SlotNo BYTE Node BYTE BaudRate BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 Node input Master s node ID If the parameter is 0 the master will be a normal master and no other master can control it If the parameter is 1 127 different from other slave other master can do some control to it through some ISR function BaudRate input The baud
36. O _MultiData Board fo Baud Rate 125K Shutdown Set Event Timer For Or Set Remote Polling All TxPDO For All TxPDO TxPDO 181 TxPDO 281 00 00 00 00 00 00 00 00 TxPDO 381 00 00 00 00 00 00 00 00 TxPDO 481 Applied function list 18123 InitMaster 18123 Shutdown 18123 AddNode 18123 RemoveNode 18123 GetIxPDOID 18123 SetPDORemotePolling 18123 PDOEventTimer 18123 GetMultiPDOData I 8123W user manual ver 2 00 Oct 26 2011 5 Update Firmware If users want to update the firmware of the I 8123W use the I 8120W utility to do it Where to find the I 8120W utility The path of field bus CD fieldbus cd can slotmodule 8120w tools wince5 The address of the web site http ftp icodas com pub cd fieldobus cd can slotmodule i_8120w tools wince5 The following steps describe the method about how to update the I 8123W firmware by I 8120W utility After copy the I 8120W utility on to MCU choose the proper No of the slot which the I 8123W has been plugged in Then click the Update Firmware button I 8120W Utility Ver1 00 e Filter Setting Hex Baud Setting Hex Slot Medco ED g Hex g Hex Msg Format Acc Code Jooooooo0 Baud 125Kbps wv Hex O Dec Update Firmware gt Acc Mask FFFFFFFF BTO ke BT1 kr ASCII CAN Status CAN Status Hex Clear Status Rx Msg Cnt K Roset Counter Tx Msg Buffer INO Mode po RTR po 1 02 o3 n4 os os o7 me
37. PM_StatusErr NMT state of CANopen slave is error 20 CPM_SetGuardErr Set Guarding and LifeTime parameter error 21 CPM_SetHbeatErr Set Heartbeat parameter error 22 CPM_SegLenErr SDO Segment receive error length 23 CPM_SegToggleErr SDO Segment receive error toggle 24 CPM_SegWriteErr SDO write segment error 25 CPM_Abort The return message is an Abort message 26 CPM_PDOLenErr PDO output data error 27 CPM_COBIDErr The COB ID isn t exist or isn t correct one 28 CPM_PDOtInstErr Install the PDO object error 29 CPM_PDODynaErr The PDO mapping data is setting error 30 CPM_PDONumErr The PDO number and COB ID is not match 31 CPM_PDOSetErr PDO parameter is setting error 32 CPM_PDOEntryErr The PDO entry parameter is more then useful entry 33 CPM_SetCobldErr The EMCY or SYNC COB ID is setting error 34 CPM_CycFullErr There are already 5 cyclic message running 35 CPM_Timeout Message response timeout 36 CPM_DataLenErr Data length setting error I 8123W user manual ver 2 00 Oct 26 2011 16 40 CPM_Wait Command is uncompleted only for non block mode 41 CPM_Processing Command is running only for non block mode 50 CPM_LoadEDSErr Loading the EDS file fails 51 CPM_EDSFormatErr The format of the EDS file is incorrect I 8123W user manual ver 2 00 Oct 26 2011 17 3 3 CANopen Master Library Application Flowchart In this section it describes that the operation procedure about how to
38. SlotNo and Cobid again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 64 3 5 41 18123 SetSYNC_List Description If the user uses 18123 AddNode function to add the slave with manual mode the function 18123 SetSYNC_List must be called while the SYNC ID of the slave needs to be changed or be set The function 18123 SetSYNC_List can only change the SYNC COB ID in the COB ID list of the I 8123W the real value stored in the slave device may be different from the configuration which is set by the function 18123 SetSYNC_List The users need to confirm that by themselves Syntax WORD 18123 SetSYNC_List BYTE SlotNo BYTE Node WORD Cobid BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 Node input Slave device Node ID 1 127 Cobid input COB ID used by the SYNC object BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo and Node again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011
39. SlotNo input 8123W slot number 0 7 Cobid input COB ID used by the PDO object Timer input Event timer of TxPDO The unit is millisecond BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo and Cobid again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 63 3 5 40 18123 ChangeSYNCID Description Use the function 18123 ChangeSYNCID to change the SYNC COB ID of a slave device Syntax WORD 18123 _ChangeSYNCID BYTE SlotNo BYTE Node WORD Cobid BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 Node input Slave device Node ID 1 127 Cobid input COB ID used by the SYNC object BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same
40. WORD EntryData BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 Node input Slave device Node ID 1 127 Cobid input COB ID used by the PDO object RxTx input PDO type 0 RxPDO 1 TxPDO Entry input PDO mapping object subindex value 1 8 EntryData input A Double Word 4 byte information of mapped application object Users need to look up the user manual of the CANopen slave device to find the information of the application object and obey the following example format to fill this parameter For Example EntryData 0x64110310 Mapping to index 0x6411 and subindex 0x03 with data length 0x10 bit 2 byte If the function parameters are as following Cobid 0x333 RxTx 0 Entry 2 EntryData 0x64110310 This example will map the 16 bit data of index 0x6411 and subindex 0x03 object to the 2 entry of COB ID 0x333 RxPDO BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo and Node again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 54 3 5 32 18123 Remov
41. When using the library the library version must be confirmed The following table shows the all functions provided by the I 8123W library Listen 5 Dem Mode Function Name Description O 18123 GetVersion Get the version of the I 8123W library 18123 SetFunctionTimeout Set the max timeout value of all functions 18123 _InitMaster Activate the I 8123W module 18123 ShutdownMaster Remove all nodes and stop the master 18123 SetMasterMode Set the master to normal mode or listen mode 18123 GetMasterMode Get operation mode of the master 18123 GetFirmwareVersion Get the version of the I 8123W firmware 18123_EDS_Load Add a slave node from the EDS file 18123 AddNode Add a slave node into the I 8123W master manager 18123 RemoveNode Remove a node from the I 8123W master manager 18123 ScanNode Scan all nodes on the CANopen network 18123 GetNodeList Get the node list of the I 8123W master manager 18123 NMTChangeState Change the CANopen node state 18123 NMTGetState Get the CANopen node state 18123_ NMTGuarding Start to the node guarding function 18123 _NMTHeartbeat Start to the node heartbeat function 18123 SDOReadData Read data by using the upload SDO protocol 18123 _ SDOReadFile Read the huge SDO data for specific slave node 18123 _ SDOWriteData Write data by using the download SDO protocol 18123 SDOAbortTransmit
42. acade 13 l 8123 Function ODER 14 ells TI ed N E E 14 3 2 Function Return Code ssssssnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn nnna 16 3 3 CANopen Master Library Application Flowchart 00 18 3 4 Communication Services Introduction See 20 3 5 Function Description sescisesiceciiccesicnnienieesisnisnnanssnineieneniann 23 3 5 1 18123 Eet NEES ann nana a a S 23 Ge 18123_SetFunctionTimeout EE 24 3 5 3 1125 Terre eebe gen ise srb geeiert 25 3 5 4 18123_ShutdownMaster wis vscsissisesccostssavcisetescventeacasaesadacOeabvecetesas 26 3 5 5 18123_GetCANStatus ya ee 27 3 5 6 18123_MasterSendBootupMsg jaccsssscesysuss aracageuciasentenaemeetanstaciane 28 335 1 18123 SethMasterMode 29 3 5 8 T8123 GetMaster Mode sis niies un aaa deiten de 30 3 5 9 18123 GetbmwareMereaon 31 3 5 10 281236 HDS 1G Ad RE 32 EE E EE 33 3 512 98123 RemoveNode omiensa Ae tree 35 CES 18123 ScanNode vicnws cashes ites eae ieee ies Het eedi nay beneesas 36 Boks gt ER E 37 S13 18123 NMTCh ngeState sic 65a EE 38 3 5 16 SI NET Gets tate rusi esac cate cea ee 39 Sony BIOS TH Eemere el A0 D NEE ien Ate Deene Ee en 41 35 19 18123 S DO Read Datars reiege 42 3 5 20 ETH EE er 43 I 8123W user manual ver 2 00 Oct 26 2011 2 3 5 21 3 5 22 3 5 23 3 5 24 3 5 25 3 5 26 3 5 27 3 5 28 3 5 29 3 5 30 3 5 31 3 5 32 3 5 33 3 5 34 3 5 35 3 5 36 3 5 37 3 5 38 3 5 39 3
43. by 18123 InstallPDO_List Syntax WORD 18123 _InstallPDO_List BYTE SlotNo BYTE Node WORD Cobid BYTE RxTx WORD PDO_No BYTE Tx_Type WORD EventTimer BYTE EntryUse DWORD EntryData BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 Node input Slave device Node ID 1 127 If the Node parameter is the I 8123W Node ID the parameters EntryUse amp EntryData will be useless In this case users can use the function 18123 InstallRxPDOISR or 18123 _InstallRemotePDOISR to install the users callback function to process the received PDOs of the I 8123W Cobid input COB ID used by the PDO object RxTx input PDO type 0 RxPDO 1 TxPDO PDO_No input PDO mapping object No 1 512 Tx_Type input Transmission type I 8123W user manual ver 2 00 Oct 26 2011 58 Event_Timer input PDO event timer EntryUse input Total entry of mapping object that will be installed EntryData input Double Word array information of mapped application object For example If the configuration is Cobid 0x333 RxTx 0 PDO_No 10 Entry 2 EntryData 0 0x64110310 EntryData 1 0x62000108 it will map the RxPDO10 with COB ID 0x333 The 1 entry is 16 bit data of index 0x6411 and subindex 0x03 object and the 2 entry is 8 bit data of index 0x6200 and subindex 0x01 object BlockMode input 0 means this function is non block function and 1 means this f
44. d array parameter Response the mapping data of the PDO object s every useful entry BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo and Cobid again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 57 3 5 35 18123 InstallIPDO List Description This function is similar with the 18123 InstalIPDO function It can install the old or new PDO object in the PDO object list of the I 8123W It is the same as 18123 InstallIPDO But the 18123 InstallIPDO List doesn t send any message to check if the PDO object exists in the real slave It just changes the list in the memory of the I 8123W It means that user can use this function to install PDO and change PDO mapping data arbitrarily without disturbing the CANopen network After using this function the I 8123W will process the slave PDOs which have the same IDs configured by the function 18123 _InstallPDO_List It is very useful when the I 8123W is running in listen mode User can use the function 18123 RemovePDO List to remove the PDO object which is installed
45. d of event it is The parameter SIotNo indicates the number of the I 8123W which indicates the Heartbeat_Event or Node Guarding Event The parameter Node is the ID of the slave node which responds the heartbeat protocol or guarding protocol The parameter NMTErr is the NMTErr event mode If the NMTErr event is Node_Guarding_Event the NMTErr parameter is CPM_Node_Guarding_Event or else the CPM_Heartbeat_Event is obtained The function 18123 _GetNMTError is usually applied with the function 18123 InstalINMTErrlSR About the demo please refer to the section 4 1 2 NMT_Protocol Syntax WORD 18123 _GetNMTErr BYTE SlotNo BYTE Node BYTE NMTErr Parameter SlotNo output Get the slot number of the I 8123W which receives the NMT Error Event Node output Get the slave node ID of the NMT Error Event NMTErr output The value CPM_Node_Guarding_Event indicates the Node Guarding Event and the CPM_Heartbeat_Event is the Heartbeat Event I 8123W user manual ver 2 00 Oct 26 2011 75 3 5 52 18123 InstallBootUpISR Description This function allows the user to apply the slave boot up IST interrupt service thread When the user puts his boot up process into this function all the boot up triggered by the slaves will go to the boot up IST If the boot up message of a slave which has been added to the l 8123W is happen the I 8123W will go into the boot up process to do some specified mechanism which
46. directly This function will return its process status while users apply it with the same SlotNo and Node again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 60 3 5 37 18123 PDOUseEntry Description Use this function to change the useful object mapping entry of PDO object The useful entry starts from 1 to the parameter Entry Therefore if the parameter Entry is 0 it means that the PDO have no useful object mapping entry Syntax WORD 18123 PDOUseEntry BYTE SlotNo WORD Cobid BYTE Entry BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 Cobid input COB ID used by the PDO object Entry input Useful entry number of PDO mapping object BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo and Cobid again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 61 3 5 38 18123 _ PDOTxType Description Use this function to change transmission type of TxPDO The defau
47. ePDO Description The function 18123 RemovePDO can remove a TxPDO or RxPDO object had installed by the 18123 InstallPDO or 18123 AddNode This function also can remove single object mapped in TxPDO or RxPDO Syntax WORD 18123 RemovePDO BYTE SlotNo BYTE Node WORD Cobid BYTE Entry BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 Node input Slave device Node ID 1 127 Cobid input COB ID used by the PDO object Entry input PDO mapping object subindex value 0 8 If this value is set to 0 the specified PDO object will be removed If others 1 8 the specified subindex content of the PDO will be removed BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo and Node again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 55 3 5 33 18123 ChangePDOID e Description Use the function 18123_ChangePDOID to change the PDO COB ID from old Old_Cobid to new New_Cobid of a slave device e Syntax WORD 18123 _ChangePDOID BYTE SlotNo WORD Old_Cob
48. ect address index and sub index by SDO protocol This demo is a good model to do that Index hex SubIndex leese 0000 FFFF 00 FF Len be EE Data fiz Su be E ES 1000 00 02 00 01 06 Write Abort Applied function list 18123 InitMaster 18123 Shutdown 18123 AddNode 18123 RemoveNode 18123 SDOWriteData I 8123W user manual ver 2 00 Oct 26 2011 104 4 1 9 SYNC Protocol SYNC protocol is a synchronous function of the PDO communication It is always used with the transmission type of the PDO communication In this demo users can know how to use the SYNC related functions 1000 kbps Geesen SYNC ID h P Change SYNC ID SYNC Timer Send Times SS E YNC 80 Timer 1000 Times 20 Applied function list 18123 InitMaster 18123 Shutdown 18123 AddNode 18123 RemoveNode 18123 ChangeSYNCID 18123 GetSYNCID 18123 SendSYNCMsgq 18123 GetCyclicSYNCInfo I 8123W user manual ver 2 00 Oct 26 2011 105 4 1 10 PDO MultiData Sometimes users want to poll several PDO objects data at the same time for increasing the performance But it is slower that sending the Remote PDO to poll each PDO data one by one So users can set event timer or remote list for these PDO When the PDO data are polled by the I 8123W or are replied from slave automatically then use the 18123 GetMultiPDOData function to obtain these PDO data from the buffer at the same time PD
49. ed automatically while using the function 18123 _AddNode with automatic mode Otherwise the TxPDOs or RxPDOs need to be installed manually by calling the function 18123 _InstallPDO Syntax WORD 18123 _InstallPDO BYTE SlotNo BYTE Node WORD Cobid BYTE RxTx WORD PDO_No BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 Node input Slave device Node ID 1 127 Cobid input COB ID used by the PDO object RxTx input PDO type 0 RxPDO 1 TxPDO PDO_No input PDO mapping object No 1 512 BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo and Node again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 53 3 5 31 18123_ DynamicPDO Description This function can modify the mapping data of PDO object in the PDO object list of the CANopen Master Library stack Take a note that before calling this function user must check if the PDO had been installed in the I 8123W Syntax WORD 18123 DynamicPDO BYTE SlotNo BYTE Node WORD Cobia BYTE RxTx BYTE Entry D
50. en the master and the specified salve device Syntax WORD 18123 SDOAbortTransmit BYTE SlotNo BYTE Node WORD Index BYTE SubIndex DWORD AData BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 Node input Slave device Node ID 1 127 Index input The object index value of the object dictionary SubIndex input The object subindex value of the object dictionary AData input Abort data to be send to slave BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo and Node again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 45 3 5 23 18123_PDOWrite Description Call the function 18123 PDOWrite to send out a PDO message to the specified slave device Before using this function users need to use the function 18123 InstallPDO to install the PDO object into l 8123W if users want to use non default PDO Then change the NMT state of the target slave device to operational mode by using the function 18123 _ NMTChangeState if the slave is not in the operational mode Use
51. ength and segment mode more then 4 byte data length Syntax WORD 18123 SDOWriteData BYTE SlotNo BYTE Node WORD Index BYTE Sublndex DWORD TDLen BYTE TData WORD RDLen BYTE RData BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 Node input Slave device Node ID 1 127 Index input The index value of object of the object dictionary SubIndex input The subindex value of object of the object dictionary TDLen input Total data size to be written TData input The SDO data written to slave device RLen output Total data size of responded data RData output SDO data responded from the specified slave device BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo and Node again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 44 3 5 22 18123 SDOAbortTransmit Description Call the function 18123 SDOAbortTransmit to cancel the SDO transmission The parameter node of this function is used to specify which SDO communication will be terminated betwe
52. er For more information about the CANopen functions described above please refer to the function descriptions and demo programs shown in the chapter 3 and chapter 4 I 8123W user manual ver 2 00 Oct 26 2011 8 Specifications CPU 80186 80 MHz NXP SJA1000 CAN controller with 16MHz clock NXP 82C250 CAN transceiver Power LED Tx Rx LED Error LED Switch for 120 terminal resistor of CAN bus CAN bus interface ISO 11898 2 5 pin screw terminal 2500 Vrms photo coupled isolation on CAN side 1000 Vdc voltage protection Power Consumption 2W Operating Temperature 25 C to 75 C Storage Temperature 30 C to 80 C Humidity 10 90 non condensing Features One CAN communication port Support PAC series MCU main control unit with Windows CE5 CE6 and XPe will be available soon Library provides eVC VC 2005 C Net2005 and VB Net2005 developments Three indication LEDs Pwr Tx Rx and Err LEDs Support 8 kinds of baud rates 10 kbps 20 kbps 50 kbps 125 kbps 250 kbps 500 kbps 800 kbps and 1 Mbps Support the node id range from 1 127 Follow CiA DS 301 V4 02 Support upload and download SDO Segment protocol Support Node Guarding and Heartbeat protocol Support EDS file Provide Master Listen Mode to listen the slave status of the CANopen network Block function and non block function selected Demos and utility are provided I 8123W user manual ver 2 00 Oct 26 2011
53. er input 5 WORD array Each value is the cyclic period of the SYNC message Times input 5 Double WORD array Each one is the SYNC message sending times that set before BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 68 3 5 45 18123 ChangeEMCYID Description Use the function 18123 ChangeEMCYID to change the EMCY COB ID of a specific slave device Syntax WORD 18123 ChangeEMCYID BYTE SlotNo BYTE Node WORD Cobid BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 Node input Slave device Node ID 1 127 Cobid input COB ID used by the EMCY object BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it
54. er s process This process is usually used with the function 18123 GetMasterRemotePDOE vent I 8123W user manual ver 2 00 Oct 26 2011 94 3 5 71 18123 RemoveRemotePDOISR Description When the user doesn t need the RemotePDO IST function call this function to remove the user IST Syntax WORD 18123_ RemoveRemotePDOISR BYTE SlotNo Parameter SlotNo input 8123W slot number 0 7 I 8123W user manual ver 2 00 Oct 26 2011 95 4 Demo Programs The I 8123W provides 10 demos of the various applications for NMT protocol SDO protocol PDO protocol NMT Error IST etc All these demos support eVC 4 0 VB net 2005 and C 2005 There is also a tool CPMUtility to control monitor CANopen slaves with I 8123W easily and quickly Users can find these demos and utility tool in the fieldbus CD or on the web site The path of field bus CD fieldbus _cd canopen master _ 8123w The address of the web site http www icpdas com products Remote 10O can_bus I 8123w htm 4 1 Brief of the demo programs These demo programs are developed for demonstrating how to use the CANopen master library to apply the general CANopen communication protocol These demo programs provide the SDO PDO NMT SYNC communication applications Each demo program includes some functions of the CANopen master library The relationship between CANopen master library functions and demo programs are di
55. et the DIO status by PDO protocol when the I 8123W the I 8053W DI module and the I 8057W DO module are plugged in the same MCU If the user has an application like this this demo may be a good reference SDO_PDO_ISR ie ead 1000 00 eceponse 91 01 03 00 201 Output FF 00 Applied function list 18123 InitMaster 18123 Shutdown 18123 GetMasterReadSDOEvent 18123 GetMasterWriteSDOE vent 18123 GetMasterRemotePDOE vent 18123 GetMasterRxPDOEvent 18123 ResponseMasterSDO 18123 ResponseMasterPDO 18123 InstallPDO List 18123 InstallReadSDOISR 18123 InstallWriteSDOISR 18123 InstallIRxPDOISR 18123 InstallRemotePDOISR I 8123W user manual ver 2 00 Oct 26 2011 102 4 1 7 SDO_ Read SDO protocol is a kind of the communication functions used to read write CANopen object dictionary You can read any object data of the object dictionary through the object address index and sub index by SDO protocol This demo is a good model to do that SDO Read Index hex e 0000 FFFF 00 FF foo 1000 00 91 01 01 00 Applied function list 18123 InitMaster 18123 Shutdown 18123 AddNode 18123 RemoveNode 18123 SDOReadData I 8123W user manual ver 2 00 Oct 26 2011 103 4 1 8 SDO Write SDO protocol is a kind of the communication functions used to read write CANopen object dictionary You can write any data to the specific object of the object dictionary through the obj
56. follows the user s boot up process Syntax WORD 18123_InstallBooUpISR BYTE SlotNo void BOOTISR Parameter SlotNo input 8123W slot number 0 7 BOOTISR input The pointer which points a function with format void XXX y The XXX is the function name of the user s boot up process This process is usually applied with the function 18123 _GetBootUpNodeAfterAdd I 8123W user manual ver 2 00 Oct 26 2011 76 3 5 53 18123 RemoveBootUpISR Description When the user doesn t need the boot up IST function call this function to remove the user s IST Syntax WORD 18123 RemoveBootUpISR BYTE SlotNo Parameter SlotNo input 8123W slot number 0 7 I 8123W user manual ver 2 00 Oct 26 2011 77 3 5 54 18123 _InstallEMCYISR Description This function allows the user to apply the EMCY IST interrupt service thread When the user puts his EMCY process into this function all the EMCY triggered by the slaves will go to the EMCY IST If the EMCY of a slave is happen the I 8123W will go into the EMCY process to do some security mechanism which follows the user s EMCY process Syntax WORD 18123 _InstallEMCYISR BYTE SlotNo void EMCYISR Parameter SlotNo input 8123W slot number 0 7 EMCYISR input The pointer which points a function with format void XXX y The XXX is the function name of the
57. he Guarding and Heartbeat functions 1000 kbps cad Rte Note To Node State Operation v Set Status Guarding Time Life 1000 E Set Guarding Heartbeat ms Consumer ms 1000 2500 Set Heartbeat EMCY 00 00 00 00 00 00 00 00 Clear Applied function list 18123 InitMaster 18123 Shutdown 18123 AddNode 18123 RemoveNode 18123 NMTChangeState 18123 NMT Guarding 18123 NMTHeartbeat 18123 GetEMCYData 18123 GetNMTError 18123 InstalINMTErrlSR 18123 RemoveNMTErrlSR 18123 InstallEMCYISR 18123 RemoveEMCYISR I 8123W user manual ver 2 00 Oct 26 2011 98 4 1 3 PDO Parameter Sometimes the default PDO configuration can t satisfy users Users need to change the configuration of the PDO related parameters such as transmission type PDO ID event timer dynamic PDO and so forth This demo will demonstrate how to change settings of these PDO parameters and show the configuration result slot No 0 mom 300 kbps sata Fee C epe Jee en Tae oone E Iess isi v Entry Entry Data h Hen ID h Transmission Type 255 vent Timer O Remove PDO Dynamic PDO Change PDO ID lapping Data Entry 1 60000108 Transmit Type PDO Entry Event Timer Set Tx Type Set Entry No Set Event Timer Applied function list 18123 InitMaster 18123 Shutdown 18123 AddNode 18123 RemoveNode 18123 InstallPDO 18123 RemovePDO 18123 DynamicPDO 18123 ChangePDOID 181
58. he default TxPDOs and RxPDOs TxPDO 1 10 RxPDO 1 10 will also be added to the I 8123W s control list If there are PDOs other than the default setting the function 18123 _InstallPDO is used for enabling these TxPDOs or RxPDOs object After installing the PDOs the function 18123 DynamicPDO can add or change the PDOs mapping objects Each PDO object supports 0 8 application objects These application objects defined in the CANopen specification DS401 and they are mapped to the relative parameters of the DI DO AI AO channels After calling the function 18123 _InstallPDO and 18123 DynamicPDO the PDO communication object will be mapped and activated If the PDO communication object is not needed no more use the function 1I8123_ RemovePDO to remove it When you want to output data via PDO the function 18123 PDOWriteData is useful This function can write all PDO 8 byte data or write some parts of PDO 8 byte data Calling this function will send the specific data to the corresponding node via PDO protocol and put the output data into PDO buffer at the same time Therefore you can check the output history of the PDO But if the connection between the I 8123W and the slave is lost the history output information may be not the same with the real status on the slave In CANopen specification you can get the TxPDOs data by applying the remote transmit request CAN frame The function 18123 PDORemote is needed in this case Or you can use 181
59. id WORD New_Cobid BYTE BlockMode e Parameter SlotNo input 8123W slot number 0 7 Old_Cobid input Old COB ID used by the PDO object New_Cobid input New COB ID used by the PDO object BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo and Old_Cobid again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 56 3 5 34 18123 GetPDOMaplinfo e Description The function 18123 GetPDOMaplInfo can get the mapping data information of the PDO object e Syntax WORD 18123 _ GetPDOMapInfo BYTE SlotNo WORD Cobid WORD PDONo BYTE RxTx BYTE Tx_Type WORD Event_Timer BYTE Entry_Cnt DWORD Map_Data BYTE BlockMode e Parameter SlotNo input 8123W slot number 0 7 Cobid input COB ID used by the PDO object PDONo output PDO mapping object No 1 512 RxTx output PDO type 0 RxPDO 1 TxPDO Tx_Type output Transmission type Event_Timer output PDO event timer Entry_Cnt output Useful PDO entry number of the PDO object Map_Data output Double Wor
60. length is more then 1024 byte The SDO data are stored in a file Users can use the function 18123 SDOReadFile for reading the SDO data from the file Syntax WORD 18123 SDOReadFile BYTE SlotNo BYTE Node WORD Index BYTE Sublndex DWORD Start DWORD Len DWORD RLen BYTE RData Parameter SlotNo input 8123W slot number 0 7 Node input Slave device Node ID 1 127 Index input Object index of object dictionary of slave devices SubIndex input Object subindex of object dictionary of slave devices Start input Start position for reading the SDO data from file The range is from 0 to maximum length Len input Data length for reading the SDO data RDLen output Returned data length in reality RData output The SDO data respond from the specified slave device I 8123W user manual ver 2 00 Oct 26 2011 43 3 5 21 18123 SDOWriteData Description The function 18123_ SDOWriteData can send out a SDO message to the specified salve device This procedure is also called download SDO protocol The parameter node of the function 18123 SDOWriteData is used to point which slave device will receive this SDO message Because the data length of each object stored in object dictionary is different users need to know the data length when writing the object of the object dictionary of the specified slave devices This function supports both expedition mode less then 4 byte data l
61. lt transmission type is 255 Syntax WORD 18123 _PDOTxType BYTE SlotNo WORD Cobid BYTE Tx_Type BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 Cobid input COB ID used by the PDO object Tx_Type input Transmission type of TxPDO 0 255 Description of transmission type EE PDO transmission cyclic acyclic synchronous asynchronous RTR only 0 X X 1 240 X X 241 251 reserved 252 X X 253 X X 254 X 255 X BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo and Cobid again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 62 3 5 39 18123 PDOEventTimer Description Use this function to change the event timer of the TxPDO The default event timer is 0 When the event timer of the PDO object of the slave is more than 0 the PDO will be sent to master due to the parameter Timer automatically Syntax WORD 18123 PDOEventTimer BYTE SlotNo WORD Cobid WORD Timer BYTE BlockMode Parameter
62. m the PDO buffer BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo and Cobid again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 49 3 5 27 18123 GetMultiPDOData Description This can get the last data of the RxPDO and TxPDO from the PDO data buffer such as the function 18123 GetPDOLastData But the difference between these two functions is that user can use the function 18123 GetMultiPDOData to get maximum 50 PDO data at the same time Syntax WORD 18123 GetMuliPDOData BYTE SlotNo BYTE PDOCnt WORD Cobid BYTE IsNew BYTE DLen BYTE RData BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 PDOCnt input Total PDO number that want to get Cobid input Maximum 50 COB ID used by the PDO objects IsNew output Check these PDO data if they have been read before 0 is to be read before and 1 is new one DLen output The total data length obtained from the PDO buffer RData output The PDO messages get from the PDO buffer BlockMode input 0 means
63. n CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo and Node again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 34 3 5 12 18123 RemoveNode Description The function 18123 RemoveNode removes the slave with the specified Node ID from node list of the master It requires a valid Node ID which has installed by the function 18123 AddNode before Syntax WORD 18123 _ RemoveNode BYTE SlotNo BYTE Node BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 Node input Slave device Node ID 1 127 BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo and Node again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 35 3 5 13 18123 ScanNode Description User can use the function 18123 _ScanNode to know how many slave nodes are on the CANopen network Syntax WORD 18123 ScanNode BYTE SlotNo BYTE S_Node
64. nodes on the same CANopen network will be changed Syntax WORD 18123 _NMTChangeState BYTE SlotNo BYTE Node BYTE State BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 Node input Slave device Node ID 1 127 Set this parameter to 0 to indicate all slave devices State input NMT command specifier 1 start 2 stop 128 enter PRE OPERATIONAL 129 Reset_Node 130 Reset_Communication BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo and Node again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 38 3 5 16 18123 NMTGetState Description The function 18123 NMTGetState can get the NMT state from slaves Syntax WORD 18123 NMTGetState BYTE SlotNo BYTE Node BYTE State BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 Node input Slave device Node ID 1 127 State output The NMT state of the slave 4 STOPPED 5 OPERATIONAL 127 PRE OPERATIONAL BlockMode input 0 means this function is non block function and 1 means this
65. ockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo and Node again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 72 3 5 49 18123 _GetBootUpNodeAfterAdd Description If users don t know that which slave node occurred the boot up message and which 8123W received it Users can use the function 18123 _GetBootUpNodeAfterAdd This function can get not only the slave node ID but also the slot number of the I 8123W The parameter SlotNo indicates the number of the I 8123W which receives the boot up message The parameter Node is the ID of the slave node which produces the boot up message The 18123 GetBootUpNodeAfterAdd function is usually applied with the function 18123 InstallBootUpISR But note that this function can only get the slave node ID that has already been added I18123_AddNode to the I 8123W Syntax WORD 18123 _GetBootUpNodeAfterAdd BYTE SlotNo BYTE Node Parameter SIotNo output Get the slot number of the I 8123W which receives the boot up message Node output Get the slave n
66. ode ID of the received boot up message I 8123W user manual ver 2 00 Oct 26 2011 73 3 5 50 18123_ GetEMCYData Description If users don t know that which slave node occurred the EMCY message and which 8123W received it Users can use the function 18123 _GetEMCYData This function can get not only the EMCY message with the slave node ID but also the slot number of the I 8123W The parameter SlotNo indicates the number of the I 8123W which receives the EMCY message The parameter Node is the ID of the slave node which produces the EMCY The parameters RData is the 8 bytes EMCY message data The function 18123 GetEMCYData is usually applied with the function 18123 InstallIEMCYISR About the demo please refer to the section 4 1 2 NMT_Protocol Syntax WORD 18123 GetEMCYData BYTE SlotNo BYTE Node BYTE RData Parameter SlotNo output Get the slot number of the I 8123W which receives the EMCY message Node output Get the slave node ID of the received EMCY message RData output 8 byte EMCY message obtained from the EMCY buffer I 8123W user manual ver 2 00 Oct 26 2011 74 3 5 51 18123 GetNMTError Description User can use the function 18123 GetNMTError to check if the I 8123W gets NMT Error Event for any slave node The parameters of the function indicate that which I 8123W gets the NMT Error Event which node produces this event and what kin
67. or The following connection statuses are presented for the condition if the terminator resistor is enabled or disabled 2 Ni CAN_H N A Disable Enable CAN_GND SW1 Switch selection Pin assignment of l 8123W connector Pin No Signal Description 1 CAN_GND Ground 0 V V 2 CAN_L CAN_L bus line dominant low 3 N A No use 4 CAN_H CAN_H bus line dominant high 5 N A No use I 8123W user manual ver 2 00 Oct 26 2011 12 2 3 Power LED The l 8123W needs 2W power consumption If the electric power is supplied normally the Power LED will be turn on always If any other situation please check the power supply or contact to your distributor 2 4 Tx Rx LED Each 8123W provides Tx Rx LED to check the situations of the CAN messages transmission and reception If the I 8123W is transmitting or receiving a CAN message the Tx Rx LED will blink If the bus loading of the I 8123W is heavy the Tx Rx LED will be always turned on 2 5 ERR LED The ERR LED indicates the error status of the CAN physical layer and indicates the errors due to missing any CAN message I 8123W user manual ver 2 00 Oct 26 2011 13 3 l 8123 Function Library 3 1 Function List In order to use the I 8123W more easily we provide some useful and easy to use functions in the I 8123W library There are several kinds of library versions for the ViewPAC WinPAC and XPAC MCUs
68. or Control and special functions Time Stamp Sync message and Emergency message Nowadays CANopen is used for many various application fields such as medical equipment off road vehicles maritime electronics public transportation building automation and so on I 8123W user manual ver 2 00 Oct 26 2011 5 1 2 CANopen Applications CANopen is the standardized network application layer optimized for embedded networks Its specifications cover the standardized application layer frameworks for the various applications e g general I O motion control system maritime electronics and so forth as well as device interface and application profiles The main CANopen protocol and products are generally applied in the low volume and mid volume embedded systems The following examples show some parts of the CANopen application fields For more information please refer to the web site http www can cia org Truck based superstructure control systems Off highway and off road vehicles Passenger and cargo trains Maritime electronics Factory automation Industrial machine control Lifts and escalators Building automation Medical equipment and devices Non industrial control Non industrial equipment I 8123W user manual ver 2 00 Oct 26 2011 6 1 3 l 8123 Library Characteristics In order to use the I 8123W module we provide the I 8123W library for the ViewPAC WinPAC XPAC series main control unit and users can use i
69. rate of the I 8123W Value Baud rate 0 10Kbps 20Kbps 50Kbps 125Kbps 250Kbps 500Kbps 800Kbps 1Mbps NN ODO oO RO PM BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo and Node again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 25 3 5 4 18123 ShutdownMaster Description The function 18123 ShutdownMaster removes all the slaves that had added to master and stop all the functions of the I 8123W The function must be called before exit the users application programs Syntax WORD 18123 ShutdownMaster BYTE SlotNo Parameter SlotNo input 8123W slot number 0 7 I 8123W user manual ver 2 00 Oct 26 2011 26 3 5 5 18123 GetCANStatus Description The function 18123 ShutdownMaster removes all the slaves that had added to master and stop all the functions of the I 8123W The function must be called before exit the users application programs Syntax WORD 18123 ShutdownMaster BYTE SlotNo BYTE Status
70. re of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 28 3 5 7 18123 SetMasterMode Description This function can configure if the master is into listen mode or normal mode default mode In listen mode the I 8123W can t send any CANopen message and some functions will be useless in this mode User can select normal mode or listen mode at any time after calling function 18123 _InitMaster Syntax WORD 18123 SetMasterMode BYTE SlotNo BYTE Mode BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 Mode input 1 is listen mode and others are normal mode default mode BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011
71. s Guarding Protocol and Heartbeat Protocol at the same time Syntax WORD 18123 NMGuarding BYTE SlotNo BYTE Node WORD GuardTime BYTE LifeTime BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 Node input Slave device Node ID 1 127 GuardTime input Guard Time 1 65535 ms LifeTime input Life Time Factor 1 255 BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo and Node again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 40 3 5 18 18123 NMTHeartbeat Description Use the function 18123 NMTHeartbeat to set heartbeat time of the slave with the specified node ID and consume time with the I 8123W Then the slave will automatically send the heartbeat message to master according to the ProduceTime parameters of this function If the master doesn t receive the heartbeat message from the slave until the ConsumeTime time unit is millisecond is up the I 8123W will produce a Heartbeat_Event event to users Users may use the function 18123
72. splayed in the following description I 8123W user manual ver 2 00 Oct 26 2011 96 4 1 1 Listen Mode Initialize the 8123W with the listen mode and add slave nodes with the manual mode then the I 8123W listens CANopen messages only and does not send any message to the CANopen network In this demo the I 8123W will listen NMT state 4 TxPDO messages with the COB ID 0x180 Node ID 0x280 Node ID 0x380 Node ID and 0x480 Node ID 4 RxPDO messages with the COB ID 0x200 Node ID 0x300 Node ID 0x400 Node ID and 0x500 Node ID and the EMCY messages Listen _Mode 1000 kbps Node 1D 1 3 T State Pre operation mode MCY 81 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 Applied function list 18123 InitMaster 18123 Shutdown 18123 AddNode 18123 RemoveNode 18123 EDS Load 18123 SetMasterMode 18123 NMTGetState 18123 InstallPDO List 18123 GetPDOLastData 18123 GetRxPDOID 18123 GetTxPDOID 18123 SetEMCY List 18123 GetEMCYID 18123 ReadLastEMCY I 8123W user manual ver 2 00 Oct 26 2011 _ 97 4 1 2 NMT_Protocol This is a NMT network control demo The demo not only tells users how to control the NMT status of a specific slave node but also how to protect the slave through t
73. steatves 80 18123 JREMOVENIVED Err SRiic cas cocrtetces od eneen necaies 81 ISIZ3 GetMasterheadsDCOHEvent 82 I 8123W user manual ver 2 00 Oct 26 2011 3 3 5 59 18123_GetMasterWriteSDOEvent sxc scssec cscs sceeedacgeecdscstseeesaseseeshes 83 3 5 60 18123 ResponseMasterSDO 1 55 5 ccissccccsssessdecsessstensscedeantesnsesceoeees 84 3 5 61 hee ele ee ee 85 3 5 62 18123_RemoveReadSDOISR isisssceesshesStassecsadevctas tase Seedreegee in geeg 86 ee 218123 Install WriteS DOISR erageerbdeiete eege eege gebeten 87 3 5 64 18123 RemoveWtes DOS 88 3 5 65 18123_GetMasterRemotePDOEVent ccsccccssscesesscesneecenes 89 3 5 66 18123_GetMasterRxPDOEvent eege dd EENEG eg 90 3 5 67 18123_ResponseMasterPDO E 91 3 5 68 18123 InstalIRKPDOISR ss sossseessesessseessessessessseesresresseesseseesseesee 92 33 069 ES enee KEE Uerteel ge 93 3 5 70 T8123 InstallREmotePDOISR issssssesnssasesssscensecegtacteeerecenaeedeudaceesess 94 3 5 71 18123_RemoveRemotePDOISR AAA 95 d Demo Program iivisisseccdiecssccdscndessdecddeendiacenertescceendewcseardesndeendaecdeesdeentuaes 96 4 1 Brief of the demo programS cseseeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeneees 96 4 1 1 Eisten Mod s sies oenn ea E A K E EE E RK 97 4 1 2 NMT ee 98 4 1 3 PDO Parameter s ciiassasiacsiatsscatandesaa na R E R 99 4 1 4 PDO Protocol Ariss iin na a E Aa 100 4 1 5 SCAM EE deen otini e a e a oa sissies 101 4 1 6 SOU PID ONTO eege 102 4 1
74. t establish CANopen communication network rapidly Most of the CANopen communication protocols such as PDO SDO and NMT will be handled by the library automatically Therefore it is helpful to reduce the complexity of developing a CANopen master interface and let users ignore the detail CANopen protocol technology This library mainly supports connection sets of master slave architecture which include some useful functions to control the CANopen slave device in the CANopen network The following figure describes the general application architecture of the I 8123W WinPAC CANopen I O Module CANopen Wee 3 T eee Sensor S50 Figure 1 2 Application architecture The 1 8123W follows the CiA CANopen specification DS 301 V4 02 and supports the several CANopen features The CANopen communication general concept is shown as Figure 1 3 I 8123W user manual ver 2 00 Oct 26 2011 T Node manager NMT Master SDO manager PDO manager Figure 1 3 CANopen communication general concept H Node Manager NMT Master Functions for changing the slave device state Node Guarding and Heartbeat Protocol for error control Support Emergency EMCY messages H SDO Manager Expedited segmented and block methods for SDO download and upload m PDO Manager Support all transmission types and event timer H SYNC Manager SYNC message production SYNC cycles of ims resolution H EMCY Manager EMCY message consum
75. the SDO message Subindex output Get the object subindex of the SDO message I 8123W user manual ver 2 00 Oct 26 2011 82 3 5 59 18123 GetMasterWriteSDOEvent Description Using this function can get all the write SDO messages sent to the specific node ID of the I 8123W For example the I 8123W is initialized with node ID 2 If someone sends an SDO message with the COB ID 0x602 to the I 8123W for writing an object users can use the function 18123 _GetMasterWriteSDOEvent for obtaining this SDO message The parameter SlotNo indicates the number of the I 8123W which receives the write SDO message The parameters Index and Sublndex are the object indicator The parameter WLen is the data length of the parameter WData The function 18123 GetMasterWriteSDOEvent is usually applied with the function 18123 InstallWriteSDOISR About the demo please refer to the section 4 1 6 SDO_PDO_ISR Note The function is valid while the Node parameter of the function 18123 _InitMaster is gt 0 Syntax WORD 18123 GetMasterWriteSDOEvent BYTE SlotNo WORD Index BYTE Sublndex BYTE Wen BYTE WData Parameter SlotNo output Get the slot number of the I 8123W which receives the write SDO message Index output Get the object index of the SDO message Subindex output Get the object subindex of the SDO message WLen output The data length of the write data WData output Return 0 4 bytes
76. tion pass the slave device node ID object index and object subindex into this function This function supports both expedition mode less then 4 byte data length and segment mode more then 4 byte data length Syntax WORD 18123_SDOReadData BYTE SlotNo BYTE Node WORD Index BYTE Sublindex DWORD RDLen BYTE RData BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 Node input Slave device Node ID 1 127 Index input Object index of object dictionary of slave devices SubIndex input Object subindex of object dictionary of slave devices RDLen output Total data length RData output SDO data respond from the specified slave device BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo and Node again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 42 3 5 20 18123 SDOReadFile Description The function 18123 _SDOReadFile is useful as uploading the SDO data more then 1024 bytes While users use the 18123 ReadData to read the SDO data and the return data
77. unction is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo and Node again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 59 3 5 36 18123 RemovePDO List Description The function 18123 RemovePDO List can remove a TxPDO or RxPDO object had installed by the 18123 InstallPDO_List This function also can remove single object mapped in the TxPDO or RxPDO Syntax WORD 18123 _ RemovePDO _List BYTE SlotNo BYTE Node WORD Cobid BYTE Entry BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 Node input Slave device Node ID 1 127 Cobid input COB ID used by the PDO object Entry input PDO mapping object subindex value 0 8 If this parameter is set to 0 the specified PDO object will be removed If others 1 8 the specified subindex content of the PDO will be removed BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing
78. use the CANopen Master Library to build users applications This information is helpful for users to apply the CANopen Master Library easily Besides the CANopen operation principles must be obeyed when build a CANopen master application For example if the CANopen node is in the pre operational status the PDO communication object is not allowed to use For more detail information please refer to the demo programs in the section 4 When users programs apply the CANopen Master Library functions the function 18123 _InitWaster must be called first The function is used to initialize I 8123W and configure the CAN port After initializing the CAN interface successfully users need to use the function 18123 _AddNode or 18123 EDS _ Load to install at least one CANopen device into the node list The function 18123 AddNode can install slave node automatically or manually When the user applies the function to install node manually the PDO ID SYNC ID and EMCY ID of the node must be added manually by the functions 18123 InstallPDO List 18123 SetSYNC_List and 18123 SetEMCY_List If the function 18123 InitMaster and 18123 AddNode 18123 EDS Load has been executed the communication services NMT SYNC EMCY SDO and PDO services can be used at any time before calling the function 18123 ShutdownMaster because the function 18123 ShutdownMaster will stop all process created by the function 18123 _InitMaster I 8123W user manual ver 2 00 Oct 26 2011
79. user s EMCY process This process is usually applied with the function 18123 _GetEMCYData I 8123W user manual ver 2 00 Oct 26 2011 78 3 5 55 18123 RemoveEMCYISR Description When the user doesn t need the EMCY IST function call this function to remove the user s IST Syntax WORD 18123_ RemoveEMCYISR BYTE SlotNo Parameter SlotNo input 8123W slot number 0 7 I 8123W user manual ver 2 00 Oct 26 2011 79 3 5 56 18123 _InstalINMTErrlSR Description This function allows the user to apply NMTErr IST interrupt service thread When the user puts his NMTErr process into this function all the Heartbeat_Event and Node Guarding Event triggered by the slaves will go to the IST If the user had used the 18123 _NMTGuarding to enable the guarding protocol or had used the 18123 Heartbeat to enable the heartbeat protocol the I 8123W will go into the NMTErr IST to do the user s NMTErr process while the guarding confirms or heartbeat indicator doesn t be received Syntax WORD 8123_InstalINMTErrlSR BYTE SlotNo void NMTERRISR H Parameter SlotNo input 8123W slot number 0 7 NMTERRISR input The pointer which points a function with format void XXX y The XXX is the function name of the user s process This process is usually applied with the function 18123 GetNMTError I 8123W user manual ver 2 00 Oct 26 2011
80. ut 8123W slot number 0 7 I 8123W user manual ver 2 00 Oct 26 2011 86 3 5 63 18123_InstallWriteSDOISR Description This function allows the user to apply the WriteSDO IST interrupt service routine of the I 8123W When the user puts the process into this function all the written SDO messages sent to the specified I 8123W will trigger the IST For example the I 8123W is initialized with node ID 2 If someone sends an SDO message with the COB ID 0x602 to the I 8123W for writing an object the I 8213W will go into the IST if the user has installed it Note The function is valid while the Node parameter of the function 18123 _InitMaster is gt 0 Syntax WORD 18123 _InstallWriteSDOISR BYTE SlotNo void WSDOISR Parameter SlotNo input 8123W slot number 0 7 WSDOISR input The pointer which points a function with format void XXX The XXX is the function name of user s process This process is usualy used with the function 18123 GetMasterWriteSDOE vent I 8123W user manual ver 2 00 Oct 26 2011 87 3 5 64 18123 RemoveWriteSDOISR Description When the user doesn t need the WriteSDO IST function call this function to remove the user IST Syntax WORD 18123 RemoveWriteSDOISR BYTE SlotNo Parameter SlotNo input 8123W slot number 0 7 I 8123W user manual ver 2 00 Oct 26 2011 88
81. void XXX The XXX is the function name of user s process This process is usualy used with the function 18123 GetMasterRxPDOEvent I 8123W user manual ver 2 00 Oct 26 2011 92 3 5 69 18123 RemoveRxPDOISR Description When the user doesn t need the RxPDO IST function call this function to remove the user IST Syntax WORD 18123 RemoveRxPDOISR BYTE SlotNo Parameter SlotNo input 8123W slot number 0 7 I 8123W user manual ver 2 00 Oct 26 2011 93 3 5 70 18123 _InstallRemotePDOISR Description This function allows the user to apply the RemotePDO IST interrupt service routine of the I 8123W When the user puts his process into this function all the Remote PDO messages of the I 8123W s PDO objects will trigger the IST For example the 1 8123W has used 18123 InstallPDO_List to install a TxPDO object with the COB ID 0x444 of the I 8123W If some one sends a Remote PDO message with the COB ID 0x444 to the I 8123W the I 8213W will go into the IST if the user had installed it Note The function will usefully when the Node parameter of the function 18123 _InitMaster is gt 0 Syntax WORD 18123_InstallRemotePDOISR BYTE SlotNo void REMOTEPDOISR Parameter SlotNo input 8123W slot number 0 7 REMOTEPDOISR input The pointer which points a function with format void XXX y The XXX is the function name of us
82. ware of the I 8123W Users must call 18123 SetSYNC List 18123 SetEMCY List and 18123 InstallPDO_List to complete the object installation to finish the adding node process The added node can be removed from the master node list by the function 18123 RemoveNode Syntax WORD 18123 AddNode BYTE SlotNo BYTE Node BYTE AddMode WORD DelayTime WORD ResTimeout BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 Node input Slave device Node ID 1 127 AddMode input 1 Automatic mode 2 Manual mode DelayTime input The parameter is the shortest time interval between sending two messages from the I 8123W It can avoid the master to send too much CANopen messages in a short time that may let some slaves occur the errors But if the delay time is too long the performance of the I 8123W is I 8123W user manual ver 2 00 Oct 26 2011 33 down The unit of the parameter is ms ResTimeout input The timeout value of the responded messages from the CANopen slaves When the master sends a CANopen message to the slave it will wait the feedback until timeout if there is a feedback The unit of this parameter is millisecond BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will retur
83. will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 51 3 5 29 18123_GetTxPDOID Description Use the function 18123 _GetTxPDOID to get all the TxPDO COB IDs of the specified slave which have been installed to the master Syntax WORD 18123 GetTxPDOID BYTE SlotNo BYTE Node BYTE PDO_ Cnt WORD ID List BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 Node input Slave device Node ID 1 127 PDO_ Cnt output The number of installed TxPDO ID_List output The TxPDO COB ID list BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo and Node again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 52 3 5 30 18123_InstallPDO Description After calling the 18123 _InstallIPDO function a PDO COB ID will be installed in the PDO object list of the CANopen Master Library stack If the slave device has defined the default PDO object in RxPDO1 RxPDO10 and TxPDO1 TxPDO10 in this case these default PDO will be install
84. with the same SlotNo and Node again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 69 3 5 46 18123 SetEMCY_List Description If the user uses 18123 AddNode function to add the slave with manual mode the function 18123 SetEMCY_List must be called while the EMCY ID of the slave needs to be changed or be set 18123 SetEMCY_List only can change the EMCY COB ID in the COB ID list of the I 8123W Afterwards the I 8123W process the EMCY messages with the specific EMCY COB ID which is configured by the function 18123 SetEMCY_List Syntax WORD 18123 SetEMCY_List BYTE SlotNo BYTE Node WORD Cobid BYTE BlockMode Parameter SlotNo input 8123W slot number 0 7 Node input Slave device Node ID 1 127 Cobid input COB ID used by the EMCY object BlockMode input 0 means this function is non block function and 1 means this function is block function If set this parameter to 1 the running procedure of the users application will be held in the function until return If set to 0 this function will return CPM_ Processing directly This function will return its process status while users apply it with the same SlotNo and Node again If the procedure is still not complete it will return CPM_Wait I 8123W user manual ver 2 00 Oct 26 2011 70 3 5 47 18123_ GetEMCYID

Download Pdf Manuals

image

Related Search

Related Contents

Peerless ACC961 flat panel wall mount  User Manual  - INTEG Process Group  Husqvarna 124C Trimmer User Manual    DHS680 - Makita  Epson LQ-670 User's Manual  C Guide anti-tiques en camp scout  Epson Runsense SF-310G  Instruções complementares Acessório de montagem para técnica  

Copyright © All rights reserved.
Failed to retrieve file