En servomotor är en del av ett servostyrningssystem. Servomotorn kan utföra både roterande och linjär rörelse, och kan i grund och botten vara ett flertal olika sorters motor, till exempel en DC-motor, asynkronmotor, eller synkronmotor. Det alla servomotorer har gemensamt är att de använder ett slutet återkopplingssystem för att med mer exakthet styra motorns position. Motorn är kopplad till en annan del i servosystemet, som både kontrollerar motorn och får feedback från motor (position, hastighet, m.m.) för att med bättre precision styra motorn.
Tack vare servomotorns höga precision är den det optimala valet där det krävs små rörelser. Exempelvis sitter det servomotorer i solpaneler för att panelen alltid ska vara riktad mot solen och därmed maximera energiutvinningen. Liksom solpanelerna behöver antenner, såsom de som brukas av NRAO, också servomotorer för att alltid vara riktade åt rätt håll. Även teleskop nyttjar servomotorns precisa rörelser. Servomotorn används också för robotar och speciellt nyttiga är de i industrirobotar där det behövs ofantlig precision för montering. En annan fabrikstillämpning för servomotorn är transportband där det ingår flera steg. Detta motiveras också av servomotorns precision samt dess möjlighet att accelerera snabbt. Andra produktionstillämpningar är alla möjliga typer av metallarbete samt träbearbetning och CNC-maskiner. Detaljarbetet i dessa tillämpningar är avgörande och därför behövs servomotorn och dess precision. Motorn har också användningsområden inom militären i robotar och i detonationer.
Eftersom servomotorn är en version av en annan motor beror dess prestanda mycket på vilken sorts motor man valde att skapa en servomotor av. Det som skiljer servomotorerna från andra motorer är främst att de använder ett stängt återkopplingssystem, som tillåter större precision än andra motorer. På grund av feedback-systemet är motorn dock väldigt stabil, och kan hålla sig på samma nivå av prestanda under många förhållanden.
På grund av att servomotorn är så mångsidig, och har ett så brett användningsområde varierar priserna kraftigt. En servomotor för hobbybruk kan kosta så lite som 39 kr (Microservo SG90), och motorer för industriellt bruk kan kosta mellan 5 000 och 10 000 kr (Siemens 800W Servomotor, Omron R88M-G20030H-S2). I vissa fall kan motorn kosta upp till 30 000 kr (Nidec Unimotor Flexi) beroende på vilken kvalitet man är ute efter.
http://www.tigertek.com/servo-motor-resources/common-servo-motor-applications.html
https://www.electronics-tutorials.ws/systems/closed-loop-system.html
https://www.youtube.com/watch?v=hg3TIFIxWCo
Det är ingen inlämning på den här laborationen men du ska ändå anteckna resultat och reflektera så att du skapar ett arbetsdokument. Du kommer att ha nytta v dina anteckningar i den framtida rapporten på slutprojektet. Dels genom att du kan använda delar av resultaten och dels genom att du tränat tekniskt skrivande.
Du ska styra olika servon med en Arduino.
Ta reda på fakta från datablad
How Servo Motors Work & How To Control Servos using Arduino
eller
Arduino: Servo library
Instructables: Arduino Servo Motors
Frågor:
Använd dig av en stegmotor, ett vridmotstånd och skapa ett servo som övarför dina vridrörelser till servot som utför en ny vridrörelse.
Koppla dem till Arduinon och lägg in fungerande kod.
Koppla gärna ihop det med någon mekanik.
Lista: (klicka expandera till höger)
#include <Servo.h> Servo myservo; // create servo object to control a servo int potpin = 0; // analog pin used to connect the potentiometer int val; // variable to read the value from the analog pin void setup() { myservo.attach(9); // attaches the servo on pin 9 to the servo object // initialize digital pin 13 as an output. pinMode(13, OUTPUT); } // the setup function runs once when you press reset or power the board // the loop function runs over and over again forever void loop() { digitalWrite(13, HIGH); // turn the LED on (HIGH is the voltage level) delay(1000); // wait for a second digitalWrite(13, LOW); // turn the LED off by making the voltage LOW delay(1000); // wait for a second val = analogRead(potpin); // reads the value of the potentiometer (value between 0 and 1023) val = map(val, 0, 1023, 0, 180); // scale it to use it with the servo (value between 0 and 180) myservo.write(val); // sets the servo position according to the scaled value delay(15); }
SpringRC SM-S2309S - Micro Analog Servo
Arduino Knob
Kopppla servot till en dynamometer och mät dess kraft med olika längd på hävarmen.
Vilket samband finns det mellan armlängd och kraft? Rita en graf.
Jämför med vad som anges för vridmomentet i databladet och förklara hur det hänger ihop med mätningen ovan.