Page 1
CAN-8123/CAN-8223/ CAN-8423/CAN-8823 CANopen Slave Device User’s Manual Warranty Without contrived damage, all products manufactured by ICP DAS are warranted in one year from the date of delivery to customers. Warning ICP DAS revises the manual at any time without notice. However, no responsibility is taken by ICP DAS unless infringement act imperils to patents of the third parties.
I-8000 series DI/DO/AI/AO slot modules for their application purposes. The CAN-8123/CAN-8223 has one and two expansion slots respectively, and the CAN-8423/CAN-8823 supports four and eight expansion slots. Each expansion slot can insert in one I-87K or I-8000 series I/O module. All of these main control units follow the CANopen Spec DS-301 V4.01 and DS-401 V2.1,...
1.4 Utility Features Support parameter configuration on the I-8000 and I-87K modules Provide to show Application and Device Object information Provide to show Rx and Tx PDO mapping Support EDS file creation CAN-8x23 user’s manual (Revision 3.20, Mar/08/2012) ------...
2 Hardware Specification 2.1 Hardware Structure CAN-8123: Power LED CANopen Status LED Node ID and Baud CANopen rate rotary switch Error LED CAN Bus Connector 1 I/O Expansion Slot CAN-8223: CANopen Power LED Status LED CANopen Node ID and Baud Error LED rate rotary switch CAN Bus Connector...
Page 10
Error LED Node ID and Baud rate rotary switch Power Pin RS-232 Port (connect to PC) CAN Bus Connector 4 I/O Expansion Slots CAN-8823: Power LED Power Pin CANopen Status LED CANopen Error LED Node ID and Baud rate rotary switch...
2.3 Wire Connection In order to minimize the reflection on the CAN bus line, the CAN bus line has to be terminated at both ends by two terminal resistances as shown in the following. According to the ISO 11898-2 spec, each terminal resistance is 120Ω...
The bus length determines the CAN bus baud rate. In the following the table provides users a relationship between the baud rate and the bus length. Baud rate (bit/s) Max. Bus length (m) 800 K 500 K 250 K 125 K 50 K 1000 20 K...
Page 14
Pin No. Signal Description CAN_L CAN_L bus line (dominant low) CAN_SHLD Optional CAN Shield CAN_H CAN_H bus line (dominant high) CAN-8823: Pin No. Signal Description CAN_L CAN_L bus line (dominant low) CAN_SHLD Optional CAN Shield CAN_H CAN_H bus line (dominant high) Others CAN-8x23 user’s manual (Revision 3.20, Mar/08/2012) ------...
CAN-8823 Before updating firmware or using the utility tool to configure the CAN-8423 and the CAN-8823, the initial mode is needed. For more detail configuration, please refer to the cheaper 4. Since the CAN-8123/CAN-8223 doesn’t support RS-232 COM Port, the utility tool in the off-line mode takes the place to get the EDS file.
2.7 CANopen Status LED Each one CAN-8x23 has two LED indicators. One is the Error LED (lighting in red) and the other one is the RUN (Performing) LED (lighting in green). The Error LED and the Run (Performing) LED information are presented in the CANopen specifications.
2.7.2 The ERR LED The ERR LED relates to the state of missing messages at the CAN physical layer (These missing messages might be SYNC or Guard messages). The data state and the signal state description are respectively shown in the following figure and table.
Page 18
Signal State Description No Light No error The device is in working condition. Single Flash Error Reminding At least one of the error counters when Warning of the CAN controller has Level is Reached reached or exceeded the warning level (too many error frames). Double Flash Error Reminding A guard event (NMT-Slave or...
2.8 The Node ID & the Baud rate Rotary Switch The first two rotary switches (MSB & LSB) control the CAN-8x23 node ID. MSB (Most Significant Bit) means the high nibble of the node ID, and LSB (Least Significant Bit). ID Rotary Switch Status 0x01 ~ 0x7F...
2.9 I/O Pair-connection Mode The CAN-8x23 provides the I/O pair-connection function. Before using this function, you need to prepare two CAN-8x23s with DI and DO I/O modules (such as I-8057W and I-8053W). When applying this function, the DI channels and the DO channels are mapping with each other. That is to say that when the DI channels of one CAN-8x23 get the ON signal, the corresponding DO channels of the other one will be turned on.
The node ID of left CAN-8123 is “0x81”, and the node ID of right CAN-8123 is “0x82”. Both of these two module’s node ID switch are selected to I/O pair-connection mode node ID, and these two modules will into Operational state automatically. When the DI module, right CAN-8123, receives a DI ON-signal, the DO module, left CAN-8123, will output the ON-signal at the corresponding DO channels.
3 CANopen Application The CANopen is a kind of network protocols evolving from the CAN bus, used on car control system in early days, and has been greatly used in various applications, such as vehicles, industrial machines, building automation, medical devices, maritime applications, restaurant appliances, laboratory equipment &...
Page 23
Communication The communication part provides several communication objects and appropriate functionalities to transmit CANopen messages via the network structure. These objects include PDO (Process Data Object), SDO (Service Data Object), NMT (Network Management Objects), SYNC (Synchronous Objects)…etc. Each communication object has its relative communication model and functionality.
Page 24
Data 8-byte Data Length 11-bit data is limited in the ID field. It is useful in the arbitration mechanism. The RTR, limited in 1-bit data, is used for remote-transmitting requests as the value is set to 1. The data length, limited in 4-bit data, shows the valid data number stored in the 8-byte data field.
Page 25
In addition, the other COB-IDs shown in the following table can be used if necessary. (Bit10~Bit7) (Bit6~Bit0) Communication object Name (Function Code) 0000 0000000 0001 0000000 SYNC 0010 0000000 TIME STAMP 0001 Node ID EMERGENCY 0011/0101/0111/1001 Node ID TxPDO1/2/3/4 0100/0110/1000/1010 Node ID RxPDO1/2/3/4 1011...
Page 26
Object Dictionary The object dictionary collects a lot of important information which can affect device’s reaction, such as the data accessing through I/O channels, the communication values and the network states. Essentially, the object dictionary consists of a group of entry objects, and these entries can be accessed via the node network in a pre-defined method.
Page 27
DI Standardized Device Practical DI Dictionary Object (0x6000) Channel 0~15 Subindex1 : DI Channel 0~7 Subindex2 : DI Channel 8~15 DO Standardized Device Practical DO Dictionary Object (0x6200) Channel 0~7 Subindex1 : DO Channel 0~7 AI Standardized Device Dictionary Object (0x6401) Subindex1 : AI Channel 0 Practical AI Subindex2 : AI Channel 1...
Page 28
By objects with the index 0x6000, the CAN-8423 can store the input values of DI channel, i.e. the I/O values of DO, AI, and AO channels are put into the object with the indexes 0x6200, 0x6401, and 0x6411 respectively. When values are resulted through these I/O, and correspond to the specific object, the device will follow the rules below.
3.2 SDO Introduction In order to access the entries in a device object dictionary, service data objects (SDOs) are provided. By means of the SDO communication method, a peer-to-peer communication bridge between two devices is established, and its transmission follows the client-server relationship. The general concept is shown in the figure below.
Page 30
protocol will be given, and the SDO transmission will also be stopped. The CAN-8x23 only supports the SDO server. Therefore, it can be passive and wait for requests from clients. The general concept figure of the upload and download protocol with the CAN-8x23 is shown as follows. CAN-8x23 user’s manual (Revision 3.20, Mar/08/2012) ------...
3.3 PDO Introduction Based on the transmission data format of the CAN bus, the PDO can transmit eight bytes of process data at one time. Because of the PDO messages without overheads, it is more efficient than other communication objects within CANopen and therefore used for real-time data transfer, such as DI, DO, AI, AO, etc.
Page 32
For the CANopen device, the TxPDO specializes in transmitting data, and is usually applied on DI/AI channels. The COB-ID of the PDO for receiving data is RxPDO COB-ID, and it is usually applied on DO/AO channels. Take the CAN-8x23 as an example. If a PDO producer sends a PDO message to the CAN-8x23, it needs to use the RxPDO COB-ID of the CAN-8x23 because it is a PDO reception action viewed from the CAN-8x23.
Page 33
The PDO transmission can be triggered by receiving a remote request from any other PDO consumer with under the asynchronous or RTR setting. PDO Transmission Types Generally there are two kinds of PDO transmission modes, synchronous and asynchronous. For the PDO in a synchronous mode, it must be triggered by the reception of a SYNC message.
Page 34
Acyclic synchronous For the TxPDO object, after receiving a n object from the SYNC producer, the CAN-8x23 will respond with a pre-defined TxPDO message to the PDO consumers. For the RxPDO object, the CAN-8x23 needs to receive the SYNC objects to actuate the RxPDO object, which is received before the SYNC object.
Page 35
Inversely, the cyclic synchronous transmission mode is triggered by the reception of an expected number of SYNC objects, and the max number of expected SYNC objects can be 240. For example, if the TxPDO is set to response when receiving 3 SYNC objects, the CAN-8x23 will feed back the TxPDO object according to the set.
Page 36
RTR-only synchronous The RTR-only synchronous mode is activated when receiving a remote-transmit-request message, i.e. SYNC objects. This transmission type is only useful for TxPDO. In this situation, the CAN-8x23 will update the DI/AI value when receiving any SYNC object. And, if the RTR object is received, the CAN-8x23 will respond to the TxPDO object.
Page 37
RTR-only asynchronous The asynchronous mode is independent of the SYNC object. This mode can also be divided into two parts. There are RTR-only asynchronous transmission type and asynchronous transmission type. The RTR-only transmission type is only for supporting TxPDO transmissions , only triggered by receiving the RTR object from the PDO consumer.
Page 38
Asynchronous The other part is the asynchronous transmission type. Under this type, the TxPDO message can be triggered by receiving the RTR object and the device-specified event mentioned in the event driven paragraph. Furthermore, the DO/AO channels can act directly by receiving the RxPDO object. This transmission type is the default value when the CAN-8x23 boots up.
Page 39
Inhibit Time Because of the arbitration mechanism of the CAN bus, the CANopen communication object ID in small size has a higher transmission priority than the bigger one. For example, there are two nodes on the CAN bus, the one needs to transmit the CAN message with the COB-ID 0x181, and the other has to transmit the message with COB-ID 0x182.
Page 40
There shall be up to 4 TxPDO mapping objects and up to 4 RxPDO mapping objects with default mappings. The 1st RxPDO and TxPDO mapping objects are used for digital outputs and inputs to each other. The 2nd, 3rd, and 4th RxPDO and TxPDO mapping objects are respectively assigned to record the value of analog outputs and inputs.
Page 41
DI Standardized Device Dictionary Object (0x6000) Subindex1 : DI Channel 0~7 Subindex2 : DI Channel 8~15 DO Standardized Device Dictionary Object (0x6200) Subindex1 : DO Channel 0~7 AI Standardized Device Dictionary Object (0x6401) Subindex1 : AI Channel 0 Subindex2 : AI Channel 1 AO Standardized Device Dictionary Object (0x6411) Subindex1 : AO Channel 0...
3.4 EMCY Introduction EMCY messages are triggered when a device internal error occurs, i.e. after a CANopen device detects the interna l error, an emergency message will be transmitted to the EMCY consumers per time per error event. But the EMCY message will not be transmitted again if the same error repeatedly occurs.
3.5 NMT Introduction The Network Management (NMT) follows the node-oriented structure and the master-slave relationship. In the same CAN bus network, only one CANopen device is allowed to execute the function of NMT master. Each CANopen node is regarded as a unique NMT slave identified by its node ID from 1 to 127.
3.5.1 Module Control Protocols Before introducing the modules control protocols, the architecture of the NMT state mechanism needs to be mentioned. The diagram shows the process and the relationships among each NMT state and the mechanism. Power on or Hardware reset Initialization Pre-Operational Stop...
Devices will directly lead to the Pre-Operational state after finishing the device initialization. Then, the nodes will be switched into different state by receiving a specific indication. By the way, each different NMT state will consider a specific communication method. For example, the PDO message can only do the transmission and receiving in the operational state.
Page 47
Node Guarding Protocol The Node Guarding Protocol follows the Master/Slave relationship. It helps users monitoring the node in the CAN bus. The communication method of node guarding protocol is defined as follows. NMT Master NMT Slave Remote transmit request request indication confirm response...
Page 48
Heartbeat Protocol The Heartbeat Protocol follows the Producer/Consumer relationship. It provides a way to help uses monitor the node in the CAN bus. The communication method of heartbeat protocol is defined as follows. The Heartbeat Protocol defines an Error Control Service without need for remote frames.
Page 50
The following procedure is the general concept for the off-line mode. This procedure can be applied in the CAN-8x23. CAN-8x23 user’s manual (Revision 3.20, Mar/08/2012) ------...
4.2 CAN-8423/CAN-8823 Configuration Flowchart Select the necessary Select one or more of I-8000/I-87K ICPDAS I-8000/I-87K AI/AO/DI/DO modules for the user’s IO modules for users application CANopen application. Plug these I-8000/I-87K modules 1. Turn off the CAN-8423. into the available C A N -842 3 I/O 2.
Page 52
The following procedure is the general concept for the on-line mode. This procedure can be applied only in the CAN-8423 and CAN-8823. Start Connect the CAN-8423 CAN port with CANopen network Set the Baud rotary switch to proper baud rate...
Allows configuring the input range of the I-8000 and I-87K AI/AO modules plugged in CAN-8423 and CAN-8823. Supports to create EDS files to match the scan result in the on-line mode after scanning the I-8000 or I-87K modules in CAN-8423 and CAN-8823.
4.4 Configuration with the CANopen Slave Utility CANopen Slave Utility Step 1: Download the CANopen Slave Utility file from the web site http://www.icpdas.com/products/Remote_IO/can_bus/can-8423.htm or http://www.icpdas.com/products/Remote_IO/can-8123.htm or CD-ROM disk via the following path of “CD:\CANopen\Slave\CAN-8x23\Utility\”. Step 2: Execute the CANopen_SL.exe file to start the CANopen Slave Utility. CAN-8x23 user’s manual (Revision 3.20, Mar/08/2012) ------...
4.5 CAN-8123/8223 Configuration (Off-line mode) Step 1: Select “CANopen” in the “Application Layer” area, and “offline” in the “Setting status”. Step 2: Take the CAN slave device (CAN-8223 with node ID 123 and baud rate 1000Kbps) as an example, Users have to fill in “NODE ID” with 123 and choose a “CAN Baud rate”...
Page 56
Step 4: After finishing the configuration, users can one-left click on the slot module in the “CAN Slave Device Situation” area. If the configuration is successful, users can see the correct module name , for example 8024 on the top of the slot module. Step 5: Then, repeat the step 3~4 to configure the slot 1 to I-8042 module.
Page 57
Step 6: Users can perform the parameter setting in the “General Setting” windows. As well, users can check the default settings on each slot module by moving the cursor on the slot module in order to get the module name and module information in the “Module Information”...
Page 58
Step 8: Users can select the “PDO Information”, the “Device Information “and the “Slot Module Information” button for purpose to view the PDO objects, device profile and slot module configuration information. These information dialogs are shown below. CAN-8x23 user’s manual (Revision 3.20, Mar/08/2012) ------...
Page 59
If everything is ok, click the “Finish” button to create the EDS file. Note: If users use off-line method to get the EDS file, the objects , used to record the input/output range of the analog modules, will be described to default value in the EDS file.
4.6 CAN-8423/8823 Configuration (On-line mode) Before using the CAN Slave utility in the On-line mode of the CAN-8423/8823, please make sure that all connections are ready, from the CAN-8423/8823 to your PC via COM port. The architecture figure is displayed in the following.
Page 61
Step 3: To execute the CAN_SL.exe file, and to display the figure, users have to connect a PC COM port and the CAN-8423 well. Here, take the PC COM 1 as an example. Click “Connect” button to get the information stored in the CAN-8423.
Page 62
the feature of I-8024 slot module, output range on each channel will be changed in the same way after users select the output range in one of the channels. Step 6: After setting the proper output range, users can click “Set” button to store the configuration.
Page 63
Step 7: Then, “EDS File Information” window will pop out. Users can fill the “Description” and “Create by” fields for the EDS file. Also, users can see the CANopen objects information and modules information by clicking the buttons. For more detail information, please refer to the Step 7 and 8 in section 4.5. Note1: The CAN-8423/8823 can also create the EDS file by using off-line mode, and set the analog input range or analog output range by using the CANopen SDO protocol.
In the following section, several CANopen communication protocols are described. Each protocol description has one corresponding example. Because the communication methods in the CAN-8123/CAN-8223/CAN-8823 are similar to the one in CAN-8423, only the example for CAN-8423 is given. Before the example, users must have one CAN interface to send out the CAN command.
5.1 SDO Communication Set 5.1.1 Upload SDO Protocol Initiate SDO Upload Protocol Before transferring the SDO segments, the client and server need to communicate with each other by using the initiate SDO upload protocol. Via the initiate SDO upload protocol, the SDO client will inform the SDO server what object the SDO client wants to request.
Page 66
client command specified 2: initiate upload request server command specified 2: initiate upload response Only valid if e = 1 and s = 1, otherwise 0. If valid, it indicates the number of bytes in d that do not contain data. Bytes [8-n, 7] do not contain segment data.
Page 67
Upload SDO Segment Protocol When the upload data length is over 4 bytes, the upload SDO segment protocol will be needed. After finishing the transmission of the initiate SDO upload protocol, the SDO client will start to upload the data. The upload SDO segment protocol will comply with the process shown below.
Page 68
: client command specified 3: upload segment request : server command specified 0: upload segment response : toggle bit This bit must alternate for each subsequent segment that is uploaded. The first segment will have the toggle bit set to 0. The toggle bit will be equal for the request and the response message.
Page 69
SDO Upload Example The practical application of the SDO upload is illustrated as below. SDO Server (CAN-8123/CAN-8223/ SDO Client CAN-8423) Initial SDO Upload Protocol (e=0) Upload SDO Protocol (t=0, c=0) SDO Server (CAN-8123/CAN-8223/ SDO Client CAN-8423) Upload SDO Protocol (t=1, c=0) Initial SDO Upload Protocol (e=1) Upload SDO Protocol (t=0, c=0) SDO Upload with expedited transfer...
Page 70
Example for expedited transfer Step 1. SDO message will be sent to the CAN-8423 to obtain the object entry with index 0x1400 and sub-index 00 stored in the communication profile area. The message structure is as follows. Moreover, the node ID of the CAN-8423 set to 1, and the information about the object entry with index 0x1400 will be described in the chapter 6.
Page 71
Example for normal transfer Step 1. Send the RxSDO message to the CAN-8423 to obtain the object entry with index 0x1008 and sub-index 00 stored in the communication profile area. The message structure is as follows. Moreover, the node ID for the CAN-8423 set to 1, and the information about object entry with index 0x1008 will be described in the chapter 6.
Page 72
Step 3. The CAN-8423 is requested to start the data transmission. 11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length SDO server SDO client (CAN-8x23) Step 4. The CAN-8423 will respond to the first 7 bytes in the index 0x1008 and sub-index 00 object entries.
Page 73
Step 5. The CAN-8423 is requested to transmit the rest of the data. 11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length SDO server SDO client (CAN-8x23) Step 6. Tthe rest of the data will be received from the SDO server. 11-bit COB-ID (bit) 8-byte Data (byte) Data...
5.1.2 SDO Block Upload Protocol Initiate SDO Block Upload Protocol The SDO Block Upload is usually used for the large data transmission. At the beginning of the SDO Block Upload, the Initiate SDO Block Upload protocol is needed. This protocol is described below. CAN-8x23 user’s manual (Revision 3.20, Mar/08/2012) ------...
Page 75
: client command specified 5: block upload : server command specified 6: block upload. : client subcommand 0: initiate upload request 3: start upload : server subcommand 0: initiate upload response : multiplexor It represents the index/sub-index of the data to be transfer by the SDO.
Page 76
Upload SDO Block Segment Protocol After finishing the Initiate SDO Block Upload protocol, the SDO server starts to respond to the data by using the Upload SDO Block Segment protocol. Each block contains 1 segment for the minimum and 127 segments for the maximum.
Page 77
: client command specifier 5: block upload : client subcommand 2: block upload response : It indicates whether there are still more segments to be uploaded. 0: more segments to be uploaded 1: no more segments to be uploaded , enter ‘End block upload’ phase seqno : sequence number of segment, 0 <...
Page 78
End SDO Block Upload Protocol The End SDO Block Upload protocol is used for finishing the SDO Block upload, and is shown in the following figure. CAN-8x23 user’s manual (Revision 3.20, Mar/08/2012) ------...
Page 79
: client command specifier 5: block upload : server command specifier 6: block upload : client subcommand 1: end block upload request : server subcommand 1: end block upload response : It indicates the number of bytes in the last segment of the last block that do not contain data.
Page 80
SDO Block Upload Example The following figure shows the general procedure of applying the SDO Block upload. CAN-8x23 user’s manual (Revision 3.20, Mar/08/2012) ------...
Page 81
By the following procedure, an example is provided to obtain a value of the index 0x1008 and sub-index 00 object entries. Step 1. The CAN-8423 is requested to transmit the data by using the SDO Block Upload method. 11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code...
Page 82
Step 3. The message is sent to finish the Initiate SDO Block Upload protocol, and will actuate the CAN-8423 to start the data transmission. 11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length SDO server SDO client (CAN-8x23) Step 4.
Page 83
Step 5. The CAN-8423 will transmit the rest of the data. 11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length SDO server SDO client (CAN-8x23) seqno seg-data 33 00 00 00 00 00 00 Because this segment is the last one, not all of the data in the seg-data filed is useful.
Page 84
Step 7. When the reception is confirmed, the CAN-8423 will send a message to enter the End SDO Block Upload protocol. 11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length SDO server SDO client (CAN-8x23) This value means the invalid data in the last segment are from [8-5] to 7, i.e.
5.1.3 Download SDO Protocol Initiate SDO Download Protocol The download modes are similar to the upload modes, but different in some parameters of the SDO messages. They are also separated into two steps. If the download data length is less than 4 bytes, the download action will finish in the download initialization protocol.
Page 86
: client command specified 1: initiate download request : server command specified 3: initiate download response : Only valid if e = 1 and s = 1, otherwise 0. If valid, it indicates the number of bytes in d that do not contain data. Bytes [8 -n, 7] do not contain segment data.
Page 87
Download Segment Protocol : client command specified 0: download segment request : server command specified 1: download segment response seg-data : It is at most 7 bytes of segment data to be downloaded. The encoding depends on the type of the data referenced by index and sub-index.
Page 88
SDO Download Example When the SDO download example has been applied, the procedure in the below figure may be applied. Since all of those object entries, which can be written, in the CAN-8123/CAN-8223/CAN-8423 are equal or less than 4 bytes, we can only provide the example for expedited transfer.
Page 89
Example for expedited transfer Step 1. The Rx SDO message is sent to the CAN-8423 to access the object entry with index 0x1400 and sub -index 02 stored in the communication profile area. For example, the value of this object entry is changed to 5, as the node ID for the CAN-8423 is set to 1.
5.1.4 SDO Block Download The procedure of SDO Block Download is similar to the SDO Block Upload. There are three steps during the SDO Block Download. The Initiate SDO Block Download protocol is the beginning protocol for SDO Block Download. In this protocol, the SDO server and SDO client will mutually communicate.
Page 91
: client command specified 6: block download : server command specified 5: block download : size indicator 0: Data set size is not indicated. 1: Data set size is indicated. : client subcommand 0: initiate download request : server subcommand 0: initiate download response : client CRC support cc=0: Client does not support generating CRC on data.
Page 92
Download SDO Block Segment Protocol : server command specified 5: block download : server subcommand 0: initiate download response : It indicates whether there are still more segments to be downloaded. 0: more segments to be downloaded 1: no more segments to be downloaded , enter ‘End block download’...
Page 93
End SDO Block Download Protocol : client command specified. 6: block download : server command specified. 5: block download : client subcommand 1: end block download request : server subcommand 1: end block download response : It indicates the number of bytes in the last segment of the last block that do not contain data.
Page 94
SDO Block Download Example In this example, the value of the object entry with index 0x1400 and sub-index 0x02 will be changed to 5 by using the SDO Block Download communication method. When the SDO Block Download is actuated, the procedure will be as follows.
Page 95
Step 1. When the Initiate SDO Block Download protocol is carried out, the CAN-8423 will be informed with the value of the object entry with index 0x1400 and sub-index 02 modified by the method of the SDO Block Download, 11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code...
Page 96
Step 3. The SDO client will transmit the data of the object entry index 0x1400 and sub-index 02 by using the Download SDO Block Segment protocol. The following description shows that the data length of the value is less than the maximum data length of one block, the SDO Block Segment Download protocol is just implemented once.
Page 97
Step 5. The SDO client will send the ending message to finish the SDO Block Download. 11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length SDO server SDO client (CAN-8x23) This value means the useless data in the last segment are from [8-6] to 7, i.e.
5.1.5 Abort SDO Transfer Protocol In some conditions, the SDO client or SDO server will terminate the SDO transmission. For example, the value of entries that users want to modify does not exist or is read-only, even users wouldn’t continue the uncompleted SDO protocol under some special situations.
Page 99
Abort Code Description 0503 0000h Toggle bit not alternated. 0504 0000h SDO protocol timed out. 0504 0001h Client/server command specified not valid or unknown. 0504 0002h Invalid block size (block mode only). 0504 0003h Invalid sequence number (block mode only). 0504 0004h CRC error (block mode only).
Page 100
Abort SDO Transfer Example The object index 0x1008 doesn’t support the sub-index 01 entry. Therefore, if users read the object entry with index 0x1008 and sub-index 01, the CAN-8x23 will reply the Abort SDO Transfer message. The example is figured as follows. Step 1.
5.2 PDO Communication Set 5.2.1 PDO COB-ID Parameters Before the real-time data are transmitted by the PDO, it is necessary to check the COB-ID parameter of this PDO in the PDO communication objects. This parameter setting controls the COB-ID of the PDO communication, which is in 32 bits, and each bit with its meaning is given in the table follow.
Page 102
Note: 1. Users can also define the PDO COB-ID by themselves. Actually, all COB-ID can be defined by users except the reserved COB-ID described in the table of the section 3.1. It is important to avoid the conflict with the defined COB-ID used in the same node. 2.
5.2.2 Transmission Type The transmission type is one of the several parameters defined in PDO communication objects with sub-index 02. Each PDO has its own transmission type. The transmission type can indicate the transmission or reception character for its corresponding PDO. The following table describes the relationship between the value of the transmission type and the PDO character.
5.2.3 PDO Communication Rule The PDO related objects are indicated from index 0x1400 to 0x1BFF. For the CAN-8x23, RxPDO communication objects are from index 0x1400 to index 0x140F, and RxPDO mapping objects are from index 0x1600 to index 0x160F. The ranges of the TxPDO communication objects and the mapping objects are from index 0x1800 to index 0x180F and from index 0x1A00 to index 0x1A0F respectively.
Page 105
PDO Consumers PDO Producer 11-bit COB-ID (bit) 8-byte Data (byte) 10~0 Indication request COB-ID PDO-msg indication indication Write PDO Protocol COB-ID : the default PDO COB-ID, or the PDO COB-ID can be defined by user : the data length about how many bytes the PDO message has PDO-msg : the real-time data or the data which can be mapped into the PDO mapping objects PDO Consumer...
Page 106
PDO Communication Example To take a look at a PDO communication demo, some I-8000 slot modules will be needed. They are I-8057, I-8053, I-8024 and I-87017. Connect each I/O channels for these modules as following figure. Please use the CAN-8423 rotary switch to set the node ID to 1, and CAN bus baud rate to 125Kbps.
Page 107
TxPDO Information Standardized Device Profile Area Information After concluding the above preparations, the several functions of PDO communication will be introduced as follows. The function of accessing digital I/O & analog I/O with asynchronous PDO. The function by using Event Timer to obtain the input value. ...
Page 108
Before describing the example, the step0 must be checked. And the default COB-ID for each communication object is assumed to be being used. Step0: The following message must be sent in order to change the NMT state of the CAN-8423 first, because only the PDO communication can run under the NMT Operational state.
Page 109
Access Digital I/O & Analog I/O Step 1. In order to change the DO value of the I-8057 to be 0x1234, users must send the PDO message by using the first RxPDO. 11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length...
Page 110
Step 2. Because of the change of the DI-channel status, the TxPDO is transmitted automatically when the transmission type is 255, based on the CANopen spec 401. Then, users will receive the 1st TxPDO message. 11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length...
Page 111
Step 3. In order to output 5V to the AO0 of the I-8024, users must send the PDO message by using the 2nd RxPDO. 11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length PDO consumer producer (CAN-8x23) COB-ID 0x301 PDO-msg...
Page 112
Step 4. Even the AI input value has been changed according the AO value, the RxPDO will not respond automatically in the CAN-8423. Therefore, users need to use the RTR message from the 2nd TxPDO to read back the AI value. 11-bit COB-ID (bit) Data 8-byte Data (byte)
Page 113
Event Timer Functionality Step 6. Users can use the SDO to change the event timer of the 2nd RxPDO to 1000, stored in index 0x1801 with sub-index 5. In addition, the value 1000 means 1 second according to the event timer is ms, 11-bit COB-ID (bit) Data 8-byte Data (byte)
Page 114
Step 8. After changing the value of the event timer, the AI value will be automatically transmitted per second. The example below shows that at the first time the 2n TxPDO message is received. 11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length...
Page 115
Step 10. It shows that at the third time for the 2nd TxPDO message is received. 11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length PDO producer consumer (CAN-8x23) COB-ID 0x281 PDO-msg 00 40 FF FF FD FF FF FF Step 11.
Page 116
Transmission Type 0 for the first RxPDO Step 12. Users can set the transmission type of the first RxPDO to 0. 11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length SDO server SDO client (CAN-8x23) 00 14 02 11-bit COB-ID (bit) 8-byte Data (byte) Data...
Page 117
11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length SYNC SYNC consumer producer (CAN-8x23) COB-ID 0x80 The message of the SYNC object is always fixed as the format described above. The COB-ID of the SYNC object can be changed arbitrarily.
Page 118
SDO server SDO client (CAN-8x23) 00 14 02 FF 00 00 00 11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length SDO server SDO client (CAN-8x23) 00 14 02 CAN-8x23 user’s manual (Revision 3.20, Mar/08/2012) ------...
Page 119
Transmission Type 0 for the first TxPDO Step 17. Users can set the transmission type of the first TxPDO to 0. 11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length SDO server SDO client (CAN-8x23) 00 18 02 00 00 00 00 11-bit COB-ID (bit) 8-byte Data (byte)
Page 120
the first RxPDO. 11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length PDO consumer producer (CAN-8x23) COB-ID 0x201 PDO-msg AB 90 00 00 00 00 00 00 Step 19. The first TxPDO will not be transmitted immediately even if the DI value is changed according to the character of the transmission type 0.
Page 121
Step 21. Users can send the SYNC message again. 11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length SYNC SYNC consumer producer (CAN-8x23) SYNC 0x80 COB-ID Step 22. Nothing happened because the DI values were not changed. This is the main difference between transmission type 0 and 1.
Page 122
Transmission Type 3 for the first TxPDO Step 23. Users can set the transmission type of the first TxPDO to 3. 11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length SDO server SDO client (CAN-8x23) 00 18 02 03 00 00 00 11-bit COB-ID (bit) 8-byte Data (byte)
Page 123
11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length PDO consumer producer (CAN-8x23) COB-ID 0x201 PDO-msg EF CD 00 00 00 00 00 00 Step 25. The SYNC message has to be transmited in 3 times according to the character of transmission type 3.
Page 124
Transmission Type 252 for the first TxPDO Step 27. Users can set the transmission type of the first TxPDO to 252. 11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length SDO server SDO client (CAN-8x23) 00 18 02 FC 00 00 00 11-bit COB-ID (bit) 8-byte Data (byte)
Page 125
Step 28. Users can change the DO value of the I-8057 to be 0x1234 by using the first RxPDO. 11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length PDO consumer producer (CAN-8x23) COB-ID 0x201 PDO-msg 34 12 00 00 00 00 00 00 Step 29.
Page 126
Step 30. The feedback DI values are out-of-date. (Users can see the LEDs status on the I-8053 to confirm the practical DI values). 11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length PDO producer consumer (CAN-8x23) COB-ID 0x181 PDO-msg 34 12 00 00 00 00 00 00...
Page 127
Step 33. The feedback DI values will be the real DI values. 11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length PDO producer consumer (CAN-8x23) COB-ID 0x181 PDO-msg 34 12 00 00 00 00 00 00 CAN-8x23 user’s manual (Revision 3.20, Mar/08/2012) ------...
Page 128
Transmission Type 253 for the first TxPDO Step 34. Users can set the transmission type of the first TxPDO to 253. 11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length SDO server SDO client (CAN-8x23) 00 18 02 FD 00 00 00 11-bit COB-ID (bit) 8-byte Data (byte)
Page 129
Step 36. According to the transmission type 253, only the first TxPDO can be transmitted when receiving the RTR message. So, users can send the RTR message to get DI values. Then, the CAN-8423 will reply with the I-8053 digital input status.
Page 130
Step 37. Set the transmission type of the 1st TxPDO to 255 to finish the test. 11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length SDO server SDO client (CAN-8x23) 00 18 02 FF 00 00 00 11-bit COB-ID (bit) 8-byte Data (byte) Data...
Page 131
Dynamic PDO Mapping for DI/AI/DO/AO Channels Step 38. Users can use the 5th TxPDO to create a new PDO communication with PDO COB-ID 0x182, which is useless for the CAN-8423. Before setting the COB-ID of a PDO, users have to check the bit 31 of the COB-ID first. Only the COB-ID with the value 0 on the bit 31 can be changed.
Page 132
11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length SDO server SDO client (CAN-8x23) 05 1A 01 08 01 00 60 The value “08 01 00 60” means the mapped object is stored in the index 0x6000 with sub-index 01. It is an 8-bit data unit. Users can check this object in the Standardize object mapping table described above.
Page 133
I-8053 and AI0 of the I-87017 into the index 0x1A05 with sub-index 02 and 03 respectively. 11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length SDO server SDO client (CAN-8x23) 05 1A 02 08 02 00 60 11-bit COB-ID (bit) 8-byte Data (byte) Data...
Page 134
11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length SDO server SDO client (CAN-8x23) 05 1A 03 10 01 01 64 The value “10 01 01 64” means that the mapped object is stored in the index 0x6401 with sub-index 01. It is a 16-bit data unit. User can check this object in the Standardize object mapping table described above.
Page 135
index 0x1A05 with sub-index 00 must be changed to 3. The value 3 means there are 3 objects mapped to the 5th TxPDO. They are the index 0x6000 with sub-index 01, index 0x6000 with sub-index 02, and index 0x6401 with sub-index 01.
Page 136
with PDO COB-ID 0x202, and create the RxPDO mapping object in the index 0x1605 because the COB-ID 0x202 is not available for the CAN-8423. This procedure is similar to the steps 37 to 40. 11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length...
Page 137
11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length SDO server SDO client (CAN-8x23) 05 16 01 08 01 00 62 The value “08 01 00 62” means the mapped object is stored in the index 0x6200 with sub-index 01. It is an 8-bit data unit. Users can check this object in the Standardize object mapping table described above.
Page 138
11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length SDO server SDO client (CAN-8x23) 05 16 02 08 02 00 62 11-bit COB-ID (bit) 8-byte Data (byte) Data Func Code Node ID Length SDO server SDO client (CAN-8x23) 05 16 02 CAN-8x23 user’s manual (Revision 3.20, Mar/08/2012) ------...
Page 139
11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length SDO server SDO client (CAN-8x23) 05 16 03 10 01 11 64 The value “10 01 11 64” means the mapped object is stored in the index 0x6411 with sub-index 01. It is a 16-bit data unit. Users can check this object in the Standardize object mapping table described above.
Page 140
11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length SDO server SDO client (CAN-8x23) 05 16 00 03 00 00 00 11-bit COB-ID (bit) 8-byte Data (byte) Data Func Code Node ID Length SDO server SDO client (CAN-8x23) 05 16 00 CAN-8x23 user’s manual (Revision 3.20, Mar/08/2012) ------...
Page 141
Step 43. Transform the DO0~DO15 of I-8057 and AO0 of I-8024 to be 0x90AB and 0V respectively. 11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length PDO producer consumer (CAN-8x23) COB-ID 0x202 PDO-msg AB 90 00 00 00 00 00 00 The first two bytes are assigned to the value 0x90AB of the DO0~DO15 of the I-8057.
Page 142
11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length PDO producer consumer (CAN-8x23) COB-ID 0x185 PDO-msg AB 90 FF 3F 00 00 00 00 The first two bytes are assigned to the value 0x90AB for the DI0~DI15 of the I-8053. The 3rd and 4th bytes are assigned to the value 0xFFFF for the AI0 of the I-87017.
5.3 EMCY Communication Set 5.3.1 EMCY COB-ID Parameter The EMCY COB-ID is similar to the PDO COB-ID. It can be a default value or can be the value defined by users via SDO communication methods. This COB-ID is stored in the object 0x1014, and the data format is shown in the following table.
5.3.2 EMCY Communication The EMCY message is triggered when some internal error occurs. After the transmission of one EMCY message, the object with index 0x1003 will record this EMCY event. Therefore, users can track the error’s occurrences. The CAN-8x23 supports the maximum of 5 records stored in the index 0x1003 object.
Page 145
Meaning generic error current voltage temperature communication error (overrun, error state) device profile specific reserved (always 0) manufacturer specific The emergency error codes and the error register are specified in the following table. Emergency Error Manufacturer Specific Error Description Error Code Register Field High...
Page 146
EMCY Communication Example Before starting the example, CAN-8423 with I-8057, I-8053, I-8024 and I-87017 slot module are needed. Here, the same hardware configuration shown in the PDO example is used for the EMCY communication. Step 1. In order to generate the emergency event, it’s necessary to send the data to RxPDO1 with data length 1.
Page 147
Step 3. After recognizing the 0x1003 object with sub-index 01, users will get emergency error codes of the emergency object data recording in this object. 11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length SDO server SDO client (CAN-8x23) 03 10 01 Step 4.
Page 148
Step 6. The communication and generic errors on the error register are indicated in the received message. 11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length SDO server SDO client (CAN-8x23) 01 10 00 11 00 00 00 Step 7.
Page 149
11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length NMT slaver NMT master (CAN-8x23) EMCY-msg 00 00 00 00 00 00 00 00 The data “00 00 00 00 00 00 00 00” are for the error reset EMCY message, i.e.
Page 150
Step 10. Users have to check the index 0x1003 with sub-index 02. Then, the received emergency error code had been recorded in the emergency object data. 11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length SDO server SDO client (CAN-8x23) 03 10 02...
Page 151
11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length SDO server SDO client (CAN-8x23) 01 10 00 00 00 00 00 CAN-8x23 user’s manual (Revision 3.20, Mar/08/2012) ------...
5.4 NMT Communication Set 5.4.1 Module Control Protocol The NMT communication set can be applied for changing the NMT slave status. The following figure shows how to change the different NMT statuses for the CAN-8x23. Start Remote Node Protocol : NMT command specified 1: start Node ID : the node ID of the NMT slave device...
Page 153
Enter Pre-Operational Protocol : NMT command specified 128: enter PRE-OPERATIONAL Node ID : the node ID of the NMT slave device Reset Node Protocol : NMT command specified 129: Reset_Node Node ID : the node ID of the NMT slave device Reset Communication Protocol CAN-8x23 user’s manual (Revision 3.20, Mar/08/2012) ------...
Page 154
: NMT command specified 130: Reset_Communication Node ID : the node ID of the NMT slave device Module Control Protocol Example If the CAN-8423 node ID is set to 5 as an example, the following steps would be… Step1. Turn off the CAN-8423. Step2.
5.4.2 Error Control Protocol Error Control Protocol is a kind of the solution to check whether the CANopen device is still alive or not. And its related objects include 0x100C and 0x100D. The 0x100C is the guard time, and the 0x100D is the life time factor. The node life time is the guard time multiplied by the life time factor.
Page 156
Error Control Protocol Example The default EMCY function code and the node ID 1 for the CAN-8423 are used as an example on the error control protocol. The steps will be as follows. Step 1. Turn off the CAN-8423. Then, turn it on. The CAN-8423 will be in the pre_operational state.
Page 157
Step 4. Users can set the life-time factor value to 4. This value will be stored in the index 0x100D with sub-index 00. Then, the ending message from CAN-8423 will be received. 11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length SDO server...
Page 158
Step 5. Users can send the node guarding protocol to start the mechanism of the node guard. The life time here is equal to 1000 ms (guard time * life time factor =250*4=1000), 11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length...
Page 159
11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length EMCY EMCY producer consumer (CAN-8x23) EMCY-msg 30 81 11 07 00 00 00 00 The first two bytes “30 81” are for the emergency error code. The 3rd byte “11” is for the error register. The last five bytes “07 00 00 00 00”...
5.5 Special Functions for CAN-8x23 Analog Modules Input/Output range Entry The CAN-8x23 Manufacturer in the Specific Profile Area defines some entries, which are useful for the analog input/output range. On the other hand, the object with index 0x2004~0x200B will map to the input/output range for the slot 0 to 8, and the entry is dynamic.
Page 161
about the input/output range of different analog I/O modules. In the following paragraph, a simple example will be given. Please note that the hardware and wire connection are the same as the situation used in the PDO example. Step1: Users can send the NMT message to set the NMT operational state on the CAN-8423.
Page 162
Step 3. The CAN-8423 will reply with the output range. For example, when the I-8024 is under the default situation, and the value is 0, the output range of the I-8024 AO channel 0 will be -10V~+10V. 11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code...
Page 163
Step 5. The CAN-8423 will reply with the input range. For example when the I-87017 is under the default situation, and the value is 0, the input range of the I-87017 AI channel 0 is -10V~+10V. 11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID...
Page 164
Step 6. In order to output 7V to the AO0 of the I-8024, users must send the PDO message by using the 2nd RxPDO. 11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length PDO consumer producer (CAN-8x23) COB-ID 0x301 PDO-msg...
Page 165
Step 8. The feedback value for AI is 6.992V. 11-bit COB-ID (bit) Data 8-byte Data (byte) Func Code Node ID Length PDO consumer consumer (CAN-8x23) COB-ID 0x281 PDO-msg 80 59 FD FF FD FF FD FF The feedback AI0 value is 0x5980. Users have to transfer this value to be a float one with the input range from -10V to +10V, and a hex one with the input range from 0x8000 (-32768) to 0x7FFF (32767).
Page 166
Step 9. Users can send the Rx SDO message to the CAN-8423 to access the object entry with index 0x1400 and sub-index 02 stored in the communication profile area. Here, users can also change the value of this object entry to 5. For example, the node ID for the CAN-8423 is set to 1.
Page 167
Step 11. Although the AI input value has been changed according the AO value, the RxPDO will not automatically reply in the CAN-8423. Therefore, users have to use the RTR message from the 2nd TxPDO to read back the AI value. 11-bit COB-ID (bit) Data 8-byte Data (byte)
1005h COB-ID of Sync message UNS IGNED 32 1008h manufacturer device name VISIB LE_S TRING CAN-8123/ CAN-8223/ CAN-8423/ CAN-8823/ 1009h manufacturer hardware version VISIB LE_S TRING 100A h manufacturer software version VISIB LE_S TRING 100Ch guard time UNS IGNED 16...
Page 169
1010h largest sub-index supported for UNS IGNED 8 “store parameters ” Save all parameter UNS IGNED 32 Save communication parameter UNS IGNED 32 Save application parameter UNS IGNED 32 1011h largest sub-index supported for UNS IGNED 8 “restore parameters” Restore all default parameters UNS IGNED 32 Restore communic ation default UNS IGNED 32...
Page 170
SYNC. Bit Number Value Meaning 31 (MSB) do not care Device does not generate SYNC message Device generates SYNC message 11-bit ID (CA N 2.0A) 29-bit ID (CA N 2.0B) 28-11 If bit 29=0 If bit 29=1: 28-11 bits of 29-bit COB -ID 10-0 (LSB ) 10-0 bits of COB-ID The CA N-8x23 doesn’t support the SYNC generation, therefore 29-bit ID, bit 30 and bit...
Page 171
SDO Communication Entries Sidx Description Ty pe Attr Default 1200h largest sub-index supported for UNS IGNED 8 “server SDO parameter” COB-ID form client to server UNS IGNED 32 600h+Node-ID (RxSDO) COB-ID form server to client UNS IGNED 32 580h+Node-ID (TxSDO) RxPDO Communication Entries Sidx Description...
Page 172
transmission type UNS IGNED 8 RxPDO Mapping Communication Entries Sidx Description Ty pe Attr Default 1600h largest sub-index supported for UNS IGNED 8 “receive P DO mapping” write digital output 1h to 8h UNS IGNED 8 6200 0108h write digital output 9h to 10h UNS IGNED 8 6200 0208h write digital output 11h to 18h...
Page 173
161Fh largest sub-index supported for UNS IGNED 8 “receive P DO mapping” TxPDO Communication Entries Sidx Description Ty pe Attr Default 1800h largest sub-index supported for UNS IGNED 8 “receive P DO parameter” COB-ID used by PDO (Tx) UNS IGNED 32 180h+Node-ID transmission type UNS IGNED 8...
Page 174
reversed event timer UNS IGNED 16 1804h largest sub-index supported for UNS IGNED 8 “receive P DO parameter” COB-ID used by PDO (Tx) UNS IGNED 32 80000000h transmission type UNS IGNED 8 inhibit time UNS IGNED 16 reversed event timer UNS IGNED 16 181Fh largest sub-index supported for...
read analog input 3h UNS IGNED 16 6401 0310h read analog input 4h UNS IGNED 16 6401 0410h 1A02h largest sub-index supported for UNS IGNED 8 “transmit PDO mapping” read analog input 5h UNS IGNED 16 6401 0510h read analog input 6h UNS IGNED 16 6401 0610h read analog input 7h...
Page 176
2004h largest sub-index supported for UNS IGNED 8 According to “Analog Modules Input/Out put AI/AO channel Range Cont rol” number in the slot 0 module Input/Output range of the AI/AO UNS IGNED 8 channel 0 2005h largest sub-index supported for UNS IGNED 8 According to “Analog Modules Input/Out put...
2: 0x8000 0x7FFF 6.3 Standardized Device Profile Area When the CAN-8x23 is powered on, all of device profile entries are automatically generated by the firmware built inside the CAN-8x23. These device entries will match the channel types and numbers of the slot modules inserted into the CAN-8x23.
Page 178
Note: When the bus-off is detected or t he node guarding fails, the CA N-8x23 will check the value of the object with index 0x6206. If the bit of this value is set to 1, the CA N-8x23 will output the error mode digital output value to the corresponding DO channel.
Page 179
Note: 1. Because the CAN-8x23 only supports the hex format, all AI channels have to transfer to the hex format when storing into this object. The trans formation equation is shown below. HexValue ...
Page 180
error value analog output 1h UNS IGNED 16 Note: 1. Because the CA N-8x23 does n’t support float format, users have to transfer the AO value from the float format to hex format. It is similar to the AI situation. The transformation equation is as follows.
6.4 Object of Counter/Frequency Modules (Only for I-8080 and I-8084W) S-idx Description Ty pe Attr PDO mapping Default 3000h largest sub-index supported for UNS IGNED 8 “read counter / frequency 32-bit ” Read counter / frequency with ch1 UNS IGNED 32 3001h largest sub-index supported for UNS IGNED 8...
Page 182
Owing to the configuration of object index 0x3000 to 0x3007, you may parameterize the counter modules. The object index 0x3000 records the counter value of each channel. Each sub-index is corresponding to each channel. Users can use object index 0x2004~2007 to decide the counting method. Please refer to the appendix A for more detail information.
6.5 Object of PWM Module (Only for I-8088W) S-idx Description Ty pe Attr PDO mapping Default 3100h largest sub-index supported for UNS IGNED 8 “start to output pulse” Start to output pulse with ch1 UNS IGNED 8 largest sub-index supported for “set 3101h UNS IGNED 8 burst count 16-bit ”...
Page 184
Owing to the configuration of object index 0x3100 to 0x3106, you may parameterize the PWM modules. The object index 0x3100 can control the module to start or stop the pulse output of each channel. Each sub-index is corresponding to each channel. Users can use object index 0x2004~2007 to decide the PWM method of each slot.
Appendix A: Type Code Table In order to look up the configuration parameters of each slot module more quickly, the transformation table has separated into several parts according to the name of slot module. They are given below. I-87K module I-8K module I-87013 I-8017HS/I-8017HW...
Page 186
I-87013/ I-87015 RTD Type Definition Back to table Range Code RTD Type Data Format Max Value Min Value (Hex) +100.00℃ -100.00℃ Input Range Platinum 100 2's complement (default) a = 0.00385 7FFF 8000 +100.00℃ +000.00℃ Input Range Platinum 100 2's complement a = 0.00385 7FFF 0000...
Page 187
+100.00℃ +000.00℃ Input Range Nickel 120 2's complement 7FFF 0000 +600.00℃ -200.00℃ Input Range Platinum 1000 2's complement a = 0.00385 7FFF D556 +150.00℃ -020.00℃ Input Range Cu 100 2's complement a = 0.00421 7FFF EEEF +200.00℃ -000.00℃ Input Range Cu 100 2's complement a = 0.00421...
Page 188
I-87017 Series Type 08 to 0D Definition ( not for I-87017RC ) Back to table Range Code Negative Input Range Data Format Full Scale (Hex) Full Scale Input Range +10.000 V -10.000 V -10V to +10V (default) 2's Complement HEX 7FFF 8000 Input Range...
Page 189
I-87017RC Type 07 to 1A Definition Back to table Range Code Negative Input Range Data Format Full Scale (Hex) Full Scale Input Range +04.000 mA +20.000 mA -4mA to +20mA 2's Complement HEX 7FFF 8000 Input Range +20.000 mA -20.000 mA -20mA to +20mA (default) 2's Complement HEX...
Page 190
I-87018 Series Type 00 to 06 Definition Back to table Range Code Negative Input Range Data Format Full Scale (Hex) Full Scale Input Range +15.000 mV -15.000 mV -15mV to +15mV 2's Complement HEX 7FFF 8000 Input Range +50.000 mV -50.000 mV -50mV to +50mV 2's Complement HEX...
Page 191
I-87019R Type 00 to 19 Definition Back to table Range Negative Input Range Data Format Full Scale Code (Hex) Full Scale Input Range +15.000 mV -15.000 mV -15mV to +15mV 2's Complement HEX 7FFF 8000 Input Range +50.000 mV -50.000 mV -50mV to +50mV 2's Complement HEX 7FFF...
Page 192
Input Range +500.00 mV -500.00 mV -500mV to +500mV 2's Complement HEX 7FFF 8000 Input Range +150.00 mV -150.00 mV -150mV to +150mV 2's Complement HEX 7FFF 8000 Input Range +20.000 mA -20.000 mA -20mA to +20mA with 125Ω resistor 2's Complement HEX 7FFF 8000...
Page 193
I-87018/ 87018R/ 87019R Thermocouple Type Definition Back to table Range Code Thermocouple Data Format Max Value Min Value (Hex) Type +760.00℃ -210.00℃ Input Range J Type 2's Complement HEX 7FFF DCA2 +1372.0℃ -0270.0℃ Input Range K Type 2's Complement HEX 7FFF E6D0 +400.00℃...
Page 194
I-87022 Analog Output Type Definition Back to table Range Code Output Range Data Format Max Value Min Value (Hex) Input Range 20.000 mA 00.000 mA 0 to 20mA Hexadecimal Input Range 20.000 mA 04.000 mA 4 to 20mA Hexadecimal Input Range 10.000 V 00.000 V 0 to 10V...
Page 195
I-87026 Analog Output Type Definition Back to table Range Code Output Range Data Format Max Value Min Value (Hex) Output Range 20.000 mA 00.000 mA 0 to 20mA Hexadecimal FFFF 0000 Output Range 20.000 mA 04.000 mA 4 to 20mA Hexadecimal FFFF 0000...
Page 196
I-8017HS/I-8017HW Analog Input Type Definition Back to table Range Code Output Range Data Format Max Value Min Value (Hex) Input Range +10.000 V -10.000 V -10 to 10V (default) Hexadecimal 1FFF 2000 Input Range +5.000 V -5.000 V -5 to 5V Hexadecimal 1FFF 2000...
Page 197
I-8088W PWM Output Type Definition Back to table Range Code Channel Counter Type Max Value Min Value (Hex) number 65535 Burst Counter FFFF Continue Counter (default) CAN-8x23 user’s manual (Revision 3.20, Mar/08/2012) ------...
Appendix B: DIO Type Define of I-8050 Modules I-8050 is a selectable 16-channel DIO module. User can decide which channel will be DI and which channel will be DO. In CAN-8x23, users can achieve this purpose by setting the type code in the object index 0x2004~0x2007. The object index 0x2004, 0x2005, 0x2006 and 0x2007 are for the module plugged in slot 0, slot 1, slot 2 and slot 3 respectively.
Need help?
Do you have a question about the CAN-8823 and is the answer not in the manual?
Questions and answers