|
MICROCORE:
CIRCUITO - BASE |
Il Microcore (uCore) è il cuore attorno al quale funzionano i walker e molti altri robot BEAM. Questo circuito (o, per meglio dire, la sua applicazione alla robotica) è stato brevettato internazionalmente da Mark Tilden nel 1994 (vedi http://www.solarbotics.net/bftgu/patent.html). Lo schema tipico del uCore è riportato nello schema che segue: Come si vede, lo schema è composto da 4 condensatori, 4 resistenze a da 4 Schmitt trigger inverter (ad es. 74HC14); i LED servono solo per visualizzare il comportamento del circuito e non fanno parte del uCore vero e proprio. I valori dei componenti sono indicativi. In estrema sintesi, il uCore non è altro che un loop all'interno del quale circola un impulso: dal primo inverter al quarto e poi da capo. Per capire come si forma questo impulso conviene esaminare il comportamento di uno degli elementi costitutivi del uCore (il cosiddetto "Neurone"): 1. il condensatore è scarico, l'ingresso dell'inverter è forzato a 0V dalla resistenza e di conseguenza l'uscita è a +5V 2. se colleghiamo il terminale IN a +5V, il condensatore scarico è attraversato dalla corrente di carica e si comporta praticamente come un corto circuito; l'ingresso dell'inverter va a +5V e di conseguenza l'uscita è a 0V 3. il condensatore comincia a caricarsi tramite la resistenza e la tensione all'ingresso dell'inverter comincia a diminuire 4. quando la tensione all'ingresso dell'inverter raggiunge la soglia inferiore del trigger (ca. 2V) l'uscita va a +5V. Il passaggio da +5V a 0V e poi ancora a +5V avviene in un tempo T che dipende dai valori di C e di R. Se colleghiamo più "neuroni" in serie e portiamo l'uscita dell'ultimo neurone all'entrata del primo, otteniamo un impulso che viaggia all'interno del circuito in modo sequenziale, dal primo neurone all'ultimo, per poi ricominciare da capo. Questo in teoria... In realtà, quando forniamo tensione al circuito del uCore, non otteniamo mai un impulso "a scorrimento", ma una condizione definita di "saturazione" che presenta metà dei neuroni attivi contemporaneamente, alternati all'altra metà. Più precisamente, in un uCore formato da quattro neuroni, saranno attivi alternativamente i neuroni 1 - 3 e 2 - 4. Per fare in modo che il uCore fornisca un impulso a scorrimento occorre un circuito di inizializzazione, definito PNC (Pulse Neutralizing Circuit) che colleghi brevemente il neurone n.1 a +5V: Normalmente il condensatore elettrolitico ha un valore 10 volte superiore ai condensatori usati nel uCore. Per esperienza personale devo dire che questo tipo di PNC non è sempre affidabile. Inoltre funziona solo all'inizio (quando si dà tensione) e non interviene se, durante il funzionamento, qualche impulso spurio disturba il uCore. Consiglio a chi voglia approfondire l'argomento di leggere l'interessante articolo BEAM Startup Circuits di Bruce Robinson dove vengono presentati diversi circuiti di startup, tra cui il PNC-free Microcore Circuit di Wilf Rigter che è senza dubbio il migliore sotto tutti i punti di vista: Adesso che abbiamo un uCore funzionante e affidabile, vediamo come si può interfacciarlo con il mondo
esterno per influenzarne il comportamento. |