Idee su come selezionare un ingresso

Salve a tutti e scusatemi per l'oggetto del messaggio poco chiaro (non sono riuscito a fare di meglio :-)).

Ho un driver che viene pilotato in PWM: vorrei che il PWM in ingresso al driver provenisse (ovviamente non contemporaneamente) da due micro differenti. Vorrei utilizzare il minor numero di pin possibile per il controllo del "selettore": inoltre potrei portare uno dei due pin ad uno stato logico nel momento in cui non vi =E8 alcun segnale di PWM. L'obiettivo (non so bene come) =E8 quindi utilizzare i due stessi pin sia per il pilotaggio del driver che per l'elettronica di selezione intermedia...avete qualche suggerimento?

Reply to
fasf
Loading thread data ...

Il 05/01/2011 14.54, fasf ha scritto:

forse ho capito male, ma non ti basta metterli in OR (o in AND a seconda della logica)?

Ste

--
Ogni problema complicato ha una soluzione semplice...per lo piu` sbagliata
[cit. Franco, i.h.e. 20.01.2007]
Reply to
PeSte

Non sono sicuro nemmeno io di aver capito... ma se ho capito, allora un MAX383 risolve il problema.

Boiler

Reply to
Boiler

"PeSte" ha scritto nel messaggio news:ig1tsb$p0g$ snipped-for-privacy@tdi.cu.mi.it...

la commutazione deve essere istantanea?perchè se no(sparo) potresti usare un circuito Cserie-diodo serieRC in parallelo in modo che questa C tra massa e pin di controllo selettoreti venga mantenuta carica quindi livello H dalla presenza del PWM.Quando il PWM si ferma e diventa un livello logico ,spero dalle commutazioni molto meno frequenti,il C si scarica attraverso R in parallelo, e il livello logico L formantesi("formantesi"?)sul C ti commuta sull'altra via.Alla ripresa del PWM da questa parte si ritorna di qui.

Reply to
blisca

dalla

Fatto senza pensarci troppo,potrebbe funzionare??

[FIDOCAD] MC 60 35 0 0 115 MC 60 35 0 0 115 MC 50 35 1 0 170 MC 20 35 0 0 170 MC 35 35 0 0 200 LI 30 35 40 35 LI 40 35 60 35 LI 60 35 85 35 MC 50 50 0 0 040 LI 60 50 60 45 LI 50 55 50 45 SA 50 35 SA 60 35 SA 60 50 SA 50 50 SA 35 35 MC 10 35 0 0 080 SA 20 35 SA 10 35 TY 10 25 5 3 0 0 0 * 100 ohm TY 70 45 5 3 0 0 0 * 10000 ohm RV 90 10 120 45 LI 85 35 90 35 LI 5 35 10 35 LI 10 35 10 20 LI 10 20 90 20 LI 90 15 10 15 SA 10 15 SA 5 35 TY 50 10 5 3 0 0 0 * PWM2 LI 50 50 60 50 LI 55 50 60 50 TY 35 20 5 3 0 0 0 * PWM1 LI 120 25 140 25 SA 140 25 TY 125 20 5 3 0 0 0 * PWMOUT TY 95 35 5 3 0 0 0 * SEL
Reply to
blisca

Grazie per le risposte, spedi di spiegare meglio il problema... ho un driver che viene pilotato in PWM: il pin di pilotaggio del driver deve essere controllato da due micro (non contempoeaneamente). Di conseguenza, qualsiasi dei due micro pu=F2 generare un PWM tale da controllare il driver. Ci=F2 che mi serve =E8 un multiplexer

2ingressi-1uscita con le seguenti caratteristiche: Single VDD Segnale PWM 0-3.3V 500KHz (massimo) Avete qualche suggerimento?

Per il multiplexer sarebbe necessario un ulteriore pin per lo switch tra i due canali, un mio unteriore obiettivo era quello di utilizzare uno dei due pin di PWM come selettore...

@Bolier Non penso che il MAX383 possa essere la soluzione al mio problema

@blisca la commutazione deve essere istantanea (non posso perdere alcun fronte del PWM): questo mi porta a pensare che forse l'utilizzo di un terzo pin non =E8 evitabile

Reply to
fasf

Il 07/01/2011 13.33, fasf ha scritto:

qualche anno fa ho progettato un driver per motori che necessitava di multiplexer in ingresso, ho risolto con una Tinylogic della Fairchild...scelta obbligata per questioni di ingegnerizzazione prodotto. Ma il problema si risolve banalmente anche con una manciata di porte 3 o 4 NAND direi...

[...]

accidenti, mai vista un'applicazione di controllo motore dove perdere una commutazione crea problemi...vai a frequenza molto molto bassa? O hai altre criticità?

: questo mi porta a pensare che forse l'utilizzo di un terzo

la mia proposta di mettere in AND i PWM non ti piace?

Ste

--
Ogni problema complicato ha una soluzione semplice...per lo piu` sbagliata
[cit. Franco, i.h.e. 20.01.2007]
Reply to
PeSte

Il 07/01/2011 13.33, fasf ha scritto:

IMO c'e' ancora qualcosa che fatica ad uscire: il criterio secondo il quale devono essere deciso quale delle due uscite utilizzare.

Prova a risponderti ed a rispondere a questa domanda e tutto, probabilmente, sara' piu' chiaro.

Reply to
Englishman

In effetti hai ragione, tuttavia ho pensato di risolvere il problema in questo modo:

  1. Un micro presenta in uscita oltre al pin di PWM un pin di enable
  2. Al pin enable di uscita dal primo micro viene collegato, oltre al multiplexer, un pin del secondo micro configurato come ingresso
  3. A seconda del valore che il secondo micro legge come ingresso genera o meno il PWM E' uno schema di pricnipio che dipende anche da come avviene la selezione.
Reply to
fasf

Grazie per la dritta: ho trovato qualcosa che potrebbe essermi utile (NC7SB3257P6X della Fairchild) tuttavia ad un'occhiata veloce richiede una tensione di alimentazione pari a 5V, me ne servirebbe una con alimentazione a 3.3V e che supportasse ingressi a 500KHz 0-3.3V

Anche il driver che utilizzo si occupa del controllo motore: ad ogni fronte vi =E8 un incremento di step...se perdo un fronte non conosco con esattezza di quanti step si =E8 mosso, da qui il problema...

Vorrei qualcosa di pi=F9 compatto (anche con package pi=F9 grossi rispetto a quelli da te segnalati)

Reply to
fasf

Il 07/01/2011 15.51, fasf ha scritto:

Non mi sono spiegato bene... intendevo dire di chiarire le cause della selezione, non gia' una possibile soluzione.

Per esempio, si potrebbe risolvere, dal punto di vista logico-digitale, il problema, per come lo hai esposto, con degli AND e un FF, ma sposteresti alcune decisioni progettuali, che IMO non hai ancora ben chiare nella tua testa, da questo sottocircuito alla parte di programmazione dei micro, in cui ti ritroverai a pensare (ad es.):

- c'e' una priorita' tra il micro A e il micro B?

- se nessuno dei due "parla" cosa deve succedere? il segnale PWM composto da soli zeri (o uni) e' accettabile?

- se parlano entrambi i micri che succede? Chi prevale? Si "sommano" o qualcosa del genere i PWM-emmi?

- ci sono dei tempi di "guardia" tra un "Parla A" e un "Parla B"?

ripeto sono solo esempi: solo tu puoi sapere quali domande farti (molto piu' importante che sapere quali sono le risposte).

Reply to
Englishman

In realt=E0 la soluzione =E8 derivante dai dubbi che tu hai esposto: ad esempio

Il micro che gestisce il pin enable ha priorit=E0 maggiore rispetto al secondo pin

Si, in quanto mi interessano solo i fronti in salita

Non deve succedere, in quanto il secondo micro genera il PWM solo se "ha il permesso" con il pin enable

No

Penso di aver considerato tutti gli aspetti, ma se tuttavia c'=E8 qualcosa che secondo te ho tralasciato fai bene a segnalarmelo :-)

Reply to
fasf

queste mini logiche le fanno un po' tutti, sicuramente On e TI, forse ST.

ma se hai un driver di quelli che incrementano per loro conto lo step, cosa centra il PWM? La velocità la decide la frequenza, o dimentico qualcosa?

Ste

--
Ogni problema complicato ha una soluzione semplice...per lo piu` sbagliata
[cit. Franco, i.h.e. 20.01.2007]
Reply to
PeSte

n

Il driver che utilizzo =E8 il DRV della TI: questo effettua un incremento di step ogni qualvolta trova un fronte in salita sul pin STEP. Poich=E8 non ho alcuna retroazione (o meglio: non ho idea di come farla), l'unica possibilit=E0 che ho =E8 essere stremamente sicuro che tuti gli step inviati vengano effettivamente sviluppati...

Reply to
fasf

Il 08/01/2011 9.41, fasf ha scritto:

su uno stepper c'è poco da fare, o usi un'encoder o conti i passi (dopo eventuale procedura di "zero")

l'unica possibilità che ho è essere stremamente sicuro che

ok, ma continuo a non capire a cosa ti serva il pilotaggio PWM

--
Ogni problema complicato ha una soluzione semplice...per lo piu` sbagliata
[cit. Franco, i.h.e. 20.01.2007]
Reply to
PeSte

Mi consigli qualche encoder che dalla tua esperienza =E8 risultato utile per il controllo?

Il PWM del micro lo porto in ingresso allo STEP del driver: settando la frequenza del PWM vario la velocit=E0 di rotazione del motore

Reply to
fasf

noi usavamo solo encoder fatti con corone dentate calettate sul motore e due forcelle ottiche. Ovviamente all'avvio del sistema era accettata e funzionalmente non distruttiva una procedura di reset a fondo corsa.

Non ho encoder commerciali da consigliarti, mi spiace.

ah, ok.

ciao

Ste

--
Ogni problema complicato ha una soluzione semplice...per lo piu` sbagliata
[cit. Franco, i.h.e. 20.01.2007]
Reply to
PeSte

fasf:

Il motivo principale per usare gli stepper è di non usare retroazione.

Reply to
F. Bertolazzi

fasf:

Purtroppo il tuo progetto è coperto da Segreto di Stato, quindi non posso aiutarti.

Faccio solo due considerazioni.

Innanzitutto non puoi chiamare questi segnali PWM, dato che l'ampiezza dell'impulso è irrilevante.

Il modo migliore per perdere passi è variare bruscamente la velocità di step. Se hai un timer fatto bene, come quello degli AVR, hai un'ottima occasione per ottenere una accelerazione che varia in modo graduale cambiando la costante del timer.

Insomma, la tua soluzione, dato che non possiamo sapere quale sia l'applicazione e che eventuali vincoli di ridondanza tu abbia mi pare abbastanza assurda e foriera di problemi e l'aggiunta di un encoder non farà che peggiorare la situazione.

Non vedo perché un micro non possa dire all'altro qual sia la velocità che desidera e "perchè" all'altro, che deciderà se usare, il base al "perché", quella stabilita da lui o dall'altro. Un a volta stabilitolo, potrà passare gradualmente dall'una all'altra velocità, senza perdere passi.

E poi scommetto che quello che fai con due micro verrebbe meglio fatto da uno solo, ma questa è un'altra storia ancora.

Reply to
F. Bertolazzi

Il 08/01/2011 17.37, F. Bertolazzi ha scritto:

concordo.

[...]

tipo un PIC? ;-)

--
Ogni problema complicato ha una soluzione semplice...per lo piu` sbagliata
[cit. Franco, i.h.e. 20.01.2007]
Reply to
PeSte

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.