Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

Gestione velocità e lettura rpm ventole 3 fili

Tipologie, strumenti di sviluppo, hardware e progetti

Moderatore: Foto UtentePaolino

1
voti

[11] Re: Gestione velocità e lettura rpm ventole 3 fili

Messaggioda Foto UtentePaolino » 28 dic 2012, 22:13

Mmhh.., il discorso potrebbe filare ma ora non sono in vena di ragionamenti... :D

Fammi sapere se troverai un transistor adeguato.

Ciao.

Paolo.
"Houston, Tranquillity Base here. The Eagle has landed." - Neil A.Armstrong

-------------------------------------------------------------

PIC Experience - http://www.picexperience.it
Avatar utente
Foto UtentePaolino
32,6k 8 12 13
G.Master EY
G.Master EY
 
Messaggi: 4226
Iscritto il: 20 gen 2006, 11:42
Località: Vigevano (PV)

0
voti

[12] Re: Gestione velocità e lettura rpm ventole 3 fili

Messaggioda Foto Utentebau16 » 8 gen 2013, 21:52

Ciao! Eccomi qui per aggiornare lo stato del progetto.

Non ho testato ancora con l'NPN poiché volevo prima approfondire il problema descritto utilizzando l'oscilloscopio. Ho scoperto che la ventola mi restituisce degli impulsi completamente sballati nel momento in cui lo stato dell'onda quadra PWM si trova nello stato basso. :?

Il disturbo si è completamente risolto mantenendo un minimo di 3Vdc sulla ventola. Sicuramente il circuito interno della ventola necessità di un minimo di alimentazione per poter restituire dei corretti impulsi per la lettura dei giri al minuto.

Questo quindi mi porta ad avere un PWM che ha uno stato alto di 12Vdc ad uno stato basso di 3Vdc. Quindi ora in aggiunta vi è un segnale di 5Vdc portato a 3Vdc (tramite alcuni diodi) per poi farlo arrivare sempre alla ventola nel momento in cui la comando.

Inoltre mi risolve un problema fastidioso che avevo in precedenza: cioè che quando comandavo al di sotto del 20% molte volte la ventola non riusciva a partire. Ora invece spengo e accendo la ventola da un minimo circa di 550rpm fino ad un massimo di 1550rpm.

Il cirucito ora funziona e sul software nel PC leggo correttamente i giri. :ok:
Sicuramente migliorerò il codice del PIC con il consiglio di Foto Utenteg.schgor.

Per qualsiasi domanda o chiarimento sulla soluzione sono disponibile.

Ora vorrei porre un quesito:
sostituire il mio attuale transceiver MAX232 che utilizzo per comunicare, con uno più nuovo di tipo USB.
Non voglio addentrarmi troppo in questo mondo poiché ho visto che ci sono molte difficoltà. Vorrei solo uno di quei transceiver "USB - UART" in modo da mantenere sempre la comunicazione seriale ma avendo un collegamento USB. Ho letto qualcosa su internet ma ce molta confusione... :cry:

Quale modello mi consigliate di transceiver USB ? e quali consigli mi date ? :?:
Avatar utente
Foto Utentebau16
35 2
 
Messaggi: 31
Iscritto il: 28 dic 2012, 0:36

1
voti

[13] Re: Gestione velocità e lettura rpm ventole 3 fili

Messaggioda Foto UtentePaolino » 9 gen 2013, 9:42

"Houston, Tranquillity Base here. The Eagle has landed." - Neil A.Armstrong

-------------------------------------------------------------

PIC Experience - http://www.picexperience.it
Avatar utente
Foto UtentePaolino
32,6k 8 12 13
G.Master EY
G.Master EY
 
Messaggi: 4226
Iscritto il: 20 gen 2006, 11:42
Località: Vigevano (PV)

0
voti

[14] Re: Gestione velocità e lettura rpm ventole 3 fili

Messaggioda Foto Utentebau16 » 15 gen 2013, 19:52

Paolino ha scritto:Puoi provare con questo convertitore per tensioni 3V3 oppure quest'altro per tensioni di 5 V.


Ciao,
mi sono informato su questo tipo di interfacciamento. :ok:
Molto interessante e utile avere un semplice cavo, con mini-circuito nel connettore, come mi hai suggerito tu. Una soluzione davvero stupenda che non immaginavo potesse esistere. =P~
Ma correggimi se sbaglio: tra i due che mi consigli dovrei prendere quello con tensioni 5V visto che mi interfaccio con il PIC16F648A che sicuramente ha un UART con segnali 5V. Giusto? o per un altro motivo? :?

Inoltre ho visto sul sito produttore del "FTDI Chip" molti modelli interessanti, mi sarebbe piaciuto utilizzare un qualcosa di non integrato, ad esempio il modello FT231X... unico problema le dimensioni ... #-o
...sembrano non esserci componenti con distanza di piedinatura di 2,54mm tipo il microcontrollore che utilizzo.

- Mi chiedevo, non esiste proprio nulla con dimensioni del genere?

- Oppure, potrei prendere un FT231XQ con dimensioni QFN-20 è montarlo facilmente su un qualche socket adattatore per portarlo alle dimensioni che desidero?
Avatar utente
Foto Utentebau16
35 2
 
Messaggi: 31
Iscritto il: 28 dic 2012, 0:36

1
voti

[15] Re: Gestione velocità e lettura rpm ventole 3 fili

Messaggioda Foto UtentePaolino » 16 gen 2013, 14:56

Se alimenti il PIC a 5V ti ci vuole l'adattatore a 5V, certamente.

Per quanto riguarda il chip di FTDI, non sono in grao di darti un aiuto in quanto non conosco i chip che hai indicato, sorry

Ciao.

Paolo.
"Houston, Tranquillity Base here. The Eagle has landed." - Neil A.Armstrong

-------------------------------------------------------------

PIC Experience - http://www.picexperience.it
Avatar utente
Foto UtentePaolino
32,6k 8 12 13
G.Master EY
G.Master EY
 
Messaggi: 4226
Iscritto il: 20 gen 2006, 11:42
Località: Vigevano (PV)

0
voti

[16] Re: Gestione velocità e lettura rpm ventole 3 fili

Messaggioda Foto Utentebau16 » 16 gen 2013, 17:55

Paolino ha scritto:Se alimenti il PIC a 5 V ti ci vuole l'adattatore a 5 V, certamente.

Si lo alimento a 5V. Grazie mille! Ora sono certo di aver capito bene. :ok:

Paolino ha scritto:Per quanto riguarda il chip di FTDI, non sono in grao di darti un aiuto in quanto non conosco i chip che hai indicato, sorry

Nessun problema, per il momento trovo che le risposte qui sono davvero ottime e i membri come te davvero disponibili! Devo fare complimenti al forum! ;-)

Più che altro speravo di risolvere il problema delle dimensioni...
Nessuno ha esperienza con dei socket per un qualsiasi componente di dimensioni QFN-20? :?:

Non so se mi sono spiegato, mi chiedevo se esiste il modo di posizionare un componente del genere su un qualche socket bloccabile (visto che da saldare con strumenti casalinghi è impossibile), per poi il socket su una qualsiasi scheda o posizionarla su una basetta sperimentale. :?:

Su google in immagini ho trovato questo: http://www.google.it/search?hl=it&q=qfn-20+socket&bav=on.2,or.r_gc.r_pw.r_qf.&bvm=bv.41018144,d.Yms&biw=1280&bih=939&um=1&ie=UTF-8&tbm=isch&source=og&sa=N&tab=wi&ei=38z2UMrCMeb44QTxi4H4DQ
Avatar utente
Foto Utentebau16
35 2
 
Messaggi: 31
Iscritto il: 28 dic 2012, 0:36

2
voti

[17] Re: Gestione velocità e lettura rpm ventole 3 fili

Messaggioda Foto Utentebau16 » 20 mar 2013, 22:21

Salve a tutti! O_/
Purtroppo per motivi di impegni/lavoro non ho dedicato molto tempo al progetto che è ancora in fase di lavorazione. Però in questi giorni sono riuscito a dedicare qualche momento alla comunicazione USB...

Innanzitutto vi illustro la comunicazione USB -> PIC che ho trovato e che funziona davvero bene.
- Chip utilizzato: FT231XS della FTDI chip (Dimensione SSOP-20) (Costo di circa 2,50€ da rs-components)
- Adattatore da SSOP-20 a DIP-20 (Costo di circa 2,00€ da ebay)
- Qualche condensatore e resistenza (vedere manuale del componente per i dettagli)
- Configurazione "Self Powered Configuration", pagina 23 del manuale FT231X scaricabile dal sito della FTDI.
Seguendo questi punti avremo una piccola scheda con la quale interfacciare direttamente il PC e il microcontrollore attraverso una porta COM, inoltre questo chip e configurabile a piacimento tramite il software FT-Prog della FTDI.

Spero possa tornare utile a qualcuno come valida opzione, tra le tante, per avere una comunicazione USB anche con vecchi microcontrollori. :ok:

Appena trovo il tempo di riordinare le idee e lo schema attuale vi posto i risultati.
Avatar utente
Foto Utentebau16
35 2
 
Messaggi: 31
Iscritto il: 28 dic 2012, 0:36

0
voti

[18] Re: Gestione velocità e lettura rpm ventole 3 fili

Messaggioda Foto Utentebau16 » 4 set 2013, 12:07

Buongiorno a tutti! O_/
Sono sempre qui per parlare ancora di questo progetto che sembra arrivato al termine! :ok:

Il progetto software e hardware ora incorpora, (sempre utilizzando un solo PIC16F648A):
- Gestione PWM delle ventole. (5 in totale)
- Lettura RPM delle ventole.
- Comandi manuali da scheda per selezionare una ventola e incrementare/diminuire il PWM.
- Lettura di 5 sensori di temperatura, una per ogni ventola. Più un sesto sensore per la temperatura su scheda.
- Comunicazione via USB con FT231XS.
- Software su PC di gestione in VB.NET.

Purtroppo ho ancora un piccolo problema, sicuramente software, che mi da noia e vorrei risolvere. #-o
Nel momento in cui alimento il circuito, o dopo alcune scansioni software il PIC16F648A sembra non elaborare più nulla, nemmeno gli interrupt vengono scatenati.
Nel dettaglio ho già compreso che il software si ferma nella funzione di trasmissione dati, una parte che dovrebbe essere semplice ma sembra che mi dia ancora problemi.

Riporto qui il codice sperando che qualcuno mi illumini su dove sia l'errore o anche su migliorie di codice! :roll:
In pratica trasmetto 29 byte a 9600baud, la trasmissione viene abilitata a inizio software e mai più disabilitata. Ho già anche verificato che il software non vada in overflow di stack ma simulando non supero il 5 livello su 8. Se può servire: PIE1: 00100010 - TXSTA: 00100100 .
Come capirete nel codice, ho inserito il LED1 per verificare e trovare il problema.
Quando si blocca infatti il LED 1 rimane spento.

Codice: Seleziona tutto
MAIN

; TRASMISSIONE DATI
   BTFSC   CONSENSI,1
   BCF      LED1
   
   BTFSC   CONSENSI,1
   CALL   UART_TRASMISSIONE

   BSF      LED1

; COMANDI MANUALI
   CALL   COMANDI_MANUALI

; AGGIORNA PWM
   BTFSC   CONSENSI,0
   CALL   AGGIORNA_PWM

; LETTURA TEMPERATURE   
   CALL   LETTURA_TEMPERATURE
   
   GOTO   MAIN

UART_TRASMISSIONE
   
; ATTESA STATO PRONTO
   BTFSS   PIR1,TXIF
   GOTO   $-1
      
; TRASMISSIONE BYTE00
   MOVFW   T_TX_B00   
   MOVWF   TXREG
   BTFSS   PIR1,TXIF
   GOTO   $-1
      
; TRASMISSIONE BYTE01      
   MOVFW   T_TX_B01   
   MOVWF   TXREG
   BTFSS   PIR1,TXIF
   GOTO   $-1   

; TRASMISSIONE BYTE02
   MOVFW   T_TX_B02   
   MOVWF   TXREG
   BTFSS   PIR1,TXIF
   GOTO   $-1   

; TRASMISSIONE BYTE03
   MOVFW   T_TX_B03   
   MOVWF   TXREG
   BTFSS   PIR1,TXIF
   GOTO   $-1   

; TRASMISSIONE BYTE04
   MOVFW   T_TX_B04   
   MOVWF   TXREG
   BTFSS   PIR1,TXIF
   GOTO   $-1   

; TRASMISSIONE BYTE05
   MOVFW   T_TX_B05   
   MOVWF   TXREG
   BTFSS   PIR1,TXIF
   GOTO   $-1   

; TRASMISSIONE BYTE06
   MOVFW   T_TX_B06   
   MOVWF   TXREG
   BTFSS   PIR1,TXIF
   GOTO   $-1   

; TRASMISSIONE BYTE07
   MOVFW   T_TX_B07   
   MOVWF   TXREG
   BTFSS   PIR1,TXIF
   GOTO   $-1   

; TRASMISSIONE BYTE08
   MOVFW   T_TX_B08   
   MOVWF   TXREG
   BTFSS   PIR1,TXIF
   GOTO   $-1   

; TRASMISSIONE BYTE09
   MOVFW   T_TX_B09   
   MOVWF   TXREG
   BTFSS   PIR1,TXIF
   GOTO   $-1   

; TRASMISSIONE BYTE10
   MOVFW   T_TX_B10   
   MOVWF   TXREG
   BTFSS   PIR1,TXIF
   GOTO   $-1   

; TRASMISSIONE BYTE11
   MOVFW   T_TX_B11   
   MOVWF   TXREG
   BTFSS   PIR1,TXIF
   GOTO   $-1   

; TRASMISSIONE BYTE12
   MOVFW   T_TX_B12   
   MOVWF   TXREG
   BTFSS   PIR1,TXIF
   GOTO   $-1   

; TRASMISSIONE BYTE13
   MOVFW   T_TX_B13   
   MOVWF   TXREG
   BTFSS   PIR1,TXIF
   GOTO   $-1   

; TRASMISSIONE BYTE14
   MOVFW   T_TX_B14   
   MOVWF   TXREG
   BTFSS   PIR1,TXIF
   GOTO   $-1   

; TRASMISSIONE BYTE15
   MOVFW   T_TX_B15   
   MOVWF   TXREG
   BTFSS   PIR1,TXIF
   GOTO   $-1   

; TRASMISSIONE BYTE16
   MOVFW   T_TX_B16   
   MOVWF   TXREG
   BTFSS   PIR1,TXIF
   GOTO   $-1   

; TRASMISSIONE BYTE17
   MOVFW   T_TX_B17   
   MOVWF   TXREG
   BTFSS   PIR1,TXIF
   GOTO   $-1   

; TRASMISSIONE BYTE18
   MOVFW   T_TX_B18   
   MOVWF   TXREG
   BTFSS   PIR1,TXIF
   GOTO   $-1   

; TRASMISSIONE BYTE19
   MOVFW   T_TX_B19   
   MOVWF   TXREG
   BTFSS   PIR1,TXIF
   GOTO   $-1   

; TRASMISSIONE BYTE20
   MOVFW   T_TX_B20   
   MOVWF   TXREG
   BTFSS   PIR1,TXIF
   GOTO   $-1   

; TRASMISSIONE BYTE21
   MOVFW   T_TX_B21   
   MOVWF   TXREG
   BTFSS   PIR1,TXIF
   GOTO   $-1   

; TRASMISSIONE BYTE22
   MOVFW   T_TX_B22   
   MOVWF   TXREG
   BTFSS   PIR1,TXIF
   GOTO   $-1   

; TRASMISSIONE BYTE23
   MOVFW   T_TX_B23   
   MOVWF   TXREG
   BTFSS   PIR1,TXIF
   GOTO   $-1   

; TRASMISSIONE BYTE24
   MOVFW   T_TX_B24   
   MOVWF   TXREG
   BTFSS   PIR1,TXIF
   GOTO   $-1   

; TRASMISSIONE BYTE25
   MOVFW   T_TX_B25   
   MOVWF   TXREG
   BTFSS   PIR1,TXIF
   GOTO   $-1   

; TRASMISSIONE BYTE26
   MOVFW   T_TX_B26   
   MOVWF   TXREG
   BTFSS   PIR1,TXIF
   GOTO   $-1   

; TRASMISSIONE BYTE27
   MOVFW   T_TX_B27   
   MOVWF   TXREG
   BTFSS   PIR1,TXIF
   GOTO   $-1   

; TRASMISSIONE BYTE28
   MOVFW   T_TX_B28   
   MOVWF   TXREG
   BTFSS   PIR1,TXIF
   GOTO   $-1   

; RESETTO IL BIT CHE CONSENTE LA TRASMISSIONE
; BIT A UNO OGNI SECONDO, SETTATO ALL'INTERNO DEL TIMER2
   BCF      CONSENSI,1

   RETURN


Un grazie anticipato! ;-)
Avatar utente
Foto Utentebau16
35 2
 
Messaggi: 31
Iscritto il: 28 dic 2012, 0:36

1
voti

[19] Re: Gestione velocità e lettura rpm ventole 3 fili

Messaggioda Foto UtentePaolino » 6 set 2013, 13:26

Riesci a provarlo in debug? Hai PICKit3 o ICD3?

Ciao.

Paolo.
"Houston, Tranquillity Base here. The Eagle has landed." - Neil A.Armstrong

-------------------------------------------------------------

PIC Experience - http://www.picexperience.it
Avatar utente
Foto UtentePaolino
32,6k 8 12 13
G.Master EY
G.Master EY
 
Messaggi: 4226
Iscritto il: 20 gen 2006, 11:42
Località: Vigevano (PV)

0
voti

[20] Re: Gestione velocità e lettura rpm ventole 3 fili

Messaggioda Foto Utentebau16 » 6 set 2013, 20:14

Paolino ha scritto:Riesci a provarlo in debug? Hai PICKit3 o ICD3?


Ho da poco preso un PICKit3. ;-)
La mia esperienza precedente era con un Picstart Plus (perfetto, ma solo preso in prestito per un po' di tempo), e quindi ora praticamente il PICKit3 lo utilizzo collegato ad un socket. :roll:

Ho appena ri-aperto il manuale del PICKit3 dove sono spiegati i collegamenti per questa modalità. :ok:

Intanto ne approfitto per consigli, istruzioni e precauzioni sull'utilizzo di questa modalità.
Avatar utente
Foto Utentebau16
35 2
 
Messaggi: 31
Iscritto il: 28 dic 2012, 0:36

PrecedenteProssimo

Torna a Realizzazioni, interfacciamento e nozioni generali.

Chi c’è in linea

Visitano il forum: Nessuno e 9 ospiti