Tables of Contents
Setup Information
The following list indicates important setup information for running in Modbus TCP. Ensure that the master is setup with the same configuration.
- Port 502 - Modbus-TCP uses port 502. This is fixed.
- Holding register addressing depends on the system used. Refer to your modbus master documentation to understand the address format.
- Additional information is below to list the most common address types
- Max holding registers for read and write is 16
- Use function code 0x10 for write single register. Function code 0x06 is not supported.
- All registers are 32-bit
- Exceptions are the registers used used directly in the CM1-T Library (IEC 61131-3).
- 32-bit word mapping is little endian
Holding Register List
Included below is a table which details the location and function of the CM1 Modbus registers.
The addresses included below are referenced to the Modbus data model (PLC address for read/write to holding registers)
Note: Even if Direct Control is not used the Direct Control feedback registers can be useful for reading back motor information.
Click on a link below to jump to the associated registers
Motor Information
Holding Register Address | Motor Parameter | Read Access | Write Access | |
---|---|---|---|---|
Base Address | Modicon Address | |||
0 | 40001 | Position Error (?95) | Yes | No |
2 | 40003 | Motor Position (?96) | Yes | No |
4 | 40005 | Motor Speed (?97) | Yes | No |
6 | 40007 | Motor Torque (?98) | Yes | No |
8 | 40009 | Motor Status (?99) | Yes | No |
Variables
Holding Register Address | Motor Parameter | Read Access | Write Access | |
---|---|---|---|---|
Base Address | Modicon Address | |||
10 | 40011 | V0 | Yes | Yes |
12 | 40013 | V1 | Yes | Yes |
14 | 40015 | V2 | Yes | Yes |
16 | 40017 | V3 | Yes | Yes |
18 | 40019 | V4 | Yes | Yes |
20 | 40021 | V5 | Yes | Yes |
22 | 40023 | V6 | Yes | Yes |
24 | 40025 | V7 | Yes | Yes |
26 | 40027 | V8 | Yes | Yes |
28 | 40029 | V9 | Yes | Yes |
30 | 40031 | V10 | Yes | Yes |
32 | 40033 | V11 | Yes | Yes |
34 | 40035 | V12 | Yes | Yes |
36 | 40037 | V13 | Yes | Yes |
38 | 40039 | V14 | Yes | Yes |
40 | 40041 | V15 | Yes | Yes |
Direct Registers
Holding Register Address | Motor Parameter | Read Access | Write Access | |
---|---|---|---|---|
Base Address | Modicon Address | |||
42 | 40043 | P0 | Yes | Yes |
44 | 40045 | S0 | Yes | Yes |
46 | 40047 | A0 | Yes | Yes |
48 | 40049 | V0 | Yes | Yes |
50 | 40051 | R0 | Yes | Yes |
52 | 40053 | M0 | Yes | Yes |
Inputs/Outputs
Holding Register Address | Motor Parameter | Read Access | Write Access | |
---|---|---|---|---|
Base Address | Modicon Address | |||
54 | 40055 | Analog Output | Yes | Yes |
56 | 40057 | Input Status (?70) | Yes | No |
58 | 40059 | Output Status (?50) | Yes | Yes |
Positions
Holding Register Address | Motor Parameter | Read Access | Write Access | |
---|---|---|---|---|
Base Address | Modicon Address | |||
200 | 40201 | P0 | Yes | Yes |
202 | 40203 | P1 | Yes | Yes |
204 | 40205 | P2 | Yes | Yes |
206 | 40207 | P3 | Yes | Yes |
208 | 40209 | P4 | Yes | Yes |
210 | 40211 | P5 | Yes | Yes |
212 | 40213 | P6 | Yes | Yes |
214 | 40215 | P7 | Yes | Yes |
216 | 40217 | P8 | Yes | Yes |
218 | 40219 | P9 | Yes | Yes |
220 | 40221 | P10 | Yes | Yes |
222 | 40223 | P11 | Yes | Yes |
224 | 40225 | P12 | Yes | Yes |
226 | 40227 | P13 | Yes | Yes |
228 | 40229 | P14 | Yes | Yes |
230 | 40231 | P15 | Yes | Yes |
232 | 40233 | P16 | Yes | Yes |
234 | 40235 | P17 | Yes | Yes |
236 | 40237 | P18 | Yes | Yes |
238 | 40239 | P19 | Yes | Yes |
240 | 40241 | P20 | Yes | Yes |
242 | 40243 | P21 | Yes | Yes |
244 | 40245 | P22 | Yes | Yes |
246 | 40247 | P23 | Yes | Yes |
248 | 40249 | P24 | Yes | Yes |
250 | 40251 | P25 | Yes | Yes |
R Registers
Holding Register Address | Motor Parameter | Read Access | Write Access | |
---|---|---|---|---|
Base Address | Modicon Address | |||
300 | 40301 | R0 | Yes | Yes |
302 | 40303 | R1 | Yes | Yes |
304 | 40305 | R2 | Yes | Yes |
306 | 40307 | R3 | Yes | Yes |
308 | 40309 | R4 | Yes | Yes |
310 | 40311 | R5 | Yes | Yes |
312 | 40313 | R6 | Yes | Yes |
314 | 40315 | R7 | Yes | Yes |
316 | 40317 | P8 | Yes | Yes |
318 | 40319 | P9 | Yes | Yes |
320 | 40321 | R10 | Yes | Yes |
322 | 40323 | R11 | Yes | Yes |
324 | 40325 | R12 | Yes | Yes |
326 | 40327 | R13 | Yes | Yes |
328 | 40329 | R14 | Yes | Yes |
330 | 40331 | R15 | Yes | Yes |
332 | 40333 | R16 | Yes | Yes |
334 | 40335 | R17 | Yes | Yes |
336 | 40337 | R18 | Yes | Yes |
338 | 40339 | R19 | Yes | Yes |
340 | 40341 | R20 | Yes | Yes |
342 | 40343 | R21 | Yes | Yes |
344 | 40345 | R22 | Yes | Yes |
346 | 40347 | R23 | Yes | Yes |
348 | 40349 | R24 | Yes | Yes |
350 | 40351 | R25 | Yes | Yes |
N Registers
Holding Register Address | Motor Parameter | Read Access | Write Access | |
---|---|---|---|---|
Base Address | Modicon Address | |||
400 | 40401 | N0 | Yes | Yes |
402 | 40403 | N1 | Yes | Yes |
404 | 40405 | N2 | Yes | Yes |
406 | 40407 | N3 | Yes | Yes |
408 | 40409 | N4 | Yes | Yes |
410 | 40411 | N5 | Yes | Yes |
412 | 40413 | N6 | Yes | Yes |
414 | 40415 | N7 | Yes | Yes |
416 | 40417 | N8 | Yes | Yes |
418 | 40419 | N9 | Yes | Yes |
420 | 40421 | N10 | Yes | Yes |
422 | 40423 | N11 | Yes | Yes |
424 | 40425 | N12 | Yes | Yes |
426 | 40427 | N13 | Yes | Yes |
428 | 40429 | N14 | Yes | Yes |
430 | 40431 | N15 | Yes | Yes |
432 | 40433 | N16 | Yes | Yes |
434 | 40435 | N17 | Yes | Yes |
436 | 40437 | N18 | Yes | Yes |
438 | 40439 | N19 | Yes | Yes |
440 | 40441 | N20 | Yes | Yes |
442 | 40443 | N21 | Yes | Yes |
444 | 40445 | N22 | Yes | Yes |
446 | 40447 | N23 | Yes | Yes |
448 | 40449 | N24 | Yes | Yes |
450 | 40451 | N25 | Yes | Yes |
Speeds
Holding Register Address | Motor Parameter | Read Access | Write Access | |
---|---|---|---|---|
Base Address | Modicon Address | |||
602 | 40603 | S0 | Yes | Yes |
604 | 40605 | S1 | Yes | Yes |
606 | 40607 | S2 | Yes | Yes |
608 | 40609 | S3 | Yes | Yes |
610 | 40611 | S4 | Yes | Yes |
612 | 40613 | S5 | Yes | Yes |
614 | 40615 | S6 | Yes | Yes |
616 | 40617 | S7 | Yes | Yes |
618 | 40619 | S8 | Yes | Yes |
620 | 40621 | S9 | Yes | Yes |
622 | 40623 | S10 | Yes | Yes |
624 | 40625 | S11 | Yes | Yes |
626 | 40627 | S12 | Yes | Yes |
628 | 40629 | S13 | Yes | Yes |
630 | 40631 | S14 | Yes | Yes |
632 | 40633 | S15 | Yes | Yes |
Accelerations
Holding Register Address | Motor Parameter | Read Access | Write Access | |
---|---|---|---|---|
Base Address | Modicon Address | |||
634 | 40635 | A0 | Yes | Yes |
636 | 40637 | A1 | Yes | Yes |
638 | 40639 | A2 | Yes | Yes |
640 | 40641 | A3 | Yes | Yes |
642 | 40643 | A4 | Yes | Yes |
644 | 40645 | A5 | Yes | Yes |
646 | 40647 | A6 | Yes | Yes |
648 | 40649 | A7 | Yes | Yes |
650 | 40651 | A8 | Yes | Yes |
Torques
Holding Register Address | Motor Parameter | Read Access | Write Access | |
---|---|---|---|---|
Base Address | Modicon Address | |||
652 | 40653 | M0 | Yes | Yes |
654 | 40655 | M1 | Yes | Yes |
656 | 40657 | M2 | Yes | Yes |
658 | 40659 | M3 | Yes | Yes |
660 | 40661 | M4 | Yes | Yes |
662 | 40663 | M5 | Yes | Yes |
664 | 40665 | M6 | Yes | Yes |
666 | 40667 | M7 | Yes | Yes |
668 | 40669 | M8 | Yes | Yes |
K Parameters
Holding Register Address | Motor Parameter | Read Access | Write Access | |
---|---|---|---|---|
Base Address | Modicon Address | |||
670 | 40671 | RESERVED | Yes | No |
672 | 40673 | K1 | Yes | No |
674 | 40675 | K2 | Yes | No |
676 | 40677 | K3 | Yes | No |
678 | 40679 | K4 | Yes | No |
680 | 40681 | K5 | Yes | No |
682 | 40683 | K6 | Yes | No |
684 | 40685 | K7 | Yes | No |
686 | 40687 | K8 | Yes | No |
688 | 40689 | K9 | Yes | No |
690 | 40691 | K10 | Yes | No |
692 | 40693 | K11 | Yes | No |
694 | 40695 | K12 | Yes | No |
696 | 40697 | K13 | Yes | No |
698 | 40699 | K14 | Yes | No |
700 | 40701 | K15 | Yes | No |
702 | 40703 | K16 | Yes | No |
704 | 40705 | K17 | Yes | No |
706 | 40707 | K18 | Yes | No |
708 | 40709 | K19 | Yes | No |
710 | 40711 | K20 | Yes | Yes |
712 | 40713 | K21 | Yes | Yes |
714 | 40715 | K22 | Yes | Yes |
716 | 40717 | K23 | Yes | Yes |
718 | 40719 | K24 | Yes | Yes |
720 | 40721 | K25 | Yes | Yes |
722 | 40723 | K26 | Yes | Yes |
724 | 40725 | K27 | Yes | Yes |
726 | 40727 | K28 | Yes | Yes |
728 | 40729 | K29 | Yes | Yes |
730 | 40731 | K30 | Yes | Yes |
732 | 40733 | K31 | Yes | Yes |
734 | 40735 | K32 | Yes | Yes |
736 | 40737 | K33 | Yes | Yes |
738 | 40739 | K34 | Yes | Yes |
740 | 40741 | K35 | Yes | Yes |
742 | 40743 | K36 | Yes | Yes |
744 | 40745 | K37 | Yes | Yes |
746 | 40747 | K38 | Yes | Yes |
748 | 40749 | K39 | Yes | Yes |
750 | 40751 | K40 | Yes | Yes |
752 | 40753 | K41 | Yes | Yes |
754 | 40755 | K42 | Yes | Yes |
756 | 40757 | K43 | Yes | Yes |
758 | 40759 | K44 | Yes | Yes |
760 | 40761 | K45 | Yes | Yes |
762 | 40763 | K46 | Yes | Yes |
764 | 40765 | K47 | Yes | Yes |
766 | 40767 | K48 | Yes | Yes |
768 | 40769 | K49 | Yes | Yes |
770 | 40771 | K50 | Yes | Yes |
772 | 40773 | K51 | Yes | Yes |
774 | 40775 | K52 | Yes | Yes |
776 | 40777 | K53 | Yes | Yes |
778 | 40779 | K54 | Yes | Yes |
780 | 40781 | K55 | Yes | Yes |
782 | 40783 | K56 | Yes | Yes |
784 | 40785 | K57 | Yes | Yes |
786 | 40787 | K58 | Yes | Yes |
788 | 40789 | K59 | Yes | Yes |
790 | 40791 | K60 | Yes | Yes |
792 | 40793 | K61 | Yes | Yes |
794 | 40795 | K62 | Yes | Yes |
796 | 40797 | K63 | Yes | Yes |
798 | 40799 | K64 | Yes | Yes |
800 | 40801 | K65 | Yes | Yes |
802 | 40803 | K66 | Yes | Yes |
804 | 40805 | K67 | Yes | Yes |
806 | 40807 | K68 | Yes | Yes |
808 | 40809 | K69 | Yes | Yes |
810 | 40811 | K70 | Yes | Yes |
812 | 40813 | K71 | Yes | Yes |
814 | 40815 | K72 | Yes | Yes |
816 | 40817 | K73 | Yes | Yes |
818 | 40819 | K74 | Yes | Yes |
820 | 40821 | K75 | Yes | Yes |
822 | 40823 | K76 | Yes | Yes |
824 | 40825 | K77 | Yes | Yes |
826 | 40827 | K78 | Yes | Yes |
828 | 40829 | K79 | Yes | Yes |
830 | 40831 | K80 | Yes | Yes |
832 | 40833 | K81 | Yes | Yes |
834 | 40835 | K82 | Yes | Yes |
836 | 40837 | K83 | Yes | Yes |
838 | 40839 | K84 | Yes | Yes |
840 | 40841 | K85 | Yes | Yes |
842 | 40843 | K86 | Yes | Yes |
844 | 40845 | K87 | Yes | Yes |
846 | 40847 | K88 | Yes | Yes |
848 | 40849 | K89 | Yes | Yes |
874 | 40875 | RESERVED | No | Yes |
H Gain Parameters
Holding Register Address | Motor Parameter | Read Access | Write Access | |
---|---|---|---|---|
Base Address | Modicon Address | |||
900 | 40901 | H0 | Yes | Yes |
902 | 40903 | H1 | Yes | Yes |
904 | 40905 | H2 | Yes | Yes |
906 | 40907 | H3 | Yes | Yes |
908 | 40909 | H4 | Yes | Yes |
910 | 40911 | H5 | Yes | Yes |
912 | 40913 | H6 | Yes | Yes |
914 | 40915 | H7 | Yes | Yes |
Timers
Holding Register Address | Motor Parameter | Read Access | Write Access | |
---|---|---|---|---|
Base Address | Modicon Address | |||
950 | 40951 | T0 | Yes | No |
952 | 40953 | T1 | Yes | Yes |
954 | 40955 | T2 | Yes | Yes |
956 | 40957 | T3 | Yes | Yes |
958 | 40959 | T4 | Yes | Yes |
960 | 40961 | T5 | Yes | Yes |
962 | 40963 | T6 | Yes | Yes |
964 | 40965 | T7 | Yes | Yes |
966 | 40967 | T8 | Yes | Yes |
Direct Control Registers
Holding Register Address | Motor Parameter | Read Access | Write Access | |
---|---|---|---|---|
Base Address | Modicon Address | |||
1000 | 41001 | CPUTime | Yes | No |
1002 | 41003 | ActualPosition | Yes | No |
1004 | 41005 | ActualTargetPosition | Yes | No |
1006 | 41007 | MotorStatus | Yes | No |
1008 | 41009 | ActualRatedCurrent | Yes | No |
1010 | 41011 | ActualOverloadTorque | Yes | No |
1012 | 41013 | AnalogIn | Yes | No |
1014 | 41015 | DigitalIn | Yes | No |
1016 | 41017 | Temperature | Yes | No |
1018 | 41019 | DCVoltage | Yes | No |
1020 | 41021 | N/A | Yes | No |
1022 | 41023 | ModeOfOperationDisplay | Yes | No |
1024 | 41025 | N/A | Yes | No |
1026 | 41027 | ActualSpeed | Yes | No |
1028 | 41029 | TargetPosition | Yes | Yes |
1030 | 41031 | TargetSpeed | Yes | Yes |
1032 | 41033 | TargetTorque | Yes | Yes |
1034 | 41035 | TargetAcceleration | Yes | Yes |
1036 | 41037 | TargetDeceleration | Yes | Yes |
1038 | 41039 | Controlword | Yes | Yes |
1040 | 41041 | ModeOfOperation | Yes | Yes |
1042 | 41043 | DigitalOut | Yes | Yes |
CM1-T Library Mapped Registers
The set of registers below are typically used when mapping the Modbus read and write messages directly to a data structure.
- This is often achieved using function code 0x23 (read/write in single message)
- The data structure should break the DINT register into the respective variables.
- The CM1-T Library has been developed to be used with IEC 61131-3 IDEs such as Codesys, Machine Expert and TwinCAT. See Examples and Demos.
Holding Register Address | Motor Parameter | Read Access | Write Access | |
---|---|---|---|---|
Base Address | Modicon Address | |||
Read Registers | ||||
1100 | 41101 | us50Counter (DINT) | Yes | No |
1102 | 41103 | ActualPosition (DINT) | Yes | No |
1104 | 41105 | MotionTarget (DINT) | Yes | No |
1106 | 41107 | ActualVelocity (DINT) | Yes | No |
1108 | 41109 | MotorStatus (INT) PercentActualCurrent (INT) | Yes | No |
1110 | 41111 | PercentOverloadTorque (INT) AnalogIN (INT) | Yes | No |
1112 | 41113 | DCVoltage (INT) DigitalIO (SINT) Temperature (SINT) | Yes | No |
1114 | 41115 | ModeOfOperationDisplay (SINT) ErrorCode (SINT) ReadAddress1 (INT) | Yes | No |
1116 | 41117 | ReadValue1 (DINT) | Yes | No |
Write Registers | ||||
1200 | 41201 | TargetPosition (DINT) | Yes | Yes |
1202 | 41203 | TargetVelocity (DINT) | Yes | Yes |
1204 | 41205 | TargetTorque (INT) TargetAcceleration (INT) | Yes | Yes |
1206 | 41207 | TargetDeceleration (INT) ControlWord (INT) | Yes | Yes |
1208 | 41209 | ModeOfOperation (SINT) DigitalOUT (SINT) WriteAddress1 (INT) | Yes | Yes |
1210 | 41211 | WriteValue1 (DINT) | Yes | Yes |
1212 | 41213 | ReadAddress1 (INT) PAD (INT) | Yes | Yes |