rotative encoder

5
 Soluzione “Prize competition ”. Roberto Rubino, 07/06/2013 Si consideri la codifica di 16 numeri su 4 bit. Far ruotare il cilindro in senso antiorario corrisponde a “siftare! le cifre del numero di una posi"ione a sinistra. #l bit rimanente potr$ essere settato a 0 o a 1. %&ni numero a dun'ue due possibili “(icini! se il cilindro ruota in senso antiorario e altri due se ruota in senso orario ) *sempio) 0001 a come (icini “destri! 0010 e 00 11 e come (icini “sinistri! 0000 e 1000 Se si considerano i 16 numeri come i (ertici di un &rafo orientato, colle&ati ai loro “(icini! destri, il  problema si riduce alla ricerca di un ciclo ce tocci tutti i (ertici una ed una sola (olta +un ciclo di amilton-. ro(ata una solu"ione, essa sar$ (alida per 'ualsiasi (erso di rota"ione del cilindro. Supponiamo ad esempio, ce il cilindro ruoti in senso antiorario e 'uindi le cifre “siftino! a sinistra. #l &rafo ce rappresenta i “(icini destri! di o&ni elemento pu essere ottenuto facilmente in 'uesto modo +rappresentando i numeri in base 10 per comodit$-) #l &rafo percorribile solamente da sinistra (erso destra. %((iamente i numeri (anno da 0 a 1  perc la codifica a 4 bit, ma il &rafo pu essere dise&nato immediatamente per 'ualsiasi numero di bit con cui si (o&lia la(orare.

Upload: roberto-rubino

Post on 29-Feb-2016

7 views

Category:

Documents


0 download

DESCRIPTION

How to encode 16 position on a wheel with 4 bis

TRANSCRIPT

Page 1: Rotative Encoder

7/18/2019 Rotative Encoder

http://slidepdf.com/reader/full/rotative-encoder 1/5

Soluzione “Prize competition”.

Roberto Rubino,

07/06/2013

Si consideri la codifica di 16 numeri su 4 bit. Far ruotare il cilindro in senso antiorario corrisponde a“siftare! le cifre del numero di una posi"ione a sinistra. #l bit rimanente potr$ essere settato a 0 o a

1. %&ni numero a dun'ue due possibili “(icini! se il cilindro ruota in senso antiorario e altri due se

ruota in senso orario )

*sempio)

0001 a come (icini “destri! 0010 e 0011 e come (icini “sinistri! 0000 e 1000

Se si considerano i 16 numeri come i (ertici di un &rafo orientato, colle&ati ai loro “(icini! destri, il

 problema si riduce alla ricerca di un ciclo ce tocci tutti i (ertici una ed una sola (olta +un ciclo di

amilton-. ro(ata una solu"ione, essa sar$ (alida per 'ualsiasi (erso di rota"ione del cilindro.

Supponiamo ad esempio, ce il cilindro ruoti in senso antiorario e 'uindi le cifre “siftino! a

sinistra.

#l &rafo ce rappresenta i “(icini destri! di o&ni elemento pu essere ottenuto facilmente in 'uesto

modo +rappresentando i numeri in base 10 per comodit$-)

#l &rafo percorribile solamente da sinistra (erso destra. %((iamente i numeri (anno da 0 a 1

 perc la codifica a 4 bit, ma il &rafo pu essere dise&nato immediatamente per 'ualsiasi numerodi bit con cui si (o&lia la(orare.

Page 2: Rotative Encoder

7/18/2019 Rotative Encoder

http://slidepdf.com/reader/full/rotative-encoder 2/5

Rimane dun'ue da definire lal&oritmo con cui coprire il &rafo)

Supponiamo ce il ciclo parta da 0 e si concluda in 0.

ercorreremo il &rafo se&uendo due semplici re&ole)

– d o&ni bi(io si percorrano prima &li arci in posi"ione “inferiore!. Si percorrano &li arci

“superiori! solo se i (ertici inferiori sono &i$ stati (isitati.

– %&ni (olta ce si passa per un (ertice 'uesto (iene e(iden"iato, in modo da ricordarsi di non

 passarci di nuo(o.

5alla defini"ione dellal&oritmo si pu notare ce esso non dipende dal numero di bit utili""ati,

ed 'uindi estendibile al caso &enerale.

*sempio di copertura del &rafo a 16 bit secondo le re&ole sopra descritte)

1 1-3

1-3-7 1-3-7-15

Page 3: Rotative Encoder

7/18/2019 Rotative Encoder

http://slidepdf.com/reader/full/rotative-encoder 3/5

1-3-7-15-14 1-3-7-15-14-13

1-3-7-15-14-13-11 1-3-7-15-14-13-11-6

1-3-7-15-14-13-11-6-12 1-3-7-15-14-13-11-6-12-9

Page 4: Rotative Encoder

7/18/2019 Rotative Encoder

http://slidepdf.com/reader/full/rotative-encoder 4/5

1-3-7-15-14-13-11-6-12-9-2 1-3-7-15-14-13-11-6-12-9-2-5

1-3-7-15-14-13-11-6-12-9-2-5-10 1-3-7-15-14-13-11-6-12-9-2-5-10-4

1-3-7-15-14-13-11-6-12-9-2-5-10-4-8 1-3-7-15-14-13-11-6-12-9-2-5-10-4-8-0

'uesto punto il ciclo pu ricominciare.

Page 5: Rotative Encoder

7/18/2019 Rotative Encoder

http://slidepdf.com/reader/full/rotative-encoder 5/5

erificiamo ce la se'uen"a sia corretta ritraducendola in binario)

+8uesto 'uello ce “(edono! i 'uattro contatti man mano ce il cilindro scorre-

19 0001

39 0011

79 011119 1111

149 1110

139 1101

119 1011

69 0110

129 1100

:9 1001

29 0010

9 0101109 1010

49 0100

;9 1000

09 0000

Supponendo dun'ue ce &li 1 siano se"ioni conduttrici del cilindro e &li seri se"ioni

isolanti, la se'uen"a di se"ioni da porre sul cilindro sar$)

  0001111011001010

Roberto Rubino,

07/06/2013