Pages

Sunday, March 24, 2013

MG995 memory refreshing old blog posts

Now I have googled my old blog posts (using keywords "tlfong01 TowerPro MG995) to refresh my memory 
on what did I do with MG995, some 3 years ago, ...


TowerPro MG995 specifications  2009年12月18日 下午5:25公開累計瀏覽次數 33
2


I fount it interesting to see an ATmel ATmega8L inside a perhaps MG995 servo.  But I guess this servo with a pot is still an analogue servo.  But I don't know how to define digital and analogue servo, though I am sure that digital servos should have feedback of position.  Perhaps I should look at HITEC's feedback position servo protocol.
I found that an expensive servo like Kondo HS2346 can cost AUD250, or HKD1,500.  Perhaps I should go look at its spec, to see how great it is to worth HKD1,500.  I noticed that those servos up to 10 times as expensive as TowerPro SG995 is still only up to twice as powerful about  a torque of 25 kgcm compared to TowerPro MG995's 11kgcm. 
I also note that one spec says MG995 has a torque of 10 kgcm at 4.8V, and 0.2sec / 60 degrees.  Perhaps I should use 5V for my tests and experiments.  Using 6V may give more torque, but high risk of damaging.  I also need to find the current for TowerPro MG995.
.END


TowerPro MG995 physical dimensions
2009年12月21日 下午4:15公開累計瀏覽次數 11

0
I found that there is no standard physical among the servos of various manufacturers.  For example, the Tednix's servo has holes that barely fit 4mm screws.  However, the 48mm x 10mm seems a pseduo standard.

.END

TowerPro MG996R vs MG995 2009年12月18日 下午5:51公開累計瀏覽次數 6http://blog.yahoo.com/_ZGD2MIDSBMSKHSUJW23LXRS2EQ/articles/8986
2
I found that 4.8V and 6.0V supply differs by 15% to 25% performance in torque and speed.  So I think for now I will use 4.8V, and later if I need more power and speed, then I will use 6.0V.  And I may also try MG996R if I need more accuracy and, if it is not too expensive.

Towerpro MG996R
This is essentially an upgraded version of the famous towerpro MG995 servo. It now has a redesigned PCB and IC controll system which makes it far more accurate. Its internal gearing and motor are also upgraded to improve dead bandwith and centering.
All specifications are the same as the previous model MG995, however this servo is far more accurate, and safe to use in aircraft which require precise servo movements and perfect centering.
Weight 55g
Dimension 40.7*19.7*42.9mm
Stall torque 9kg/cm(4.8V) 10.5kg/cm(6V)
Operating speed 0.17sec/60degree(4.8v) 0.14sec/60degree(6V)
Operating voltage 4.8-7.2V
Temperature range 0c_ 55c
Dead band width 5us

.END

TowerPro MG995 Servo Test with 7805 based 6V supply
2010年1月1日 下午10:05公開累計瀏覽次數 23
0
servo_7805_6v_power_supply_2010jan0101.jpg
I then used the MC7806 based 6V 2.2A power supply to measure the stall torque of MG995.  The results are good.  I found the stall torque is 30cm x 1Kg = 30 Kgcm, which is twice the specified torque.  The servo takes a current of 1.8A, and the 6.05V source drops to 6.02V.
Since one servo takes a maximum of 1.8A at 6V, a robot arm with 5 degrees of freedom means 5 servos and will need 1.8A x 5 = 9A.
I remember the S9 power supply's 12V output can supply up to 7A when the 12V drops to 9.5V.  So I think it is reasonable to use this 12V source to make a regulated voltage source of 6V and supply of 7A.
So next step is to DIY and 6V 7A power supply, for driving, hopefully up to 8 servos (assuming not all 8 servos are taking maximum 1.8A at the same time.
I have added a big 3A Ampere meter to the 7805 based 6V supply.  I am not adding a voltage at the same time, because I know the voltage won't drop that much if current is under 2A, and it is important to measure the current but not the voltage.
.END

Testing Futaba and TowerPro standard servos
2009年12月19日 下午3:13公開累計瀏覽次數 16
0
+

I thought I had gained enough experience on servos, and that I should not be content with the mini 9 gram servos and should try the standard servos like Futaba S3003 and TowerPro MG995.  But the tests on these bigger servos were total failures.  Only one of the bigger servos turns, with heavy overshoot in the ragne around 150 degrees.
I found that the same quick swing program runs very smoothly on the two small servos and a analog servo TedniX AS3630 Analog Servo.  I think there are something about the standard servos I missed out.  So I need to read the datasheets again.
I noticed that the TowerPro MG995 label says it is DIGI HIGH SPEED.  As I have read from the Futaba Digital Servo Tutorial, digital servo has a higher speed than analog.  So perhaps my HKD75 MG995 is indeed a digtial servo.  I need to check it out.

// ********************************************************************
// Function - Testing Servo Library
// Config - Arduino 0017 Decimilla 2008
// Author - TL Fong 2009dec18
// File - servo_test_03
// Date - 2009dec19hkt1356
// ********************************************************************
#define SERVO_SIGNAL_PIN 5
// *** TowerPro MG995 defines
#define CENTRE_SIGNAL 1500
#define CLOCKWISE_END_SIGNAL 2100
#define COUNTER_CLOCKWISE_END_SIGNAL 800
#define HOLD_TIME 500
// *** TowerPro 9g SG90 defines2009dec17
// #define CENTRE_SIGNAL 1500
// #define CLOCKWISE_END_SIGNAL 2400
// #define COUNTER_CLOCKWISE_END_SIGNAL 400
// #define HOLD_TIME 500
// *** Arduino ide 0017 defines 2009dec19
// #define Servo_VERSION           2      // software version of this library
// #define MIN_PULSE_WIDTH       544     // the shortest pulse sent to a servo
// #define MAX_PULSE_WIDTH      2400     // the longest pulse sent to a servo
// #define DEFAULT_PULSE_WIDTH  1500     // default pulse width when servo is attached
// #define REFRESH_INTERVAL    20000     // minumim time to refresh servos in microseconds
void servoPosition(int signalPin, int xDegree, int xCount)
  {
  int positionSignal;
  positionSignal = CLOCKWISE_END_SIGNAL - ((CLOCKWISE_END_SIGNAL - COUNTER_CLOCKWISE_END_SIGNAL) / 180) * xDegree;
  int i;
  for (i = 0; i < xCount; i++)
    {
    pinMode(signalPin, OUTPUT);     
    digitalWrite(signalPin, HIGH);
    delayMicroseconds(positionSignal);  
    digitalWrite(signalPin, LOW);
    delay(20);                     
    }         
  }   
void servoQuickSwing(int signalPin, long int xCount)
  {
  int i;
  for (i = 0; i < xCount; i++)
    {
    servoPosition(SERVO_SIGNAL_PIN,   0, 50);
    delay(500);
    servoPosition(SERVO_SIGNAL_PIN, 180, 50);
    }
  }
void servoSlowSwing(int signalPin, long int xCount)
  {
  int i, j, k;
  for (i = 0; i < xCount; i++)
    {
    for (j = 0; j < 180; j = j + 20);
      servoPosition(signalPin, j, 50);  
    delay(2000);    
    for (j = 180; j > 0; j = j - 20);
      servoPosition(signalPin, j, 50);  
    }
  }
void setup()
  {
  }
void loop()
  {
  // servoPosition(SERVO_SIGNAL_PIN,   0, 1000);
  // servoPosition(SERVO_SIGNAL_PIN, 150, 1000);
  // servoPosition(SERVO_SIGNAL_PIN, 180, 1000);
  // servoClockWiseEnd(SERVO_SIGNAL_PIN, 1000);
  // servoCounterClockWiseEnd(SERVO_SIGNAL_PIN, 1000);
  // servoSlowSwing(SERVO_SIGNAL_PIN, 1000);
  servoQuickSwing(SERVO_SIGNAL_PIN, 1000);
  }   

.END

Digital Servos 2009年12月18日 下午8:39公開累計瀏覽次數 16http://blog.yahoo.com/_ZGD2MIDSBMSKHSUJW23LXRS2EQ/articles/8989
1

I could not find a TowerPro MG995 spec with current rating.  So I goggled Futaba for one.  By chance I found Futaba taling about digital servo.  This is what I want to know.  So I happily read it and make a summary below.

Futaba Digital FET Servos
Over the last few years, servos have changed tremendously with size, rotational speeds and torque ever improving. The latest development, known as the ‘digital servo’, is yet another step forward. Digital servos have significant operational advantages over standard servos, even coreless
versions. but with these advantages also come minor disadvantages, and this fact file will try, in simplified terms, to explain the positives and negatives of Digital servos. It will also dispel some myths.
To start with, a ‘digital servo’ is the same as a standard servo, except for a microprocessor, which analyses the incoming receiver signals and controls the motor. It is incorrect to believe that digital servos differ drastically in physical design to standard ones. Digital servos have the same motors, gears and cases as standard servos and they also, most importantly, have a Feedback Potentiometer (Pot) just like their standard counterparts. Where a digital servo differs, is in the way it processes the incoming receiver information, and in turn controls the initial power to the servomotor, reducing the deadband, increasing the resolution and generating tremendous holding
power.
In a conventional servo at idle, no power is being sent to the servomotor. When a signal is then received for the servo to move, or pressure is applied to the output arm, the servo responds by sending power/voltage to the servomotor. This power, which is in fact the maximum voltage, is pulsed or switched On/Off at a fixed rate of 50 cycles per second, creating small ‘blips’ of power. By increasing the length of each pulse/blip of power, a speed controller effect is created, until full power/voltage is applied to the motor, accelerating the servo arm towards its new position.
In turn, as the servo positioning pot tells the servo’s electronics it is reaching its required position, the power blips are reduced in length to slow it down, until no power is supplied and the servomotor stops.
The ‘Standard Servo’ has custom logic chip and timing components with standard 30 strand lead.
The ‘Digital Servo’ has a Quartz crystal controlled microprocessor, FET amplifier and heavy duty 50 strand lead.
The 3 diagrams below each show two cycles of ‘on/off’ power pulses/blips. Diag.1 - is idle. Diag.2 - has a short time/pulse i.e. a low power command to the motor. Diag.3 - is a longer pulse, power ‘on’ for longer, more power.
As you can imagine, a quick blip of power ‘On’, followed by a pause, does not give the motor much incentive to turn, whereas leaving the power ‘On’ for a longer period of time does. This means that a small control movement, which in turn sends small initial pulses to the motor, is very ineffective, and that is why there is what is termed a ‘Deadband’, i.e. sluggish or virtually no
movement around the centre of a standard servo, in relation to a small Tx stick movement.
‧ First, it is able, via it’s microprocessor, to receive the incoming signal and apply preset parameters to that signal before sending its pulses of power to the servomotor. This means the length of the power pulse/blip, and therefore the amount of power sent out to activate the motor, can be adjusted by the microprocessors program to match its function requirements and therefore
optimize the servo's performance.
‧ The second, is that a digital servo sends pulses to the motor at a significantly higher frequency. This means that, as opposed to the motor receiving 50 pulses/sec., it now receives 300. Although the length of the pulses is reduced in a direct ratio to the higher frequency because the power
is being turned on/off to the motor more frequently, the motor has more incentive to turn. This also means that not only does the servomotor respond faster to the commands, but that increases or decreases in power for acceleration/deceleration are able to be transmitted to the servomotor
far more frequently. This gives a digital servo an improved deadband, a faster response, quicker and smoother acceleration/deceleration, and better resolution and holding power.
The Significant Operational Advantages of a Digital Servo.
The Distinct Advantages of a Digital Servo.
This is a comparison graph showing the deadband between two Futaba servos with the same specifications. As you can see the S9450 has a far smaller deadband and applies more power far earlier than the S9402.
Practically, this means that if you tried to move the S9450 servo arm, its opposition response would be significantly quicker, more power/voltage would be applied earlier, resulting in greater holding power/torque and more accurate positioning.
The downside to these significant advantages - ‘well, there’s got to be one’ - is power consumption. Naturally, with power being transmitted to the servomotor more frequently, together with increases in power being supplied to the motor earlier, the overall power consumption must go up.
However, with batteries in general gaining monthly in capacity for the same size and weight, increased current drain as a trade off for significantly better performance, is no longer a problem. The key point to remember with digital servos is to install the largest capacity battery that space/weight will allow.
Always install a battery monitor to check the operational capacity and, wherever possible, top up the charge before every flight, just to be sure. Digital servos are the future for model control, and anyone who has used them says the difference is so significant that they would never return to
standard servos, if there is a digital one available to fit the application. To quote turbine display pilot Steve Elias, ‘Digital servo response and precision is like flying on rails. After flying digital servos, analogue versions are like controlling custard’.
.END

Robot Arm with 4 degrees of freedom
2009年12月28日 上午10:25公開累計瀏覽次數 14
So I have placed the order of my RMB99 New Year 2010 Gift.  This is the cheapest 4DF robot arm I could find in TaoBao. 
I often hear the term "Degrees of Freedom", but I don't have a precise idea in my head what actually is a degree of freedom, and whether my little human flesh arm joint has infinite degrees of freedom, because I have the feeling that my arm with shoulder and upper/lower arm joins can turn any angle I wish.  I hope with this 4DF soild hard thing I am buying, I can have a solid understanding of the term "degrees of freedom".

4自由度 机器臂
技術參數:
1. 可以安裝輝盛的995(尺寸為40×20×36mm左右)標準舵機。
2. 本支架開模,數控機床製造,孔位元誤差為0.2mm,鈑金角度誤差為5度,鈑金彎位誤差為0.5mm,材料為2mm厚鋁合金,表面黑色氧化工藝,硬度適宜,品質輕,工藝精度高。
.END
.END

No comments:

Post a Comment