RMC70/150 Motion Controllers And RMCTools Software User Manual Version 3.59.
RMC70/150 and RMCTools User Manual Copyright © 2004- 2014, Delta Computer Systems, Inc. All Rights Reserved. deltamotion.com ii Delta Computer Systems, Inc.
Condensed Contents 1. Introducing the RMC Family ........................................................... 1 Overview of the RMC family capabilities and applications. 2. Starting Up the RMC ....................................................................... 7 A Step-by-step guide to quickly get up and running. 3. Controller Features ...................................................................... 49 Control Types and more… 4. Using RMCTools ....................................................
Table of Contents Introducing the RMC Family ......................................................................... 1 RMC Family Motion Controllers ................................................................................1 Basics of Operation ..................................................................................................2 Disclaimer ................................................................................................................4 Starting Up the RMC .............
RMC70/150 and RMCTools User Manual Input Type: Pressure ........................................................................................................................................... 72 Input Type: Single-Input Force ........................................................................................................................... 72 Input Type: Dual-Input (Differential) Force .......................................................................................................
Table of Contents Triggering Plots ....................................................................................................................................162 Using Plots with a Host Controller .......................................................................................................164 Reading RMC Plots with a Host Controller .........................................................................................164 Mean Squared Error .............................................
RMC70/150 and RMCTools User Manual System Identification............................................................................................................................224 Tuning Tools ........................................................................................................................................225 Programming .......................................................................................................228 Programming Folder Overview .........................
Table of Contents RMCTools Security Policy and Agreement ............................................................300 User Programs .....................................................................................................301 User Programs Overview .....................................................................................................................301 Creating User Programs .......................................................................................................
RMC70/150 and RMCTools User Manual EXP Function .................................................................................................................................................... 349 FILL Function ................................................................................................................................................... 350 FLOOR Function .................................................................................................................................
Table of Contents Communicating Directly over TCP ......................................................................................................410 Communicating Directly over UDP .....................................................................................................415 Ethernet Link/Act LED ........................................................................................................................419 Troubleshooting RMCTools Ethernet Connection ...........................
RMC70/150 and RMCTools User Manual DF1 Protocol (Full- and Half-Duplex) .............................................................................................................. 542 Mitsubishi Bidirectional Protocol ..................................................................................................................... 543 Modbus/RTU Protocol ......................................................................................................................................
Table of Contents Resolver (R) Module (RMC150) ...................................................................................................................... 663 Resolver (RW) Module (RMC150)................................................................................................................... 665 DI/O Module ........................................................................................................................................667 DI/O Module (RMC150)..................
RMC70/150 and RMCTools User Manual Gearing .................................................................................................................................................725 Command: Gear Absolute (25) ......................................................................................................................... 725 Command: Gear Position (Clutch by Time) (30) ..............................................................................................
Table of Contents Command: Write Register (112) ..........................................................................................................824 System .................................................................................................................825 Command: Arm Home (50) .................................................................................................................825 Command: Disarm Home (51) .............................................................
RMC70/150 and RMCTools User Manual Double Differential Output Term .................................................................................................................. 871 Differential Output Term .............................................................................................................................. 872 Triple Differential Output Term ....................................................................................................................
Table of Contents Natural Frequency (Simulator)...................................................................................................................... 945 Damping Factor (Simulator) ......................................................................................................................... 946 Positive Physical Limit (Simulator) .............................................................................................................. 947 Negative Physical Limit (Simulator) .
RMC70/150 and RMCTools User Manual Positive Pressure/Force Limit ....................................................................................................................... 996 Negative Pressure/Force Limit ...................................................................................................................... 996 Requested Jerk .............................................................................................................................................. 997 Halts .
Table of Contents RMC150 Analog Input Wiring ...........................................................................................................1153 RMC150 Resolver Wiring..................................................................................................................1157 RMC150 Discrete I/O Wiring ............................................................................................................1158 RMC150 UI/O Wiring.......................................................
1. Introducing the RMC Family RMCTools and RMC Controllers Help The RMCTools software is for setting up, tuning, programming and troubleshooting the RMC70 and RMC150 motion controllers. RMCTools does not support the RMC100, which requires Delta's RMCWin software. The RMCTools help provides the most complete and up-to-date information available for the RMC70, RMC150 and RMCTools. To ensure you have the latest help file, download the latest version of RMCTools from Delta's website www.deltamotion.com.
RMC70/150 and RMCTools User Manual For details on the hardware, see the RMC70 and RMC150 topics. Required Software The software is used for setup, tuning, programming, and diagnostics of the RMC. RMCTools RMCWin RMC100 RMC150 RMC70 RMCTools and RMCWin are available for download from Delta's website at www.deltamotion.com. 1.2. Basics of Operation The RMC is a high-performance motion controller.
1 Introducing the RMC Family Target Profile When the RMC is commanded to make a move in closed loop control, it generates a target profile, which specifies where the position (or velocity, pressure, or force) should be at any given point in time. This profile includes the Target Position, Target Velocity, and Target Acceleration. For example, if a Move Absolute command is issued to the RMC, it will generate a profile according to the parameters of the command.
RMC70/150 and RMCTools User Manual 6. If an error occurred, or if you wish to see if the command went through, open the Event Log by double-clicking Event Log in the Project pane. It shows everything that happened in the RMC. Commands can also be issued to the RMC from a host controller, such as a PLC or HMI. You can also create user programs in the RMC that issue commands. See the Issuing Commands topic for more details.
1 Introducing the RMC Family These general terms and conditions of sale of Delta Computer Systems, Inc (Delta), along with any written Delta quotation, exclusively will govern the sale or licensing by Delta of all goods and services (including hardware, firmware, and software products, training, support, parts and repair services) furnished hereunder. No additions or modifications will be binding on Delta unless agreed to in writing by an authorized representative of Delta.
2. Starting Up the RMC 2.1. RMC Startup Procedure The best resource to start using the RMC is the Startup Guide that was shipped with the controller. The Startup Guide can also be downloaded from Delta's website at www.deltamotion.com. If you do not have a Startup Guide, the following step-by-step procedure will help you get your system up and running. TIP: Deltas position/pressure simulators provide a simple way to test your program before connecting the controller to a real system. 1.
RMC70/150 and RMCTools User Manual g. Click Next. h. You may need to wait while RMCTools connects to the controller. Once it has connected, verify that the information is correct and click Finish. 3.
2 Starting Up the RMC i. On the RMCTools toolbar, click the Axis Tools button ii. In the Axis Parameters pane, on the Setup tab, under the Primary Control Setup, in the Feedback Type register, select SSI. iii. From the information in your SSI transducer data sheet, enter the correct value for each of these registers: • • iv. • • . SSI Format - Binary or Gray SSI Data bits - (e.g. 24) To apply the changes to the RMC, click the Download button press Ctrl+D. or Voltage or Current transducer i.
RMC70/150 and RMCTools User Manual j. On the Controller menu, click Update Flash. This stores your changes in the RMC even in the event of a power outage. k. Press Ctrl+S to save the project. 6. Connect an Actuator Note: Read this section completely before executing any commands on the RMC. a. Important: Turn off power to the RMC and the actuator before connecting any wires! b. For each axis you wish to connect an actuator to, wire it to the RMC according to the Wiring topic. c.
2 Starting Up the RMC i. In the Axis Parameters pane, select the Setup tab and expand the Primary Control Setup section. ii.Double-click the Invert Output Polarity register in the axis you are using. The Invert Output Polarity box should now have a checkmark in it. iii.Click the Download button or press Ctrl+D to apply the changes to the controller. iv. Repeat the process again: Issue the Direct Output command again, observe the Actual Position, and see which of the three things happened. m.
RMC70/150 and RMCTools User Manual If you wish to use units not listed, choose Custom, then type up to 4 characters in the Custom Units parameter. c. For dual-loop axes, repeat this in the Secondary Control Setup section. d. Click the Download button to apply the changes. 8. Tune Each Axis In order to control an axis in closed-loop control, it must first be tuned. Refer to the online help for the tuning procedure: a. In RMCTools, on the Tools menu, click Tuning Tools.
2 Starting Up the RMC To access the Scale/Offset wizard, in Axis Tools, in the Axis Parameters pane, click the Setup tab. Expand the Tools and Wizards section. Click Launch to open the Scale/Offset Wizard. Note: Before using the Scale/Offset Wizard, you must define the axes and set the transducer type parameters. Manual Calculation The methods of calculating the scale and offset parameters depends on the axis type.
RMC70/150 and RMCTools User Manual The RMC calculates the Actual Position every control-loop time using either of the following formulas: Actual Position = (Voltage x Position Scale) + Position Offset Actual Position = (Current x Position Scale) + Position Offset Calculating the Position Scale and Offset The Scale/Offset Wizards provide the easiest method of scaling your axis.
2 Starting Up the RMC 2.2.4. Analog Acceleration Scaling To have any useful meaning, the Voltage or Current from an analog transducer on an acceleration input must be scaled to acceleration units. This topic describes how to manually calculate the Scaling and Offset parameters for an analog acceleration transducer. Notice that Acceleration inputs are only used in advanced applications.
RMC70/150 and RMCTools User Manual Method 2: P0/P1 Calculation The accuracy of this method depends on how accurately you can measure the pressure of the axis. 1. Physically measure two different pressures of the axis and record the value of the Voltage register at each point. (The difference between the two pressure should be as large as possible). Call the smaller measured pressure P0, and its corresponding Voltage V0. Call the greater measured pressure P1, and its corresponding Voltage V1. 2.
2 Starting Up the RMC To have any useful meaning, the counts from the transducer must be scaled to position units. The Position Scale and Position Offset parameters define the position units as a function of transducer counts. This topic describes how to correctly calculate these parameters for an MDT transducer. Delta Recommends using the Scale/Offset Wizard for scaling the position. If you need to do it manually, read this topic.
RMC70/150 and RMCTools User Manual • The 240MHz and 120 MHz values comes from the RMC's internal counter. If you change the units from the above equation, make sure the units for the equation work out properly. The units for MHz is [106/sec]. 3. If you wish to reverse the direction of the feedback, make the Scale negative. 4. Download the Scale to the RMC. 5. Calculate the Position Offset: • Make sure the Position Offset is zero (0) and downloaded to the controller before continuing.
2 Starting Up the RMC • To calculate the Offset: Move the axis to where it should be 0 mm. The Actual Position shows 24.8. The Position Offset should be: 0 - 24.8 = -24.8. • Download the Offset to the RMC. 2.2.7. SSI Scaling To have any useful meaning, the counts from the transducer must be scaled to position units. The Position Scale and Position Offset parameters define the position units as a function of transducer counts.
RMC70/150 and RMCTools User Manual 3. The Position Scale is equal to the number of position units per count, for example, using inches and a resolution of 0.005 mm: 4. If you wish to reverse the direction of the feedback, make the Scale negative. 5. Download the Scale to the RMC. 6. Calculate the Position Offset: • • Look at the Actual Position register and the Counts register.
2 Starting Up the RMC For the range of counts described above, the positions must be kept within a corresponding range. The Position Unwind and Position Offset parameters define this range. The Position Unwind defines how many position units the range will span. The Position Offset adjusts the modulo position range up or down. For absolute rotary axes, the Counts are in the opposite direction if the Position Unwind is negative.
RMC70/150 and RMCTools User Manual Note: If the Actual Position filter is applied, the RMC filters the Actual Position after calculating it with the above formula. Manually Calculating the Scale and Offset The Scale/Offset Wizards provide the easiest method of scaling your axis. If you prefer to do it manually, read this section. Determining the Scale and Offset There are two methods of finding the correct Position Scale and Position Offset.
2 Starting Up the RMC If you are using a feedback device that gives only velocity feedback, such as a tachometer, see the Analog Velocity Scaling topic instead. To scale a position system to show the velocity in fpm or rpm, you need to set the Position Scale parameter. The Position Offset need not be set if you are only concerned with velocity and not positions. Position Scale Parameter for a Linear Axis 1. Determine how many Counts the feedback device gives in one foot or one revolution. 2.
RMC70/150 and RMCTools User Manual On a poorly tuned system, the Actual Position will not follow the Target Position very well. To see a plot, click here. This is a plot of a system that is poorly tuned: Tuning Wizard and Autotuning 24 Delta Computer Systems, Inc.
2 Starting Up the RMC The Tuning Wizard makes the tuning process very easy. The Tuning Wizard provides autotuning and tuning based on existing plot. Autotuning Autotuning automatically moves the axis and then provides a range of gains from which you can choose with a simple slider bar. The RMC autotuning can be used on many systems. Even if autotuning is used, the user should posses a solid understanding of manual tuning to ensure proper tuning.
RMC70/150 and RMCTools User Manual absolute command should be on the order of 20 -100 pu/sec2. The speed is typically between 1 and 30 pu/sec. 2. View the Plot When you issue a command in the Tuning Tools, the plot is automatically uploaded from the RMC. The plot will help you determine which parameters must be changed. In the Tuning Tools, you can easily disable the automatic plot upload for one of the command buttons.
2 Starting Up the RMC 1. Using plots of motion, the Tuning Wizard computes a mathematical model of the system. The Tuning Wizard provides two methods of obtaining plots: o Autotuning Wizard - Position Axes Only The Autotuning Wizard automatically moves the axis as specified by the user. With the plots generated by the motion, the Autotuning Wizard determines the system model.
RMC70/150 and RMCTools User Manual f. Upload the plot. Make sure the Actual Pressure or Force changed significantly in the plot. If it did not, repeat the process. For more details on generating plots suitable for the Tuning Wizard, see the Creating Plots for the Tuning Wizard topic. 2. In the Plot Manager, on the Tuning tab, choose the Pressure or Force tab and click Tuning Wizard. 3. Choose your plot from the list and click Next. 4. A dialog will appear with the calculated model.
2 Starting Up the RMC 2.3.4. Creating Plots for Tuning To successfully calculate valid gains using the Tuning Wizard - Use Existing Plot method, you must first generate good plots of motion. The plots should show some motion with changes. Make sure the plot does not include hitting the end, getting stuck, etc. Make sure the Output Polarity was correct when the plot was captured, that is, that a positive Control Output results in movement in the direction of increasing position units.
RMC70/150 and RMCTools User Manual 3. Move the axis to test the gains. You can leave the Gain Calculator open while you make moves. Use the command buttons in the Tuning Tools to do this: 1. On the Tuning tab, click one of the command buttons labeled Click to set up. 2. Enter the position, velocity, acceleration, and deceleration for the Move Absolute command. For systems scaled in inches, typical Accel and Decel values are 10 to 100. 3.
2 Starting Up the RMC If the axis exhibits a deadband, you may need to use the Deadband parameters. Check Whether the System Exhibits a Deadband: a. Give increasing amounts of Output to the axis with the Direct Output (9) command until the system starts to move. b. The value of Output at which the system starts to move is your deadband. If this value is approximately 0.4 V or greater, or if the axis begins to move quickly at the deadband value, you should probably use the deadband parameters.
RMC70/150 and RMCTools User Manual Example: c. Repeat the previous step for the other command button. Enter the same velocity, acceleration, and deceleration, but a different position. 6. Set Symmetrical/Ratioed If your system behaves differently in each direction of motion, you will need to set the Symmetrical/Ratioed parameter is set to Ratioed. This will provide two Velocity Feed Forwards, one in each direction of motion.
2 Starting Up the RMC o During the constant speed portion of the move, the Actual Position parallels the Target Position. If the system begins to oscillate, decrease the gain. In this step, do not expect the Actual Position to track the Target Position very well during the move. • Once you gain control over the system, increase the speeds and accelerations of your commands to values that will be used during normal machine operation.
RMC70/150 and RMCTools User Manual Correct Proportional Gain The Actual Position parallels the Target Position during the constant velocity portion of the move and does not overshoot. 7. Adjust the Velocity Feed Forward 34 Delta Computer Systems, Inc.
2 Starting Up the RMC In many systems the Velocity Feed Forward parameter is the most important parameter for position tracking during a move. To adjust the Velocity Feed Forward: • Start with a small value of Velocity Feed Forward. Remember that it is a floating point number, and you may have to start with a number smaller than 1, depending on your system. Tip: Use the Adjust VFF button in the Tuning Tools to automatically determine the Velocity Feed Forward.
RMC70/150 and RMCTools User Manual Correct Velocity Feed Forward The Actual Position tracks the Target Position perfectly during the latter half of the move. 8. Adjust the Acceleration Feed Forward 36 Delta Computer Systems, Inc.
2 Starting Up the RMC The Acceleration Feed Forward parameter is particularly useful for systems moving large masses with relatively small cylinders. Such systems often have a delay before the start of movement. The Acceleration Feed Forward terms can help compensate for this delay. • Start with a small value of Acceleration Feed Forward. Remember that it is a floating point number, and you will very likely have to start with a number much smaller than 1, such as 0.001, depending on your system.
RMC70/150 and RMCTools User Manual Correct Acceleration Feed Forward The Actual Position tracks the Target Position well during the acceleration and deceleration. 9. Readjust the Proportional Gain 38 Delta Computer Systems, Inc.
2 Starting Up the RMC Proportional Gain affects the responsiveness of the system. Low gains make the system sluggish and unresponsive. Gains that are too high make the axis oscillate or vibrate. • Slowly increase the gain. When you see a tendency to oscillate as the axis moves or stops, reduce the gain by 10 to 30 percent. Tip: For a 2.5 in bore hydraulic cylinder with a max velocity of 30 in/sec, the Proportional Gain is typically on the order of 20 to 300. Start with a small value.
RMC70/150 and RMCTools User Manual • Increase the Differential Gain. It may help the system track better. If it starts oscillating or chattering, decrease the gain. • If the drive output during the constant velocity portion of the move is smooth, the Differential Gain is perhaps not set high enough. • When the Differential Gain is properly adjusted, the drive output may look "fuzzy." This indicates that the drive is responding to the minute errors of the axis.
2 Starting Up the RMC • If the system vibrates while in position, the gains may be too high, or the Dead Band value may need to be increased. However, if the oscillation is not caused by a deadband in the system, adjusting the Dead Band value will not help! A rule of thumb is to set the Dead Band Eliminator value to half of the peak-to-peak oscillation of the drive output while in position. • The final tuning of the system should be made at the speed of intended operation. 14.
RMC70/150 and RMCTools User Manual c. Repeat the previous step for the other command button, and enter a different value for the Pressure/Force. Tuning Steps: 1. Enter Pressure/Force Control Set the Pressure/Force Proportional Gain to a small value, such as 0.01. In the Tuning Tools, on the Pressure/Force tab, click the Hold Prs/Frc button to enter pressure/force control. Then click one of the buttons you set up to ramp the Command Pressure to the desired value.
2 Starting Up the RMC 3. Change the gain. Tip: You can use the Tuning Wizard to calculate a model and use the Gain Calculator to choose gains. After uploading a plot of pressure or force control, where the axis is controlling a changing pressure or force, click the Tuning Wizard. If you use the Tuning Wizard, you do not need to continue manually changing the gains. 5. Adjust the Feed Forwards Pressure/Force Rate Feed Forward Ramp the pressure/force, and adjust the Pressure/Force Rate Feed Forward.
RMC70/150 and RMCTools User Manual The following procedure may be used to tune a system that uses pressure/force control or pressure/force limit. This procedure uses pressure/force control, but once an axis is tuned for pressure/force control, those gains can be used for pressure/force limit with few or no changes. Please read the following topics before performing the tuning procedure: • • Tuning Overview Tuning a Position Axis There is no substitute for experience when tuning an axis.
2 Starting Up the RMC Do not give a lot of Integral Gain, just enough to make sure it eventually gets to the Target Pressure/Force. 5. Ramp the Pressure/Force Up and Down For the remainder of the tuning, repeat the following steps: 1. Ramp the pressure/force. This can be done with the Ramp Pressure/Force (Linear) (42) or Ramp Pressure/Force (S-Curve) (41) command. 2. Change a gain. 3. View the plot. Tip: You can use the Tuning Wizard to calculate a model and use the Gain Calculator to choose gains.
RMC70/150 and RMCTools User Manual Issue the commands for transitioning between position and pressure/force as you intend to do during normal machine operation. For some applications, this may involve creating a simple user program. View the transition on a plot. If the pressure/force drops off at the transition, increase the Integrator Preload parameter in the Enter Pressure/Force command. 10.
2 Starting Up the RMC a. Set all the gains to zero. b. Set the Differential Gain to a small value, then issue the Hold Current Position (5) command to put the axis in closed loop control. c. Rotate the motor manually to get a feel for the resistance to movement (damping). Increase the Differential Gain until the damping is significant. If the motor chatters or oscillates, decrease the gain. d. Continue tuning the gains in the order given in the Tuning a Position Axis topic. 2.3.10.
RMC70/150 and RMCTools User Manual • Use the Output Filter, setting it to a low value, comparable to the natural frequency of the system. • • Deadband may be required on systems with high static friction. The Velocity and Acceleration may need to be filtered, or using the model may help. 2.3.11. Tuning Active Damping and Acceleration Control When tuning Active Damping or Acceleration Control, use the basic instructions in the Tuning a Position Axis topic, but use the order of the gains below.
3. Controller Features 3.1. RMC Controller Features The RMC70 and RMC150 motion controllers provide a host of features to successfully control any motion application. Browse the sections below for descriptions and links to the many features.
RMC70/150 and RMCTools User Manual Position-Acceleration Registration Velocity-Acceleration Control Output Servo Output (Voltage) High-Order Active Damping Acceleration Control 3.2. General 3.2.1. Firmware Firmware is the software that resides in the controller. Each RMC is shipped with the latest version of firmware. Delta regularly releases new versions of firmware that include bug fixes and support for new features.
3 Controller Features see the base version, plus a single-letter Configuration ID, as in ”3.30.0A”. The following chart shows the currently-used Configuration IDs: ID RMC70 RMC150 A RMC75S, revision 2.1C or older RMC150E/RMC151E B RMC75P, revision 2.1D or older C RMC75E, revision 1.1G or newer D RMC75S, revision 2.1D or older RMC75P, revision 2.1E or older E RMC75E, revision 1.
RMC70/150 and RMCTools User Manual Monitoring the Loop Time Use the Control Loop Time Settings Page to monitor how much of the control loop the RMC is actually using. It is important that the RMC never exceeds its loop time. If it does, unexpected behavior may result. Available Loop Times The loop time can be set by the user.
3 Controller Features 3.2.3. RUN/PROGRAM Mode RUN and PROGRAM mode specify whether the User Programs and the Program Triggers can run. RUN or PROGRAM mode do not necessarily affect the motion on an axis. Motion commands can be issued to the RMC whether or not it is in RUN or PROGRAM mode. In RUN mode: • The Program Triggers are started (if the Enable the Program Triggers task checkbox is checked in the Programming Properties). • • User Programs can run.
RMC70/150 and RMCTools User Manual • On the toolbar, click the Controller button PROGRAM Mode. and choose RUN Mode or From a Host Controller (PLC, HMI, etc.) • Issue the RUN Mode (98) or PROGRAM Mode (99) commands to the RMC. Using a Discrete Input to enter RUN or PROGRAM mode You can define a discrete input that puts the RMC into RUN or PROGRAM mode: • In the Project Pane, in the project tree, right-click the Programming node, click Properties, and click the RUN/PROGRAM page.
3 Controller Features RMC70 QAx or RegX/PosLim input RMC150 Quad RegY/NegLim input RMC150 UI/O DI/O inputs R0and R1 RMC70 Q1 Reg input Registration Positions Each quadrature feedback axis can keep track of two independent registration events, called Registration 0 and Registration 1. On the Q1 module, both registrations can only come from the Reg input. On the QAx and Quad modules, either registration can come from either the RegX or RegY input, or both registrations can come from one input.
RMC70/150 and RMCTools User Manual The RMC offers homing of quadrature, incremental SSI, and incremental Resolver axes. All are described in this topic. How to Home an Axis This section describes the basic steps for homing a quadrature axis using the Home input and/or the Z (Index) pulse as the home trigger. The RMC has many options for homing; for more details, see the rest of this topic. Note: If you are using the Z pulse, it is important to specify the Z Alignment before homing.
3 Controller Features 2 Z Trigger a Home on the Index (Z) Input. QAx Quad 3 Z And H Trigger a Home on the Index (Z) Input if the Home Input QAx is high. Quad 4 Z And Not H Trigger a Home on the Index (Z) Input if the Home Input QAx is low. Quad Using the Home Input (Trigger Types 0 - 1) The Home input is defined as follows: Feedback Type Home Input Quadrature (RMC70 QAx or RMC150 Quad) Home input on the axis connector. Quadrature (RMC70 Q1 Module) Reg input on the axis connector.
RMC70/150 and RMCTools User Manual If the axis is already retracted, the Home Input status will already be ON and the axis needs only extend as described above. When the axis is shut down, it should be retracted until the Home Input status bit is ON. This way the axis need only extend a small amount to be homed on startup. Disarm Home To disarm the home manually, use the Disarm Home (51) command.
3 Controller Features Using the Home Input for SSI and Resolver Axes (Trigger Types 0 - 1) The Home input for SSI and Resolver axes is defined as follows: Feedback Type Home Input Incremental SSI Defined by the SSI Home Source parameter (RMC70 only). Incremental Resolver No Home input is available on Resolver inputs. When the home is armed and the Home Input trigger occurs, the exact counts at the time the trigger occurred are latched. This position is used as the physical home position.
RMC70/150 and RMCTools User Manual none This is the default setting. Fault Input RMC70: The Fault Input of the axis. Dedicated Available on RMC70 QA and RMC150 Quadrature modules only. For the Positive Limit Input, this is the PosLim input. For the Negative Limit Input, this is the NegLim input. general input RMC70: any input from a D8 module, but only from the first 12 I/O points as listed in the I/O Monitor. RMC150: The Fault Input of the axis. Only available on the Quadrature Module.
3 Controller Features Good Practice Do not install limit sensors such that they become active close to the end of travel, but then become inactive at the end of travel, as shown below. In this case, commands in the wrong direction will be allowed. Poor Practice 3.2.7. Feedback Resolution Feedback Resolution specifies the smallest increment that can be measured by the feedback device (such as a position transducer or encoder).
RMC70/150 and RMCTools User Manual modules use 16-bit Analog-to-Digital converters. The RMC150 A module uses 12-bit Analog-to-Digital converters. The effective resolution of the Analog-to-Digital converted signal is increased by the following items: 1. Oversampling The AA, A2, AP2, H, and G analog-to-digital converters are read eight times per sample, increasing the effective resolution of the Analog-to-Digital converted signal.
3 Controller Features with SSI devices that have more than 24 bits, but you should make sure the counts will not exceed 16,777,216. These limitations do not apply to voltage, current, or MDT feedback types, since their values never exceed 24 bits. Delta recommends that the Counts value not be allowed to exceed 24 bits (16,777,216) because this causes the Actual Position to lose resolution.
RMC70/150 and RMCTools User Manual Control and Reference Axes The types of axes available in the RMC are: • Control Axis: has one Control Output and control either zero, one or two feedback quantities, such as Position, Velocity, Acceleration, Pressure, or Force. • Reference Axis: has an input for transducer feedback and does not have a Control Output. A reference axis is not capable of controlling a system. Reference axes are commonly used in gearing, synchronization, or monitoring applications.
3 Controller Features Feedback Type Description Position-Pressure Used for controlling both position and pressure with one actuator. Typically used with hydraulic cylinders. Position-Force Used for controlling both position and force with one actuator. Typically used with hydraulic cylinders. Position-Acceleration Used for advanced control such as active damping, which provides precision control of difficult systems, such as pneumatic systems.
RMC70/150 and RMCTools User Manual Axis Type Control: Has a physical Control Output and zero to two inputs Reference: Has only an input Cascading Outer Loop: Used for Cascade Control Control Loops None: (Control Axes and Cascading outer Loop Axes Only) For axes with no feedback, only a Control Output Single-Loop: For controlling a single quantity, such as position, velocity, acceleration (single- or dual-input), pressure, or force (single- or dual-input).
3 Controller Features A control axis has a Control Output and controls either zero, one or two quantities, such as Position, Pressure, or Force. The controlled quantity is provided by a feedback input. A control axis is capable of controlling a system because it has a Control Output. There are three types of control axes: 1. One-Input Control Axis A control axis that controls a single quantity, such as position or pressure, is called a oneinput control axis.
RMC70/150 and RMCTools User Manual For details on defining axes, see the following topics: Defining Axes Axis Definitions: Dialog Axis Definitions: Edit 3.3.3.2. Axis Type: Reference A reference axis is an axis that has only an input, such as position, pressure, or force. A reference axis does not have a Control Output and cannot control anything. A reference axis is commonly called a "half-axis".
3 Controller Features Position 1 MDT, SSI, Analog, Quadrature, Resolver Velocity 1 Analog Voltage or Current Pressure 1 Analog Voltage or Current Force 1 or 2 Analog Voltage or Current Note: A force input requires 1 analog input if a load cell is used, and 2 analog inputs for differential force on a hydraulic cylinder. In the differential case, it is still considered one input, since it is only one quantity. 2.
RMC70/150 and RMCTools User Manual A rotary axis is typically used for rotary feedback devices such as encoders. The RMC supports rotary feedback for both control axes and reference axes. For rotary axes, the counts per revolution must be a power of two, such as 1024, 8192, etc. This typically means the encoder counter per turn must be a power of two. For details and examples on using rotary motion, see the Using Rotary Motion topic.
3 Controller Features • Position with MDT or analog feedback • • Velocity • • Pressure Acceleration Force The following feedback types can be either incremental or absolute: • Position with SSI or Resolver feedback To define these axis types as incremental or absolute, use the Absolute/Incremental axis parameter. The following feedback types are always incremental: • Position with Quadrature feedback 3.3.4.3.
RMC70/150 and RMCTools User Manual Once the virtual axis has been set up, you can issue closed-loop motion commands to it as to any position axis. 3.3.4.4. Input Type: Pressure Pressure input force refers to measuring pressure using a single pressure transducer. A pressure input requires only one analog input on the RMC.
3 Controller Features Notice that it is not possible to calculate resultant force on the rod with only one pressure transducer because the pressure on the other side of the cylinder is unknown. Differential force can only measure the force applied to the piston due to the hydraulic pressure. The resulting force applied to the external load is also affected by the friction in the cylinder. For this reason, a load cell may be more accurate than differential force.
RMC70/150 and RMCTools User Manual Custom feedback refers to feedback that is continuously calculated by the user, such as with a user program. Custom feedback is not assigned to any hardware input. The axis will use this calculated feedback for control.
3 Controller Features • If the axis is part of a Halt Group, it starts the same level of halt on all axes in the group. See the Halt Group Number topic for more details. • The RMC immediately stops all Tasks by default. This setting can be changed on the Programming Properties dialog. Caution: If you disable this feature, User Programs may still be running after a halt occurs and may cause motion on the axis. Make sure you handle the halt condition safely.
RMC70/150 and RMCTools User Manual If the halt was caused by an Auto Stop, you should first make sure the error condition that caused it has been resolved before continuing. Once it has been fixed, you can clear the External Halt status bit by issuing the Clear Faults (4) command. Issuing a valid motion command will also clear the External Halt status bit, if the underlying error condition has gone away. 3.4.3. Closed Loop Halt The Closed Loop Halt is one of the four types of RMC Halts.
3 Controller Features (29), the Target Position will stop immediately. Otherwise, the velocity will ramp down from the current velocity to zero at the rate specified by the Closed Loop Halt Deceleration parameter, while remaining in position control. • Velocity PID The velocity will ramp down from the current velocity to zero at the rate specified by the Closed Loop Halt Deceleration parameter, while remaining in velocity control.
RMC70/150 and RMCTools User Manual The Open Loop Halt will ramp the Control output to zero, but will not remove the axis from pressure/force limit. The Direct Output Halt (3) and Fault Controller (8) commands will remove it from pressure/force limit. Tip: The Halts do more than just stop the axis. If you simply wish to stop the motion in open loop control, use the Stop (Open Loop) (22) or Open Loop Rate (10) commands.
3 Controller Features • Via Auto Stops. After a Halt has Occurred If the halt was caused by an Auto Stop, you should first make sure the error condition that caused it has been resolved before continuing. Once it has been fixed, you can clear the Halted status bit by issuing the Clear Faults (4) command. Issuing a valid motion command will also clear the Halted status bit.
RMC70/150 and RMCTools User Manual Force Pressure/Force Control, Pressure/Force Limit High-Order Control The RMC also supports Acceleration Control and Active Damping, for difficult-to-control systems such as pneumatic cylinders. Other Cascaded Loops Gain Scheduling Unidirectional Mode Unidirectional Mode, also known as Absolute Mode, is specifically designed for systems that require a unipolar control signal.
3 Controller Features Advanced: Velocity I-PD Pressure Pressure/Force Limit Force Pressure/Force Limit Dual-Loop Control The RMC supports dual-loop control, for example position-pressure or position-force. This allows controlling two quantities with a single actuator. For example, consider an injection molding application. The system first moves in position control to inject the material, then needs to maintain a certain force.
RMC70/150 and RMCTools User Manual Partial Open Loop Commands The following commands use open-loop control for part of the motion. As the axis reaches the requested position, the axis switches to closed loop control, decelerates, and holds position. These commands are useful for fast motion. • • Quick Move Absolute (15) Quick Move Relative (16) 3.5.4. Position PID Position PID is the algorithm typically used to perform closed-loop motion control on a position feedback axis.
3 Controller Features • Integral Gain The Integral Gain is multiplied by the accumulated Position Error. This helps the axis get into position over time. • Differential Gain The Differential Gain is multiplied by the difference between the Target and Actual Velocities. This helps the axis keep up with quick changes in velocity. • Velocity Feed Forward The Velocity Feed Forward is multiplied by the Target Velocity.
RMC70/150 and RMCTools User Manual nearly all motion control systems with velocity feedback. In certain cases, Velocity I-PD control may be preferred. Velocity PID Advantages • Excellent for controlling an axis that follows a smooth target, such as one generated by the RMC motion commands. Velocity PID Disadvantages • May not control very well with an irregular target, such as step jumps or a joystick.
3 Controller Features Diagram 3.5.6. Gain Sets Overview Some position or velocity control applications require only one set of gains that never change. However, some applications may require different gains at different times. For example, an application may require different gains for Position I-PD and Velocity I-PD control modes. The RMC can automatically switch the gains for such applications. This can be done via Gain Sets, as described below.
RMC70/150 and RMCTools User Manual Gain Set#2 applies when the Current Control Mode is Velocity PID or Velocity I-PD. PID, I-PD Automatically chooses a gain set based on PID or I-PD control. Gain Set#1 applies when the Current Control Mode is Position PID or Velocity PID. Gain Set#2 applies when the Current Control Mode is Position I-PD or Velocity I-PD. Choosing a Gain Set Option To set the Gain Set option, use the Gain Sets parameter.
3 Controller Features 3.5.8. Gain Scheduling Gain scheduling is the process of dynamically changing the gains of an axis based on some scheduling variable. The scheduling variable may be any measurable quantity in any RMC register, such as axis position, pressure, temperature, etc. For example, an axis may require different gains based on its position. In this case, the axis' position is the scheduling variable.
RMC70/150 and RMCTools User Manual Delta does not recommend using non-linear valves for motion control if a linear valve is available. When using a high-performance motion controller, there is usually no reason to use a non-linear valve. Linear valves will perform better than non-linear valves, even with valve linearization. Non-linear valves are typically only useful for valves directly controlled by hand controls, such as a joystick.
3 Controller Features Non-Linear Valves Non-linear valves have a profile where the flow of the valve is linearly proportional to the command signal input. Common types are single-knee, and curvilinear. The RMC motion controllers provide single-point linearization for single-knee valves.
RMC70/150 and RMCTools User Manual Unidirectional Mode will prevent the Control Output from going negative even if the Actual overshoots the Target. When this occurs, the Control Output will be truncated at the Output Bias, and the Integral Term will not wind up. Unidirectional Mode applies only to closed-loop position, velocity, pressure, and force control. It does not affect open loop commands, but it does affect the Quick Move commands.
3 Controller Features damping must be provided initially with the Differential gain. This is the primary difference between the tuning methods of velocity drives and torque drives. • Feed Forwards On a velocity mode system, the Velocity Feed Forwards often provide most of the drive required to move the axis and may therefore be large. On a torque mode system, the Velocity Feed Forwards are basically only for overcoming friction and are often small.
RMC70/150 and RMCTools User Manual Control Mode status register. The Current Control Mode register indicates the mode currently in use. See the Closed Loop Control topic for details on which commands are supported in Position I-PD control. Special Notes Decreasing Jerk at Start of Motion When using the Move Absolute (I-PD)(28) and Move Relative (I-PD)(29) commands, the system will start moving with a sudden jerk. This is because the Target Position is set to the Command Position immediately.
3 Controller Features Tuning Overview topic for details. Keep in mind that the I-PD algorithm does not use the Velocity or Acceleration Feed Forwards. You can also use the Tuning Wizard to tune I-PD control. However, if the gains are set to ratioed, the Velocity Feed Forwards are used in I-PD only to determine the ratio of the gains. Diagram 3.5.12.2. Velocity I-PD Velocity I-PD is an algorithm that can be used to perform closed-loop velocity control on a velocity axis.
RMC70/150 and RMCTools User Manual Each closed loop motion command issued to the RMC specifies a target profile, which defines where the axis should be at any given moment. For each loop time when the axis is in closed loop control, the Velocity I-PD algorithm calculates the values from each gain, as described below. Then, the terms from the Proportional and Differential gains are subtracted from the Integral Gain term.
3 Controller Features • Pneumatics Due to the compressibility of air, pneumatic systems are notorious for oscillating. The active damping limits the oscillation, resulting in much better control. • Small Hydraulic Cylinders with Large Loads In hydraulic cylinders with a large mass and a relatively small bore, the effects of the compressibility of the oil are the most pronounced, and can result in oscillation. Active damping limits the oscillation, resulting in much better control.
RMC70/150 and RMCTools User Manual Position-based a. Set the High-Order Control parameter to Active Damping. This is only valid if the axis is position only. If the axis has a secondary feedback, the active damping will use the secondary feedback. b. Set the Acceleration Filter Type parameter to Model or Low Pass. This is necessary to obtain usable acceleration readings. See the modeling and filtering topics for details. Velocity-based a. Set the High-Order Control parameter to Active Damping.
3 Controller Features For position-acceleration or velocity-acceleration axes, the secondary input from an accelerometer provides very good acceleration measurements. However, this requires extra components and wiring out to the moving load where the accelerometer is mounted. It is also generally necessary to use two accelerometers, one on the stationary frame and one on the moving load. This is because the stationary frame is not usually truly stationary—its vibrations will impact the motion of the load.
RMC70/150 and RMCTools User Manual The ultimate goal of the cascaded loops is to control the end process. Cascade control can provide precise control for certain difficult systems, for example systems in which some lag time exists. To better understand cascade control, consider the following example in hydraulic motion control: The figure above shows a very large hydraulic cylinder with a 3-stage proportional valve. The goal is to control the cylinder position.
3 Controller Features • Allows inner loop to handle non-linear valve and other final control element problems. • Allows operator to directly control inner loop during certain modes of operation (such as startup). • Allows controller to respond quickly to the faster inner loop. Cascade Control Disadvantages • Cost of measurement of the secondary variable (assuming it is not measured for other reasons). • Additional complexity.
RMC70/150 and RMCTools User Manual 4. Set up Outer Loop Axis Set up the outer loop axis, including scale/offset and tuning. During closed loop control of the outer loop (including during tuning), make sure that the inner loop axis remains in closed-loop control and geared to the PDIF output of the outer loop axis. If the inner loop halts, you will need to put in closed loop control again and restart the Gear Absolute.
3 Controller Features the error bit turns on, its Auto Stop setting determines what type of halt occurs. Make sure the Following Error Auto Stop is set identically for each axis. Also make sure the Open Loop Halt Ramp (or Closed Loop Halt Deceleration, depending on your halt type) parameter is identical for each axis. With these parameters set correctly, when you simultaneously issue identical motion commands to each axis, the Target Position will be identical for each axis at all times.
RMC70/150 and RMCTools User Manual In general, to move rotary axes, use the same motion commands as you would for linear axes. When positions wrap on the axis, the RMC automatically accounts for it when calculating target profiles, Position Error, etc. When Should Rotary be Used? If your machine has a rotary encoder, it does not necessarily mean the axis should be defined as rotary. The application determines whether the axis should be defined as rotary.
3 Controller Features Each of the commands listed above has a Direction parameter with the following options for rotary axes: • Positive: The axis will move to the Requested Position in the direction of increasing position units. If the Command Position is less than the current Target Position, the axis will wrap around to the Requested Position.
RMC70/150 and RMCTools User Manual command parameter is treated as a position on a linear axis; the axis begins moving toward the position as if on a linear scale. If the position is outside of the valid position range, the axis rotates through the number of revolutions required to reach the position. Each time the Target Position wraps during the move, the Position Unwind value is subtracted from the Command Position until the Command Position is within the valid position range.
3 Controller Features Nearest Absolute The axis will move in the direction that gives the shortest path to the Command Position, as shown below: The axis will move as if it were a linear axis. Therefore, the axis will move to the Command Position in the direction of increasing position units, as shown below: Example 2: Basic Rotary Move Consider a rotary axis with a single-turn encoder with a Position Unwind value of 360 and a Position Offset of 0.
RMC70/150 and RMCTools User Manual Nearest Absolute The axis will move in the direction that gives the shortest path to the Command Position, as shown below: The axis will move as if it were a linear axis. Therefore, the axis will move to the Command Position in the direction of increasing position units, as shown below: Example 3: Multiple Rotations This example illustrates how to use the Absolute option in the Direction command parameter to move a rotary axis through multiple revolutions.
3 Controller Features Rotary Motion with Relative Position Moves This section applies to the following commands: • Move Relative (21) • • Quick Move Relative (16) • Sync Move Relative (14) • • Advanced Time Move Relative (27) Time Move Relative (24) Move Relative (I-PD) (29) These commands are useful for moving the axis through multiple rotations. Each of the above commands has a command parameter called Displacement.
RMC70/150 and RMCTools User Manual The Direct Output (9) and Open Loop Rate (10) commands work like on a linear axis, except that the positions will wrap as usual for a rotary axis. The Open Loop Absolute (11) and Open Loop Relative (12) commands ramp the Control Output from it's current value to the requested Output. This ramping is linear based on distance (not time) from the current Actual Position to the requested Position or requested Displacement command parameters.
3 Controller Features 3.6.4. Gearing Gearing is used when one axis (the slave axis) must move incrementally and proportionately to a register (the gear master), which is typically the position or velocity of another axis. The RMC has several commands to cover a wide range of simple and advanced gearing applications. This topic describes the basics of gearing and gives an overview of the gearing commands. If you need to gear using a non-linear profile, see the Curves Overview topic.
RMC70/150 and RMCTools User Manual The Track commands provide gearing, with limits on the position, velocity, acceleration and jerk. These commands are useful for smoothly tracking a signal containing noise or step-jumps, or for gearing to another position while not exceeding specified motion limits. Track Position (57) Continuously tracks the specified master register. The axis position is limited by the positive and negative travel limits, and the specified velocity, acceleration, and jerk limits.
3 Controller Features Point B. The ratio can be calculated as follows. See the Gear Absolute (25) command for more details. Gear Ratio = (Slave Point B - Slave Point A) / (Master Point B - Master Point A) Clutching Clutching is used for relative gearing commands. Clutching is the transition of the motion of the slave axis at the time the gearing command is issued to the final specified ratio. Most often, this cannot be done instantaneously.
RMC70/150 and RMCTools User Manual Transition command must previously have been issued to the axis to define how the axis should move from it's current position onto the gearing relationship. See the Transition Rate (56) command or more details. Possible Gear Masters The gear master can be any register in the RMC. A register does not need to do anything to be a gear master. Most registers in the RMC are not useful as a gear master.
3 Controller Features The behavior of the components of the gearing target, including the Target Velocity, Target Acceleration, and Target Jerk, depend on the type of register used as the master: • Target Position When gearing to a Target Position, the slave Target Velocity will be the ratioed master Target Velocity, the slave Target Acceleration will be the ratioed master Target Acceleration, and the slave Target Jerk will be the ratioed master Target Jerk.
RMC70/150 and RMCTools User Manual 3. Enter Maximum Acceleration Enter the desired maximum acceleration. This is not necessarily a true limit of the acceleration, but helps determine the response of the simulator and the tuning gains. For best results, set this value significantly higher than the acceleration rates you intend to use on the axis. This value is typically at least an order of magnitude (10x) greater than the maximum velocity. 4.
3 Controller Features volume = the volume of trapped oil in the cylinder (in3) Damping Factor For a 2nd order system. The damping factor is a unitless number. Hydraulic systems typical from 0.3 to 0.8. If the load has a lot of friction, this value will become larger. A lower value the system more difficult to control. Positive Physical Limit Specifies the maximum and minimum positions the simulator can move to. Notice that the Maximum Compression distance goes beyond these limits.
RMC70/150 and RMCTools User Manual 3.6.6. Step Jumps For closed-loop motion control, the RMC target generator typically generates a motion profile that ramps the position to the requested position in a controlled manner. This provides smooth and precise motion. However, some users may prefer that the Target Position jumps immediately to the requested position. This is called a Step Jump. The RMC can generate a step-jump command with the Time Move Absolute (23) and Time Move Relative (24) commands.
3 Controller Features Curve Tool Creating and viewing curves is easy in the graphical Curve Tool. This method is excellent for applications that require only pre-defined curves. For details, see the Curve Tool. Curve Add Command This method is suitable for creating curves via a host controller, such as a PLC or PC, or even via user programs. For details, see Creating Curves Using the Curve Add Command, and Example: Create Curve Using the Curve Add Command.
RMC70/150 and RMCTools User Manual • Endpoint Behavior Truncate (+4) • Note: You can choose other Options settings, but these are typical. 4. Send the Curve Start Advanced (88) command. As specified by the Transition command, the curve axis will move to the correct position on the curve, which is determined by the location of the master axis. As the master axis moves in either direction, the curve axis will follow the curve profile.
3 Controller Features RMC75E: any version RMC75S: versions 2.1D or newer only RMC75P: versions 2.1E or newer only 3.6.7.2. Managing Curves in the Curve Tool Use the Curve Tool for managing curves, including creating, editing, viewing, downloading, uploading, importing and exporting. Managing Permanent Curves A permanent curve is a curve either created in the Curve Tool or using the Curve Add (82) command with the Permanent life cycle.
RMC70/150 and RMCTools User Manual 2. In the Properties pane, on the Curve tab, in the Name cell, enter a name for the new curve. You may also enter a Description. Add Curve Points 1. In the spreadsheet located below the curve graph view, in the right-most column, enter the X value and Y value for the new point, then press Enter. Curve data can be copied and pasted from spreadsheets programs as described in the Copying and Pasting section in the Curve Tool topic. 2.
3 Controller Features must be increasing (Xi+1 > Xi). Advanced Points 2 This format expands on the Variable-Spaced Points format by allowing the velocity to be set at any point, and constant-velocity segments to be specified. The X values must be increasing (Xi+1 > Xi). Multiple Curve Formats Evenly-Spaced Points 10 Variable-Spaced Points 11 Advanced Points 12 Similar to the formats above, but are used to create multiple curves simultaneously, saving time.
RMC70/150 and RMCTools User Manual • Curve Delete All (85) • Curve Delete Except (84) Curves can also be deleted automatically, by specifying the Start-Once or CompleteOnce life cycle in the Curve Add (82) command. Curves with Start-Once life cycles can be deleted manually but will always be automatically deleted after being started once. The curve will exist internally for as long as it is being followed, but the curve ID will be freed up.
3 Controller Features • (1) Processing Once the command has been received, the Status will immediately be set to Processing. While in this state the command is currently using the Curve Data structure, and the curve is not ready for interpolation. • (2) Part Complete For all but the last part in a partial curve download, once the command has completed processing the part, this status value will be used. The user can now write down the next part of the curve.
RMC70/150 and RMCTools User Manual Registers 0 - 4 of the Partial Curve Format listed above must always be included in each write. The actual data of the curve is included in registers 5 and on. The data in the registers 5 and on is the data of the corresponding single curve format, but with the Status and Format registers stripped off. • • Issue the Curve Add (82) command. Wait for the Curve Status register to be 2 or 3. The value 2 indicates that the part was successfully added.
3 Controller Features Note: This is very tedious to do directly from RMCTools, but you may need to when you are first trying it. Part #1: Data Description Curve Data Offset 512 0 Status = 0 - 513 20 Format = 20 - 514 0 Part Offset = 0 - 515 507 Part Length = 507 - 516 2504 Total Length = 2504 - 517 2500 Point Count = 2500 0 518 0 Interpolation Options =0 1 519 0 X0 = 0 2 520 0.1 X interval = 0.
RMC70/150 and RMCTools User Manual 514 1014 Part Offset = 1014 - 515 507 Part Length = 507 - 516 2504 Total Length = 2504 - 517 Y1010 Y1010 1014 : : : Y1516 Y1516 1520 : 1023 After writing part #3 and issuing the Curve Add command, the user should wait for the Curve Status at Variable 512 to become 2 (if you are looking in RMCTools, make sure to look in the Monitor tab of the Variable Table Editor), indicating that the RMC has completed processing the part.
3 Controller Features 3.6.7.5. Curve Interpolation Methods and Options The RMC supports several interpolation methods and options to satisfy a wide range of curve applications. Interpolation Methods The interpolation method is specified in the Properties pane in the Curve tool, or in the Curve Add (82) command. Choose from one of the methods below. The Cubic (2) method is the most common method and creates the smoothest motion. • Cubic (2) The curve will smoothly go through all points.
RMC70/150 and RMCTools User Manual On pressure or force axes, the Target Rate will always be zero. Therefore, the Pressure/Force Rate Feed Forward will have no effect for constant interpolated curves. Interpolation Options The interpolation options are specified in the curve data. The available options depend on the interpolation method, as shown in the table below. Add the numbers for each desired option.
3 Controller Features • +1 Natural-Velocity Endpoints The endpoints will have their velocity automatically selected to match the natural slope of the curve at the endpoints. The acceleration at the endpoints will be zero. Curves with natural-velocity endpoints cannot be repeated cyclically because the endpoint velocities are typically not equal. • +2 Cyclic Curve The endpoints are assumed to wrap.
RMC70/150 and RMCTools User Manual When overshoot protection is enabled, the velocity is set to zero at each local minimum/maximum point, which eliminates the chance of the curve overshooting that point for the curve segments on either side of the point. For Advanced format curves, Overshoot Protection will not apply to Fixed-Velocity points, or points at the beginning or end of a Constant-Velocity segment. Example 1 Consider the cubic curve data in the Endpoint Behavior section above.
3 Controller Features Example 3 Consider this same curve with both Overshoot Protection and Auto-Constant Velocity enabled. This particular curve ends up looking the same as it does with only Overshoot Protection, because both constant-velocity segments are lost because at least one of each set of 3 consecutive points was identified by Overshoot Protection as a local minimum or maximum. 3.6.7.6.
RMC70/150 and RMCTools User Manual curve, the Part Complete (2) state wont be usedthe status will change from Processing (1) directly to Curve Ready (3). • (10+) Error Values of 10 and above will indicate various errors. When an error code is set in this register, it indicates that the command is done trying to process this Curve Data, but the curve was not submitted to the curve store. See the Curve Status Error Codes topic for details.
3 Controller Features and Y values, allowing variable spacing. (22) Partial Curve - Advanced Points This partial curve format expands on the Variable-Spaced Points format by allowing the velocity to be set at any point, and constantvelocity segments to be specified. Single Curve - Evenly-Spaced Points This is the simplest method. The spacing of the X values is constant. The X value for each point is defined as Xi = X0 + ΔX·i.
RMC70/150 and RMCTools User Manual Offset Register Description 0 Status See Above 1 Format (1) Single Curve - Variable-Spaced Points 2 PointCount Number of points in the curve (N). The minimum number of points is 2. 3 InterpOpt Interpolation Options. See the Curve Interpolation Methods and Options topic for details.
3 Controller Features +16: Auto Constant Velocity 4-7 4 Pt0 Point 0 structure. Each field is described below: .Type Point 0 Type. It can have these values: (0) Standard Only the X and Y values are used. (1) Fixed Velocity The V value later in this structure specifies the velocity to be used at this point. This point type is not supported by Constant or Linear interpolated curves.
RMC70/150 and RMCTools User Manual using the Multiple Curves formats, the curves will receive sequential ID numbers, starting with the ID specified by the Curve Add (82) command. • Multiple Curves - Evenly-Spaced Points (10) • • Multiple Curves - Variable-Spaced Points (11) Multiple Curves - Advanced Points (12) The following chart summarizes the multiple curves formats: Note: Data types are all REAL.
3 Controller Features Offset Register Description 0 Status See Above 1 Format Partial Curve format (20-22) 2 PartOffset Offset of this part of the whole curve (in registers) 3 PartLength Number of registers in this part (L), excluding the 5register part header. This is the number of PartData registers. 4 TotalLength Total length of curve data (sum of all parts) PartData Segment of the curve data in the respective single curve format. 5..5+(L1) 3.6.7.7.
RMC70/150 and RMCTools User Manual This error code will be used if the Curve Store does not have enough space free for any of these allocations. See Curve Storage Capacity for details on memory requirements. 14: Non-increasing X value found in curve data. The X values for each successive point must be increasing.
3 Controller Features This error will occur if there are already 128 curves in the curve store. You must delete one or more curves before adding more curves. 3.6.7.8. Curve Storage Capacity Curves are stored in the Curve Store. The Curve Store can hold a maximum of 128 curves. The non-volatile storage capacity for curves is less. The curve storage capacity varies by controller, as shown below. When a curve is added, the Event Log will display the size of the curve in bytes.
RMC70/150 and RMCTools User Manual 80 Equal-length Curves 8,550 points 261 points 128 Equal-length Curves 5,381 points 161 points Curve Store Memory Uses The Curve Store contains a pool of memory of either 8MB or 256KB in size, as described above. There are four operations that will consume Curve Store memory: • Download Buffer This buffer is allocated for each curve downloaded from the Curve Tool only for the duration of that curve download.
3 Controller Features The amount of space required for the computation buffer and curve object depends on several factors. The most important factor is the interpolation method to be used. Formulas for calculating the memory requirements are given below. Constant and Linear Interpolated Curves These two types of curves do not require a computation buffer.
RMC70/150 and RMCTools User Manual Finally, the curve object itself will require 20xN+144 bytes or 200,144 bytes. Therefore, the Curve Store must have 40,048 + 160,064 + 200,144 or 400,256 bytes available to successfully download this curve. Notice however, that after the curve has been added, the re-assembly and computation buffers will be freed up, leaving only 200,144 bytes used for this curve from the Curve Store.
3 Controller Features When determining the curve points, keep in mind that the axis that follows the curve must be at the starting Y-axis position before the Curve Start command is issued. That is, the first point is where the axis must be at the start. 2. Create the Curve Data in the Variable Table Several different curve data formats are available, as described in Curve Data Formats.
RMC70/150 and RMCTools User Manual Variable Table: You can enter the curve data in the Variable Table using RMCTools, or you can write the data from a PLC or HMI. If you use a PLC or HMI, it is a good idea to first enter the Descriptions in the Variable Table using RMCTools so that you can easily troubleshoot it. 3. Send the Curve Add (82) Command Send the Curve Add (82) command to instruct the RMC to create a curve using the data in the Variable Table and the Curve ID specified by the command.
3 Controller Features Notice if you wish to be able to save the curve to Flash, you should choose the Permanent Life Cycle option. Only curves created with the Permanent Life Cycle option or downloaded from the Curve tool can be saved to Flash. After the Curve Add (82) command has been added the curve, the data in the Variable Table is no longer needed. You can, for example, use it to add additional curves. 4. Wait for the Curve Status to be 3 Wait for the Curve Status to be 3.
RMC70/150 and RMCTools User Manual For more efficient communication, you can make a user program that issues the Curve Add and Curve Start commands. Then the host controller need only start a user program, instead of issuing several commands. After writing the data to the Variable Table, start the user program. After the user program issues the Curve Add command, it must wait for the Curve Status to be 3 before issuing the Curve Start command. 3.7. Pressure and Force Control 3.7.1.
3 Controller Features 3.7.2. Controlling Only Pressure or Force This topic describes how to perform pressure/force control on a pressure-only or force-only axis. Torque control is identical to pressure or single-input force control. For details on position-pressure or position-force axes, see the Position-Pressure and Position-Force Control topic.
RMC70/150 and RMCTools User Manual Scaling the feedback converts it from volts or current to useful units such as pounds, newtons, etc. To scale the feedback, use the Pressure/Force Scale/Offset Wizard. 1. In the Axis Tools, in the Axis Parameters Pane, on the Setup tab, in the Tools and Wizards section, in the axis column you are using, click Launch to open the Pressure/Force Scale/Offset Wizard. 2. Complete the wizard, then download the parameters. Make sure to update Flash and save your project. 3.
3 Controller Features • Curve Start (Prs/Frc) (87) • Curve Start Advanced (Prs/Frc) (89) Exiting Pressure or Force Control To exit pressure/force control, issue the Open Loop Rate (10) or Direct Output (9) command. An Open Loop Halt or Direct Output Halt will also cause the axis to exit pressure/force control. Pressure/Force Limit Pressure/Force Limit can be used on a pressure-only or force-only axis, although it is typically not very useful.
RMC70/150 and RMCTools User Manual Pressure/Force Target Generator Done bit This bit indicates that the Target Pressure or Target Force has reached the Requested Pressure/Force. If the ramp is interrupted, e.g. due to a halt, the done bit will not be set because the commanded motion was not completed. Notice that this bit does not indicate whether the Actual Pressure or Actual Force has reached the Requested Pressure/Force.
3 Controller Features • Control Axis • • 2 Inputs • Input Type: Pressure, Force (single-input), or Force (dual-input) If you are using a single pressure transducer or load cell for the feedback, choose Pressure or Force (single-input). If you are using two pressure transducers for differential force feedback, choose Force (dual-input, diff.). First Input: Select your position input type. 4.
RMC70/150 and RMCTools User Manual Pressure/force limit is a special type of pressure or force control. With pressure or force limit, the pressure or force is limited during the position or velocity motion of an axis. Pressure/force limit cannot be used simultaneously with pressure/force control.
3 Controller Features • Stop Pressure/Force (43) • • Enter Pressure/Force Control (Auto) (44) • • Sine Start (Prs/Frc) (76) • • Change Target Parameter (Prs/Frc) (81) • Curve Start Advanced (Prs/Frc) (89) Enter Pressure/Force Control (Time) (45) Sine Stop (Prs/Frc) (77) Curve Start (Prs/Frc) (87) Exiting Pressure or Force Control To exit pressure or force control, issue an open-loop or closed-loop motion command.
RMC70/150 and RMCTools User Manual The Pressure/Force Target Generator bits in the Status Bits register indicate which portion of the move the axis is currently in. These bits are useful when programming complex motion sequences. Pressure/Force Target Generator Done bit This bit indicates that the Target Pressure or Target Force has reached the Requested Pressure/Force. If the ramp is interrupted, e.g. due to a halt, the done bit will not be set because the commanded motion was not completed.
3 Controller Features pressure limit. In order to achieve precise motion when pressure is not important, do not enable Pressure Limit mode. This may require the user to enable Pressure Limit mode only after the pressure has increased close to the point where the pressure is to be limited. Pressure/Force Limit versus Control Pressure/Force Limit differs from Pressure/Force Control.
RMC70/150 and RMCTools User Manual affect normal closed-loop motion even when the pressure is very low. Therefore, if possible, do not enter Pressure/Force Limit until you need to. 4. Move the axis. When the motion begins to affect the pressure, the RMC will limit the motion such that the Actual Pressure/Force does not exceed the Command Pressure/Force.
3 Controller Features • Hold Current Pressure/Force (19) • • Enter Pressure/Force Control (Auto) (44) Enter Pressure/Force Control (Time) (45) For details on control issues to be aware of, see the Pressure/Force Limit Details topic. Exiting Pressure/Force Limit An axis will exit pressure/force limit mode if any of the following occurs: • The Set Pressure/Force Limit Mode command is sent with the Pressure/Force Limit command parameter set to 0 (Disabled).
RMC70/150 and RMCTools User Manual This type of control can be done on any control axis with pressure feedback, whether or not the axis also has position feedback. The algorithm in the open-loop case works the same as in the Closed Loop Move case, except that the Output of the pressure PID is compared to the open-loop Control Output. The smaller of these values is then used for the Control Output.
3 Controller Features You can choose to filter these values when they used in the control algorithm. See the Velocity Filter Type and Acceleration Filter Type topics for details. Example For example, suppose the position feedback makes a step jump from 4.1 to 4.5 position units. With the position filter disabled (set to zero), the Actual Position would also make a step jump. By applying a non-zero filter, the Actual Position is filtered, and does not make a step jump: 3.8.2.
RMC70/150 and RMCTools User Manual Determining the Model To determine the model initially, use the Tuning Wizard. Or, if you know the system of the model, you can enter the values manually. Applying the Model Parameters When the model parameters are changed, the RMC calculates the new model for the axis. This can take several control loops to complete. Due to the digital nature of the RMC, not all models are valid.
3 Controller Features Plots in the Plot Manager can be saved for use later in the Plot Manager, or to send to Delta for technical support. Individual plots can be exported to a file that can be used by other programs, such as Excel, Word, etc. For more details, see the Saving and Exporting Plots topic. Plot Commands You can use the following commands to start, stop and trigger plots. Issue these commands like any other command. Some of these commands can also be issued directly from the Plot Manager.
RMC70/150 and RMCTools User Manual In the Plot Manager toolbar, click the Open Plot File button. In the Open dialog, browse to the desired plot file, select it, and click Open. In the Open dialog, you can use the Ctrl or Shift key to select and open multiple files. Exporting Plots The data from an RMC plot can be exported to a file for use in other programs, such as Excel.
3 Controller Features You have set the Plot Duration to 4 seconds and the Trigger Percentage to 25%. When you trigger a plot, the first 1 second of the plot will contain data from immediately before the trigger occurred, and the last 3 seconds will contain data from immediately after the trigger occurred. How to Trigger a Plot Note: To trigger a plot, the trigger must first be armed. See the Rearming the Trigger section below.
RMC70/150 and RMCTools User Manual • Manually Rearm To manually rearm the trigger, issue the Rearm Plot (103) command. You can also issue the Rearm Plot command from the Plot Manager by choosing Rearm Plot on the Online menu. To enable manual rearming, see the Changing the Trigger Settings section below. Rearming a plot will clear all previously captured data for that plot. Changing the Trigger Settings The trigger settings can be configured for each individual plot.
3 Controller Features To see which data items are actually captured and stored in the RMC: 1. In the Plot Template Editor, on a plot tab, choose Custom. 2. In the Plotted Data table header, click Show Data Items. These are the plot data items that you can read via a host controller. 3. The order of the captured data items can be changed by clicking the Up and Down arrows. To apply any changes to the RMC, click the Download button in the Plot Template Editor toolbar.
RMC70/150 and RMCTools User Manual To read a plot using this method, follow these steps: 1. Wait for the Plot to Complete Before reading the plot data using this method, the plot must have completed capturing data. Reading the plot before it has completed may result in unusable information. Use the Plot State register to tell whether the plot has completed capturing. The plot has completed when the Plot State register is 2: 0 = not triggered, 1 = capturing, 2 = complete. 2.
3 Controller Features To begin reading up a plot before it has finished capturing, follow these steps: 1. Make sure the plot is currently capturing Read the Plot State register and make sure it is 1 or 2, which means it is in the process capturing data or has completed. 2. Check how many samples have been captured Read the Captured Samples register to find out how many plot samples have already been captured. 3.
RMC70/150 and RMCTools User Manual If you wish, you can use Dynamic Plot Upload registers 0-4 to do error checking, as described below: • Verify that the Samples Uploaded is the value you expect. It should be the number of samples read per data set. If it is zero, you have read past the end of the currently captured data and the data will be unusable. You can make use of this to read a plot while it's capturing. You can continuously make reads and only use the data when the Samples Uploaded is not zero.
3 Controller Features Use the Plot State register to tell whether the plot is continuously capturing. The plot is continuously capturing when the Plot State register is 0: 0 = not triggered, 1 = capturing, 2 = complete. 2. Write 2 to the Upload Mode/Status Register Write a value of two (2) to the Upload Mode/Status Register. This sets the upload mode to "continuous" and resets the Current Index register to zero.
RMC70/150 and RMCTools User Manual • Verify that the Plot ID register is unchanged. If it has changed, it indicates that you are no longer reading from the same plot. The plot may have been re-triggered or reset. d. Check the Samples Uploaded Register Verify that the Samples Uploaded register is not zero. If it is, there is not enough captured data to fulfill the request. Repeat steps b, c, and d until the Samples Uploaded register is non-zero. e.
3 Controller Features 4. Read the Plot Data Starting from Dynamic Plot Upload register #0 Upload Mode 3 will always return the newest data whether or not the data causes an overlap or gap with the last data that was read. Use the Current Index register to keep track of the data. The Current Index register indicates which sample number of the plot the last read started at. Each time you read the plot data, start the read at Dynamic Plot Upload register #0.
RMC70/150 and RMCTools User Manual Tip: In order to use the plot data, you will probably need to know the sample period. The Sample Period register contains that information. Registers The following registers are used in the methods above. The addresses are given here. # RMC70 Address (n= plot #) RMC150 Address (n= plot #) Data Type Plot Sample Period %MD(32+n).2 %MD(96+n).2 REAL Plot ID %MD(32+n).8 %MD(96+n).8 REAL %MD(32+n).9 %MD(96+n).9 REAL %MD(32+n).10 %MD(96+n).10 REAL %MD(40+n).
3 Controller Features 3.9.6. Mean Squared Error The Mean Squared Error (MSE) is a quantity that can be included in a plot. The MSE is a single number that indicates how closely two other plot quantities are to each other during the entire plot. The closer the quantities are, the smaller the MSE will be. The Mean Squared Error is typically used during manual tuning as a measure of how close the Actual Position, Velocity, Pressure or Force is tracking the Target.
RMC70/150 and RMCTools User Manual Switching feedback for an axis is useful in certain testing applications, or for using several transducers to provide the desired resolution over the range of the feedback. For details, see Switching Feedback using Custom Feedback.
3 Controller Features Define the Axes Custom feedback is supported by all axis types with feedback, except differential force or differential acceleration. To define an axis with custom feedback: 1. Begin defining an axis as usual in the Axis Definitions dialog. 2. For the feedback of the axis, choose the type you need, such as position, velocity, pressure, etc. 3. Instead of choosing a physical input, choose Custom.
RMC70/150 and RMCTools User Manual b. In one of the task columns, choose the user program you created. Make sure no other user programs will ever run on that task. 3. Make sure the Task does not stop when an axis halts. a. In the Project Pane, right-click Programming and choose Properties. b. On the Halts page, choose Stop the Following Tasks. c. Uncheck the box for the task that will be running the user program.
3 Controller Features Custom No Transducer Error Bit The Custom No Transducer bit in the Custom Error Bits register can be written to from the user program to provide an error indication. Setting the Custom No Transducer Error bit will result in the No Transducer axis error bit being set, which will then halt the axis according to the No Transducer Auto Stop setting.
RMC70/150 and RMCTools User Manual 3.10.2. Switching Feedback using Custom Feedback Switching feedback on the fly can be implemented in the RMC via Custom Feedback. This topics describes how. Tip: The Examples section of Delta's online forum includes a Switching Feedback example. You can use that example to help you get started. Setting Up Switching Feedback Read the Custom Feedback topic before completing this procedure. 1. Define a Control Axis with Custom Input a.
3 Controller Features c. Make sure the task does not stop when an axis halts. 7. Tune the Axis a. Tune the axis manually (auto-tuning does not work in RUN mode). 8. Add Other Code • If other values need to be changed when the feedback is switched, add the necessary code to the expression. For example, some applications may require different tuning gains for each feedback. • Depending on the application, more programming may be needed to make a smooth transition when switching feedback. 3.10.3.
RMC70/150 and RMCTools User Manual a. Define a control axis with the feedback type required (position, velocity, pressure, force, or acceleration). For the feedback source, choose Custom. b. Create a reference axis for the feedback input to be used. c. Configure the feedback parameters for the reference axis and verify that the transducer gives valid readings. d. Set the Scale and Offset so that the reference axis provides correct values throughout the entire range. 4.
3 Controller Features 1. Determine Actual Measurement Versus Transducer Measurement Determine the equation that defines the relationship of the desired measurement to the transducer's measurement. The machine designer should be able to provide a formula. 2. Define Custom Axis and Reference Axis a. Define a control axis with the feedback type required (position, velocity, pressure, force, or acceleration). For the feedback source, choose Custom. b.
RMC70/150 and RMCTools User Manual 1. Define a Control Axis with Custom Input a. Define a control axis with the feedback type required (position, velocity, pressure, force, or acceleration). For the feedback source, choose Custom. 2. Define the Reference Axes a. Create reference axes for each physical feedback input to be used. 3. Configure the Reference Axes a. Configure the feedback parameters for the reference axes and verify that the transducers give valid readings. b.
3 Controller Features 6. Make Sure the User Program Always Runs As described in more detail in the Custom Feedback topic, do the following: a. Set the RMC to start in RUN mode. b. Use a _FirstScan condition in the Program Triggers to start the user program when the RMC enters RUN mode. c. Make sure the task does not stop when an axis halts. This can be set in the Programming Properties, on the Halts page. 7. Tune the Axis a. Tune the axis manually (auto-tuning does not work in RUN mode). 8.
RMC70/150 and RMCTools User Manual drive that takes a ± 10V command signal from the RMC. Feedback can be quadrature encoder, SSI, analog voltage or current, or a resolver. Amplifier or Drive Details To interface with an electric motor, you will need an amplifier or drive that takes a ±10V command signal from the RMC. This includes Variable Frequency Drives. If the drive is a smart drive, you should set it to it's simplest setting so that the drive does not do the position control.
3 Controller Features performance significantly, Delta does not recommend using valves with overlapped spools – in particular for high performance applications or for pressure control. Position-Pressure/Force Control Hydraulic cylinders are ideal for applications where large forces must be applied to a load, and the RMC includes control modes and parameters specifically for these types of applications.
RMC70/150 and RMCTools User Manual PID with Acceleration Control with accelerometers This gives the tightest control. However, it really works the valve and will always overshoot slightly. Tuning hot tends to cause small high-speed vibrations and pushes stability limits. This will generally require the use of a filter on the acceleration.
3 Controller Features Magnetostrictive Displacement Transducers (MDT) are absolute position transducers designed for use in rugged industrial environments. They are non-contact, wear-free, highly reliable, and offer accurate and repeatable linear position measurement. In the motion control industry, magnetostrictive displacement transducers are typically inserted into hydraulic cylinders for measurement of the cylinders position.
RMC70/150 and RMCTools User Manual Pulse Width Modulated Transducer The value obtained from the PWM or Start/Stop counter is put in the Raw Counts register for that axis. The Raw Counts are converted to Counts and then into an Actual Position in user-defined units. Recirculations Delta does not recommend using recirculations on MDT transducers. Recirculations have historically been used to gain more accuracy in the measurement.
3 Controller Features RMC150: SSI Module, Universal I/O module The RMCs provide the following SSI options: SSI Options RMC70 MA Module RMC150 SSI Module RMC150 UI/O Module Data Bits 8 to 32 8 to 31 8 to 32 SSI Format Binary or Gray Code Binary or Gray Code Binary or Gray Code SSI Errors None, all zeros, all ones, or bit 21 None, all zeros, all ones, or bit 21 None, all zeros, all ones, or bit 21 Clock Rates 150, 250, and 375 kHz 230 or 921kHz 250kHz, 500kHz or 971kHz Wire Delay n/a
RMC70/150 and RMCTools User Manual 5. The value obtained from the SSI data is put in the Raw Counts register for that axis. The Raw Counts are converted to Counts and then into an Actual Position in userdefined units. SSI Cable Length The maximum allowable SSI cable length depends on the SSI Clock Rate. For SSI inputs on the UI/O module, wire delay compensation is available to allow longer lengths, as described in the Wire Delay Compensation section below.
3 Controller Features To compensate for the delay, set SSI Wire Delay parameter. You can enter the wire length or enter the time delay directly. The SSI input will then use the delay value to correctly read the SSI input data. Transducer Lengths Magnetostrictive linear transducers with SSI output may require a minimum time between interrogation based on the length of the transducer. Check your transducer data sheet for details.
RMC70/150 and RMCTools User Manual RMC70 AA1 -10 to +10V, 4-20mA AA2 -10 to +10V, 4-20mA A2 -10 to +10V, 4-20mA AP2 -10 to +10V, 4-20mA RMC150 Analog (H) -10 to +10V, -5 to +5V, 4-20mA Analog (G) -10 to +10V Analog Inputs (A) -10 to +10V, -5 to +5V, 4-20mA Universal I/O -10 to +10V, 4-20mA Analog Outputs All the Axis Modules have one analog ±10V Control Output. See the Control Output topic for details. 3.12.4.
3 Controller Features counts on the RMC feedback. For example, a 1000 PPR encoder will give the RMC 4000 counts per revolution. The RMC increments the counts register when A leads B. It decrements the counts register when B leads A. Index Pulse Some quadrature encoders also include a third output channel, called a zero or index or reference signal, which supplies a single pulse per revolution. This single pulse is used for precise determination of a reference position.
RMC70/150 and RMCTools User Manual Resolvers are commercially available in many varieties with different specifications. The primary specifications of interest as applied to the RMC are: • Frequency The frequency of the Reference Signal driving the primary winding. • Voltage The specified voltage of the Reference Signal driving the primary winding. • Output Voltage The output voltage from the secondary windings or the transformation ratio between primary and secondary windings.
3 Controller Features experienced RMC user may not be available. 3. Make more user programs available to the user If an application requires more user programs than will fit in the RMC, and only a few user programs are used at any given time, this feature allows splitting up the user programs between several images. When a certain user program is required, the respective image is downloaded to the RMC, then the user program can be run. 4.
RMC70/150 and RMCTools User Manual 1. Preparation • This process will restart the RMC. Therefore, make sure the RMC is in a state where restarting it will not cause problems. For example, you may wish to put the axes in open loop and the RMC in PROGRAM mode. • Connect the PLC to the RMC via Ethernet. 2. Reset the Image Area. This step is not strictly necessary, but is required if an Upload Image has been built. To reset the Image Area, write Reset Image Area (3) to the Image Area Command (%MDx.
3 Controller Features RMCLink documentation for details, particularly the topics relating to the ReadImageToFile and WriteImageFromFile methods. Image Area The Image Area is located in file 30 on the RMC70, and in file 94 on the RMC150. This file has the following structure. Address (RMC70) %MD30.0 Address (RMC150) %MD94.
RMC70/150 and RMCTools User Manual Sequence Error 23=Invalid Download Image 24=Cannot Apply without Restart 25=Failure writing to Flash 26=Must be in PROGRAM mode to apply without restart 27=Image supports a different hardware configuration 28=Controller unable to build upload image because copy protection is enabled %MD30.2 %MD94.2 DINT Read Only Image Size Provides the size of the Upload Image, in 32-bit registers. %MD30.3 %MD94.
4. Using RMCTools 4.1. Using RMCTools RMCTools Overview RMCTools is a Windows XP*/Vista/7/8 based software package for the RMC70 and RMC150 series motion controllers. RMCTools allows the user to set up, display, troubleshoot, program and control all features of the RMC motion controller. Fully detailed plots of motion can be captured at any time. RMCTools offers high speed communications to the RMC via a serial USB, Ethernet, or RS-232, allowing the user to tune even the most time-critical applications.
RMC70/150 and RMCTools User Manual Pane Axis Parameters Pane Axis Definitions Command Tool Command Tool Indirect Data Map Printing Indirect Data Map Editor Wizards Shortcut Sets New Project Wizard New Controller Wizard Shortcut Commands Plots Shortcut Command Set Editor Plot Manager Event Log Plot Template Editor Event Log Monitor Scale/Offset Wizards Simulator Wizard Firmware Update 4.2.
4 Using RMCTools • Project Pane • • Command Tool • • Task Monitor • Verify Results Window I/O Monitor Output Window Moving Dockable Panes To move a dockable pane, click and drag the title bar of the pane. As you drag, directional controls will appear. Dragging to a directional control will give a highlighted preview of the new pane location. Dropping on the directional control will place the window at that location.
RMC70/150 and RMCTools User Manual To float a dockable pane, in the title bar, click the arrow and choose Float. Resetting the Window Layout If the windows become jumbled, on the Window menu, choose Reset to Basic Layout. If you are using a small monitor, the Reset to Small-screen Layout will auto-hide the Project pane and Command Tool, freeing up space for other windows, such as the Plot Manager. 4.3.
4 Using RMCTools 4.4.1. RMCTools Project The RMCTools project contains all the information involved in setting up and programming the RMC. To save the project, on the File menu, click Save. The project will saved to a file with the ".rmcproj" extension.
RMC70/150 and RMCTools User Manual To access this pane: The Project pane should already be open in RMCTools. If it is not, on the View menu, click Project, or press Alt+0. The Project pane provides an hierarchical overview of the components of the RMCTools Project. All components can be accessed from the Project pane by double-clicking or rightclicking the item. For ease of use, leave this pane open when using RMCTools.
4 Using RMCTools Multiple User Programs may be created for each controller. Right-click User Programs and choose New Program to create a new program. You can sort the user programs by name or by number. To do so, right-click User Programs and choose Sort by Name or Sort by Number. The Task Monitor is for monitoring user programs. On the View menu, click Task Monitor. Curves Double-click to open the Curve Tool. Indirect Data Map Double-click Indirect Data Map to edit it.
RMC70/150 and RMCTools User Manual 4.5.2. Connection Path To access this dialog: Right-click the desired controller in the Project pane and choose Connection Path. Or: On the Controller menu, click Connection Path. The Connection Path specifies how RMCTools connects to the RMC. Connection Methods The following connection methods are possible for the RMC: Controller Connection Methods RMC75E USB, Ethernet RMC75S Serial Port RMC75P Serial Port RMC150E USB, Ethernet To Select a Connection Path 1.
4 Using RMCTools Going Online or Offline To go online or offline, select the desired controller in the Project pane, then, on the toolbar, click the Controller button and choose Go Online or Go Offline. The toolbar controller indicator shows whether RMCTools is online or offline: Offline. Online and the controller is in PROGRAM Mode. Online the controller is in RUN Mode. Connecting to a Controller Use these steps to connect from RMCTools to the RMC using the monitor port: 1.
RMC70/150 and RMCTools User Manual To access the Communication Statistics Window: In the Project pane, select the desired controller. On the Controller menu, click View Communication Statistics. The Communication Statistics window displays a number of diagnostic counters that are useful for monitoring and troubleshooting the communication via the standard port and the Monitor Port. For more details, see the Communication Statistics topic. Some of the communication statistics can be cleared (rest to zero).
4 Using RMCTools Variable values can be remembered between power cycles by marking them as retentive (RMC75E and RMC150E only), or by updating Flash. The table below compares each method. Usually, marking variables as retentive is a better choice than using Flash.
RMC70/150 and RMCTools User Manual 4.6.2. View/Change Controller Hardware To access this dialog: In the Project pane, right-click Modules and click View/Change Modules. Use this dialog to view and change the RMC hardware modules. The image in the dialog displays the complete RMC along with the part number. The modules in the project can only be changed when RMCTools is offline with the RMC. For each section, choose Change, Add or Delete to change, add or remove a module.
4 Using RMCTools To view the values in the RMCTools project, click the Show Project Values button To view the values in the RMC, click the Show Controller Values button . If the values in the RMC and in the RMCTools project are identical, the Show Controller Values button will be disabled. . Uploading and Downloading Values After making changes to any editable parameters in the Axis Tools, you must download the changes to RMC.
RMC70/150 and RMCTools User Manual 4.7.1.3. Axis Parameters Pane To access this pane: On the RMCTools toolbar, click the Axis Tools button not appear, use the Select Layout box . If the Axes Parameters pane does to choose the Axes Parameters pane, or press F6. To access from the Plot Manager: Click the Tuning tab (next to the History tab). The Axis Parameters pane is part of the Axis Tools. It is also part of the Tuning Tools.
4 Using RMCTools To hide a column, right-click the column heading and click Hide Column. To see it again, right-click any column heading, click Add Column, and click the desired column name. 4.7.2. Axis Definitions Dialog To access this dialog: In the Project pane, expand the Axes folder and double-click Axis Definitions. Or: From the Axis Definitions page of the New Controller Wizard, click View/Change Axis Definitions.
RMC70/150 and RMCTools User Manual Note: It is possible to add more analog inputs on the RMC70 than can be assigned to axes. However, it is still possible to view the voltage of the extra analog inputs using the Analog Input Registers. Inputs that are unassigned to axes can have no status bits, error bits, scaling, filtering, etc. Change the Order of Axes Note: Delta recommends defining the order of the axes at the beginning of the project.
4 Using RMCTools To send a command to one axis: a. Determine which axis you wish to send a command to. b. In the Cmd box for the desired axis, select a command. There are several ways to do this: • In the Cmd box, begin typing the name of the command and then select it from the list that opens upon typing. • In the Cmd box, begin typing the number of the command and then select it from the list that opens upon typing. • In the Cmd box, click the ellipsis button command tree.
RMC70/150 and RMCTools User Manual 4.9.1. Plot Manager Overview To access the Plot Manager: On the Plots menu, click Open Plot Manager. Use the Plot Manager to: • View Plots From the Plot Manager, you can start, trigger, save and export plots. • Tune the Axes Use the Tuning Tools to efficiently and easily issue commands, change and download gains, and view plots of moves. • Edit Plot Templates Access the Plot Template Editor from the Plotting tab.
4 Using RMCTools menu, click Rearm Plot. You can also use the Trigger Plot (102) and Rearm Plot (103) commands. Triggering a plot will cause the RMC to start capturing plot data and store the data internally. To view it, you will also need to upload the captured plot. You can change the trigger settings. See Triggering Plots for details. • Save Plots Plots you have uploaded are listed on the History tab and can be saved. To save plots, on the Plot Manager toolbar, click • Save Plot(s).
RMC70/150 and RMCTools User Manual • Start a Trend Click Trend. History Tab The History tab, located in the upper left pane, displays a list of all the plots you have uploaded. Every plot that is uploaded from the module is automatically saved under the Recently Uploaded Plots folder in this list. The following actions can be done in the History view: • View an Uploaded Plot On the History tab, click the uploaded plot you wish to view. • Delete an Uploaded Plot Select the plot, then click Delete.
4 Using RMCTools • Number Format This sets the number of decimal places to display. Right-click an item in the Plot Details and choose Format Number. Choose a format option and click OK. • Add Pen If an item does not have a pen associated with, you can right-click the item in the Plot Details, choose Add Pen, then select a color to show the line in the plot. Absolute Time In the Plot Detail window, you can choose to display the absolute time of the cursor.
RMC70/150 and RMCTools User Manual Using the Plot Template Editor The Plot Template Editor has two main sections, General Settings and Individual Plot Settings. After making any changes to the plot settings, click the Download button in the Plot Template Editor toolbar to apply the changes to the RMC. General Settings The General Settings section is used to specify how the RMC plot memory will be divided between the plots in the plot set. The RMC has a fixed amount of memory dedicated to plots.
4 Using RMCTools Plot template sets are for advanced usage, can be confusing, and are hidden by default. You will likely never need to use them. All the plot templates together are called a plot template set. Normally, the RMC has only one plot template set, but you can create multiple plot template sets, of which one can be active at a time. See Using Plot Template Sets for more details. 4.9.4. Using Custom Plots Each individual plot in a plot template can be set as either a Default or Custom plot.
RMC70/150 and RMCTools User Manual 1. Click the Format cell for the desired plot quantity and click the ellipsis button. 2. Choose from the following: a. Fixed Number of Decimal Places The number will be represented with a fixed number of decimal places. For more details, click the Help button. b. Fixed Number of Digits of Precision The number will be represented with a fixed number of digits of precision. For more details, click the Helpbutton. 3. Click OK.
4 Using RMCTools Setting Description Enable Automatic Trigger If this checkbox is set, a plot will automatically trigger when the action in the Trigger Type box occurs. Notice that the plot must be rearmed before it will trigger. Trigger Type Only valid if the Enable Automatic Trigger is selected. Specifies the action that will cause a plot to automatically trigger. Motion Commands: The plot will trigger when a motion command is issued to the specified axis.
RMC70/150 and RMCTools User Manual such as Target and Actual Position. The smaller the number, the closer the items tracked. Choose Standard Error Quantity to select the Mean Squared Error between the Target and Actual Values of an axis control quantity. Choose Custom Error Quantity to select the Mean Squared Error between any two registers that you choose. • Rate of Change of a Register This option will plot the calculated rate of change of a register.
4 Using RMCTools The System Identification tool calculates system models for the currently displayed plot. The System Identification tool assigns a score to each model, with a lower number indicating a better fit. This tool does not apply the calculated models to the axis. However, you can manually enter these values in the axis' model parameters. Use the Tuning Wizard to calculate a system model and apply the values to the axis parameters.
RMC70/150 and RMCTools User Manual Tuning Parameters You can change the tuning parameters and then download them to the controller by clicking the Download button. For challenging tuning systems, you also have access to all the axis parameters, just as in the Axes Parameters pane in the Axis Tools. Status Registers This section provides you with basic axis information. For example, the Actual Position is helpful so you know which direction to move the axis.
4 Using RMCTools Tip: For a typical hydraulic cylinder position axis, the Accel and Decel parameters of the Move absolute command are typically on the order of 10 to 100pu/sec2. The speed is typically between 1 and 30pu/sec. Examples: d. Repeat the previous step for the other command button. For position axes, make sure to enter the same velocity, acceleration, and deceleration, but a different position. For pressure/force axes, use the same ramp time, but a different pressure/force value. e. Click OK.
RMC70/150 and RMCTools User Manual d. To see how your tuning has progressed, or to see which gains you used several moves ago, click the History tab and choose a plot. The Parameters tab below the Plot Details window displays the gains that were used for each plot. 4.11. Programming 4.11.1. Programming Folder Overview The Programming folder in the Project Pane contains the components for programming the RMC.
4 Using RMCTools • Delete a Step: On the Step Editor toolbar, click the Delete Step button. Or, right-click in the white space below the step number and choose Delete. • Moving a Step: Click in the white space below the step number and drag the step to the desired location. Or, select the step and use the Move Step Up on the toolbar. and Move Step Down buttons When adding and deleting steps, the Step Editor automatically updates the Link Jump To numbers.
RMC70/150 and RMCTools User Manual The Commanded Axes specifies which axes to issue the command to. • Click the Command Axes button and choose the axes you wish to issue the command to. For example, selecting Axis 0 and Axis 1 will make the command be issued to both axes. • The Default Axis and Use Expression options are typically used only in advanced applications. If you choose Default Axis, the command will be issued to the same axis as the Start Task command was issued to.
4 Using RMCTools 4.11.3. Program Triggers To access the Program Triggers: In the Project pane, expand Programming, and doubleclick Program Triggers. The Program Triggers start user programs when user-specified events occur. For example, you can set up the Program Triggers to start a user program when an input turns on, or to start a user program when a variable becomes a certain value. This is a good way to start RMC user programs from a PLC or host controller.
RMC70/150 and RMCTools User Manual The first trigger will cause the user Program "Cycle" to be started on Task 0 when the variable StartProgram becomes 1, and the second trigger will cause the user Program "MoveHome" to be started on Task 0 when the variable StartProgram becomes 2. As illustrated here, writing to a variable that triggers a user program is an easy way for a PLC to start a user program in the RMC. Notice that the user program will be started when the condition becomes true.
4 Using RMCTools To print the Program Triggers, on the Program Triggers Editor toolbar, click the Print button. Or, on the File menu, choose Print. Special Case: When the RMC Enters RUN Mode When the RMC transitions from PROGRAM mode to RUN mode, it assumes all the Program Trigger conditions were previously false.
RMC70/150 and RMCTools User Manual 4. On the RUN/PROGRAM page of the Program Properties dialog, set the RMC to start up in RUN Mode. 5. Update Flash. 6. Cycle power to the controller. You can view the Event Log Monitor to see if the user program did start immediately after the RMC powered up. See the Example: Closed Loop Motion on Startup for a detailed walk-through example.
4 Using RMCTools Starting and Stopping User Programs To start a User Program: • Right-click a Task listed in the Task Monitor, choose Start Task, and click the desired User Program. To stop a User Program: • Right-click a Task that is running and click Stop Task. Customizing the Task Monitor To hide the Program Triggers Task or Default Axis: • Right-click anywhere, and choose Hide Program Triggers Status or Hide Default Axis.
RMC70/150 and RMCTools User Manual • Type a value and press Enter. • • Click the Download button to apply the changes to the RMC. The variable will immediately be set to the Initial Value. Variables are also set to the Initial Value when the RMC is restarted. When the Variable Table is downloaded to the controller, the Current Value will be set to the Initial Value for all variables for which the Initial Value changed.
4 Using RMCTools is downloaded to the controller. The Current Value will be set to the Initial Value for all variables for which the Initial Value changed. Choosing the Address Format The addresses of the variables are displayed in the Register column. To change the address format, right-click any cell in the Register column, choose Address Formats, and choose the desired format. Columns Tip: To hide a column, right-click the column heading and click Hide Column.
RMC70/150 and RMCTools User Manual User functions are custom functions created or imported by the user. User Functions provide flexibility and efficiency for advanced applications. Most applications do not need user functions. User functions can be used anywhere expressions are used in the RMC, including the Expression (113) command, link conditions in user programs, and the Program Triggers. User functions can have any number of parameters, and return a single value as the result.
4 Using RMCTools Variable Declarations Functions can have input variables, output variables, input/output variables, and local variables. For details, see Declaring Variables in User Functions. Editing the Function Body The function body contains the code that the function executes when it is called. The code in the function body must follow the same syntax as the code used in the Expression (113) command. For details, see the assignment expressions topic.
RMC70/150 and RMCTools User Manual Exporting User Functions 1. Right-click in the function list pane and choose Export User Functions. 2. Choose the functions to export, then click OK. 3. Browse to the desired location, enter a filename, then click Save. Calling User Functions To insert a user function into an expression: 1. Begin typing the name of the function and choose the function from the pop-up list. Or, browse for the function on the Function tab of the Expression Editor and doubleclick it. 2.
4 Using RMCTools Column reference the I/O point in User Programs or the Program Triggers, but the preferred method is to use the tag name. Assigned To Displays the physical location of the I/O point. RMC70 expansion modules are numbered 1 to 4, starting closest to the RMC70 base unit. RMC150 slots are named, from left to right, Comm, CPU, Sensor 1, Sensor 2, Sensor 3, and Sensor 4. RMC70 Example: D8 [Exp#2] I/O 4. This I/O point is located on the second expansion module, which is a D8, on I/O 4.
RMC70/150 and RMCTools User Manual Output - Forced Off Output - Forced On Input - Off Input - On Input - Forced Off Input - Forced On Discrete I/O Tags and Addresses In the I/O Monitor, you can choose to view the address, tag name, or neither, of each input and output. • In the I/O Monitor, right-click anywhere, point to Labels, and click None, Address, or Tag. If you choose Tag, and a tag name has not been assigned to the I/O point, the address will be displayed instead.
4 Using RMCTools The Curves in Project window displays the curves in the project. The Curves In Controller window displays the curves in the controller. Curves are created and edited in the project. Curves in the controller can only be viewed. Creating a New Curve 1. In the toolbar, click the Create New Curve button. The new curve will appear in the Curves in Project window.
RMC70/150 and RMCTools User Manual In the graph, click and drag the hairline cursor. Or, right-click in the graph and choose Move hairline here. The X, Y, velocity, and acceleration values at the cursor location will be displayed on the Hairline tab in the Properties pane. Viewing Curve Velocity and Acceleration with Limits 1. On the toolbar, click the Show/Hide Velocity and Show/Hide Acceleration buttons. This will display the curve's velocity and acceleration in the graph view. 2.
4 Using RMCTools Curves can be imported from a separate file into the project. 1. In the Curves in Project window, right-click and choose Import Curves. 2. Choose the file to import from, then click Open. The file extension of curves that can be imported is .rmccrvs. 3. Check the curves you wish to import, then click OK. Deleting a Curve in the Project In the Curves in Project window, select a curve and press Delete.
RMC70/150 and RMCTools User Manual the natural slope of the interpolated curve. • Cyclic - Matches the velocity of the first and last point so that the curve can be run cyclically. Overshoot Protection For cubic-interpolated curves, eliminates overshoot of any local maximums or local minimums in the curve points. For details, see Curve Interpolation Methods and Options.
4 Using RMCTools 4.13.1. Indirect Data Map Editor To access this editor: Expand the desired controller in the Project pane, then double-click Indirect Data Map Editor. Or: Press Alt+0 to open the Project Pane. Use the arrow keys to highlight Indirect Data Map. Press Enter. Use this editor to view and edit the Indirect Data Map. The Indirect Data Map is intended primarily for certain communication types. See the Indirect Data Map topic for instructions on using the Indirect Data Map.
RMC70/150 and RMCTools User Manual The addresses of the registers in the Indirect Data Map are displayed in the Reg # column. To change the address format, right-click any cell in the Reg # column, choose Address Format, and choose the desired format. 4.14. Shortcut Sets 4.14.1. Shortcut Commands Shortcut Commands are used to quickly send a command to an axis. You can assign one or more commands to each shortcut key.
4 Using RMCTools • On the main toolbar, in the Active Shortcut Command Set box, choose a shortcut command set. The shortcut command set will become active immediately: Creating a New Shortcut Command Set • In the Project pane, right-click Shortcut Sets, and click New Shortcut Set. A new shortcut command set editor will open. For details on using the editor, see the Shortcut Command Set Editor topic.
RMC70/150 and RMCTools User Manual 1. Highlight the entire command by clicking the word Command, or the whitespace above the Command box. 2. Press Delete. 4.15. Event Log 4.15.1. Event Log Monitor To access this dialog: In the Project Pane, double-click Event Log. The Event Log Monitor is one of your most important troubleshooting tools. The Event Log Monitor displays all events that have occurred in the controller, such as issued commands, changed parameters and errors.
4 Using RMCTools Saving the Event Log To save the Event Log, click the Save Event Log button on the toolbar in the Event Log window. A Save As dialog will open. Drowse to a folder, enter a filename and click Save. The sEvent Log will be saved with the file extension "rmcelog". Pausing the Event Log Monitor To Pause the Event Log Monitor, click the Pause Event Log button on the toolbar in the Event Log window.
RMC70/150 and RMCTools User Manual view these events, you must set the filter to include them. Other events that appear by default may sometimes flood the log - such as user program step transitions - and make it difficult to see other events. You can set the filter to exclude these events. To change the filter configuration, on the Event Log toolbar, click the Event Log Properties button.
4 Using RMCTools Parameters Changed Logs all changes to the Axis Parameters. Pressure/Force Mode Changes Logs all changes to the pressure/force mode. Home/Latch Events Logs Home/Latch input triggers. Advanced Feedback and Simulator Events Logs Feedback Model and Simulator Model events. Debug Target Info Logs target generator solutions. Tasks Step Transitions Logs all transitions between steps. Expression Events Logs an event for every assignment within an expression.
RMC70/150 and RMCTools User Manual Data Channel 0 Logging For the Basic/Enhanced modes, logs the specified actions from Data Channel 0. None: Do not log any actions from Data Channel 0. Requests: Log only read or write requests from Data Channel 0. All: Log every change in the Data Channel 0 data. Data Channel 1 Logging For the Basic/Enhanced modes, logs the specified actions from Data Channel 1 (available only in Enhanced RMC PROFIBUS modes). None: Do not log any actions from Data Channel 1.
4 Using RMCTools Functions, User Programs) Current Value of Variables In the Variable Table Editor, on the Monitor tab, on the toolbar. Curve Tool In the Curve Tool toolbar. Indirect Data Map In the Indirect Data Map Editor toolbar. Plot Templates In the Plot Template Editor toolbar (download only). To upload, right-click Plots in project pane. Event Log filter Settings In the project pane, right-click the Event Log folder.
RMC70/150 and RMCTools User Manual or warnings caused by a program running in the RMC, but you still want to see error resulting from actions in RMCTools, such as issuing a command with invalid parameters. To disable the Error Bubble Pop-up: • Right-click the Error Icon and choose Disable Error Popup. The Error Bubble will no longer pop up. Or, right-click the Error Icon and choose Pop up for Local Errors Only. The Error Bubble will only pop up for errors caused by action in RMCTools.
4 Using RMCTools If the upload or download is successful, the Output window will automatically close after 0.5 seconds. In the RMCTools Options dialog, in the Environment: General section, this option can be disabled. 4.16.5. Verify Results Window To access this window: On the View menu, click Verify Results, or press Alt+2. The Verify Results window shows the results of the Verify Programs operation. When RMCTools verifies the User Programs, it checks the User Programs and Program Triggers for errors.
RMC70/150 and RMCTools User Manual The Options dialog contains various RMCTools settings. These settings apply to RMCTools, and are not saved to the project file or the RMC controller. The Options dialog contains the following sections: Environment Page Startup Choose what happens when RMCTools starts up. Address Format This applies to windows that show register addresses, such as the Axis Tools, Indirect Data Map Editor, and Variable Table Editor.
4 Using RMCTools • Remote: This setting is intended for slow or unreliable Internet connections. 4.16.8. Communication Log The Communication Log is a file that records the communication between RMCTools and the RMC. This log is only useful when requested by Delta technical support. To save the Communication Log • On the Controller menu, choose Save Communication Log.
RMC70/150 and RMCTools User Manual F2 Rename Find Ctrl + F Replace Ctrl + H Find All Ctrl + Shift + F Find Next F3 View Menu Commands Key Action Alt + 0 Open Project pane Alt + 1 Open Output window Alt + 2 Open Verify Results window Alt + 3 Open I/O Monitor Alt + 4 Open Find Results window Alt + 5 Open Task Monitor Alt + 8 Open Command Tool Alt + 9 Bring focus to current editor Ctrl + T Open Axis Tools Ctrl + E Open Event Log Monitor Alt + Enter View Properties of selected
4 Using RMCTools Editor Menu Commands (Step Editor for User Programs) This menu is available when the Step Editor is open. Key Action Ins Add Step Before Alt + Ins Add Step After Ctrl + Shift +Z Append Step Ctrl + Ins Add Command Before Alt + Ctrl + Ins Add Command After Alt + Ctrl + Z Append Command Ctrl + Q Edit Comment Ctrl + L Edit Label Ctrl + P Print Current User Program Editor Menu Commands (User Function Editor) This menu is available when the User Function Editor is open.
RMC70/150 and RMCTools User Manual Arrow or Keypad + Left Arrow or Collapse an item Keypad Up Arrow Move up one item Down Arrow Move down one item Enter Open an item Alt + Enter Properties Shift + F10 Shortcut menu Axis Tools and Indirect Data Map Key Action Ctrl + D Download Parameters Ctrl + U Upload Parameters F6 Switch between Axis Status Registers and Axis Parameter Registers Command Tool Key Action Ctrl + H Open Command History Ctrl + Shift + number Store current command (num
4 Using RMCTools wheel Arrow Keys Move cursor Page Up Move cursor to left Page Down Move cursor to right Home Move cursor to end of plot End Move cursor to beginning of plot Ctrl + W Close selected plot file Plot Template Editor Key Action Ctrl + D Download the plot templates Ctrl + Pg Down Open the next tab Ctrl + Pg Up Open the previous tab Ctrl + N Add a new quantity in a custom plot Delete Delete a plotted data quantity in a custom plot Ctrl + Down Move the selected quantity do
RMC70/150 and RMCTools User Manual Browser F6 Changes focus between the editor to the Expression Browser. Ctrl + Tab The Expression Browser Opens the next tab. Variable Table Key Action Ctrl + D On Edit tab: Download Variable Definitions On Monitor tab: Download Current Values Ctrl + P On Edit tab only: Print Variable Table Ctrl + Pg Down Open the next tab Ctrl + Pg Up Open the previous tab 4.16.10.
4 Using RMCTools To paste text or table cells: 1. Click the desired paste location or move the cursor to the desired paste location. 2. Paste the text or cells: • With the menu: On the Edit menu, choose Paste. • With the shortcut menu: Right-click the desired paste location and choose Paste. • With the keyboard: Press Ctrl+V. Pasted text will be inserted at the selection. Pasted cells will overwrite the existing cells.
RMC70/150 and RMCTools User Manual 3. Enter the desired replacement text in the Replace with box. 4. Set the Find options as desired. 5. To find the next occurrence, click Find Next or press F3. To replace the currently highlighted occurrence, or the next occurrence, click Replace. To replace all occurrences, click Replace All again. 4.16.12. Printing in RMCTools To print the desired item, on the toolbar within the desired editor, click the Print button Or, on the File menu, choose Print. .
4 Using RMCTools Analog Acceleration Scaling Analog Pressure/Force Scaling MDT Scaling SSI Scaling Quadrature Scaling Resolver Scaling 4.17.2. Autotuning Wizard: Welcome Page Next Wizard Page To access this wizard: In the Axis Parameters Pane, on the Tune tab, in the Tools and Wizards section, on the Position Tuning Wizard row, click Launch. Choose Use Autotuning Wizard and click Next. Or, In the Plot Manager, on the Tuning tab, click Tuning Wizard. Choose Use Autotuning Wizard and click Next.
RMC70/150 and RMCTools User Manual 4.17.3. Autotuning Wizard: Enter Move Parameters Page Previous Wizard Page Next Wizard Page In the Axis Parameters Pane, on the Tune tab, in the Tools and Wizards section, on the Position Tuning Wizard row, click Launch. Choose Use Autotuning Wizard and click Next. Or, In the Plot Manager, on the Tuning tab, click Tuning Wizard. Choose Use Autotuning Wizard and click Next. On this page of the Autotuning Wizard, enter the parameters for the moves you will make.
4 Using RMCTools The parameters you enter on this page affect the Control Output profile as described below: Section A: The Control Output ramps up to the user-specified Output Voltage at the specified Ramp Rate. The Control Output stays at that value until the axis stops accelerating, at which point it goes to section B. Section B: The Control Output ramps down to half of the user-specified Output Voltage.
RMC70/150 and RMCTools User Manual might not necessarily take up the entire distance specified by the Maximum Distance parameter, but it will typically move much further during autotuning than a velocity mode system will. The parameters you enter on this page affect the Control Output profile as described below: Section A: The Control Output (green line above) ramps up to the user-specified Output Voltage at the specified Ramp Rate.
4 Using RMCTools 1. Enter Desired Position Range Enter the desired range of position travel. For rotary axes, choose the number of position units per rotation. 2. Enter Maximum Velocity This is the velocity at which the axis will move with 10 V of Control Output. 3. Enter Maximum Acceleration For best results, set this value significantly higher than the acceleration rates you intend to use on the axis.
RMC70/150 and RMCTools User Manual over Ethernet box must be checked in the Ethernet Settings Page, and the controller must be running firmware 3.30.0 or newer. Introduction Page 1. Click Next to proceed to the next page. Select a File Page 1. Click Browse to select the firmware file. You must have previously downloaded the RMC firmware file from Delta's download web page and saved it to your computer. 2. Click Next to proceed to the next page.
4 Using RMCTools Page Setup: Setup the page margins for printing. Print: Print the current editor. Exit: Close the project and close RMCTools. You may be prompted to first save the current project. Edit Undo: Undo the last action. This is only available in certain editors. Redo: Redo the previously undone action. This is only available in certain editors. Cut: Copy and delete the current selection to the clipboard. Copy: Copy the current selection to the clipboard.
RMC70/150 and RMCTools User Manual Download All to Controller: Downloads all the parameters from the project to the currently selected controller. This will overwrite the controller values. Upload All from Controller: Uploads all the parameters from the currently selected controller to the project. This will overwrite the project values. Save Communication Log: Saves the log of RMCTools communications with the RMC. This is only useful when requested by Delta technical support.
4 Using RMCTools Open Plot File: Open a saved plot file. Recent Plot Files: List of recently saved or opened plot files. Select Active Plot: Select which of the Plot Templates is active. The Capture and Trend buttons on the Plot Manager Toolbar apply to the active plot template. Start Trend: Start a trend using the active plot template. Upload Captured Plot: Upload a captured plot using the active plot template. Stop Trend/Upload: Stop the current upload or trend in progress.
RMC70/150 and RMCTools User Manual Append Command: Add a command after the other commands in the step. Remove Command: Delete the selected command. Move Command Up: Move the currently selected command up one. Move Command Down: Move the currently selected command down one. Add Condition Before: Add a condition above the currently selected condition. Add Condition After: Add a condition below the currently selected condition.
4 Using RMCTools The following buttons are available on the Standard Toolbar: New Project Creates a new . Open Project Opens an RMCTools project. Save Project Saves the RMCTools project. Cut Cuts the selection and places it in the clipboard. Copy Copies the selection to the clipboard. Paste Pastes the clipboard contents. Controller Indicates the state of the controller. RMCTools is not communicating with the controller.
RMC70/150 and RMCTools User Manual Help Opens the help. 4.18.3. Shortcut Command Toolbar Use Shortcut Command Toolbar to issue Shortcut Commands. To Issue a Shortcut Command • Click on one of the numbered buttons to issue the commands assigned to that button for the selected shortcut set. The grayed buttons do not have not been assigned any commands. • Or, press Ctrl + num on the keyboard, where num is the number of the button, e.g. Ctrl+2.
5. Programming 5.1. Programming Overview The RMC has a rich set of pre-programmed high-level motion commands. In addition, it can easily be programmed to perform simple motion sequences or complex actions. With the RMC features listed below, motion applications can be done entirely within the RMC, or in conjunction with a PLC. Note: In order to run User Programs or the Program Triggers, the RMC must be in RUN mode. See the RUN/Program Mode topic for details.
RMC70/150 and RMCTools User Manual See the Program Triggers topic for details. Variables Variables make the User Programs very flexible. Variables can be used to effortlessly change programs, make programs readable, and easily influence User Programs via a PLC. Variables may be used in command parameters, the Expression (113) command, and several Link Types. Variables can be individually selected to be retentive.
5 Programming See the User Programs topic for details on how to create and run user programs to issue to commands to the RMC. Issuing Commands from a Host Controller, such as a PLC or HMI You can issue commands directly to the RMC from a host controller, such as a PLC or HMI. It is possible to issue commands to multiple axes simultaneously. Via PROFIBUS See the PROFIBUS Overview topic and read the topic of the mode you are using. Via PROFINET IO See the Using a PROFINET I/O Connection topic.
RMC70/150 and RMCTools User Manual The user wishes to issue the following move absolute command to Axis 1 of the RMC70: Move Absolute(20): • Command Parameter 1: Position = 5.2 in. • Command Parameter 2: Speed = 14 in./sec • • Command Parameter 3: Acceleration = 100 • Command Parameter 5: Direction = 0 Command Parameter 4: Deceleration = 100 With Allen-Bradley DF1 Addresses: From the RMC70 Register Map - File 25 Commands, we see that the addresses for the Axis 1 command registers are F25:10-19.
5 Programming With Modbus/RTU or Modbus/TCP Addresses: From the RMC150 Register Map - File 40 Commands, we see that the addresses for the Axis 0 command registers start at register offset 20481. The offsets must be prefixed with a 4. To issue this command to the RMC70 via Modbus/RTU or Modbus/TCP, the user programs the PLC to do the following: d. Write 90 to 420481 e. Write 0 to 420483 f. Write 8 to 420485 Command Format Each RMC command consists of a command number and command parameters.
RMC70/150 and RMCTools User Manual processed a non-immediate command this control loop. Command sets remaining in the command queue will be processed in subsequent control loops. Notice that commands issued as part of the same command set will never be split between different control loops. That is, either all of the commands in the command set will be processed in the control loop, or none of them will be and the entire command set will be deferred to the next control loop.
5 Programming • Task Monitor in RMCTools In the Task Monitor, right-click a task and click Start Task. • Project Pane In the Project pane, in the User Programs node, right-click a user program, choose Run Program, and click the task to run the program on. Note: If a user program is started on a task that is already running, the task will stop the user program it is already running and immediately start at the User Program you specify.
RMC70/150 and RMCTools User Manual • Apply the changes to the RMC by right-clicking Programming and clicking Download Programs to Controller. Assigning User Programs to Tasks By default, a user program is allowed to run on only one task at a time. This setting is usually sufficient for most applications. You can change this to specify a certain task that the user program is allowed to run on, or allow the user program to run on any number of tasks simultaneously.
5 Programming To change the default task, you can use the _Task[].CurAxis tag. The tag _CurAxis is equivalent to _Task[].CurAxis, which references the current axis of the current task. Example 1 "_Task[0].CurAxis := 2" will change the default axis of the task zero to Axis 2. Example 2 "_Task[].CurAxis := 0" will change the default axis of the current task to Axis 2. The current task is whatever task is running the user program. 5.4. Variables This topic is about the Variable Table variables.
RMC70/150 and RMCTools User Manual Tag Name The name of the variable. Use the Variable name to refer to the variable. You can also reference the variable by its register address, especially if communicating to the RMC with a PLC. Tag names are limited to 64 characters. Units The units of a variable is purely for the user's own reference. It has no affect on the usage of the variable. Type This can be any of the RMC data types, or an array of variables with the same data type.
5 Programming • Use the Edit tab of the Variable Table Editor to set the initial value. The Initial value is the value the variable will take on when the RMC is reset. • Use the Monitor tab of the Variable Table Editor to set the current value of the variable. • Use the Expression (113) command in a User Program to assign a value to a variable. • Write to the Variable register via a PLC or other host controller.
RMC70/150 and RMCTools User Manual When the RMC boots up, the Current Values for all variables will start at zero, and then if a variable has an Initial Value stored in Flash, the Current Value will be overwritten with this Initial Value. Further, if the variable is marked as retentive and was retained to nonvolatile memory, the Current Value will be set to the retained value. This is all done before the first loop time of the RMC. Therefore, the precedence on boot-up is (1) NVRAM, (2) Flash, (3) zero.
5 Programming The Program Triggers has one column for each Task. To increase the number of tasks, use the General page of the Programming Properties dialog. Example This is an example of two triggers in the Program Triggers: The first trigger will cause the user Program "Cycle" to be started on Task 0 when the variable StartProgram becomes 1, and the second trigger will cause the user Program "MoveHome" to be started on Task 0 when the variable StartProgram becomes 2.
RMC70/150 and RMCTools User Manual To move rows up or down, select one or more rows, then use the Move Up and Move Down buttons. To delete rows, select one or more rows, then click the Delete Row button. The order of the triggers can be important. If several conditions become true at the same time and multiple actions are triggered on the same Task, the last action for that Task will be the one that runs.
5 Programming 5. In the Task columns, choose the user program you wish to run. You must have created a user program first. 6. To apply the changes to the RMC, right-click Programming and click Download Programs. Starting a User Program when the RMC Powers Up To automatically start a user program when the RMC powers up: 1. Create a user program that contains the commands you would like to run when the RMC powers up. 2. In the Program Triggers, create a condition using the _FirstScan bit as described above.
RMC70/150 and RMCTools User Manual After changing any items under the Programming node in the Project Pane, you must download the programs to the RMC to apply the changes to the RMC. To download the programs: 1. In the Project Pane, right-click Programming and click Download Programs. 5.7. Tag Names Each register in the RMC is considered a tag. In RMCTools, each tag has a tag name. Tag names can only be used for programming in the RMCTools. Most tags have a fixed name, also referred to as system tags.
5 Programming Entering Tag names You do not have to remember the tag names in order to use them. The Address Selection Tool can be used to find tag names. To access the Address Selection Tool from a User Program command parameter box, or from a link type, click the ellipsis button ( ). In the Expression Editor, the Tags box lists all the tags. Special Tag Names Controller The following controller tag names are useful for certain advanced programming applications.
RMC70/150 and RMCTools User Manual Reducing the Program Size The RMCs have the following amount of memory allocated for the entire Programming node which includes the user programs, Program Triggers, and plot templates. Notice that the Tuning Wizard borrows about 8KB when it needs to run. Therefore, if a controller has less than 8KB of free program memory, the Tuning Wizard may not be able to download its program. CPU RMC75E (1.1G or newer) RMC75E (1.
5 Programming In the RMCTools Options dialog, in the Programming section, you can choose to display the execution times that RMCTools calculates for the user programs. This can help you determine what steps are causing problems. There are several ways of reducing the time usage: • Decrease the number of tasks allocated This may significantly reduce the worst-case calculations of the time usage.
RMC70/150 and RMCTools User Manual RMC75P (2.1F or newer) 3.31.0+ RMC75P (2.1E or older) 3.31.0+ 3000µs/2500µs 1000µs/600µs (note 5) (note 4) 3000µs 1000µs 500µs/250µs 210 µs (note 3) (note 1) 250µs -- -- -- (note 1) Note 1: These loop times are only supported in certain controller configurations. See the loop time topic for details. Note 2: If the RMC150 has 3 or fewer axes with any number of reference axes, or 4 control axes with up to 2 reference axes, 500µs is allocated.
5 Programming prevents the controller image from being uploaded via the Controller Image Upload/Download area. Enable Programming Security If you wish to apply security to the user programming source code, do the following: 1. In the Project Pane, right-click Programming and choose Properties. 2. On the Security page, click the Display Copyright notice checkbox. The RMCTools Security Policy and Agreement will open. 3. Read the RMCTools Security Policy and Agreement.
RMC70/150 and RMCTools User Manual locked copyright notice or programming is saved, the Programming portion will be saved in encrypted format. A project with a locked copyright notice or programming can still be downloaded to an RMC. To lock the copyright notice or programming: • On the Programming menu, choose Lock Copyright or Lock Programming. Now the security settings cannot be changed.
5 Programming • If you have provided the contact information in the copyright notice field during User programming, Delta will make a good faith effort to contact you and request instructions on assisting the end user. If contact by Delta is made by electronic means rather than in-person, Delta will allow for a sixty (60) minute response time.
RMC70/150 and RMCTools User Manual User Programs run on Tasks. One User Program can run per Task. The RMC70 has up to four Tasks and therefore, up to four User Programs can run simultaneously. The RMC150 has ten Tasks and therefore, ten User Programs can run simultaneously. To start a User Program, issue the Start Task (90) command. It starts the specified User Program on the specified Task. A User Program can also be started on a Task from within a User Program or from the Program Triggers.
5 Programming Expressions The Expression command makes the User Programs very powerful. The Expression (113) command can only be used in User Programs. It can be used for mathematical calculations and to assign values to tags or variables. There is no limit to the number of Expression commands that can be issued per step in the User Programs. Local variables can be declared in a step.
RMC70/150 and RMCTools User Manual Note: In order to run User Programs or the Program Triggers, the RMC must be in RUN mode. See the RUN/PROGRAM Mode topic for details. Basics of Creating a User Program Create a User Program 1. In the Project Pane, expand the desired controller, expand the Programming node, right-click User Programs and choose New Programs. 2. Enter a name for the program. Names are limited to 64 characters. 3. Click Finish. The Step Editor will open with the new user program.
5 Programming A maximum of one non-immediate command per loop time can be issued to each axis. There is no limit to the number of immediate commands that can be issued to an axis per loop time. This affects primarily the user programs, since it is difficult to issue many commands via the external communications. To determine whether a command immediate, see the List of Commands. 2. Enter the Command Parameters If the command has any parameters, enter their values.
RMC70/150 and RMCTools User Manual step specified in the Jump To box. You can enter a step number or label, choose a step label from the drop-down list, or type ”Next” to jump to the next step in the sequence. • Wait For Waits for the specified Link Condition to become true before jumping to the next step in the User Program. • Conditional Jump The Conditional Jump link type can have one or more conditions. The conditions are evaluated in order.
5 Programming desired location, or use the Move Step Up and Move Step Down buttons on the Step Editor toolbar. Or, right-click the area under the step number, then choose Move Step Up or Move Step Down. When adding and deleting steps, the Step Editor automatically updates the Link Jump To numbers so that they jump to the same step that they did before the add or delete. For example, if step 3 has a Jump To number of 4, and you insert a step before step 3, then the old step 3 becomes the new step 4.
RMC70/150 and RMCTools User Manual After you have created a User Program, it must be verified before downloading and running it in the RMC. The verify process checks the program for errors that will keep it from running. It does not check for other errors, such as invalid command parameters or bad logic. If the verify finds errors, the verify will fail, and the Programming node will not be allowed to be downloaded to the RMC. To Verify the User Programs 1.
5 Programming 1. See the Issuing Commands topic for details. • Send the Start Task (90) command from a User Program: 1. In the Command box, type "90" and press Enter. 2. Enter the correct values in the Task Number and Program parameters. For details on these parameters, see the Start Task (90) command. 3. Complete the step as described in the Creating User Programs topic.
RMC70/150 and RMCTools User Manual For example, consider the following user program: This user program only runs one step (which takes only one loop time of the RMC), then stops. However, the command that was issued will be processed until it is complete. The axis will move to 20 pu and then stop. 5.11.6. Labeling Steps You can add a label to any step in a User Program. The label may be used in Link Types when specifying the step to jump to. Labels are global: you can jump to a label in any User Program.
5 Programming 5.11.7. Exporting and Importing User Programs User Programs can be exported to a file to be imported later into another project. When exporting a User Program, all the tags it uses are included. When importing the User Program, a dialog guides you in assigning the variables and tags to the new project. Exporting a User Program To export a User Program, in the project pane, right-click the User Program and click Export User Program.
RMC70/150 and RMCTools User Manual 3. When the user program runs, if bits 0, 1, and 3 are set, then the command will be sent to Axis 0, Axis 1, and Axis 3. Example 2: One Command to Each Axis This example demonstrates one method of programmatically removing one or more axes when sending a set of commands to a set of axes. 1. The following variables are defined: a. ActiveAxes: A DWORD that will be define which axes should receive commands. b.
5 Programming A Link Type specifies the condition that makes the RMC jump to and start the next step in a User Program. As a User Program runs, the RMC checks the Link Type of the current step every loop time. When the Link Type evaluates to true, it jumps to the specified step. The step it jumps to is specified by a valid step number or a step label. A maximum of one step can be executed per loop time.
RMC70/150 and RMCTools User Manual To select the Immediate Link Type: • Open or create a User Program. • • Go to the step where you want the Immediate Link Type. • Click Immed. Double-click the Link Type box. 5.11.9.3. Link Type: Jump Note: A Link Type specifies the condition that makes the RMC jump to and execute the next step in a User Program. The Jump Link Type jumps to the step specified in the Jump To box. The Jump destination can contain a step number, a step label, ”Next”, or "Repeat".
5 Programming Box Description Time to Delay The Time to Delay specifies the number of seconds to wait before jumping to the next step in the User Program. It must evaluate to a numeric value and may be any of the following: Jump To • • Constant value • • Variable Register Numeric Expression Specifies the step to jump to. It must be a valid step number, step label, "Next", or "Repeat". To select the Delay Link Type: • Open or create a User Program.
RMC70/150 and RMCTools User Manual 5.11.9.5. Link Type: Wait For Note: A Link Type specifies the condition that makes the RMC jump to and execute the next step in a User Program. The Wait For Link Type waits for the Link Condition to become true before jumping to the next step in the User Program. If you want the User Program to wait a certain period of time, use the Delay link type instead.
5 Programming destination specified in its Jump On True box. If all conditions evaluate to False, then the program jumps to the destination specified in the Jump On False box. The Jump destinations can contain a step number, a step label, ”Wait”, ”Next”, or "Repeat". If the Jump destination is ”Next”, then the program will jump to the next step in the sequence. If the Jump destination is ”Wait”, then the program will stop evaluating the conditions, and reevaluate the conditions the next control loop.
RMC70/150 and RMCTools User Manual than the next loop time after the first step was executed, and the state of the condition in the same loop time that the first step is executed is not considered. Example 1 Consider a program where Step 0 issues a Move Absolute command and has a Conditional Jump link type with a link condition that waits for a discrete input to be on. The Jump on True contains step 1 and Jump on False contains step 2.
5 Programming DINT 32-bit integer number. When typing a DINT number, it must not include a decimal point. DWORD 32-bit string of bits. Each bit in a DWORD data type is a boolean and can be individually addressed by adding "." and then the bit number. Example: MyDWordVariable.12 is a boolean. Note: The DWORD and DINT data types are not interchangeable. A function that requires a DINT will not accept a DWORD. Use a conversion function to convert a DWORD to a DINT or a DINT to a REAL.
RMC70/150 and RMCTools User Manual A BOOL number in the RMC is a single bit. In the RMC, a single bit cannot exist by itself. It is always a part of a of a DWORD value. For details on creating a boolean variable, see the Boolean Variables topic. Addressing a BOOL Value In an expression entered in RMCTools: A boolean number can be addressed in the following ways in an expression. Notice that within the RMC, individual bits cannot be addressed using the DF1 or Modbus/RTU addressing formats.
5 Programming For details on creating a DWORD variable, see the Variables topic. 5.12.5. REAL Data Type A REAL number in the RMC is a 32-bit floating point number, conforming to the IEEE-754 Floating-Point specification. For details on calculations limits due to the nature of REALs, see the Limitations of 32-bit Numbers topic. For details on creating a REAL variable, see the Variables topic. 5.13. Expressions 5.13.1.
RMC70/150 and RMCTools User Manual For examples of expressions, see the Condition Expressions and Assignment Expressions topics. For examples of user programs that use expressions, see the Programming Examples topic. Parts of an Expression The building blocks of all expressions are: Operators These are symbols that represent an action to be performed, such as +, -, /, etc. Functions These are predefined, named formulas, such as SIN(), MIN(), LOG_EVENT(), etc.
5 Programming Register := Expression; where: Register must be writable and may be any of the following: • Variable • Local Variable • • Register - specified by its tag name Register - specified by an address The semicolon at the end is not required if the Expression command contains only one assignment. Expression is a mathematical expression that must evaluate to a numeric value with the same data type as the Register.
RMC70/150 and RMCTools User Manual • In the Tags box, find the desired register and double click it. It will be placed in Expression box. Then, in the Operators box, double-click the assignment operator (:=). It will also be placed in Expression box. Note: You can also type the information directly in the Assignment Expression box. Local Variables: If your expression needs temporary variables, you can declare variables in the user program step. See Local Variables for details. 3.
5 Programming • Soft Limit Switch , such as comparing whether the Actual Position is greater than a ceratin value. • Discrete I/O, such as checking if a discrete input is on. Entering Directly 1. In the Condition box of a Program Trigger or a link type, double-click the Condition box. The Expression Editor will open. 2. Enter the expression: • Double-click any item in the lists on the Tags, Functions or Operators tabs to insert into the expression.
RMC70/150 and RMCTools User Manual 5.13.4. Value Expressions A value expression evaluates to a number. Value expressions are used in the Delay Link Type, in command parameters in user programs, and to programmatically select commanded axes in user programs. Value expressions can be very simple, for example just a tag name, such as Axis[1].ActPos. Sample Expressions Example 1 MyPosition + 10 Note: MyPosition must exist as a variable. Example 2 _Axis[1].ActPrs - _Axis[0].ActPrs Example 3 3.0 + ABS(_Axis[].
5 Programming • Type your expression. The intellisense will offer suggestions for variables and tag names based on what you have typed. • If the expression is invalid, the portion in error will be red. 3. Press Enter to finish editing. If the expression is invalid, the entire expression text will be red. When the entire expression is in black text, the expression is valid. 5.13.5. Local Variables in User Program Steps Local variables can be declared in user programs steps.
RMC70/150 and RMCTools User Manual Array values can be initialized as shown in the example above. The number of initialized values must equal the number of items in the array. Parentheses can be used as a repetition factor, where the number preceding the parentheses specifies the number of repetitions. Examples: [8,2,3(0),10] is the same as [8,2,0,0,0,10] [10(0)] initializes an array of length 10 to all zeros. Size Limits The maximum length of a local array is 32.
5 Programming REAL[20] MyArray as REAL[10] array with the index 4. This is actually the fifth element because the indices are zerobased. MyArray[MyIndex] The value of 'Myindex' specifies the element in 'MyArray'. MyArray[ REAL_TO_DINT (MyVar +5.0) ] If you wish to use a REAL value as an index, you can convert it to a DINT as illustrated here. _VarTbl.
RMC70/150 and RMCTools User Manual 5. All items of the array must have the same setting for the Retain column. Before declaring an array, make sure there is room in the Variable Table for it. If the new array will overwrite existing variables, RMCTools will warn you and ask whether to continue or not. If you plan on using a variable to index through the array, you should declare it also. Make sure it is a DINT.
5 Programming parentheses. = Equal To (not for assigning values) All Data Types <> Not Equal All Data Types <= Less Than or Equal To REAL, DINT < Less Than REAL, DINT > Greater Than REAL, DINT >= Greater Than or Equal To REAL, DINT AND Logical and Bitwise AND DWORD, DINT, BOOL The data types of the operands must match. OR Logical and Bitwise OR DWORD, DINT, BOOL The data types of the operands must match.
RMC70/150 and RMCTools User Manual Lowest Equality = Inequality <> Boolean AND AND Boolean Exclusive OR XOR Boolean OR OR Assignment := 5.13.8. Keywords This topic describes the keywords available in the RMC expressions. Keywords are reserved for the uses indicated in the table below and cannot be used as names for user-defined items, such as variable names, input names, etc. In the Expression Editor, these can be accessed on the Keywords tab. Keyword Description IF Used in an If Statement.
5 Programming Example Example 1 IF _Axis[0].ActPos > 20.0 THEN MyREAL := 92; END_IF Example 2 IF MyInput1 = True THEN MyREAL1 := 34.0; MyREAL2 := 70023.0; ELSE MyDINT := 2; END_IF Example 3 IF _Axis[0].StatusBits.InPos = True THEN MyREAL1 := 34.0; MyREAL2 := 70023.0; ELSEIF ABS(_Axis[0].ActPos) > 20.0 THEN %QX0.1 := True; ELSE MyDINT := 2; END_IF 5.13.10. Constants The term "constants" refers an numeric item in programming that does not change. This can be a number in typical representation, such as 10.
RMC70/150 and RMCTools User Manual preceding "0x" instead of 16#, for example 0x01006a01. Boolean Representing a single bit. 0 = False and 1= True. 0 or 1 or True or False Special Constants The expressions in RMCTools include the named constant numbers listed below. In the Expression Editor, these can be accessed on the Tags tab, under Expression Constants. Constant Value M_PI 3.1415927 (limited to 32-bit floating point accuracy) 5.13.11. Comments Expressions support comments.
5 Programming When performing mathematical calculations in the RMC, keep in mind that the numbers are 32-bit numbers. 32-bit numbers do not provide infinite resolution or range. This topic describes some of these limitations and how to work around them. DINT Numbers DINT numbers are 32-bit integers. DINTs range from -2,147,483,648 to +2,147,483,647. If a result exceeds these limits, the number will wrap. REAL Numbers The RMC's REAL data type conforms to the IEEE-754 Floating-Point specification.
RMC70/150 and RMCTools User Manual The Expression Editor displays the Assignment Expression in black text if it is valid, and in red text when it is invalid. Listed below are common errors in the assignment expression syntax: Mixed Data Types: Data types cannot be mixed in the assignment expression without explicitly converting them. A number that does not contain a decimal point is considered to be a DINT data type. A number that does contain a decimal point is considered to be a REAL data type.
5 Programming 5.14.2. Standard Functions 5.14.2.1. Standard Functions The RMC expressions support many built-in standard functions, as listed below. You can also create custom User Functions. General Math Functions Description ABS(a) Returns the absolute value of a. EXP(a) Returns natural (e) raised to the ath power. LN(a) Returns the natural logarithm (base e) of a. LOG(a) Returns the logarithm (base 10) of a. SQRT(a) Returns the square root of a. POLY(t, a, b, c, d,...
RMC70/150 and RMCTools User Manual ATAN(a) Returns the arctangent of a. SINH(a) Returns the hyperbolic sine of a. COSH(a) Returns the hyperbolic cosine of a. TANH(a) Returns the hyperbolic tangent of a. Bit String Functions Description SHR(a, n) Shifts the bits in a to the right n times. Zeros are shifted in. SHL(a, n) Shifts the bits in a to the left n times. Zeros are shifted in. ASHR(a, n) Shifts the bits in a to the right n times. The sign bit is shifted in on the left.
5 Programming ADDR_OFS(loc, i) Returns the address of the ith register after the register loc. COPY(src, dst, len) Copies up to 32 variables from src to dst. LOG_EVENT(a, ...) Logs the values of the operands a, ... in the Event Log. From 1 to 3 operands. REG_REAL(f, e) REG_DINT(f, e) Represents the register at the specified address %MDf.e. REG_DWORD(f, e) 5.14.2.2. ABS Function ABS(a) Returns the absolute value of a. Parameters a (REAL or DINT) The input value.
RMC70/150 and RMCTools User Manual 5.14.2.4. ADDR_OFS Function ADDR_OFS(location, i) Returns the address of the ith register after location. This function is intended only for use with the COPY function. Parameters Location (Address) The address of the register location. i (DINT) The offset, in 32-bit registers, from the location. Return Value Returns the address of the ith register after the register location.
5 Programming Examples ASHR(16#FFFF0008, 2) returns 16#FFFFC0002 5.14.2.6. ASIN Function ASIN(a) Returns the arcsine of a. Parameters a (REAL) The input value. Return Value Returns a REAL in radians. Remarks Notice that the return value is in radians. To convert a value from radians to degrees, multiply the radians value by 180/π. The RMC has an M_PI constant for π. For a < 1.0 or a > 1.0, the task will fault. An error will be logged in the Event Log and the user program running on the task will stop.
RMC70/150 and RMCTools User Manual 5.14.2.8. CEIL Function CEIL(a) Rounds a to the next greater (most positive) integer. Parameters a (REAL) The input value. Return Value Returns a REAL. Examples CEIL(12.1) returns 13 CEIL(-5.2) returns -5 5.14.2.9. COPY Function COPY(src, dst, len) Copies up to 32 contiguous registers from src to dst. Both src and dst must be located in the variable table. Len specifies the number of registers to be copied.
5 Programming Notice that although the variable table is broken up into multiple individual files (%MD56, %MD57, etc.), the COPY function can wrap across these file boundaries. For example, copying 30 registers to %MD56.250 will place the first 6 items in %MD56.250 to %MD56.255, and the last 24 items in %MD57.0 to %MD57.23. An invalid address parameter during compile will trigger a verify error.
RMC70/150 and RMCTools User Manual The ADDR_OFS function can be used to calculate an address from a base address and an offset. For example, if the first tag in the block is called MyFirstTag, then the address of a tag located 4 registers after MyFirstTag can be calculated with: ADDR_OFS( MyFirstTag, 4) This is useful when copying from blocks of data that are not declared as arrays.
5 Programming COS(a) Returns the cosine of a. Parameters a (REAL) The input value in radians. Return Value Returns a REAL. Remarks Notice a is in radians. To convert a value from degrees to radians, multiply the degrees value by π/180. The RMC has an M_PI constant for π. Due to the 32-bit floating point limitations, COS(M_PI / 2) returns -43.71139E-9 instead of zero. For complex calculations, you may need to check for an exact zero and code the return value as needed. Examples COS(M_PI) returns -1.
RMC70/150 and RMCTools User Manual 5.14.2.13. CRV_FIRST_X Function CRV_FIRST_X (id) Returns the x value for the first point in the curve with the specified id. Parameters id (DINT) The curve ID. Return Value Returns the first X value of the curve as a REAL. Remarks This is useful for moving to the first point of a curve before sending the Curve Start (86) or Curve Start Advanced (88) command. If the specified curve id does not exist, the task will fault.
5 Programming 4: Truncated If x is beyond the endpoints of the curve, the curve holds it position at each endpoint: CRV_INTERP_Y will return the Y value of the closest endpoint of the curve. CRV_INTERP_V will return zero. CRV_INTERP_A will return zero. 8: Extrapolated If x is beyond the endpoints of the curve, the curve will be extrapolated linearly, and that value returned: CRV_INTERP_Y will return the extrapolated Y value.
RMC70/150 and RMCTools User Manual program that uses the CRV_INTERP_Y function to continuously update a variable. The user program should then gear the velocity axis to that variable with the Gear Velocity command. If the specified curve Id does not exist or the Options value is invalid, the task will fault. The task will also fault if Options is zero and the X value is not within the range of xvalues of the curve.
5 Programming DINT_TO_REAL (a) Converts a DINT to a REAL. Parameters a (DINT) The input value. Return Value Returns a REAL. Remarks For values beyond +/- 16,777,216 some rounding will occur since REAL values are only precise to 24 bits of precision. For example, 17,000,003 will become 17,000,004.0. Examples DINT_TO_REAL(5) returns 5.0 5.14.2.18. DWORD_TO_DINT Function DWORD_TO_DINT(a) Converts a DWORD to a DINT. a and its bit order remains the same, but type is changed to DINT.
RMC70/150 and RMCTools User Manual 5.14.2.20. FILL Function FILL(to, value, length) Sets length registers starting at the to address to the specified value (value). Typically used to fill an array with values. A maximum of 32 registers can be filled. Parameters to (Address) The address to begin filling at. Typically an array element. value (REAL, DINT, or DWORD) The value to set the elements to. length (DINT) The number of elements to fill. A maximum of 32 registers can be filled.
5 Programming you will need to spread the code over several steps, in which case the variable i needs to be defined in the Variable Table, not locally in the step.
RMC70/150 and RMCTools User Manual FLOOR(5.8) returns 5 FLOOR(-17.8) returns -18 5.14.2.22. LENGTH Function LENGTH(array) Returns the number of elements in the Array. Parameters array (Array Name) The input array. Return Value Returns a DINT. Examples MyVar := Length(MyArray); 5.14.2.23. LIMIT Function LIMIT(Min, InVal, Max) Limits InVal to the lower limit Min and the upper limit Max. If InVal falls between Min and Max, returns InVal. If InVal is greater than Max, returns Max.
5 Programming LOG(a) Returns the logarithm (base 10) of a. Parameters a (REAL) The input value. Return Value Returns a REAL. Remarks If a is less than zero, the task will fault. An error will be logged in the Event Log and the user program running on the task will stop. Examples LOG(1000.0) returns 3.0. LOG(15.0) returns 1.1760913. 5.14.2.25. LN Function LN(a) Returns the natural logarithm (base e) of a. Parameters a (REAL) The input value. Return Value Returns a REAL.
RMC70/150 and RMCTools User Manual Return Value The LOG_EVENT function does not return a value. Remarks The LOG_EVENT function can only be used in the Expression (113) command and user functions. Multiple LOG_EVENT statements can be used in a single Expression (113) command. Do not use with the assignment operator (:=). Use this function by itself only. Other functions can be nested inside.
5 Programming MIN(8, 5, 10) returns 5 MIN(10, 2, -5,8) returns -5 5.14.2.29. MROUND Function MROUND(a, multiple) Rounds a to the desired multiple. Parameters a (REAL) The input value. multiple (REAL) a will be rounded to the closest multiple of this value. Return Value Returns a REAL. Remarks Rounds a to the desired multiple, away from zero if dividing gives a remainder greater than or equal to half the value of the multiple. multiple must be non-zero. If multiple is zero, the task will fault.
RMC70/150 and RMCTools User Manual Examples POLY(1, 1, 2, 4, 1) is the equivalent of 1 + 2t + 4t2 + t3, where t is 1.0 and returns 8.0. POLY(0.5, -10, 5, -0.1) is the equivalent of -10 + 5t - 0.1t2, where t is 0.5 and returns 7.525. 5.14.2.31. REAL_TO_DINT Function REAL_TO_DINT(a) Converts a to a DINT by rounding to the nearest integer. Parameters a (REAL) The value to convert to a DINT. Return Value Returns a DINT. Remarks 0.5 rounds up to 1. Rounding -0.
5 Programming REG_DWORD: DWORD Remarks This function is not intended for common use. All RMC registers can be addressed directly, making this function unnecessary in most applications. This function is intended for the rare cases in which it is necessary to calculate an address mathematically or address a register regardless of the data type or tag name. The data type of the specified IEC address will be the external data type as specified in the RMC register map.
RMC70/150 and RMCTools User Manual Return Value Returns the same data type as a. Remarks The result of an invalid n is undefined. Examples ROR(16#0000000F, 2) returns 16#C0000003 5.14.2.35. ROUND Function ROUND(a) ROUND(a, n) Rounds a to n decimal places. Parameters a (REAL) The input value. n (DINT) The number of decimal places to round a to. If n is omitted, it is assumed to be 0, and a will be rounded to the nearest integer. n can be between -6 and 6.
5 Programming Parameters cond (BOOL) The condition to be evaluated. a (REAL or DINT) The value to return if cond is true. b (REAL or DINT) The value to return if cond is false. The a and b input parameters must be of the same data type. Return Value Returns the same data type as the a and b input parameters. Examples SEL(_Axis[0].ActPos > 10, 100, SQRT(2)) returns 100 if the Axis 0 Actual Position is greater than 10, otherwise it returns the square root of 2. 5.14.2.37.
RMC70/150 and RMCTools User Manual n (DINT) The number of times to shift a. n must be between 0 and 31. Return Value Returns the same data type as a. Remarks The result of an invalid n is undefined. Examples SHR(16#00000008, 2) returns 16#00000002 5.14.2.39. SIGNUM Function SIGNUM(a) Returns -1 if a is negative, +1 if a is positive, and 0 if a is zero. Parameters a (REAL or DINT) The input value. Return Value The same data type as a. Examples SIGNUM(0.001) returns 1.0 SIGNUM(0.0) returns 0.
5 Programming SIN(45 * M_PI / 180) returns 0.70710677 5.14.2.41. SINH Function SINH(a) Returns the hyperbolic sine of a. Parameters a (REAL) The input value. Return Value Returns a REAL. 5.14.2.42. SQRT Function SQRT(a) Returns the square root of a. Parameters a (REAL) The input value. Return Value Returns a REAL. Remarks If a is negative, the task will fault. An error will be logged in the Event Log and the user program running on the task will stop. Examples SQRT(100.0) returns 10.0. SQRT(2.
RMC70/150 and RMCTools User Manual Remarks Notice a is in radians. To convert a value from degrees to radians, multiply the degrees value by π/180. The RMC has an M_PI constant for π. Examples TAN(M_PI / 4) returns 1.0 TAN(45 * M_PI / 180) returns 1.0 5.14.2.44. TANH Function TANH(a) Returns the hyperbolic tangent of a. Parameters a (REAL) The input value. Return Value Returns a REAL. 5.14.2.45. TRUNC Function TRUNC (a) Rounds a to an integer towards zero and returns a DINT data type.
5 Programming a (REAL) The input value. Return Value Returns a REAL. Examples TRUNC_REAL(34.78) returns 34.0 TRUNC_REAL(-3.46) returns -3.0 TRUNC_REAL(-3.99) returns -3.0 5.14.3. User Functions 5.14.3.1. User Functions To access the User Function Editor: In the Project pane, expand Programming, and double-click User Functions. User functions are custom functions created or imported by the user. User Functions provide flexibility and efficiency for advanced applications.
RMC70/150 and RMCTools User Manual • Input/Output e. Click OK. To adjust the order of the parameters, use the Up and Down delete parameters, use the Delete arrows. To button. 6. Click OK. 7. The new function will be added to the User Functions list, and will appear in the editor. Editing a User Function User Function Description The initial comment in the user function is the function description, enclosed by green parentheses with an asterisk: (* *).
5 Programming All user functions in the project are displayed in the User Function list. To add a user function, click the New User Function Delete User Function button. To delete a user function, click the button. User Functions Folders User functions can be organized into folders in the user function list. 1. To create a new folder, click the New Folder folder name and press Enter. button on the toolbar. Type the 2.
RMC70/150 and RMCTools User Manual Limitations The following limitations apply to calling user functions: • Any Output and Input/Output type parameters can only be step-local variables or variables in the Variable Table. They cannot be system tags. If the result of the function must go to a system tag, you can use a variable for the Output parameter, then use a separate expression to assign the variable value to the system tag. 5.14.3.2.
5 Programming MyOutputVar : REAL :=4; MyArray : Array [0..3] OF REAL := [10, 10, 0]; END_VAR VAR MyVar : REAL := 100; YourVar : Array [0..9] OF DINT; END_VAR Declaring Arrays Array bounds are specified in brackets [], with two intermediate periods (..). The array bounds can be any integer value, including negative values. For most applications, the lower bound is zero. The maximum length of an array in a user function is 32 elements.
RMC70/150 and RMCTools User Manual MyPos := Avg4(_Axis[0].ActPos, _Axis[1].ActPos, _Axis[2].ActPos, _Axis[3].ActPos); Declaration (* Returns the average of the 4 input parameters. *) FUNCTION Avg4 : REAL VAR_INPUT Val1 : REAL; Val2 : REAL; Val3 : REAL; Val4 : REAL; END_VAR Avg4 := (Val1 + Val2 + Val3 + Val4) / 4.0; END_FUNCTION Example 3 Converts polar coordinates to cartesian coordinates.
5 Programming ELSE y := r; x := r * COS(theta * (M_PI / 180.0)); y := r * SIN(theta * (M_PI / 180.0)); END_IF Polar2Cart := TRUE; END_FUNCTION Example 4 Returns the index of the least significant bit that is set in a DWORD. Usage MyIndex := LSB(MyDWORD); Declaration (* LEAST SIGNIFICANT BIT returns the index of the least significant bit set in a DWORD.
RMC70/150 and RMCTools User Manual RMC Module Details RMC70 D8 Expansion module 8 DI/O points, individually programmable as inputs or outputs. RMC150 DI/O Module RMC150E/RMC151E CPU 8 outputs, 18 inputs. Fits in slots 0, 2, 3, 4, and 5. 2 outputs, 2 inputs In addition to the discrete I/O described in this topic, each RMC70 axis module also has one Fault Input and one Enable Output per axis. The RMC70 QA and RMC150 Quad modules also have discrete inputs for homing and registration.
5 Programming RMC I/O Addressing Examples RMC70 Inputs = %IXn %QX0 is output 0 Outputs = %QXn %IX8 is input 8 where n is the I/O number as displayed in the I/O Monitor. RMC150 Inputs = %IXslot.n %QX0.5 is output 5 in slot 0 Outputs = %QXslot.n %IX5.0 is input 0 in slot 5 where slot numbering starts with 0 for the left-most module in the RMC150. n = the number of the input or output on that module. 5.15.2. Using Discrete I/O This topic describes many different ways to use the RMC discrete I/O.
RMC70/150 and RMCTools User Manual Write to the address of the output. See the RMC150 DI/O Register Map or RMC70 DI/O Register Map for address details. Using Inputs and Outputs in User Programs You can use inputs and outputs in User Programs for calculations and controlling the flow of the program. Inputs and outputs are boolean Data Types and must match the data types in the expression or must be converted to match the other data types.
5 Programming In the I/O Monitor, right-click the input or output you want to remove the force from, and click Remove Force. Or, in the I/O Monitor, right-click anywhere and click Remove All Forces. Using Inputs to Start a User Program To start a User Program based on an input: • • Open the Program Triggers Editor. • • In the New Condition Wizard, choose Other and click Next. • If you want a User Program to start when the input goes low, type NOT in front of the input name in the Expression box.
RMC70/150 and RMCTools User Manual Assign a Tag Name to the I/O To assign a tag name to an I/O, type a name in the Tag Name column. Tag names are limited to 64 characters. Tip: Assigning a Tag name to each discrete I/O makes it much easier to work with. Add a Description In the Description column, add a description of the I/O point for your own reference.
5 Programming Simple User program - A simple user program Jog Button - Shows how to set up a jog with the RMC. Can be done using discrete I/O or via communications. Closed Loop Motion on Startup - Shows how to enter closed control (or perform more complex actions) when the RMC starts up. Timers - Shows how to use the _SysMS and _SysTicks tags to create timers. Time-out - Shows how to create a time-out after issuing a move command.
RMC70/150 and RMCTools User Manual 2. Create a New User Program a. In the Project Pane, expand Programming, right-click User Programs, and click New Program. b. In the New User Program dialog, enter a name and click Finish. The user program should now have one step and look like this:move 3. Add Command to First Step The first step issues a command to move to 0 in. Before it reaches 0 in., it will get a different command that slows it down. This is how to add the command to 0 inches: a.
5 Programming Notice that the Link Type box is red. This indicates an error. In this case, the error is that there is no next step, but one will be created shortly. 5. Add Next Step for Slower Move The next step will issue a Move command to 10 inches, then will wait until the axis gets into position before going to the next step. a. On the Step Editor toolbar, click the Insert Step button b. Add a Move Absolute command so that step 1 looks like this: c. In the step 1 Link Type box, choose Wait For.
RMC70/150 and RMCTools User Manual 7. Add Last Step for Move Back This step will move the axis back up to 10 in. a. Right-click in the left part of step 2, then click Add Step After. b. Add a Move Absolute command with Position 10, Speed 10, Accel 100, and Decel 100. The user program should now look like this: 8. Download the Programming To download the programming, in the Project pane, right-click Programming and choose Download Programs to Controller.
5 Programming Link: Waits for Axis 0 In Position status bit to turn on, which means the axis has reached the requested position. This link type is easily created using the Link Type Wizard. Step 1: Command: Link: Sets a Discrete Output. Waits for 5 seconds, then it goes to the next step. Step 2: Command: Link: Moves Axis 0 to 20 in. at the speed specified by the FastSpeed variable. This variable must have previously been defined in the Variable Table.
RMC70/150 and RMCTools User Manual This topic describes how to program the RMC so that an axis enters closed loop control when the RMC turns on. For example, perhaps you want the RMC to hold the position of the axes as soon as it turns on. The same method can be used to perform more complicated actions when the RMC starts up. Description To automatically hold position in closed loop control when the RMC starts up requires the following steps: 1. Set the RMC to start up in RUN mode.
5 Programming If you are starting up the RMC at the same time as the transducers, there may be a delay before the transducers start sending data to the RMC. Therefore, you may wish to insert a delay before the step that issues the Hold Current Position (5) command. d. Right-click any open space in step 0 and choose Add Before. This will add a step before step 0. e. Select step 0, then, in the Step Editor toolbar, click the Remove Command button . f. In the step 0 Link Type box, choose Delay.
RMC70/150 and RMCTools User Manual 5.16.5. Example: Jogging an Axis This topic provides two examples on how to program the RMC to jog on a position axis. Each example uses closed-loop moves to jog the axis, which requires that the axis has already been tuned. The examples can of course be modified to do open-loop motion. Description Jogging an axis typically refers to moving an axis forward or backward while a button is pressed. As soon as the button is released, the axis stops.
5 Programming d. The fourth condition will continuously monitor the discrete input (or variable register) for moving the axis backward. When it turns "off", it will start User Program 3, which will stop the axis. Example 1: Using a "button" on an HMI The example will follow the method described above. 1. Set up the buttons First, the user sets up two momentary buttons on the HMI, called Jog Forward and Jog Back. As with most HMIs, this momentary button can only write to a bit.
RMC70/150 and RMCTools User Manual 3. Create four Program Triggers conditions: Since the HMI writes to bit 0 of the variables, the value of the entire variable will be either zero or one. Therefore, the user made the Program Trigger conditions compare the entire variables to zero or one. Now, when the operator presses and holds the Jog Forward button on the HMI, it will write a 1 to bit 0 of the Jog_Forward variable.
5 Programming 3. Create four Program Trigger conditions: If an input is on, it is TRUE. If is off, it is FALSE. Each condition compares the state of an input to TRUE or FALSE. The user created four Program Trigger conditions as shown below: Now, when the operator pushes the switch to the right, the Jog_Forward input becomes TRUE. The Program Trigger sees that the Jog_Forward input became TRUE, so it starts the User Program MoveForward.
RMC70/150 and RMCTools User Manual DINT, and will wrap around to -2147483648 after it reaches its maximum value of 2147483647. Example Consider an application that toggles a discrete output every 10 seconds. One method of achieving this is as follows. Notice that this is not necessarily the best way to achieve this application. However, the point here is to illustrate how to make a timer. This is intended to be a starting point for the reader to create more complicated timer applications. 1.
5 Programming This example makes use of the _SysMS tag. The _SysMS tag holds the number of milliseconds since the RMC powered up. It is a 32-bit DINT, and will wrap around to -2147483648 after it reaches its maximum value of 2147483647. Example 1. Define a Variable Define a variable, called StartTime. Define it as a DINT: 2. Write a User Program The User Program will consist of the following: • Turn off the discrete outputs. • • Set the StartTime variable to the current value of the _SysMS.
RMC70/150 and RMCTools User Manual This topic provides an example of using a variable array. Description This example will program the RMC for a cylinder sleeve installation machine for a 6cylinder in-line engine block. The RMC needs to control the single axis that moves the cylinder sleeve installation head to each cylinder. When it reaches a cylinder, the RMC needs to toggle a discrete output, wait 1 second, then continue to the next cylinder. The "home" position for the head is 0.
5 Programming 3. Downloading the Programmng To download the programming, in the Project pane, right-click Programming and choose Download Programs to Controller. 4. Testing the Programming After downloading the Programming node to the RMC, test it out by setting the Positions array elements to certain values on the Monitor tab of the Variable Table Editor and then running the program. There are several ways to start a user program.
RMC70/150 and RMCTools User Manual General Considerations In a machine fault situation, the following actions are typically desired of the RMC: 1. Halt all the axes The RMC has several levels of halts. 2. Turn off any Enable Outputs If any Enable Outputs are wired to a motor drive, or other actuator, these are typically turned off in a fault situation. The Direct Output Halt will halt the axis and turn off the axis' Enable Output. 3.
5 Programming In addition, the same discrete input can be used to put the RMC in PROGRAM mode, thereby stopping all user programs and the Program Triggers. See the RUN/PROGRAM Mode section below. Use a single discrete input to trigger a shutdown user program. You can make a user program that issues the Fault Controller (8) command, and configure the Program Triggers to start the program when a discrete input turns on. This will halt all the axes, and put the RMC in PROGRAM mode.
6. Communication 6.1. RMC Communications Overview Numerous communication protocols are available on the RMC70 and RMC150. This allows almost any external controller, such as a PLC, HMI, personal computer, etc. to control the RMC and easily integrate it into the rest of the application. The RMC functions as a slave (server) device on the communications. That is, the RMC only responds to communication requests. It does not initiate reads or writes. The host controller (PLC, HMI, etc.
RMC70/150 and RMCTools User Manual RSView Siemens S7 PLCs via PROFIBUS Siemens S7 PLCs via PROFINET Schneider Electric PLCs via EtherNet/IP I/O Schneider Electric PLCs via Modbus Wonderware Communicating from a PC Other Master Controllers Communicating with RMCTools In addition to its primary communication type, each RMC has a Monitor port, which is intended to be used to communicate with RMCTools. The Monitor Port type varies by controller, as shown in the table below.
6 Communication The Indirect Data Map is important for several communication types. It maps any data items from anywhere in the RMC to one location. This allows packing otherwise discontiguous data together for efficient I/O and messaging communications. RMCLink ActiveX Control and .NET Assembly Use RMCLink to communicate with an RMC from numerous programming languages and applications on a PC. See the RMCLink topic for details. 6.2.
RMC70/150 and RMCTools User Manual Every RMC CPU module has a Monitor port. This port is used primarily to communicate from RMCTools to the RMC. The monitor port type depends on the RMC type: Controller Monitor Port RMC75E USB RMC75S RS-232 RMC75P RS-232 RMC150E USB Note: The Monitor Port does not affect any LEDs on the RMC.
6 Communication 3. In the Project Pane, right-click the controller you wish to connect to and click Connection Path. 4. Choose the COM port that the RMC is connected to. 5. Click Go Online. USB Monitor Port (RMC75E and RMC150E) The USB Monitor port is a Universal Serial Bus (USB) "B" port. RMCTools communicates with the RMC75E and RMC150E via the USB Monitor port. The USB Monitor port cannot be used for any other purpose. Use a standard USB "A" to "B" cable to connect your PC to the USB Monitor port.
RMC70/150 and RMCTools User Manual Pin # RS-232 Function 1 DCD- Not used by RMC70 2 RxD - Receive Data 3 TxD - Transmit Data 4 DTR - Not used by RMC70 5 GND - Common 6 DSR - Not used by Monitor Port 7 RTS - Not used by Monitor Port 8 CTS - Not used by Monitor Port 9 Not Connected Wiring Note: The DB9 shell is connected to the RMC70 Case. For more details, see the RS-232 Wiring for the RMC70 topic. 6.4.
6 Communication For details on using the Indirect Data Map for PROFIBUS, see the PROFIBUS topic, and then choose a PROFIBUS mode topic. The address examples in this topic are given in Allen-Bradley DF1 format. The Indirect Data Map can be used for all protocol address types supported by the RMC. See the Register Maps for addresses for other protocols. Using the Indirect Data Map The Indirect Data registers can be mapped to any registers in the RMC.
RMC70/150 and RMCTools User Manual To read the data from the mapped registers, read from F18:0 to F18:7. Now, instead of reading 8 registers in various locations, the user can read 8 registers in one block. Notice that if a mapped register is read-only, you cannot write to it. Choosing the Address Format The addresses of the registers in the Indirect Data Map are displayed in the Reg # column.
6 Communication series motion controllers. It also describes how to configure the communications and the basics of actually communicating, such as issuing commands, writing and reading, etc. Example programs for certain HMIs are available on the downloads page of Delta's website. These can help you get up and running quickly. Requirements of the HMI Requirement 1: Must Support a Compatible Protocol The HMI must support a protocol that is compatible with the specific RMC.
RMC70/150 and RMCTools User Manual If you are connecting the HMI to the communications serial port on the RMC75S, make sure you configure the RMC75S serial settings identically to the PLC communication settings. Using the Communications Reading and Writing Registers Read and write to registers in the RMC just as you would with a PLC. Some register addresses are displayed in RMCTools, such as in the Axis Tools, Indirect Data Map, and the Variable Table.
6 Communication Discrete I/O augments the communications of the RMC. Discrete I/O is typically faster and more deterministic than the communications, and is therefore well-suited for starting a sequence in one or more RMCs at a specific time. Some example uses of discrete I/O for communications: • Start or Stop User Programs Use the Program Triggers to start and stop User Programs based on an input.
RMC70/150 and RMCTools User Manual For serial (RS-232/485) and Ethernet communication, each axis has a Command Request and Command Acknowledge bit. • Command Request Bit (REQ) To set the Command Request bit, add 256.0 to the command. For example, writing 20.0 to the Command register would issue the Move Absolute command with the REQ bit cleared. Writing 276.0 to the Command register would issue the Move Absolute command with the REQ bit set.
6 Communication until they are before issuing the next command. Otherwise, a command is still being received, and the synchronization will be lost by not waiting. 3. When the controller is ready (ACK = Axis0Req), the user will toggle Axis0Req, and write a single block of 10 registers to the Axis 0 Command registers, including the command, command parameters, and Axis0Req stuffed in at logical bit 8. Since this is typically a FLOAT write, the user will add 256.0 to the command if Axis0Req is set, or 0.
RMC70/150 and RMCTools User Manual 6.8.1. Ethernet Communications Overview The RMC75E and RMC150E provide Ethernet slave communications, supporting 10 and 100Mb/s, full- and half-duplex with auto-negotiation. The RMC performs as a slave, requiring a master to control it. The RMCs support up to 64 simultaneous TCP connections. This means that up to 64 devices can communicate with the RMC at the same time, using any of the supported protocols listed below.
6 Communication support all major Ethernet devices, and is interested in knowing about devices that the RMC does not support. Note: The RMC does not support any of the native Ethernet protocols built into Windows. That is, it does not support Web browsers, FTP, e-mail, and browsing through Network Neighborhood. Configuring the RMC Ethernet Communications Setting up the RMC Ethernet communications usually requires entering only a few TCP/IP parameters.
RMC70/150 and RMCTools User Manual 1. Orange/White 2. Orange 3. Green/White 4. Blue 5. Blue/White 6. Green 7. Brown/White 8. Brown 6.8.2. Using Ethernet with RMCTools RMCTools can communicate directly with the RMC75E and RMC150E modules over Ethernet. This connection provides the fastest update rate for registers and plots in RMCTools.
6 Communication your device supports reading and writing to registers in any of the PLCs listed below, then your device should be able to communicate with the RMC: • Allen-Bradley SLC5/05 and PLC-5 The RMC emulates these controllers by responding to DF1 requests over the CSP and EtherNet/IP protocols. See the CSP, EtherNet/IP, and DF1 Addressing topics for details. • Omron CS/CJ PLC The RMC emulates these controllers by responding to requests over the FINS/UDP protocol.
RMC70/150 and RMCTools User Manual • Allen-Bradley CompactLogix with Ethernet Interface Module (1769-ENBT) • • Allen-Bradley FlexLogix with Ethernet Interface Module (1788-ENBT) • • Allen-Bradley RSLinx • • GE Fanuc RX3i with the ETM001 Ethernet Module • Modicon Quantum with the 140 NOE 711 00, 711 01, 711 10 and other Ethernet TCP/IP modules • Modicon Momentum M1E Processor • • Omron CS/CJ PLCs • • Siemens S7-400 controllers with PROFINET support Allen-Bradley SoftLogix 5 Automation Direct
6 Communication The simplest TCP-based protocol supported by the RMC (firmware 3.31.0 or newer) is the Delta Motion Control Protocol (DMCP). This topic describes how to form DMCP packets to communicate with the RMC75E and RMC150E. The RMC75E and RMC150E listen for DMCP requests on TCP port 1324. The client port number can be any number. This protocol is a request/response protocol, meaning that for each request packet sent to the RMC, there will be one response packet sent by the RMC.
RMC70/150 and RMCTools User Manual order of the bytes in this 16-bit value is determined by the Byte Order field. 14-15 00 00 Reserved. Must be zero. 16-… … Data. The values of each register to write should follow the above header. Each 32-bit value is encoded in either LSB- or MSB-first byte order, as determined by the Byte Order field. For LSB-first byte order, the value 16#11223344 should be encoded as 44 33 22 11. For MSB-first byte order, this would be encoded as 11 22 33 44.
6 Communication • Most-Significant Byte (MSB) First (01). For example, the value 0x1122 will be encoded as 11 22. 8-9 nn nn Starting Address (File). Gives the file number (f) for the address (%MDf.e) to start the read at. The order of the bytes in this 16-bit value is determined by the Byte Order field. 10-11 nn nn Starting Address (Element). Gives the element number (e) for the address (%MDf.e) to start the read at. The order of the bytes in this 16-bit value is determined by the Byte Order field.
RMC70/150 and RMCTools User Manual Response Description Code 00 Success. 01 Malformed. 02 Too Long. 03 Invalid Address. Notice that in certain other error cases, the RMC will not generate an error response, but will instead either discard the incoming packet with no response, or close the TCP/IP connection: • The Packet Length field is less than 5. The RMC will discard the packet without response. • The Packet Length field is greater than 4110. The connection will be closed.
6 Communication 6.8.5. Communicating Directly over UDP Master Ethernet controllers can communicate with the RMC using several methods. This topic describes only one of those methods—using raw UDP packets—which is appropriate when the master controller cannot use any of the other methods. Please review the other available options in the Ethernet Overview topic before proceeding with this method.
RMC70/150 and RMCTools User Manual write at. The order of the bytes in this 16-bit value is determined by the Byte Order field. 12-13 nn nn Write Count. The number of 32-bit registers to write. This value must be between 0 and 256. The order of the bytes in this 16-bit value is determined by the Byte Order field. 14-15 00 00 Reserved. Must be zero. 16-… … Data. The values of each register to write should follow the above header.
6 Communication Data registers in the response. Notice that the Packet Length byte order is not affected by this field. • Least-Significant Byte (LSB) First (00). For example, the value 0x1122 will be encoded as 22 11. • Most-Significant Byte (MSB) First (01). For example, the value 0x1122 will be encoded as 11 22. 8-9 nn nn Starting Address (File). Gives the file number (f) for the address (%MDf.e) to start the read at.
RMC70/150 and RMCTools User Manual The response packet holds a single-byte Response Code field, indicating to the client whether the transaction was successful or not. Notice that the Response Function Code byte will also indicate whether the Response Code is 00 (success) or not. If the Response Code is 00, then the Response Function Code will match the request’s Function Code plus 0x80. Otherwise, the Response Function Code will match the request’s Function Code plus 0x40.
6 Communication 6.8.6. Ethernet Link/Act LED The RMC75E and RMC150E have a Link/Activity LED. This LED has the following states: State Description Off Link is down Flashing Green Link is up, with activity Steady Green Link is up, no activity The Link/Activity LED reflects the status of the physical Ethernet connection between the RMC and the device on the other end of the Ethernet cable - typically a switch.
RMC70/150 and RMCTools User Manual 6.8.7. Troubleshooting RMCTools Ethernet Connection This topic describes problems and possible solutions for connecting RMCTools via Ethernet to the RMC75E or RMC150E. 1. My RMC75E or RMC150E does not appear in the Browse box in the Ethernet Configuration Dialog. Possible Reason: Computers running Windows XP/Vista/7 have Windows Firewall installed and enabled by default. Also there are other firewall software packages such as Zone Alarm that may be installed on your PC.
6 Communication Virtual PC also often adds virtual IP interfaces, in addition to any physical interfaces on the computer. To determine if browsing may not be working due to multiple IP interfaces: 1. Determine if your computer has multiple IP interfaces From the browsing window, click Troubleshoot. This will open the Troubleshoot Ethernet Browsing dialog box, which includes a table of all available IP interfaces on your computer. If more than one interface is listed, then proceed to the next step. 2.
RMC70/150 and RMCTools User Manual 6. In the Advanced TCP/IP Settings dialog box, click the IP Settings tab, clear the Automatic metric checkbox, and then type a value in the Interface metric checkbox. 7. Click OK in the Advanced TCP/IP Settings dialog box. 8. Click OK in the Internet Protocol Version 4 (TCP/IPv4) Properties dialog box. 9. Click Close in the Connection Properties dialog box. To change an interface metric on Windows XP and Server 2003: 1. Click Start, and then click Run. 2. Type ncpa.
6 Communication 6.8.8.1. Setting Up the RMC Ethernet Setting up the Ethernet communications for the RMC75E or RMC150E requires entering only a few IP parameters. 1. Go Online with the RMC. 2. In the Project Pane, expand the Modules folder, double-click the CPU module and click Ethernet. 3. In the IP Settings section, click Use the following IP address. 4. Enter an IP address and subnet mask in dotted decimal notation (e.g. 192.168.0.5 and 255.255.255.0).
RMC70/150 and RMCTools User Manual Entire Packet Framing Header IP Header TCP Header Modbus/TCP Header Modbus/TCP Data Area CRC This diagram shows the four conceptual layers of TCP/IP: application, transport, internet, and framing. A fifth layer—the hardware layer—is often added below these four layers, but is left out of this diagram because it is more of a specification of how the data is physically sent rather than another protocol header.
6 Communication Each protocol is briefly described below: ARP (Address Resolution Protocol) Ethernet packets can either be broadcast (received by all devices on the network) or sent to a single MAC address. However, applications generally address computers by IP address rather than MAC address. Therefore, this protocol is used to determine the MAC address of the computer owning a given IP address.
RMC70/150 and RMCTools User Manual ENET and 1756-ENBT). See the EtherNet/IP topic for details on usage with the RMC. FINS/UDP This is an open application protocol developed and used by Omron Electronics Inc. This protocol is available over a number of media, including Ethernet and serial. Additional information is available in the CS1 Communications Reference Manual, available on Omron's web site: http://www.omron.com/oei. For more details, see the FINS/UDP and Communicating Directly over UDP topics.
6 Communication Many industrial applications require a standalone Ethernet network for machine control, for example, a PLC communicating with several RMCs and an HMI. This topic describes how to easily set up a standalone Ethernet network using TCP/IP. Before reading this topic, make sure you understand the Understanding IP Addressing topic. Note: This topic is intended only for new networks that will not be connected via a router to another network.
RMC70/150 and RMCTools User Manual Example: The user decided to use the 192.168.0 address. Because this network address is 24 bits long, the subnet mask will be 255.255.255.0. This leaves 254 local addresses (remember that addresses 0 and 255 are reserved) for an IP address range of 192.168.0.1 to 192.168.0.254. 3. Assign local addresses for each device. The IP address range from step 2 provides 254 IP addresses that can be assigned to the network devices.
6 Communication Value IP Address 192.168.0.5 C0A80005 Subnet Mask 255.255.255.0 FFFFFF00 Network Address 192.168.0 C0A800 Local Address 5 05 Therefore, from this example, we see that a device with an IP address of 192.168.0.5 and subnet mask of 255.255.255.0 will have a network address of 192.168.0 and a local address of 5. Other devices on this network must have the same network address but different local addresses.
RMC70/150 and RMCTools User Manual Every Ethernet device manufactured is required by the IEEE Standards Organization to have a unique MAC address. This address is also called a LAN MAC address or Ethernet ID. This address is given in the form of six hexadecimal bytes, which can be displayed in several formats: run together (e.g. 0050A0984001), separated by hyphens (e.g. 00-50-A0-98-40-01), or separated by spaces (e.g. 00 50 A0 98 40 01). However, all formats are equivalent.
6 Communication • The RMC handles incoming packets on a first-in first-out (FIFO) basis, making it possible to send multiple requests and then wait for the replies. • The RMC can handle up to 64 open TCP/IP connections at once. Typically each device uses one connection at a time, allowing the RMC to be connected to up to 64 devices at once.
RMC70/150 and RMCTools User Manual The FINS protocol uses a three-stage addressing system: network address, node number, and unit number. These three address elements have the following purposes: • Network Address This value identifies the network on which the target node resides. The PLC looks up this number in its Local and Remote Network Tables to determine which local unit number should be used to send out the request.
6 Communication in its response packet. It can be used to match responses with requests, since UDP does not prevent packets from being delivered out-of-order or dropped. 10-11 01 02 FINS Command. These two bytes should be 01 02 to indicate a memory area write. 12-15 xx yy zz 00 FINS Address. This value encodes the register address to write to in the RMC. See the FINS Address section below for details. 16-17 mm nn Write Length. This values holds the number of 16bit values to write.
RMC70/150 and RMCTools User Manual packets from being delivered out-of-order or dropped. 10-11 01 01 FINS Command. These two bytes should be 01 01 to indicate a memory area read. 12-15 xx yy zz 00 FINS Address. This value encodes the register address to read from the RMC. See the FINS Address section below for details. 16-17 mm nn Read Length. This values holds the number of 16-bit values to read.
6 Communication Prefix Area Code D 82 E0_ A0 E1_ A1 In the FINS/UDP protocol, the Starting Address is encoded as a 16-bit value with the most-significant byte first. Example Find the FINS/UDP encoding for the RMC address %MD56.0. By using the conversion tool in the FINS Addressing topic, we find that %MD56.0 is represented by FINS Address D28672. Notice that the Low Address listed there as well (D01536) can be ignored when using FINS/UDP in this manner.
RMC70/150 and RMCTools User Manual Example 1: Writing a Single Register In this example, the client will write the value 0x11223344 to variable 0 (%MD56.0). The FINS Address of the current value of variable 0 (%MD56.0) is 82 70 00 00, as shown in the example in the FINS Address section above. The client chooses a Service ID of 00 for this packet, either because he is not using this field, or because this is the first transaction.
6 Communication The RMC uses port number 7171 hex (29,041 in decimal) for the Procedure Exist protocol. A sample program for the Q-Series Procedure Exist method is available on the downloads page of Delta's website at http://www.deltamotion.com/dloads. This should be used as a starting point for any Mitsubishi Q-series program using the QJ71E71-100 Ethernet module and an RMC. Note: The RMC can also communicate with the Mitsubishi Q-series PLC via the QJ71MT91 Ethernet Modbus/TCP module.
RMC70/150 and RMCTools User Manual Fixed Buffer: Receive Fixed Buffer communication procedure: Procedure Exist Paring open: Enable Existence confirmation: Confirm Host Station Port No.: 7171 hex (29,041 in decimal) Transmission device IP address: Set this to the IP Address of the RMC Transmission target device Port No.: 7171 hex (29,041 in decimal) Because Pairing open is set to Enable, the next row will automatically be set identically, except the Fixed Buffer will be set to Send.
6 Communication 12. Data Time 1 The RMC has 32-bit registers. Therefore, you can only write 32-bit words. Most RMC registers are floating-point; a few are integers. Data Item n To write n 32-bit registers to the RMC, make sure the TxCount is correct. It should be (2 x n) + 3. Example A programmer wishes to write 5 values to the variable table in the RMC70 (address %MD56.0). These values are: 32.876, 1.0, 12.0, 5.432, 862.0. The send data for the ZP.
RMC70/150 and RMCTools User Manual Count (16 bits) (16 bits) (32 bits) (32 bits) (32 bits) Description: 16-bit Count This is the number of 16-bit words read from the buffer. 32-bit Read Count This is the number of 32-bit registers that the RMC returned. Data Item 1-n This is the returned data. Communicating Directly over TCP For RMC firmware versions prior to 3.31.
6 Communication significant byte. • The RMC will respond to this request with the following packet: Offset Data (hex) Description 0 E0 Acknowledge. Indicates that the packet is an acknowledgement. 1 rr Response Code. Indicates whether the write was successful or not. See the Response Codes section below.
RMC70/150 and RMCTools User Manual • 2-3 mm mm Packet Length. This value holds the number of 16bit words in this packet, not including this field and the sub-header. For reading N registers from the RMC, this register will hold 1+2xN, since each RMC register uses 32 bits, or two 16-bit words. 4-5 nn nn Read Count. This value holds the number of 32-bit RMC registers that were read. This will match the Read Count field in the read request. 6... ... Data.
6 Communication After the RMC has successfully received and processed this write request, it will respond with the following packet: E0 00 Notice that the last byte is the response code, with 00 meaning success. Example 2: Reading a Single Register In this example, the client will read a value from variable 0 (%MD56.0). Therefore, the Register File is 56, and the Register Element is 0. Supposing that variable 0 held the value 0x11223344, then the following packets would be sent between the controllers: 6.
RMC70/150 and RMCTools User Manual EtherNet/IP I/O EtherNet/IP I/O provides a mechanism of deterministically sending data in both directions between a PLC and remote device. This data is sent on an interval called the Requested Packet Interval (RPI). The RMC supports a minimum RPI of 2.0 ms to 4.0 ms, depending on the loop time and number of connections. EtherNet/IP I/O is a very fast and easy-to-use method of communication.
6 Communication 6.8.10.6.2. Setting Up an EtherNet/IP I/O Connection This topic describes the concepts involved in setting up an EtherNet/IP I/O connection. For step-by-step procedures for Allen-Bradley or Omron PLCs, see the Using Allen-Bradley Controllers via EtherNet/IP I/O and Using Omron Controllers via EtherNet/IP I/O topics. For details on controlling the RMC once a connection has been made, see the Using an EtherNet/IP I/O Connection topic.
RMC70/150 and RMCTools User Manual Connection Type The RMC supports three types of I/O connections: • Input/Output This connection is bidirectional: the originator (PLC or HMI) produces data consumed by the RMC and the target (RMC) produces data that is consumed by the originator. This connection type is also called an Exclusive Owner connection or the controlling connection. Each RMC can have no more than one Input/Output connection open at a time.
6 Communication The RMC supports both multicast and unicast (point-to-point) I/O connections. Traditionally, most EtherNet/IP I/O connections have been multicast, since Allen-Bradley controllers did not support unicast I/O connections until RSLogix 5000 version 18.00.00 was released in March 2010.
RMC70/150 and RMCTools User Manual 2. Under Incoming Cyclic I/O Data, in the Location for Incoming Data box, type the starting address where the data sent by the I/O controller each RPI will be written. Use the Browse button to use the Address Selection Tool to find the location you want to use. Notice that the length of the Output Data is specified in the PLC, not in RMCTools.
6 Communication O->T Format 32-bit Run/Idle3 Heartbeat O->T Fixed/Variable Fixed O->T Connection Type Point-to-point3 O->T Priority O->T Size 3 Scheduled3 4, 8, …, 496 bytes 0 bytes T->O Format Modeless3 T->O Fixed/Variable Fixed3 T->O Connection Type Point-to-point or Multicast T->O Priority Scheduled3 T->O Size 4, 8, …, 500 bytes O->T RPI 2ms to 10000ms T->O RPI 2ms to 10000ms Configuration Data Size 1 0 bytes The term ‘Assembly Instance’ is used by some applications instead of
RMC70/150 and RMCTools User Manual any system that will use 802.1D/Q priority tagging. See the EtherNet/IP Settings Page topic for more details. DiffServ Code Point (DSCP) marking is enabled by default. If you are using Rockwell Automation Ethernet modules with older firmware, and RMC firmware 3.41.0 or newer, you may need to disable this feature. See the EtherNet/IP Settings Page topic for more details.
6 Communication the one it sent to the RMC when issuing the command, and it can then safely examine the In Position bit. Setting the Sync Register Mode To select whether the Sync Register is used: 1. In the Project pane, expand the Modules folder, double-click the CPU module, and choose EtherNet/IP. 2. Under Sync Register, select either Use a Sync Register or Do not use a Sync Register. The second option requires RMC70/150 firmware 3.39.0 or newer.
RMC70/150 and RMCTools User Manual 3. Write to the Command Registers Write the Command registers and all required command parameters to the Output Data for all commands you want to issue. You can issue up to one command per axis. Leave the Command register set to 0 for each axis that will not receive a command. 4. Change the Sync Out Register The easiest way to do this is to add one to it. However, you must take care to handle overflowing this register.
6 Communication 1. If you need to write to other variables that are used by the user program (e.g. for defining speeds, setpoints, etc.), do so first. 2. Write a number to the StartProgram variable. The number will specify which user program to run. Handling Broken Connections Many applications require some type of action if the EtherNet/IP I/O connection breaks during machine operation.
RMC70/150 and RMCTools User Manual As soon as the first register is encountered that is not a current or initial variable register, the guarantee for data consistency no longer applies. Remaining registers in the I/O block will be processed as time allows on subsequent motion loops, taking up to a maximum of 10 ms. For this reason, variables should be included first in the Incoming I/O Data Area of the Indirect Data Map in order to ensure their consistency.
6 Communication To find these registers when editing the Program Triggers or a User Program, use the Address Selection tree and browse to: Controller > Communication Settings > Ethernet Handling Broken I/O Connections in the PLC The method of detecting and handling a broken EtherNet/IP I/O connection varies from PLC to PLC. Review the documentation included with your PLC or EtherNet/IP communication card for details. Some PLC detection procedures are shown below.
RMC70/150 and RMCTools User Manual ControlLogix and represent external modules. In the Instance Name field of the GSV blocks, type the name you selected for the particular RMC module. If the connection to the module is running, then the high four bits of the EntryStatus will be equal to 4 and the FaultCode will be equal to 0. This is described in the RSLogix 5000 online help's "Accessing the MODULE Object" topic.
6 Communication These status bits are located in the DDT input structure in a field called Status, which is an array of 16 BYTEs. To determine the correct bit to check for a given target device, you must locate the Connection Bit field for the device: 1. Start Unity Pro. 2. In the DTM Browser, right click on the Ethernet communication module (named ‘NOC01’ in this example) and click Open. 3.
RMC70/150 and RMCTools User Manual • Initial Data This entry is logged only if the Sync Register is used and the Ethernet I/O Logging filter option for the Event Log is set to All. It is reported when the first incoming I/O data is received after a new controlling I/O connection is established, showing both the data and the value of the Sync In register. Notice that the data is not yet applied to the RMC.
6 Communication 1756-EWEB 4.5.3 1768-ENBT 2.1.0 1768-EWEB 1.2.9 1794-AENT 4.1.1 If you have one of these modules with an older revision, then you should update the Rockwell Ethernet module firmware, if possible. Solutions There are three possible solutions: 1. Update Rockwell Module firmware (recommended) Update the firmware in the affected Rockwell Ethernet module. 2. Disable Non-Zero DSCP Values in RMCTools This is not necessary if you followed the recommended solution #1.
RMC70/150 and RMCTools User Manual Configuring Multiple Connections To establish multiple I/O connections with an RMC, you simply create I/O connections from each originator (PLC or HMI) to the RMC as you would normally. However, you must obey the following rules in order for all of the connections to be successful: • All connections must be set up to use multicast (not unicast) for target-to-originator (T->O) packets. • All connections must use the same RPI value.
6 Communication • Read Rockwell Automation’s EtherNet/IP Performance application guide (Publication ENET-AP001D-EN-P). It covers this subject in greater detail. Considerations for RMC EtherNet/IP Performance The RMC can support EtherNet/IP at its enforced minimum RPIs without compromising its determinism with respect to motion control or EtherNet/IP I/O communications.
RMC70/150 and RMCTools User Manual requirement of each RMC. Usually the RPI for all RMCs will be set the same, and each RMC will have a single connection, so the total utilization can be calculated as shown: Total Required Bandwidth = ( # of RMCs ) x ( 2 / RPI ) Example For 12 RMCs with an RPI of 20 ms each, the total required bandwidth is 12 x ( 2 / 0.020 ), which is 1200 packets/second.
6 Communication • Use two 1756-ENBT modules and divide the RMCs between the two. For example, one could control 15 RMCs (3000 packets/second), and the second could control 10 RMCs (2000 packets/second), putting both within the recommended limits. Considerations for Network Performance The maximum amount of information that 100 Mbps Ethernet can carry in one direction is 100 million bits per second.
RMC70/150 and RMCTools User Manual least one switch or router connected to the network supports IGMP Query. Notice that some switches are now available that provide both IGMP Snooping and IGMP Query in the same switch. 6.8.10.6.8. Using EtherNet/IP Explicit Messaging EtherNet/IP explicit messaging allows the originator (PLC or HMI) to request individual services from the target device (RMC). These requests are made explicitly rather than being scheduled cyclically like I/O.
6 Communication Object Instance 0x01 (1) The Data Table Object supports the following services: Service ID Service Name Description 0x4B (75) Read (LSB First) Read one or more registers from the RMC. All multi-byte values are encoded least-significant byte (LSB) first. 0x4C (76) Write (LSB First) Writes one or more registers to the RMC. All multi-byte values are encoded least-significant byte (LSB) first. 0x4D (77) Read (MSB First) Read one or more registers from the RMC.
RMC70/150 and RMCTools User Manual The byte order of multi-byte fields is determined by the Read service selected. For service 0x4B (Read LSB First), the least-significant byte will be sent first. For service 0x4D (Read MSB First), the most-significant byte will be sent first. 1 Write (LSB or MSB First) Request: Offset Type1 Size Field Name 0 USINT 1 Service Must be 0x4C (LSB First) or 0x4E (MSB First). 1 USINT 1 Path Size Must be 0x02. 2 USINT[4] 4 Path Must be 0x20 0xC0 0x24 0x01.
6 Communication maximum value varies based on the PLC, but is generally around 120 registers. 0x13 (19) Request length too small. 0x15 (21) Request length too large. This error will occur on a Read or Write request if the length of the request is smaller than expected. This error will occur on a Read request if the length of the request is larger than expected. Accessing Standard CIP Services and Attributes The RMC supports a number of standard CIP objects.
RMC70/150 and RMCTools User Manual • Troubleshooting PROFINET RMC PROFINET IO Specifications The following chart summarizes the PROFINET IO specifications for the RMC75E and RMC150E products: Item RMC75E RMC150E Vendor ID Vendor Name 0x0192 Delta Computer Systems, Inc. Device ID 0x0002 0x0003 Device Name RMC75E RMC150E Certificate No.
6 Communication • Cyclic I/O data is always sent between the PLC and RMC at the specified update time. For example, status information from the RMC, and variables to be written to the RMC would typically be part of the cyclic data. Cyclic I/O data is defined by the Incoming and Outgoing Cyclic I/O Data. • Acyclic data is sent only when it is needed. It is useful for infrequent data transfers, or for very large data transfers.
RMC70/150 and RMCTools User Manual Installing the GSD File Before an RMC device can be added to the PROFINET configuration, the GSD files for the RMC must be installed in the PROFINET configuration software. The PROFINET GSD files for the RMC75E and RMC150E are available for download from Delta’s website, and are installed in a PROFINET subfolder under the RMCTools install folder. Delta provides three versions of GSDML files for each product: • • GSDML-V2.0-Delta-RMC75E-20100826.xml • • GSDML-V2.
6 Communication recommended because it can result in the IP address being changed or cleared at times when RMCTools is connected to the RMC. An alternative method is to set the IP address settings in RMCTools, and then instruct the IO-Controller through the PROFINET Configuration Software to leave the IP address as it is when connecting to the IO-Device. For example, STEP7’s HW Config software version 5.
RMC70/150 and RMCTools User Manual in the Output Data by the PLC program, a copy of the Output Data could prematurely be sent to the RMC, mixing some old data with some new data. When the Sync Register is used, this problem is avoided by the simple convention of having the PLC program update the Sync Register after all other registers have been set to the desired values. The RMC is then guaranteed to receive all the data in a single block.
6 Communication used if the PLC will be writing commands to the Command Area. The following sequence is recommended: 1. Wait Until the Sync In and Sync Out Registers Match If they do not match, then this means that another command or set of commands is in progress. 2. Clear Old Commands from the Command Registers Clear old commands from the command registers for each axis. Otherwise, when the Sync Out register is changed, the commands would be re-issued.
RMC70/150 and RMCTools User Manual count from 0 to 9,999, and then wrap back down to 0 without an error. Take care to ensure that you only update the Sync Out Register once so that the commands do not get re-issued. 5. Wait until the Sync In and Sync Out Registers match. When the Sync In Register has changed, you know the data has been applied to the RMC. It is important to wait until this occurs before using the status bits in the Input Data (if the Input Data includes any status bits).
6 Communication Indirect Data Map The only data guaranteed to be consistent are variables, if they are placed first in the Incoming Data area of the Indirect Data Map. The size of guaranteed consistent data depends on the loop time: • 1 ms or longer loop time: The first 100 registers will be consistent if they are all variables. • 500 us loop time: The first 50 registers will be consistent if they are all variables.
RMC70/150 and RMCTools User Manual In order to allow users to read and write registers in the RMC starting at locations other than the beginning of a register file, the RMC defines four Custom Data Records, which are addressed as Slot 0, Subslot 1, and Index 1000-1003: Index Starting Address Description 1000 Configurable The starting address is configurable in RMCTools. 1001 Configurable The starting address is configurable in RMCTools.
6 Communication of the controlling connection. Notice that Controlling Connection can be either a PROFINET or EtherNet/IP IO connection. Tag Name Description _Enet.CCStatus.Active Controlling Connection Active This bit is set as long as a Controlling Connection is currently active. If the connection is closed or timed out, this bit will be cleared. _Enet.CCStatus.TimedOut Controlling Connection Timed Out This bit is not used for PROFINET. _Enet.
RMC70/150 and RMCTools User Manual The Communications Statistics window provides information on open PROFINET I/O connections, including producing and consuming registers and the update time. The statistics also provide advanced information on the Ethernet traffic. 6.9. PROFIBUS 6.9.1. PROFIBUS-DP Slave Communications Overview PROFIBUS-DP Slave is the communication protocol available on the RMC75P and on the RMC150E PROFIBUS module.
6 Communication Connection Status The PROFIBUS Connection Status register provides information on the PROFIBUS connection. This register is located at: RMC75P: %MD21.6 RMC150: %MD45.6 This register has one bit defined, which can be used within the RMC user programs as part of handling broken connections: Bit Description 0 Connection Established. This bit will be set when the PROFIBUS interface is in the Data Exchange mode.
RMC70/150 and RMCTools User Manual Bit Description 0 Connection Established. This bit will be set when the PROFIBUS interface is in the Data Exchange mode. Event Log The Event Log Monitor can be used to view the PROFIBUS data. By default, the Event Log only records the changes in the PROFIBUS connection state or address. However, the Event Log Filter can be configured to make a log each time there is a change in the data sent from the PLC to the RMC.
6 Communication The station address on the RMC75P must match the station address as expected by the master. Step 3 explains how to set the station address in the master. Example The station address is: (0 x 10) + (3 x 1) = 3 RMC150E a. In RMCTools, go online with the RMC. b. In the Project Pane, expand the Modules folder and double-click the PROFIBUS module. c. On the PROFIBUS page, enter the desired station address. Use any station address between 1 and 125.
RMC70/150 and RMCTools User Manual up the PROFIBUS. See the topic for the mode you will be using for parameterization and configuration values. 3. Configure the PROFIBUS Network The PROFIBUS network configuration is stored in the master PROFIBUS device. Creating this configuration is the most difficult step in making the network work. This step requires a device description file (GSD file) from each device in the network, including the RMC. The following steps outline configuring your PROFIBUS-DP network.
6 Communication 6.9.3.2. Configuring a PROFIBUS-DP Network with COM PROFIBUS Before reading this topic, you should read and understand PROFIBUS Configuration. This topic only gives a specific example of doing one step of the configuration process. In addition, Siemens may, and probably will, change the steps taken here slightly with each version of COM PROFIBUS. The following steps have been tested with COM PROFIBUS versions 3.0 and 3.3: 1. Start COM PROFIBUS. 2.
RMC70/150 and RMCTools User Manual • o Right-click on the RMC slave device icon, and click Configure from the shortcut menu. o o In the Configure: Delta RMC Family dialog, click Order No. In the Select by Order Number dialog, click the order number determined in the previous steps. Click Accept. Click Close. Click OK. 6. You may wish to assign register addresses within the master at this time. This is optional for many masters, because it can be done in the master configuration software.
6 Communication • In the Station box, enter the station address of your master. Click OK. • • On the Browse menu, click Network Properties. In the Baud Rate field, select your desired baud rate. The RMC is capable of speeds up to 12000kBaud (12MBps); check the rates supported by your master and other slave devices. Click OK. 4. Add the GSD file to your configuration programs GSD database. • On the Library menu, click Add GSD. • Browse to the GSD file.
RMC70/150 and RMCTools User Manual • On the File menu, click New. If you have multiple networks installed you will need to then select the network type: select PROFIBUS. If you are not given the option of selecting PROFIBUS, you may not have installed the PROFIBUS driver for SyCon. • On the Insert menu, click Master. Move the cursor to the top device slot in the window area (the cursor will change to an arrow with an M next to it), and click to place the master device.
6 Communication PROFIBUS network, but the values are not what you expect or do not make sense, return to this step and try swapping the word order. • Click OK. 7. Add any other RMC devices you want on the same network. To do this, repeat steps 5 and 6. 8. Save your configuration. 9. Send the configuration to the master device. This step varies depending on the master you selected. 6.9.4. Using I/O Modes 6.9.4.1.
RMC70/150 and RMCTools User Manual 1-7) (Prm_Data) Parameters (bytes 8-13) 00 00 00 xx* 02 20 00 00 00 xx* 02 10 00 00 00 xx* 02 08 00 00 00 xx* 02 04 (User_Prm_Data) * The xx parameter can be 00 or 01 and selects whether the least-significant word comes first (00) or most-significant word comes first (01). Notice that some masters will not support the larger I/O modes. Using the I/O Modes 1.
6 Communication • Command Position (REAL Data Type) • • FastSpeed (REAL Data Type) • DwellTime (REAL Data Type) SlowSpeed (REAL Data Type) Therefore, the user sets the tag names and Data Types of the first four items in the Variable Table like this: 4. Perform Communications After configuring the PROFIBUS and setting up the Indirect Data Map and Variable Table, start the PROFIBUS communications.
RMC70/150 and RMCTools User Manual 3. Bruce edits the Program Triggers to start the Cycle program when StartProgram is 1, and to start the MoveHome program when StartProgram is 2. 4. Now Bruce is ready to perform the communications. To run the Cycle program, the PLC first sets up the position and speed variables, then sets the StartProgram variable to 1. To run the program again, the PLC must first set the StartProgram variable to some other number (such as 0), then set it to 1.
6 Communication 6.9.5. Using Basic/Enhanced Modes (RMC75P Only) 6.9.5.1. Basic/Enhanced PROFIBUS Modes (RMC75P Only) The RMC75P supports four additional modes that are not supported by the RMC150E: Basic, Basic+, Enhanced, and Enhanced+. These Basic/Enhanced modes require more programming in the PLC and are typically more difficult to use than the I/O modes. Therefore, most users will prefer the I/O modes. However, the I/O modes typically require more programming in the RMC.
RMC70/150 and RMCTools User Manual Required (16-bit words) consistent** consistent** I/O words I/O words + of 16 consistent** 16 consistent** I/O words I/O words 16 consistent** Input words + 16 consistent** Input words *For commands with more than 5 command parameters, only the first 5 parameters will be issued. The remaining parameters will be 0. To issue such commands completely, include them in a user program and issue a command via PROFIBUS to start the user program.
6 Communication values, but Delta has found several cases where it is not supported correctly or manual setup is otherwise required. Configuration: FF Parameters: Prm_Data (bytes 1-7): See the PROFIBUS DP specification for details. User_Prm_Data (bytes 8-14): 00 00 00 xx* 00 08 * The xx parameter can be 00 or 01 and selects whether the least-significant word comes first (00) or most-significant word comes first (01).
RMC70/150 and RMCTools User Manual 6 7 Integer Float* Read/Write Register Bit Bit Description 31 Read/Write 30 Read/Write Request 16-29 Reserved 15-8 R/W Address File 7-0 R/W Address Element Explicit Write Value *These registers are typically REAL data type (floating point), but in some cases may be DINT or DWORD integers, such as variables declared as such.
6 Communication Thereby, the values from the selected registers in the RMC70 can be read from and written to by writing to and reading from the Indirect Data registers. To set up the Indirect Data Map: 1. Open the Indirect Data Map Editor. 2. In the Register column of the first Indirect Data Map entry, type "%MD8.0" and press Enter. This will map Axis 0 Status Bits register to the first item in the Indirect Data Map.
RMC70/150 and RMCTools User Manual Issue a Single Command To issue a command, set up the contents of the first six registers of the Command Block, and when complete, toggle the Command Request bit in the first Command Block register. Notice that commands with more than 5 command parameters cannot be issued via PROFIBUS. To issue such commands, include them in a user program and issue a command via PROFIBUS to start the user program. To issue a single command to the RMC70, use the following steps: 1.
6 Communication 30 29 Action 0 0 Single Command: When both bits are zero, the command is not deferred. The command is executed normally. If the PROFIBUS command buffer contains any commands, an error is logged in the Event Log and the commands are removed from the command buffer without being executed. The new command is still issued. 0 1 Last Deferred: This command and any deferred commands in the PROFIBUS command buffer are executed simultaneously.
RMC70/150 and RMCTools User Manual • Do not change the Read/Write Request bit after a read request until you have processed the data in the Read Response register. • Do not change the read address or Read/Write bit when the Read/Write Request bit does not match the Read/Write Acknowledge bit. Write to the RMC70 To write to the RMC70, use the following steps: • Wait until the Read/Write Request bit is equal to the Read/Write Acknowledge bit.
6 Communication • Data Changes (the Command Channel Logging and Data Channel Logging boxes must be set to All in the Event Log filter for PROFIBUS) Each time the data in the Command Block changes, the data will be logged with an entry labeled changed. The entry will also specify which data changed, as described below.
RMC70/150 and RMCTools User Manual Assume a value of 46.2 was written to %MD56.0 via PROFIBUS. The Event Log may look like this: Step 38 shows that the File is 56 (38 in hexadecimal), bit 31 is set to 1 for a write. The Explicit Write register contains the write value 46.2, but it is very difficult to decipher a float value from its hexadecimal representation. Step 39 shows that the Read/Writer Request bit changed, which requested the write. 6.9.5.3.
6 Communication The Basic+ mode uses two fixed-length blocks of data: the Command Block and the Response Block. Command Block The Command block is a block of 8 contiguous 32-bit output registers. These registers are sent from the PLC or PC to the RMC. The Command Block has the following structure: Register Data Number Type Description Command Area: Registers 0 - 5 are used for issuing commands to the RMC70.
RMC70/150 and RMCTools User Manual 7 Float* Explicit Write Value *These registers are typically REAL data type (floating point), but in some cases may be DINT or DWORD integers, such as variables declared as such. Response Block The Response Block is a block of 16 contiguous 32-bit input registers (cyclic read registers), corresponding to the Indirect Data Map registers 0 to 15 in the RMC70. These registers are continuously sent from the RMC70 to the PLC or PC.
6 Communication Registers within a consistent block are all updated at the same time. Notice that the Response Block area is divided into two consistent blocks. Therefore, the first eight (8) registers may have been updated at a different time than the last eight (8) registers. This is important because command and read/write synchronization use the first register, and therefore only the following seven (7) registers are guaranteed to have been updated at the same time as this synchronization register.
RMC70/150 and RMCTools User Manual For example, suppose a PLC issues a command to axis 1 and then needs to wait for it to get in position. To do this, the PLC must issue the command, wait for the command to be received, and finally check the axis's In Position status bit.
6 Communication Using the Data Blocks Issue a Single Command To issue a command, set up the contents of the first six registers of the Command Block, and when complete, toggle the Command Request bit in the first Command Block register. Notice that commands with more than 5 command parameters cannot be issued via PROFIBUS. To issue such commands, include them in a user program and issue a command via PROFIBUS to start the user program. To issue a single command to the RMC70, use the following steps: 1.
RMC70/150 and RMCTools User Manual NOTE: Until the Command Acknowledge bit matches the Command Request bit, the Input Data registers, including the Status Bits registers, do not reflect having received the command. Example A Move Absolute (20) command is issued using the PROFIBUS Command Block. Until the Command Requestbit matches the Command Acknowledgebit after the Command Requestbit has been toggled, the In Positionbit should not be checked as it may still be set for the previously requested move.
6 Communication registers in the Response Block to return the value of a read from any single register in the RMC70. When a read is requested from any single register in the RMC70, the response from this single-register read will be placed in the Axis 0 Read Response register. In order to see the response from the PROFIBUS, you must map the Axis 0 Read Register into one of the Indirect Data Map registers.
RMC70/150 and RMCTools User Manual acknowledge that the write was processed. In addition, the RMC70 also places the write value in the Read Response register. This provides a simple method of verifying that the write was completed. Debugging Using the Event Log for PROFIBUS The Event Log can record every change in the PROFIBUS data received by the RMC75P. This is the data in the Command Block. It does not record the data in the Response Block, which is sent by the RMC75P.
6 Communication Cmd Register, Cmd Parameter 1, Cmd Parameter 2, Cmd Parameter 3, Cmd Parameter 4, Cmd Parameter 5 Example: Assume a Move Absolute command has been issued to the RMC70 via PROFIBUS. The Event Log may look like this: Steps 28-31 show how the command parameters are changing. The command word shows the command that will be issued, (hexadecimal 14 is 20 in decimal), and the command select bit ( the 1 in the middle of the word).
RMC70/150 and RMCTools User Manual • Seven (7) contiguous registers in the RMC70 can be explicitly written or read. See Read Any Contiguous RMC70 Registers and Write to Any Contiguous RMC70 Registers below. • Commands can be issued to any number of axes simultaneously. See Command Block, Issue a Single Command, and Issue Simultaneous Commands below. • PROFIBUS bandwidth used: 2 blocks each of 16 consistent I/O words (16 bits each).
6 Communication 17 Axis 1 Select 16 Axis 0 Select 8-15 Reserved 7-0 Command Number 1 Float Command Parameter 1 2 Float Command Parameter 2 3 Float Command Parameter 3 4 Float Command Parameter 4 5 Float Command Parameter 5 Data Channel 0: Registers 6 and 7 are used for reading and writing to any register in the RMC70. See Read any Single RMC70 Register and Write to any Single RMC70 Register for details on using these registers.
RMC70/150 and RMCTools User Manual *These registers are typically REAL data type (floating point), but in some cases may be DINT or DWORD integers, such as variables declared as such. Response Block The Response Block is a block of 16 contiguous 32-bit input registers (cyclic read registers). Registers 0-7 correspond to the Indirect Data Map registers 0 to 7 in the RMC70. These registers are continuously sent from the RMC to the PLC or PC. Registers 8-15 are for explicit reads or writes.
6 Communication 14 Float* Explicit Read Data 5 15 Float* Explicit Read Data 6 *These registers are typically REAL data type (floating point), but in some cases may be DINT or DWORD integers, such as variables declared as such. Consistent and Non-Consistent Registers Registers 0-7 of the Response Block are consistent. That is, they are all updated at the same time. These registers are suitable for tight synchronization with the commands, read/write requests, or each other.
RMC70/150 and RMCTools User Manual • Task 1 Current Step In addition, the user would like to read some other registers occasionally. Implementation • First, PROFIBUS communications requires that Axis 0 Status Bits register must be in the first Response Block register, which is entry 0 in the Indirect Data Map. • Second, the Read Response register is needed in order to read other registers occasionally.
6 Communication 7. Wait until the Command Request bit is equal to the Command Acknowledge bit. When they are equal, the RMC70 has received the command. NOTE: Until the Command Acknowledge bit matches the Command Request bit, the Input Data registers, including the Status Bits registers, do not reflect having received the command. Example A Move Absolute (20) command is issued using the PROFIBUS Command Block.
RMC70/150 and RMCTools User Manual Registers 0-7 of the Response Block return the values from 8 registers, which must be determined when setting up the communications. However, it is possible to set up one of the registers 1-7 in the Response Block to return the value of a read from any single register in the RMC70. When a read is requested from any single register in the RMC70, the response from this single-register read will be placed in the Axis 0 Read Response register.
6 Communication To further clarify the ordering, keep these basic rules in mind: • Do change the read address and Read/Write bit before toggling the Read/Write Request bit. • Do not change the Read/Write Request bit after a read request until you have processed the data in the Read Response register. • Do not change the read address or Read/Write bit when the Read/Write Request bit does not match the Read/Write Acknowledge bit.
RMC70/150 and RMCTools User Manual • Wait until the Read/Write Request bit is equal to the Read/Write Acknowledge bit. When they are equal, the RMC70 has received the data written to it. To further clarify the ordering, keep these basic rules in mind: • Do change the Read/Write bit, write address, and write value before toggling the Read/Write Request bit. • Do not change the Read/Write bit, write address, or write value when the Read/Write Request bit does not match the Read/Write Acknowledge bit.
6 Communication • Data Channel 0 These 2 registers contain the data for reading or writing a single RMC70 register. • Data Channel 1 These 8 registers contain the data for reading or writing to contiguous RMC70 registers. Debugging the Command Area Data The Event Log displays the Command Area data in the following order: Cmd Register, Cmd Parameter 1, Cmd Parameter 2, Cmd Parameter 3, Cmd Parameter 4, Cmd Parameter 5 Example: Assume a Move Absolute command has been issued to the RMC70 via PROFIBUS.
RMC70/150 and RMCTools User Manual In step 43, the Element is 10 (A in hexadecimal). In step 44, the File is set to 56 (38 in hexadecimal). In step 45, the count is set to3. In steps 46 to 48, the write values are entered. In step 49, bit 31 is set to 1 for a write. In step 50, bit 30 is toggled to request the write. 6.9.5.5. PROFIBUS Mode: Enhanced+ The Enhanced+ mode is one of the Basic/Enhanced PROFIBUS Modes available only on the RMC75P. Most users will prefer the I/O Modes instead.
6 Communication Parameters: Prm_Data (bytes 1-7): See the PROFIBUS DP specification for details. User_Prm_Data (bytes 8-14): 00 00 00 xx* 01 10 08 * The xx parameter can be 00 or 01 and selects whether the least-significant word comes first (00) or most-significant word comes first (01). Data Blocks The Enhanced+ mode uses two fixed-length blocks of data: the Command Block and the Response Block. Command Block The Command block is a block of 16 contiguous 32-bit output registers.
RMC70/150 and RMCTools User Manual 7 Float* 31 Read/Write 30 Read/Write Request 16-29 Reserved 15-8 R/W Address File 7-0 R/W Address Element Explicit Write Value Data Channel 1: Registers 8-15 are used for explicit reads and writes. See Read Any Contiguous RMC70 Registers and Write Any Contiguous RMC70 Registers below.
6 Communication 31 Command Acknowledge 30 Read/Write Acknowledge 0-29 Axis 0 Status Bits 1 Float* Indirect Data 1 2 Float* Indirect Data 2 3 Float* Indirect Data 3 4 Float* Indirect Data 4 5 Float* Indirect Data 5 6 Float* Indirect Data 6 7 Float* Indirect Data 7 Note: Registers 8-15 are not consistent with registers 0-7. See explanation below.
RMC70/150 and RMCTools User Manual Registers within a consistent block are all updated at the same time. Notice that the Response Block area is divided into two consistent blocks. Therefore, the first eight (8) registers may have been updated at a different time than the last eight (8) registers.
6 Communication • Axis 0 Actual Position • • Axis 1 Status Bits • • Task 0 Current Step • The first 8 registers of the Variable Table. Axis 1 Actual Position Task 1 Current Step In addition, the user would like to read some other registers occasionally. Implementation • First, PROFIBUS communications requires that Axis 0 Status Bits register must be in the first Response Block register, which is entry 0 in the Indirect Data Map.
RMC70/150 and RMCTools User Manual To issue a single command to the RMC70, use the following steps: 1. Wait until the Command Request bit in the Command Register (0) of the Command Block is equal to the Command Acknowledge bit in register 0 of the Response Block. If they are not equal, the RMC is currently processing a command request. 2. Enter the command number in bits 0-7 of the Command Register (0) of the Command Block. 3.
6 Communication PROFIBUS command buffer are executed simultaneously. 1 0 First Deferred: This command is placed as a deferred command in the PROFIBUS command buffer, but is not otherwise processed. If the command buffer already contains commands, an error is logged in the Event Log and the commands are removed from the command buffer without being executed. The new deferred command is still placed in the command buffer.
RMC70/150 and RMCTools User Manual Read Any Contiguous RMC70 Registers To read any contiguous RMC70 registers, use the Command Block register 8 and the Response Block registers 16-23. To read any contiguous RMC70 registers, use the following steps: • Wait until the Command Block register 8 Read/Write Request bit is equal to the Response Block register 16 Read/Write Acknowledge bit. If they are not equal, the RMC70 is currently processing a read or write request.
6 Communication • Do not change the Read/Write bit, write address, or write value when the Read/Write Request bit does not match the Read/Write Acknowledge bit. Note: The RMC70 sets the Read/Write Acknowledge bit equal to the Read/Write Request to the acknowledge that the write was processed. In addition, the RMC70 also places the write value in the Read Response register. This provides a simple method of verifying that the write was completed.
RMC70/150 and RMCTools User Manual the initial data showed that the Command Request bit already was 1, which explains why the command was not issued. The bit must be toggled to send a command, so he should have written a 0. • Data Changes (the Command Channel Logging and Data Channel Logging boxes must be set to All in the Event Log filter for PROFIBUS) Each time the data in the Command Block changes, the data will be logged with an entry labeled changed.
6 Communication Debugging Data Channel 0 The Event Log displays the Data Channel 0 data in the following order: Read/Write Register (register 6), Explicit Write Value (register 7) Example: Assume a value of 46.2 was written to %MD56.0 via PROFIBUS. The Event Log may look like this: Step 38 shows that the File is 56 (38 in hexadecimal), bit 31 is set to 1 for a write. The Explicit Write register contains the write value 46.
RMC70/150 and RMCTools User Manual The RMC150 does not support serial RS-232 or RS-485. However, the RMC150E can communicate to serial RS-232/485 devices via serial-to-Ethernet converters, available from manufacturers such as Lantronix (UDS100-IAP) or Allen-Bradley (1761-NET-ENI). Contact Delta for more information.
6 Communication 6.10.2. Using Serial Communications Serial RS-232 or RS-485 communication is only available on the RMC75S, and the Monitor port of the RMC75P. Communicating via serial RS-232 or RS-485 from a PLC or HMI to the RMC70 consists of the following: • Reading RMC Registers • • Writing to RMC Registers Issuing Commands This topic describes the basics of doing this with serial communications. All data in the RMC is stored in registers.
RMC70/150 and RMCTools User Manual Wires 2 Max Length 3 2 + CMN 50-100 ft 4000 ft Note: The maximum cable lengths vary depending on the baud rate, termination (for RS-485), and capacitance of the cable. See the RS-485 Termination and Biasing topic for details. Each of the above features is described below: Duplex (Full or Half) Full-duplex means that each device on a serial network can send and receive at the same time, effectively doubling the bandwidth of the network.
6 Communication 3. Click OK. Configuration Options The following options are available under the Serial page in the serial module's Properties dialog: Serial Port Select port 1. Note: The RS232 Monitor (port 0) port is used by RMCTools. It can be used for other serial communication as well, but its settings cannot be changed. Protocol Settings Select the protocol supported by your master device and the address of the RMC75S. The address must match the address that master device expects.
RMC70/150 and RMCTools User Manual Fig. 1: Point-to-Point RS-232 Network Fig. 2: Point-to-Point RS-485 Network Figure 2 shows biasing and termination. Termination and biasing can be left out of networks at the expense of maximum cable distance and noise immunity. See RS-485 Termination and Biasing for details. Multi-Drop Only RS-485 supports multi-drop. Multi-drop is the connecting of multiple slaves with a single master. Slaves should be chained together.
6 Communication Fig. 4: Two-Wire Multi-drop RS-485 Network 6.10.3.4. RS-232 Wiring for the RMC70 This topic describes the wiring of the RS-232 serial port on the RMC75S. For details on wiring the RS-232 Monitor Port, see the Monitor Port topic. Connectors Both of the 9-pin male DB connectors on the RMC7xS are used for RS-232 communications. A 9-pin female connector is required on the RMC70 end of the connecting cable.
RMC70/150 and RMCTools User Manual A null-modem or crossover cable is typically used for RS-232 communications. The RMC70 RS-232 communications require only three conductors in the cable: RxD, TxD, and GND. See the following wiring diagram for details. Delta recommends that a shielded cable be used to limit susceptibility to outside electrical interference. Cable Wiring Note: The RTS and CTS wires need only be connected if the RMC75S serial port has been configured for Hardware Flow Control.
6 Communication The RMC75S serial port 1 supports 2-wire RS-485. It does not support 4-wire RS-485. RS-485 uses the 8-pin connector block on the RMC75S CPU module (pins 6, 7 and 8 are for power to the controller). The pin-out is as follows: Pin RMC70 Label RS-485 (2-wire) Function 1 +T/R Rx/Tx B (+) 2 Trm Jpr See RS-485 Termination and Biasing 3 -T/R Rx/Tx A (-) 4 SCmn Common 5 Bias Jumper See RS-485 Termination and Biasing NOTE: Pins 2 and 4 are for termination and biasing.
RMC70/150 and RMCTools User Manual 19,200 3750 4000 9,600 4000 4000 4,800 4000 4000 2,400 4000 4000 6.10.3.6. RS-485 Termination and Biasing Termination and Biasing are concepts that only apply to differential wiring. As such, they only apply to RS-485 and not RS-232. Note: Delta recommends you always use biasing on a RS-485 network. To determine whether you need termination, read the Termination Concept section in this topic.
6 Communication 9,600 4000 Not Required 4000 4,800 4000 Not Required 4000 2,400 4000 Not Required 4000 Cable Length Derivation The values presented in the chart above are based on 24AWG cable with capacitance of 16 pF/ft and the following reasoning. Signals travel through a cable at approximately 66% of c or 0.66 ft/ns. It is assumed that a signal transition will dampen out after three round trips in the cable. This damping must occur before the bit is sampled or within half a bit time.
RMC70/150 and RMCTools User Manual First, we calculate how much DC resistance will be between the biasing resistors. Calculating the parallel resistance of all DC terminations and node input impedances does this. For a single master and two RMCs we have the following components: • Master load: 1 unit load, which is defined as 12 kΩ. • RMC loads: unit load each, which is 48 kΩ.
6 Communication Full-duplex DF1 is used for peer-to-peer communication. Therefore, only two devices can communicate with one another. The RMC70 only supports full-duplex when used with RS232. Half-duplex DF1 is used for master-slave communication with one or more slaves. When more than two devices communicate with one another, 2-wire RS-485 is used. Otherwise, any line driver can be used.
RMC70/150 and RMCTools User Manual Switch Settings Set the intelligent function module switches for the desired serial settings. See section 4.5.2 of the following Mitsubishi manual: Q Corresponding Serial Communication Module (User’s Manual). The data bits must be 8 and the protocol must be Bidirectional. Make sure you set the baud rate, parity and stop bits identically in the QJ71C24N and RMC75S. Writing to the RMC75S Use the GP.BIDOUT instruction to write to registers in the RMC75S.
6 Communication Read Count Register File Register (16 bits) (16 bits) (16 bits) Element Description: Read Count This is the number of 32-bit registers to be read from the RMC70, starting at the address given by the file and element. Register File This is the file number of the address of the first register to be read. For example, for %MD8.12, the file number is 8. Register Element This is the element number of the address of the first register to be read. For example, for %MD8.
RMC70/150 and RMCTools User Manual from a Modbus slave, and the slave responds. A number of functions are defined under Modbus. The following functions are supported by the RMC70: • Read Multiple Registers (FC 3) • • Read Input Registers (FC 4) • • Get Diagnostics (FC 8) • Read/Write Registers (FC 23) Write Single Register (FC 6) Write Multiple Registers (FC 16) Each of the above functions acts on 4X or Holding registers.
6 Communication The MSG block parameters differ slightly depending on the controller and programming software. The parameters used by RSLogix 5 version 3.2.0.0, RSLogix 500 version 6.30.00, and RSLogix 5000 version 17.00.00 for the PLC-5, SLC 5/05, ControlLogix and CompactLogix controllers respectively are described below. The SoftLogix 5 parameters are similar. ControlLogix and CompactLogix MSG Block Parameters The ControlLogix or CompactLogix MSG block is displayed as follows.
RMC70/150 and RMCTools User Manual Note: If you are also using EtherNet/IP I/O cyclic messaging, you can use the name of the name you assigned to the Generic Ethernet Module that references the RMC. This name will constitute the entire Path. For example, if you assigned the name MyRMC, then the Path would be: MyRMC.
6 Communication Control Block This parameter points to a block of integer-file registers (51 registers for Ethernet, 12 for serial). Set this to a block of registers, and then use the Setup Screen option in the MSG ladder logic block to modify those register values: • • This Controller: This section holds parameters for the SLC 5/05. o Communication Command: This parameter will be set to 500CPU Read, or 500CPU Write, depending on what was selected in the MSG block itself (as described above).
RMC70/150 and RMCTools User Manual after power-up, it is because your SLC processor and/or firmware is old. Newer SLC processors do not have this problem. PLC-5 MSG Block Parameters The PLC-5 MSG block is displayed as follows: The Control parameter points to a block of 51 N-file (integer) registers or two (2) MG-file (message) registers.
6 Communication Serial Communications: To edit the parameters of the message block, select the MSG block, enter an unused MSG file in the MSG File parameter, and double-click Setup Screen. This brings up a dialog with the following options: This Controller: This section holds parameters for the MicroLogix. Communication Command: This parameter can be set to PLC5 Read, PLC5 Write, 500CPU Read, or 500CPU Write.
RMC70/150 and RMCTools User Manual Data Table Address: Enter the address of the first Allen-Bradley PLC register to read RMC registers into, or to write to RMC registers from. Size in Elements: Enter the number of RMC registers to read or write in this field. Target Device: This section holds parameters for the target device. Message Timeout: Indicate the number of seconds to wait for the RMC to respond before determining that the attempt failed. This can be set as low as a few seconds.
6 Communication Reading DWORDs from the RMC All items in the RMC have F-file addresses. Allen-Bradley defines F file data as 32-floating point values. All the RMC registers have F-file addresses, even if they are DWORDs or DINTs. For example, the Status Bits and Error Bits in the RMC are DWORDS. To read these values, read them using their F addresses as given in the RMC.
RMC70/150 and RMCTools User Manual such as the Variable Table or Command Area, you need not set up the Indirect Data Map for the Incoming Data. Example If you have a 4-axis controller, you may wish to set up the Outgoing Data at the beginning of the Indirect Data Map to include the Actual Position and the Status Bits for each axis, in addition to information on Task 0, which perhaps runs your user programs.
6 Communication the Variable Table, or Command Area as discussed in the Determine I/O Data Locations in the RMC section above. For example, the EtherNet/IP Settings Page below shows an RMC150 with the Outgoing Data coming from the Indirect Data map starting at item 0 and the Incoming Data going to the Indirect Data starting at item 12. 4. Choose Whether to Use a Sync Register The Sync Register provides a method for the PLC to synchronize the Input Data and Output Data.
RMC70/150 and RMCTools User Manual 4. In the shortcut menu that appears, click New Module. The following dialog box will be displayed: 5. Expand the Communications node, click the ETHERNET-MODULE type and click OK. The following dialog box will be displayed: 556 Delta Computer Systems, Inc.
6 Communication 6. Fill in the fields in this dialog box as follows: Name: Type a valid module name for the RMC. Description: Type a description. Comm Format: Select Data - REAL. Address/Host Name: Choose IP Address and enter the IP Address or host name of the RMC. The RMC must have its IP address set up to match this address. Input: Set the Assembly Instance to 1 and set the Size to the number of registers to transfer.
RMC70/150 and RMCTools User Manual 8. Enter a Requested Packet Interval (RPI) between 2.0 and 3200.0 ms in steps of 1.0 ms. The RMC ignores fractions of a millisecond and cannot support an RPI below 2.0 ms. A commonly used RPI is 20.0 ms. Very low RPIs may flood the network. 9. Make sure to check Use Unicast Connection over EtherNet/IP. This option is very important for reducing network bandwidth required, but is available only in RSLogix version 18.00.00 and newer. 10.
6 Communication [Name]:O REAL[size] [name]:I.Data[4] Indirect Data [3] Indirect Data [4] etc. etc. etc. This is the Output Data which will be sent to the RMC's Incoming Cyclic I/O Data area. If you selected to use a Sync Register, the first item in this array is the SyncOut register, and the data that will be written to the RMC begins at [name]:O.Data[1]. Tag [Name]:C SINT[400] With Sync Register Without Sync Register [name]:O.Data[0] SyncOut Register Incoming Data Item[0] [name]:O.
RMC70/150 and RMCTools User Manual 1. Wait Until the Sync In and Sync Out Registers Match If they do not match, then this means that another write is in progress. 2. Write to the Output Data Write the desired to the Output Data array. 3. Change the Sync Out Register The easiest way to do this is to add one to it. However, you must take care to handle overflowing this register (the Sync register is a REAL). One method is to add one and then MOD it with some large number, such as 10000.
6 Communication 5. Wait Until the Sync In and Sync Out Registers Match This indicates that the RMC has received the command and issued it. It is important to wait until the SyncIn and SyncOut match before using the status bits in the Input Data (if the Input Data includes any status bits). See the Using an EtherNet/IP I/O Connection topic for how problems can occur if this step is ignored. See Using an EtherNet/IP I/O Connection for further details.
RMC70/150 and RMCTools User Manual Use the AutomationDirect Hx-ECOM100 modules to communicate with the RMC75E or RMC150E. Refer to the AutomationDirect HX-ECOM-M manual for instructions on how to use it. Setting up the Hx-ECOM100 For each RMC that the PLC will communicate with, use NetEdit to add a Peer-to-Peer configuration to the Hx-ECOM100 for Modbus/TCP. Specify the Modbus/TCP protocol and enter the IP Address of the RMC. The Port number must be 502. The value in the Unit ID is not important.
6 Communication Delta provides instrument drivers for use with National Instruments LabVIEW™ software. These instrument drivers include full-fledged examples that are ready to run. Installing the Instrument Drivers Delta recommends installing the instrument drivers directly from the LabVIEW™ software: 1. In LabVIEW, on the Tools menu, choose Instrumentation and click Find Instrument Drivers. 2. Choose Delta Computer Systems and click Search. 3.
RMC70/150 and RMCTools User Manual 6.11.8. Using Schneider Electric PLCs via EtherNet/IP I/O Several Schneider Electric PLCs support EtherNet/IP I/O communication via plug-in Ethernet communication modules. This topic describes how to use Quantum 140 NOC 771 01, Premium TSX ETC 101, and Modicon M340 BMX NOC 0401 Ethernet communication modules to communicate with the RMC via EtherNet/IP I/O.
6 Communication 3. Set the Cyclic I/O Data Locations in the RMC In the Project pane, expand the Modules folder, double-click the CPU module, and choose EtherNet/IP. In the Outgoing Cyclic I/O Data section, enter the starting location for the Outgoing Cyclic I/O Data. In our example, verify that the location is the Indirect Data Map Entry 0 Value. In the Incoming Cyclic I/O Data section, enter the starting address for the Incoming Cyclic I/O Data.
RMC70/150 and RMCTools User Manual 4. Choose Whether to Use a Sync Register The Sync Register provides a method for the PLC to synchronize the Input Data and Output Data. If you will be writing to the Command Area directly or indirectly via the Indirect Data Map, Delta recommends using the Sync Register. With a Sync Register, the Incoming Data is not written to the RMC until the Sync Register change.
6 Communication 3. Reserve a memory area for the Ethernet module that includes room for all the slave devices you will attach to the module. 2. a. In the Project Browser, expand the Configuration node and double-click on the Ethernet communication module, which is a 140 NOC 771 01 in this example: b. In the property window that opens, select the Configuration tab, and review the Inputs and Outputs sections: deltamotion.
RMC70/150 and RMCTools User Manual These sections define two blocks of %MW registers, one for inputs into the PLC and one for outputs from the PLC. Refer to the manual for your particular Ethernet module to check how much data is required for the module itself, and then add the data that will be required by the slave devices. c. 3. In our example, we will need 11 incoming registers (produced by the RMC) and 12 outgoing registers (consumed by the RMC).
6 Communication 6. a. • RPI: Select the desired update rate. A commonly-used RPI is 20.0 ms. Very low RPIs may flood the network and reduce network reliability. • Input size: This is the size of the data being produced by the RMC. In this example, we’ll send 10 registers from the Indirect Data Map, plus one Sync register. Each RMC register is 32 bits, or 4 bytes, for a total of 44 bytes.
RMC70/150 and RMCTools User Manual shows the derived variables created for the example device in the steps above: The RMC150E_rev2_deva_IN structure represents data produced by the RMC, starting with the Sync Register followed by the Outgoing Cyclic I/O Data in the RMC, which in this example is %MD42.0-9 from the Indirect Data Map.
6 Communication Writing to the RMC - General If you selected to not use a Sync Register, the Output Data is written to the RMC when any value in the Output Data changes. If you selected to use a Sync Register, the Output Data is sent to the RMC at each Requested Packet Interval, but the RMC ignores it until the SyncOut register changes. The first item in the Output Data array is the SyncOut register, followed by the registers that will be sent to the Incoming Data location in the RMC.
RMC70/150 and RMCTools User Manual 4. Change the Sync Out Register The easiest way to do this is to add one to it. However, you must take care to handle overflowing this register (the Sync register is a REAL). One method is to add one and then MOD it with some large number, such as 10000. This will make the register count from 0 to 9,999, and then wrap back down to 0 without an error. Take care to ensure that you only update the Sync Out Register once so that the commands do not get reissued. 5.
6 Communication Some notes about setting up the control word for the SEND and RECV instructions for the RMC75E are given below: Word Bits 08 to 15 Bits 00 to 07 C Number of words to read (1 to 512). The PLC supports reads up to 990 words, but the RMC is limited to 512 words. C+1 Always 00 for RMCs. C+2 Remote Node Number. For Remote Unit Number. For RMCs, this value should be set RMCs, this value should be 0.
RMC70/150 and RMCTools User Manual Setting Up the RMC for EtherNet/IP I/O Do the following in the RMC: 1. Set the RMC's IP Address Set up the RMC's IP Address as for any Ethernet connection. See Setting Up the RMC Ethernet for details. 2. Set Up the Indirect Data Map Beginning at item 0 in the Indirect Data Map, choose the items for the Outgoing Cyclic I/O Data.
6 Communication 3. Set the Cyclic I/O Data Locations in the RMC In the Project pane, expand the Modules folder, double-click the CPU module, and choose EtherNet/IP. In the Outgoing Cyclic I/O Data section, enter the starting location for the Outgoing Cyclic I/O Data. In our example, verify that the location is the Indirect Data Map Entry 0 Value. In the Incoming Cyclic I/O Data section, enter the starting address for the Incoming Cyclic I/O Data.
RMC70/150 and RMCTools User Manual 3. 4. If you have an existing EtherNet/IP network that you are adding the RMCs to, then do the following: a. Open your existing Network Configurator file. b. Skip to step 5. If this is a new EtherNet/IP network, then do the following: a. From the list of EtherNet/IP Hardware on the left side, drag the appropriate communications adapter to the network line on the right side. 2. 5. b. Right-click on the new node in the diagram, and click Change Node Address. c.
6 Communication rmc75e_v2.eds RMC75E 2.1 3.41.0 or http://www.deltamotion.com/files/eds/rmc75e_v2_eds.zip newer rmc150e_v1.eds RMC150E 1.x 2.203.40.x rmc150e_v2.eds RMC150E 2.1 3.41.0 or http://www.deltamotion.com/files/eds/rmc150e_v2_eds.zip newer http://www.deltamotion.com/files/eds/rmc150e_v1_eds.zip This revision refers to the EtherNet/IP Identity Object revision, not the firmware revision. This revision only changes when the EtherNet/IP functionality is changed. 1 a.
RMC70/150 and RMCTools User Manual 7. b. Right-click on the new node in the diagram, and click Change Node Address. c. Enter the RMC’s actual IP address, as configured in RMCTools and click OK. Edit the Device Parameters for the RMC. a. 578 Double-click the RMC controller in the network diagram. This will open the Edit Device Parameters window. Delta Computer Systems, Inc.
6 Communication This window shows all settings that can be configured in the RMC. Notice that only the 0005 Produced Data Length and 0006 Consumed Data Length parameters are used with the Omron controllers. The producer and consumer locations were set within RMCTools earlier in this process, and the RPI will be set later in the process. b. For the 0005 Produced Data Length parameter, enter the number of registers that you want the RMC to send cyclically to the PLC.
RMC70/150 and RMCTools User Manual a. b. 580 Double-click the Communication Adapter in the network diagram (CS1W-EIP21 in our example), and click the Tag Sets tab. This opens the Edit Device Parameters for the communication adapter to the Tag Sets tab: Click Edit Tags. This opens the Edit Tags window: Delta Computer Systems, Inc.
6 Communication c. Add a single tag to the In – Consume tab: Click the In – Consume tab. 5. i. ii. At the bottom of the In – Consume tab, click New. iii. In the Edit Tag dialog box, enter the Omron destination tag name in the Name box, and enter the length of the RMC’s produced data in bytes in the Size box. This value must be four times the RMC’s 0005 Produced Data Length device parameter above. Notice that for Omron CS1 and CJ1 PLCs, the tag name must an Omron address.
RMC70/150 and RMCTools User Manual iv. Click OK. Click Close if prompted to add another tag. The In – Consume tab should look like this: d. Add a single tag to the Out – Produce tab: i. 582 Click the Out – Produce tab. Delta Computer Systems, Inc.
6 Communication ii. iii. At the bottom of the Out – Produce tab, click New. In the Edit Tag dialog box, enter the Omron source tag name in the Name box, and enter the length of the RMC’s consumed data in bytes in the Size box. This value must be four times the RMC’s 0006 Consumed Data Length device parameter above. Notice that for Omron CS1 and CJ1 PLCs, the tag name must be an Omron address. An address in the H memory range is recommended to allow direct bit access. iv. Click OK. v.
RMC70/150 and RMCTools User Manual e. f. 584 In the Edit Tags, window, click OK. When prompted to register the new Tags as Tag sets, click Yes. This will add the new tags as tag sets: Delta Computer Systems, Inc.
6 Communication There are now two tag sets that have been registered. These tag sets will be used when creating the connection in the next step. 9. Create a connection to the RMC a. In the Edit Device Parameters window for the Communication Adapter (CS1WEIP21 in this example), click the Connections tab. deltamotion.
RMC70/150 and RMCTools User Manual The RMC is listed in the Unregister Device List. In order to establish an I/O connection with this device, we must register the device, and then add a new connection. b. Select the RMC in the Unregister Device List, and click the down arrow button to register it. The RMC will now appear in the Register Device List: 586 Delta Computer Systems, Inc.
6 Communication c. Select the RMC in the Register Device List, and click New. This opens the Edit Connection window: deltamotion.
RMC70/150 and RMCTools User Manual d. Fill in the fields in this dialog box as follows: Field Value Connection I/O Type Select Input/Output. The other options are only for use by advanced users. Input from Target Device Select the input tag set created in the previous steps, H000 – [40Byte] in this example. Input Tag Set Output Tag Set Leave this set to the default, Input_1 – [40Byte] in this example. Connection Type In most applications this should be set to Point to Point connection.
6 Communication Input Tag Set Leave this set to the default, Output_2 – [44Byte] in this example. Connection Type Select Point to Point connection. Packet Select the desired update rate. A commonly Interval (RPI) used RPI is 20.0 ms. Very low RPIs may flood the network, and reduce network reliability. Timeout Value Select Packet Interval (RPI) x 4, although for the minimum RPI of 2.0 ms, the Omron only supports Packet Interval (RPI) x 8 or higher. Connection Name e. f.
RMC70/150 and RMCTools User Manual b. In the Select Connect Network Port window, select the Ethernet interface to use (which will most often be just one), and click OK. d. In the Select Connected Network, select to use the existing network you just created and click OK. e. 590 On the Network menu, click Connect. c. On the Network menu, click Download. Answer Yes to any prompts. Delta Computer Systems, Inc.
6 Communication 12. Save the Network Configuration a. On the File menu, click Save. Follow the instructions to save the network configuration. Performing Communications Once the EtherNet/IP connection is configured and applied to the PLC, the communications will automatically start, assuming the PLC and RMC are both on a properly set up Ethernet network. Notice that the Omron will communicate even when it is in Program mode.
RMC70/150 and RMCTools User Manual 3. Write to the Command Registers Write the Command registers and all required command parameters to the Output Data for all commands you want to issue. You can issue up to one command per axis. Leave the Command register set to 0 for each axis that will not receive a command. For example, if a portion of the Output Data is going to the Command Area for Axis 0, and you wish to issue a Move Absolute Command (20) to Axis 0 with a position of 6.
6 Communication To communicate with the RMC from RSView, you will need to add the RMC to RSLinx Enterprise as a SLC5/05 device, then create a Device Shortcut that references it. Notice that you cannot browse tags in the RMC via RSLinx. Once you have created a Device Shortcut, you will use it to enter direct addresses in RSView. The instructions below are for RSView Studio release number 3.10.00. To add the RMC75E or RMC150E (Ethernet) Device Shortcut to RSView: 1. Determine the IP address of the RMC. 2.
RMC70/150 and RMCTools User Manual 10. In the Device Shortcuts area of the Communication Setup dialog, click ADD. Enter a name, such as "RMC75S". 11. Now, you must make sure the shortcut is assigned to the RMC75S on the Local and Target tabs. In the Device Shortcuts box, make sure the shortcut you added is selected. Then, on the Local tab, select the RMC75S, and similarly, on the Target tab, select the RMC75S. 12. Click OK to close the Communication Setup.
6 Communication Data). Make sure the Incoming and Outgoing Data areas in the Indirect Data Map do not overlap. The Outgoing Data typically includes RMC status items that the PLC always needs to keep track of, such as actual positions and status bits. The Incoming Data consists of items that the PLC needs to write to in the RMC. This is typically variables and possibly command registers. Note: The Incoming and Outgoing Data locations need not be the Indirect Data Map.
RMC70/150 and RMCTools User Manual You could then set up the Outgoing Data further on in the Indirect Data Map like this: 4. Set the Cyclic I/O Data Locations in the RMC In the Project pane, expand the Modules folder, double-click the CPU module, and choose PROFINET. 596 Delta Computer Systems, Inc.
6 Communication In the Outgoing Cyclic I/O Data section, enter the starting location for the Outgoing Cyclic I/O Data. In our example, verify that the location is the Indirect Data Map Entry 0 Value. In the Incoming Cyclic I/O Data section, enter the starting address for the Incoming Cyclic I/O Data. Click the Browse button and browse to the desired RMC location for the outgoing data.
RMC70/150 and RMCTools User Manual process, once you are planning the acyclic reads and writes the PLC will need to do. See the Using PROFINET Record Data topic for details. 7. Set the Byte Order In the Project pane, expand the Modules folder, double-click the CPU module, and choose PROFINET. In the Data Encoding section, make sure the Byte Order is set to MSB First.
6 Communication c. Click Install and follow the instructions to install these GSD files. Click Close when done. deltamotion.
RMC70/150 and RMCTools User Manual 3. Use the Hardware Catalog to find the RMC150E and/or RMC75E controllers: 4. Drag the RMC150E V1.0 or RMC75E V1.0 device onto the PROFINET-IO-System network: Notice that older S7 CPUs and CPs may not accept this device. If STEP 7 does not allow you to drag this device onto the PROFINET network, then try dragging the RMC150E V1.0 (Migration) or RMC75E V1.0 (Migration) device onto the network instead. 5.
6 Communication In the Device name text box, enter the Device Name given to the device in RMCTools. If you have set the RMC’s IP address settings through RMCTools and want the S7 to use them as is, then clear the Assign IP address via IO controller checkbox. Otherwise, check that checkbox, and click the Ethernet button to enter the IP address that the S7 will give to the RMC. Click OK when you are done. 6.
RMC70/150 and RMCTools User Manual 7. In the Properties - PN-IO (X1) dialog box, select the IO Cycle tab: Under Update Time, select an update time between 2.0 ms and 512.0 ms. A commonly-used update time is 16.0 ms. Under Watchdog Time, the default number of update cycles should typically be selected, which is 3 in this case. 8.
6 Communication 9. To select the length of the Output Data—which corresponds to the Incoming Cyclic I/O Data area in the RMC—expand the Outputs folder in the Hardware Catalog under the device you added to the PROFINET network, and drag the desired module onto slot 2 in the RMC’s slot view. Notice that at the time of this writing (September 2010), Siemens S7 PLCs are limited to 63 output registers. deltamotion.
RMC70/150 and RMCTools User Manual 10. The final module configuration will look similar to the following: Take note of the input (I) starting address (256 in the above example), and output (Q) starting address (256 in the above example). These are required for accessing the IO data as described below. Also, the Diagnostic address for slot 0 (2043 in the above example) is used when reading and writing record data, as described below. 11. Save and download the configuration to your S7 controller.
6 Communication Within the STEP 7 program, the DPRD_DAT system function (SFC14) is used to get a consistent copy of the Input Data. The following ladder shows SFC14 taking a copy of the input data from the RMC and storing it into DB13. Notice that the LADDR input must match the I Address from the hardware configuration. The value W#16#100 is the hexadecimal equivalent of the input (I) address 256 from the Hardware setup slot table, shown in step 10 above.
RMC70/150 and RMCTools User Manual Notice that the RMC’s I and Q data should generally not be accessed directly but should instead go through the DPRD_DAT and DPWR_DAT SFCs in order to ensure that the data is always handled as a consistent block. Reading and Writing Record Data from the S7 Use the Data Records to read from or write to any location in the RMC. Record Data reads and writes can be performed while the cyclic data exchange is occurring.
6 Communication This example reads 256 registers (1024 bytes) starting at %MD48.0. WRREC Example This example writes 25 registers (100 bytes) starting at %MD56.0. 6.11.13. Using Siemens S7 PLCs via PROFIBUS The Siemens S7 PLC can communicate with the RMC75P or the RMC150E PROFIBUS module via PROFIBUS-DP. The PROFIBUS Overview topic describes the PROFIBUS communications. 6.11.14. Using Wonderware with the RMC The RMC family of controllers can communicate with Wonderware InTouch via Ethernet.
RMC70/150 and RMCTools User Manual Example Programs Delta provides example PLC programs to help you quickly set up the communications between your PLC and the RMC. See the downloads section of Delta's website at www.deltamotion.com. Communicating with the RMC RMC75E or RMC150E Either the DASABCIP server (CIP) or DASMBTCP server (Modbus/TCP) can be used to communicate with the RMC75E or RMC150E. This topic describes both methods.
6 Communication Adding an RMC Analog Display to an InTouch Window Follow these steps to add the Axis 0 Actual Position to an InTouch window. Note: These instructions are for InTouch 9.5. 1. On the Special menu, click Access Names, then click Add, and do the following: a. In the Access box, type an name like "RMC" (without the parentheses). b. In the Application Name box, type "DASABCIP" (without the parentheses). c.
RMC70/150 and RMCTools User Manual aa 3. In an InTouch window, go to the Wizard Selection dialog, choose Value Displays, choose Analog Tagname Display, and click OK. 4. Place the display on the window, double-click the display, and do the following: a. In the Tagname box, type "Axis0ActPos" (without the parentheses). b. In the Number Format box, choose ###,###. c. Click OK. 5. Click Runtime! 6. The runtime window will display the actual position of the RMC.
6 Communication asdf 5. On the Device Groups tab, add a device called RMC. 6. Make sure to activate the DASMBTCP server. Adding an RMC Analog Display to an InTouch Window Follow these steps to add the Axis 0 Actual Position to an InTouch window. Note: These instructions are for InTouch 9.5. 1. On the Special menu, click Access Names, then click Add, and do the following: a. In the Access box, type an name like "RMC" (without the parentheses). b.
RMC70/150 and RMCTools User Manual 2. On the Special menu, click Tagname Dictionary, then click New, and do the following: a. In the Tagname box, type an name like "Axis0ActPos" (without the parentheses). b. Click Type and choose I/O REAL, and click OK. c. Choose Read Only. d. Click Access name, choose RMC and click Close. e. In the Item box, type "404113 F" (without the parentheses).
6 Communication 6.11.15. RMCLink ActiveX Control and .NET Assembly For communication from a PC to the RMC Tip: RMCLink has it's own help. After installing RMCLink, you will find it on the Windows Start menu > All Programs > RMCLink Component > RMCLink Documentation. The How to... section is very helpful.
RMC70/150 and RMCTools User Manual Visual J# Visual C++ (Native Code) RMCLink C++ Wrapper Class Note: Drivers for use with National Instruments LabVIEW are available separately. Supported RMC Communication Ports RMCLink can communicate via Ethernet or serial RS-232. The table below lists the ports on the RMCs that it can communicate with.
6 Communication Communicating with the RMC75E and RMC150E from other devices will use one of the following four methods. Review each to determine which is appropriate for your device: • PLC Ethernet Emulation The RMC responds to several common industrial Ethernet protocols and can emulate, or act like, several common PLCs. If your device supports reading and writing to registers in any of these PLCs, then your device should be able to communicate with the RMC.
7. Hardware 7.1.
RMC70/150 and RMCTools User Manual CPU Module Axis Module Expansion Module CPU Modules The CPU modules include the main motion control processing unit, the communication channel such as serial, PROFIBUS, Ethernet, etc. and a monitor port or USB port for communications to the RMCTools software.
7 Hardware The axis modules have one input per axis for interfacing to transducers and one Control Output per axis for interfacing to an actuator. Axis modules are either one or two axes. Each axis module interfaces to a different type of transducers.
RMC70/150 and RMCTools User Manual with 4 Expansion modules Varies, 2.0 lb (0.9 kg) max Environment Operating temperature Storage temperature Humidity Agency compliance +32 to +140°F (0 to +60°C) -40 to +185°F (-40 to +85°C) 95% non-condensing UL, CUL, CE: RMC75S, RMC75P, RMC75E 7.2.2. RMC70 Part Numbering Specify RMC70 part numbers when ordering and when contacting Delta customer support.
7 Hardware Analog Control Output AA2 2-Axis Analog Voltage or Current Inputs, Analog Control Outputs MA1 1-Axis MDT and SSI Input, Analog Control Output MA2 2-Axis MDT and SSI Inputs, Analog Control Outputs QA1 1-Axis Quadrature Encoder Input, Analog Control Output QA2 2-Axis Quadrature Encoder Inputs, Analog Control Outputs Expansion Modules D8 8 Individually Configurable Discrete I/O (Inputs and Outputs) A2 2 Analog inputs AP2 2 Analog inputs for Position-Pressure or Position-Force Control
RMC70/150 and RMCTools User Manual • Retentive Variables The RMC75E variables can be set to retentive, meaning that the Current Value will be retained between power cycles without requiring a Flash update. • Memory Size The 75E has significantly more memory for plots, programs, curves. See Plot Overview, Program Capacity and Time Usage and Curve Storage Capacity for details. • Loop Times 75E supports faster loop times. • Internal Processor The RMC75S and RMC75P internal processors are 32-bit.
7 Hardware Configuration Parameters Framing Protocol IP address, subnet mask, gateway address, enable/disable autonegotiation Ethernet II Internet Protocol IP IP (includes ICMP, ARP, and Address Collision Detection) Transport Protocols TCP, UDP USB Monitor Port Interface Connector USB "B" receptacle Data Rate Full-speed (12 Mbps) LEDs Controller LED This bi-color (red/green) LED has the following states: State Description Steady Off No power.
RMC70/150 and RMCTools User Manual Link/Act LED The Link/Act LED reflects the status of the physical Ethernet connection between the RMC and the device on the other end of the Ethernet cable. If the Link LED is not on or is not blinking when you expect it to be, see the Ethernet Link/Act LED topic for troubleshooting information.
7 Hardware The RMC75S combines multiple communication protocols with RS-232 and RS-485 transceiver options to form a versatile and industrial-hardened communication platform. The RS-232 option provides full-duplex point-to-point communications, while RS-485 allows half-duplex multi-drop networking with up to 128 RMC70s.
RMC70/150 and RMCTools User Manual Termination 120 Ω user selectable RS-232 Monitor Port Connector Cable DB-9 Male Null modem Protocol Allen-Bradley DF1 Full-Duplex, with CRC error detection Settings 38400 baud, 8 data bits, no parity, 1 stop bit, no handshaking LEDs Controller LED This bi-color (red/green) LED has the following states: State Description Steady Off No power.
7 Hardware Receive LED This LED reflects when data is being received on the second serial port (RS232/485). State Description Steady Off No power or no data being received. Steady or Flickering Green Data is being received. Note: The Monitor Port does not affect any LEDs on the RMC70. 7.2.3.4. RMC75P CPU Module PROFIBUS is a vendor-independent, open fieldbus standard for a wide range of applications in manufacturing and factory automation.
RMC70/150 and RMCTools User Manual Cable Protocol Null modem Allen-Bradley DF1 Full-Duplex, with CRC error detection Settings 38400 baud, 8 data bits, no parity, 1 stop bit, no handshaking LEDs Controller LED This bi-color (red/green) LED has the following states: State Description Steady Off No power. Steady Green RUN Mode Flashing Green (Slow) PROGRAM Mode Flashing Green (Fast) Updating Flash or a controller restart is pending. Flashing Red The device is in the loader.
7 Hardware Note: These are the only two LED states of the NET LED, but it is possible to have the Net LED flashing or flickering green, which indicates that the RMC75P is going on- and off-line on the PROFIBUS channel and generally indicates a network or configuration problem. Note: The Monitor Port does not affect any LEDs on the RMC70. 7.2.4. Axis Modules 7.2.4.1. Axis Modules Overview An axis module is the part of the RMC70 motion controller that interfaces to the transducers and drives.
RMC70/150 and RMCTools User Manual • ±10 V and 4-20 mA input ranges • • 8 times oversampling • • One ±10 V, 16-bit control output per axis • Can be used for controlling position, velocity, pressure, force. Can also be used for dual-loop control such as position-pressure when used in conjunction with the AP2 module.
7 Hardware Overvoltage protection Outputs are protected by clamp diodes Fault Input Input Characteristics Logic Polarity Input "High" Range 12-24 VDC, sinking or sourcing True High 7 to 26.4 VDC (polarity independent) 3 mA maximum Input "Low" Range Maximum Propagation Delay 0 to 3.
RMC70/150 and RMCTools User Manual Green Flashing Green The Fault input is inactive, and the Enable output is inactive. Steady Red The Fault input is active. Notice that it is not possible to tell if the Enable output is active or inactive. 7.2.4.3. MA Axis Module The MA module is one of the axis modules available for the RMC70. It interfaces to Magnetostrictive Start/Stop and PWM and SSI transducers and has 1 analog servo output per axis.
7 Hardware Rate Output Resolution 16 bits Note: Linear magnetostrictive SSI transducers must be of the synchronized type. This ensures that the time between position samples matches the control loop time of the RMC. If the transducer is not synchronized, the sample time may not match and make precise speed control difficult. Blanking Period (For Neuter Outputs) The RMC70 blanking period is set to 5µsec.
RMC70/150 and RMCTools User Manual Tolerance At 10 V: Resolution Output Isolation Overload protection Overvoltage protection Currently unavailable 16 bits Not isolated One-second short-circuit duration Outputs are protected by clamp diodes Fault Input Input Characteristics Logic Polarity Input "High" Range 12-24 VDC, sinking or sourcing True High 7 to 26.4 VDC (polarity independent) 3mA maximum Input "Low" Range Maximum Propagation Delay 0 to 3.
7 Hardware State Description Steady Off No power or the Control Output is not assigned to an axis. Steady Green The Fault input is inactive, and the Enable output is active. Flashing Green The Fault input is inactive, and the Enable output is inactive. Steady Red The Fault input is active. Notice that it is not possible to tell if the Enable output is active or inactive. 7.2.4.4. QA Axis Module The QA module is one of the axis modules available for the RMC70.
RMC70/150 and RMCTools User Manual Common Mode Input Range -10V to +13.2 V Absolute Max Voltage ±25 VDC. Applying greater than ±25 V will damage the receiver chip and will require repair by Delta. Notice that the quadrature input is not compatible with 24V signals. RegX/PosLim, RegY/NegLim, and Home Inputs Input Characteristics Logic Polarity Input "High" Range High-Speed 12-24 VDC, Sinking (sourcing driver) True High 7 to 26.
7 Hardware Axis LED This LED represents the input and control status for the axis. This bi-color (red/green) LED has the following states: State Description Steady Off No power or this input is not assigned to an axis. Steady Green The axis is either in closed loop control or is a reference axis. The axis is not halted. Flashing Green The input is in open loop and the axis is not halted (not possible for reference axes).
RMC70/150 and RMCTools User Manual Note: It is possible to add more analog inputs than can be assigned to axes. However, it is still possible to view the voltage of the extra analog inputs using the Analog Input Registers. Inputs that are unassigned to axes can have no status bits, error bits, scaling, filtering, etc. 7.2.5.2. Adding an Expansion Module to a Controller To add an expansion module to an RMC70 controller: 1. Disconnect power to the RMC70. 2.
7 Hardware • Analog Reference Input Reference inputs are often used as gearing or camming masters. Reference inputs cannot be used for direct control of the input axis. • Input for a Control Axis The A2 inputs can be used for the input of a control axis. The Control Output must be from an axis module. Part Number The part number of the A2 module is EXP70-A2.
RMC70/150 and RMCTools User Manual The 2-axis Analog Pressure expansion module (AP2) is one of the optional expansion modules available for the RMC70 series motion controller. This module provides two analog inputs with 16-bit resolution and support for position-pressure and position-force control. The AP2 should not be confused with the A2, which provides analog input and no support for secondary pressure control. The RMC70 always requires an AP2 module for position-pressure or position-force control.
7 Hardware Offset drift with temperature 0.2 LSB/ºC typical (+10 V range) Gain drift with temperature 20 ppm/ºC typical (+10 V range) Non-linearity 12 LSB (counts) typical (+10 V range) LEDs Input LED This LED represents the input and control status for the axis. This bi-color (red/green) LED has the following states: State Description Steady Off No power or this input is not assigned to an axis. Steady Green The axis is either in closed loop control or is a reference axis.
RMC70/150 and RMCTools User Manual Inputs Input Characteristics 12-24 VDC, sinking or sourcing Logic Polarity True High Isolation 2500 VAC Input "High" Range Input "Low" Range Maximum Propagation Delay 7 to 26.4 VDC (polarity independent) 3 mA maximum 0 to 3.5 VDC (polarity independent) <1 mA 100 µsec Outputs Outputs Isolation Solid State Relay 500 VAC Maximum voltage ± 30 V (DC or peak AC voltage rating of SSR) Maximum current 75 mA Maximum propagation delay 1.
7 Hardware Features • One 5V RS-422 Quadrature input • One high-speed registration input for registration or homing Uses • Encoder Reference Input Reference inputs are often used as gearing or camming masters. Reference inputs cannot be used for direct control of the input axis. • Input for a Control Axis The Q1 input can be used for the input of a control axis. The Control Output must be from an axis module.
RMC70/150 and RMCTools User Manual Red (not possible for reference axes). The LED will not turn red due to a halt caused by halt command. Steady Red An Open Loop Halt or Direct Output Halt has occurred because an error bit is set (for reference axes, any halt has occurred). The LED will not turn red due to a halt caused by halt command. Reg LED This LED represents the physical state of the registration (Reg) input: State Description Off The RMC70 has no power, or the "Reg" input is off.
7 Hardware Slot # 0 1 2 3 4 5 Slot Descriptions Slot # Slot 0 Slot 1 Slot 2 Slot 3 Slot 4 Slot 5 Alternate Name Comm CPU Slot Sensor Slot 1 Sensor Slot 2 Sensor Slot 3 Sensor Slot 4 Possible Modules DI/O RMC150E Analog (A) Analog (A) Analog (A) Analog (A) Universal I/O RMC151E Analog (G) Analog (G) Analog (G) Analog (G) Analog (H) Analog (H) Analog (H) Analog (H) MDT (M) MDT (M) MDT (M) MDT (M) SSI (S) SSI (S) SSI (S) SSI (S) Quad (Q) Quad (Q) Quad (Q) Quad
RMC70/150 and RMCTools User Manual 7.3.2. RMC150 Part Numbering Specify RMC150 part numbers when ordering and when contacting Delta customer support. Part Numbering Schema The part number of a complete RMC150 is: RMC15pE-Xn-Xn...
7 Hardware modules, 1 Analog (H) module, and 1 Discrete I/O module in slot 0. RMC150E-S4 An RMC150E with 4 SSI modules. RMC150E-M2-D1-PROFI An RMC150E with 2 MDT modules, one Discrete I/O module in a sensor slot, and a PROFIBUS module in the comm slot. RMC150E-Q2-D2-DI/O An RMC150E with 2 Quadrature (Q) modules, 2 Discrete I/O modules, and 1 Discrete I/O module in slot 0. RMC150E-S4-DI/O-HZ An RMC150E with 4 SSI modules, and 1 Discrete I/O module in slot 0, and Class I, Division 2 designation. 7.3.
RMC70/150 and RMCTools User Manual The part numbers of the RM150E are RMC150E, or RMC151E with Pressure/Force enabled. The RMC150E or RMC151E can only be ordered as part of an entire controller. Specifications Motion Control Supported Number of Axes Control Loop Time Parameter Range Fail-safe Timers Up to 8 axes (dependent on backplane size) User-selectable 250 µs, 500 µs, 1 ms, 2 ms, 4ms 32-bit floating-point Control outputs disabled after 16 ms (10 ms for revs older than 1.
7 Hardware Logic 1 (True, On) Logic 0 (False, Off) Low impedance (50 Ω maximum) High impedance (<1 µA leakage current at 250 V) Power Voltage Inrush Current +24 VDC ± 15% 5A for 150 µs typical Current - 3 slots Typical 290 mA @ 24 VDC, max 375 mA 4 slots Typical 385 mA @ 24 VDC, max 500 mA 5 slots Typical 485 mA @ 24 VDC, max 625 mA 6 slots Typical 585 mA @ 24 VDC, max 750 mA DC-DC converter isolation 500 VAC Environment Operating temperature Storage temperature Humidity Agency compliance +3
RMC70/150 and RMCTools User Manual State Description Steady Off PROGRAM Mode or no power Steady Green RUN Mode Communication LEDs These LEDS are located below the Controller LED on a white background. These LEDs do not convey 10/100, FDX/HDX, or Collision information. The user will have to rely on their switch's LEDs or the RMCTools Ethernet Statistics to view those Ethernet status items.
7 Hardware Green Off Red Green Off Off Prior to the LED test, the module will run through the loader, during which time it will have a red CPU LED. After the LED test, the firmware will continue initialization, after which time the LEDs resume their regular behaviors. 7.3.4. Analog Modules 7.3.4.1. Analog (H) Module (RMC150) Two Control Outputs and Four 16-bit Analog Inputs The Analog (H) module for the RMC150 interfaces to analog voltage or current transducers.
RMC70/150 and RMCTools User Manual Analog Input Interface Inputs Isolation Overvoltage Protection Input Ranges Input Impedance Four 16-bit differential 500 VAC ±40 V ±10 V, ±5 V and 4-20 mA (each channel independently configured via jumper) Voltage Input: 1 MΩ Current Input: 250 Ω Input Filter Slew Rate Oversampling 25 V/ms 8 times per control loop Offset drift with temperature 0.
7 Hardware LED Colors State Description Steady Off No power or the output/input is not assigned to an axis. Steady Green The axis is either in closed loop control or is a reference axis. The axis is not halted. Flashing Green The output is in open loop and the axis is not halted (not possible for reference axes). Flashing Red A Closed Loop Halt or External Halt has occurred because an error bit is set (not possible for reference axes).
RMC70/150 and RMCTools User Manual Analog Input Interface Inputs Isolation Overvoltage Protection Input Ranges Input Impedance Four 12-bit differential 500 VAC ±40 V ±10 V, ±5 V, and 4-20 mA (each channel independently configured via jumper) Voltage Input: 1 MΩ Current Input: 250 Ω Input Filter Slew Rate Oversampling Offset drift with temperature Gain drift with temperature Non-linearity Exciter Output 25 V/ms 8 times per control loop 0.
7 Hardware The part number of the Analog (G) module is Gn, where n is the number of Analog (G) modules. For example, RMC150E-G1 is an RMC150E with one Analog (G) module. RMC150E-S1-G2 is an RMC150E with one SSI module and two Analog (G) modules. Setting Up the Analog (G) Module To set up the Analog (G) module, read the following topics: Analog Wiring Analog Position Scaling Specifications For general specifications on the RMC150, see the RMC150 Overview topic.
RMC70/150 and RMCTools User Manual Axis 1 LED applies to the Drive 1 output or feedback input 1 as described below: 1. If Drive 1 is assigned to an axis that has an input (i.e. isn't output-only), then that axis will own the Axis 1 LED. 2. Otherwise, if a reference input axis (no output) uses input 1, then that axis will own the Axis 1 LED. 3. Otherwise, if Drive 1 is assigned to an output-only axis, then that axis will own the Axis 1 LED.
7 Hardware For example, RMC150E-M1 is an RMC150E with one MDT module. RMC150E-M3-Q1 is an RMC150E with three MDT modules and one Quadrature module. Supported Transducers The following tables summarize the major transducer options supported by the MDT module: MDT Options Value Types Start/Stop (S/S) Pulse-Width-Modulated (PWM) Count Range 32 bits Wiring Differential, 5 V, RS-422, Single-ended 5 V Interrogation Modes External. Notice that internal interrogation is not supported.
RMC70/150 and RMCTools User Manual Overvoltage Protection Outputs are protected by clamp diodes LEDS Axis 0 LED Axis LED applies to the Drive 0 output or feedback input 0 as described below: 1. If Drive 0 is assigned to an axis that has an input (i.e. isn't output-only), then that axis will own the Axis 0 LED. 2. Otherwise, if a reference input axis (no output) uses input 0, then that axis will own the Axis 0 LED. 3.
7 Hardware transducers. Finally, many SSI devices offer higher precision; for example, MDTs with SSI output are available with resolutions to 2µm. Note: Linear MDTs with SSI output should be of the synchronized type. Non-synchronized is not well-suited for motion control. See the SSI Fundamentals topic for details on the SSI standard.
RMC70/150 and RMCTools User Manual Count Data Length 8 to 31 bits Control Outputs Range Tolerance Resolution Output Isolation Overload Protection Overvoltage Protection ±10 V @ 5 mA (2 kΩ or greater load) (For current output, use the VC2124 accessory:±10 mA to ±200 mA in 10 mA steps) At 10 V: +200 mV, -100 mV At 0 V: ±50 mV At -10 V: +100 mV, -200 mV 12 bits 500 VAC, optically isolated One-second short-circuit duration Outputs are protected by clamp diodes LEDS Axis 0 LED Axis LED applies to the Driv
7 Hardware 7.3.7.1. Quadrature (Q) Module (RMC150) The Quadrature module for the RMC150 interfaces to RS-422 quadrature feedback devices, both rotary encoders and linear transducers. The Quad module allows cost effective control of a wide variety of electric drives as well as electric and hydraulic servo motors. The 2-axis Quad module generates analog control outputs and interfaces to quadrature encoders with 5V RS-422 differential signals.
RMC70/150 and RMCTools User Manual Logic Polarity Isolation Input "High" Range True High 500 VAC 3.2 to 26.4 VDC 3.5 mA minumum, 10 mA maximum Input "Low" Range 0 to 2 VDC <1 mA Max Propagation Delay 50 µs Enable Output Output Type Logic Polarity Rated Voltage Maximum Current Maximum Propagation Delay Closed Open Solid State Relay User selectable to Active Open or Active Closed 12-24 V, max ±30 V (DC or peak AC voltage) ±75 mA (±50 mA for Class I, Div 2) 1.
7 Hardware Axis LED applies to the Drive 0 output or feedback input 0 as described below: 1. If Drive 0 is assigned to an axis that has an input (i.e. isn't output-only), then that axis will own the Axis 0 LED. 2. Otherwise, if a reference input axis (no output) uses input 0, then that axis will own the Axis 0 LED. 3. Otherwise, if Drive 0 is assigned to an output-only axis, then that axis will own Axis 0 LED. Axis 1 LED Axis 1 LED applies to the Drive 1 output or feedback input 1 as described below: 1.
RMC70/150 and RMCTools User Manual Part Number The part number of the Resolver module is Rn, where n is the number of Resolver modules. For example, RMC150E-R1 is an RMC150E with one Resolver module. RMC150E-R3-Q1 is an RMC150E with three Resolver modules and one Quadrature module. Setting Up the Resolver Module 1. Wire the resolver according to the RMC150 Resolver Wiring topic. 2. Set the following parameters: • Resolver Resolution • Reference Amplitude • Reference Frequency 3. Scale the axis.
7 Hardware 1. If Drive 0 is assigned to an axis that has an input (i.e. isn't output-only), then that axis will own the Axis 0 LED. 2. Otherwise, if a reference input axis (no output) uses input 0, then that axis will own the Axis 0 LED. 3. Otherwise, if Drive 0 is assigned to an output-only axis, then that axis will own Axis 0 LED. Axis 1 LED Axis 1 LED applies to the Drive 1 output or feedback input 1 as described below: 1. If Drive 1 is assigned to an axis that has an input (i.e.
RMC70/150 and RMCTools User Manual The part number of this Resolver module is RWn, where n is the number of Resolver modules. For example, RMC150E-RW1 is an RMC150E with one Resolver (RW) module. RMC150ERW3-Q1 is an RMC150E with three Resolver (RW) modules and one Quadrature module. Setting Up the Resolver Module 1. Wire the resolver according to the RMC150 Resolver Wiring topic. 2. Set the Resolver Resolution. 3. Scale the axis. Typically, resolvers will use Rotary Scaling.
7 Hardware 1. If Drive 1 is assigned to an axis that has an input (i.e. isn't output-only), then that axis will own the Axis 1 LED. 2. Otherwise, if a reference input axis (no output) uses input 1, then that axis will own the Axis 1 LED. 3. Otherwise, if Drive 1 is assigned to an output-only axis, then that axis will own the Axis 1 LED. LED Colors State Description Steady Off No power or the output/input is not assigned to an axis.
RMC70/150 and RMCTools User Manual Setting Up the DI/O Module To set up the DI/O module, read the following topics: Discrete I/O Configuration DI/O Wiring Specifications For general specifications on the RMC150, see the RMC150 Overview topic. Note: The characteristics of the I/O on the DI/O module differ from the I/O on the RMC150E CPU module.
7 Hardware Analog Input Features • Two 16-bit analog inputs, ±10 V or 4-20 mA Discrete I/O Features • 6 I/O, individually configurable as input or output • • Inputs: 12 to 24 VDC, sinking (require sourcing driver) • Inputs 0 and 1 can be used as high-speed registration inputs in conjunction with the quadrature inputs. Outputs: Solid state relay, 50 mA continuous High-Speed Channels Each of the two RS-422 channels are independently configurable as Quadrature or SSI.
RMC70/150 and RMCTools User Manual 2. Assign the input to an axis as described in the Defining Axes topic. 3. In the Axis Parameters Pane, for the axis to which the input is assigned, set the Input Type parameter to Voltage or Current. 4. Scale the axis as described in the Analog Position Scaling topic. Setting Up UI/O Discrete I/O 1. Use the Discrete I/O Configuration dialog to configure each I/O point as an input or output. 2. Wire the I/O points as described in the RMC150 UI/O Wiring topic.
7 Hardware Logic Polarity True On Maximum Voltage ± 30 V (DC or peak AC voltage rating of SSR) Maximum Current ±75 mA Maximum Propagation Delay Logic 1 (True, On) Logic 0 (False, Off) 1.5 ms Low impedance (50 Ω maximum, 25 Ω typical) High impedance (<1 µA leakage current at 250 V) High-Speed Channels Channels Transducer types 2, independently configurable Magnetostrictive (with SSI output), single- or multi-turn absolute encoders, quadrature encoders.
RMC70/150 and RMCTools User Manual 7.3.10.2. Configuring UI/O High-Speed Channels Each of the Universal I/O module's two RS-422 channels are independently configurable as Quadrature or SSI. These channels must be configured before being used for such tasks as assigning to axis inputs. To configure the channels, open the UI/O properties: 1. In the Project Pane, expand the Modules folder 2. Double-click the desired UI/O module and choose Quad/SSI. 3.
7 Hardware • SSI Data Bits: 8-32 Configure Channel as a Quadrature Axis Input For each channel that will be used as an input to an axis, do the following: 1. Choose Quadrature Input, then click OK. 2. Wire the quadrature input as described in the RMC150 UI/O Wiring topic. 3. Assign the input to an axis as described in the Defining Axes topic. 4. In the Axis Parameters Pane, set the following axis parameters: • Input Termination to apply termination. Termination should always be used.
RMC70/150 and RMCTools User Manual a. b. In Channel 0: • Choose SSI Output mode. • • Set the SSI Output Mode to Slave. • Set the SSI Data Bits to 32. In the Source of Output Data section, choose the register that contains the data to be sent. Typically this is a variable. In Channel 1: • • Choose SSI Register Input mode • • Set the SSI Termination to ±Data. • Set the SSI Data Bits to 32.
7 Hardware Part Number The part number of the PROFIBUS module is -PROFI. The PROFIBUS module fits only in the left-most slot of the RMC backplane. For example, RMC150E-S1-PROFI is an RMC150E with an SSI module and a PROFIBUS module. RMC150E-S3-Q1-PROFI is an RMC150E with three SSI modules, one Quadrature module, and a PROFIBUS module. Specifications For general specifications on the RMC150, see the RMC150 Overview topic.
RMC70/150 and RMCTools User Manual QA MDT (M) Quad (Q) Resolver (R) SSI (S) Configuring the Control Output The user can configure the polarity of this output with the Invert Output Polarity parameter. To invert the polarity of the Control Output, set this bit. Wiring The valve or motor drive connects to the following pins: Pin (RMC70) Pin (RMC150) Function Control Output Drv Control Output Cmn Drv Cmn Control Output Common. On the RMC70, each axis has two Cmn pins.
7 Hardware The Enable Output will turn off when an Direct Output Halt occurs, unless the Direct Output status bit already was on. The modules listed below have an Enable Output. RMC70 RMC150 MA Quad (Q) AA QA Configuring the Enable Output The user can configure the behavior of this output with the Enable Output Behavior parameter. The parameter has the following two choices: • Active Closed - When the Enable Output is set, the Enable output switch is closed.
RMC70/150 and RMCTools User Manual Specifications For specifications, refer to the topic of the specific module containing the Enable Output. RMC70 RMC150 MA Quad (Q) AA QA 7.4.3. Fault Input The Fault Input is a purpose-specific input and is intended to be connected to a drive amplifier or other source for a safety interlock. Using the Fault Input is optional. When the Fault input is active, the Fault Status bit will turn on and the Fault Error bit will latch on.
7 Hardware The Fault Input can also be used for the following: • SSI homing (RMC70 Only) • Physical Limit Inputs Advanced In addition to the uses described above, the Fault Input can be used as a general discrete input. This requires that the Auto Stop for the Fault Input error bit be set to Status Only so that it does not cause the axis to halt. Specifications For specifications, refer to the topic of the specific module containing the Fault Input. RMC70 RMC150 MA Quad (Q) AA QA 7.5.
RMC70/150 and RMCTools User Manual Use the following RMC parameters: • Output Bias • • Output Scale Output Limit 1. Set the VC2124 current range to ±20 mA. 2. Set the Output Scale to 4 V/100%. 3. Set the Output Bias to 6 V. 4. Set the Output Limit to 4 V (this keeps the output from going below 4mA). Inverting the Output If a positive voltage makes the system move the wrong direction, you will need to invert the output.
7 Hardware VC2124 Parallel Outputs To achieve 200 mA output, wire the two channels in parallel as indicated here: VC2100 Fuse the ±15 VDC inputs with 5 A maximum, UL-listed, fast-blow fuses. For maximum protection, use two 500 mA fuses per VC2100. For noise immunity, use twisted, shielded pairs for all connections (twisted pair with overall shield is acceptable).
RMC70/150 and RMCTools User Manual VC2100 Parallel Outputs To achieve 200 mA output, wire the two channels in parallel as indicated here: 7.5.2. Quadrature Cable Part Number: RMC-CB-QUAD-01-xx A cable can be purchased that connects directly to the QA1 and QA2 modules' DB-25 connectors. The cable can be purchased in one of three lengths. It separates the wires into three groups: drive, encoder, and limits. Each group has its own braided shield and insulation.
7 Hardware Cable Each DB-25 connectors has three cables coming from it. Each has 24gauge twisted pairs with an overall braided shield: • Drive (3 pair): Amplifier connections • Encoder (4 pair): Quadrature encoder connections • Limits (3 pair): Home and limit switches Wire Colors Notice that the cable connects to the same pins for the QA1, QA2, and QUAD modules, because these modules have identical pinouts.
RMC70/150 and RMCTools User Manual 7.6. Agency Compliance This topic describes the requirements for compliance with various agencies. Designations CE, UL, CUL Class I, Division 2 RMC75E, RMC75S, RMC75P, RMC150E RMC150E, RMC151E (when ordered with -HZ option), does not apply to the Analog (G), Stepper (QST), or Universal I/O (UI/O or U) modules. File E329627. CE The RMC75E and RMC150E are CE compliant.
8. Command Reference 8.1. RMC Commands Overview The RMC has a rich set of pre-programmed commands that perform anything from simple moves to complex motions to system control. Each command is represented by a name and a number. For a list of all the RMC commands, see the Command List topic. Issuing Commands For details on how to send commands to the RMC, see the Issuing Commands topic.
RMC70/150 and RMCTools User Manual F25:9 Axis 0 Parameter 9 REAL F25:10-19 Axis 1 Command Registers REAL F25:20-29 Axis 2 Command Registers REAL F25:30-39 Axis 3 Command Registers REAL RMC150 Command Registers Address (DF1) Register Name Data Type F40:0-9 Axis 0 Command Registers REAL F40:0 Axis 0 Command REAL F40:1 Axis 0 Parameter 1 REAL F40:2 Axis 0 Parameter 2 REAL F40:3 Axis 0 Parameter 3 REAL F40:4 Axis 0 Parameter 4 REAL F40:5 Axis 0 Parameter 5 REAL F40:6 Axis 0
8 Command Reference This is a complete list of the commands currently available on the RMC, grouped by type. Each command is represented by an integer number in floating point format. This number is given in parentheses. For general command information, see the Command topic. Immediate Commands Certain commands in the RMC are immediate commands.
RMC70/150 and RMCTools User Manual Time Move Relative (24) Advanced Time Move Absolute (26) Advanced Time Move Relative (27) Move Absolute (I-PD) (28) Move Relative (I-PD) (29) Motion - Gearing Gear Absolute (25) Gear Pos (Clutch by Time) (30) Gear Vel (Clutch by Time) (31) Gear Pos (Clutch by Distance) (32) Advanced Gear Move (33) Phasing (34) Geared Slave Offset (35) Gear Pos (Clutch by Rate) (39) Track Position (57) Track Position (I-PD) (58) Motion - Specialty Speed at Position (36) Sine Start (72) Sin
8 Command Reference Enter Pressure/Force Control (Time) (45) Enter Pressure/Force Control (Rate) (46) Pressure/Force - Limit Set Pressure/Force Limit Mode (40) Pressure/Force - Specialty Gear Absolute (Prs/Frc) (59) * Transition Disable (Prs/Frc) (63) Transition Rate (Prs/Frc) (64) Sine Start (Prs/Frc) (76) * Sine Stop (Prs/Frc) (77) * Change Target Parameter (Prs/Frc) (81) * Curve Start (Prs/Frc) (87) * Curve Start Advanced (Prs/Frc) (89) * *These commands will not enter pressure/force control
RMC70/150 and RMCTools User Manual Arm Home (50) Disarm Home (51) Arm Registration (52) Disarm Registration (53) Learn Z Alignment (54) Pause/Resume Log (95) Update Flash (110) 8.3. General Commands 8.3.1. Command: No-op (0) Supported Axes: Firmware Requirement: All 1.00 or newer See the Commands Overview topic for basic command information and how to issue commands from PLCs, HMIs, etc. Command Parameters None. Description This is a command that does nothing.
8 Command Reference This command is often unnecessary because motion commands will also clear the abovementioned status and error bits, unless the underlying condition still exists. However, this command may be useful to clear the faults just to see which conditions went away. Except for its effect on the error bits and halt status bits, this command does not affect the state of the axis.
RMC70/150 and RMCTools User Manual 8.3.4. Command: Fault Controller (8) Supported Axes: Firmware Requirement: All 1.10 or newer See the Commands Overview topic for basic command information and how to issue commands from PLCs, HMIs, etc. Command Parameters None. Description This command stops all motion on the controller. It can be used as an emergency stop. To issue this command from RMCTools, click the Fault Controller toolbar.
8 Command Reference Enable Output will be turned off, and the drive or valve will shut off. This is a good safety precaution if your transducer fails, for example. Use this command to turn the Enable Output back on. 8.3.6. Command: Enable/Disable Axis (97) Supported Axes: Firmware Requirement: All 1.30 or newer See the Commands Overview topic for basic command information and how to issue commands from PLCs, HMIs, etc.
RMC70/150 and RMCTools User Manual This command puts the RMC in RUN mode. If the RMC is already in RUN Mode, nothing happens when this command is issued. If the RMC is in PROGRAM mode when this command is issued, the following happens: • The RMC is put into RUN mode. • All the axes become enabled if they were not previously enabled. This means that the Enabled status bit turns on for each axis, exactly as if the Enable Controller (7) command had been issued.
8 Command Reference Direct Output Halt (3) Curve Start (86) Open Loop Curve Start Advanced (88) Direct Output (9) Velocity Open Loop Rate (10) Move Velocity (37) Open Loop Absolute (11) Move Velocity (I-PD) (38) Open Loop Relative (12) Transitions Synchronized Transition Disable (55) Sync Move Absolute (13) Transition Rate (56) Sync Move Relative (14) Pressure/Force - Standard Sync Stop (17) Ramp Pressure/Force (Rate) (18) Point-to-Point Hold Current Pressure/Force (19) Move Absolute
RMC70/150 and RMCTools User Manual Firmware Requirement: 1.00 or newer See the Commands Overview topic for basic command information and how to issue commands from PLCs, HMIs, etc. Command Parameters # Parameter Description Range 1 Deceleration Rate (pos-units/s2) >0 Description This command stops the axis in closed loop control, bringing the velocity to zero at the specified Deceleration Rate.
8 Command Reference The Target Generator bits in the Status Bits register indicate which portion of the move the axis is currently in. These bits are useful when programming complex motion sequences. Target Generator Done bit This bit indicates the move is complete, which occurs when the Target Position has stopped. Target Generator State A and B bits B A Description 0 0 Done 0 1 Reserved 1 0 Reserved 1 1 Decelerating to zero velocity 8.4.2.2.
RMC70/150 and RMCTools User Manual Target Generator State A and B bits B A Description 0 0 The open loop stop is complete 0 1 reserved 1 0 reserved 1 1 Ramping Control Output toward 0 volts 8.4.2.3. Command: Hold Current Position (5) Supported Axes: Supported Control Modes: Firmware Requirement: Position Control Axes Position PID, Position I-PD 1.00 or newer See the Commands Overview topic for basic command information and how to send commands from PLCs, HMIs, etc.
8 Command Reference The control output, integrator, and output filter are reset, ignoring their states prior to this command being issued. This occurs in both Position PID and Position I-PD whether or not the axis is already in closed loop control. This option is recommended for situations where you want the Control Output to start at zero volts unconditionally.
RMC70/150 and RMCTools User Manual Supported Axes: All Supported Control Modes: All Firmware Requirement: 1.00 or newer See the Commands Overview topic for basic command information and how to issue commands from PLCs, HMIs, etc. Command Parameters None. Description This command initiates an Open Loop Halt. See the Open Loop Halt topic for details. Target Generator State Bits The Target Generator bits in the Status Bits register indicate which portion of the move the axis is currently in.
8 Command Reference This bit indicates the move is complete, which occurs when the Control Output has reached zero. Target Generator State A and B bits B A Description 0 0 Done 0 1 Reserved 1 0 Reserved 1 1 Ramping Control Output toward 0 volts 8.4.3. Open Loop 8.4.3.1. Command: Direct Output (9) Supported Axes: Supported Control Modes: Firmware Requirement: Control Axes All 1.00 or newer Note: In RMCTools versions previous to 1.30, this command was called Direct Drive.
RMC70/150 and RMCTools User Manual consider what value of ramp rate your application requires. 100 V/sec may be a very abrupt stop on some systems. Why Bother? Use the Direct Output command to test the Control Output when you are setting up the system. Target Generator State Bits The Target Generator bits in the Status Bits register indicate which portion of the move the axis is currently in. These bits are useful when programming complex motion sequences.
8 Command Reference Use this command when you want to give an Open Loop Control Output to the axis. Open Loop is good for making the axis move when you don't care about going exactly at a certain speed or reaching an exact position. Target Generator State Bits The Target Generator bits in the Status Bits register indicate which portion of the move the axis is currently in. These bits are useful when programming complex motion sequences.
RMC70/150 and RMCTools User Manual * These options are intended for use with rotary axes. However, all options are available on linear axes, but have no effect. For more details, see the Using Rotary Motion topic. Description This command first puts the axis in open loop. Then, it maps the Control Output as a function of the Actual Position of the axis. As the Actual Position moves, the Control Output ramps from its value at the time the command was issued to the Requested Output.
8 Command Reference If this command is used with a Requested Output of zero volts, notice after reaching position, the position will probably drift because it is in open loop. If you need to hold position, switch to closed loop control, or adjust the Output Bias to minimize drifting. Why Bother? This command is often used to stop the axis in Open Loop, instead of an Open Loop Rate. With this command you'll know approximately where the axis will stop, which you don't know with an Open Loop Rate.
RMC70/150 and RMCTools User Manual • The Requested Distance must be set such that the move direction in position units matches the sign of the Control Output. That is, if the Requested Output is positive, the Requested Distance must be set such that the axis will move in the position direction. See the Open Loop Absolute (11) topic for more details. 8.4.4. Synchronized 8.4.4.1.
8 Command Reference To start a synchronized move, issue the Sync Move Absolute (13) or Sync Move Relative (14) commands simultaneously to each axis that you wish to include in the synchronized move. Refer to the Issuing Sync Move Commands Simultaneously section below. The Sync Group command parameter must be set to the same value for each axis to be synchronized together.
RMC70/150 and RMCTools User Manual S-Curves vs. Trapezoidal If the Requested Jerk Axis Parameter is non-zero for any of the axes in the sync group, then all the axes will use s-curves. If the Requested Jerk Axis Parameter is zero for all of the axes in the sync group, then all the axes will use a trapezoidal profile. When using s-curves, if the sync move commands are re-issued when the axes are decelerating, it may cause the axes to overshoot the requested positions.
8 Command Reference See the Commands Overview topic for basic command information and how to issue commands from PLCs, HMIs, etc.
RMC70/150 and RMCTools User Manual 0 1 Acceleration 1 0 Constant Velocity 1 1 Deceleration 8.4.4.3. Command: Sync Stop (17) Supported Axes: Supported Control Modes: Firmware Requirement: Position Control Axes Position PID, Position I-PD 3.00 or newer See the Commands Overview topic for basic command information and how to issue commands from PLCs, HMIs, etc.
8 Command Reference 8.4.5. Point-to-Point 8.4.5.1. Command: Move Absolute (20) Supported Axes: Supported Control Modes: Firmware Requirement: Position Control Axes Position PID, Position I-PD 1.00 or newer See the Commands Overview topic for basic command information and how to issue commands from PLCs, HMIs, etc.
RMC70/150 and RMCTools User Manual Special Notes Do Not Send Move Absolute Commands in Rapid Succession The Target Acceleration is reset to zero at the beginning of each move. Therefore, sending the Move Absolute command in rapid succession can cause jerky motion or overshoot, as described in the S-Curves vs. Trapezoidal section below. It is possible to send the Move Absolute command in rapid succession if the Requested Jerk Axis Parameter is set to zero.
8 Command Reference When using s-curves, if the move command is re-issued when the axis is decelerating, it may cause the axis to overshoot the requested position. Starting from Open Loop If the axis is in open loop when this command is issued, it will use the Actual Position and Actual Velocity as the beginning Target Position and Target Velocity.
RMC70/150 and RMCTools User Manual Acceleration Rate (position-units/s2) 3 2 >0 4 Deceleration Rate (position-units/s ) >0 5 Relative to: a valid integer as described • • Command Position (0) • Target Position (2) Actual Position (1) Description This command moves the axis in closed loop control by the Requested Distance, using the Requested Speed, Acceleration Rate, and Deceleration Rate.
8 Command Reference 8.4.5.3. Command: Quick Move Absolute (15) Supported Axes: Supported Control Modes: Firmware Requirement: Position Control Axes Position PID, Position I-PD 1.00 or newer See the Commands Overview topic for basic command information and how to issue commands from PLCs, HMIs, etc.
RMC70/150 and RMCTools User Manual Special Notes Actual Velocity and/or Actual Acceleration filtering may be required. During the course of the Quick Move, the RMC calculates when it has to start decelerating in order to reach the requested position. At that point, it switches into closed loop control. When switching to closed loop control, the RMC uses the actual velocity and actual acceleration to determine the target profile to the requested position.
8 Command Reference 8.4.5.4. Command: Quick Move Relative (16) Supported Axes: Supported Control Modes: Firmware Requirement: Position Control Axes Position PID, Position I-PD 1.00 or newer See the Commands Overview topic for basic command information and how to issue commands from PLCs, HMIs, etc.
RMC70/150 and RMCTools User Manual Target Generator State A and B bits B A Description 0 0 The target generator is complete 0 1 Ramping Control Output in Open Loop 1 0 Constant Control Output at Requested Output 1 1 Decelerating in Closed Loop 8.4.5.5. Command: Time Move Absolute (23) Supported Axes: Supported Control Modes: Firmware Requirement: Position Control Axes Position PID, Position I-PD 1.
8 Command Reference Final Velocity and Final Acceleration of the Advanced Time Move Absolute command must be set to zero to duplicate the Time Move Absolute behavior. Status Bits In Position Bit When the Target Position reaches the Command Position and the Actual Position is within the In Position Tolerance window, the In Position Status bit will be set. This bit indicates that the move is complete and the axis is at position.
RMC70/150 and RMCTools User Manual • Command Position (0) The final Command Position is computed by adding the Requested Distance to the current Command Position. • Actual Position (1) The final Command Position is computed by adding the Requested Distance to the current Actual Position. • Target Position (2) The final Command Position is computed by adding the Requested Distance to the current Target Position.
8 Command Reference Command Parameters # Parameter Description Range 1 Requested Position (position-units) any 2 Final Velocity (position-units/s) any 2 3 Final Acceleration (position-units/s ) any 4 Time for Move (sec) >0 5 Direction a valid integer as described • Negative* (-1) • • Nearest (0) • • Current* (2) Positive* (1) Absolute* (3) * These options are intended for use with rotary axes. However, all options are available on linear axes, but have no effect.
RMC70/150 and RMCTools User Manual The Advanced Time Move Absolute and Advanced Time Move Relative are intended for use in user programs. Typically, these commands are programmed in a loop and cycle through an array or arrays of positions, speeds, and/or accelerations. To do this, use the variable table to set up arrays. A variable for incrementing the array is also required. It must be of data type DINT.
8 Command Reference 2 Final Velocity (position-units/s) any 2 3 Final Acceleration (position-units/s ) any 4 Time for Move (sec) >0 5 Relative To a valid integer as described • Command Position (0) • • Actual Position (1) Target Position (2) Description This command is identical to the Advanced Time Move Absolute (26), except that the final Command Position is computed by adding the Requested Distance to the current value of the quantity specified in the Relative To parameter.
RMC70/150 and RMCTools User Manual See the Commands Overview topic for basic command information and how to issue commands from PLCs, HMIs, etc. Command Parameters # Parameter Description Range 1 Requested Position (position-units) any 2 Maximum Speed (position-units/s) ≥0 3 Direction a valid integer as described • Negative* (-1) • • Nearest (0) • • Current* (2) Positive* (1) Absolute* (3) * These options are intended for use with rotary axes.
8 Command Reference • Target Position (2) Description This command is an advanced command. Do not use it unless you specifically intend to use the Position I-PD control mode. If you want to make a basic relative motion move, use the Move Relative (21) command instead. This command is identical to the Move Absolute (I-PD) (28), except that the final Command Position is computed by adding the Requested Distance to the current value of the quantity specified in the Relative To parameter.
RMC70/150 and RMCTools User Manual 5 Slave Point B (pu) Any REAL number 6 Endpoint Behavior A valid integer as described. • Fault (0) • • Truncate (1) Extrapolate (2) Description This command sets up an absolute linear gearing relationship between the master register and the position target for the axis this command was issued to (the slave axis) and will make the slave axis follow that relationship. Typically, the master register is the Target or Actual Position of another axis.
8 Command Reference Truncate If the master moves past an endpoint, the slave axis' Target Position will stop at the endpoint. When the master moves back into the range, the gearing will resume. If the master is moving quickly when it exceeds the endpoint, it may cause the slave to stop abruptly. Note: If a superimposed transition is used, in certain cases it can cause the slave to exceed the endpoints during the transition. If this causes problems, consider using a different type of transition.
RMC70/150 and RMCTools User Manual The Target Generator Done, State A and State B bits are all off during the gearing. Pri. TG SI Busy (Primary Target Generator Superimposed Busy) Bit This bit will be set during the transition. The transition begins when the motion command is issued, not necessarily when the Transition command is issued. When the transition completes, this bit will clear. At this point, the slave axis will on the mapped relationship. 8.4.6.2.
8 Command Reference In this example, Axis 1 (slave) gears to Axis 0 (master) at a 1:1 ratio. Both axes start at 0 pu. The master starts moving at time 0. At 0.2 seconds, the following Gear Pos (Clutch by Time) command is issued to the slave. Numerator = 1 Denominator = 1 Master Register = _Axis[0].TarPos Clutch Time = 0.2 sec The plot below shows how the slave moves. Legend: — Master Position — Slave Position — Master Velocity — Slave Velocity At 0.
RMC70/150 and RMCTools User Manual Example: Register address %MD8.33 is 8*4096 + 33 = 32801. Target Generator State Bits The Target Generator bits in the Status Bits register indicate which portion of the motion the axis is currently in. These bits are useful when programming complex motion sequences. Target Generator Done bit Indicates the clutching is complete and the gear ratio is now locked, which occurs when the Time expires.
8 Command Reference (30) position command will not work, but the Gear Velocity command will. To gear a position to a master, use the Gear Pos (Clutch by Time) (30) command. See the Gearing Overview topic for general information about gearing, including Gear Ratio, Clutching and possible Gear Masters. Specifying a Register Address When issuing this command from anywhere other than RMCTools, the addresses in the Master Register command parameter must be entered as an integer value.
RMC70/150 and RMCTools User Manual 5 Jerk Rate (position-units/s3) Any REAL number Description This command electronically gears the axis to the requested register, using this register as the master position. Typically, the master register is the Target or Actual Position of another axis. The slave ramps its target velocity using the Acceleration Rate and Jerk Rate (rate of change of acceleration) parameters until it reaches the synchronized gear ratio.
8 Command Reference Gear Pos (Clutch by Distance) (32) command instead. If the axis must be geared within a certain amount of time, use the Gear Pos (Clutch by Time) (30) command. Specifying a Register Address When issuing this command from anywhere other than RMCTools, the addresses in the Master Register command parameter must be entered as an integer value. RMC addresses are represented in IEC format as: %MDfile.element, where file = file number, and element = element number.
RMC70/150 and RMCTools User Manual If the master axis linear, this should be Nearest (0). The other options will have no effect. described If the master axis is rotary, see the Rotary Motion section below. 7 Slave Direction If the slave axis linear, this must be Nearest (0). The other options will have no effect. a valid integer as described If the slave axis is rotary, see the Rotary Motion section below.
8 Command Reference Term Description Master Sync Position The position of the master at which the slave will be at its sync position and will be at locked in at the final gear ratio. Master Start Distance The distance from the Master Sync Position during which the clutching will take place. This area is also called the "clutch area". Note: This is the distance, not the absolute position! Master Start Position The master position at which the slave starts clutching.
RMC70/150 and RMCTools User Manual • Flying-Cutoff This command is designed for flying-cutoff or flying-shear type applications. See the example below for more details. • "Superimposed" Move If an axis is already geared to a master, this command can be used to make a "superimposed" move on the slave. To do this, issue this command with the same final gear ratio that the axis was already geared with. See the Gear Ratio Details section below for caveats.
8 Command Reference The plot shows Axis 1 (the master) moving at a constant 5 in/sec. The carriage (Axis 0) is stopped, then accelerates to catch up to the master. Axis 0 and Axis 1 Target Positions are synchronized at 8 and 10, as indicated by the legend to the right. The legend indicates the values at the cursor in the plot. Plot Legend In the plot, the axes remain synchronized (while the system is cutting) until approximately 3.
RMC70/150 and RMCTools User Manual the slave will remain stopped or geared at 0:1 until the master reaches the modified Master Start Position. Example Consider a Gear Pos (Clutch by Distance) command issued with the parameters listed below. The command is issued when the slave axis is stopped at 0. Therefore, the Slave Start Position is 0. Ratio = 1 Master Sync Pos = 5 Slave Sync Pos = 1 Master Start Distance = 4 The Slave Distance = Slave Sync Position - Slave Start Position = 1 - 0 = 1. Also, (2.
8 Command Reference In the plots below, observe the slave velocity (magenta) and the slave acceleration (green) for each class listed above. Master Start Distance ≥ 2.5 x Slave Distance / Final Gear Ratio - Notice the smooth initial acceleration, but relatively high rate of acceleration at the sync position. This may cause minor difficulty tracking at the sync point. Master Start Distance = 2.0 x Slave Distance / Final Gear Ratio - Notice the symmetrical acceleration.
RMC70/150 and RMCTools User Manual - Notice the sharp initial acceleration, but smooth rate of acceleration (due to zero jerk) at the sync position. This makes tracking easier at the sync point. Master Start Distance < 1.6666 x Slave Distance / Final Gear Ratio - Notice that the slave velocity increases above the master velocity in order to reach the sync position. This is acceptable or will be necessary in some applications.
8 Command Reference The Master Direction and Slave Direction parameters of this command are for use on rotary axes. For non-rotary axes, the direction parameters can only be "Nearest". The other options will have no effect. If the master register is not a Target Position or Actual Position register, the master directions cannot be rotary.
RMC70/150 and RMCTools User Manual This command creates a phase shift in the master position of a slave axis. The master position is shifted in relation to the real physical position. This is analogous to opening a coupling on the master shaft for a moment, and is used to delay or advance an axis to its master. The phase shift is seen from the slave. The master does not know that there is a phase shift experienced by the slave. The phase shift remains until another phasing command changes it again.
8 Command Reference This command allows reversing the direction of the master. If the master reverses direction before it has reached the Final Master Position, the slave will follow the profile in reverse. If the master continues in reverse past the Initial Master Position, the slave will continue following the master as directed from the previous gearing command. The offset will resume if the master returns to the Initial Master Position.
RMC70/150 and RMCTools User Manual See the Commands Overview topic for basic command information and how to issue commands from PLCs, HMIs, etc. Command Parameters # Parameter Description Range 1 Slave Offset (position-units) Any REAL number 2 Master Distance (position-units) Any REAL number Description This command offsets the slave axis position by a specified amount.
8 Command Reference This command allows reversing the direction of the master. If the master reverses directions before the master has reached the Final Master Position, the slave will follow the profile in reverse. If the master continues in reverse past the Initial Master Position, no slave offset will be applied until the master returns to the Initial Master Position.
RMC70/150 and RMCTools User Manual See the Commands Overview topic for basic command information and how to issue commands from PLCs, HMIs, etc. Command Parameters # Parameter Description Range 1 Slave Sync Position (position-units) Any REAL number 2 Final Gear Ratio Any REAL number 3 Final Gear Ratio Rate Any REAL number 4 Master Register Valid RMC register Note: See Specifying a Register Address below.
8 Command Reference with respect to the master position. Because the profile is a 5th-order polynomial, it can have multiple points of inflection. This means the position can change direction several times. Care must be taken that the profile generates the expected profile. Make sure to test the command with the parameters you expect to use. Breaking the move into shorter sections can help minimize large swings.
RMC70/150 and RMCTools User Manual This command offers ultimate gearing flexibility and is useful if you need to specify an arbitrary motion profile as a function of the master position. For example, if you know the equation of the cam profile or cam profile segments you wish to create, you can use this command. This command is typically used for only a segment of a move, and you should always issue another command after this one when the Done Status bit is set.
8 Command Reference Timing Considerations When looping through long arrays with the Advanced Gear Move command, precise timing is often important. Each task can execute a maximum of one step per loop time. However, the commands in a step and the link condition in that same step are not executed in the same loop time. When a step is executed, the commands in that step are issued in that loop time. Then, in the next loop time of the controller, the Link Type is evaluated.
RMC70/150 and RMCTools User Manual Command Parameters # Parameter Description Range 1 Master Register Valid RMC register Note: See Specifying a Register Address below. 2 Velocity Limit (position-units/s) 3 Acceleration Limit (position-units/s ) >0 2 >0 This value should typically be at least 10 times the Velocity Limit. 4 Jerk Limit (position-units/s3) >0 This value should typically be at least 20 to 100 times the Acceleration Limit.
8 Command Reference axis is stopped—as defined by the axis Target Velocity being less than the Stop Threshold parameter—for more than 10 loop times. When the axis is stopped, the deadband will cause the axis to not follow the master until the master moves the specified deadband value from its (the master's) stopped location. When that occurs, the axis will begin to track the master. If the velocity, acceleration, and jerk limits are large, this initial motion can cause the axis to jerk suddenly.
RMC70/150 and RMCTools User Manual Target Generator State B Bit Indicates the Target Position and Target Velocity are closely matched to the Master Register. This bit is set if the slave axis Target Position is within the In Position Tolerance of the master value and the slave axis Target Velocity is within the Stop Threshold of the master velocity. This bit is not valid for virtual axes. 8.4.6.10.
8 Command Reference command. If you do not need any velocity, acceleration, or jerk limits, consider the Gear Absolute (25) command. Specifying a Register Address When issuing this command from anywhere other than RMCTools, the addresses in the Master Register command parameter must be entered as an integer value. RMC addresses are represented in IEC format as: %MDfile.element, where file = file number, and element = element number.
RMC70/150 and RMCTools User Manual This command specifies a profile in terms of speed versus position. The RMC compares the current Target Position with the Requested Position and computes a target profile that reaches the Requested Velocity at the Requested Position. Once the Requested Position (and therefore Requested Velocity) is reached, the Done status bit will be set. If the Requested Velocity was non-zero, the target generator will continue at the final Requested Velocity indefinitely.
8 Command Reference Hardware Limitations: RMC75S: versions 2.1D or newer only RMC75P: versions 2.1E or newer only RMC75E: No limitations RMC150E: No limitations See the Commands Overview topic for basic command information and how to issue commands from PLCs, HMIs, etc. Command Parameters # Parameter Description Range 1 Offset (position-units) any 2 Amplitude (position-units) ≥0 3 Frequency (Hz) 0* to 1/4 of the loop frequency 4 Cycles 0 to 16 million in 0.
RMC70/150 and RMCTools User Manual Amplitude The Amplitude specifies the distance from the center to the peak. The amplitude can be zero or a positive number. An amplitude of zero is typically only used when it will be followed by the Change Target Parameter (80) command to ramp the amplitude from zero to some value. If the amplitude would cause the target position to exceed the Positive or Negative Travel Limits, a command error will occur, which will halt the axis if the Auto Stops are set to do so.
8 Command Reference Mid-Pos The sine wave will start at the center (zero degrees) and move in the positive direction. See Mid-Pos and Mid-Neg Details below. Pos Peak The sine wave will start at the positive peak (90 degrees). Mid-Neg The sine wave will start at the center (180 degrees) and move in the negative direction. See Mid-Pos and Mid-Neg Details below. Neg Peak The sine wave will start at the negative peak (270 degrees).
RMC70/150 and RMCTools User Manual The optional Status Block specifies the location in the Variable Table of a block of six registers that provide read-only information on the sine move. This block will not be needed by most users and the Status Block parameter should then be set to none. For more details, see the Sine Move Status section below. Stopping a Sine Move If the number of cycles is non-zero, the sine move will automatically stop after reaching the number of cycles.
8 Command Reference 0 Current Cycle REAL Count The number of whole cycles the sine move has completed. Each cycle begins at the location specified by the Start Location command parameter. The fractional part of the cycle is given by the Current Cycle Fraction below. For continuous sine moves (without a fixed number of cycles), this value will wrap to zero after it reaches 10,000,000 and then continue incrementing.
RMC70/150 and RMCTools User Manual Pri. TG SI Busy (Primary Target Generator Superimposed Busy) Bit This bit will be set during the transition. The transition begins when the motion command is issued, not necessarily when the Transition command is issued. When the transition completes, this bit will clear. 8.4.7.3. Command: Sine Stop (73) Supported Axes: Supported Control Modes: Firmware Requirement: Hardware Limitations: Position Control Axes Position PID, Position I-PD 2.30 or newer RMC75S: versions 2.
8 Command Reference the quadrant after a peak and before the midpoint, then the axis will not stop on that first middle point because it could lead to extreme accelerations. Instead, the axis will continue a half-cycle after the first middle point and stop at the next middle point. When the Stop Location is set to Middle, the target generator performs the stop by ramping the frequency down to zero over the last quarter-cycle.
RMC70/150 and RMCTools User Manual Description This command immediately changes the master register of a curve that is currently in progress on the axis. A curve must currently be in progress on the axis when this command is sent, or a Command Error will occur. If the velocity of the old master and the new master are different, the axis may experience a jerk when the master changes. Therefore, this command is intended to be used only when the speed of the old master and new master are approximately equal.
8 Command Reference • Frequency (2) • Cycles (3) 2 New Value Depends on selected Parameter 3 Ramp Type A valid integer as described 4 • • Time (0) • • Rate (2) • Cycles (log) (4) Cycles (1) Time (log) (3) Ramp Value Depends on selected Ramp Type Description This command changes a target parameter for certain types of position moves that are in progress. For example, this command can be used to perform frequency sweeps by ramping the frequency of a sine move in a certain amount of time.
RMC70/150 and RMCTools User Manual Ramp Value. Rate Ramp the Amplitude linearly at the rate (units/sec) specified by the Ramp Value. Frequency The frequency can be ramped to any positive value, or zero. Valid Ramp Types Time Ramp the Frequency linearly in the number of seconds specified by the Ramp Value. Cycles Ramp the Frequency linearly in the number of cycles specified by the Ramp Value. Rate Ramp the Frequency linearly at the rate (units/sec) specified by the Ramp Value.
8 Command Reference Hardware Limitations: RMC75S: versions 2.1D or newer only RMC75P: versions 2.1E or newer only RMC75E: No limitations RMC150E: No limitations See the Commands Overview topic for basic command information and how to issue commands from PLCs, HMIs, etc.
RMC70/150 and RMCTools User Manual Curve Data The Curve Data parameter specifies the starting address of the curve data in the Variable Table. For details on the curve data, see the Curve Data Formats topic. For all the Curve Formats, the first item in the curve data is the Curve Status. Because it is the first item, the Curve Status is located at the address specified by the Curve Data parameter. The RMC reports the state of the curve processing in this Curve Status register.
8 Command Reference • Linear (1) The curve will consist of straight-line segments between each point. Because the velocity is not continuous, a position axis will tend to overshoot at each point. This type of curve is typically more suitable for pressure or force axes. On position axes, the Target Acceleration will always be zero. Therefore, the Acceleration Feed Forward will have no effect for linear interpolated curves. • Constant (0) The curve will consist of step jumps to each point.
RMC70/150 and RMCTools User Manual • Start-Once (1) Added to curve store, but will not be saved to flash. This curve will be deleted automatically as soon as an interpolation of this curve has been started, but the curve will continue to be executed correctly. Start-Once curves will not be included in the upload or download in the Curve Tool, but can be viewed in the Curves In Controller window. • Complete-Once (2) Added to curve store, but will not be saved to flash.
8 Command Reference DINT External: REAL Description This command deletes curves with IDs in the range of Curve ID to Curve ID + Curve Count -1 will de deleted. Only curves that exist are deleted. An entry will be logged in the Event Log for each curve that is deleted. Attempting to delete non-existent curves will not cause an error. After a curve is deleted, it cannot be used anymore and the space it occupied in the curve store is freed up.
RMC70/150 and RMCTools User Manual RMC75P: versions 2.1E or newer only RMC75E: No limitations RMC150E: No limitations See the Commands Overview topic for basic command information and how to issue commands from PLCs, HMIs, etc. Command Parameters None. Description This command deletes all the curves in the controller. An entry will be logged in the Event Log for each curve that is deleted.
8 Command Reference Description This command starts following the position curve with the specified Curve ID. Curves can be used for splines and profiles based on time, or for camming based on a master. For pressure or force axes, use the Curve Start (Prs/Frc) (87) command. For more advanced options, such as scaling or offsetting the curve, or absolute and relative options for the master or curve alignment, see the Curve Start Advanced (88) command. Curve ID Specifies which curve you wish to follow.
RMC70/150 and RMCTools User Manual A virtual axis can be used as a curve master. It is sometimes desirable to gear to a virtual axis rather than executing the curve as a function of time. All the curves using the virtual axis as a master can be sped up or slowed down by speeding up or slowing down the virtual axis. The virtual axis can even be moved backwards causing the curve axes to back up. This cannot be done using the _Time master register.
8 Command Reference Use the following equation to convert a register address to integer format, N: N = file * 4096 + element Example: Register address %MD8.33 is 8*4096 + 33 = 32801. _Time: The register address for the _Time tag in the RMC70 is %MD20.10. Therefore, the value is 20*4096 + 10 = 81930. The register address for the _Time tag in the RMC150 is %MD44.10. Therefore, the value is 44*4096 + 10 = 180234.
RMC70/150 and RMCTools User Manual Command Parameters # Parameter Description Data Type Range 1 Curve ID Internal: DINT 0-50000 External: REAL 2 Master Register REAL _Time or any other valid register of type REAL. REAL 0 to 16 million Note: See Specifying a Register Address below.
8 Command Reference This topic describes only the advanced features of this command. For basic information on using this command, see the Curve Start (86) command. Absolute/Relative Curve Alignment Curve alignment refers to the Y-values of the curve, which are the positions of the curve axis: Absolute With Absolute curve alignment, the positions will be exactly as defined by the curve. To choose absolute curve alignment, add +0 to the Options command parameter.
RMC70/150 and RMCTools User Manual Endpoint Behavior with Absolute Master Alignment The Endpoint Behavior options listed below apply when Absolute Master Alignment (+2) is selected. The axis is assumed to be in the first cycle when this command is issued. Option Description Fault (+0) If the master exceeds either endpoint, the curve axis' runtime error bit will be set which will halt the axis according to the Auto Stops setting for the Runtime error.
8 Command Reference endpoints will continue for two loop times after the master moves beyond the starting or ending point. If another motion command is not issued within two loop times of the master moving beyond the starting or ending point, then a Closed Loop Halt will occur and the Runtime Error bit will be set. Notice that if the Runtime Error AutoStop is set to a halt, that halt will also occur.
RMC70/150 and RMCTools User Manual Master Scale and Offset The Master Scale and Master Offset parameters scale or shift the curve master. The X value used to index into the curve is found using the following formula: X = ( Master Value + Master Offset ) x Master Scale This can also be viewed as shifting and expanding or contracting the curve itself along the X axis.
8 Command Reference To run a curve backwards with a _Time master, use Absolute Master Alignment, a Master Scale of -1, and a Master Offset value that is equal to the X value of the last point of the curve. Specifying a Register Address When issuing this command from anywhere other than RMCTools, the addresses in the Master Register and Status Block command parameter must be entered as an integer value. RMC addresses are represented in IEC format as: %MDfile.
RMC70/150 and RMCTools User Manual This bit will be set during the transition. The transition begins when the motion command is issued, not necessarily when the Transition command is issued. When the transition completes, this bit will clear. 8.4.8. Velocity 8.4.8.1. Command: Move Velocity (37) Supported Axes: Supported Control Modes: Firmware Requirement: Position or Velocity Control Axes Position PID, Position I-PD, Velocity PID, Velocity I-PD 1.
8 Command Reference is very important that the velocity remain constant, and the position itself is not so important, you may wish to use the Velocity PID control mode instead. • Velocity PID, Velocity I-PD In these modes, the Move Velocity command ramps the Target Velocity to the Requested Speed. The axis will move at that speed until commanded otherwise. Special Notes Move Velocity vs. Move Absolute on a Position Axis On a position axis, the Move Velocity command is sometimes used unnecessarily.
RMC70/150 and RMCTools User Manual • Positive (1): Moves at a positive velocity. Speed must be positive. • Negative (-1): Moves at a negative velocity. Speed must be positive. • Current (2): Moves at the current Target velocity. If the Target Velocity is zero when the command is issued, it will move with a positive velocity. Speed must be positive. • Signed (4): The direction of the move is determined by the sign of the Speed command parameter.
8 Command Reference point. The axis will transition in the manner requested by the current transition mode. See the Transition Rate (56) command for details. This command will not affect any transitions that are in progress. When the RMC powers up, transitions are disabled on all axes. To enable transitions, issue the Transition Rate (56) command. 8.4.9.2.
RMC70/150 and RMCTools User Manual Advanced (88) and Gear Absolute (25) commands normally require that the axis be at the correct starting point. However, if a transition has been enabled, then these commands can be issued even though the axis is not at the correct starting point. When the motion command is issued, the axis will move toward the requested profile (curve, sine wave, gearing relationship, etc.) as defined by the transition command. When the RMC powers up, transitions are disabled on all axes.
8 Command Reference that the axis will lock on to the requested profile, even if the Max Speed and Accel Rate are slower than that of the profile. Shown below is an example of how the various options work for one sample profile. Notice that the behavior will vary for other profiles. Seek Reach Superimposed The Seek method waits until the position and velocity are close before locking in. If the master was not accelerating or decelerating, it would lock in quicker.
RMC70/150 and RMCTools User Manual This bit will be set when the transition begins. Notice that this is when the motion command is issued, not necessarily when the Transition rate command is issued. When the transition actually takes place, this bit will be set until the axis "locks on". 8.5. Pressure/Force Control 8.5.1. Standard 8.5.1.1. Command: Hold Current Pressure/Force (19) Supported Axes: Firmware Requirement: Hardware Limitations: Pressure/Force Control Axes 2.50 or newer RMC75S: versions 2.
8 Command Reference Status Bits At Pressure/Force If the Actual Pressure/Force is within the At Pressure/Force Tolerance window from the Target Pressure/Force, the At Pressure/Force Status bit will be set. This bit indicates that the axis is at the pressure or force. Pressure/Force Control The Pressure/Force Control Status bit indicates that the axis is in closed-loop pressure or force control.
RMC70/150 and RMCTools User Manual Pressure/Force Control The Pressure/Force Control Status bit indicates that the axis is in closed-loop pressure or force control. Pressure/Force Limit Enabled This bit indicates that pressure/force limit is enabled. If an axis is in pressure or force control, pressure/force limit will not be active.
8 Command Reference This command ramps the Target Pressure or Force to the requested Pressure or Force at the rate specified by the Pressure/Force Rate parameter. It will accelerate to that rate as specified by the Pressure/Force Accel Rate. This command will not put the axis in pressure/force control if it is not already in pressure/force control.
RMC70/150 and RMCTools User Manual Supported Axes: Firmware Requirement: Pressure or Force Control Axes 1.00 or newer See the Commands Overview topic for basic command information and how to issue commands from PLCs, HMIs, etc. Command Parameters # Parameter Description Range 1 Requested Pressure/Force (Pr or Fr) any 2 Ramp Time (sec) ≥0 Description This command ramps the Target Pressure/Force to the Requested Pressure/Force in the time specified by the Ramp Time parameter.
8 Command Reference set because the commanded motion was not completed. Notice that this bit does not indicate whether the Actual Pressure or Actual Force has reached the Requested Pressure/Force. Pressure/Force Target Generator State A and B bits B A Description 0 0 Pressure/Force is stopped (done) 0 1 Pressure/Force is increasing 1 0 Reserved 1 1 Pressure/Force is decreasing 8.5.1.5.
RMC70/150 and RMCTools User Manual This bit indicates that pressure/force limit is enabled and the axis is limiting the pressure/force. If an axis is in pressure or force control, pressure/force limit will not be active and this bit will not be set. Pressure/Force Target Generator Bits The Pressure/Force Target Generator bits in the Status Bits register indicate which portion of the move the axis is currently in. These bits are useful when programming complex motion sequences.
8 Command Reference A Linear Ramp Type will ramp the pressure or force linearly until it reaches the Requested Pressure/Force. An S-curve Ramp Type will provide a half s-curve ramp to the Requested Pressure/Force. If the current Pressure/Force is stopped or is moving away from the Requested Pressure/Force when this command is issued, the Target Pressure/Force will immediately be set to the Requested Pressure/Force. This may cause the system to jerk.
RMC70/150 and RMCTools User Manual At the beginning of the plot, the position is increasing. At 0.5 seconds, the Actual Pressure starts increasing. When the Actual Pressure reaches 1000 at approximately 0.56 seconds, the Enter Pressure/Force Control command is issued and the axis smoothly transitions to pressure control, and the Target Pressure ramps to 5000. Exiting Pressure/Force Control To exit pressure/force control, send any open-loop command or closed-loop position command to the axis.
8 Command Reference 8.5.1.7. Command: Enter Pressure/Force Control (Time) (45) Supported Axes: Firmware Requirement: Hardware Limitations: Pressure/Force Control Axes 2.50 or newer RMC75S: versions 2.1D or newer only RMC75P: versions 2.1E or newer only RMC75E: No limitations RMC150E: No limitations See the Commands Overview topic for basic command information and how to issue commands from PLCs, HMIs, etc.
RMC70/150 and RMCTools User Manual command with an S-Curve Ramp Type. The axis will transition to pressure control and go to the Requested Pressure/Force of 5000. The plot below shows the transition: At the beginning of the plot, the position is increasing. At 0.18 seconds, the Actual Pressure starts increasing. When the Actual Pressure reaches 1000 at approximately 0.
8 Command Reference Pressure/Force Target Generator Done bit This bit indicates that the Target Pressure or Target Force has reached the Requested Pressure/Force. If the ramp is interrupted, e.g. due to a halt, the done bit will not be set because the commanded motion was not completed. Notice that this bit does not indicate whether the Actual Pressure or Actual Force has reached the Requested Pressure/Force.
RMC70/150 and RMCTools User Manual If the Pressure/Force Accel Rate is zero, the Pressure/Force will immediately begin changing at the specified Pressure/Force Rate. Upon entering pressure or force control, the Target Pressure/Force will be set to the Actual Pressure/Force. The Target Pressure/Force will then be ramped to the Requested Pressure/Force at the specified Pressure/Force Rate.
8 Command Reference Exiting Pressure/Force Control To exit pressure/force control, send any open-loop command or closed-loop position command to the axis. Status Bits At Pressure/Force When the axis is in Pressure or Force control and the Target Pressure or Force reaches the Requested Pressure/Force and the Actual Pressure or Actual Force is within the At Pressure/Force Tolerance window from the Target Pressure/Force, the At Pressure/Force Status bit will be set.
RMC70/150 and RMCTools User Manual • Negative (2)1 • Bidirectional (3)1 Note: The Negative and Bidirectional options require firmware 3.44.0 or newer. 1 Description This command enables or disables Pressure/Force Limit, and specifies the direction of the limiting. Pressure/Force Limit limits the Actual Pressure or Force during a position or velocity move. Pressure/Force Limit is useful in applications that require moving to a position while not exceeding a certain pressure or force during the move.
8 Command Reference Note: See the Position-Pressure and Position-Force Control topic for information on setting up a position-pressure or position-force axis. Entering Pressure or Force Limit Mode This procedure is can be used to enter Pressure/Force Limit mode. 1. Make sure the Target Pressure/Force has been set to the desired value. For example, the Ramp Pressure/Force (Linear) (42) command can be used to set the Target Pressure/Force to the desired value. 2.
RMC70/150 and RMCTools User Manual Pressure/Force Limit Enabled This bit indicates that pressure/force limit is enabled. If an axis is in pressure or force control, pressure/force limit will not be active. If the axis exits pressure/force control to open loop or closed-loop position or velocity control, it will enter pressure/force limit if the Pressure/Force Limit Enabled bit is on. Pressure/Force Limited This bit indicates that pressure/force limit is enabled and the axis is limiting the pressure/force.
8 Command Reference This command sets up an absolute linear gearing relationship between the master register and the pressure/force target for the axis this command was issued to (the slave axis) and will make the slave axis follow that relationship. Typically, the master register is the Actual Pressure/Force of a reference axis. This command is very useful for making an axis follow a reference input (half-axis).
RMC70/150 and RMCTools User Manual Note: If a superimposed transition is used, in certain cases it can cause the slave to exceed the endpoints during the transition. If this causes problems, consider using a different type of transition. Extrapolate The slave will always follow the master on the linear relationship. See the Gearing Overview topic for general information about gearing, including possible Gear Masters.
8 Command Reference RMC150E: No limitations Command Parameters None. Description This command disables transitions on a pressure/force axis. When transitions are disabled, issuing any pressure/force command that requires a transition will cause a command error, which will halt the axis if the AutoStops are set to do so. Transitions are useful for starting certain types motion even though the axis is not at the correct starting point.
RMC70/150 and RMCTools User Manual then these commands can be issued even though the axis is not at the correct starting point. When the pressure/force command is issued, the axis will move toward the requested profile (curve, sine wave, gearing relationship, etc.) as defined by the transition command. When the RMC powers up, transitions are disabled on all axes. To enable pressure/force transitions, issue the Transition Rate Prs/Frc (64) command.
8 Command Reference Shown below is an example of how the various options work for one sample profile. Notice that the behavior will vary for other master signals. Seek Reach Superimposed The Seek method waits until the pressure/force and pressure/force rate are close before locking in. If the master was not accelerating or decelerating, it would lock in quicker. The Reach method locks in as soon as the pressure/force reaches the master.
RMC70/150 and RMCTools User Manual 6 • Auto (0) • • Mid-Pos (1) • • Mid-Neg (3) Pos Peak (2) Neg Peak (4) Status Block (address) Address or none (0) Note: See Specifying a Register Address below. *See the Frequency section below for details on the lower limit. Description This command starts a continuous sinusoidal move on the pressure or force. If the number of cycles is specified, the sine move will end after completing the cycles and will remain at that pressure or force.
8 Command Reference frequency is the inverse of the Loop Time). For example, if the loop time is 1000 µsec, the maximum frequency is 250 Hz. Loop Time Max Frequency 250 µsec 1000 Hz 500 µsec 500 Hz 1000 µsec 250 Hz 2000 µsec 125 Hz 4000 µsec 62.5 Hz Fractional frequencies are valid, such as 0.345 or 5.84. Issuing this command with a frequency of zero is typically only done when it will be followed by the Change Target Parameter (Prs/Frc) (81) to ramp the frequency from 0 to some value.
RMC70/150 and RMCTools User Manual Mid-Pos and Mid-Neg Details If the Start Location is Mid-Pos or Mid-Neg, in order to prevent a sudden jump in the velocity, the frequency will be logarithmically ramped from zero Hertz to the requested frequency during the first quarter cycle. Therefore, the first quarter cycle will not be a true sine function, and the first quarter cycle will take longer. See the Mid-Pos and MidNeg images above.
8 Command Reference Each parameter can be ramped independently, that is, each parameter can be ramped whether or not other parameters are ramping. See the Change Target Parameter (Prs/Frc) (81) command for details. Example A testing application requires that the amplitude be ramped from 0 to 10 over 20 cycles. To do this, first issue the Sine Start (Prs/Frc) (76) command with an Amplitude of 0. Then, issue the Change Target Parameter (Prs/Frc) (81) command to ramp the Amplitude to 10 during 20 cycles.
RMC70/150 and RMCTools User Manual Frequency 5 Current Offset REAL The current offset of the sine move in pressure or force units. Specifying a Register Address When issuing this command from anywhere other than RMCTools, the addresses in the Status Block command parameter must be entered as an integer value. RMC addresses are represented in IEC format as: %MDfile.element, where file = file number, and element = element number.
8 Command Reference Command Parameters # Parameter Description Range 1 Stop Location a valid integer as described • • Next Cycle (0) • • Pos Peak (2) • Next Peak (4) Middle (1) Neg Peak (3) Description This command stops a pressure or force sine move at a prescribed location. For stopping a position sine move, see the Sine Stop (73) command. The sine move will stop at the next occurrence of the specified Stop Location.
RMC70/150 and RMCTools User Manual Pressure/Force Target Generator Done bit This bit indicates the move is complete, which occurs when the target has stopped. Pressure/Force Target Generator State A and B bits B A Description 0 0 Reserved 0 1 Reserved 1 0 Reserved 1 1 Reserved 8.5.3.6. Command: Change Target Parameter (Prs/Frc) (81) Supported Axes: Firmware Requirement: Hardware Limitations: Pressure or Force Axes 2.30 or newer RMC75S: versions 2.1D or newer only RMC75P: versions 2.
8 Command Reference sine move in a certain amount of time. For changing target parameters of position, Change Target Parameter (80) command. Target parameters can be ramped independently of each other. That is, each parameter can be ramped whether or not other parameters are ramping. Multiple Change Target Parameter commands can be issued from a single step in a user program, allowing them to be ramped together.
RMC70/150 and RMCTools User Manual Cycles (log) Ramp the Frequency logarithmically in the number of cycles specified by the Ramp Value. Ramping frequency logarithmically typically gives a smoother frequency transition than linear ramping, especially over wide frequency ranges. Notice that if the sine move is in the process of completing the last quarter-cycle of a sine move that will end at the midpoint, then any attempt by the user to ramp the frequency during this portion of the move will be ignored.
8 Command Reference 1 = 1 cycle (0 = continuous) n = n cycles (up to 16 million) Description This command is identical to the Curve Start (86) command, but is used for pressure or force. For details, refer to the Curve Start (86) command. For more advanced options, such as scaling or offsetting the curve, or absolute and relative options for the master or curve alignment, see the Curve Start Advanced (Prs/Frc) (89) command. 8.5.3.8.
RMC70/150 and RMCTools User Manual 7 Master Scale REAL ≠0 8 Master Offset REAL any 9 Status Block (address) REAL Address or none (0) Description This command is identical to the Curve Start Advanced (88) command, but is used for pressure or force. For details, refer to the Curve Start Advanced (88) command. 8.6. Set Parameters 8.6.1. Command: Offset Position (47) Supported Axes: Firmware Requirement: All Position Axes 1.
8 Command Reference 8.6.2. Command: Set Target Position (48) Supported Axes: Firmware Requirement: Position Control Axes 1.00 or newer See the Commands Overview topic for basic command information and how to issue commands from PLCs, HMIs, etc. Command Parameters # Parameter Description Range 1 Requested Position (pos-units) any Description This command sets the Target Position to the value specified by the Requested Position parameter, and adjusts the Actual Position by the same amount.
RMC70/150 and RMCTools User Manual Firmware Requirement: 1.50 or newer See the Commands Overview topic for basic command information and how to issue commands from PLCs, HMIs, etc. Command Parameters # Parameter Description 1 Control Mode Values Control Mode 0 Position PID 1 Position I-PD 4 Velocity PID 5 Velocity I-PD Description This command selects the closed loop control mode to be used when the next position or velocity motion command is issued.
8 Command Reference This command should be issued after a move has completed. Since the new Feed Forward value is applied immediately, issuing this command during motion may cause a sudden jerk, which may cause the output to saturate and the axis to halt. This command should be used only after smooth motion. If the feedback is noisy, or the axis oscillates or does not reach steady state during the move, this command will give erroneous results.
RMC70/150 and RMCTools User Manual The Integral Output value is given in percent of maximum Control Output, which is normally 10V. Therefore, 0% means clear the integrator, 100% means 10V, and -100% means -10V. The Integrator Select command parameter selects which integrator to apply the new value to. Typically, this should be set to Active (0), to apply to the current integrator. The other options are only necessary for Pressure/Force Limit in Position PID and Velocity PID modes.
8 Command Reference This command sets the Integrator Mode. Currently, only two modes are available, Always On and Always Off. This command allows the Integrator mode to be changed at any time. The Integrator Mode applies to both the primary and secondary control loops. 8.6.8.
RMC70/150 and RMCTools User Manual See the Commands Overview topic for basic command information and how to issue commands from PLCs, HMIs, etc. Command Parameters # Parameter Description Range 1 Address unsigned integer Note: See Specifying a Register Address below. Description Note: Delta does not recommend using this command. PLCs can read any register directly without needing to send this command. In a user program, use the Expression (113) command to directly access registers.
8 Command Reference Note: Delta does not recommend using this command. From a PLC, you can write to any register directly without needing to send this command. In a user program, use the Expression (113) command to write directly to registers. This command writes the value specified by the Value parameter into the address specified by the Address parameter. This command is not intended to be used in user programs. Use the Expression (113) command instead.
RMC70/150 and RMCTools User Manual 3 1 H Falling QAx, Q1, SSI* Quad, UI/O 2 Z QAx, SSI* Quad, SSI*, Resolver* 3 Z And H QAx, SSI* Quad 4 Z And Not H QAx, SSI* Quad 5 Absolute Adjust (H Rising) SSI* 6 Absolute Adjust (H Falling) SSI* 7 Absolute Adjust (Immed) SSI* SSI*, Resolver* Repeat Mode: Single (0), Repeat(1) 0 or 1 *Valid only for axes configured as Incremental. Description This command enables the trigger for homing the axis.
8 Command Reference Firmware Requirement: 1.45 or newer See the Commands Overview topic for basic command information and how to issue commands from PLCs, HMIs, etc. Command Parameters This command has no command parameters. Description This command disarms the home, if it was armed. This command clears the Home Armed status bit. See the Homing topic for details on homing. 8.7.3. Command: Arm Registration (52) Supported Axes: Firmware Requirement: Quadrature 1.
RMC70/150 and RMCTools User Manual 8.7.4. Command: Disarm Registration (53) Supported Axes: Firmware Requirement: Quadrature 1.45 or newer See the Commands Overview topic for basic command information and how to issue commands from PLCs, HMIs, etc. Command Parameters # Parameter Description Range 1 Registration Number 0 or 1 Description This command disarms the specified registration, if it was armed.
8 Command Reference 2. Rotate the encoder at least one full revolution so that the Learning Z Alignment status bit turns off. This indicates that the Index (Z) Home Location parameter has been set. 3. Update Flash to store the settings in Flash memory. 8.7.6. Command: Pause/Resume Log (95) Supported Axes: Firmware Requirement: All 3.31.0 or newer See the Commands Overview topic for basic command information and how to issue commands from PLCs, HMIs, etc.
RMC70/150 and RMCTools User Manual This information is not important when updating the Flash directly from RMCTools without issuing a command. # Parameter Description Data Type 1 Section to Store - must be 0 Internal: DINT External: REAL Description This command stores all of the RMC controller data to Flash memory for storage in case of power loss. While a Flash update is in progress, the green CPU LED will flash. The RMC will continue to control motion as usual during a Flash update.
8 Command Reference This command starts running the specified User Program on the specified Task. If the specified Task is currently running a User Program, the Task will first be stopped, then it will start immediately at the specified User Program. The RMC must be in Run Mode in order to run tasks. Note: To stop a Task, see the Stop Task (91) command. Tip: After starting a User Program on a task, use the Task Monitor to monitor the status of the task.
RMC70/150 and RMCTools User Manual You can choose a task number up to the number of task that have been made available. The default number of tasks is smaller than the maximum number of tasks available. To increase the number of tasks, use the Programming Properties dialog. 8.8.2. Command: Stop Task (91) Supported Axes: Firmware Requirement: All 1.00 or newer See the Commands Overview topic for basic command information and how to issue commands from PLCs, HMIs, etc.
8 Command Reference Description This command turns on the specified discrete output. To use this command, you must have defined a discrete I/O point to be an output using the Discrete I/O Configuration dialog. For details on settings multiple outputs simultaneously, see the Using Discrete I/O topic. This command is an immediate command. There is no limit to the number of immediate commands in a single step of a user program.
RMC70/150 and RMCTools User Manual See the Commands Overview topic for basic command information and how to issue commands from PLCs, HMIs, etc. Command Parameters # Parameter Description Range 1 I/O Point any valid discrete output Description This command turns off the specified discrete output. To use this command, you must have defined a discrete I/O point to be an output using the Discrete I/O Configuration dialog.
8 Command Reference 8.8.5. Command: Toggle Discrete Output (62) Supported Axes: Firmware Requirement: All 1.20 or newer See the Commands Overview topic for basic command information and how to issue commands from PLCs, HMIs, etc. Command Parameters # Parameter Description Range 1 I/O Point any valid discrete output number Description This command toggles the specified discrete output. If the output was on, this command will turn it off. If the output was off, this command will turn it on.
RMC70/150 and RMCTools User Manual The integer number for output 1 in slot 1 (the CPU slot) is: (32 x 1) + 7 = 39 The integer number for output 3 in slot 5 is: (32 x 5) + 3 = 163 8.9. Plots 8.9.1. Command: Start Plot (100) Supported Axes: Firmware Requirement: All 1.00 or newer See the Commands Overview topic for basic command information and how to issue commands from PLCs, HMIs, etc.
8 Command Reference This command stops a continuous plot capture immediately. This allows RMCTools to read up the entire plot without any gaps. Plots are either continuously capturing data or done capturing data. Compare this with the Start Plot (100) and Trigger Plot (102) commands. To find out more about plotting, see the Using Plots topic. 8.9.3. Command: Trigger Plot (102) Supported Axes: Firmware Requirement: All 1.
RMC70/150 and RMCTools User Manual Supported Axes: Firmware Requirement: All 1.00 or newer See the Commands Overview topic for basic command information and how to issue commands from PLCs, HMIs, etc. Command Parameters # Parameter Description Range 1 Plot Number any valid plot number Description This command rearms a plot so that it can be triggered. If a plot is set to automatically rearm, this command is unnecessary.
8 Command Reference 8.10. Step Editor Commands 8.10.1. Command: Expression (113) Supported Axes: Firmware Requirement: All 1.00 or newer See the Commands Overview topic for basic command information and how to issue commands from PLCs, HMIs, etc. Command Parameters # Parameter Description 1 Expression Description This command can only be used in User Programs. It runs the Expression as entered by the user.
RMC70/150 and RMCTools User Manual // Position plus 2.56. _Axis[0].PosOffset:= _Axis[0].ActPos + 2.56; // Calculate 6 plus half the minimum of the first two axes current Actual // positions. Save this in SampleVariable. SampleVariable := Min(_Axis[0].ActPos,_Axis[1].ActPos) / 2.0 + 6.0; Example 3 An IF statement. IF _Axis[0].StatusBits.InPos = True THEN MyREAL1 := 34.0; MyREAL2 := 70023.0; ELSEIF ABS(_Axis[0].ActPos) > 20.0 THEN %QX0.1 := True; ELSE MyDINT := 2; END_IF Example 4 A COPY function.
8 Command Reference • Use the Expression Editor to enter an expression in the Expression command. An expression consists of tags, operators and functions. You can type directly into the expression and also use the Expression Editor tabs to find the tags, operators and functions you need. To insert an item from the Expression Builder, choose the item and click Insert, or just double-click the item.
9. Register Reference 9.1. Registers A register is a place in the RMC memory that stores data. The registers in the RMC are 32 bits and are any of the following data types: • REAL: 32-bit floating point • • DINT: 32-bit integer DWORD: 32-bit string of bits Register Maps RMC70 Register Map RMC150 Register Map The Register Maps list the addresses of all the registers in the RMC70 and RMC150.
RMC70/150 and RMCTools User Manual dependant. Each group listed below contains Status Registers for the specified axes. For details on the addressing format for the registers, see the Register Address Format topic. For a list of the Status Registers, see the Register Maps. Tag Names Tag names for axis status and parameter registers use the format _Axis[x].reg, where x specifies the axis number and reg is the tag name for that register. For example, _Axis[2].ActPos is the Actual Position of Axis 2.
9 Register Reference is not latched and will clear if the axis speed moves back outside the At Velocity window. This bit is only used when controlling velocity in a mode that has a requested velocity Therefore, it will be clear in Open Loop, Position Control, or Velocity Control in modes such as gearing that have no final requested velocity. For these cases, to determine whether an axis has reached the constant velocity portion of the move, use the Targe Generator State A and State B status bits.
RMC70/150 and RMCTools User Manual condition exists for less than 3 loop times. After the 3rd loop time, the Input Estimated bit will turn off and the Noise Error bit will be set. • For Quadrature, if a Noise Error condition occurs due to an illegal Quadrature transition (e.g. overspeed), then the Input Estimated bit is always set, even after the Noise Error bit is set following the first 3 loop times.
9 Register Reference 1 11 TGStateB 1 Ramping Control Output toward 0 V Decelerating Decelerating (toward 0 velocity) Decelerating in Closed Loop Decelerating or Ramping Down the Control Output Primary Target Generator State B See the Target Generator State A bit for a description of how these bits work. Specific details on the Target Generator status bit are also included in the help topics for each motion command.
RMC70/150 and RMCTools User Manual This bit is set when the Target Pressure/Force and the Actual Pressure/Force are at th Command Pressure/Force. This is defined as when the Pressure/Force Error is less tha the At Pressure/Force Tolerance. The axis must be in closed-loop pressure/force control or pressure/force limit and the Pressure/Force Target Generator Done bit mus be set.
9 Register Reference This bit indicates that the feedback transducer on the secondary input has no errors. This bit provides the instantaneous general status of the transducer, and is especially useful when implementing Custom Feedback. This bit is available in firmware 3.54.0 and newer.
RMC70/150 and RMCTools User Manual Issuing a motion command will also clear any error bits whose underlying error condition has gone away. Error Bits Bit Tag Register Name 0 FollowErr Following Error If the axis is in closed loop position control, this bit is set when the Position Error exceeds the Position Error Tolerance parameter. If the axis is in closed loop velocity control, this bit is set when the Velocity Error exceeds the Velocity Error Tolerance parameter.
9 Register Reference wire, as indicated by the A Wire Break and B Wire Break status bits. This bit is not used by the RMC150. Resolver The RMC detects an over-speed, over-acceleration, or voltage error on the Resolver. SSI The RMC does not detect any valid data. The data line is the wrong polarity at either the beginning of the serial data stream or the end of the serial data stream, indicating the line is not being actively driven by the transducer.
RMC70/150 and RMCTools User Manual edge on the Return pulse (for PWM) after three (3) control loops. Quadrature Not used for Quadrature. Resolver Not used for resolvers. SSI As specified by the SSI Overflow Mode. In general (see the Input Estimated status bit for details and exceptions), the Transducer Overflow error bit is not set until the error condition is present for three consecutive loop times.
9 Register Reference triggered on a Resolver axis if the speeds or accelerations exceed the maximums. See the Resolver Module specifications for details. Position: Quadrature Velocity,Pressure, Force: Analog 9 PosOvertravel If the RMC detects an illegal transition (both A and B signals transition simultaneously), or an overspeed condition (pulse frequency exceeds maximum specifications), for a period of 3 loop times, then the Noise Error bit will be set.
RMC70/150 and RMCTools User Manual of errors that cause this bit to be set. This bit is cleared when any valid command is issued. 12 CmdMod Command Modified This bit is set when a command has been modified. If a command contains an invalid Command Parameter, it may be modified. A command that has been modified will then be a valid command. For example, it the Requested Position is beyond the travel limits, the command will be automatically changed so that it will move to the limit.
9 Register Reference halting due to an overly low Noise Error Rate parameter can cause significant control problems. This bit is set when the RMC detects transducer noise. If the input rate of change of the pressure or force input exceeds the rate specified by the Noise Error Rate parameter, then this error bit will be set. This bit applies to the secondary analog pressure/force input. On pressure-only or force-only axes, the primary Noise Error bit #8 will apply to the pressure or force input.
RMC70/150 and RMCTools User Manual How to Find: Data Type: Axes Status Registers Pane, All tab: Miscellaneous REAL Description This status register stores the value returned by the Read Register (111) command. It also stores the value returned by reading a single register via the Basic/Enhanced PROFIBUS Modes on the RMC75P. 9.2.1.3. Feedback 9.2.1.3.1. Actual Position Type: Axis Status Register RMC70 Address: %MDn.8, where n = 8 + the axis number RMC150 Address: %MDn.
9 Register Reference RMC70 Address: %MDn.9, where n = 8 + the axis number RMC150 Address: %MDn.9, where n = 8 + the axis number System Tag: _Axis[n].ActVel, where n is the axis number How to Find: Axes Status Registers Pane, Basic tab Data Type: Units: REAL pu/sec Description This is the velocity of the axis. It is updated every control loop.
RMC70/150 and RMCTools User Manual where n is the axis number How to Find: Data Type: Units: Axes Status Registers Pane, All tab: Feedback REAL pu/sec2 Description This is the actual acceleration of the axis. It is updated every control loop. This value is obtained differently depending on the feedback type: • Position Feedback The Actual Acceleration is the second derivative of the Actual Position. The acceleration may be filtered as described below.
9 Register Reference Filtering the Jerk The Actual Jerk is filtered by default. See the Actual Jerk Filter topic for details on filtering the Actual Jerk. Filtering makes the Actual Jerk less noisy. Algorithm Usage The Actual Jerk is used in both Active Damping and Acceleration Control. The following gains apply to the Actual Acceleration: • • Triple Differential Gain Active Damping Differential Gain 9.2.1.3.5. Actual Pressure/Force Type: RMC70 Address: Axis Status Register Primary Input: %MDn.
RMC70/150 and RMCTools User Manual Type: RMC70 Address: Axis Status Register Primary Input: %MDn.9, where n = 8 + the axis number Secondary Input: %MDn.24, where n = 8 + the axis number RMC150 Address: Primary Input: %MDn.9, where n = 8 + the axis number Secondary Input: %MDn.24, where n = 8 + the axis number System Tag: Pressure Input: _Axis[n].ActPrsRate, where n is the axis number Force Input: _Axis[n].
9 Register Reference Quadrature Inputs: The Counts register accumulates encoder counts. The direction of the accumulation depends on the sign of the Position Scale or Position Unwind parameter. This value is adjusted when the axis is homed or when an Offset Position (47), Set Target Position (48), or Set Actual Position (49) command is issued. This value will wrap between -2,147,483,648 and +2,147,483,647. However, Delta recommends that the this value never exceed 24 bits (16,777,216).
RMC70/150 and RMCTools User Manual Input Range Formula Saturates No Transducer Transducer Overflow RMC70 ±10V RawCounts x 10.125 V / 32,768 counts at ±10.125V n/a beyond ±10.1V RMC150 A, G, H modules ±10V RawCounts x 10.0 V / 32,500 counts at ±10.08V n/a beyond ±10.08V RMC150 A, G, H modules ±5V RawCounts x 5.0 V / 32,500 counts at ±5.04V n/a beyond ±5.04V RMC150 UI/O module ±10V RawCounts x 10.125 V / 32,768 counts at ±10.125V n/a beyond ±10.1V 9.2.1.3.9.
9 Register Reference 9.2.1.3.10. Raw Counts Type: RMC70 Address: Axis Status Register Primary Input: %MDn.12, where n = 8 + the axis number Secondary Input: %MDn.27, where n = 8 + the axis number RMC150 Address: Primary Input: %MDn.12, where n = 8 + the axis number Secondary Input: %MDn.27, where n = 8 + the axis number System Tag: Primary Input: _Axis[n].RawCounts Secondary Input: _Axis[n].
RMC70/150 and RMCTools User Manual 9.2.1.3.11. Channel A, B Raw Counts Type: RMC70 Address: Axis Status Register Primary Input: Channel A: %MDn.12, where n = 8 + the axis number Channel B: %MDn.15, where n = 8 + the axis number Secondary Input: Channel A: %MDn.27, where n = 8 + the axis number Channel B: %MDn.30, where n = 8 + the axis number RMC150 Address: Primary Input: Channel A: %MDn.12, where n = 8 + the axis number Channel B: %MDn.
9 Register Reference System Tag: _Axis[n].CurrentA, where n is the axis number _Axis[n].CurrentB, where n is the axis number How to Find: Data Type: Units: Axes Status Registers Pane, All tab: Feedback REAL counts Description These Current registers hold the current feedback from each channel's analog transducer on dual-input force or acceleration inputs. They are derived from the Channel A and_B_Raw Counts registers, which are the values from the 16-bit analog-to-digital converters.
RMC70/150 and RMCTools User Manual Units: counts Description These Voltage registers hold the voltage feedback from each channel's analog transducer on dual-input force or acceleration inputs. They are derived from the Channel A and B raw counts registers, which are the values from the 16-bit analog-to-digital converters. The Voltage registers are primarily provided for the user to set up and troubleshoot scaling.
9 Register Reference The Channel A Force is the calculated force from input 0 of a dual-input (differential) force input. The Channel B Force is the calculated force from input 1 of a dual-input (differential) force input.
RMC70/150 and RMCTools User Manual Current Input: Channel A Acceleration = (Channel A_Current + Channel A Offset) * Channel A Scale Channel B Acceleration = (Channel B_Current + Channel B Offset) * Channel B Scale The Channel A and Channel B acceleration are summed to produce the resultant Actual Acceleration. 9.2.1.3.16. Custom Counts Type: RMC70 Address: Axis Status Register Primary Input: %MDn.65, where n = 8+ the axis number Secondary Input: %MDn.
9 Register Reference Transducer Data Type: DWORD Description The Custom Error Bits register is a collection of bits that provide a summary of the state of the Custom Feedback. In RMCTools, individual Status bits can be addressed by appending the bit tag name to _Axis[n].CustomErrorBits., where n is the axis number. For example, _Axis[1].CustomErrorBits.NoTrans is the Axis 1 Custom Feedback No Transducer Error bits. For more details, see Custom Feedback.
RMC70/150 and RMCTools User Manual 9.2.1.5. Primary Control 9.2.1.5.1. Position Error Type: Axis Status Register RMC70 Address: %MDn.35, where n = 8 + the axis number RMC150 Address: %MDn.35, where n = 8 + the axis number System Tag: _Axis[n].PosError, where n is the axis number How to Find: Axes Status Registers Pane, All tab: Control Data Type: Units: REAL position-units (pu) Description The Position Error is the difference between the Target Position and Actual Position.
9 Register Reference 9.2.1.5.3. Proportional Output Term Type: Axis Status Register RMC70 Address: %MDn.37, where n = 8 + the axis number RMC150 Address: %MDn.37, where n = 8 + the axis number System Tag: _Axis[n].PropOutputTerm, where n is the axis number How to Find: Axes Status Registers Pane, All tab: Control Data Type: Units: REAL % of maximum contol output Description The Proportional Output Term is the portion of control output contributed by the Proportional Gain.
RMC70/150 and RMCTools User Manual The Double Differential Output Term is the portion of the PFID Output contributed by the Double Differential Gain if Acceleration Control is enabled, or the Active Damping Differential Gain if Active Damping is enabled. The Double Differential Output Term is useful for troubleshooting when included in a plot. See the Double Differential Gain and Active Damping Differential Gain topics for details. 9.2.1.5.6.
9 Register Reference System Tag: _Axis[n].AccFFwdTerm, where n is the axis number How to Find: Axes Status Registers Pane, All tab: Control Data Type: Units: REAL % of maximum control output Description The Acceleration Feed Forward Term is the portion of the PFID Output contributed by the Acceleration Feed Forward. The Acceleration Feed Forward Term is useful for troubleshooting when included in a plot. See the Acceleration Feed Forward topic for more details. 9.2.1.5.9.
RMC70/150 and RMCTools User Manual Type: Axis Status Register RMC70 Address: %MDn.45, where n = 8 + the axis number RMC150 Address: %MDn.45, where n = 8 + the axis number System Tag: _Axis[n].
9 Register Reference 4 Position I-PD 5 Velocity PID 6 Velocity I-PD Any motion command that switches the control mode will affect this register. For example, issuing Direct Output (9) or Open Loop Rate (10) commands will change this register to values of Direct Output (1) and Open Loop (2). Also, issuing closed loop motion commands will switch the control mode to the control mode specified by the Next Pos/Vel Control Mode register.
RMC70/150 and RMCTools User Manual Force Input: _Axis[n].FrcError, where n is the axis number How to Find: Axes Status Registers Pane, All tab: Control Axes Status Registers Pane, All tab: Pressure/Force Control Data Type: Units: REAL Pressure units (Pr) or Force units (Fr) Description The Pressure/Force Error is the difference between the Target Pressure/Force and the Actual Pressure/Force.
9 Register Reference System Tag: Pressure Input: _Axis[n].PrsIntGainTerm, where n is the axis number Force Input: _Axis[n].FrcIntGainTerm, where n is the axis number How to Find: Axes Status Registers Pane, All tab: Control Axes Status Registers Pane, All tab: Pressure/Force Control Data Type: Units: REAL % of maximum control output Description The Pressure/Force Integral Term is the portion of control output contributed by the Pressure/Force Integral Gain.
RMC70/150 and RMCTools User Manual How to Find: Axes Status Registers Pane, All tab: Control Axes Status Registers Pane, All tab: Pressure/Force Control Data Type: Units: REAL % of maximum control output Description The Pressure/Force Feed Forward Term is the portion of the control output contributed by the Pressure/Force Feed Forward Term. The Pressure/Force Feed Forward Term is useful for troubleshooting when included in a plot. See Pressure/Force Feed Forward Gain for more details. 9.2.1.6.6.
9 Register Reference The Command Position is the requested position with travel limits applied. If the requested position is outside the Positive or Negative Travel Limit, the Command Position will be set to the value of the limit, and the axis will go only to the limit. The Command Position is updated when any motion command is issued with a Requested Position command parameter.
RMC70/150 and RMCTools User Manual When an axis is stopped, the Target Position should be the same as the Command Position unless an error or halt has occurred. When an axis is in Open Loop control, the Target Position is set to the Actual Position. Why Bother? Knowing the relationship between the Target Position and Actual Position is key to tuning the axis. The main goal in tuning the axis is to minimize the error between the Target and Actual Positions.
9 Register Reference Type: Axis Status Register RMC70 Address: %MDn.58, where n = 8 + the axis number RMC150 Address: %MDn.58, where n = 8 + the axis number System Tag: _Axis[n].TarJrk, where n is the axis number How to Find: Axes Status Registers Pane, All tab: Target Data Type: Units: REAL pu/sec3 Description When the axis is in Closed Loop control, the Target Jerk is the calculated instantaneous ideal jerk (rate of change of acceleration) for the axis.
RMC70/150 and RMCTools User Manual The Command Pressure or Force is the requested pressure or force. For Pressure or Force Limit, this will hold the requested Pressure/Force Limit value. 9.2.1.7.9. Target Pressure/Force Type: Axis Status Register RMC70 Address: %MDn.60, where n = 8 + the axis number RMC150 Address: %MDn.60, where n = 8 + the axis number System Tag: Pressure Input: _Axis[n].TarPrs, where n is the axis number Force Input: _Axis[n].
9 Register Reference Type: Axis Status Register RMC70 Address: %MDn.62, where n = 8 + the axis number RMC150 Address: %MDn.62, where n = 8 + the axis number System Tag: Pressure Input: _Axis[n].CyclesPrs, where n is the axis number Force Input: _Axis[n].
RMC70/150 and RMCTools User Manual This status register stores the "registration position 1" obtained by a registration event. This value will be valid until another "registration 1" event occurs. 9.2.1.8.3. Encoder Status Type: Axis Status Register RMC70 Address: %MDn.18, where n = 8 + the axis number RMC150 Address: %MDn.18, where n = 8 + the axis number System Tag: _Axis[n].
9 Register Reference the RMC70 QAx and Q1 and RMC150 UI/O modules. 0=No break 1=Break Detected In the Axis Tools, the A Input status bit and the A Wire Break are combined into one cell with the values On, Off, or Break. 2 BIn B Input Indicates the state of the quadrature input (0=Off, 1=On). Available on all axes with quadrature inputs. This status bit is valid only if the B Wire Break bit is off. The Input and the Wire Break are combined into one tag name, BIn, as described below.
RMC70/150 and RMCTools User Manual 5 Z Wire Break (bit 1) Z Input (bit 0) Value of ZIn Tag Description 0 0 0 Z Input On 0 1 1 Z Input Off 1 0 2 Wire Break Detected 1 1 3 Wire Break Detected Index (Z) Wire Break Indicates whether a broken wire is detected on the quadrature Index (Z) input. Available only on the RMC70 QAx module.
9 Register Reference 10 HomeLatched Home Latched This bit is set when a Home event has been triggered. All tab: Home Once the home event occurred, this bit will remain set until the axis is re-armed if the homing is set for manual re-arm. 11 Reg0Armed Registration 0 Armed This bit is set when Registration 0 is armed. 12 Reg0Latched Registration 0 Latched This bit is set when the Registration 0 event has occurred.
RMC70/150 and RMCTools User Manual RMCTools, this will automatically be done for you. This does not apply if the parameter is being changed with a command, such as with the Offset Position (47) command. Tag Names Tag names for axis status and parameter registers use the format _Axis[x].reg, where x specifies the axis number and reg is the tag name for that register. For example, _Axis[2].ActPos is the Actual Position of Axis 2. If there is no number in the brackets, such as _Axis[].
9 Register Reference 9.2.2.2.2. Position Offset Type: Axis Parameter Register RMC70 Address: %MDn.1, where n = 12 + the axis number RMC150 Address: %MDn.1, where n = 24 + the axis number System Tag: _Axis[n].
RMC70/150 and RMCTools User Manual • Resolver Scaling 9.2.2.2.3. Velocity Scale Type: Axis Parameter Register RMC70 Address: %MDn.0, where n = 12 + the axis number RMC150 Address: %MDn.0, where n = 24 + the axis number System Tag: _Axis[n].
9 Register Reference Data Type: Units: Range: Default Value: REAL Volts or mA any 0 Description This parameter is used on velocity input axes to specify the voltage or current input range in which the velocity is zero. If the absolute value of the voltage or current is outside of this value, this value is always subtracted from (added to, if the voltage or current is negative) the voltage or current input before being converted to the Actual Velocity.
RMC70/150 and RMCTools User Manual 9.2.2.2.6. Acceleration Scale Type: Axis Parameter Register RMC70 Address: %MDn.18, where n = 12 + the axis number RMC150 Address: %MDn.18, where n = 24 + the axis number System Tag: _Axis[n].
9 Register Reference Default Value: 0 Description This parameter is used on acceleration inputs together with the Acceleration Scale parameter to convert the Voltage or Current of a single-input acceleration to an Actual Acceleration. This parameter is used to shift the input voltage or current before they are the volts scaled to acceleration units. The Acceleration Scale and Acceleration Offset parameters apply only to acceleration inputs.
RMC70/150 and RMCTools User Manual Description These parameters are used together with the Channel A Acceleration Offset and Channel B Acceleration Offset parameters to calculate the Actual Acceleration from inputs 0 and 1 of a dual-input (differential) acceleration feedback. After the Channel A Acceleration Offset is added to the Channel A voltage or current, it is multiplied by the Acceleration A Scale to produce the Channel A Acceleration.
9 Register Reference Actual Acceleration = Acceleration Scale x ((Voltage or Current) + Acceleration Offset) Changing this Parameter Because this parameter affects motion, the axis must be disabled or in Direct Output before writing to this parameter. The Enabled and Direct Output Status Bits indicate these states of the axis. When changing this parameter from RMCTools, the software will automatically do this for you. This may cause a halt on the axis, which is expected. 9.2.2.2.10.
RMC70/150 and RMCTools User Manual Changing this Parameter Because this parameter affects motion, the axis must be disabled or in Direct Output before writing to this parameter. The Enabled and Direct Output Status Bits indicate these states of the axis. When changing this parameter from RMCTools, the software will automatically do this for you. This may cause a halt on the axis, which is expected. 9.2.2.2.11. Count Unwind Type: Axis Parameter Register RMC70 Address: %MDn.
9 Register Reference Type: Axis Parameter Register RMC70 Address: %MDn.11, where n = 12 + the axis number RMC150 Address: %MDn.11, where n = 24 + the axis number System Tag: _Axis[n].CntOffset, where n is the axis number How to Find: Axes Parameters Pane, Setup tab: Primary Control Setup Data Type: Units: Range: Default Value: DINT pu any 0 Description This parameter is used on SSI and Resolver position axes with absolute positions.
RMC70/150 and RMCTools User Manual positive end of travel would add 409,600 counts resulting in a value of 16,970,842, which is greater than the maximum 16,777,216 counts of the encoder. This will cause the encoder to pass the zero point, which is unacceptable on a linear axis. The Count Offset can be used to adjust the zero point such that the axis will not reach it. For example, setting the Count Offset to -1,000,000 will change the counts at the negative end of travel to 15,561,242.
9 Register Reference Type: Axis Parameter Register Bit Parameter RMC70 Address: %MDn.9.0, where n = 12 + the axis number RMC150 Address: %MDn.9.0, where n = 24 + the axis number System Tag: _Axis[n].PriInputBits.Rotary How to Find: Axes Parameters Pane, Setup tab: Primary Control Setup Data Type: Range: Default Value: bit Linear (0), Rotary (1) Linear (0) Description The Linear/Rotary Bit Parameter specifies whether the axis is set as a Rotary axis or a Linear axis.
RMC70/150 and RMCTools User Manual If an axis is considered stopped when the velocity is exactly zero, it would be impossible for it to ever be considered stopped, since there is always noise in real-life systems. For example, perhaps a system (scaled in inches) has velocities up to 0.08 in/sec when it's standing still. Setting the Stop Threshold to 0.1 in/sec will let you know when the axis is stopped. 9.2.2.2.16. Noise Error Rate Type: RMC70 Address: Axis Parameter Register Primary Input: %MDn.
9 Register Reference The Noise Error Rate applies to all axes types. However, the Noise Error Rate units for each axis type may differ. The following table shows the Noise Error Rate units for each axis type: Axis Type Noise Error Rate Units Position pu/s Velocity pu/s2 Acceleration pu/s3 Pressure/Force Pr/s or Fr/s Special Notes The Noise Error Rate does factor out the current Actual Velocity, and therefore, it won’t trigger for simply going over speed.
RMC70/150 and RMCTools User Manual Example 2: On a position-force feedback axis, the user selects in for the primary feedback and lbs for the secondary feedback. The position units will be displayed as (in) and the force units will be displayed as (lbs). Example 3: On a position axis, the user has connected a torque sensor. In the Display Units parameter, the user selects Custom. In the Custom Units parameter, the user enters "Nm". The axis units will be displayed as (Nm).
9 Register Reference Valid Characters The characters listed here may be used in the Custom Units parameter. !"#$%&'()*+,./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijkl mnopqrstuvwxyz {|}~ ¡¢£¤¥¦§¨©ª«¬®¯°±²³´µ¶·¸¹º»¼½¾¿ ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüý þÿ These characters correspond to the Unicode character ranges U+0021 to U+007E and U+00A0 to U+00FF. The NUL character (U+0000) cannot be entered, but RMCTools will pad trailing unused characters with NUL.
RMC70/150 and RMCTools User Manual Parameter Tag Bit(s) Parameter Tag Bit(s) Rotary vs. Linear Rotary 0 Rotary vs.
9 Register Reference 9.2.2.2.20.2. Velocity Filter Type Type: RMC70 Address: RMC150 Address: Axis Parameter Register %MDn.9.13-14, where n = 12 + the axis number %MDn.9.4-5, where n = 24 + the axis number System Tag: _Axis[n].PriInputBits.
RMC70/150 and RMCTools User Manual RMC70 Address: %MDn.3, where n = 12 + the axis number RMC150 Address: %MDn.3, where n = 24 + the axis number System Tag: _Axis[n].ActVelFilter, where n is the axis number How to Find: Axes Parameters Pane, All tab: Feedback → Filtering/Modeling Data Type: Units: Range: Default Value: REAL Hz 0 (Off) or greater than 0.01 100 Description This parameter specifies the cut-off frequency of the Actual Velocity input filter in hertz.
9 Register Reference • Filtering makes the plots look cleaner. • • Filtering can be used to "smooth" the velocity of a reference input. Filtering the input can reduce noise in the feedback which may improve system control. 9.2.2.2.20.4. Acceleration Filter Type Type: RMC70 Address: RMC150 Address: Axis Parameter Register %MDn.9/15-16, where n = 12 + the axis number %MDn.9/6-7 , where n = 24 + the axis number System Tag: _Axis[n].PriInputBits.
RMC70/150 and RMCTools User Manual See the Primary Input Bits Register for details about the register containing these bits. 9.2.2.2.20.5. Actual Acceleration Filter Type: RMC70 Address: Axis Parameter Register Primary Input: %MDn.4, where n = 12 + the axis number Secondary Input: %MDn.22, where n = 12 + the axis number RMC150 Address: Primary Input: %MDn.4, where n = 24 + the axis number Secondary Input: %MDn.22, where n = 24 + the axis number System Tag: Position/Velocity Axes: _Axis[n].
9 Register Reference Filtering increases the phase delay in the filtered value. By default, filtering is applied to the Velocity and Acceleration values used for status and for plots, but it is not applied to the values used for control because of the phase delay filtering introduces. Therefore, filtering should be left out of systems that need to react to quick changes. You can select to use filtered values for control with the Velocity Filter Type and Acceleration Filter Type parameters.
RMC70/150 and RMCTools User Manual The filter frequency range is limited to greater than 0.01 due to inaccuracies in the calculations for lower values. The filter is disabled (without notice to the user) when the frequency is set above 1/4 the sample frequency (500Hz for 500us loop, 250Hz for 1ms loop, 125Hz for 2ms loop, 62.5Hz for 4ms loop). Why Bother? • • Filtering makes the plots look cleaner. • Filtering the input can reduce noise in the feedback which may improve system control.
9 Register Reference Type: Axis Parameter Register RMC70 Address: Primary Input: %MDn.5, where n = 12 + the axis number RMC150 Address: Primary Input: %MDn.5, where n = 24 + the axis number System Tag: Secondary Input: %MDn.23, where n = 12 + the axis number Secondary Input: %MDn.23, where n = 24 + the axis number Pressure Input: _Axis[n].PrsRateFilter Force Input: _Axis[n].
RMC70/150 and RMCTools User Manual Data Type: Range: Default Value: DINT Zero (0), First (1), Second (2), Undefined (255) Undefined (255) Description This parameter specifies the order of the feedback model. Separate models exist for position and for pressure or force feedback. For more details, see the modeling topic. Zero Order (0) A zero-order system is a linear system with virtually no delay between the Control Output and motion. The velocity of the system is proportional to the Control Output.
9 Register Reference System Tag: _Axis[n].ModGainPos, where n is the axis number How to Find: Axes Parameters Pane, All tab: Feedback → Filtering/Modeling Data Type: Units: Default Value: REAL (pu/s)/volt 1 Description This parameter specifies the gain of the position feedback model in the positive direction. This parameter is valid for models with a Model Order of 0, 1, or 2. This parameters is valid only for position axis. For more details, see the modeling topic.
RMC70/150 and RMCTools User Manual RMC70 Address: %MDn.161, where n = 12 + the axis number RMC150 Address: %MDn.161, where n = 24 + the axis number System Tag: _Axis[n].PFModelGain, where n is the axis number How to Find: Axes Parameters Pane, All tab: Secondary Feedback → Filtering/Modeling Data Type: Units: Default Value: REAL (Pr/s)/V or (Fr/s)/V 1 Description This parameter specifies the gain of the pressure or force model. This parameter is valid for models with a Model Order of 0, 1, or 2.
9 Register Reference The Time Constant must be greater than or equal to the control loop time: Control Loop Minimum Time Time Constant 0.5ms 0.0005sec 1.0ms 0.001sec 2.0ms 0.002sec 4.0ms 0.004sec 9.2.2.2.20.14. Model Natural Frequency Type: RMC70 Address: Axis Parameter Register Position: %MDn.152, where n = 12 + the axis number Pressure/Force: %MDn.162, where n = 12 + the axis number RMC150 Address: System Tag: Position: %MDn.152, where n = 24 + the axis number Pressure/Force: %MDn.
RMC70/150 and RMCTools User Manual 2ms 125Hz 4ms 62.5Hz 9.2.2.2.20.15. Model Damping Factor Type: RMC70 Address: Axis Parameter Register Position: %MDn.153, where n = 12 + the axis number Pressure/Force: %MDn.163, where n = 12 + the axis number RMC150 Address: System Tag: Position: %MDn.153, where n = 24 + the axis number Pressure/Force: %MDn.163, where n = 24 + the axis number Position: _Axis[n].ModDampFactor, where n is the axis number Pressure/Force: _Axis[n].
9 Register Reference Default Value: 20 Description This parameter specifies the rate at which the model is updated to match the position feedback. The faster the response, the closer the model output will be to the feedback. In that sense, this parameter is like a filter cut-off frequency. For more details, see the modeling topic. This parameter is valid only on position axes. If the system model is accurate, the Model Response can be set to a low value.
RMC70/150 and RMCTools User Manual These parameters are used together with the Channel A Force Offset and Channel B Force Offset parameters to calculate the Actual Force from inputs 0 and 1 of a dual-input (differential) force axis. Channel A Force Scale converts the Channel A voltage or current to Fr units. The Channel A Force Offset is then added resulting in the Channel A Force. Channel B Force Scale converts the Channel B voltage or current to Fr units.
9 Register Reference Changing this Parameter Because this parameter affects motion, the axis must be disabled or in Direct Output before writing to this parameter. The Enabled and Direct Output Status Bits indicate these states of the axis. When changing this parameter from RMCTools, the software will automatically do this for you. This may cause a halt on the axis, which is expected. 9.2.2.2.21.3. Pressure/Force Scale Type: RMC70 Address: Axis Parameter Register Primary Input: %MDn.
RMC70/150 and RMCTools User Manual Data Type: Units: Range: Default Value: REAL Pr or Fr any 0 Description The Pressure Offset or Force Offset parameter is used together with the Pressure Scale or Force Scale parameter to calculate the Actual Force or Actual Pressure from the voltage or current of the input. The Offset is added to the scaled Pressure or Force. Changing this Parameter Because this parameter affects motion, the axis must be disabled or in Direct Output before writing to this parameter.
9 Register Reference modules only. This is the PosLim input on the module. RMC70: any input from a D8 module, but only from the first 12 I/O points as listed in the I/O Monitor. general input RMC150: any general discrete input from any module. Positive Limit Format Details This section is primarily for addressing the Positive Limit Input parameter when communicating with the RMC from an external device. This information is not necessary when configuring the Positive Limit Input in RMCTools.
RMC70/150 and RMCTools User Manual System Tag: _Axis[n].PriInputBits.NegLimitIn How to Find: Axes Parameters Pane, All tab: Feedback Data Type: bits Default Value: 0 (none) Description Each RMC axis allows for optional physical limit inputs to specify the boundaries in which the axis is allowed to operate. Each axis can have two physical limit inputs: Positive Limit Input and Negative Limit Input. Typically, these inputs are wired to limit switches.
9 Register Reference 4 %IX0 The slot numbering starts with 0 for the leftmost module in the RMC150. 5 %IX1 6 %IX2 7 %IX3 8 %IX4 9 %IX5 10 %IX6 11 %IX7 For example, input 7 in slot 5 is: 12 %IX8 (32 x 5) + (7) + 4 = 171 13 %IX9 14 %IX10 15 %IX11 The I/O Monitor also displays the slot number and I/O number of each I/O point. For example, the I/O point 4 in slot 3 is displayed as 3.4.
RMC70/150 and RMCTools User Manual Type: RMC70 Address: RMC150 Address: Axis Parameter Register %MDn.10/8, where n = 12 + the axis number not available System Tag: _Axis[n].MDTSSICfg.SSI How to Find: Axes Parameters Pane, Setup tab: Primary Control Setup Data Type: Bits - see below Description This parameter is valid only on MA axis modules on the RMC70. The Feedback Type parameter specifies the feedback type of the axis.
9 Register Reference • St/St Rising The MDT feedback is Start/Stop, measured on the rising edge. • St/St Falling The MDT feedback is Start/Stop, measured on the falling edge. • PWM The MDT feedback is Pulse Width Modulated. Changing this Parameter Because this parameter affects motion, the axis must be disabled or in Direct Output before writing to this parameter. The Enabled and Direct Output Status Bits indicate these states of the axis.
RMC70/150 and RMCTools User Manual states of the axis. When changing this parameter from RMCTools, the software will automatically do this for you. This may cause a halt on the axis, which is expected. See the MDT/SSI Configuration Register for details about the register containing these bits. 9.2.2.2.23.4. SSI Format Type: Axis Parameter Register RMC70 Address: %MDn.10/9, where n = 12 + the axis number RMC150 Address: %MDn.10/9, where n = 24 + the axis number System Tag: _Axis[n].MDTSSICfg.
9 Register Reference Data Type: Bits - see below Description This parameter is valid only on axes with SSI feedback. It tells the RMC how many data bits your SSI encoder has. You must set this parameter to match your SSI transducer or encoder.
RMC70/150 and RMCTools User Manual Because this parameter affects motion, the axis must be disabled or in Direct Output before writing to this parameter. The Enabled and Direct Output Status Bits indicate these states of the axis. When changing this parameter from RMCTools, the software will automatically do this for you. This may cause a halt on the axis, which is expected. Choosing the SSI Clock Rate In general, choose the fastest clock rate possible to obtain the most accurate feedback values.
9 Register Reference RMC150 UI/O Module Bit 11 Bit 10 SSI Clock Rate 0 0 250 kHz 0 1 500 kHz 1 0 971 kHz See the MDT/SSI Configuration Register for details about the register containing these bits. 9.2.2.2.23.7. SSI Clock Mode Type: Axis Parameter Register RMC70 Address: %MDn.10/1, where n = 12 + the axis number RMC150 Address: %MDn.10/1, where n = 24 + the axis number System Tag: _Axis[n].MDTSSICfg.
RMC70/150 and RMCTools User Manual The SSI Termination parameter applies to axes with SSI feedback on an RMC150 Universal I/O (UI/O) Module. The UI/O module has internal software-selectable termination. Input termination should always be applied. For daisy-chained SSI, only the last input in the chain should have termination. See the RMC150 UI/O Wiring topic for details. See the MDT/SSI Configuration Register for details about the register containing these bits. 9.2.2.2.23.9.
9 Register Reference Excessive Delay The timing diagram below shows an SSI system with a time delay of more then one clock period. On the first rising edge of the Clock, the SSI device puts the first bit of data on the Data line. By the next rising edge of the Clock, when the RMC samples the data, the data from the SSI device has not yet arrived, and the SSI input will not return the correct value. To compensate for the delay, set SSI Wire Delay parameter.
RMC70/150 and RMCTools User Manual 0 none 1 Fault Input 2 - 3 - 4 %IX0 5 %IX1 6 %IX2 7 %IX3 8 %IX4 9 %IX5 10 %IX6 11 %IX7 12 %IX8 13 %IX9 14 %IX10 15 %IX11 See the MDT/SSI Configuration Register for details about the register containing these bits. 9.2.2.2.23.11. SSI Overflow Mode Type: Axis Parameter Register RMC70 Address: %MDn.10/4-6, where n = 12 + the axis number RMC150 Address: %MDn.10/4-6, where n = 24 + the axis number System Tag: _Axis[n].MDTSSICfg.
9 Register Reference This section is primarily for addressing the SSI Overflow Mode parameter when communicating with the RMC from an external device. This information is not necessary when configuring the SSI Overflow Mode in RMCTools. The SSI Overflow Mode is selected with bits 4-6 in the MDT/SSI Configuration Register.
RMC70/150 and RMCTools User Manual RMC70 Address: Primary Input: %MDn.10/0-2, where n = 12 + the axis number Secondary Input: %MDn.28/0-2, where n = 12 + the axis number RMC150 Address: Primary Input: %MDn.10/0-2, where n = 24 + the axis number Secondary Input: %MDn.28/0-2, where n = 24 + the axis number System Tag: Primary Input: _Axis[n].AnalogCfg.InputRange Secondary Input: _Axis[n].SecAnalogCfg.
9 Register Reference RMC150 Address: %MDn.10, bit 1, where n = 24+ the axis number System Tag: _Axis[n].QuadCfg.
RMC70/150 and RMCTools User Manual How to Find: Data Type: Range: Default Value: Axes Parameters Pane, All tab: Feedback Bit A Leading (0), A Trailing (1) A Leading (0) Description This parameter is valid on Quadrature axes. The Z Home Location parameter specifies the edge of the quadrature A signal on which a Z home is triggered. The Z Home Location parameter is important for accurate directional homing with the Index (Z) pulse on a quadrature encoder.
9 Register Reference A Trailing The home is triggered on the trailing edge of the A pulse after the leading edge of the Z pulse. 'Leading' is defined as the edge that will be rising when the encoder is moving in the direction of increasing counts and falling when in the direction of decreasing counts. The leading edge of Z is indicated by the arrow in the figure below.
RMC70/150 and RMCTools User Manual Because this parameter affects motion, the axis must be disabled or in Direct Output before writing to this parameter. The Enabled and Direct Output Status Bits indicate these states of the axis. When changing this parameter from RMCTools, the software will automatically do this for you. This may cause a halt on the axis, which is expected.
9 Register Reference accuracy and the signal-to-noise ratio will be reduced. Contact Delta Computer Systems, Inc. to discuss options for your application. Both Resolver interfaces on a Resolver (R) module must always be set to the identical Reference Amplitude. Changing the Reference Amplitude on one input will automatically change it on the other input. Because this parameter affects motion, the axis must be disabled or in Direct Output before writing to this parameter.
RMC70/150 and RMCTools User Manual System Tag: Primary Input: _Axis[n].AnalogCfg Secondary Input: _Axis[n].SecAnalogCfg where n is the axis number How to Find: Data Type: See individual parameter registers listed below DWORD - see below Description The Analog Feedback Register contains the bit-addressable feedback configuration parameters for analog inputs. This topic lists the bit address for each parameter. Each parameter is accessible in RMCTools via the Axis Parameter Editor.
9 Register Reference Because this parameter affects motion, the axis must be disabled or in Direct Output before writing to this register. The Enabled and Direct Output Status Bits indicate these states of the axis. When changing this parameter from RMCTools, the software will automatically do this for you. This may cause a halt on the axis, which is expected. Bits This register contains the following parameters. The bits for each are given in the second column. Not all bits are available for all modules.
RMC70/150 and RMCTools User Manual Input Termination Term 1 Filter Reg Input RFilt 2 9.2.2.2.23.23. Resolver Configuration Register Type: Axis Parameter Register RMC70 Address: %MDn.10, where n = 12+ the axis number RMC150 Address: %MDn.10, where n = 24+ the axis number System Tag: _Axis[n].ResCfg, where n is the axis number How to Find: See individual parameters listed below.
9 Register Reference How to Find: Data Type: See individual parameters listed below DWORD - see below Description The Custom Feedback Configuration Register contains the bit-addressable Custom Feedback configuration parameters. This topic lists the bit address for each parameter. Each parameter is accessible in RMCTools via the Axis Parameter Editor. For details on each parameter, see the respective links. Tag Names This register contains the following parameters.
RMC70/150 and RMCTools User Manual be used in cases where the Custom Counts register is being modified from an external device, such as a PLC. The No Transducer Error bit can still be set by using the No Transducer and Secondary No Transducer bits in the Custom Error Bits register. Additionally, if the Custom Counts is NaN, INf, -Inf, the No Transducer error bit will also be set. Format Details The Custom Feedback Auto-Fault Mode is selected with bits 0-3.
9 Register Reference RMC150 Address: %MDn.117, where n = 24 + the axis number System Tag: _Axis[n].SystemGain, where n is the axis number How to Find: Axes Parameters Pane, All tab: Simulate Data Type: Units: Range: Default Value: REAL (pu/s)/V >0 1 Description This parameter is used for the motion simulator in the RMC. It is used with both 1st order and 2nd order simulators. For details on using simulate mode, see the Simulate Mode topic.
RMC70/150 and RMCTools User Manual where A = area of the piston (in2) mass = the mass moved by the system (lb) volume = the volume of trapped oil in the cylinder (in3) Range The Natural Frequency must be less than or equal to the control loop time frequency divided by 4: Control Loop Max Natural Time Frequency 0.5 ms 500 Hz 1 ms 250 Hz 2 ms 125 Hz 4 ms 62.5 Hz Changing this Parameter For best results, always change this parameter only from Axis Tools.
9 Register Reference updated. At this point, the new simulator model will be calculated and the simulator model will be activated. When the simulator model is suspended, the Actual Position will not move. Certain simulator settings may result in an invalid model. If this occurs, change your settings. See the Simulating Motion topic for more details. 9.2.2.3.5. Positive Physical Limit (Simulator) Type: Axis Parameter Register RMC70 Address: %MDn.
RMC70/150 and RMCTools User Manual When the simulator is first enabled, the position is set to the average of the Positive and Negative Physical Limits. At the Positive Physical Limit and Negative Physical Limits, the simulator simulates a spring force that extends outside the limit by the distance specified by the Maximum Compression parameter. The Maximum Force specifies the max force at the max compression.
9 Register Reference Type: Axis Parameter Register RMC70 Address: %MDn.125, where n = 12 + the axis number RMC150 Address: %MDn.125, where n = 24 + the axis number System Tag: _Axis[n].SimWeight, where n is the axis number How to Find: Axes Parameters Pane, All tab: Simulate Data Type: Units: Range: Default Value: REAL lb >0 1000 Description The simulator weight parameter is the weight of the mass that the system is moving.
RMC70/150 and RMCTools User Manual If the Positive and Negative Physical Limits are both zero, the spring force is not simulated and this parameter is not used. Changing this Parameter For best results, always change this parameter only from Axis Tools. If the axis is in Simulate mode, and this parameter is changed, simulate model will be suspended until the last simulate mode parameter register (Max Compression [Fx:127]) has been updated.
9 Register Reference RMC150 Address: %MDn.116, where n = 24 + the axis number System Tag: _Axis[n].SimulationBits, where n is the axis number How to Find: Axes Parameters Pane, All tab: Simulate Data Type: DWORD - see below Description The Simulate Configuration register contains bit-addressable parameters for Simulate Mode. This topic lists the bit address for each parameter. Each parameter is accessible in RMCTools via the Axis Parameter Editor.
RMC70/150 and RMCTools User Manual 9.2.2.4.2. Position Error Tolerance Type: Axis Parameter Register RMC70 Address: %MDn.57, where n = 12 + the axis number RMC150 Address: %MDn.57, where n = 24 + the axis number System Tag: _Axis[n].PosErrorTolerance, where n is the axis number How to Find: Axes Parameters Pane, Setup tab: Primary Control Setup Data Type: Units: Range: Default Value: REAL pu ≥0 0.
9 Register Reference 9.2.2.4.4. Velocity Error Tolerance Type: Axis Parameter Register RMC70 Address: %MDn.59, where n = 12 + the axis number RMC150 Address: %MDn.59, where n = 24 + the axis number System Tag: _Axis[n].
RMC70/150 and RMCTools User Manual Format Details This section is primarily for addressing the Integrator Mode when communicating with the RMC from an external device. This information is not necessary when configuring the Integrator Mode in RMCTools. The Integrator Mode is selected with bits 0-3 in the register.
9 Register Reference The Differential Gain controls how much the PFID Output is adjusted based on the change in the Actual Position or Actual Velocity for position or velocity control, respectively. Position control is defined as when the Current Control Mode is Position I-PD. Velocity control is defined as when the Current Control Mode is Velocity I-PD. Mathematical Definition The Proportional Gain units are: percent of the maximum Control Output per control unit (cu = position-units or velocity-units).
RMC70/150 and RMCTools User Manual General This gain helps compensate for changing system dynamics, such as varying loads, and often aids the axis in rapidly reaching the Command Position or Command Velocity. A low gain slows the response of the axis to changes and may keep the axis from reaching the Command Position or Command Velocity. A gain that is too high may make the axis oscillate.
9 Register Reference with a deadband, this avoids ratcheting the axis back and forth around the deadband. See the Output Deadband topic for more details. • Within one-half count of Command Position When the axis is within one-half count of the Command Position, the Integral Gain is only allowed to decrease the Integral Output Term. This is similar to the deadband case.
RMC70/150 and RMCTools User Manual and help the axis track during acceleration and deceleration. On torque drives, the differential gain is essential for providing damping to the motor. The Differential Gain controls how much of the Control Output is added to the PFID Output due to the difference between the target and actual velocity or target and actual acceleration for position or velocity control, respectively. Position control is defined as when the Current Control Mode is Position PID.
9 Register Reference Gain Set #2: %MDn.132, where n = 24 + the axis number System Tag: Gain Set #1: _Axis[n].VelFFwd Gain Set #2: _Axis[n].VelFFwd_2 where n is the axis number How to Find: Data Type: Units: Range: Default Value: Axes Parameters Pane, Tune tab: Position/Velocity Gains REAL %/(pu/s) ≥0 0 Description The Velocity Feed Forward is one of the gains used in Position PID and Velocity PID control.
RMC70/150 and RMCTools User Manual Type: RMC70 Address: Axis Parameter Register Gain Set #1: %MDn.65, where n = 12 + the axis number Gain Set #2: %MDn.132, where n = 12 + the axis number RMC150 Address: Gain Set #1: %MDn.65, where n = 24 + the axis number Gain Set #2: %MDn.132, where n = 24 + the axis number System Tag: Gain Set #1: _Axis[n].VelFFwdP Gain Set #2: _Axis[n].
9 Register Reference If either Feed Forward is set to zero, or they are identical, the gain ratio will be one. Otherwise, for the direction of the largest Feed Forward, the gains will be applied as they. In the direction of the smallest Feed Forward, the gains will be multiplied by the ratio of the smallest Feed Forward divided by the largest feed forward. Definition The Velocity Feed Forward units are: percent of the maximum Control Output per position-units per second (pu/sec).
RMC70/150 and RMCTools User Manual All the gains of the axis are ratioed by the Positive Negative Velocity Feed Forwards. Once the Positive and Negative Velocity Feed Forwards have been tuned, the gains in the direction of the highest Velocity Feed Forward will be applied as they are. The gains in the direction of the lowest Velocity Feed Forward will be decreased by the ratio of the Velocity Feed Forwards. This results in very good control of the cylinder in both directions.
9 Register Reference RMC70 Address: Gain Set #1: %MDn.66 Gain Set #2: %MDn.133 where n = 12 + the axis number RMC150 Address: Gain Set #1: %MDn.66 Gain Set #2: %MDn.133 where n = 24 + the axis number System Tag: Gain Set #1:_Axis[n].AccFFwd Gain Set #2:_Axis[n].
RMC70/150 and RMCTools User Manual Address: System Tag: _Axis[n].JerkFFwd, where n is the axis number How to Find: Axes Parameters Pane, Tune tab: Position/Velocity Gains → Gain Set# Data Type: Units: Range: Default Value: REAL %/(pu/s3) ≥0 0 Note: In early versions of RMC70 firmware, this register was called Integrator Limit and had a different function. If your controller has an Integrator Limit, please update the firmware.
9 Register Reference Velocity control: %/(pu/sec3) % = percent of maximum Control Output (default is 10V) Range: Default Value: ≥0 0 Description The Double Differential Gain is available only on position and velocity axes with the HighOrder Control parameter set to Accel Control.
RMC70/150 and RMCTools User Manual RMC70 Address: Gain Set #1: %MDn.69 Gain Set #2: %MDn.136 where n = 12 + the axis number RMC150 Address: Gain Set #1: %MDn.69 Gain Set #2: %MDn.136 where n = 24 + the axis number System Tag: Gain Set #1: _Axis[n].ADPropGain Gain Set #2: _Axis[n].
9 Register Reference Dn = Active Damping Proportional Term at sample n [% of maximum Control Output] F = Force [Fr] A = Acceleration [pu/sec2] KADP = Active Damping Proportional Gain [%/(Fr])] or [%/(pu/sec2])] 9.2.2.4.16. Triple Differential Gain Type: Axis Parameter Register RMC70 Address: Gain Set #1: %MDn.70 Gain Set #2: %MDn.137 where n = 12 + the axis number RMC150 Address: Gain Set #1: %MDn.70 Gain Set #2: %MDn.137 where n = 24 + the axis number System Tag: Gain Set #1: _Axis[n].
RMC70/150 and RMCTools User Manual The Triple Differential Gain units are: Percent of the maximum Control Output per position units per second cubed (pu/sec3). The default value of the maximum Control Output is 10V, but can be changed using the Output Scale parameter. 9.2.2.4.17. Active Damping Differential Gain Type: Axis Parameter Register RMC70 Address: Gain Set #1: %MDn.70 Gain Set #2: %MDn.137 where n = 12 + the axis number RMC150 Address: Gain Set #1: %MDn.70 Gain Set #2: %MDn.
9 Register Reference Using Acceleration Input, Filter, or Model Dn = - (JActualn - JActualn-1) x KADD Using Force Input Dn = - (ΔFActualn - ΔFActualn-1) x KADD where Dn = Active Damping Differential Term at sample n [% of maximum Control Output] ΔF = Force Rate [Fr/sec] J = Jerk [pu/sec3] KADP = Active Damping Differential Gain [%/(Fr/sec])] or [%/(pu/sec3])] 9.2.2.4.18. Gain Sets Type: Axis Parameter Register RMC70 Address: %MDn.60/7-11, where n = 12 + the axis number RMC150 Address: %MDn.
RMC70/150 and RMCTools User Manual 9.2.2.4.19. Symmetrical/Ratioed Type: Axis Parameter Register RMC70 Address: %MDn.60/4, where n = 12 + the axis number RMC150 Address: %MDn.60/4, where n = 24 + the axis number System Tag: _Axis[n].PriControlBits.
9 Register Reference Bit 4 Control Mode 0 Ratioed 1 Symmetrical See the Primary Control Register topic for details about the register containing these bits. 9.2.2.4.20. High-Order Control Type: RMC70 Address: Axis Parameter Register Gain Set #1: %MDn.71, where n = 12 + the axis number Gain Set #2: %MDn.138, where n = 12 + the axis number RMC150 Address: System Tag: Gain Set #1: %MDn.71, where n = 24 + the axis number Gain Set #2: %MDn.138, where n = 24 + the axis number Gain Set #1: _Axis[n].
RMC70/150 and RMCTools User Manual 9.2.2.4.21. Default Pos/Vel Control Mode Type: Axis Parameter Register RMC70 Address: %MDn.43, where n = 12 + the axis number RMC150 Address: %MDn.43, where n = 24 + the axis number System Tag: _Axis[n].
9 Register Reference Parameter Tag Name Bit Number(s) Integrator Mode IntMode 0-3 Symmetrical/Ratioed Symm 4 Pressure/Force Orientation PFOrientation 5-6 Gain Sets GainSets 7-11 Unidirectional Mode UniMode 12-14 For details on the values that each bit represents, see the respective parameter topic. 9.2.2.5. Pressure/Force Control 9.2.2.5.1. At Pressure/Force Tolerance Type: RMC70 Address: Axis Parameter Register Primary Control Axis: %MDn.
RMC70/150 and RMCTools User Manual System Tag: Pressure Axis: _Axis[n].PrsErrorTolerance, where n is the axis number Force Axis: _Axis[n].FrcErrorTolerance, where n is the axis number How to Find: Axes Parameters Pane, Setup tab: Primary Control Setup Axes Parameters Pane, Setup tab: Secondary Control Setup Data Type: Units: Range: Default Value: REAL Pr or Fr ≥0 100.
9 Register Reference Mathematical Definition Pressure/Force PID Dn = (PTargetn - PActualn) x KP Pressure/Force I-PD Dn = (PActualn - PActualn-1) x KP where Dn = Proportional Term at sample n [% of maximum Control Output] P = Pressure or Force [Pr or Fr] KP = Pressure/Force Proportional Gain [%/(Pr) or %/(Fr)] The Pressure/Force Proportional Gain units are: percent of the maximum Control Output per pressure or force unit.
RMC70/150 and RMCTools User Manual In pressure/force I-PD, this gain is the most important gain for pressure/force I-PD control. This gain must be non-zero in I-PD mode. If it is zero, it will cause a run-time error. A higher value will increase the response. A value that is too high will cause oscillation and instability. The Pressure/Force I-PD is used in pressure/force limit on dualloop axes with I-PD position control or I-PD velocity control.
9 Register Reference In Pressure/Force I-PD, the Pressure/Force Differential Gain adjusts the Control Output based on the change in the Actual Pressure/Force Rate. The Pressure/Force I-PD is used in pressure/force limit on dual-loop axes with I-PD Position or Velocity Control.
RMC70/150 and RMCTools User Manual 9.2.2.5.7. Pressure/Force Rate Feed Forward Type: RMC70 Address: Axis Parameter Register Primary Control Axis: %MDn.65, where n = 12 + the axis number Secondary Control Axis: %MDn.85, where n = 12 + the axis number RMC150 Address: System Tag: Primary Control Axis: %MDn.65, where n = 24 + the axis number Secondary Control Axis: %MDn.85, where n = 24 + the axis number Pressure Axis: _Axis[n].PrsRateFFwd, where n is the axis number Force Axis: _Axis[n].
9 Register Reference Range: Same (0), Opposite (1), Bidirectional (2) Default Value: Same (0) Description This register defines the orientation of the pressure/force relative to the orientation of the position or velocity when in closed-loop control, or of the Control Output when in openloop control. It is important that this parameter is set correctly so that the Control Output will be the correct polarity.
RMC70/150 and RMCTools User Manual Bits This register contains the following parameters. The bits for each are given in the righthand column. Parameter Tag Name Bit Number(s) Pressure/Force Orientation PFOrientation 5-6 For details on the values that each bit represents, see the respective parameter topic. 9.2.2.6. Output 9.2.2.6.1. Deadband Tolerance Type: Axis Parameter Register RMC70 Address: %MDn.41, where n = 12 + the axis number RMC150 Address: %MDn.
9 Register Reference Figure 1: Deadband Tolerance Control Modes The Deadband compensation applies to all the closed-loop control modes: Position PID, Position I-PD, Velocity PID, Velocity I-PD. Pressure/Force Limit on Position-Pressure or Position-Force Axes The Output Deadband is applied as normal, based on position. The Deadband Tolerance controls the integrator for the position component.
RMC70/150 and RMCTools User Manual Description Note: The Directional Gain Ratio has been removed in RMC70 firmware versions 1.50 and greater because it proved to be confusing. It has been replaced by the Symmetrical/Ratioed parameter and the Velocity Feed Forward (Positive) and Velocity Feed Forward (Negative). The Directional Gain Ratio is not used in any versions of the RMC150. The Directional Gain Ratio is used in closed-loop control to ratio the Control Output depending on the direction of travel.
9 Register Reference System Tag: _Axis[n].OutputBits.InvertOutPol , where n is the axis number How to Find: Axes Parameters Pane, Setup tab: Primary Control Setup Data Type: Range: Default Value: bit Not Inverted (0), Inverted (1) Not Inverted (0) Description The Invert Output Polarity parameter bit specifies the polarity of the Control Output. For closed-loop motion control, it is imperative that the output polarity is correct.
RMC70/150 and RMCTools User Manual The Output Bias voltage is always added to the Control Output. Use the Output Bias to compensate for hydraulic valves or other systems that have an offset. To set the Output Bias, use the Open Loop Rate (10) command to find out how much Control Output is required to keep the axis from moving. This is called the null drive. Set the Output Bias parameter to that value.
9 Register Reference • If the Control Output is positive, the Output Deadband (v) is added to the Control Output. • If the Control Output is negative, the Output Deadband (v) is subtracted from the Control Output. The Output Deadband also works together with the following parameters: • Deadband Tolerance parameter If the Position Error is less than the Deadband Tolerance, then only a fraction of the Control Output, proportional to the Position Error, is applied.
RMC70/150 and RMCTools User Manual The Output Deadband applies to pressure/force control. If the Deadband Tolerance value is non-zero, then the Output Deadband will not apply if the Target Pressure or Target Force is zero. Otherwise, the value of the Deadband Tolerance has no meaning. Pressure/Force Limit on Position-Pressure or Position-Force Axes The Output Deadband is applied as normal, based on position. The Deadband Tolerance is applied based on the position as normal.
9 Register Reference Note: For firmware versions prior to 3.36.0, only one Output Filter existed, which applied to both the primary and secondary control. Use for Difficult Systems The Output Filter can significantly improve control of difficult systems. Without the Output Filter, the Differential Gain can cause the Control Output to oscillate, causing oscillation of the axis.
RMC70/150 and RMCTools User Manual Type: Axis Parameter Register RMC70 Address: %MDn.38, where n = 12 + the axis number RMC150 Address: %MDn.38, where n = 24 + the axis number System Tag: _Axis[n].OutputScale, where n is the axis number How to Find: Axes Parameters Pane, All tab: Output Data Type: Units: Range: Default Value: REAL V/100% non-zero 10 Description The Output Scale scales the Control Output to the actual Control Output voltage.
9 Register Reference Type: Axis Parameter Register RMC70 Address: %MDn.34/3, where n = 12 + the axis number RMC150 Address: %MDn.34/3, where n = 24 + the axis number System Tag: _Axis[n].OutputBits.FaultInPol , where n is the axis number How to Find: Axes Parameters Pane, All tab: Output Data Type: Range: Default Value: bit Active High (0), Active Low (1) Active High (0) Description This parameter specifies the polarity of the Fault Input on modules with a Fault Input.
RMC70/150 and RMCTools User Manual 9.2.2.6.11. Unidirectional Mode Type: Axis Parameter Register RMC70 Address: %MDn.60/12-14, where n = 12+ the axis number RMC150 Address: %MDn.60/12-14, where n = 24+ the axis number System Tag: _Axis[n].PriControlBits.
9 Register Reference direction is set to match the direction of the current Target Velocity. When the axis is stopped or in the open loop control, the control direction holds its last value, but may be overridden using the Set Control Direction (96) command.
RMC70/150 and RMCTools User Manual This section is primarily for addressing the Unidirectional Mode parameter when communicating with the RMC from an external device. This information is not necessary when configuring the Unidirectional Mode in RMCTools. The Unidirectional Mode is selected with bits 12-14 in the Primary Control Register.
9 Register Reference System Tag: _Axis[n].OutputBits.ValveLin , where n is the axis number How to Find: Axes Parameters Pane, All tab: Output Data Type: Default Value: bits None (0) Description This parameter specifies the type of Valve Linearization for the axis. It can be set to the following: • None (0) No valve linearization is applied to the axis. • Single-Point (1) Single-point valve linearization is applied to the axis.
RMC70/150 and RMCTools User Manual RMC70 Address: %MDn.45, where n = 12+ the axis number RMC150 Address: %MDn.45, where n = 24+ the axis number System Tag: _Axis[n].KneeFlow, where n is the axis number How to Find: Axes Parameters Pane, All tab: Output Data Type: Units: Range: Default Value: REAL % 0< % < 100 10 Description The Knee Flow Percentage, together with the Knee Command Voltage, define the SinglePoint Valve Linearization.
9 Register Reference Note: If the Direct Output Status bit is on, the Overtravel bits will not be set. Moving Toward the Valid Travel Range While the axis is outside the valid travel range, as defined by the Travel Limits, any motion commands the move the axis toward the valid travel range will be accepted, even if they don't move the axis entirely into the valid range.
RMC70/150 and RMCTools User Manual The error bits will cause a Halt to occur if the Auto Stops are configured to do so and the Direct Output Status bit is off. Note: If the Direct Output Status bit is on, the Overtravel bits will not be set. Any motion command issued with a Requested Position that is outside of the travel limits will be set to the closest travel limit, and the Command Modified error bit will be set.
9 Register Reference How to Find: Axes Parameters Pane, Setup tab: Primary Control Setup Axes Parameters Pane, Setup tab: Secondary Control Setup Data Type: Units: Range: Default Value: REAL Pr or Fr any 0 Description The Negative Pressure/Force Limit and the Positive Pressure/Force Limit specify the pressure or force boundaries in which the axis is allowed operate. The Negative Pressure/Force Limit must be less than or equal to the Positive Pressure/Force Limit.
RMC70/150 and RMCTools User Manual 9.2.2.8. Halts 9.2.2.8.1. Auto Stop Configuration Type: Axis Parameter Register RMC70 Address: %MDn.106 to %MDn.108, where n = 12 + the axis number RMC150 Address: %MDn.106 to %MDn.108, where n = 24 + the axis number System Tag: _Axis[n].AutoStopCfg1, _Axis[n].AutoStopCfg2, and _Axis[n].
9 Register Reference Direct Output Halt A Direct Output Halt is initiated. See the Halts topic for details on the steps taken by the RMC when a Halt occurs. Configuring the Auto Stops To configure the Auto Stops: • Click the Axis Tools button • In the Axis Parameters pane, on the Setup tab, expand the Halts section and expand the Auto Stop Configuration section. • Choose a halt type for each error bit. • Click the download button on the RMCTools toolbar. in the Axis Tools toolbar.
RMC70/150 and RMCTools User Manual %MD12.107 %MD12.108 DWORD DWORD AutoStopCfg1.OutSat bits 6-8 Output Saturated AutoStopCfg1.FaultIn bits 9-11 Fault Input AutoStopCfg1.PosLimitIn bits 12-14 Positive Limit Input AutoStopCfg1.NegLimitIn bits 15-17 Negative Limit Input AutoStopCfg1.NoTrans bits 18-20 No Transducer AutoStopCfg1.TransOverflow bits 21-23 Transducer Overflow AutoStopCfg2.NoiseErr bits 0-2 Noise Error AutoStopCfg2.PosOvertravel bits 3-5 Positive Overtravel AutoStopCfg2.
9 Register Reference Description This parameter defines which halt group the axis is in. If any member of a halt group halts, all axes in that group will halt with the same halt type. Zero indicates that the axis is not a member of a halt group. Sync Groups for synchronized axes have similar grouped halt functionality. Halts in any group will propagate recursively to other groups.
RMC70/150 and RMCTools User Manual Description This register specifies the rate at which the output is ramped to zero volts due to an Open Loop Halt or Direct Output Halt. An Open Loop Halt can be initiated by the Open Loop Halt (2) command or an Auto Stop. A Direct Output Halt can be initiated by the Direct Output Halt (3) command or an Auto Stop. 9.2.3. Communication Registers 9.2.3.1. Ethernet Status Type: Communications Register RMC70 Address: %MD21.10.
9 Register Reference Type: Communications Register RMC70 Address: %MD21.11. See Register Map topic for other address formats. RMC150 Address: %MD45.11. See Register Map topic for other address formats. System Tag: _Enet.Config How to Find: Address Selection Tool → Controller → Communication Settings → Ethernet Data Type: Accessibility: DWORD Read/Write This register indicates the state of various Ethernet communication items. Bit Tag Name Description 0 _Enet.Config.
RMC70/150 and RMCTools User Manual How to Find: Data Type: Accessibility: Address Selection Tool → Controller → Communication Settings → Ethernet DWORD Read Only This register indicates the state of the Controlling Connection for EtherNet/IP I/O and PROFINET communications. For more details, see Handling Broken EtherNet/IP I/O Connections and Handling Broken PROFINET Connections. Bit Tag Name Description 0 _Enet.CCStatus.
9 Register Reference 2: Program 9.2.3.5. PROFIBUS Connection Status Type: Communications Register RMC70 Address: %MD21.6. See Register Map topic for other address formats. RMC150 Address: %MD45.6. See Register Map topic for other address formats. System Tag: _PROFI.Status How to Find: Address Selection Tool → Controller → Communication Settings → PROFIBUS Data Type: Accessibility: DWORD Read Only This register indicates the state of the PROFIBUS connection.
RMC70/150 and RMCTools User Manual The Current Axis Definitions and the Requested Axis Definitions will generally be the same except in two cases: (1) The user has written to the requested block and intends to do a warm restart or burn to flash and do a cold restart, or (2) The requested axis definitions found on startup are invalid for the current hardware configuration; in this case the Current Axis Definitions will be the default for the current hardware configuration.
9 Register Reference Register Bits Description Values Register (n x 4)+0: Axis and Input Types (n x 4)+0 0-7 Axis Type 0 - None 1 - Servo Position Control 3 - Servo Velocity Control 5 - Pressure Control 6 - Force (single-input) Control 7 - Force (dual-input, diff.) Control 8 - Position-Pressure Control 9 - Position-Force (single-input) Control 10 - Position-Force (dual-input, diff.
RMC70/150 and RMCTools User Manual 2 - Quadrature 6 - Analog 7 - MDT (RMC150 only) 8 - SSI (RMC150 only) 9 - Resolver (RMC150 only) 4-7 Feedback 0.0 Module RMC70 Module IDs: 0 - Axis Module - Axis 0 Connector 1 - Axis Module - Axis 1 Connector 2 - Expansion Slot #1 3 - Expansion Slot #2 4 - Expansion Slot #3 5 - Expansion Slot #4 RMC150 Module IDs: 0 - Comm Slot (not used... yet) 1 - CPU Slot (not used) 2 - Sensor Slot #1 3 - Sensor Slot #2 4 - Sensor Slot #3 5 - Sensor Slot #4 8-11 Feedback 0.
9 Register Reference 5 - Sensor Slot #4 12-15 Output Channel RMC70 Output Channels: 0 - Control Output RMC150 Output Channels: 0 - Drive 0 1 - Drive 1 16-31 Reserved 9.2.5. Task Registers 9.2.5.1. Task Status Type: Task Register RMC70 Address: %MD24.16*n, n = task number. See Register Map topic for other address formats. RMC150 Address: %MD48.16*n, n = task number. See Register Map topic for other address formats. System Tag: _Task[n].
RMC70/150 and RMCTools User Manual Address: address formats. System Tag: _Task[n].CurProg, where n is the Task number How to Find: Address Selection Tool → Tasks → Task # Data Type: Accessibility: DINT Read Only This register indicates the current program that is running on Task n. The Current Step register indicates the current step.
9 Register Reference RMC150 Address: System Tag: %MD48.2+16*n, n = task number. See Register Map topic for other address formats. _Task[n].CurAxis, where n is the Task number _CurAxis (indicates the current axis of the current Task) How to Find: Data Type: Accessibility: Address Selection Tool → Tasks → Task # DINT Read/Write This register indicates the current axis (Default Axis) of Task n. Each task has a Default Axis associated with it.
RMC70/150 and RMCTools User Manual 9.2.6. Controller Registers 9.2.6.1. Controller Tags In addition to the controller registers (file F7) listed in the RMC150 register map and RMC70 register map, the RMC includes the following system tags. These are not directly accessible from outside the RMC. From within the RMC, they can be accessed using the tag names.
9 Register Reference RUN Mode (98) command is issued. It will also be set immediately if the controller is set up to start in RUN mode. 2 _Controller.Status.FirstScan First Scan Goes high (1) on first scan after entering RUN mode, otherwise it is low (0). See the Program Triggers topic for usage details. The system tag _FirstScan is identical to using _Controller.FirstScan. 3 _Controller.Status.
RMC70/150 and RMCTools User Manual Address: Data Type: %MD7.28 Internal: DINT External: REAL Description The Loader Command register is for sending certain commands to the loader. Currently, it supports commands for restarting the RMC. Restarting the RMC The RMC can be restarted by writing certain values to the Loader Command register. Restarting the RMC in this manner is only done in advanced applications, such as programmatically changing the axis definitions during machine operation.
9 Register Reference Devices DF1 F56:0 Multi-level Modbus 28673 Flat FINS D28672 Flat IEC %MD56.0 Multi-level Viewing Addresses in RMCTools RMCTools displays the addresses of many registers, such as in the Axis Tools. To change the address format, right-click any register address cell, choose Address Formats, and choose the desired format. Using Addresses in Expressions The Expressions in RMCTools typically use tag names for the RMC registers, although the IEC address format can also be used.
RMC70/150 and RMCTools User Manual Every register in the RMC can be addressed as either an L or F file register. Typically, it only makes sense to address REAL registers in the RMC as F file registers, and address DINT or DWORD registers as L file registers. Since the only AB PLC at the time of this writing to support L files is the MicroLogix, you may have to set up the DF1 communications on your host system as if the RMC were a MicroLogix if you wish to use L file addressing.
9 Register Reference 9.3.3. IEC-61131 Addressing This topic describes the IEC addressing format as used in the RMC. For other addressing formats, see the Register Map Overview topic. The RMC uses the IEC-61131 standard for its register addresses. This format can be used in User Programs and Expressions, although Delta recommends using tag names where possible. Address Format The IEC address format for the registers in the RMC is: %MDfile.
RMC70/150 and RMCTools User Manual starting with slot 0 to the left. number = the input or output number. Discrete I/O are also mapped to the Discrete I/O registers and can be addressed by addressing the bit in the register. See the RMC150 DI/O and RMC70 DI/O register map topics for the addresses of the I/O. Register Addresses in Integer Format Occasionally, an addresses may need to be represented in integer format.
9 Register Reference Examples: %MD12:3 = 2 x [(256 x 12) + 3] = 6150. Therefore, the address is D06151. %MD9:56 = 2 x [(256 x 9) + 56] = 4720. Therefore, the address is D04721. %MD64:5 = 2 x [(256 x 64) + 5] = 32778. 32778-32768 = 10. Therefore, the address is E00010. Low Address Range In addition to the standard FINS register map, which is calculated from the IEC register map as described above, the RMC70 and RMC150 duplicate some FINS registers to lower address ranges.
RMC70/150 and RMCTools User Manual Command Area (RMC70) 25 D12800 - - Variables - Current Values (RMC150) - - 56-59 D28672 Variables - Initial Values (RMC150) - - 72-75 E0_04096 Plot Layout 31 D15872 95 E0_15872 Plot Configuration 32-39 D16384 96-103 E0_16384 Dynamic Plot Upload Area 40-47 D20480 104-111 E0_20480 Static Plot Upload Area 48-55 D24576 112-143 E0_24576 Variables - Current Values (RMC70) 56-59 D28672 - - Variables - Initial Values (RMC70) 64-67 E0_0000
9 Register Reference The Modbus address is calculated according to the following equation: Modbus RTU Address = 2 x [(256 x file) + element] + 1 where the RMC IEC addressing format is %MDfile.element Examples: %MD12:3 = 2 x [(256 x 12) + 3] + 1 = 6151 %MD9:56 = 2 x [(256 x 9) + 56] + 1 = 4721 Low Address Range In addition to the standard Modbus register map, which is calculated from the IEC register map as described above, the RMC70 and RMC150 duplicate some Modbus registers to lower address ranges.
RMC70/150 and RMCTools User Manual Command Area 25 12801 - - Variables - Current Values (RMC150) - - 56-59 28673 Variables - Initial Values (RMC150) - - 72-75 36865 Plot Layout 31 15873 95 48641 Plot Configuration 32-39 16385 96-103 49153 Dynamic Plot Upload Area 40-47 20481 104-111 53249 Static Plot Upload Area 48-55 24577 112-143 57345 Variables - Current Values (RMC70) 56-59 28673 - - Variables - Initial Values (RMC70) 64-67 32769 - - 9.4. RMC70 Register Map 9.
9 Register Reference 30 Image Area 31 Plot Layout 32-39 Plots 0-7 Status/Configuration 40-47 Dynamic Plot Upload Area 48-55 Static Plot Upload Area 56-59 Variables - Current Values 64-67 Variables - Initial Values RMC70 Registers, File 7: Controller Info All Controller Information registers are Read Only. Tip: For the DF1/CSP addressing format, all 'F' type registers (32-bit floating point) can also be read as 'L' type (32-bit word) registers.
RMC70/150 and RMCTools User Manual 64: AP2 65: A2 66: D8 68: Q1 F7:7 3599 D03598 REAL %MD7.7 DINT Expansion 1 Module Rev Major * 256 + Minor F7:8 3601 D03600 REAL %MD7.8 DINT Expansion 2 Module ID F7:9 3603 D03602 REAL %MD7.9 DINT Expansion 2 Module Rev F7:10 3605 D03604 REAL %MD7.10 DINT Expansion 3 Module ID F7:11 3607 D03606 REAL %MD7.11 DINT Expansion 3 Module Rev F7:12 3609 D03608 REAL %MD7.12 DINT Expansion 4 Module ID F7:13 3611 D03610 REAL %MD7.
9 Register Reference 0.1-1.x) 2: B (RMC75S and RMC75P 2.x) F7:22 3629 D03628 REAL %MD7.22 DINT F7:23 3631 D03630 REAL %MD7.23 DINT Flash Rev Major * 256 + Minor Required RMCTools Ver Major * 256 + Minor (patch ignored) F7:24 3633 D03632 REAL %MD7.24 DINT Suggested RMCTools Ver Major * 256 + Minor (patch ignored) F7:25 3635 D03634 REAL %MD7.25 DINT Loader Rev Major * 256 + Minor F7:26 3637 D03636 REAL %MD7.
RMC70/150 and RMCTools User Manual 1=B, etc.) Bits 8-15: Minor Revision Bits 16-23: Major Revision Bits 24-31: Reserved For example, 2.1E will be 0x00020104. F7:32 3649 D03648 REAL %MD7.32 DINT Firmware Patch Number Holds the patch level of the firmware version. For example, for 3.30.0, this value will be 0, and for 3.30.1, it will be 1. RMC70 Registers, Files 8-11: Axis Status Registers All Axis Status Registers are Read Only.
9 Register Reference D04114 REAL %MD8.9 REAL Actual Differential Force Rate, Actual Jerk D04116 REAL %MD8.10 REAL Actual Force A, Channel A Acceleration 4119 D04118 REAL %MD8.11 REAL Voltage A/Current A F8:12 4121 D04120 DINT %MD8.12 DINT Raw Counts A F8:13 4123 D04122 REAL %MD8.13 REAL Actual Force B, Channel B Acceleration F8:14 4125 D04124 REAL %MD8.14 REAL Voltage B/Current B F8:15 4127 D04126 DINT %MD8.
RMC70/150 and RMCTools User Manual F8:42 4181 D04180 REAL %MD8.42 REAL Acceleration Feed Forward Term F8:43 4183 D04182 REAL %MD8.43 REAL Jerk Feed Forward Term F8:44 4185 D04184 REAL %MD8.44 REAL Triple Differential Output Term F8:45 4187 D04186 REAL %MD8.45 REAL PFID Output Primary Control: Pressure or Force Axes F8:35 4167 F8:37 4171 F8:38 4173 F8:39 4175 F8:40 4177 F8:41 4179 F8:45 4187 D04166 REAL %MD8.35 REAL Pressure/Force Error D04170 REAL %MD8.
9 Register Reference Axis 1 AB Modbus DF1,CSP TCP,RTU FINS Address Address Address External Internal Data Type IEC Address Internal Data Type Register Name Common Registers: All Axes F9:0 4609 D04608 DWORD %MD9.0 DWORD Status Bits F9:1 4611 D04610 DWORD %MD9.1 DWORD Error Bits F9:2 4613 D04612 REAL %MD9.2 DINT Last Error Number F9:4 4617 D04616 REAL %MD9:4 REAL Read Response Position/Velocity Control F9:6 4621 D04620 REAL %MD9.
RMC70/150 and RMCTools User Manual F9:23 4655 D04654 REAL %MD9.23 REAL Actual Pressure/Force, Actual Acceleration F9:24 4657 D04656 REAL %MD9.24 REAL Actual Pressure/Force Rate, Actual Jerk F9:26 4661 D04660 REAL %MD9.26 REAL Current/Voltage F9:28 4663 D04662 DINT %MD9.27 DINT Raw Counts Secondary Input: Dual-Input Force or Acceleration Axes F9:23 4655 D04654 REAL %MD9.23 REAL Actual Differential Force, Actual Acceleration F9:24 4657 D04656 REAL %MD9.
9 Register Reference F9:45 4699 D04698 REAL %MD9.45 REAL PFID Output Secondary Control: Pressure or Force Axes F9:44 4697 D04696 REAL %MD9.44 REAL Pressure/Force Error F9:46 4701 D04700 REAL %MD9.46 REAL Pressure/Force Proportional Term F9:47 4703 D04702 REAL %MD9.47 REAL Pressure/Force Integral Term F9:48 4705 D04704 REAL %MD9.48 REAL Pressure/Force Differential Term F9:49 4707 D04706 REAL %MD9.
RMC70/150 and RMCTools User Manual F10:8 5137 D05136 REAL %MD10.8 REAL Actual Position F10:9 5139 D05138 REAL %MD10.9 REAL Actual Velocity F10:10 5141 D05140 REAL %MD10.10 REAL Actual Acceleration F10:11 5143 D05142 REAL %MD10.11 REAL Counts/Current/Voltage F10:12 5145 D05144 DINT %MD10.12 DINT Raw Counts Primary Input: Single-Input Pressure, Force, or Acceleration Axes F10:8 5137 D05136 REAL %MD10.
9 Register Reference D05176 REAL %MD10.28 REAL Actual Force B, Channel B Acceleration 5179 D05178 REAL %MD10.29 REAL Voltage B/Current B 5181 D05180 DINT %MD10.30 DINT Raw Counts B %MD10.33 REAL Control Output F10:28 5177 F10:29 F10:30 Output: Analog Control Output Axes F10:33 5187 D05186 REAL Primary Control: Position/Velocity Axes F10:35 5191 D05190 REAL %MD10.35 REAL Position Error F10:36 5193 D05192 REAL %MD10.36 REAL Velocity Error F10:37 5195 D05194 REAL %MD10.
RMC70/150 and RMCTools User Manual F10:54 5229 D05228 REAL %MD10.54 REAL Target Velocity F10:55 5231 D05230 REAL %MD10.55 REAL Target Acceleration F10:56 5233 D05232 REAL %MD10.56 REAL Command Position F10:57 5235 D05234 REAL %MD10.57 REAL Command Velocity F10:58 5237 D05236 REAL %MD10.58 REAL Target Jerk F10:59 5239 D05238 REAL %MD10.59 DINT Cycles F10:60 5241 D05240 REAL %MD10.60 REAL Target Pressure/Force F10:61 5243 D05242 REAL %MD10.
9 Register Reference F11:8 5649 D05648 REAL %MD11.8 REAL Actual Differential Force, Actual Acceleration F11:9 5651 D05650 REAL %MD11.9 REAL Actual Differential Force Rate, Actual Jerk F11:10 5653 D05652 REAL %MD11.10 REAL Actual Force A, Channel A Acceleration F11:11 5655 D05654 REAL %MD11.11 REAL Voltage A/Current A F11:12 5657 D05656 DINT %MD11.12 DINT Raw Counts A F11:13 5659 D05658 REAL %MD11.
RMC70/150 and RMCTools User Manual F11:40 5713 D05712 REAL %MD11.40 REAL Double Differential Output Term F11:41 5715 D05714 REAL %MD11.41 REAL Velocity Feed Forward Term F11:42 5717 D05716 REAL %MD11.42 REAL Acceleration Feed Forward Term F11:43 5719 D05718 REAL %MD11.43 REAL Jerk Feed Forward Term F11:44 5721 D05720 REAL %MD11.44 REAL Triple Differential Output Term F11:45 5723 D05722 REAL %MD11.
9 Register Reference F11:65 5763 + b D05762 + REAL b %MD11.65 REAL Primary Custom Counts F11:66 5765 + b D05764 + REAL b %MD11.66 REAL Secondary Custom Counts RMC70 Registers, Files 12-15: Axis Parameter Registers All Axis Parameter registers are Read/Write. Axis 0 AB Modbus DF1,CSP TCP,RTU FINS Address Address Address External Internal Data Type IEC Address Internal Data Type Register Name Primary Feedback: Position Axes F12:0 6145 D06144 REAL %MD12.
RMC70/150 and RMCTools User Manual Primary Feedback: Dual-Input Force or Acceleration F12:0 6145 D06144 REAL %MD12.0 REAL Force A Scale, Channel A Acceleration Scale F12:1 6147 D06146 REAL %MD12.1 REAL Force A Offset, Channel A Acceleration Offset F12:2 6149 D06148 REAL %MD12.2 REAL Force B Scale, Channel B Acceleration Scale F12:3 6151 D06150 REAL %MD12.3 REAL Force B Offset, Channel B Acceleration Offset F12:4 6153 D06152 REAL %MD12.
9 Register Reference F12:22 6189 D06188 REAL %MD12.22 REAL Actual Pressure/Force Filter, Actual Acceleration Filter F12:23 6191 D06190 REAL %MD12.23 REAL Actual Pressure/Force Rate Filter, Actual Jerk Filter F12:24 6193 D06192 REAL %MD12.24 REAL Noise Error Rate Secondary Feedback: Analog Transducer F12:28 6201 D06200 REAL %MD12.28 DWORD Analog Config Register Analog Control Output F12:32 6209 D06208 REAL %MD12.32 REAL Output Limit F12:33 6211 D06210 REAL %MD12.
RMC70/150 and RMCTools User Manual F12:71 6287 D06286 REAL %MD12.71 DINT High-Order Control Position/Velocity Gain Set #2 F12:128 6401 D06400 REAL %MD12.128 REAL Proportional Gain F12:129 6403 D06402 REAL %MD12.129 REAL Integral Gain F12:130 6405 D06404 REAL %MD12.130 REAL Differential Gain F12:132 6409 D06408 REAL %MD12.132 REAL Velocity Feed Forward, Velocity Feed Forward (Positive) F12:133 6411 D06410 REAL %MD12.
9 Register Reference Position Target F12:92 6329 D06328 REAL %MD12.92 REAL Positive Travel Limit F12:93 6331 D06330 REAL %MD12.93 REAL Negative Travel Limit F12:94 6333 D06332 REAL %MD12.94 REAL Requested Jerk Pressure/Force Target F12:100 6345 D06344 REAL %MD12.100 REAL Positive Pressure/Force Limit F12:101 6347 D06346 REAL %MD12.101 REAL Negative Pressure/Force Limit F12:106 6357 D06356 REAL %MD12.106 DWORD Auto Stops F12:107 6359 D06358 REAL %MD12.
RMC70/150 and RMCTools User Manual F12:166 6477 D06476 REAL %MD12.166 DINT F12:167 6479 D06478 DWORD %MD12.167 DWORD Primary Custom Units F12:168 6481 D06480 REAL F12:169 6483 D06482 DWORD %MD12.169 DWORD Secondary Custom Units %MD12.168 DINT Primary Display Units Secondary Display Units Axis 1 AB Modbus DF1,CSP TCP,RTU FINS Address Address Address External Internal Data Type IEC Address Internal Data Type Register Name Primary Feedback: Position Axes F13:0 6657 D06656 REAL %MD13.
9 Register Reference Acceleration Scale F13:1 6659 D06658 REAL %MD13.1 REAL Force A Offset, Channel A Acceleration Offset F13:2 6661 D06660 REAL %MD13.2 REAL Force B Scale, Channel B Acceleration Scale F13:3 6663 D06662 REAL %MD13.3 REAL Force B Offset, Channel B Acceleration Offset F13:4 6665 D06664 REAL %MD13.4 REAL Actual Pressure/Force Filter, Actual Acceleration Filter F13:5 6667 D06666 REAL %MD13.
RMC70/150 and RMCTools User Manual F13:23 6703 D06702 REAL %MD13.23 REAL Actual Pressure/Force Rate Filter, Actual Jerk Filter F13:24 6705 D06704 REAL %MD13.24 REAL Noise Error Rate Secondary Feedback: Analog Transducer F13:28 6713 D06712 DWORD %MD13.28 DWORD Analog Config Register Analog Control Output F13:32 6721 D06720 REAL %MD13.32 REAL Output Limit F13:33 6723 D06722 REAL %MD13.33 REAL Output Bias F13:34 6725 D06724 DWORD %MD13.
9 Register Reference F13:128 6913 D06912 REAL %MD13.128 REAL Proportional Gain F13:129 6915 D06914 REAL %MD13.129 REAL Integral Gain F13:130 6917 D06916 REAL %MD13.130 REAL Differential Gain F13:132 6921 D06921 REAL %MD13.132 REAL Velocity Feed Forward, Velocity Feed Forward (Positive) F13:133 6923 D06922 REAL %MD13.133 REAL Acceleration Feed Forward F13:134 6925 D06924 REAL %MD13.134 REAL Jerk Feed Forward F13:135 6927 D06926 REAL %MD13.
RMC70/150 and RMCTools User Manual F13:93 6843 D06842 REAL %MD13.93 REAL Negative Travel Limit F13:94 6845 D06844 REAL %MD13.94 REAL Requested Jerk Pressure/Force Target F13:100 6857 D06856 REAL %MD13.100 REAL Positive Pressure/Force Limit F13:101 6859 D06858 REAL %MD13.101 REAL Negative Pressure/Force Limit F13:106 6869 D06868 REAL %MD13.106 DWORD Auto Stops F13:107 6871 D06870 REAL %MD13.107 DWORD Auto Stops F13:108 6873 D06872 REAL %MD13.
9 Register Reference F13:168 6993 D06992 REAL %MD13.168 DINT Secondary Display Units F13:169 6995 D06994 DWORD %MD13.169 DWORD Secondary Custom Units Axis 2 AB Modbus DF1,CSP TCP,RTU FINS Address Address Address External Internal Data Type IEC Address Internal Data Type Register Name Primary Feedback: Position Axes F14:0 7169 D07168 REAL %MD14.0 REAL Position Scale F14:1 7171 D07170 REAL %MD14.1 REAL Position Offset F14:2 7173 D07172 REAL %MD14.
RMC70/150 and RMCTools User Manual F14:2 7173 D07172 REAL %MD14.2 REAL Force B Scale, Channel B Acceleration Scale F14:3 7175 D07174 REAL %MD14.3 REAL Force B Offset, Channel B Acceleration Offset F14:4 7177 D07176 REAL %MD14.4 REAL Actual Pressure/Force Filter, Actual Acceleration Filter F14:5 7179 D07178 REAL %MD14.5 REAL Actual Pressure/Force Rate Filter, Actual Jerk Filter F14:6 7181 D07180 REAL %MD14.
9 Register Reference Secondary Feedback: Analog Transducer F14:28 7225 D07224 REAL %MD14.28 DWORD Analog Config Register Analog Control Output F14:32 7233 D07232 REAL %MD14.32 REAL Output Limit F14:33 7235 D07234 REAL %MD14.33 REAL Output Bias F14:34 7237 D07236 REAL %MD14.34 DWORD Output Register Final Output Stage F14:38 7245 D07244 REAL %MD14.38 REAL Output Scale F14:39 7247 D07246 REAL %MD14.39 REAL Primary Output Filter F14:40 7249 D07248 REAL %MD14.
RMC70/150 and RMCTools User Manual F14:132 7433 D07432 REAL %MD14.132 REAL Velocity Feed Forward, Velocity Feed Forward (Positive) F14:133 7435 D07434 REAL %MD14.133 REAL Acceleration Feed Forward F14:134 7437 D07436 REAL %MD14.134 REAL Jerk Feed Forward F14:135 7439 D07438 REAL %MD14.135 REAL Velocity Feed Forward (Negative) F14:136 7441 D07440 REAL %MD14.136 REAL Double Differential Gain, Active Damping Proportional Gain F14:137 7443 D07442 REAL %MD14.
9 Register Reference F14:100 7369 D07368 REAL %MD14.100 REAL Positive Pressure/Force Limit F14:101 7371 D07370 REAL %MD14.101 REAL Negative Pressure/Force Limit F14:106 7381 D07380 REAL %MD14.106 DWORD Auto Stops F14:107 7383 D07382 REAL %MD14.107 DWORD Auto Stops F14:108 7385 D07384 REAL %MD14.108 DWORD Auto Stops F14:110 7389 D07388 REAL %MD14.110 REAL Closed Loop Halt Deceleration F14:111 7391 D07390 REAL %MD14.
RMC70/150 and RMCTools User Manual AB Modbus DF1,CSP TCP,RTU FINS Address Address Address External Internal Data Type IEC Address Internal Data Type Register Name Primary Feedback: Position Axes F15:0 7681 D07680 REAL %MD15.0 REAL Position Scale F15:1 7683 D07682 REAL %MD15.1 REAL Position Offset F15:2 7685 D07685 REAL %MD15.2 REAL Actual Position Filter F15:3 7687 D07687 REAL %MD15.3 REAL Actual Velocity Filter F15:4 7689 D07688 REAL %MD15.
9 Register Reference F15:4 7689 D07688 REAL %MD15.4 REAL Actual Pressure/Force Filter, Actual Acceleration Filter F15:5 7691 D07690 REAL %MD15.5 REAL Actual Pressure/Force Rate Filter, Actual Jerk Filter F15:6 7693 D07692 REAL %MD15.6 REAL Noise Error Rate Primary Feedback: MDT/SSI Transducer F15:10 7701 D07700 REAL %MD15.10 DWORD MDT/SSI Config Register F15:11 7703 D07702 REAL %MD15.11 REAL Count Offset F15:12 7705 D07704 REAL %MD15.
RMC70/150 and RMCTools User Manual F15:32 7745 D07744 REAL %MD15.32 REAL Output Limit F15:33 7747 D07746 REAL %MD15.33 REAL Output Bias F15:34 7749 D07748 REAL %MD15.34 DWORD Output Register Final Output Stage F15:38 7757 D07756 REAL %MD15.38 REAL Output Scale F15:39 7759 D07758 REAL %MD15.39 REAL Primary Output Filter F15:40 7761 D07760 REAL %MD15.40 REAL Secondary Output Filter F15:41 7763 D07762 REAL %MD15.
9 Register Reference F15:133 7947 D07946 REAL %MD15.133 REAL Acceleration Feed Forward F15:134 7949 D07948 REAL %MD15.134 REAL Jerk Feed Forward F15:135 7951 D07950 REAL %MD15.135 REAL Velocity Feed Forward (Negative) F15:136 7953 D07952 REAL %MD15.136 REAL Double Differential Gain, Active Damping Proportional Gain F15:137 7955 D07954 REAL %MD15.137 REAL Triple Differential Gain, Active Damping Differential Gain F15:138 7957 D07956 REAL %MD15.
RMC70/150 and RMCTools User Manual F15:106 7893 D07892 REAL %MD15.106 DWORD Auto Stops F15:107 7895 D07894 REAL %MD15.107 DWORD Auto Stops F15:108 7897 D07896 REAL %MD15.108 DWORD Auto Stops F15:110 7901 D07900 REAL %MD15.110 REAL Closed Loop Halt Deceleration F15:111 7903 D07902 REAL %MD15.111 REAL Open Loop Halt Ramp F15:112 7905 D07904 REAL %MD15.112 DINT Halt Group Number F15:116 7913 D07912 REAL %MD15.
9 Register Reference command area is still available for backwards compatibility with earlier versions of RMC70s that did not support the new larger command area (9 command parameters per command). The file 16 registers should not be used to issue commands that require more than 5 command parameters. AB External Internal Modbus DF1,CSP TCP,RTU FINS Data IEC Address Address Address Type Address Internal Data Type Register Name Axis 0 Command F16:0 8193 D8192 REAL %MD16.
RMC70/150 and RMCTools User Manual Tip: For the DF1/CSP addressing format, all 'F' type registers (32-bit floating point) can also be read as 'L' type (32-bit word) registers. This is very useful when reading registers with DWORD or DINT external data types. AB External Internal Modbus FINS DF1,CSP TCP,RTU Data IEC Address Address Address Type Address Internal Data Type Access Register Name Indirect Data Map F18:0 9217 D09216 * %MD18.0 * * Indirect Data Value 0 F18:1 9219 D09218 * %MD18.
9 Register Reference F18:24 9265 D09264 * %MD18.24 * * Indirect Data Value 24 F18:25 9267 D09266 * %MD18.25 * * Indirect Data Value 25 F18:26 9269 D09268 * %MD18.26 * * Indirect Data Value 26 F18:27 9271 D09270 * %MD18.27 * * Indirect Data Value 27 F18:28 9273 D09272 * %MD18.28 * * Indirect Data Value 28 F18:29 9275 D09274 * %MD18.29 * * Indirect Data Value 29 F18:30 9277 D09276 * %MD18.30 * * Indirect Data Value 30 F18:31 9279 D09278 * %MD18.
RMC70/150 and RMCTools User Manual Entry 15 F17:16 8737 D08736 REAL %MD17.16 DINT Read/Write Indirect Data Map Entry 16 F17:17 8739 D08738 REAL %MD17.17 DINT Read/Write Indirect Data Map Entry 17 F17:18 8741 D08740 REAL %MD17.18 DINT Read/Write Indirect Data Map Entry 18 F17:19 8743 D08742 REAL %MD17.19 DINT Read/Write Indirect Data Map Entry 19 F17:20 8745 D08744 REAL %MD17.20 DINT Read/Write Indirect Data Map Entry 20 F17:21 8747 D08746 REAL %MD17.
9 Register Reference 31 9791 D09790 31 Axis Definitions The Current Axis Definitions and the Requested Axis Definitions will generally be the same except in two cases: (1) The user has written to the requested block and intends to do a warm restart or burn to flash and do a cold restart, or (2) The requested axis definitions found on startup are invalid for the current hardware configuration; in this case the Current Axis Definitions will be the default for the current hardware configuration.
RMC70/150 and RMCTools User Manual 1.000000). It can be used as a master for Curves that are to run based on time. F20:11- 1026331 10303 D10262 - D10302 %MD20.1131 - - Reserved RMC70 Registers, File 21: Communication Configuration AB External Internal Modbus DF1,CSP TCP,RTU FINS Data IEC Address Address Address Type Address Internal Data Type Access Register Name RMC75E F21:0-7 1075310767 D10752- F21:8 D10768 DWORD %MD21.8 10769 - %MD21.
9 Register Reference 1=Do not use a Sync Register Applies to both EtherNet/IP and PROFINET. Bits 4 - 5 - PROFINET Byte Order 0=MSB first 1=LSB first Applies to PROFINET. F21:26- 1080555 10863 D10804- - F21:56- 10865115 10983 D10864- DWORD %MD21.56- DWORD Read/Write PROFINET Device Name 115 D10982 Each register in this range holds four characters of the PROFINET device name. F21:116 10985 D10984 DWORD %MD21.
RMC70/150 and RMCTools User Manual F21:2 10757 D10756 REAL %MD21.2 DINT Read Only RS-232 Monitor Protocol F21:3 10759 D10758 REAL %MD21.3 DINT Read Only RS-232 Monitor Address F21:4 10761 D10760 REAL %MD21.4 DINT Read Only PROFIBUS: Station Address Indicates the current PROFIBUS station address, as selected by the rotary switches on the front of the RMC75P. Possible values are from 0-99, although zero (0) is not a valid station address. F21:5 10763 D10762 - %MD21.
9 Register Reference mode bits 32-64 F23:8 11793 D11792 DWORD %MD23.8 DWORD _DIO.OnInProgram[0] Output to On in PROGRAM mode bits 0-31 F23:9 11795 D11794 DWORD %MD23.9 DWORD _DIO.OnInProgram[1] Output to On in PROGRAM mode bits 32-64 F23:10 11797 D11796 DWORD %MD23.10 DWORD _DIO.OffInFault[0] Output to Off in FAULT mode bits 0-31 F23:11 11799 D11798 DWORD %MD23.11 DWORD _DIO.OffInFault[1] Output to Off in FAULT mode bits 32-64 F23:12 11801 D11800 DWORD %MD23.12 DWORD _DIO.
RMC70/150 and RMCTools User Manual DF1,CSP Address Address Data Address Type IEC Address Type Task 0 F24:0 12289 REAL %MD24.0 DWORD Read Only Task 0 Task Status F24:1 12291 REAL %MD24.1 DWORD Read Only Task 0 Current Program/Step F24:2 12293 REAL %MD24.2 DINT Read/Write Task 0 Current Axis F24:3 12295 REAL %MD24.3 DINT Read Only Task 0 Current Program F24:4 12297 REAL %MD24.4 DINT Read Only Task 0 Current Step F24:5-15 12299- - %MD24.
9 Register Reference All Command Area Registers are Write Only. Note: The RMC70 command area registers were originally located only in file 16. However, to add more command parameters, the command area was changed to file 25. The file 16 command area is still available for backwards compatibility with earlier versions of RMC70s that did not support the new larger command area (9 command parameters per command).
RMC70/150 and RMCTools User Manual F25:30 12861 D12830 REAL %MD25.30 REAL Axis 3 Command F25:31 12863 D12862 REAL %MD25.31 REAL Axis 3 Command Parameter 1 F25:32 12865 D12864 REAL %MD25.32 REAL Axis 3 Command Parameter 2 F25:33 12867 D12866 REAL %MD25.33 REAL Axis 3 Command Parameter 3 F25:34 12869 D12868 REAL %MD25.34 REAL Axis 3 Command Parameter 4 F25:35 12871 D12870 REAL %MD25.35 REAL Axis 3 Command Parameter 5 F25:36 12873 D12872 REAL %MD25.
9 Register Reference Only F26:9 13331 D13330 REAL %MD26.9 REAL Read Only Analog Input 9 Usage Notes Viewing the Analog Voltage To view the Analog Input values in RMCTools, enter the address of the input in the Map To column in the Indirect Data Map. The analog input value will appear in the Current column of the Indirect Data Map. Uses These registers can be used for plotting, can be used in expressions, and can be read by an external device such as a PLC.
RMC70/150 and RMCTools User Manual AB External Internal Modbus FINS DF1,CSP TCP,RTU Data IEC Address Address Address Type Address F31:0 15873 D15872 REAL Internal Data Type Access %MD31.0 UDINT Register Name Read/Write Current Plot Layout This register indicates the current plot allocation. Bit Description 0-7 Plots (1-8) 8- Sample Sets per 15 Plot (1-16) 16- Reserved 23 F31:1 15875 D15874 REAL %MD31.
9 Register Reference plot. F31:5 15883 D15882 - %MD31.5 UDINT - Reserved F31:6 15885 D15884 - %MD31.6 UDINT - Reserved F31:7 15887 D15886 - %MD31.7 UDINT - Reserved RMC70 Registers, Files 32-39: Plot Configuration Registers The following files contain the Plot Configuration registers. See the Reading Plots with a Host Controller topic for details on how some of them can be used.
RMC70/150 and RMCTools User Manual then use Axis Owner 12- Reserved 23 F32:6 16397 D16396 REAL %MD32.6 - - Reserved F32:7 16399 D16398 REAL %MD32.7 - - Reserved F32:8 16401 D16400 REAL %MD32.8 REAL Read Only Plot ID F32:9 16403 D16402 REAL %MD32.9 REAL Read Only Plot State 0 = not triggered, 1 = capturing, 2 = complete F32:10 16405 D16404 REAL %MD32.10 DINT Read Only Plot Captured Samples Number of plot samples captured. Only applies for Plot State > 0.
9 Register Reference Bits 12-23File Plot 1 F33:0 16897 D16896 REAL %MD33.0 UDINT not directly Plot Flags These bits should not be accessed directly. 0 Reserved (Write Only) 1 Trigger (Write only) 2 Rearm (Write Only) 3 Read Active (Read Only) 4 Trigger Enabled (Read Only) F33:1 16899 D16898 REAL %MD33.1 UDINT Read/Write Plot Samples (e.g. 1000) F33:2 16901 D16900 REAL %MD33.2 REAL Read/Write Plot Sample Period (seconds) F33:3 16903 D16902 REAL %MD33.
RMC70/150 and RMCTools User Manual complete F33:10 16917 D16916 REAL %MD33.10 DINT Read Only Plot Captured Samples Number of plot samples captured. Only applies for Plot State > 0. F33:11 16919 D16918 REAL %MD33.11 DINT Read Only Plot Sample 0 Time Time that first plot sample was captured. In control loops since controller startup (low 24 bits). Only applies for Plot State > 0. F33:12 16921 D16920 REAL %MD33.12 DINT Read Only Plot Trigger Time Time that plot trigger occurred.
9 Register Reference Only) 3 Read Active (Read Only) 4 Trigger Enabled (Read Only) F34:1 17411 D17410 REAL %MD34.1 UDINT Read/Write Plot Samples (e.g. 1000) F34:2 17413 D17412 REAL %MD34.2 REAL Read/Write Plot Sample Period (seconds) F34:3 17415 D17414 REAL %MD34.3 DINT Read/Write Plot Axis Owner 0-3, -1 = none F34:4 17417 D17416 REAL %MD34.4 REAL Read/Write Plot Trigger Position %, 0-100, -1 = auto rearm F34:5 17419 D17418 REAL %MD34.
RMC70/150 and RMCTools User Manual (low 24 bits). Only applies for Plot State > 0. F34:12 17433 D17432 REAL %MD34.12 DINT Read Only Plot Trigger Time Time that plot trigger occurred. In control loops since controller startup (low 24 bits). Only applies for Plot State > 0. F34:13 17435 D17434 REAL %MD34.13 DINT Read Only Plot Trigger Index Index of the plot sample at which the plot trigger occurred. Only applies for Plot State > 0.
9 Register Reference F35:4 17929 D17928 REAL %MD35.4 REAL Read/Write Plot Trigger Position %, 0-100, -1 = auto rearm F35:5 17931 D17930 REAL %MD35.5 UDINT Read/Write Plot Trigger Type 0- Trigger Type 7 (0=none, 1=motion command) 8- Depends on 23 trigger type Motion Commands: 8- Axis 0-3 bits, 11 if all zero, then use Axis Owner 12- Reserved 23 F35:6 17933 D17932 REAL %MD35.6 - - Reserved F35:7 17935 D17934 REAL %MD35.7 - F35:8 17937 D17936 REAL %MD35.
RMC70/150 and RMCTools User Manual sample at which the plot trigger occurred. Only applies for Plot State > 0. F35:1415 1794917951 D17948- - F35:1631 1795317983 D17952- REAL D17950 D17981 %MD35.1415 - - Reserved %MD35.16- DWORD Read/Write Plot Data Sets 0-15 31 Addresses Files %MDn:16-31 contain the Addresses for plot Data Sets 0-15. Bits 0-11 Element Bits 12-23File Plot 4 F36:0 18433 D18432 REAL %MD36.0 UDINT not directly Plot Flags These bits should not be accessed directly.
9 Register Reference 8- Axis 0-3 bits, 11 if all zero, then use Axis Owner 12- Reserved 23 F36:6 18445 D18444 REAL %MD36.6 - - Reserved F36:7 18447 D18446 REAL %MD36.7 - - Reserved F36:8 18449 D18448 REAL %MD36.8 REAL Read Only Plot ID F36:9 18451 D18450 REAL %MD36.9 REAL Read Only Plot State 0 = not triggered, 1 = capturing, 2 = complete F36:10 18453 D18452 REAL %MD36.10 DINT Read Only Plot Captured Samples Number of plot samples captured. Only applies for Plot State > 0.
RMC70/150 and RMCTools User Manual Data Sets 0-15. Bits 0-11 Element Bits 12-23File Plot 5 F37:0 18945 D18944 REAL %MD37.0 UDINT not directly Plot Flags These bits should not be accessed directly. 0 Reserved (Write Only) 1 Trigger (Write only) 2 Rearm (Write Only) 3 Read Active (Read Only) 4 Trigger Enabled (Read Only) F37:1 18947 D18946 REAL %MD37.1 UDINT Read/Write Plot Samples (e.g. 1000) F37:2 18949 D18948 REAL %MD37.
9 Register Reference 0 = not triggered, 1 = capturing, 2 = complete F37:10 18965 D18964 REAL %MD37.10 DINT Read Only Plot Captured Samples Number of plot samples captured. Only applies for Plot State > 0. F37:11 18967 D18966 REAL %MD37.11 DINT Read Only Plot Sample 0 Time Time that first plot sample was captured. In control loops since controller startup (low 24 bits). Only applies for Plot State > 0. F37:12 18969 D18968 REAL %MD37.
RMC70/150 and RMCTools User Manual only) 2 Rearm (Write Only) 3 Read Active (Read Only) 4 Trigger Enabled (Read Only) F38:1 19459 D19458 REAL %MD38.1 UDINT Read/Write Plot Samples (e.g. 1000) F38:2 19461 D19460 REAL %MD38.2 REAL Read/Write Plot Sample Period (seconds) F38:3 19463 D19462 REAL %MD38.3 DINT Read/Write Plot Axis Owner 0-3, -1 = none F38:4 19465 D19464 REAL %MD38.4 REAL Read/Write Plot Trigger Position %, 0-100, -1 = auto rearm F38:5 19467 D19466 REAL %MD38.
9 Register Reference loops since controller startup (low 24 bits). Only applies for Plot State > 0. F38:12 19481 D19480 REAL %MD38.12 DINT Read Only Plot Trigger Time Time that plot trigger occurred. In control loops since controller startup (low 24 bits). Only applies for Plot State > 0. F38:13 19483 D19482 REAL %MD38.13 DINT Read Only Plot Trigger Index Index of the plot sample at which the plot trigger occurred. Only applies for Plot State > 0.
RMC70/150 and RMCTools User Manual 0-3, -1 = none F39:4 19977 D19976 REAL %MD39.4 REAL Read/Write Plot Trigger Position %, 0-100, -1 = auto rearm F39:5 19979 D19978 REAL %MD39.5 UDINT Read/Write Plot Trigger Type 0- Trigger Type 7 (0=none, 1=motion command) 8- Depends on 23 trigger type Motion Commands: 8- Axis 0-3 bits, 11 if all zero, then use Axis Owner 12- Reserved 23 F39:6 19981 D19980 REAL %MD39.6 - - Reserved F39:7 19983 D19982 REAL %MD39.
9 Register Reference F39:13 19995 D19994 REAL %MD39.13 DINT Read Only Plot Trigger Index Index of the plot sample at which the plot trigger occurred. Only applies for Plot State > 0. F39:1415 1999719999 D19996- - F39:1631 1641316415 D16412- REAL D19998 D16414 %MD39.1415 - - Reserved %MD39.16- DWORD Read/Write Plot Data Sets 0-15 31 Addresses Files %MDn:16-31 contain the Addresses for plot Data Sets 0-15.
RMC70/150 and RMCTools User Manual Read Samples F41:2 20997 D20996 DINT %MD41.2 UDINT Read/Write Plot Current Index F41:3 20999 D20998 DINT %MD41.3 UDINT Read Only Plot Plot ID F41:4 21001 D21000 DINT %MD41.4 UDINT Read Only Plot Samples Uploaded D21002D21502 %MD41.5255 F41:5-255 2100321503 * * Read Only Plot Data Plot 2 F42:0 21505 D21504 DINT %MD42.0 UDINT Read/Write Plot Flags F42:1 21507 D21506 DINT %MD42.
9 Register Reference Uploaded F45:5-255 2305123551 D23050 D23550 * %MD45.5255 * Read Only Plot Data Plot 6 F46:0 23553 D23552 DINT %MD46.0 UDINT Read/Write Plot Flags F46:1 23555 D23554 DINT %MD46.1 UDINT Read/Write Plot Requested Read Samples F46:2 23557 D23556 DINT %MD46.2 UDINT Read/Write Plot Current Index F46:3 23559 D23558 DINT %MD46.3 UDINT Read Only Plot Plot ID F46:4 23561 D23560 DINT %MD46.4 UDINT Read Only Plot Samples Uploaded D23562D24062 %MD46.
RMC70/150 and RMCTools User Manual F49:0-255 25089-25599 D25088-D25568 %MD49.0-255 Plot 0, Sample Set 1, Samples 0255 F50:0-255 25601-26111 D25600-D26110 %MD50.0-255 Plot 0, Sample Set 2, Samples 0255 F51:0-255 26113-26623 D26112-D26622 %MD51.0-255 Plot 0, Sample Set 3, Samples 0255 Plot 1 F52:0-255 26625-27135 D26624-D27134 %MD52.0-255 Plot 1, Sample Set 0, Samples 0255 F53:0-255 27137-27647 D27136-D27646 %MD53.0-255 Plot 1, Sample Set 1, Samples 0255 F54:0-255 27649-28159 D27648-D28158 %MD54.
9 Register Reference * The Data Types of the variables are specified by the user when defining a variable in the Variable Table. Allen-Bradley DF1 and CSP Where allowed by the host controller's communications, all the variables can also be addressed as F56:n, up to n = 1023. Modbus/TCP and /RTU The address of the current value of variable n is 28673 + 2 x n. FINS The address of the current value of variable n is D28672 + 2 x n. 9.5. RMC150 Register Map 9.5.1.
RMC70/150 and RMCTools User Manual 95 Plot Layout 96-103 Plots 0-7 Status/Configuration 104-111 Dynamic Plot Upload Area 112-143 Static Plot Upload Area 144-149 Slot Settings RMC150 Registers, File 7: Controller Info All Controller Information registers are Read Only. Tip: For the DF1/CSP addressing format, all 'F' type registers (32-bit floating point) can also be read as 'L' type (32-bit word) registers. This is very useful when reading registers with DWORD or DINT external data types.
9 Register Reference 69: Quadrature (Q) 70: SSI (S) 72: DI/O (D) 74: Analog (G) 76: Resolver (R) 77: Universal I/O 80: Resolver (RW) F7:7 3599 D03598 REAL %MD7.7 DINT Sensor Slot 1 Module Rev (slot 2) Major * 256 + Minor F7:8 3601 D03600 REAL %MD7.8 DINT Sensor Slot 2 Module ID (slot 3) F7:9 3603 D03602 REAL %MD7.9 DINT Sensor Slot 2 Module Rev (slot 3) F7:10 3605 D03604 REAL %MD7.10 DINT Sensor Slot 3 Module ID (slot 4) F7:11 3607 D03606 REAL %MD7.
RMC70/150 and RMCTools User Manual Major * 256 + Minor F7:23 3631 D03630 REAL %MD7.23 DINT Required RMCTools Ver Major * 256 + Minor (patch ignored) F7:24 3633 D03632 REAL %MD7.24 DINT Suggested RMCTools Ver Major * 256 + Minor (patch ignored) F7:25 3635 D03634 REAL %MD7.25 DINT Loader Rev Major * 256 + Minor F7:26 3637 D03636 REAL %MD7.26 DINT Loader Year and Month Year (4-digit) * 16 + Month (1=Jan, 2=Feb, ...) F7:27 3639 D03638 REAL %MD7.
9 Register Reference Holds the patch level of the firmware version. For example, for 3.30.0, this value will be 0, and for 3.30.1, it will be 1. RMC150 Registers, Files 8-23: Axis Status Registers All Axis Status Registers are Read Only. n = axis number (0-15) f=8+n b = 512 x n FINS Modbus DF1,CSP TCP,RTU Address Address Address AB External Internal Data Type IEC Address Internal Data Type Register Name Common Registers: All Axes Ff:0 4097 + b D4096 + b DWORD %MDf.
RMC70/150 and RMCTools User Manual Primary Input: Dual-Input Force or Acceleration Axes Ff:8 4113 + b D4112 + b REAL %MDf.8 REAL Actual Differential Force, Actual Acceleration Ff:9 4115 + b D4114 + b REAL %MDf.9 REAL Actual Differential Force Rate, Actual Jerk Ff:10 4117 + b D4116 + b REAL %MDf.10 REAL Actual Force A, Channel A Acceleration Ff:11 4119 + b D4118 + b REAL %MDf.11 REAL Voltage A/Current A Ff:12 4121 + b D4120 + b DINT %MDf.
9 Register Reference Ff:30 4157 + b D5156 + b DINT %MDf.30 DINT Raw Counts B %MDf.33 REAL Control Output Output: Analog Control Output Axes Ff:33 4163 + b D4162 + b REAL Primary Control: Position/Velocity Axes Ff:35 4167 + b D4166 + b REAL %MDf.35 REAL Position Error Ff:36 4169 + b D4168 + b REAL %MDf.36 REAL Velocity Error Ff:37 4171 + b D4170 + b REAL %MDf.37 REAL Proportional Term Ff:38 4173 + b D4172 + b REAL %MDf.
RMC70/150 and RMCTools User Manual Ff:47 4191 + b D4190 + b REAL %MDf.47 REAL Pressure/Force Integral Term Ff:48 4193 + b D4192 + b REAL %MDf.48 REAL Pressure/Force Differential Term Ff:49 4195 + b D4194 + b REAL %MDf.49 REAL Pressure/Force Feed Forward Term Ff:50 4197 + b D4196 + b REAL %MDf.50 REAL Pressure/Force Rate Feed Forward Term Ff:53 4203 + b D4202 + b REAL %MDf.53 REAL Target Position Ff:54 4205 + b D4204 + b REAL %MDf.
9 Register Reference b b Ff:1 12291 + b D12290 + REAL b %MDf.1 REAL Position Offset Ff:2 12293 + b D12292 + REAL b %MDf.2 REAL Actual Position Filter Ff:3 12295 + b D12294 + REAL b %MDf.3 REAL Actual Velocity Filter Ff:4 12297 + b D12296 + REAL b %MDf.4 REAL Actual Acceleration Filter Ff:5 12299 + b D12298 + REAL b %MDf.5 REAL Stop Threshold Ff:6 12301 + b D12300 + REAL b %MDf.6 REAL Noise Error Rate Ff:8 12305 + b D12304 + REAL b %MDf.
RMC70/150 and RMCTools User Manual Ff:0 12289 + b D12288 + REAL b %MDf.0 REAL Force A Scale, Channel A Acceleration Scale Ff:1 12291 + b D12290 + REAL b %MDf.1 REAL Force A Offset, Channel A Acceleration Offset Ff:2 12293 + b D12292 + REAL b %MDf.2 REAL Force B Scale, Channel B Acceleration Scale Ff:3 12295 + b D12294 + REAL b %MDf.3 REAL Force B Offset, Channel B Acceleration Offset Ff:4 12297 + b D12296 + REAL b %MDf.
9 Register Reference b b Actual Acceleration Filter Ff:23 12335 + b D12334 + REAL b %MDf.23 REAL Actual Pressure/Force Rate Filter, Actual Jerk Filter Ff:24 12337 + b D12336 + REAL b %MDf.24 REAL Noise Error Rate Ff:26 12341 + b D12340 + REAL b %MDf.26 DWORD Custom Feedback Configuration Register Secondary Feedback: Dual-Input Force or Acceleration Ff:18 12325 + b D12324 + REAL b %MDf.18 REAL Force A Scale, Channel A Acceleration Scale Ff:19 12357 + b D12356 + REAL b %MDf.
RMC70/150 and RMCTools User Manual Ff:43 12375 + b D12374 + REAL b %MDf.43 DINT Default Pos/Vel Control Mode Ff:56 12401 + b D12400 + REAL b %MDf.56 REAL In Position Tolerance Ff:57 12403 + b D12402 + REAL b %MDf.57 REAL Position Error Tolerance Ff:58 12405 + b D12404 + REAL b %MDf.58 REAL At Velocity Tolerance Ff:59 12407 + b D12406 + REAL b %MDf.59 REAL Velocity Error Tolerance Ff:60 12409 + b D12408 + REAL b %MDf.
9 Register Reference Ff:134 12557 + b D12556 + REAL b %MDf.134 REAL Jerk Feed Forward Ff:135 12559 + b D12558 + REAL b %MDf.135 REAL Velocity Feed Forward (Negative) Ff:136 12561 + b D12560 + REAL b %MDf.136 REAL Double Differential Gain, 12563 + b D12562 + REAL b %MDf.137 12565 + b D12564 + REAL b %MDf.
RMC70/150 and RMCTools User Manual b b Ff:93 12475 + b D12474 + REAL b %MDf.93 REAL Negative Travel Limit Ff:94 12477 + b D12476 + REAL b %MDf.94 REAL Requested Jerk Pressure/Force Target Ff:100 12489 + b D12488 + REAL b %MDf.100 REAL Positive Pressure/Force Limit Ff:101 12491 + b D12490 + REAL b %MDf.101 REAL Negative Pressure/Force Limit Ff:106 12501 + b D12500 + REAL b %MDf.106 DWORD Auto Stops Ff:107 12503 + b D12502 + REAL b %MDf.
9 Register Reference b b Ff:149 12587 + b D12586 + REAL b %MDf.149 DINT Model Order Ff:150 12589 + b D12588 + REAL b %MDf.150 REAL Model Gain Positive Ff:151 12591 + b D12590 + REAL b %MDf.151 REAL Model Gain Negative Ff:152 12593 + b D12592 + REAL b %MDf.152 REAL Model Time Constant, Model Natural Frequency Ff:153 12595 + b D12594 + REAL b %MDf.153 REAL Model Damping Factor Pressure/Force Modeling Ff:160 12609 + b D12608 + REAL b %MDf.
RMC70/150 and RMCTools User Manual c 3 F40:b+4 20489 + c D20488 + REAL c %MD40.b+4 REAL Axis n Command Parameter 4 F40:b+5 20491 + c D20490 + REAL c %MD40.b+5 REAL Axis n Command Parameter 5 F40:b+6 20493 + c D20492 + REAL c %MD40.b+6 REAL Axis n Command Parameter 6 F40:b+7 20495 + c D20494 + REAL c %MD40.b+7 REAL Axis n Command Parameter 7 F40:b+8 20497 + c D20496 + REAL c %MD40.b+8 REAL Axis n Command Parameter 8 F40:b+9 20499 + c D20498 + REAL c %MD40.
9 Register Reference RMC150 Registers, File 43: Axis Definitions The Axis Definitions are not intended to be directly accessed by the user. The preferred method of changing the axis definitions is to use the Axis Definitions dialog. For highly advanced users, see the Axis Definition Registers topic for more details.
RMC70/150 and RMCTools User Manual F44:8 22545 D22544 REAL %MD44.8 DINT Read/Write Startup Mode 0=PROGRAM, 1-RUN (default = 0) F44:9 22547 D22546 REAL %MD44.9 DINT Read/Write RUN/PROGRAM Input 0 = None 1 = %IX1.0 (CPU input 0) 2 = %IX1.1 (CPU input 1) F44:10 22549 D22548 REAL %MD44.10 REAL Read Only Time The _Time register wraps every second through the range [0.000000, 1.000000). It can be used as a master for Curves that are to run based on time.
9 Register Reference This register controls whether the PROFIBUS Station Address can be changed over PROFIBUS by a Class 2 master. Notice that RMCTools can always change the station address, regardless of the value of this register. Also, setting the station address over RMCTools will set this register to zero (0). NOTE: Only RMC150E controllers with the PROFIBUS communication module installed have this register. F45:6 23053 D23052 DWORD %MD45.
RMC70/150 and RMCTools User Manual server IP Address F45:16 23073 D23072 DINT %MD45.16 DINT Read Only DHCP Lease Start (seconds since powerup) F45:17 23075 D23074 DINT %MD45.17 DINT Read Only DHCP Lease End (seconds since powerup) F45:18 23077 D23076 DINT %MD21.18 DINT Read/Write EtherNet/IP Class 1 TTL (time-to-live) F45:19 23079 D23078 DINT %MD245.19 DINT Read/Write EtherNet/IP Class 1 Start of Multicast Address Block F45:20 23081 D23080 DINT %MD45.
9 Register Reference characters of the PROFINET device name. F45:116 23273 D23272 DWORD %MD45.116 DWORD Read/Write PROFINET Custom Data Record 1000 Address F45:117 23275 D23274 DWORD %MD45.117 DWORD Read/Write PROFINET Custom Data Record 1001 Address F45:118 23277 D23276 DWORD %MD45.118 DWORD Read/Write PROFINET Custom Data Record 1002 Address F45:119 23279 D23278 DWORD %MD45.
RMC70/150 and RMCTools User Manual b +b Off in FAULT mode for Slot n F47:30+n 24125 + D24124 DWORD %MD47.30+n DWORD _DIO.OnInFault[n] b +b Output to On in FAULT mode for Slot n F47:36+n 24137 + D24136 DWORD %MD47.36+n DWORD _DIO.OutForcedOFF[n] Force Off b +b for Outputs in Slots n F47:42+n 24149 + D24148 DWORD %MD47.42+n DWORD _DIO.OutForcedON[n] Force On b +b for Outputs in Slots n F47:48+n 24161 + D24160 DWORD %MD47.48+n DWORD _DIO.
9 Register Reference RMC150 Registers, Files 56-59, 72-75: Variables Registers All variable registers are Read/Write. Tip: For the DF1/CSP addressing format, all 'F' type registers (32-bit floating point) can also be read as 'L' type (32-bit word) registers. This is very useful when reading variables defined as DWORD or DINT data types.
RMC70/150 and RMCTools User Manual The variables can given a user-defined tag name in the Variable Table Editor, which is the preferred method of referencing variables from within RMCTools. The user-defined variable name references the variable's Current Value. Otherwise, each variable has a tag name as follows: _VarTbl.CurVal[n] - Current Value of variable n. _VarTbl.Initial[n] - Initial value of variable n. RMC150 Registers, File 94: Image Area See the Controller Image Upload/Download topic for details.
9 Register Reference 15 Plot (1-16) 16- Reserved 23 F95:1 48643 E0_15874 REAL %MD95.1 UDINT Read Only Maximum Plots (8) This read-only value indicates how many plots can be defined at once. F95:2 48645 E0_15876 REAL %MD95.2 UDINT Read Only Maximum Samples (16) This read-only value indicates how many samples sets can be captured simultaneously per plot. F95:3 48647 E0_15878 REAL %MD95.
RMC70/150 and RMCTools User Manual b +b directly These bits should not be accessed directly. 0 Reserved (Write Only) 1 Trigger (Write only) 2 Rearm (Write Only) 3 Read Active (Read Only) 4 Trigger Enabled (Read Only) Ff:1 49155 + E0_16386 REAL b +b %MDf.1 UDINT Read/Write Plot Samples (e.g. 1000) Ff:2 49157 + E0_16388 REAL b +b %MDf.2 REAL Read/Write Plot Sample Period (seconds) Ff:3 49159 + E0_16390 REAL b +b %MDf.3 DINT Read/Write Plot Axis Owner 49161 + E0_16392 REAL b +b %MDf.
9 Register Reference Ff:10 49173 + E0_16404 REAL b +b %MDf.10 DINT Read Only Plot Captured Samples Number of plot samples captured. Only applies for Plot State > 0. Ff:11 Ff:12 Ff:13 Ff:1415 Ff:1631 49175 + E0_16406 REAL b +b %MDf.11 49177 + E0_16408 REAL b +b %MDf.12 49179 + E0_16410 REAL b +b %MDf.13 49181 + E0_16412 b +b %MDf.1415 - DINT Read Only Plot Sample 0 Time Time that first plot sample was captured. In control loops since controller startup (low 24 bits).
RMC70/150 and RMCTools User Manual Note: When communicating via a protocol that uses DF1 addressing, the Plot Data can be accessed with registers 5-4095, if the host controller allows it. Other protocols can only address Plot Data registers 5-255, as indicated below. AB Modbus DF1,CSP TCP,RTU FINS Address Address Address External Internal Data Type IEC Address Internal Data Type Access Register Name Plot 0 F104:0 53249 E0_20480 DINT %MD104.
9 Register Reference F107:1 54787 E0_22018 DINT %MD107.1 UDINT Read/Write Plot 3 Requested Read Samples F107:2 54789 E0_22020 DINT %MD107.2 UDINT Read/Write Plot 3 Current Index F107:3 54791 E0_22022 DINT %MD107.3 UDINT Read Only Plot 3 Plot ID F107:4 54793 E0_22024 DINT %MD107.4 UDINT Read Only Plot 3 Samples Uploaded F107:5- 54795- E0_22026- %MD107.5- Read Only Plot 3 Data 255 55295 E0_22526 255 F108:0 55297 E0_22528 DINT %MD108.
RMC70/150 and RMCTools User Manual F111:0 56833 E0_24064 DINT %MD111.0 UDINT Read/Write Plot 7 Upload Mode/Status F111:1 56835 E0_24066 DINT %MD111.1 UDINT Read/Write Plot 7 Requested Read Samples F111:2 56837 E0_24068 DINT %MD111.2 UDINT Read/Write Plot 7 Current Index F111:3 56839 E0_24070 DINT %MD111.3 UDINT Read Only Plot 7 Plot ID F111:4 56841 E0_24072 DINT %MD111.4 UDINT Read Only Plot 7 Samples Uploaded F111:5- 56843- E0_24074- %MD111.
9 Register Reference F119:0255 60929-61439 E0_28160E0_28670 %MD119.0255 Plot 1, Sample Set 4, Samples 0255 F120:0255 61441-61951 E0_28672E0_29182 %MD120.0255 Plot 2, Sample Set 1, Samples 0255 F121:0255 61953-62463 E0_29184E0_29694 %MD121.0255 Plot 2, Sample Set 2, Samples 0255 F122:0255 62465-62975 E0_29696E0_30206 %MD122.0255 Plot 2, Sample Set 3, Samples 0255 F123:0255 62977-63487 E0_30208E0_30718 %MD123.
RMC70/150 and RMCTools User Manual F140:0255 71681-72191 E1_06144E1_06654 %MD140.0255 Plot 7, Sample Set 1, Samples 0255 F141:0255 72193-72703 E1_06656E1_07166 %MD141.0255 Plot 7, Sample Set 2, Samples 0255 F142:0255 72705-73215 E1_07168E1_07678 %MD142.0255 Plot 7, Sample Set 3, Samples 0255 F143:0255 73217-73727 E1_07680E1_08190 %MD143.0255 Plot 7, Sample Set 4, Samples 0255 RMC150 Registers, File 144-149: Slot Settings These registers control the settings for the module in each slot.
9 Register Reference 80: Resolver (RW) F144+n:1 73731 E1_08194 DWORD %MD144+n.1 DWORD Read +512 x n +512 x n Only Slot n Module Rev Major * 256 + Minor Module UI/O Slot n = 0-5 AB DF1,CSP Address External Internal Modbus FINS TCP,RTU Data IEC Address Address Type Address F144+n:0 73729 E1_08192 DINT +512 x n +512 x n Internal Data Type Access %MD144+n.0 DINT Register Name Read Only Slot n Module ID = 45 (comm slot) Module ID = 77 (sensor slot) F144+n:1 73731 E1_08194 DWORD %MD144+n.
RMC70/150 and RMCTools User Manual 1 = Slave - Clock is an input F144+n:17 73741 E1_08204 DWORD %MD144+n.17 DWORD Read/Write Channel 0 SSI Options +512 x n +512 x n Applies only to SSI Output and SSI Register Input modes] Bit 0-5 - SSI Data Bits Range: 8-32 Bit 6 - SSI Encoding 0=Binary, 1=Gray Code Bit 8 - Terminate Inputs [Applies to all SSI Output and SSI Register Input modes except SSI Output - Master.
9 Register Reference address of the register to save the value coming in on the SSI input. F144+n:20 73747 E1_08210 DWORD %MD144+n.20 DWORD Read Only Channel 0 SSI Status +512 x n +512 x n [Applies only to SSI Output and SSI Register Input modes] Bit 0 - Clock Wire Fault Wire Break for Clock inputs, Short for Clock outputs. Bit 1 - Data Wire Fault Wire Break for Data inputs, Short for Data outputs.
RMC70/150 and RMCTools User Manual 0 = Master - Clock is an output 1 = Slave - Clock is an input F144+n:25 73751 E1_08214 DWORD %MD144+n.25 DWORD Read/Write Channel 1 SSI Options +512 x n +512 x n Applies only to SSI Output and SSI Register Input modes] Bit 0-5 - SSI Data Bits Range: 8-32 Bit 6 - SSI Encoding 0=Binary, 1=Gray Code Bit 7 - Echo channel 0 SSI Input [Applies only to SSI Output modes on channel 1.
9 Register Reference +512 x n +512 x n [Applies only to SSI Output and SSI Register Input modes] For SSI Output mode, this is the address of the register to send out the SSI Output. Ignored if Echo is enabled. For SSI Register Input, this is the address of the register to save the value coming in on the SSI input. F144+n:28 73757 E1_08220 DWORD %MD144+n.
10.Wiring and Installation 10.1. Wiring Guidelines Proper wiring of the RMC and of the system is important for proper machine control. Poor wiring is a common source of noisy feedback, drive signals or digital I/O. Follow the guidelines in this topic and the other wiring topics to ensure a low-noise system. General Wiring Instructions For CE compliance and to minimize electrical interference: • • Use twisted pairs for all wiring where possible.
RMC70/150 and RMCTools User Manual AA SSI MA Quadrature QA Discrete I/O A2 Resolver AP2 Universal I/O D8 Q1 10.2. RMC70 10.2.1. RMC70 Mounting Instructions Mounting Options: • Symmetrical DIN 3 • Panel-mount Orientation: The RMC should be mounted upright on a vertical surface, such that the air holes are on top and bottom. Clearance above and below: The amount of clearance required depends on the maximum ambient temperature: Ambient Temperature Clearance 122 - 140°F (50-60°C) 3 in (7.
10 Wiring and Installation Expansion Modules Protrude 2.0 in. Make sure to leave room for the front connectors. D8 module AP2, A2, Q1 modules 1.25 in. x 5.0 in. 1.50 in. x 5.0 in. deltamotion.
RMC70/150 and RMCTools User Manual 10.2.2. RMC75E Wiring The RMC75E CPU module contains a connector for power, and two connectors for communications. Wiring Power The connector screws and wire clamp screws must be tightened to max 7 b-in (0.8Nm). Wiring the Communications USB Monitor Port Use a standard USB cable to connect to the USB port. RJ-45 Ethernet connector Use a standard Category 5, 5e, or 6 cable with an RJ-45 connector to connect to the 10/100 Ethernet port. 10.2.3.
10 Wiring and Installation 10.2.4. RMC75P Wiring The RMC75P CPU module contains a connector for power, and two connectors for communications. Wiring Power The connector screws and wire clamp screws must be tightened to max 7 b-in (0.8Nm). Wiring the Communications RS-232 Monitor Port For wiring the RS-232 Monitor Port, see the RS-232 Wiring for the RMC70 topic. 9-Pin PROFIBUS-DP Connector This connector is the standard PROFIBUS connector.
RMC70/150 and RMCTools User Manual 6 Common Cmn Common 7 +Analog In An In+ +Analog Input 8 Jumper for 420mA Jmpr for 420mA Jumper for 4-20mAfeedback 9 -Analog In An In -Analog In 10 Common Cmn Common 11 +10Vdc Exciter Out +10Vdc Exciter +10Vdc output for potentiometers 12 Case Case Connected to The commons are internally connected. Voltage Feedback Transducers Voltage feedback transducers can be connected directly to the Input + and Input connections of the desired axis.
10 Wiring and Installation 10.2.6. MAx Wiring The MAx module can be wired to MDT and SSI transducers. Each axis on the MAx also has a Fault input, Enable output, and a Control output. If the MA module has two axes, each axis' pinout is identical. Use shielded twisted pairs for all connections to inputs and outputs. Route the transducer wiring separate from other wiring. You must provide the power supplies needed by your transducers. See Wiring Guidelines for general wiring information.
RMC70/150 and RMCTools User Manual 11 -Ret/Data Ret/Dat- 12 Case Case Connected to RMC Chassis The commons are internally connected. MDT Wiring (see below for SSI) The MAx modules interface only to transducers with Differential Line Driver (RS422) signals. Single-ended (TTL) transducers are not supported due to low noise immunity.
10 Wiring and Installation Pin Function Int/Clk + SSI + Clock Int/Clk - SSI - Clock Cmn Common Ret/Dat + SSI + Data Ret/Dat - SSI - Data Case RMC70 Chassis Max Cable Length SSI Clock Rate Maximum Cable Length* 100 kHz 2100 ft (640 m) 150 kHz 1360 ft (415 m) 250 kHz 770 ft (235 m) 375 kHz 475 ft (145 m) * The cable lengths are approximate, and may be affected by the type of wire and transducer.
RMC70/150 and RMCTools User Manual 10.2.7. QAx Wiring The QAx module can be wired to quadrature encoders. Each axis on the QAx also has a Fault input, Enable output, Control output, two high-speed registration inputs, and a high-speed home input. The pinout of each axis is identical. Use shielded twisted pairs for all connections to inputs and outputs. Route the transducer wiring separate from other wiring. You must provide the power supplies needed by your transducers.
10 Wiring and Installation 23 n/c n/c No connection 24 EnOut- EnOut- 25 EnOut+ Enout+ Enable Output (12-24 VDC) Drv: white/orange Drv: orange/white Encoder Wiring Quadrature Encoders The QAx module A, B, and Z inputs accept only Differential Line Driver (RS-422) signals. Single-ended line drivers (TTL) are not supported due to low noise immunity. The user must supply power for the encoder.
RMC70/150 and RMCTools User Manual 10.2.8. A2 Wiring The A2 expansion module can be wired to voltage or current feedback transducers. Use shielded twisted pairs for all connections to inputs and outputs. Route the transducer wiring separate from other wiring. You must provide the power supplies needed by your transducers. See Wiring Guidelines for general wiring information. Wire clamp screws must be tightened to max 7 lb-in (0.8Nm).
10 Wiring and Installation 10.2.9. AP2 Wiring The AP2 expansion module can be wired to voltage or current feedback transducers. Use shielded twisted pairs for all connections to inputs and outputs. Route the transducer wiring separate from other wiring. You must provide the power supplies needed by your transducers. See Wiring Guidelines for general wiring information. Wire clamp screws must be tightened to max 7 b-in (0.8Nm).
RMC70/150 and RMCTools User Manual 2-Wire Current Transducer 10.2.10. D8 Wiring Each discrete I/O point on the D8 expansion module is individually configurable in software as an input or output. Since there is just one input common and one output common, all inputs must be the same polarity, and all outputs must be the same polarity, but inputs need not be the same polarity as outputs, that is, outputs can switch high side or low side, and inputs can be active high or low.
10 Wiring and Installation I/O 5 Input or Output I/O 6 Input or Output I/O 7 Input or Output Input Cmn Common to one side of all inputs Discrete Outputs Each discrete output is a solid state relay (SSR). When it is "OFF", it has high impedance, and when "ON" it has low impedance (50 Ω maximum, 25 Ω typical). Because the output is isolated, the user must power it externally. The maximum current and voltage for the output is 75 mA (50 mA for Class I, Div 2) and 30 V.
RMC70/150 and RMCTools User Manual Figure 1: SSR switching inductive inductive load: high-side configuration. Example: Calculating maximum current for inductive load. To calculate the maximum current through the SSR in the above diagram, we assume zero SSR resistance: Max. current = 24V / 480Ω = 50mA Max. current = 12V / 480Ω = 25mA In the 24V case, the maximum current is right at the maximum allowed by the SSRs. The outputs may be overpowered if the coil resistance is reduced further.
10 Wiring and Installation Figure 6: PNP Configuration: This configuration is the most popular for open collector PNP outputs. Figure 7: Open Collector Outputs to D8 Inputs with Input Common Connected to Vcc. Figure 8: Open Collector Outputs to D8 Inputs with Input Common Connected to ground. For 24VDC power, the pull-up resistor should be a 4.7kΩ, ¼ watt resister. The output must be capable of switching 2.6mA when closed. When the open collector output is open, the DI/O input sees 11.8V @ 2.6mA.
RMC70/150 and RMCTools User Manual supply needs and connector pin-outs or cable color codes, consult your transducer manufacturers documentation.
10 Wiring and Installation Daisy-Chaining Quadrature Inputs One quadrature encoder can typically output its A and B signals to thirty-two (32) RMC70 Q1 modules. Use a daisy-chain topology as shown below. Do not use a star topology. Add termination only to the last input, as illustrated. Incorrect termination will result in distorted signals and will cause incorrect transducer readings. 10.3. RMC150 10.3.1.
RMC70/150 and RMCTools User Manual Note: Allow space for the connectors on the front of the RMC. 10.3.2. RMC150E CPU Module Wiring This topic covers the wiring of the RMC150E CPU Module, including the power and the discrete inputs and outputs. For wiring the discrete inputs and outputs on the DI/O UI/O modules, see the Discrete I/O Wiring and UI/O Wiring topics. See Wiring Guidelines for general wiring information. Wire clamp screws must be tightened to max 4.5 lb-in (0.51 Nm).
10 Wiring and Installation The current rating depends on the size of the backplane: Backplane Slots Maximum Current 3 375mA 4 500mA 5 625mA 6 750mA The Case pin is electrically connected to the RMC100 case. Discrete Outputs The RMC150E CPU module discrete outputs are solid state relays. When they are ”off” they have high impedance, and when ”on” they have low impedance (50Ω maximum, 25Ω typical). The user must power the outputs externally.
RMC70/150 and RMCTools User Manual Note: The RMC150E CPU inputs are 12-24V, whereas the DI/O module inputs are 5-24V. For a complete discussion of input wiring, refer to the Discrete I/O Module Wiring topic. Notice, however, that the RMC150E CPU inputs are 12-24VDC and are not compatible with 5VDC signals. 10.3.3. RMC150 Control Output (Drive) Wiring The following RMC150 modules have two Control Outputs, one for each axis: Analog (G), Analog (H), MDT (M), Quadrature (Q), SSI (S), Resolver (R).
10 Wiring and Installation Note: The MDT input Cmn pin must be connected! A disconnected Cmn pin can cause noise and inaccurate readings. Start/Stop and PWM Transducers with Differential Line Driver (RS422) Signals Start/Stop and PWM Transducers with Single-Ended Signals This diagram applies to older transducers, such as the Temposonics I and II transducers with neuter outputs. Single-ended transducers are not recommended due to poor noise immunity. deltamotion.
RMC70/150 and RMCTools User Manual 10.3.5. RMC150 SSI Wiring This topic covers the wiring of the SSI inputs on the RMC150 SSI (S) module. For the Control Output (Drive) wiring, see the RMC150 Control Output (Drive) Wiring topic. For wiring SSI inputs on the Universal I/O Module, see the RMC150 UI/O Wiring. Use shielded twisted pairs for all connections to inputs and outputs. Route the transducer wiring separate from other wiring. You must provide the power supplies needed by your transducers.
10 Wiring and Installation 10.3.6. RMC150 Quadrature Wiring This topic covers the wiring of the quadrature inputs on the RMC150 Quadrature (Q) module. For the Control Output (Drive) wiring, see the RMC150 Control Output (Drive) Wiring topic. For wiring quadrature inputs on the Universal I/O Module, see the RMC150 UI/O Wiring. Use shielded twisted pairs for all connections to inputs and outputs. Route the transducer wiring separate from other wiring.
RMC70/150 and RMCTools User Manual 12 Control Output Drv: blue/white 13 Control Output Common Drv: white/blue 14 Z- Index from encoder (5 V) Enc: white/green 15 Z+ Index from encoder (5 V) Enc: green/white 16 Encoder Common Enc: white/brown Enc: brown/white 17 No connection 18 Home Input - (5-24 VDC) Lim: white/green 19 Home Input + (5-24 VDC) Lim: green/white 20 Fault Input - (5-24 VDC) Drv: white/green 21 Fault Input + (5-24 VDC) Drv: green/white 22 No connection 23 No con
10 Wiring and Installation 10.3.7. RMC150 Analog Input Wiring This topic covers the wiring of the analog inputs on the RMC150 Analog (A), Analog (G), Analog (H), and Universal I/O modules. For the Control Output (Drive) wiring, see the RMC150 Control Output (Drive) Wiring topic. Use shielded twisted pairs for all connections to inputs and outputs. Route the transducer wiring separate from other wiring. You must provide the power supplies needed by your transducers.
RMC70/150 and RMCTools User Manual supply needs and connector pin-outs or cable color codes, consult your transducer manufacturer's documentation. Note: The analog input Cmn pin must be connected! A disconnected Cmn pin can cause noise and inaccurate readings. Voltage Input, 4- or 5-wire To minimize electrical interference: • -In and Cmn must be connected. This connected should be made as close to the transducer as possible. • Use individually shielded twisted-pair wire.
10 Wiring and Installation To minimize electrical interference: • -In and Cmn must be connected. This connected should be made as close to the transducer as possible. • Use individually shielded twisted-pair wire. • Typically, the cable shield should be connected to earth on one end only. Potentiometer When using a potentiometer, use the Exciter pin, if the module has one, to increase the accuracy of the analog to digital conversion.
RMC70/150 and RMCTools User Manual To minimize electrical interference: • -In and Cmn must be connected. This connected should be made as close to the transducer as possible. • Use individually shielded twisted-pair wire. • Typically, the cable shield should be connected to earth on one end only. Current 4-20mA, 2-Wire Note: The Analog (G) Module does not support current feedback. Notes: • • 1156 The Res and -In pins are internally connected via a 250 Ohm resistor.
10 Wiring and Installation 10.3.8. RMC150 Resolver Wiring This topic covers the wiring of the Resolver inputs on the RMC150 Resolver (R) and Resolver (RW) modules. For the Control Output (Drive) wiring, see the RMC150 Control Output (Drive) Wiring topic. Use shielded twisted pairs for all connections to inputs and outputs. Route the transducer wiring separate from other wiring. See Wiring Guidelines for general wiring information. Wire clamp screws must be tightened to max 4.5 lb-in (0.51 Nm).
RMC70/150 and RMCTools User Manual Resolver (RW) Module Below is a typical wiring diagram for the Resolver (RW) module. 10.3.9. RMC150 Discrete I/O Wiring This topic covers the wiring of the discrete inputs and outputs on the RMC150 DI/O module (DI/O or D). For wiring the discrete I/O on the RMC150E CPU, see the RMC150E Wiring. For wiring the UI/O module, see the RMC150 UI/O Wiring. See Wiring Guidelines for general wiring information. Wire clamp screws must be tightened to max 2.2 lb-in (0.25 Nm).
10 Wiring and Installation user must power the outputs externally. The maximum current and voltage for the outputs is 75 mA (50 mA for Class I, Div 2) and 30 V. Outputs can be wired in either a high-side or low-side configuration. Because all the outputs share a common, all outputs on the same module must be wired the same. Using Outputs with Resistive Loads Figure 1: SSR switching resistive load: lowside configuration. Figure 2: SSR switching resistive load: high-side configuration.
RMC70/150 and RMCTools User Manual In the 24V case, the maximum current is right at the maximum allowed by the SSRs. The outputs may be overpowered if the coil resistance is reduced further. To calculate the typical current through the SSR, we use the typical SSR resistance of 25Ω: Typical current = 24V / (480Ω + 25Ω) = 47.5mA Typical current = 12V / (480Ω + 25Ω) = 23.
10 Wiring and Installation Figure 7: Open Collector Outputs to the DI/O Module Inputs with Input Common Connected to Ground. For 24VDC power, the pull-up resistor should be a 3.3 kΩ, 1/2 watt resister. The output must be capable of switching 7.5mA when closed. When the open collector output is open, the DI/O input sees 7V @ 5.1mA. For 12VDC power, the pull-up resistor should be a 560 Ω, 1/8 watt resister. The output must be capable of switching 9.0mA when closed.
RMC70/150 and RMCTools User Manual Outputs can be wired in either a high-side or low-side configuration. Because all the outputs share the Output Common, all outputs on the same module must be wired the same. Using Outputs with Resistive Loads Figure 1: SSR switching resistive load: lowside configuration. Figure 2: SSR switching resistive load: high-side configuration. The load resistance must be sized such that the maximum current through the SSR does not exceed 50mA.
10 Wiring and Installation Typical current = 24V / (480Ω + 25Ω) = 47.5mA Typical current = 12V / (480Ω + 25Ω) = 23.7mA UI/O Discrete Inputs The UI/O points configured as inputs use the Input Common and are compatible with signal levels ranging from 12V to 24V. Each input draws a maximum of 2.6mA with a 12V or 24V input. Most PLC outputs can be connected to the UI/O inputs directly.
RMC70/150 and RMCTools User Manual Figure 8: Open Collector Outputs to UI/O Inputs with Input Common Connected to Vcc. Figure 9: Open Collector Outputs to UI/O inputs with input common connected to ground. Typically not recommended due to the required external resistors and a continuous current draw, and the fact that the logic becomes inverted. May be necessary for mixing sourcing and sinking outputs. For 24VDC power, the pull-up resistor should be a 4.7kΩ, ¼ watt resister.
10 Wiring and Installation for the A and B signals. Do NOT connect the transducer Ground or Cmn to the cable shield, Case, or earth ground. The user must supply power for the transducer or encoder. Termination Termination is software selectable and should always be used. If quadrature inputs are daisy-chained, apply termination only to the last input.
RMC70/150 and RMCTools User Manual SSI Monitor Mode SSI Register Input mode can be used with Monitor Mode to monitor the communication between another RMC and an SSI transducer or encoder, thereby synchronizing multiple RMCs to one SSI device. When wiring a daisy-chained SSI system, the SSI master (the UI/O) should be on one end of the daisy chain with the SSI device on the other end, and any monitoring UI/O modules in the middle of the daisy chain.
11.Troubleshooting 11.1. Troubleshooting Overview Tip: USE THE EVENT LOG! If an error occurred, or something unexpected happens, open the Event Log to see if the command caused any errors. How to Troubleshoot RMCTools provides several tools that help you troubleshoot the RMC: Tools Description Event Log Logs most events that occur on the RMC, including commands, errors, and communications transactions.
RMC70/150 and RMCTools User Manual Support If you are unable to solve a problem, contact Delta's Technical Support. 11.2. Error Codes When any error occurs in the RMC, an error code is reported. The error codes, along with all controller events, are recorded in the Event Log. This log can be viewed in the Event Log Monitor in RMCTools. Errors codes that occur on a specific axis will set the corresponding Error Bit on the axis.
11 Troubleshooting This error occurs when the Speed At Position (36) command is issued with starting conditions and command parameters that lead to the RMC computing a negative time to make the move in. This indicates an impossible request. See the Speed at Position (36) topic for details on conditions and parameter values that cause this error. 9 Unable to clear Halt condition A motion command was issued, but the attempt to clear the error bits before processing the command was not successful.
RMC70/150 and RMCTools User Manual 21 Invalid command parameter 7 The eighth command parameter had an invalid value. Refer to the commands documentation for details on valid ranges for each command parameter. 22 Invalid command parameter 8 The ninth command parameter had an invalid value. Refer to the commands documentation for details on valid ranges for each command parameter.
11 Troubleshooting Endpoint Behavior set to Cyclic (+2) or Zero-Velocity (+0). 34 Curve Add failed because the curve queue is full. Curve Add failed because the curve queue is full. The curve queue contains the curves that are currently being added to the curve store. The curve queue can handle up to 16 curves simultaneously. To prevent this error, wait for a curve to be completely added before adding another curve. 35 Command is not supported by this RMC75S/RMC75P hardware revision.
RMC70/150 and RMCTools User Manual These errors set the Command Modified error bit, if the error code occurred on a specific axis. No. Name 81 Requested position truncated at limit The Sync Stop (17) command should only be issued to an axis or axes on which that sync move is currently in progress. 82 Requested pressure/force truncated at limit The Ramp Pressure/Force (41) command requested a pressure/force outside the Positive or Negative Limits.
11 Troubleshooting One or more of the Auto Stop settings in this register were out of range. This means that either a reserved value was used or a Auto Stop setting that is not allowed for a particular error. For example, status only cannot be selected for No Transducer. 109 This value cannot be changed while in Run mode This error indicates that an attempt was made to change the number of available Tasks or enable/disable the Program Triggers while the controller is in RUN mode.
RMC70/150 and RMCTools User Manual dropped because too many sets were received simultaneously. The RMC70 allows up to 6 command sets (up to one command per axis in each set) to be queued up before losing a command set. The RMC150 allows up to 12 command sets (up to one command per axis in each set) to be queued up before losing a command set. One command set is processed (and thus, removed from the queue) per control loop.
11 Troubleshooting The simulator parameter settings resulted in an invalid simulator model. The simulator will not function without a valid model. See the Simulating Motion topic for details. 215 Model-based Filter Model Invalid, The feedback model settings resulted in an invalid model. The feedback model will not function without a valid model. See the modeling topic for details. 216 Internal Target Generator fault An internal target generator fault occurred.
RMC70/150 and RMCTools User Manual 227 Task Fault on Task n. This will occur if any of the following occur: an array index is out of range, a command is overwritten (which can occur if a step has commands with both explicitly-specified commanded axes and default commanded axis), or if an invalid Word Code is encountered (internal error). 228 Curve Add failed. Curve Add failed. This can be due to several reasons, such as the Data Format is not correct, or the Curve Store is full.
11 Troubleshooting 239 Image Area: Invalid command received. The value written to the Image Area Command register is not supported. Verify the value written to this register. 240 Image Area: Image downloaded out of sequence. The image was downloaded improperly. This can happen for the following reasons: • The Current Index register, if written at the start of each write, may have the wrong value. • The Image Data registers were not written to in sequential order.
RMC70/150 and RMCTools User Manual event log entry: 246 • Invalid Image Format The image downloaded appears to be corrupt or built by a later firmware edition. Verify that the image was downloaded properly and has not been corrupted in the PLC. • Restart Required to Apply this Image The Do Not Restart Controller (+16) option was used, but the image would change the axis definitions or loop time, and therefore requires restarting the controller in order to apply.
11 Troubleshooting Delta Technical Support Contact Information Phone: 360-254-8688 (24-hour emergency support available) Fax: 360-254-5435 Email: support@deltamotion.com Website: http://www.deltamotion.com RMC Return for Repair If you need to return the RMC for repair, please contact Delta prior to shipment for an RMA number. Returned RMCs must be packaged in static protection material and have the RMA number clearly marked on the outside of the package.
12.Index . .NET Assembly .............................................. 613 _ _Axis[]. .AccAOffset ................................................ 894 .AccAScale ................................................. 893 .AccBOffset ................................................ 894 .AccBScale .................................................. 893 .AccelFFwd ................................................. 962 .AccFFwdTerm ........................................... 872 .AccScale ...........................
RMC70/150 and RMCTools User Manual .OutputBits .................................................. 992 .OutputDeadband ........................................ 984 .OutputFilterFreq ........................................ 986 .OutputLimit ............................................... 987 .OutputScale ................................................ 987 .PFFilter ...................................................... 910 .PFIDOutput ................................................ 873 .PFModelDampFactor .
12 Index 9 90-30 PLC ...................................................... 562 A A Input Status Bit ........................................... 884 A Wire Break.................................................. 884 A Wire Break Status Bit ................................. 884 A2 Expansion Module .................................... 638 A2 Wiring ................................................. 1138 about ........................................................... 638 AA Module ...........................
RMC70/150 and RMCTools User Manual RMC70 AA Module ................................... 629 RMC70 AP2 Module .................................. 639 Analog (G) Module ........................................ 654 Wiring ....................................................... 1153 Analog (H) Module ........................................ 651 Wiring ....................................................... 1153 Analog Feedback ............................................ 191 Analog Input Registers ..............
12 Index Class I, Division 2 Compliance ...................... 684 Clear Discrete Output (61) Command ............ 833 Clear Faults (4) Command ............................. 690 Clear integrator ............................................... 822 CLHaltDecel ................................................. 1001 Clock .............................................................. 385 Closed Loop Control ........................................ 80 Closed Loop Halt............................................
RMC70/150 and RMCTools User Manual Phasing (34) ................................................ 741 PROGRAM Mode (99) ............................... 694 Quick Move Absolute (15) ......................... 715 Quick Move Relative (16) .......................... 717 Ramp Pressure/Force (Linear) (42)............. 791 Ramp Pressure/Force (Rate) (18)................ 788 Ramp Pressure/Force (S-Curve) (41) .......... 789 Read Register (111) .................................... 823 Rearm Plot (103)...............
12 Index CRV_INTERP_A Function ............................ 346 CRV_INTERP_V Function ............................ 346 CRV_INTERP_Y Function ............................ 346 CRV_LAST_X Function ................................ 348 CS/CJ PLCs .................................................... 572 CSP ................................................................. 431 CUL Compliance .................................. 684, 1127 CurAxis ..........................................................
RMC70/150 and RMCTools User Manual Direction Command Parameter (Rotary Axes) .................................................................... 101 Directional Gain Ratio .................................... 981 DirectOut (Axis Status Bits) ........................... 844 DirGainRatio .................................................. 981 Disable User Program..................................... 301 Disarm Home (51) Command ........................ 826 Disarm Registration (53) Command ...............
12 Index EtherNet/IP I/O Performance ...................... 460 Explicit Messaging ..................................... 464 Handling Broken EtherNet/IP Connections 454 Modicon ...................................................... 564 Multiple Connections .................................. 459 Omron ......................................................... 573 Premium ...................................................... 564 Quantum .....................................................
RMC70/150 and RMCTools User Manual FollowErr (Axis Error Bits)............................ 849 Following Error ...................................... 850, 855 Force Channel A, B Force .................................... 866 Differential .................................................... 72 Force A, B Scale ..................................... 917, 918 Force A,B Offset ............................................ 918 Force Control ..................................................
12 Index GrayCode (MDT/SSI Configuration Bits)...... 926 GSD File ......................................................... 480 H Halt Group Number ...................................... 1000 Halted (Axis Status Bits) ................................ 844 Halted status bit .............................................. 847 HaltGrpNo .................................................... 1000 Halts ................................................................. 74 about ......................................
RMC70/150 and RMCTools User Manual K Keyboard Shortcuts ........................................ 259 Knee Command Voltage ................................ 993 Knee Flow Percentage .................................... 993 L Labels ............................................................. 310 LabVIEW ....................................................... 562 Last Error Number .......................................... 855 LastErrNo ....................................................... 855 Latching ...
12 Index Model Gain Negative .................................. 913 Model Gain Positive ................................... 912 Model Natural Frequency ........................... 915 Model Order................................................ 911 Model Response .......................................... 916 Model Time Constant ................................. 914 ModGainNeg .................................................. 913 ModGainPos ...................................................
RMC70/150 and RMCTools User Manual Output Filter ................................................... 986 Output Limit ................................................... 987 Output Null (Simulator) ................................. 948 Output Saturated error bit ............................... 850 Output Scale ................................................... 987 Output Velocity .............................................. 873 Output Window ..............................................
12 Index PosErrorTolerance .......................................... 952 PosFrcLimit .................................................... 996 Position Error ......................................... 870, 952 Position Error Tolerance................................. 952 Position I-PD .................................................... 91 Position Offset ................................................ 889 Position PID ..................................................... 82 Position Registration .........
RMC70/150 and RMCTools User Manual Program Configuration ................................... 228 PROGRAM Mode (99) Command ................. 694 Program Monitor ............................................ 235 Program Timing ..................................... 257, 295 Program Triggers .................................... 231, 290 printing ........................................................ 266 Programming .................................................. 279 examples ..............................
12 Index Registration 1 Armed Status Bit ..................... 887 Registration 1 Latched Status Bit ................... 887 Registration 1 Position ................................... 883 Registration Armed Status Bits ...................... 884 RegX/Y Status Bits ........................................ 884 RegXIn (Encoder Status Bit) .......................... 884 RegY NegLim Input Status Bit ...................... 886 RegYIn (Encoder Status Bit) .......................... 884 Removing Commands ........
RMC70/150 and RMCTools User Manual Ethernet/IP I/O ............................................ 564 S-Curve Target Profile ................................... 997 Search ............................................................. 265 SecControlBits................................................ 979 SecCustomCounts .......................................... 868 SecCustomFBConfig ...................................... 942 SecFeedbackOK (Axis Status Bit) ................. 844 Secondary Control Register ...
12 Index Start Task (90) Command .............................. 830 Starting a User Program when the RMC turns on .................................................................... 379 Starting the RMC in Run Mode ........................ 54 Startup Procedure ...............................................7 State A and B Status Bits................................ 846 Statistics ......................................................... 395 Status Bar ......................................................
RMC70/150 and RMCTools User Manual Transition Rate (56) Command ...................... 783 Transition Rate (Prs/Frc) (64) Command ....... 805 TransOverflow (Auto Stop Configuration Bits) .................................................................... 998 TransOverflow (Axis Error Bits) .................... 849 Trapezoidal Target Profile .............................. 997 Tree menu ........................................................... 272 project ..................................................
12 Index Verify Results Window .................................. 257 Verifying User Programs ................................ 307 VFD ................................................................ 183 View/Change Modules ................................... 210 Viewing .......................................................... 216 Plots ............................................................ 216 Virtual Axes ..................................................... 71 Vista .............................