INHOUDSOPGAWE:

Servo -termometer: 6 stappe
Servo -termometer: 6 stappe

Video: Servo -termometer: 6 stappe

Video: Servo -termometer: 6 stappe
Video: Control Position and Speed of Stepper motor with L298N module using Arduino 2024, November
Anonim
Servo -termometer
Servo -termometer
Servo -termometer
Servo -termometer

Dit is 'n analoog temperatuurskerm wat bestaan uit 'n digitale sensor ds18b20, 'n mini-servo en elektronika wat gebaseer is op 'n esp-12f-module

Dit het die volgende funksies.

  • Selfstandige eenheid met elektronika, servo en battery
  • Goeie akkuraatheid en presisie met behulp van die digitale sensor ds18b20
  • Herlaaibare LIPO met ingeboude laaier
  • Baie lae rustende stroom (<20uA) vir lang batterylewe
  • Servo het net weer vir 'n kort tydjie aangeskakel, wat 'n goeie batterylewe gee.
  • Normaalweg slaap die module tussen temperatuuropdaterings, maar kan omskep word in 'n nie -slaapmodus vir kontrole en konfigurasie
  • Oplaai van konfigurasie data en servo toets vanaf die web koppelvlak
  • Minimum, maksimum temperature, Celsius. Fahrenheit, en opdateringsinterval konfigureerbaar
  • Battery monitering
  • Sagteware kan opgedateer word via die webkoppelvlak
  • Lae koste

Stap 1: Komponente en gereedskap benodig

Benodig komponente en gereedskap
Benodig komponente en gereedskap
Benodig komponente en gereedskap
Benodig komponente en gereedskap

Die volgende komponente is nodig

  • Min servomotor (MG90S)
  • DS18B20 temp sensor
  • ESP-12F (esp8266-module)
  • 18650 LIPO battery
  • LIPO batteryhouer
  • mikro USB LIPO laaier
  • LDO lae stilstaande stroom 3.3V reguleerder. Ek het XC6203 gebruik
  • Weerstande 4K7, 10K
  • 220uF 6V ontkoppelingskondensator
  • n kanaal MOSFET bestuurder met 'n lae drempel. Ek het AO3400 gebruik
  • p kanaal MOSFET bestuurder met 'n lae drempel. Ek het AO3401 gebruik
  • Klein stukkie PCB prototipe bord
  • Skuif die aan / uit -skakelaar
  • Klein drukknoppie (6 mm vierkant)
  • Sluit draad aan
  • Dubbelzijdige kleeflint
  • 3D -gedrukte omhulselontwerp beskikbaar op
  • Opsionele wyser. Ek het 'n ekstra horlosie gebruik; 'n gedrukte weergawe mag gebruik word.

Die volgende gereedskap is nodig

  • Fine Point soldeerbout
  • Warm gom geweer
  • Gaatjiepons

Stap 2: Elektronika

Elektronika
Elektronika

Die meeste elektronika is 'n ESP8266 wifi -mikrobeheereenheid. 'N Klein hoeveelheid ondersteuningselektronika is nodig om die servomotor in staat te stel en die battery na 3.3V te reguleer, die sensors te ondersteun en 'n weerstandsverdeler om die batteryspanning te monitor. Die servomotortoevoer word aangedryf deur 2 MOSFET -transistors. Hulle word 'n kort tydjie aangeskakel voordat 'n servo -opdatering nodig is en 'n kort tydjie ingeskakel sodat die servo sy beweging kan voltooi. Die vrag is so lig dat die servo nie kan beweeg as hy nie aangedryf word nie.

Al die ondersteuningselektronika, afgesien van die LIPO -laaier, is op die printplaat van die PCB gemonteer. Ek gebruik SMD-komponente om dit so klein as moontlik te hou, maar dit kan gedoen word met deurloopkomponente, aangesien daar redelike ruimte beskikbaar is. Die LIPO -laaier het 'n mikro -USB -poort wat gebruik kan word om die battery te herlaai. 'N Skuifskakelaar kan gebruik word om die krag aan en af te skakel. 'N Knoppie is om 'n oorheersende slaapmodus toe te laat tydens die aanskakel, wat dan toegang tot die web vir konfigurasie en beheer moontlik maak.

Stap 3: Montering

Vergadering
Vergadering
Vergadering
Vergadering
Vergadering
Vergadering

Ek het die volgende monteerstappe gedoen

  • Druk 'n 3D -omhulsel op
  • Soldeerdraad op skakelaar, knoppie en 3 -pins aansluiting
  • Monteer die skakelaar, knoppie en aansluiting op die omhulsel met 'n klein hoeveelheid harsgom om dit vas te maak
  • Sit die servo op sy plek. Daar is genoeg ruimte agter sodat die bedrading kan deurgaan. 'N Wig karton kan dan gebruik word om dit vas te maak.
  • Beveilig die LIPO -laaier. Ek het draad deur die vier gate op die LIPO -laaier gebruik om die hoogte (2 mm) van die basis aan te pas sodat dit in lyn kom met die usb -gat. Warm gom in plek.
  • Draad battery houer, skakelaar en laaier laat genoeg leegte op die batterykabels sodat dit aan die kant kan wees.
  • Maak perifere elektronika op 'n klein stuk prototipe bord.
  • Monteer prototipe bo-op die esp-12-module.
  • Voltooi die bedrading
  • Druk die geselekteerde draaiknop (en wyser indien nodig) uit op stywe glanspapier en sny dit uit.
  • Gebruik 'n gaatjie om 'n gat vir die servo te skep
  • Heg die draaiknop aan die boks vas met dubbelzijdige kleeflint
  • Heg wyser aan servo
  • Kalibreer die posisie van die wyser deur die webfasiliteit te gebruik om 'n temperatuurwaarde in te stel.

Stap 4: sagteware

Die sagteware vir hierdie projek is beskikbaar by github

Dit is 'n Arduino -gebaseerde projek, dus stel 'n esp8266 Arduino -ontwikkelingsomgewing op. U kan die wagwoorde vir WifiManager en sagteware -opdatering in die ino -lêer op iets meer verstandig stel.

Dit moet saamgestel word in Arduino ESP8266 IDE en in die reeks opgelaai word na die module. Dit is goed om GPIO13 na GND in u ontwikkelingsomgewing oor te dra, aangesien die sagteware dan in 'n deurlopende modus sal wees.

By die eerste gebruik begin 'n toegangspunt waarmee 'n telefoon of tablet gekoppel moet word. Sien kode vir wagwoord. Die blaaier op die telefoon of tablet moet dan gebruik word om toegang tot 192.168.4.1 te verkry, wat die plaaslike wifi -adres en wagwoord kan kies. Dit hoef slegs een keer gedoen te word of as die wifi -netwerk verander. Van dan af sal die module, indien nodig, aansluit by die plaaslike wifi -netwerk. Normale diep slaapmodus gebruik nie wifi nie. Dit word wakker met die slaapinterval, lees die temperatuur, werk die servo by en gaan slaap weer. Elke 10de lesing neem 'n batterylees en teken dit aan. Dit kan nagegaan word deur in die wifi -modus sonder slaap aan te skakel en die loglêer na te gaan.

Sommige ondersteuningslêers moet ook opgelaai word. Dit is in die datagids van die git. Hulle kan opgelaai word deur toegang tot ip/upload te verkry. Sodra dit opgelaai is, kan ip/edit gebruik word om die oplaai makliker te maak.

Stap 5: Bediening

Na die konfigurasie werk die eenheid net nadat dit aangeskakel is.

As dit aangeskakel word met die druk op die knoppie, kan 'n aantal webopdragte gebruik word.

  • http:/ipAddress/upload gee toegang tot 'n eenvoudige oplaai van lêers. Word gebruik om die stelsel op te laai.
  • http:/ipAddress/edit gee toegang tot die liasseringstelsel (byvoorbeeld om 'n nuwe opset te laai of toegang tot enige loglêer te verkry)
  • http:/ipAddress gee toegang tot 'n vorm om die skerm op 'n waarde te stel. Kan gebruik word om die wyser aan te pas.
  • http:/ipAddress/firmware om 'n nuwe firmware -binêre op te laai

Stap 6: Skakel en instel

Die powerpoint bevat 'n paar voorbeeldskyfies vir gebruik in Celsius of Fahrenheit. Dit maak voorsiening vir 15 segmente, maar die reeks kan maklik aangepas word deur die stapinterval te verander. As meer of minder segmente verlang word, moet u die eienskappe van die doughnut -voorwerp wysig. Net so kan die kleuragtergronde van die segmente verander word.

Die konfigurasie data is vervat in 'n lêer genaamd servoTempConfig.txt Dit word in die liasseerstelsel op die module gehou. Om die konfigurasie te verander, wysig die lêer en laai dit op via die webkoppelvlak http: ipAddress/edit

Die konfigurasie data is slegs waardes op lyne soos volg

  • gasheernaam
  • minimum temperatuur (in die gekose eenhede)
  • maksimum getoonde temperatuur (in die gekose eenhede)
  • slaapinterval tussen lesings in sekondes
  • slaapmodus (0 = Aanhoudend aan met wifi, 1 = normale diep slaap, 2 = Aan Deurlopend geen wifi nie
  • aktiwiteitsregistrasie na servoTempLog.txt as aanmelding = 1. Batteryspannings word altyd aangeteken.
  • temperatuur eenhede 0 = Celsius, 1 = Fahrenheit
  • ADC_CAL kalibrasie vir batterispanningslesings.

Maak seker dat die minimum en maksimum temperature in die gekose C/F -eenhede is.

Aanbeveel: