Inhoudsopgave:

Lineaire en roterende actuator - Ajarnpa
Lineaire en roterende actuator - Ajarnpa

Video: Lineaire en roterende actuator - Ajarnpa

Video: Lineaire en roterende actuator - Ajarnpa
Video: lineaire-roterende servomotoren van LinMot 2024, November
Anonim
Image
Image

Deze Instructable gaat over het maken van een lineaire actuator met een draaibare as. Dit betekent dat u een object naar voren en naar achteren kunt verplaatsen en tegelijkertijd kunt draaien. Het is mogelijk om een object 45 mm (1,8 inch) heen en weer te bewegen en 180 graden te draaien.

De kosten bedragen ongeveer $ 50. Alle onderdelen kunnen 3D-geprint worden of in een bouwmarkt worden gekocht.

De gebruikte motoren zijn twee in de handel verkrijgbare servomotoren. Naast de lage prijs hebben servo's een handige eigenschap: servo's hebben geen extra besturingslogica nodig. Als u een Arduino [1] en zijn servobibliotheek [2] gebruikt, is het schrijven van een waarde tussen 0 en 180 direct de positie van de servomotor en in ons geval de positie van de actuator. Ik ken alleen de Arduino, maar ik weet zeker dat het op andere platforms ook heel eenvoudig is om servo's te besturen en dus deze actuator.

Om hem te bouwen heb je een staande boormachine en een 4,2 mm metaalboor nodig. Je gaat M4-moeren uitboren om je glijlagers te zijn.

Verder heb je een goede bankschroef en een matrijs nodig om een M4-schroefdraad op een metalen staaf te snijden. Voor de bevestiging van de stangen is een M4 schroeftap nodig.

Benodigdheden

1 Standaard Servotoren Pro MG946R. Wordt geleverd met servo-arm, 4 M2 montageschroeven en 4 d3 messing rompen

1 Micro Servotoren Pro MG90S. Wordt geleverd met servo-arm en 2 montageschroeven

11 M2 x l10 mm platkopschroef

4 M4 sluitring

6 M4 moer

1 Borgring d4 mm

1 Paperclip d1 mm

1 Houten deuvel d6 x l120

2 Stalen of aluminium staaf d4 x l166 met M4 x l15 schroefdraad aan één uiteinde

1 Stalen of aluminium staaf d4 x l14 met een inkeping voor een borgring

1 Stalen of aluminium staaf d4 x l12

Legenda: l:lengte in millimeters, d:diameter in millimeters

Stap 1: 3D-geprinte onderdelen

U moet ofwel de linkszijdige of rechtszijdige delen afdrukken. De foto's in deze Instructable tonen een linkszijdige LnR-actuator (van voren gezien bevindt de houten plug zich aan de linkerkant).

Als je geen 3D-printer hebt, raad ik aan om een 3D-afdrukservice in de buurt te zoeken.

Stap 2: Schuiflagers

Mirco Servo en Verlengarm
Mirco Servo en Verlengarm

Als lagers worden de M4-moeren gebruikt! Daarvoor boor je de (M4/3.3 mm) gaten uit met de 4.2 mm metaalboor. Druk de uitgeboorde M4-moeren in de openingen in de schuif.

Lijm 2 M4-ringen op de schuif en de bovenkant van de schuif.

Stap 3: Mirco Servo en verlengarm

Monteer de Micro Servo op de slider.

Aan de rechterkant zie je de verlengarm en de overige 2 M4 moeren. Druk de uitgeboorde M4-moeren in de openingen van de verlengarm.

Stap 4: Schuif en draaibare as

Schuif en draaibare as
Schuif en draaibare as

Assembleer slider, verlengarm en slider top. Gebruik de kleine 12 mm lange metalen staaf als as.

Onderaan de foto zie je de flens die aan de Micro Servo arm is bevestigd.

U dient een gat van 1,5 mm in de houten deuvel te boren (rechtsonder op de foto), anders breekt het hout.

Stap 5: Servoverbinding

Servoverbinding
Servoverbinding

Boor een gat van 4,2 mm in de standaard servo-arm en voeg een inkeping toe aan de 14 mm metalen staaf voor de borgring.

Lijm een van de ringen op de servo-arm.

Zo stapel je de componenten van boven naar beneden:

1) Monteer de borgring op de as

2) Voeg een wasmachine toe

3) Houd de servo-arm onder de verlengarm en druk de gemonteerde as erdoorheen.

4) Breng wat lijm aan op de bevestigingsring en druk deze vanaf de onderkant op de as.

De foto is niet up-to-date. In plaats van de tweede borgring roept hij de bevestigingsring. Het idee met de bevestigingsring is een verrijking van het oorspronkelijke ontwerp.

Stap 6: Servomontage

Servomontage
Servomontage

De standaard servo is bevestigd aan de actuator. Om de servo door de opening te krijgen, moet u de onderste dop verwijderen, zodat u de kabel naar beneden kunt buigen.

De montageschroeven gaan eerst in de messing rompen en dan door de gaten in de actuator. Boor de schroeven in de bevestigingsblokken die onder de LnR-Base worden geplaatst.

Stap 7: Longitudinale beweging

Longitudinale beweging
Longitudinale beweging

Met de M4 schroeftap knip je een schroefdraad in de 3,3 mm gaten van het achtervlak van de LnR-Base.

De schuif beweegt op de twee metalen staven. Deze worden door de voorste gaten van 4,2 mm van de LnR-Base geduwd, vervolgens door de glijlagers en vastgezet met de M4-schroefdraad in het achtervlak van de actuator.

Stap 8: Dek af

Hoes
Hoes

Dat is de LnR Actuator!

Om de Micro Servo-kabel te bevestigen, wordt een deel van een paperclip gebruikt. Monteer de kap op de actuator en u bent klaar.

Stap 9: Arduino Sketch (optioneel)

Image
Image

Sluit twee potentiometers aan op de Arduino-ingangen A0 en A1. De signaalpennen zijn 7 voor roterende en 8 voor longitudinale beweging.

Het is belangrijk dat je de 5 Volt van de Arduino voor de potmeters neemt en niet van de externe 5 V voeding. Om de servo's aan te drijven heb je een externe voeding nodig.

Stap 10: Voorbij een programmeervoorbeeld (optioneel)

Zo annuleer ik systematische fouten in de software die de LnR-actuator aanstuurt. Door de positioneringsfout door mechanische transformatie en door mechanische speling te elimineren, is een positioneringsnauwkeurigheid van 0,5 millimeter in lengterichting en 1 graad in roterende beweging mogelijk.

Mechanische transformatie: Arduino's kaartfunctie [5] kan worden geschreven als: f(x) = a + bx. Voor de demo dataset [6] is de maximale afwijking 1,9 mm. Dit betekent dat de positie van de actuator op een gegeven moment bijna 2 millimeter verwijderd is van de gemeten waarde.

Bij een polynoom met graad 3, f(x) = a + bx + cx^2 + dx^3, is de maximale afwijking voor de demogegevens 0,3 millimeter; 6 keer nauwkeuriger. Om de parameters a, b, c en d te bepalen, moet je minimaal 5 punten meten. De demo dataset heeft meer dan 5 meetpunten, maar 5 zijn voldoende.

Mechanische speling: Door de mechanische speling is er een verschuiving in de positie als je de actuator eerst naar voren en dan naar achteren beweegt, of als je hem met de klok mee en dan tegen de klok in beweegt. In de lengterichting heeft de actuator mechanische speling in de twee verbindingen tussen de servo-arm en de slider. Voor de roterende beweging heeft de actuator mechanische speling tussen de schuif en de assen. De servomotoren hebben zelf ook enige mechanische speling. Om de mechanische speling te annuleren, zijn de regels: A) Bij vooruit of met de klok mee bewegen is de formule: f(x) = P(x) B) Bij achteruit of tegen de klok in bewegen is de formule: f(x) = P (x) + O(x)

P(x) en O(x) zijn veeltermen. O is de offset die wordt toegevoegd vanwege de mechanische speling. Om de polynoomparameters te bepalen, meet u 5 punten wanneer u in één richting beweegt en dezelfde 5 punten wanneer u in de tegenovergestelde richting beweegt.

Als je van plan bent om meerdere servomotoren met een Arduino te besturen en ik heb je overtuigd om een softwarekalibratie uit te voeren met behulp van polynomen, kijk dan eens in mijn prfServo Arduino-bibliotheek [4].

Voor de video van de potloodloodaandrijving werd de prfServo-bibliotheek gebruikt. Voor elk van de vier servo's werd een vijfpuntskalibratie in beide richtingen uitgevoerd.

Andere systematische fouten: De actuator heeft aanvullende systematische fouten: wrijving, excentriciteit en de resolutie van de gebruikte servobibliotheek en servomotoren.

Misschien, meer als een leuk weetje, is de resolutie van het Adafruit Servo Shield [3] 0,15 mm in lengterichting! Dit is waarom: het servoschild gebruikt de PCA9685-chip om het PWM-signaal te produceren. De PCA9685 is ontworpen om PWM-signalen tussen 0 en 100% te creëren en heeft daarvoor 4096 waarden. Maar voor een servo worden alleen waarden van laten we zeggen 200 (880 s) tot 500 (2215 s) gebruikt. 45 mm naaf gedeeld door 300 is 0,15 mm. Als je de berekening voor de roterende beweging doet, is 180º gedeeld door 300 punten 0,6º.

Stap 11: Referenties

[1] Arduino: https://www.arduino.cc/[2] Servobibliotheek: https://www.arduino.cc/en/reference/servo[3] Adafruit ServoShield: https://www.adafruit. com/product/1411[4] prfServo-bibliotheek: https://github.com/mrstefangrimm/prfServo[5] Arduino-kaartfunctie:

[6] Voorbeeld dataset:0 4765 42610 38815 35620 32525 30030 27635 25240 22445 194

Aanbevolen: