burakgokmen
Posts: 2
Joined: Tue Mar 24, 2020 3:23 pm

Servomotore

Tue Mar 24, 2020 3:26 pm

Ciao a tutti, ho appena acquistato un raspberry pi4 e vorrei utilizzarlo con un servomotore tipo questo:
https://www.amazon.it/Goolsky-digitale- ... 173&sr=8-7
Qualcuno saprebbe darmi una mano?

nicolap8
Posts: 363
Joined: Mon Mar 13, 2017 9:45 pm

Re: Servomotore

Tue Mar 24, 2020 5:11 pm

Con che linguaggi sei in grado di programmare, cosa devi farci, sei in grado di collegarlo dal punto di vista elettronico?
Sii dettagliato e sintetico!

pcmanbob
Posts: 8392
Joined: Fri May 31, 2013 9:28 pm
Location: Mansfield UK

Re: Servomotore

Tue Mar 24, 2020 5:18 pm

Ciao.

Per utilizzare questo servo con il tuo pi avrai bisogno di un alimentatore esterno da 6,0 a 6,8 V da 1 a 1,5 A CC.

È quindi necessario collegarlo in questo modo

Image


Hi.

To use this servo with your pi you will need an external 6.0 to 6.8V 1 to 1.5A DC power supply.

You then need to connect it up like this


puoi usare questo programma di test per testare il tuo servo

you can use this test program to test your servo

Code: Select all

import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BCM)
GPIO.setup(18, GPIO.OUT)
p = GPIO.PWM(18, 50)
p.start(5)
time.sleep(1)

for angle in range (5, 120):

    duty = float(angle) / 18 + 2
    print (duty)

    p.ChangeDutyCycle(duty)
    time.sleep(0.015)
    
for angle in range (120, 5, -1):

    duty = float(angle) / 18 + 2
    print (duty)

    p.ChangeDutyCycle(duty)
    time.sleep(0.015)
    
time.sleep(3)
p.ChangeDutyCycle(0)
GPIO.cleanup()
We want information… information… information........................no information no help
The use of crystal balls & mind reading are not supported

nicolap8
Posts: 363
Joined: Mon Mar 13, 2017 9:45 pm

Re: Servomotore

Tue Mar 24, 2020 5:24 pm

pcmanbob wrote:
Tue Mar 24, 2020 5:18 pm
Per utilizzare questo servo con il tuo pi avrai bisogno di un alimentatore esterno da 6,0 a 6,8 V da 1 a 1,5 A CC.
https://www.robotics.org.za/DS3225-360

Il servo può funzionare anche con soli 5V, con prestazioni leggermente inferiori: devi sapere tu se questo va bene.

Io non ho trovato un datasheet del servo e quindi non sono sicuro a priori che lo schema di collegamento funzioni: il pin del RPi che darà il comando ha una tensione di solo 3.3V (e comunque andrebbe protetto con un resistore in serie) che potrebbe essere insufficiente.
Puoi provare e, nel caso, usare un level shifter (es. un transistor e un paio di resistori).

Prima di usare quel codice Python ti suggerisco di comprenderlo bene, soprattutto per la parte che gli dice di quanti gradi ruotare... se esageri rischi di romperlo.
Edit: beh visto che ruota di 360° questo problema non c'è! Vedi a leggere in fretta che figure si fanno :D

burakgokmen
Posts: 2
Joined: Tue Mar 24, 2020 3:23 pm

Re: Servomotore

Tue Mar 24, 2020 5:48 pm

Grazie a tutti per le risposte. Sinceramente non so nulla di programmazione. Il raspberry e' la mia prima esperienza sfortunatamente.

pcmanbob
Posts: 8392
Joined: Fri May 31, 2013 9:28 pm
Location: Mansfield UK

Re: Servomotore

Tue Mar 24, 2020 9:06 pm

nicolap8 wrote:
Tue Mar 24, 2020 5:24 pm

https://www.robotics.org.za/DS3225-360

Il servo può funzionare anche con soli 5V, con prestazioni leggermente inferiori: devi sapere tu se questo va bene.

Io non ho trovato un datasheet del servo e quindi non sono sicuro a priori che lo schema di collegamento funzioni: il pin del RPi che darà il comando ha una tensione di solo 3.3V (e comunque andrebbe protetto con un resistore in serie) che potrebbe essere insufficiente.
Puoi provare e, nel caso, usare un level shifter (es. un transistor e un paio di resistori).

Prima di usare quel codice Python ti suggerisco di comprenderlo bene, soprattutto per la parte che gli dice di quanti gradi ruotare... se esageri rischi di romperlo.
Edit: beh visto che ruota di 360° questo problema non c'è! Vedi a leggere in fretta che figure si fanno :D

Qualunque sia la tensione che usi avrai bisogno di un alimentatore esterno poiché il servo assorbirà molta corrente per alimentarlo dal pin gpio 5V, quindi potresti anche alimentarlo al suo pieno potenziale

Il gpio da 3,3 V andrà bene dato che qualsiasi cosa sopra i 2,5 V viene vista come alta sul sistema di controllo a 5 V del servo, inoltre non avrai bisogno di una resistenza di limitazione della corrente tra il pi e il servo poiché il circuito di controllo nel servo lo farà ne ho già uno.

Il link che hai pubblicato è una versione diversa del servo DS3225, il link pubblicato dall'OP non lo menziona ruotando di 360 gradi, quindi ruoterà solo di 165 gradi.
Goolsky DSSERVO DS3225 25KG Metal Gear Coppia Elevata servo Digitale Impermeabile per RC Traxxas HSP Car Boat Elicottero Robot Airplane (1 pc)
What ever voltage you use you will need an external power supply as the servo will draw to much current to power it form the 5V gpio pin, so you may as well power it at its full potential

The 3.3V gpio will be just fine as anything over 2.5V is seen as a high on the 5V control system of the servo, you will also not need a current limiting resistor between the pi and the servo as the control circuit in the servo will already have one.

The link you posted is to a different version of the DS3225 servo , the link posted by the OP does not mention it rotating 360 deg, so it will only turn 165 deg.
Goolsky DSSERVO DS3225 25KG Metal Gear High Torque Waterproof Digital Servo for RC Traxxas HSP Car Boat Helicopter Robot Airplane (1 pc)
We want information… information… information........................no information no help
The use of crystal balls & mind reading are not supported

_Marco_
Posts: 8
Joined: Thu Apr 02, 2020 1:18 pm
Location: some island, south mediterranean

Re: Servomotore

Fri Apr 03, 2020 2:06 pm

Guardando le specifiche,

vedo che:

Code: Select all

Velocità operativa (5,0 V): 0,15 sec / 60 gradi
Velocità operativa (6,8 V): 0,13 sec / 60 gradi
Coppia di stallo (5,0 V): 21 kg / cm
Coppia di stallo (6,8 V): 25 kg / cm
Ti sconsiglio di alimentare il servomotore direttaemnte da RASPBEEY PI, siccome cio' metterebbe sotto eccessivo sforzo la unita', soprattutto per un servomeccanismo cosi' energivoro (ha valori di coppia e di risposta molto alti). In termini di emungimento di corrente, RSBP fornisce al max 5 V.

Tipicamente questi servo meccanismi hanno 3 pin: massa, voltaggio e segnale. I primi due li colleghi ad una fonte esterna Puoi usare RSBP per generare il segnale (digitale) che controlla la posizione dell'attuatore, di modo da avere due "circuiti" separati: il primo di alimentazione, il secondo di controllo.

La programmazione in Python per un solo servomeccanismo e' piuttosto semplice. Mi permetto di farti notare che un RSBP sarebbe "sprecato" per un compito del genere : sarebbe come comprare una ferrari per farla girare nel garage di casa. In alternativa, basterebbe un semplice arduino nano, da pochi euri, che fungerebbe egregiamente.
https://www.youtube.com/watch?v=bukPjk5zdLc

Return to “Italiano”