Testprog. RC-Servo

Robot, CNC, Pneumatik, Hydraulik, mm
Användarvisningsbild
SeniorLemuren
Inlägg: 8424
Blev medlem: 26 maj 2009, 12:20:37
Ort: Kristinehamn

Testprog. RC-Servo

Inlägg av SeniorLemuren »

Fick ett par små RC-servon av en kompis. Jag ville testa om dom funkade så jag slängde ihop en liten programsnutt i C till en PIC16F887.

Har sökt info om servona (Aristo-Craft HS-300CW) på Google men inte hittat någon användbar info.

Kablarna är tre till antal. En svart, en röd, och en gul. De flesta små RC-servon verkar för det mesta ha röd till plus och svart till minus (3-6 V) samt puls in på gul och så har jag kopplat. (5V till röd och svart, gul direkt till PORT RC1).

Pulslängd verkar vara någonstans i häradet 0,6 till 2.4 mS därefter paustid 20 mS. Paustiden säjs inte vara så kritisk. Har provat med lite olika värden på tiderna men servona rör sig inte ur fläcken. Däremot blev dom lite småvarma efter en stund.

Vad gör jag för fel?

Kod: Markera allt

// Glcd module connections
char GLCD_DataPort at PORTD;

sbit GLCD_CS2 at RB0_bit;
sbit GLCD_CS1 at RB1_bit;
sbit GLCD_RS  at RB2_bit;
sbit GLCD_RW  at RB3_bit;
sbit GLCD_EN  at RB4_bit;
sbit GLCD_RST at RB5_bit;

sbit GLCD_CS2_Direction at TRISB0_bit;
sbit GLCD_CS1_Direction at TRISB1_bit;
sbit GLCD_RS_Direction  at TRISB2_bit;
sbit GLCD_RW_Direction  at TRISB3_bit;
sbit GLCD_EN_Direction  at TRISB4_bit;
sbit GLCD_RST_Direction at TRISB5_bit;
// End Glcd module connections

void main() {
  ANSEL  = 0;
  ANSELH = 0;
  C1ON_bit = 0;
  C2ON_bit = 0;
  TRISA = 0;
  PORTA = 0;
  TRISB = 0;
  PORTB = 0;
  TRISC = 0;
  PORTC = 0;
  //************* Graphic LCD  ********************
  Glcd_Init();                                   // Initialize GLCD
  Glcd_Fill(0x00);                               // Clear GLCD
  Glcd_Set_Font(Font_Glcd_Character8x7, 8, 7, 32);    //font
  Glcd_Write_Text("Test RC_Servo", 0, 0, 2);         // Write string  
  //**************** PWM **************************
  do {
     RC1_bit = 1;
     Delay_uS(600) ;
     RC1_bit = 0;
     Delay_mS(20);
   }while (1) ;
  }
Användarvisningsbild
papabear
Inlägg: 834
Blev medlem: 14 mars 2004, 03:27:12
Ort: Eskilstuna
Kontakt:

Re: Testprog. RC-Servo

Inlägg av papabear »

Jag har inte riktigt koll på historian, men jag tror det är så att Aristo-Craft bytte namn till HiTech, HS-300 är ett sk standardservo.
Pulslängden ska vara 1,5 ms (mittläge) +/- 0,5ms (höger/vänster ändläge), plus 20ms paus som du säger.
Användarvisningsbild
SeniorLemuren
Inlägg: 8424
Blev medlem: 26 maj 2009, 12:20:37
Ort: Kristinehamn

Re: Testprog. RC-Servo

Inlägg av SeniorLemuren »

Får nog plocka fram oscilloskopet i morgon. :humm:
Användarvisningsbild
Glenn
Inlägg: 36685
Blev medlem: 24 februari 2006, 12:01:56
Ort: Norr om Sthlm
Kontakt:

Re: Testprog. RC-Servo

Inlägg av Glenn »

olika servon är olika känsliga mot fel pauslängd dock.

Men färgerna på kabeln är ofta olika, kolla hur stiften sitter i kontakten istället.
Användarvisningsbild
SeniorLemuren
Inlägg: 8424
Blev medlem: 26 maj 2009, 12:20:37
Ort: Kristinehamn

Re: Testprog. RC-Servo

Inlägg av SeniorLemuren »

Dom sitter som på bilden, men det säger mig ingenting?
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Användarvisningsbild
PeterH
Inlägg: 8640
Blev medlem: 15 mars 2006, 15:57:10
Ort: Gävle/Valbo

Re: Testprog. RC-Servo

Inlägg av PeterH »

Tips: Icecap har en färdig kod på sin "freebies" sida för att styra upp till 8 servon från en PIC.

Edit: var visst styrning från serieporten på en dator via en PIC...
Användarvisningsbild
papabear
Inlägg: 834
Blev medlem: 14 mars 2004, 03:27:12
Ort: Eskilstuna
Kontakt:

Re: Testprog. RC-Servo

Inlägg av papabear »

SeniorLemuren skrev:Dom sitter som på bilden, men det säger mig ingenting?
minus
plus
signal


Jag tror det är mina GWS-servon som har brun istället för svart, sen har jag även sett vit istället för gul.
Nu för tiden brukar väl alltid plus sitta i mitten så att inget brinner om man skulle vända på kontakten, men jag vet att det iaf fanns (kanske finns) mottagare som hade plus på ena sidan.
Användarvisningsbild
SeniorLemuren
Inlägg: 8424
Blev medlem: 26 maj 2009, 12:20:37
Ort: Kristinehamn

Re: Testprog. RC-Servo

Inlägg av SeniorLemuren »

Har kollat signalen ut till servot. Jag tycker den ser Ok ut. Kan det vara så att den skall vara 0 till -5V i stället för 0 till +5V?

Annars får man nog konstatera att dom är kass. Dom har legat en herrans massa år i ett garage, så tidens tand kanske har gjort sitt jobb.
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Användarvisningsbild
Icecap
Inlägg: 26645
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Re: Testprog. RC-Servo

Inlägg av Icecap »

Signalen är en gammal "standard". Och den kör mellan 0 (vilo) och VDD (puls).

Men jag tycker att dina pulser verkar ganska långa, mittpunkt ska ju vara 1,5ms och ytterställningarna ska vara 1,0ms och 2,0ms. Om jag inte ser fel på skop-bilden har du 2ms eller mer.

Om det är fler servon kan jag acceptera att ett är trasigt men fler i samma "gäng" låter osannolikt.
Användarvisningsbild
SeniorLemuren
Inlägg: 8424
Blev medlem: 26 maj 2009, 12:20:37
Ort: Kristinehamn

Re: Testprog. RC-Servo

Inlägg av SeniorLemuren »

På den bild som visar signalen hade jag inställningen 2.4 mS, men jag har testat allt mellan 0,9 och uppåt. Jag har även testat olika värden på Pulse Cycle.

Spänningsmatningen (2 st 7905) är separat till µC resp servomodul, med gemensam jord. Signalen är tagen från RC-servots kontakt, svart och gul kabel.

Dom är helt stendöda båda två.

Spec. för HS-300 - Standard Servo:
Pulse Cycle: 20 ms
Pulse Width: 900-2100 µs
Gimbal
Inlägg: 8673
Blev medlem: 20 april 2005, 15:43:53

Re: Testprog. RC-Servo

Inlägg av Gimbal »

Kan du vrida dom för hand? Utan spänning på alltså.
Användarvisningsbild
SeniorLemuren
Inlägg: 8424
Blev medlem: 26 maj 2009, 12:20:37
Ort: Kristinehamn

Re: Testprog. RC-Servo

Inlägg av SeniorLemuren »

Inte direkt på utgående axel, men den är ju utväxlad ganska kraftigt. Jag har däremot pillat isär den och kan lätt snurra på axeln direkt på motorn.

Jag kollade just med den jag fick servona av och han upplyste mig om att de legat i ett kallgarage i mer än 30 år. De fungerade då. :)
Användarvisningsbild
Icecap
Inlägg: 26645
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Re: Testprog. RC-Servo

Inlägg av Icecap »

Sp. reg 7905??? Kör du med negativ spänningsmatning?
Användarvisningsbild
SeniorLemuren
Inlägg: 8424
Blev medlem: 26 maj 2009, 12:20:37
Ort: Kristinehamn

Re: Testprog. RC-Servo

Inlägg av SeniorLemuren »

Felskrivning. Kör med 7805, men 8 och 9 ligger nära varandra när man har korvfingrar. :D
Användarvisningsbild
Icecap
Inlägg: 26645
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Re: Testprog. RC-Servo

Inlägg av Icecap »

OK, jag var lite fundersam...

Men du skrev ju att de blev varma när du kör hög PRF, alltså måste de reagerar på något vis. Alltså måste du testa olika pulsbreddar.
Skriv svar