Difference between revisions of "Metal DC Geared Motor w/Encoder CQGB37Y001"

From CQRobot-Wiki
Jump to: navigation, search
(SPECIFICATION)
(Created page with " right |thumb|400px|6V/12V Metal DC Geared Motor w/Encoder-CQRDJ-GL =='''INTRODUCTION'''== This gearmotor is a powerful '''12V/6V''' br...")
 
(56 intermediate revisions by 2 users not shown)
Line 1: Line 1:
[[File:Motor1.jpg| right |thumb|400px|6V/12V Metal DC Geared Motor w/Encoder-CQRDJ-GL]]
+
[[File:DC Geared Motor CQRobot-1.jpg| right |thumb|400px|6V/12V Metal DC Geared Motor w/Encoder-CQRDJ-GL]]
  
 
=='''INTRODUCTION'''==
 
=='''INTRODUCTION'''==
*'''Supports 6V and 12V Operating Voltage.'''
+
This gearmotor is a powerful '''12V/6V''' brushed DC motor with a '''6.25:1/10:1/18.8:1/30:1/43.8:1/56.3:1/70:1/90:1/131.3:1/168.8:1/210:1/270:1/393.8:1/450:1/506:1/630:1/810:1''' metal gearbox and an integrated quadrature encoder that provides a resolution of 64 counts per revolution of the motor shaft, which corresponds to 5760 (90:1) counts per revolution of the gearboxot is output shaft. These units have a 16 mm-long, 6 mm-diameter D-shaped output shaft.
*This is metal DC geared motor w/Encoder, Operating voltage is 6V-12V. for Projects Such as Robot, Custom Servo, Arduino and 3D Printers.
+
When the working voltage of the DC gear motor is '''12V''', the motor rotation speed is '''11,000''' rpm before the motor is decelerated. When the working voltage of the DC gear motor is '''6V''', the motor rotation speed is '''5500''' rpm before the motor is decelerated.
  
*The rear of the motor is equipped with a dual channel Holzer effect encoder, AB dual output, single circuit per cycle pulse 16CPR, double down the road, a total output of 64CPR.
+
{|-
 
+
|[[File:CQGB37Y001-771.jpg |left|770px]]
*These units have a 0.61 inch long, 6 mm(0.24 inch)-diameter D-shaped output shaft. This motor is intended for use at 12V, though the motor can begin rotating at voltages as low as 1V.
+
|}
  
*The face plate has six mounting holes evenly spaced around the outer edge threaded for M3 screws. These mounting holes form a regular hexagon and the centers of neighboring holes are 15.5 mm(0.61 inch) apart.
+
'''Note'''
  
'''NOTE'''
+
Stalling is likely to damage the gearmotor. Stall parameters come from a theoretical extrapolation of performance at loads far from stall. As the motor heats up, as happens as it approaches an actual stall, the stall torque and current decrease.
  
'''Do not screw too far into the mounting holes as the screws can hit the gears. CQRobot Manufacturer recommends screwing no further than 3mm (1/8 inch) into the screw hole.'''
+
Do not screw too far into the mounting holes as the screws can hit the gears. CQRobot Manufacturer recommends screwing no further than 3mm (1/8 inch) into the screw hole.
 
----
 
----
  
Line 22: Line 22:
 
* Encoder Resolution: 64CPR
 
* Encoder Resolution: 64CPR
  
'''Metal DC Geared Motor'''
+
{|-
 +
|[[File:CQGB37Y001-772.jpg |left|1200px]]
 +
|}
 +
----
 +
{|-
 +
|[[File:CQGB37Y001-773.jpg |left|1200px]]
 +
|}
 +
----
 +
'''Motor Size'''
 +
{|-
 +
|[[File:CQGB37Y001-7751.jpg |left|1200px]]
 +
|}
 +
----
 +
'''Metal Bracket Size'''
 +
{|-
 +
|[[File:CQGB37Y001-776.jpg |left|1200px]]
 +
|}
 +
----
 +
'''Connect the Renderings'''
  
 
{|-
 
{|-
|[[File:Motor7.jpg |left|600px]]
+
|[[File:Motor5.jpg |left|600px]]
|[[File:Motor12.jpg |none|600px]]
 
 
|}
 
|}
 
+
----
 
'''Encoder Diagram'''
 
'''Encoder Diagram'''
  
 
Diagram for Arduino UNO
 
Diagram for Arduino UNO
 
[[image:GLDJ-6.jpg|thumb|300px| center]]
 
[[image:GLDJ-6.jpg|thumb|300px| center]]
 +
'''''Interrupt Port with Different Board'''''
  
===='''''Interrupt Port with Different Board===='''''
+
'''''Notcie:''''' attachInterrupt()
 
 
'''''Notcie:'''''attachInterrupt()
 
 
[[image:CQR-7.jpg|thumb|600px|center]]
 
[[image:CQR-7.jpg|thumb|600px|center]]
 
For example,with arduino UNO board, you want to use interrupt port 0(int.0). You should connect digital pin 2 with the board. So, the
 
For example,with arduino UNO board, you want to use interrupt port 0(int.0). You should connect digital pin 2 with the board. So, the
 
following code is only used in UNO and Mega2560. If you want to use arduino Leonardo or Romeo, you should change digital pin 3
 
following code is only used in UNO and Mega2560. If you want to use arduino Leonardo or Romeo, you should change digital pin 3
 
instead of digital pin 2.
 
instead of digital pin 2.
See the link for detail http://arduino.cc/en/Reference/AttachInterrupt
+
 
 +
'''See the link for detail''' http://arduino.cc/en/Reference/AttachInterrupt
  
 
'''Encoder Sample Code'''
 
'''Encoder Sample Code'''
Line 94: Line 111:
 
   else  duration--;
 
   else  duration--;
 
}
 
}
 
=='''Encoder Sample Code'''==
 
 
<pre style="color:blue">
 
 
//The sample code for driving one way motor encoder
 
const byte encoder0pinA = 2;//A pin -> the interrupt pin 0
 
const byte encoder0pinB = 4;//B pin -> the digital pin 4
 
byte encoder0PinALast;
 
int duration;//the number of the pulses
 
boolean Direction;//the rotation direction
 
 
 
void setup()
 
 
  Serial.begin(57600);//Initialize the serial port
 
  EncoderInit();//Initialize the module
 
}
 
 
void loop()
 
{
 
  Serial.print("Pulse:");
 
  Serial.println(duration);
 
  duration = 0;
 
  delay(100);
 
}
 
 
void EncoderInit()
 
{
 
  Direction = true;//default -> Forward 
 
  pinMode(encoder0pinB,INPUT); 
 
  attachInterrupt(0, wheelSpeed, CHANGE);
 
}
 
 
void wheelSpeed()
 
{
 
  int Lstate = digitalRead(encoder0pinA);
 
  if((encoder0PinALast == LOW) && Lstate==HIGH)
 
  {
 
    int val = digitalRead(encoder0pinB);
 
    if(val == LOW && Direction)
 
    {
 
      Direction = false; //Reverse
 
    }
 
    else if(val == HIGH && !Direction)
 
    {
 
      Direction = true;  //Forward
 
    }
 
  }
 
  encoder0PinALast = Lstate;
 
 
  if(!Direction)  duration++;
 
  else  duration--;
 
}
 
 
----
 
 
=='''DISPLAY'''==
 
{|-
 
|[[File:Motor2.jpg |left|300px]]
 
|[[File:Motor3.jpg |none|300px]]
 
|[[File:Motor4.jpg |none|300px]]
 
|}
 
----
 
{|-
 
|[[File:Motor4.jpg |left|300px]]
 
|[[File:Motor10.jpg |none|300px]]
 
|[[File:Motor6.jpg |none|300px]]
 
|}
 
----
 
{|-
 
|[[File:Motor5.jpg |left|300px]]
 
|[[File:Motor8.jpg |none|300px]]
 
|[[File:Motor9.jpg |none|300px]]
 
|}
 
----
 

Latest revision as of 08:13, 17 October 2020

6V/12V Metal DC Geared Motor w/Encoder-CQRDJ-GL

INTRODUCTION

This gearmotor is a powerful 12V/6V brushed DC motor with a 6.25:1/10:1/18.8:1/30:1/43.8:1/56.3:1/70:1/90:1/131.3:1/168.8:1/210:1/270:1/393.8:1/450:1/506:1/630:1/810:1 metal gearbox and an integrated quadrature encoder that provides a resolution of 64 counts per revolution of the motor shaft, which corresponds to 5760 (90:1) counts per revolution of the gearboxot is output shaft. These units have a 16 mm-long, 6 mm-diameter D-shaped output shaft. When the working voltage of the DC gear motor is 12V, the motor rotation speed is 11,000 rpm before the motor is decelerated. When the working voltage of the DC gear motor is 6V, the motor rotation speed is 5500 rpm before the motor is decelerated.

CQGB37Y001-771.jpg

Note

Stalling is likely to damage the gearmotor. Stall parameters come from a theoretical extrapolation of performance at loads far from stall. As the motor heats up, as happens as it approaches an actual stall, the stall torque and current decrease.

Do not screw too far into the mounting holes as the screws can hit the gears. CQRobot Manufacturer recommends screwing no further than 3mm (1/8 inch) into the screw hole.


SPECIFICATION

Motor Encoder

  • Encoder Operating Voltage: 3.3V - 24V
  • Encoder Type: Hall (Incremental Type)
  • Encoder Resolution: 64CPR
CQGB37Y001-772.jpg

CQGB37Y001-773.jpg

Motor Size

CQGB37Y001-7751.jpg

Metal Bracket Size

CQGB37Y001-776.jpg

Connect the Renderings

Motor5.jpg

Encoder Diagram

Diagram for Arduino UNO

GLDJ-6.jpg

Interrupt Port with Different Board

Notcie: attachInterrupt()

CQR-7.jpg

For example,with arduino UNO board, you want to use interrupt port 0(int.0). You should connect digital pin 2 with the board. So, the following code is only used in UNO and Mega2560. If you want to use arduino Leonardo or Romeo, you should change digital pin 3 instead of digital pin 2.

See the link for detail http://arduino.cc/en/Reference/AttachInterrupt

Encoder Sample Code

//The sample code for driving one way motor encoder const byte encoder0pinA = 2;//A pin -> the interrupt pin 0 const byte encoder0pinB = 4;//B pin -> the digital pin 4 byte encoder0PinALast; int duration;//the number of the pulses boolean Direction;//the rotation direction


void setup() {

 Serial.begin(57600);//Initialize the serial port
 EncoderInit();//Initialize the module

}

void loop() {

 Serial.print("Pulse:");
 Serial.println(duration);
 duration = 0;
 delay(100);

}

void EncoderInit() {

 Direction = true;//default -> Forward  
 pinMode(encoder0pinB,INPUT);  
 attachInterrupt(0, wheelSpeed, CHANGE);

}

void wheelSpeed() {

 int Lstate = digitalRead(encoder0pinA);
 if((encoder0PinALast == LOW) && Lstate==HIGH)
 {
   int val = digitalRead(encoder0pinB);
   if(val == LOW && Direction)
   {
     Direction = false; //Reverse
   }
   else if(val == HIGH && !Direction)
   {
     Direction = true;  //Forward
   }
 }
 encoder0PinALast = Lstate;

 if(!Direction)  duration++;
 else  duration--;

}