Come ridisegnare un circuito per utilizzare un circuito integrato che affonda corrente anziché un circuito integrato di approvvigionamento corrente


9

Sto costruendo un servo controller seriale per conoscere l'elettronica e il linguaggio di assemblaggio come parte del mio progetto di robot hexapod . Molto presto ho deciso che avevo bisogno di più canali I / O rispetto al mio ATTiny2313 che stavo usando al momento supportato, quindi ho studiato alcuni chip demultiplexer a 3-8 linee ( CD74HCT238E ) che mi hanno permesso di creare un servo PWM a 64 canali controller con solo 8 pin I / O per i canali PWM e 3 linee di indirizzo.

Comunque. Ho anche comprato alcuni CD74HCT138E che sono attivi bassi piuttosto che quelli attivi alti CD74HCT238E. Capisco, in linea di principio, le differenze tra l'attuale chip di sourcing che sto usando e gli attuali chip di sinking, ma non so davvero come adattare il mio circuito per usare gli attuali chip di sinking invece degli attuali chip di sourcing.

Lo schema per i chip high attivi è qui: testo alternativo cosa devo cambiare per scambiare i CD74HCT238E con i CD74HCT138E?

Nota che il motivo per cui ho posto questa domanda è che ho comprato per errore un tubo dei circuiti integrati bassi attivi e sono curioso di sapere quanto più complessi dovrebbero essere gli schemi e la progettazione dei circuiti per usarli.

Risposte:


2

Il '238 ha solo una delle otto uscite logiche alte, la corrente di sourcing, il resto dei pin sarà logicamente basso, affondando la corrente. Il 138 è esattamente l'opposto, uno degli otto pin può essere basso, affondando la corrente, il resto sarà alto, alimentando la corrente.

Per "invertire" la funzione del '138, potresti usare otto transistor PNP con le basi ciascuna legata ad un'uscita del' 138 con un resistore, gli emettitori tutti collegati a +5 e i collettori collegati ciascuno a uno dei tuoi servo connettori. Oppure utilizzare un gruppo di inverter (74HCT04 o ottale 74HCT240) per modificare il senso delle uscite.

La scelta di 1 su 8 decodificatori limiterà ciò che puoi fare con i tuoi servi, poiché il tuo circuito può attivare solo un'uscita alla volta. La velocità massima di ogni singolo servo sarà limitata dal numero di servi che si desidera attivi. Se volessi tutti i 64 canali attivati, ad esempio, funzionerebbero tutti alla media di 1/64 di velocità.

Il PCF8575C è molto utile per espandere l'IO digitale utilizzando il protocollo I2C seriale da dispositivi come Arduino. Puoi eseguire 64 servi usando 2 pin su Arduino e 4 PCF8575C. Ciò ti darebbe maggiore flessibilità nell'impostazione dei tuoi cicli di lavoro PWM.


Ho la sensazione che se stavo usando questi chip per espandere l'I / O per un motivo diverso dal servocontrollo, scambiare il massimo attivo con un basso attivo sarebbe un problema minore, dal momento che inverterei il circuito che si stava collegando al pin. Tuttavia, poiché ho bisogno di guidare la linea di controllo servo con + VE, ho bisogno che gli inverter me lo diano perché non posso guidare la linea di controllo da qualche altra parte e semplicemente affondarla nell'IC.
Len Holgate,

A parte questo, il servocomando PWM che utilizza gli alti circuiti integrati attivi funziona bene. Eseguo 8 dei 1 di 8 chip di decodifica dal mio microprocessore e quindi scorro le linee degli indirizzi (modificandole ogni 2,5 ms) in modo da poter generare l'aggiornamento a 50Hz richiesto su tutti i 64 canali. Questo mi permette di generare gli impulsi necessari 600us-2.4ms su ciascun canale. Suppongo che il PCF8575C sia più facile da usare perché basta inviargli un comando per accendere / spegnere il pin appropriato e rimane in questo modo piuttosto che i 238 necessitano del pin corrispondente sul microprocessore per essere tenuto alto per la durata.
Len Holgate,

1
Dipende molto dall'applicazione, sono felice di sapere che funziona. In molti casi il chip a cui sei collegato è facile da gestire con il passaggio dal massimo attivo al minimo attivo, ma il tuo non era uno di quelli.
Kortuk,

3

Sono la stessa cosa escludendo l'output. Il minimo attivo è esattamente lo stesso del massimo attivo con un ingresso invertito su tutti i pin.

Ho alcune app con i servi, questo richiederebbe di mettere un inverter su ogni percorso o cambiare i miei servi. Con le informazioni per il tuo servo potrei essere in grado di aiutare di più, ma dubito che questo cambiamento ne valga la pena.

Ho dato un'occhiata al tuo sito, mi è piaciuto entrambe le volte che l'ho visitato, ma non ho trovato più informazioni sull'hardware, se mi sono perso qualcosa, mi scuso. -Max Murphy


2
Sì, mi rendo conto che sono uguali tranne per l'output. Supponevo che esistesse un modo ragionevolmente semplice per collegare il servo al circuito integrato basso attivo. I servi sono semplici Hitec HS-422. Se dovessi far passare un filo da VCC, tramite, suppongo, un resistore, al pin di uscita basso attivo, suppongo che nulla fluirebbe a meno che il pin non sia abbassato?
Len Holgate,

1
Non sono completamente sicuro di aver capito la tua domanda, hai ragione, il tuo dispositivo non assorbirà corrente da una resistenza di pull-up quando la sua uscita è alta. Il gate del servo tira corrente attraverso il resistore e / o dall'uscita elevata, probabilmente entrambi. Sarà ancora alto per l'esatto ciclo di lavoro opposto. Prima se stavi facendo un ciclo di lavoro del 5% e ora un ciclo di lavoro del 95%. La scheda tecnica su robotshop.us/PDF/Servomanual.pdf , o dovrei dire la guida del prodotto, fornisce ottime informazioni. Il tuo tempo di impulso con uno specifico tempo di spegnimento in importante.
Kortuk,

1
Perché è necessario cambiare i chip in Active Low?
Kortuk,

2
No, ne ho appena comprato un tubo per errore e voglio sapere se è possibile. Ho visto un design per un design simile di servo controller che utilizza ciò che (dalla scheda tecnica) sembrava essere IC basso attivo ed ero curioso :)
Len Holgate,

1
Ah, mi dispiace, stavo cercando di impedirti di cambiare design, hai l'altro design? Hai solo bisogno di inserire gli inverter, se non ti dispiace lo spazio, può essere fatto con un transistor e un resistore.
Kortuk,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.