Jump to content
PLC Forum


Sign in to follow this  
comigr

interfaccia pic motore

Recommended Posts


comigr

utilizzare un ritardo sw al posto del prescaler ha controindicazioni?inoltre visto che l interrupt interviene sui fronti ,se introduco un ritardo superiore all arrivo di un secondo fronte , cosa succede allo svolgimento del programma? interviene nuovemte l, interrupt.oppure.... finisce la routine e salta questo nuovo commando . scusa se sono forse noioso.ma ho sempre poco tempo  per fermarmi a provare.quindi le simulazioni le faccio in auto.....mentalmente. .....mentre guido...Grazie 

 

 

 

Share this post


Link to post
Share on other sites
Livio Orsini
Quote

utilizzare un ritardo sw al posto del prescaler

 

Francamente questo non riesco a capirla

 

Quote

interviene nuovemte l, interrupt.oppure.... finisce la routine e salta

 

Dipende da come è fatto lo Hw ed il Sw.

Cerco di chiarire con un esempio.

Se hai 2 interrupt concomitanti il dispositivo serve per primo l'interrupt di priorità più alta. La priorità è stabilita nel vettore di interrupt; può essere fissa, variabile o una combinazione delle due condizioni. Questo dipende dal dispositivo che si sta usando. Devi studiarti il manuale del PIC che stai usando. CI sarà un capitolo specifico che tratta gli interrupts e la loro organizzazione.

 

Poi dipende anche da come è scritto il Sw.

Se la prima istruzione della routine di servizio è DIsable Interrupts, qualsiasi interrupt si presenti dopo questa istruzione, se non è del tipo non mascherabile, sarà pendente in attesa dell'istruzione che riabilita gli interrupt.

Se la routine di servizio risultasse di esecuzione troppo lunga si creerebbe una coda di interrupt, il rpcessore loopperebbe per eseguire solo le routines di servizio, sino a che andrebbe a lavorare in locazioni di memoria errate e/o ritornerebbe a passare per la locazione iniziale con reelativo reset del programma.

 

Usare gli interrupts è sempre un'operazione delicata, perchè un errore di programamzione potrebbe portarti in loop perversi da cui è difficile euscirne, specie se si ha scarsa esperienza.

Share this post


Link to post
Share on other sites
comigr

ok. approfondisco. per ora GRAZIE

 

 

 

Share this post


Link to post
Share on other sites
comigr

ok ,per ora sembra funzionare....

ho lasciato il sw che gestiva gli interrupt un momentino da parte. ho utilizzato un ingresso come gestore di pass per lo zero e ho creato dei ritardi programmabili con input est.

quindi ora gestisco parecchie velocità, con dei ponticelli.

Problema: ora ho la necessità di associare l'impostazione velocità con la tensione di riferimento della tachimetrica.

visto che ,ad un inserimento di un ponticello corrisponde un ritardo, due ponticelli due ritardi ,ecc, pensavo di utilizzare un gruppo di partitori .quindi inserendo un ponticello inserisco una resistenza ,2 ponticelli 2 res e cosi via, cercando (sperando) di trovare il valore corretto.  Oppure? si accetta no consigli.

Grazie ancora. e buona Pasqua.

 

 

 

 

 

Share this post


Link to post
Share on other sites
Livio Orsini

Scusa ma hai gli ingressi analogici.

COn uno misuri la tensione di un potenziometro, con un altro misuri la reazione.

Il problema è poi fare il regolatore con feedbeck, quello non lo puoi fare con i ritardi.

Share this post


Link to post
Share on other sites
comigr

quello che utilizzavo e avevo in casa non aveva ing analogici... va bene cambio...

mentre per il feedback pensavo di ridurre i ritardi ,e ritornare al prefissato non appena ho raggiunto la velocità prefissata.....

 

 

 

 

 

Share this post


Link to post
Share on other sites
Livio Orsini

Lento come un bradipo, con precisione +/- 4 spanne. :)

 

Chi si contenta gode; coì, così.:lol:

Share this post


Link to post
Share on other sites
comigr

ok per ora. ho messo in pratica i consigli che mi avete dato. il motore sotto carico funziona abbastanza bene . a vuoto non è il max perché accellera per poi aspettare di aver raggiunto la velocità di riferimento,impostato da tachimetrica.

meno lento di un bradipo che va di fretta......:roflmao:

Ho utilizzato un preset per il motore ,ho controllato la tachimetriica raddrizzata,comparata con una tensione di rif e OPERAZIONALE ,( non avevo un pic con An),corregendo il ritardo per l'innesco del triac...ora viene il complicato.....per me. Velocizzare il controllo.  ...........me

 

 

 

 

.

Share this post


Link to post
Share on other sites
comigr

Non è vero che ho messo in pratica tutto.Non ho messo in pratica l'algoritmo tipo PID.

piccolo dettaglio.....:whistling:.

si accettano suggerimenti per ......

 

 

 

 

Share this post


Link to post
Share on other sites
Livio Orsini

Tu devi dare un ritardo proporzionale alla tensione che vuoi dare al motore affinchè la sua velocità sia simile a quella che desideri. Più preciso è il ritardo di accensione, migliore sarà la precisone di velocità

 

Poi fai un regolatore PI, che va a correggere il ritardo in funzione dell'errore di velocità misurato.

TIeni presente che l'intera semionda dura 10ms, quindi il tuo regolatore per avere senso, oltre ad essere sincrono con il passaggio per lo zero della sinusoide, deve essere risolto in un tempo inferiore a 100µs, me è già al limite.

 

Suggerimenti non possone essere tanti. Fai partire la regolazione con l'interrupt della rivelazione del passaggio per lo zero, butta fuori subito la correzione calcolata nel precedente ciclo e calcola la nuova correzione proporzionale ed integrale.

Se non sai come si realizza un PI(D) leggi il mio tutorial sui controlli, il link alla didattica è nella mia firma ed il tutorial lo trovi nella sezione "elettrotecnica".

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

×
×
  • Create New...