Go Down

Topic: Wind Logger (anemometro) low cost con Arduino (Read 6 times) previous topic - next topic

illogico

Fatto! :)

Tx-20 <-------------------------> Arduino
1 - serial I/O - Resistenza 8K - Pin Digitale
2 - VCC 3.3v ------------------- 3.3V
3 - Reg. CE   -(to gnd)-\
4 - GND        ------------+----- GND

A questo punto bisogna mettere un loop che aspetta i bit sul pin digitale, quindi leggere 1 bit ogni 1.2 millisec poi decodificarli..

111011111011100001111100010001000111100000000000000000000000

:)

Ciao

illogico

#11
Sep 26, 2010, 09:05 pm Last Edit: Sep 26, 2010, 09:05 pm by illogico Reason: 1
La Crosse TX-20 <-> Arduino

Tx-20 <-------------------------> Arduino
1 - serial I/O - Resistenza 8K - Pin Digitale
2 - VCC 3.3v ------------------- 3.3V
3 - Reg. CE   -(to gnd)-\
4 - GND        ------------+----- GND

E la mappatura non è quella precedentemente indicata ma son sempre 38 bit:
11011          1-5 header
XXXX           6-9 Direzione (22.5 gradi x bit)
XXXXXXXXX 10-18 Forza vento (0.1 gradi x bit)
XXXXXX       19-25 Checksum
XXXX           26-29 Direzione (con bit invertiti)
XXXXXXXXX 30-38 Forza vento (con bit invertiti)

      DIR. FORZ-VENT    CHECKSUM FIELDS      TRANSCODIFICA
[size=8] AAAAA DDDD FFFFFFFFF CCCCCCC CDIR CFORVENT   DIR.  VELOCITA
00100 0000 000000000 ??????? 1111 111111111  N      0 m/s
00100 0001 100000000 ??????? 1110 011111111  NNE    0,1 m/s
00100 0010 010000000 ??????? 1101 101111111  NE     0,2 m/s
00100 0011 001000000 ??????? 1100 110111111  ENE    0,4 m/s
00100 0100 000100000 ??????? 1011 111011111  E      0,8 m/s
00100 0101 000010000 ??????? 1010 111101111  ESE    1,6 m/s
00100 0110 000001000 ??????? 1001 111110111  SE     3,2 m/s
00100 0111 000000100 ??????? 1000 111111011  SSE    6,4 m/s
00100 1000 000000010 ??????? 0111 111111101  S     12,8 m/s
00100 1001 000000001 ??????? 0110 111111110  SSW   25,6 m/s
00100 1010 110000000 ??????? 0101 001111111  SW     0,3 m/s
00100 1011 001100000 ??????? 0100 110011111  WSW    1,2 m/s
00100 1100 001111100 ??????? 0011 110000011  W     12,4 m/s
00100 1101 000001100 ??????? 0010 111110011  WNW    9,6 m/s
00100 1110 000000011 ??????? 0001 111111100  NW    38,4 m/s
00100 1111 111111111 ??????? 0000 000000000  NNW   51,1 m/s[/size]

Spero sia utile a tutti
nick@illogico.net

jimmy3dita

Ciao Nick,
provo adesso a collegarlo con il tuo schema, anche se temo di averlo lessato... rivedendo i collegamenti ho invertito la polarità :'(

...tu come hai raccolto questi dati? Oscilloscopio? ;)

illogico

#13
Sep 26, 2010, 11:41 pm Last Edit: Sep 26, 2010, 11:55 pm by illogico Reason: 1
Se usi 3.3v (ma anche 5V) non si lessa... (nel fare i tentativi penso di aver sbagliato tutte le combinazioni possibili...)

Inizialmente un amico aveva studiato il TX20 con l'oscilloscopio mentre era attaccato alla base, quindi aveva fatto un circuito per ridurre la corrente e leggere il segnale (ma "sospettando" un clock sul "Reg-ce") [Io sono più informatico che elettronico..]

Io ho semplificato il tutto raccogliendo dal thread che avevi segnalato il fatto che il CE basta metterlo a massa, e poi ho "intuito" il bisogno della resistenza perchè con il tester (alla porca) il voltaggio sul serial era 3.6 volt...  (Quindi se provi tra gnd e serial dovresti avere un segnale di vita)

Ciao
Nick

P.s. Ho messo il Pin digitale in input e ho attivato il pullup mettendolo a HIGH per non avere "stati indefiniti"
[I dati li ho raccolti campionando diverse velocità e direzioni, quindi ho "tagliato" i campi e li ho ordinati... i valori erano "congruenti" e logici]

P.p.s. con sensori "naturali" c'e' il problema della taratura... il tx-20 essendo elettronico è auto-tarato ;)

Ultimo: per la piedinatura avevo riportato il tuo schema ma se prendiamo come riferimento: http://pinouts.ru/connector/4_pin_RJ11_male_connector.shtml

Allora è invertito e sul (mio) maschio RJ-11 del TX-20 sono:
4 - serial I/O
3 - VCC
2 - Regulator CE (Chip Enable)
1 - GND

jimmy3dita

Ciao,
confermo che la piedinatura è rj11 invertita, ho smontato il sensore e sulla scheda il pin "1" (i/o) è crimpato sul pin 4 del connettore.

Ora vediamo se riesco a fare il passo successivo (ovvero il dump sulla seriale dei dati)...  :o

Go Up