Innehållsförteckning:

ServoTermometer: 6 steg
ServoTermometer: 6 steg

Video: ServoTermometer: 6 steg

Video: ServoTermometer: 6 steg
Video: Голубая стрела (1958) фильм 2024, November
Anonim
ServoTermometer
ServoTermometer
ServoTermometer
ServoTermometer

Detta är en analog temperaturdisplay byggd från en digital sensor ds18b20, en miniservo och elektronik baserad på en esp-12f-modul

Den har följande funktioner.

  • Fristående enhet som rymmer elektronik, servo och batteri
  • Bra noggrannhet och precision med digital sensor ds18b20
  • Laddningsbar LIPO med inbyggd laddare
  • Mycket låg viloläge (<20uA) för lång batteritid
  • Servo slås bara på under korta perioder igen vilket ger bra batteritid.
  • Normalt sover modulen mellan temperaturuppdateringar men kan förvandlas till ett icke -viloläge för kontroll och konfiguration
  • Uppladdning av konfigurationsdata och servotest från webbgränssnitt
  • Lägsta, högsta temperatur, Celsius. Fahrenheit och uppdateringsintervall konfigurerbart
  • Batteriövervakning
  • Programvaran kan uppdateras via webbgränssnitt
  • Låg kostnad

Steg 1: Komponenter och verktyg behövs

Komponenter och verktyg behövs
Komponenter och verktyg behövs
Komponenter och verktyg behövs
Komponenter och verktyg behövs

Följande komponenter behövs

  • Min servomotor (MG90S)
  • DS18b20 temp sensor
  • ESP-12F (esp8266-modul)
  • 18650 LIPO batteri
  • LIPO batterihållare
  • mikro USB LIPO laddare
  • LDO lågstoppande 3.3V regulator. Jag använde XC6203
  • Motstånd 4K7, 10K
  • 220uF 6V avkopplingskondensator
  • n kanal MOSFET låg tröskel drivrutin. Jag använde AO3400
  • p kanal MOSFET låg tröskel drivrutin. Jag använde AO3401
  • Liten bit av PCB -prototypkort
  • Skjut strömbrytaren
  • Liten tryckknapp (6 mm fyrkantig)
  • Anslut tråd
  • Dubbelsidig tejp
  • 3D -tryckt höljesdesign tillgänglig på
  • Valfri pekare. Jag använde en reservklocka; en tryckt version kan användas.

Följande verktyg behövs

  • Fine Point lödkolv
  • Lim pistol
  • Hålslag

Steg 2: Elektronik

Elektronik
Elektronik

Det mesta av elektroniken är en ESP8266 wifi mikrokontrollenhet. En liten mängd supportelektronik behövs för att aktivera servomotorn och reglera batteriet till 3,3V, stödja sensorerna och en motståndsdelare för att övervaka batterispänningen. Servomotorförsörjningen drivs av 2 MOSFET -transistorer. De slås på en kort period innan en servouppdatering behövs och lämnas på en kort period för att servo ska kunna slutföra sin rörelse. Lasten är så lätt att servon inte kommer att röra sig när den inte drivs.

All supportelektronik förutom LIPO -laddaren är monterad på PCB -prototypkortet. Jag använder SMD-komponenter för att hålla detta så litet som möjligt men det kan göras med bly-through-komponenter eftersom det finns en rimlig mängd utrymme tillgängligt. LIPO -laddaren har en mikro -USB -port som kan användas för att ladda batteriet. En skjutströmbrytare kan användas för att slå på och stänga av strömmen. En knapp är att tillåta överstyrande viloläge vid uppstart som sedan tillåter webbåtkomst för konfiguration och kontroll.

Steg 3: Montering

hopsättning
hopsättning
hopsättning
hopsättning
hopsättning
hopsättning

Jag utförde följande monteringssteg

  • Skriv ut 3D -hölje
  • Lödtråd på switch, knapp och 3 -polig kontakt
  • Montera omkopplare, knapp och kontakt på höljet med en liten mängd hartslim för att säkra
  • Montera servo på plats. Det finns tillräckligt med utrymme bakom för att ledningarna ska passera. En kil kartong kan sedan användas för att säkra den.
  • Säkra LIPO -laddaren på plats. Jag använde tråd genom de fyra hålen på LIPO -laddaren för att justera höjden (2 mm) på basen för att få den att ligga i linje med usb -hålet. Varmt lim på plats.
  • Trådbatterihållare, strömbrytare och laddare lämnar tillräckligt med sladd på batterikablarna så att det kan vara på sidan.
  • Gör perifer elektronik på en liten bit prototyper.
  • Montera prototypkort ovanpå esp-12-modulen.
  • Komplett anslutningsledning
  • Skriv ut den valda urtavlan (och pekaren om det behövs) på styvt glansigt papper och klipp ut.
  • Använd hålslag för att skapa hål för servo
  • Fäst ratten på lådan med dubbelhäftande tejp
  • Fäst pekaren på servon
  • Kalibrera pekarens position med hjälp av webben för att ställa in ett temperaturvärde.

Steg 4: Programvara

Programvaran för detta projekt är tillgänglig på github

Det är ett Arduino -baserat projekt så skapa en esp8266 Arduino -utvecklingsmiljö. Du kanske vill ange lösenorden för WifiManager och programuppdatering i ino -filen till något mer vettigt.

Den bör sammanställas i Arduino ESP8266 IDE och serieöverföras till modulen. Det är bra att koppla GPIO13 till GND i din utvecklingsmiljö eftersom programvaran då kommer att vara i kontinuerligt läge.

Första gången användningen startar en åtkomstpunkt som ska anslutas till på en telefon eller surfplatta. Se koden för lösenord. Webbläsare på telefon eller surfplatta bör sedan användas för att komma åt 192.168.4.1 vilket gör det möjligt att välja lokal wifi -ssid och lösenord. Detta behöver bara göras en gång eller om wifi -nätverket ändras. Från och med då kommer modulen att ansluta till det lokala wifi -nätverket om det behövs. Normalt djupt sömnläge använder inte wifi. Den vaknar vid sömnintervallet, läser temperaturen, uppdaterar servon och somnar om. Var tionde avläsning tar det ett batteri och läser det. Detta kan kontrolleras genom att slå på i wifi -läge utan viloläge och kontrollera loggfilen.

Vissa supportfiler bör också laddas upp. Dessa finns i gitens datamapp. De kan laddas upp genom att komma åt ip/upload. När dessa har laddats upp kan ip/edit användas för att göra ytterligare uppladdning på ett enklare sätt.

Steg 5: Drift

Efter konfigurationen fungerar enheten bara efter att den har slagits på.

Om den slås på med knappen intryckt kan ett antal webbkommandon användas.

  • http:/ipAddress/upload ger åtkomst till en enkel filöverföring. Används för att starta systemet.
  • http:/ipAddress/edit ger åtkomst till arkivsystemet (t.ex. för att ladda upp en ny konfiguration eller komma åt någon loggfil)
  • http:/ipAddress ger åtkomst till ett formulär för att ställa in displayen till ett värde. Kan användas för att justera pekaren.
  • http:/ipAddress/firmware för att ladda upp en ny firmware -binär

Steg 6: Ring och konfiguration

Powerpoint innehåller några exempelrattar för användning i Celsius eller Fahrenheit. Dessa tillåter 15 segment men intervallet kan enkelt justeras genom att ändra stegintervallet. Om fler eller färre segment önskas måste man redigera egenskaperna för donutobjektet. På samma sätt kan segmentens färgbakgrunder ändras.

Konfigurationsdata finns i en fil som kallas servoTempConfig.txt Denna finns i modulens arkiveringssystem. För att ändra konfigurationen, redigera filen och ladda upp den via webbgränssnittet http: ipAddress/edit

Konfigurationsdata är bara värden på rader enligt följande

  • värdnamn
  • minsta visade temperatur (i de valda enheterna)
  • maximal visad temperatur (i de valda enheterna)
  • sömnintervall mellan avläsningarna i sekunder
  • viloläge (0 = På kontinuerligt med wifi, 1 = normal djup sömn, 2 = På Kontinuerligt ingen wifi
  • aktivitetsloggning till servoTempLog.txt om loggning = 1. Batterispänningar loggas alltid.
  • temperaturenheter 0 = Celsius, 1 = Fahrenheit
  • ADC_CAL -kalibrering för batterispänningsmätningar.

Se till att min- och max -temperaturen ligger i de valda C/F -enheterna.

Rekommenderad: