Sommario:

Servotermometro: 6 passaggi
Servotermometro: 6 passaggi

Video: Servotermometro: 6 passaggi

Video: Servotermometro: 6 passaggi
Video: Датчик температуры серводвигателя Arduino 2024, Novembre
Anonim
Servotermometro
Servotermometro
Servotermometro
Servotermometro

Questo è un display di temperatura analogico costruito da un sensore digitale ds18b20, un mini servo e un'elettronica basata su un modulo esp-12f

Ha le seguenti caratteristiche.

  • Unità autonoma che tiene l'elettronica, il servo e la batteria
  • Buona accuratezza e precisione utilizzando il sensore digitale ds18b20
  • LIPO ricaricabile con caricatore integrato
  • Corrente di riposo molto bassa (< 20uA) per una lunga durata della batteria
  • Servo acceso solo per brevi periodi di nuovo dando una buona durata della batteria.
  • Normalmente il modulo dorme tra gli aggiornamenti della temperatura ma può essere trasformato in una modalità non di sospensione per il controllo e la configurazione
  • Caricamento dati di configurazione e servo test dall'interfaccia web
  • Temperature minime, massime, gradi centigradi. Fahrenheit e intervallo di aggiornamento configurabili
  • Monitoraggio della batteria
  • Il software può essere aggiornato tramite interfaccia web
  • Basso costo

Passaggio 1: componenti e strumenti necessari

Componenti e strumenti necessari
Componenti e strumenti necessari
Componenti e strumenti necessari
Componenti e strumenti necessari

Sono necessari i seguenti componenti

  • Mini servomotore (MG90S)
  • Sensore di temperatura Ds18b20
  • ESP-12F (modulo esp8266)
  • 18650 batteria LIPO
  • Portabatterie LIPO
  • caricatore micro USB LIPO
  • Regolatore LDO a bassa corrente di riposo 3.3V. Ho usato XC6203
  • Resistori 4K7, 10K
  • Condensatore di disaccoppiamento 220uF 6V
  • driver a bassa soglia MOSFET a canale n. Ho usato AO3400
  • driver a soglia bassa MOSFET a canale p. Ho usato AO3401
  • Piccolo pezzo di scheda prototipo del pcb
  • Far scorrere l'interruttore di alimentazione
  • Pulsante piccolo (quadrato da 6 mm)
  • Collegare il cavo
  • Nastro biadesivo
  • Design della custodia stampato in 3D disponibile su
  • Puntatore opzionale. Ho usato una lancetta di ricambio; può essere utilizzata una versione stampata.

Sono necessari i seguenti strumenti

  • Saldatore a punta fine
  • Pistola per colla a caldo
  • perforazione

Passaggio 2: elettronica

Elettronica
Elettronica

La maggior parte dell'elettronica è un'unità microcontrollore wifi ESP8266. È necessaria una piccola quantità di elettronica di supporto per abilitare il servomotore e regolare la batteria a 3,3 V, supportare i sensori e un divisore di resistenza per monitorare la tensione della batteria. L'alimentazione del servomotore è azionata da 2 transistor MOSFET. Vengono attivati per un breve periodo prima che sia necessario un aggiornamento del servo e lasciati accesi per un breve periodo per consentire al servo di completare il suo movimento. Il carico è così leggero che il servo non si muoverà quando non è alimentato.

Tutta l'elettronica di supporto, ad eccezione del caricatore LIPO, è montata sulla scheda prototipo del pcb. Uso componenti SMD per mantenerlo il più piccolo possibile, ma potrebbe essere fatto con componenti lead-thru poiché c'è una ragionevole quantità di spazio disponibile. Il caricabatterie LIPO ha una porta micro USB che può essere utilizzata per ricaricare la batteria. È possibile utilizzare un interruttore di alimentazione a scorrimento per accendere e spegnere l'unità. Un pulsante consente di ignorare la modalità di sospensione all'accensione, che consente quindi l'accesso al Web per la configurazione e il controllo.

Passaggio 3: assemblaggio

Assemblea
Assemblea
Assemblea
Assemblea
Assemblea
Assemblea

Ho eseguito i seguenti passaggi di montaggio

  • Stampa la custodia 3D
  • Saldare il filo su interruttore, pulsante e connettore a 3 pin
  • Fissare l'interruttore, il pulsante e il connettore alla custodia utilizzando una piccola quantità di colla di resina per fissare
  • Montare il servo in posizione. Dietro c'è abbastanza spazio per il passaggio del cablaggio. Un cuneo di cartone può quindi essere utilizzato per fissarlo.
  • Caricatore LIPO sicuro in posizione. Ho usato il filo attraverso i quattro fori sul caricabatterie LIPO per regolare l'altezza (2 mm) della base per allinearla con il foro USB. Colla a caldo in posizione.
  • Collegare il portabatteria, l'interruttore e il caricabatterie lasciando abbastanza gioco sui cavi della batteria in modo che possa essere di lato.
  • Crea l'elettronica periferica su un piccolo pezzo di scheda di prototipazione.
  • Montare la scheda di prototipazione sulla parte superiore del modulo esp-12.
  • Cablaggio completo di collegamento
  • Stampa il quadrante selezionato (e il puntatore se necessario) su carta lucida rigida e ritaglia.
  • Usa la perforatrice per creare il foro per il servo
  • Attacca il quadrante alla scatola con nastro biadesivo
  • Attacca il puntatore al servo
  • Calibrare la posizione del puntatore utilizzando la funzione web per impostare un valore di temperatura.

Passaggio 4: software

Il software per questo progetto è disponibile su github

È un progetto basato su Arduino, quindi imposta un ambiente di sviluppo Arduino esp8266. Potresti voler impostare le password per WifiManager e l'aggiornamento del software nel file ino su qualcosa di più sensato.

Dovrebbe essere compilato nell'IDE Arduino ESP8266 e caricato in serie sul modulo. È bene collegare GPIO13 a GND nel tuo ambiente di sviluppo poiché il software sarà quindi in modalità continua.

Il primo utilizzo avvierà un punto di accesso a cui deve essere connesso su un telefono o tablet. Vedere il codice per la password. Il browser su telefono o tablet dovrebbe quindi essere utilizzato per accedere a 192.168.4.1 che consentirà la selezione di ssid e password del wifi locale. Questo deve essere fatto solo una volta o se la rete wifi cambia. Da quel momento in poi il modulo si collegherà alla rete wifi locale, se necessario. La modalità di sospensione profonda normale non utilizza il Wi-Fi. Si sveglia all'intervallo di sospensione, legge la temperatura, aggiorna il servo e torna a dormire. Ogni decima lettura esegue una lettura della batteria e la registra. Questo può essere verificato attivando la modalità wifi senza sospensione e controllando il file di registro.

Dovrebbero essere caricati anche alcuni file di supporto. Questi sono nella cartella dei dati di git. Possono essere caricati accedendo a ip/upload. Una volta che questi sono stati caricati, ip/edit può essere utilizzato per eseguire ulteriori caricamenti in modo più semplice.

Passaggio 5: operazione

Dopo la configurazione, l'unità funzionerà solo dopo essere stata accesa.

Se viene acceso con il pulsante premuto, è possibile utilizzare una serie di comandi web.

  • ipAddress/upload dà accesso a un semplice caricamento di file. Usato per avviare il sistema.
  • https://ipAddress/edit dà accesso al sistema di archiviazione (ad es. per ulpoad una nuova configurazione o accedere a qualsiasi file di registro)
  • https://ipAddress dà accesso a un form per impostare la visualizzazione su un valore. Può essere utilizzato per regolare il puntatore.
  • https://ipAddress/firmware per caricare un nuovo binario del firmware

Passaggio 6: composizione e configurazione

Il powerpoint contiene alcuni quadranti di esempio per l'uso in gradi centigradi o fahrenheit. Questi consentono 15 segmenti, ma l'intervallo può essere facilmente regolato modificando l'intervallo di passi. Se si desiderano più o meno segmenti, è necessario modificare le proprietà dell'oggetto ciambella. Allo stesso modo è possibile modificare i colori di sfondo dei segmenti.

I dati di configurazione sono contenuti in un file chiamato servoTempConfig.txt Questo è contenuto nel sistema di archiviazione sul modulo. Per modificare la configurazione modificare il file e caricarlo tramite l'interfaccia web

I dati di configurazione sono solo valori sulle righe come segue

  • Nome host
  • temperatura minima visualizzata (nelle unità scelte)
  • temperatura massima visualizzata (nelle unità scelte)
  • intervallo di sonno tra le letture in secondi
  • modalità di sospensione (0 = acceso continuamente con wifi, 1 = normale sonno profondo, 2 = acceso continuamente senza wifi
  • registrazione dell'attività su servoTempLog.txt se registrazione = 1. Le tensioni della batteria vengono sempre registrate.
  • unità di temperatura 0=Centigradi, 1=Fahrenheit
  • Calibrazione ADC_CAL per le letture della tensione della batteria.

Assicurarsi che le temperature minima e massima siano nelle unità C/F selezionate.

Consigliato: