Pages: [1]   Go Down
Author Topic: Chiarimento su servocomando......  (Read 592 times)
0 Members and 1 Guest are viewing this topic.
0
Offline Offline
Sr. Member
****
Karma: 1
Posts: 443
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao a tutti,
avevo bisogno di un chiarimento su una mia pseudo intuizione smiley
Allora...... la gestione del servocomando da parte di arduino o comunque da una fonte esterna di segnale pwm ormai è chiara (onda quadra variabile da 1 a 2ms e bla bla bla)
Quello che penso di aver intuito ma non ho nessuna certezza se è corretto, è su come l'elettronica interna del servocomando gestisce il motore.
Cioè, se invio l'impulso per posizionare il servo al centro (duty cycle 50%), come vengono gestiti gli impulsi al motore per fare in modo che se io provo a muovere manualmente il braccetto del servocomando rimane comunque bloccato in quella posizione sia in un senso che in un altro?
Io penso che vengano inviati segnali continui con inversione di polarità, in modo che il motore non fa in tempo a girare ne in un senso e nemmeno nell'altro e risulta bloccato in quella posizione.
Volevo solo capire se la mia teoria può essere corretta oppure no, perchè comunque non so quanto salutare sia inviare ad un motore DC un segnale con inversione continua di polarità.
Spero di essermi spiegato.
Grazie.
Ciao.
Logged


BZ (I)
Offline Offline
Brattain Member
*****
Karma: 263
Posts: 21610
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Parliamo dei Servo usati nel odellismo o un altro servoazionamento?

Servo modellismo:

I servo hanno un elettronica, un motore, un ingranaggio e un potenziometro. L'elettronica puó essere del tipo analogica o digitale. Il pilotaggio del servo é sempre lo stesso.
Servo analogio: Il segnale di pilotaggio viene trasformato in una tensione continua e confrontato col valore del potenziometro che vede la posizione del braccio. Un amplificatore operazionale e un ponte H fanno girare il motore finche il potenziometro ragiunge lo stesso valore come il segnale di pilotaggio.
Servo Digitale. La lettura del segnale di pilotaggio e del potenziometro avviene in modo digitale e il pilotaggio del motore viene calcolato in funzione di quei 2 parametri.

Ciao Uwe
Logged

0
Offline Offline
Sr. Member
****
Karma: 1
Posts: 443
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao UWE,
rispondo alla tua prima domanda: stiamo parlando di servocomandi per modellismo.
Quello che hai scritto già lo so, quello che non so è come viene gestito il motore del servo a basso livello.
In poche parole, come fa l'elettronica di controllo a fare in modo che il servo risulti inchiodato in una certa posizione?
Spostare un meccanismo in una certa posizione non è difficile, quello che non mi è chiaro è (avendo il servocomando un motore DC e non uno stepper) mantenere il meccanismo bloccato in quella posizione contrastando eventuali forze esterne che cerchino di farlo muovere.
Logged


ivrea (to)
Offline Offline
Faraday Member
**
Karma: 86
Posts: 4948
miaaao ^-^
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Io ho trovato questo:
http://www.engineersgarage.com/articles/servo-motor?page=4
Effettivamente mi sembra che sia l'elettronica a bloccare gli ingranaggi.
Difatti se togli alimentazione a servo, puoi con le mani muoverlo.
Logged

my name is IGOR, not AIGOR

Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 129
Posts: 9467
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

In poche parole, come fa l'elettronica di controllo a fare in modo che il servo risulti inchiodato in una certa posizione?

Risposta semplicissima, viene utilizzato un PID per il controllo della posizione.
Nei vecchi servo analogici il PID era totalmente analogico, si realizza facilmente con due opamp, e il controllo del motore in chopped mode,  nei moderni servo digitali il PID è software e il controllo del motore tramite PWM.
Logged

0
Offline Offline
Sr. Member
****
Karma: 1
Posts: 443
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Grazie del link.
Credo che la risposta alla mia domanda sia questa:

Quote
The difference signal is amplified and provided to the DC motor. So the signal applied to the DC servo motor is a damping wave which diminishes as the desired position is attained by the motor.

Anche se tecnicamente non è spiegato com'è quest'onda di smorzamento.
Logged


0
Offline Offline
Sr. Member
****
Karma: 1
Posts: 443
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

In poche parole, come fa l'elettronica di controllo a fare in modo che il servo risulti inchiodato in una certa posizione?

Risposta semplicissima, viene utilizzato un PID per il controllo della posizione.
Nei vecchi servo analogici il PID era totalmente analogico, si realizza facilmente con due opamp, e il controllo del motore in chopped mode,  nei moderni servo digitali il PID è software e il controllo del motore tramite PWM.

Ciao Astro,
ho bisogno di un paio di traduzioni smiley-grin
Nello specifico, cosa vuol dire opamp e chopped mode?
Scusa l'ignoranza smiley-sad
Se volessi gestire un motore DC come viene fatto da un servocomando, per caso sai se c'è già qualche sketch per avere una mezza idea su come fare?
Grazie.
Logged


Cagliari, Italy
Offline Offline
Tesla Member
***
Karma: 112
Posts: 7113
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

omamp --> http://it.wikipedia.org/wiki/Amplificatore_operazionale
Logged

Code fast. Code easy. Codebender --> http://codebender.cc/?referrer=PaoloP

Pages: [1]   Go Up
Jump to: