RHINO MOTION CONTROLS RMCS - 2303 Operating Manual

Dc servo drive 10v - 30v dc, 50w with ascii modbus

Advertisement

Quick Links

DC Servo Drive
10V - 30V DC, 50W with ASCII Modbus
RMCS – 2303
Operating Manual v1.0
1 |
P a g e

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the RMCS - 2303 and is the answer not in the manual?

Questions and answers

Subscribe to Our Youtube Channel

Summary of Contents for RHINO MOTION CONTROLS RMCS - 2303

  • Page 1 DC Servo Drive 10V - 30V DC, 50W with ASCII Modbus RMCS – 2303 Operating Manual v1.0 P a g e...
  • Page 2: Table Of Contents

    Contents Introduction – Salient Features ......................... 3 Technical specifications and Pin description ....................4 Drive and motor connections ..........................4 Modes of operation & Slave ID Addressing ....................6 Basics of servo drive ............................8 How to use the drive ............................9 Using PC Software .............................
  • Page 3: Introduction - Salient Features

    Introduction – Salient Features Rhino Motion Controls RMCS-2303 with UART ASCII is a high performance dc servo drive (10–30 V DC) designed for optimized operation of any DC Servo motors with quad encoder feedback. This is an amazing cost effective solution to provide closed loop servo control for various applications.
  • Page 4: Technical Specifications And Pin Description

    Technical specifications and Pin description Supply Voltage and Current Specification Units Comments Supply Voltage Volts DC Between +Ve and GND Phase Current Amps Peak 5 Amps per phase Pin description of the drive is as per below image: Pin No. Description Pin No.
  • Page 5 Drive & Motor Connection Motor Pin outs Drive Pin outs Motor Wire Color Pin No. Description Black VCC(5 V DC ) Brown +5VDC ENC_B(Encoder B) ENC_B/Hall W ENC_A(Encoder A) Orange ENC_A/Hall U M-( Motor-) Yellow Hall U M+( Motor+) Green Motor- / V Motor+ / U Power Supply Pin outs...
  • Page 6: Modes Of Operation & Slave Id Addressing

    Modes of Operation The drive can be configured in the following three modes 1. Mode 0 Analog speed control mode : In this mode the speed of the Rhino DC Servo motor can be controlled by an externally connected Potentiometer. Speed can be increased or decreased manually based on requirement using potentiometer.
  • Page 7 Slave ID Addressing Multiple drives with different slave addresses can be used with a single controller on single UART bus. For this all drives should have a unique Slave Address. Using the GUI software or Modbus commands, the slave ID can be set from 1 to 247.
  • Page 8: Basics Of Servo Drive

    Basics of a servo drive This is a servo drive to work with quad incremental encoder and dc motor. When the drive starts up the encoder position is set as 0. With reference to the start position drive will always have a 32 bit number keeping track of movement.
  • Page 9: How To Use The Drive

    How to use the drive: The drive needs to be configured to run in any one of the three modes described in the above section to make a closed loop control system. The drive can be configured using a PC with GUI software / Modbus controller / Arduino Board.
  • Page 10: Using Pc Software

    Software Installation Software is available here https://robokits.co.in/downloads/Rhino%20DC%20Servo%202303%20Config%20Setup.exe Download and run the setup executable. Click Next button • Verify installation destination and click Next • 10 | P a g e...
  • Page 11 Click Finish when Installation Successful message shows up. • Now, Software is ready to use. find the shortcut on desktop and open the software. Once the Software is installed connect USB-UART as per shown in below figure. 11 | P a g e...
  • Page 12: Com Port Selection

    COM port Selection Select COM Port for USB-UART , then click on "Connect" button. You may look in 'Devices and Printers' or 'Device Manager' for specific serial port of your device. The software supports serial ports up to COM32 only. If your device's port number is higher you can change it in - Device Manager >...
  • Page 13: Selection Of Modbus Slave Address

    Selection Of Modbus Slave Address There are two ways to select Modbus Slave address. 1. If Slave address is already known, it can be directly selected from drop box. 2. If slave address is not known or multiple drives with multiple addresses are connected on serial bus, click search button.
  • Page 14: Parameters - Read, Write, Save & Reset

    Parameters READ PARAMETERS "Read Parameters" is used to read current parameters of drive. SET A PARAMETER Pressing 'Enter' on text box will change the parameter in drive but it will not be saved permanently. • 'Write Parameters' button must be clicked to save all parameters permanently. Set Position Proportional gain, Velocity Feed Forward gain and Position Integral Gain as per •...
  • Page 15 RESET PARAMETERS To reset the drive to default configuration click 'Reset Parameters' button. This will set all parameters to default values. When button is clicked software will ask for confirmation. Click on "Yes" to reset the drive. After Clicking on 'Yes' if reset is successful confirmation message will be shown.
  • Page 16: Control Modes

    Control Modes Motor can be run in 3 different modes - 0 : Analog Mode, 1 : Digital Speed Mode, 2 : Position Mode Mode 0 - Analog Control Mode In this mode drive can be controlled using an external potentiometer or analog voltage input. As this is a close loop drive, high torque (up to the maximum torque motor can provide) is available even at low speed.
  • Page 17 Drive to PC/Analog Connection CP2102 Pin outs Drive Pin outs Description Pin No. Voltage Divider Pin outs 3.3V Signal Potentiometer Pin outs 5 V DC Output Signal 3.3 V DC Set drive to Analog Control Of Motor in Software: By default the drive is in Analog mode. However if the mode is changed to some other then it can be set •...
  • Page 18: Digital Speed Control Mode

    DIGITAL SPEED CONTROL MODE In this mode the drive works in speed mode. It tries to reach and maintain the speed as per set parameter. • The speed can vary depending upon load and gains set. • Make sure that the set speed is always less than the motor can actually reach, otherwise the drive can give •...
  • Page 19 b) In this mode speed of motor(rpm) can be controlled by changing value from 0-65535. 1. Speed can be increased and decreased using "+" and "-" respectively. 2. Enable Motor : Once speed is set click on "Enable Motor" to run motor on set speed. 3.
  • Page 20: Position Control Mode

    POSITION CONTROL MODE The position control mode allows to go to absolute position with reference to 0 as start position. Current position can be set to 0 at any point of time. The drive also manages the speed and acceleration/deceleration as per set parameter while responding to any change in set position.
  • Page 21 However as the motor is geared motor, the ratio of the gear box determines the rotation of the output shaft of the motor for each rotation of the base motor. output shaft(rpm) = base motor(rpm) / gear ratio counts per rotation = counts per rotation X gear ratio for output shaft of base motor For example, A motor of 200 RPM with base motor of 18000 rpm, the gear ratio is 90.
  • Page 22 count, giving -4000 would move the motor in other direction to achieve -4000 count. Feedback section shows the actual current position and speed of motor. RELATIVE POSITION Relative position is a software function, the software takes current position as reference and moves motor to the count typed in textbox with reference to current position.
  • Page 23: Modbus Registers

    Modbus Registers Register Function Range / Default Details Command in value in HEX HEX (Decimal) (Decimal) E-stop 0700 (1792) Stops motion and stops giving power to motor Stop 0701 (1793) Stops motion, motor maintains the position Set Home Position 0800 (2048) Set current encoder count to 0 Restart Drive 0900 (2304)
  • Page 24: Brief Description Of All Registers

    Speed Command for base 0000 - FFFF 0800 (2048) If gearbox is attached output Motor in RPM (0 - 65535) RPM will be different. LSB of Position Command 0000 - FFFF 0000 (0) Send Position Command, motion (0 - 65535) is affected only when register 18 MSB of Position Command 0000 - FFFF...
  • Page 25 Register 2,3: Control and Mode byte (Read - Write) Register 3 is allocated for mode. as described earlier there are three different mode: Analog control(00), Digital Speed Control(01) and Position Control(02). Register 2 is control byte which is allocated for kind of motion. For example, to stop motor in Digital control mode while it is running in reverse direction 0x09 is to be set to register 2.
  • Page 26 Example 1. Desired position is 250000 then convert 250000 in hex and which is 0x3D090. These registers are 16 bit so send LSB of Hex value(0xD090) in register 16 and MSB of Hex value(0x0003) in register 18. Example.2. Desired position is -1000 then calculate counts as described below: Position = 4294967296 -1000 = 4294966296 Then convert count value in Hex which is 0xFFFFFC18.
  • Page 27: Control Through Microcontroller (Arduino)

    Control Through Arduino Microcontroller RMCS2303 drive can be controlled by any microcontroller, PLC or PC software capable of communicating on ASCII Modbus protocol. Following section shows how to use provided library for Arduino microcontroller. Hardware Connection: DRIVE-ARDUINO MEGA CONNECTION DRIVE ARDUINO TXn (n=1,2,3 for Arduino mega2560) RXn (n=1,2,3 for Arduino mega2560)
  • Page 28: Library Installation

    Library Installation: Download RMCS-2303 Arduino library from http://robokits.co.in/downloads/RMCS2303drive_Arduino_Library.zip In Arduino IDE got to menu - Sketch > Include Library > Add .ZIP Library Choose the downloaded zip file. You can see confirmation if library import is successful Open examples from Menu File > Examples > RMCS-2303_DC_Servo Set parameters, make sure you choose parameters, serial port, slave id properly before uploading the code to Arduino board.
  • Page 29: Description Of All Functions

    Functions for position control mode rmcs.Absolute_position(slave_id,-10000); //Move to absolute position -10000 long int b=rmcs.Position_Feedback(slave_id);//Take position feedback from drive Serial.println(b); Special Functions rmcs.SAVE(slave_id); //Save all parameters rmcs.RESET(slave_id); //Reset drive to default parameters, rmcs.ESTOP(slave_id); //E-stop the drive rmcs.STOP(slave_id); //Stop motion rmcs.SET_HOME(slave_id); //Set current position to 0 rmcs.Restart(slave_id);...
  • Page 30 rmcs.begin(&Serial3,9600); //uncomment if using hardware serial port for mega2560:Serial1,Serial2,Serial3 and set baudrate This function passes the pointer of serial port to be used. It's used to initialize serial port and set baudrate. Serial1 : rmcs.begin(&Serial1,9600); Serial2 : rmcs.begin(&Serial2,9600); Serial3 : rmcs.begin(&Serial3,9600); rmcs.begin(&myserial,9600);...
  • Page 31 rmcs.Enable_Digital_Mode(slave_id,1); Enable motor in digital mode with forward or reverse direction. 0 is forward (encoder count +) and 1 is reverse (encoder count -). Forward : rmcs.Enable_Digital_Mode(slave_id,0); Reverse: rmcs.Enable_Digital_Mode(slave_id,1); rmcs.Speed_Feedback(slave_id); This function returns the current speed of motor in long integer. Speed less than 0 is received when motor is moving in reverse direction.
  • Page 32 Special Functions: rmcs.SAVE(slave_id); This function will save all written parameters in drive. rmcs.RESET(slave_id); This function will reset all the parameters and set all parameters at default value. rmcs.ESTOP(slave_id); This function will stop motor and cut off power from drive to motor. rmcs.STOP(slave_id);...

Table of Contents