INHOUDSOPGAWE:
- Voorrade
- Stap 1: Maak 'n wyser
- Stap 2: Koppel die wyser aan die servo -arm
- Stap 3: Sny die agterkant
- Stap 4: Monteer Servo op Backer
- Stap 5: Druk die skaal uit
- Stap 6: Pas Skaal toe op Backer
- Stap 7: Elektriese samestelling
- Stap 8: Finale samestelling / kalibrasie
- Stap 9: Kode 1
- Stap 10: Kode 2
- Stap 11: Sluit af
2025 Outeur: John Day | [email protected]. Laas verander: 2025-01-13 06:56
Inleiding
Voordat LED's en rekenaarskerms algemene metodes was om inligting te vertoon, was ingenieurs en wetenskaplikes afhanklik van analoog paneelmeters. Trouens, hulle is tot vandag toe nog in gebruik in 'n aantal beheerkamers omdat hulle:
- redelik groot gemaak kan word
- gee inligting in 'n oogopslag
In hierdie projek gaan ons 'n servo gebruik om 'n eenvoudige analoog meter te bou en dit dan as 'n GS -voltmeter te gebruik. Let daarop dat baie van die onderdele vir hierdie projek, insluitend die TINKERplate, hier beskikbaar is:
Pi-Plates.com/TINKERkit
Voorrade
- 'N Pi-Plate TINKERplaat gekoppel aan 'n Raspberry Pi met Raspian en die Pi-Plates Python 3-modules geïnstalleer. Sien meer op:
- Vyf manlike tot manlike springdrade
- 'N 9G servomotor
- Daarbenewens benodig u 'n dubbelzijdige kleeflint, 'n dik karton om die pyl te steun en 'n paar wit papier. Let wel: ons het besluit om ons analoogmeter meer robuust te maak, daarom gebruik ons 'n 3D -drukker om die wyser en plexiglas afval vir die agterkant te maak.
Stap 1: Maak 'n wyser
Sny eers 'n wyser van 100 mm lank uit karton (ja, ons gebruik soms metrieke). Hier is 'n STL -lêer as u toegang tot 'n 3D -drukker het: https://www.thingiverse.com/thing:4007011. Probeer hierdie een vir 'n wyser wat na 'n skerp punt tap:
Stap 2: Koppel die wyser aan die servo -arm
Sodra u die wyser gemaak het, gebruik 'n dubbelzijdige band om dit vas te maak aan een van die arms wat by die servomotor kom. Druk dan die arm op die as.
Stap 3: Sny die agterkant
Sny 'n stuk karton ongeveer 200 mm breed by 110 mm hoog. En sny dan 'n klein inkeping van 25 mm by 12 mm aan die onderkant van die servomotor. U sal die kerf ongeveer 5 mm regs van die middel moet verreken om die as op die servo te kompenseer. Hierbo kan u sien hoe ons plexiglas gelyk het voordat ons die bokant afgesny en die beskermende film afgetrek het. Let op dat ons 'n ystersaag en 'n Dremel gebruik het om die kerf te sny.
Stap 4: Monteer Servo op Backer
Skuif dan die servo op sy plek met die monteringstippies aan die onderkant. Gebruik die monteerskroewe wat by die servo kom as penne om dit vas te hou. Miskien moet u eers 'n skerp potlood gebruik om gate op hierdie plekke te maak as u karton of 'n boor met 'n 1/16 -boretjie gebruik as u hout of akriel gebruik. Let op hoe ons ons kerf te breed gemaak het, wat gelei het tot die skroef die regterkant mis die gat en word vasgeklem in die gaping. Moenie soos ons wees nie.
Stap 5: Druk die skaal uit
Druk die skaal hierbo uit. Sny langs die stippellyne terwyl u let op die ligging van die vertikale en horisontale lyne rondom die kerf. Gebruik hierdie lyne om die skaal rondom die as van die servo in lyn te bring. 'N Aflaaibare kopie van hierdie skaal kan hier gevind word: https:// pi-plate/downloads/Voltmeter Scale.pdf
Stap 6: Pas Skaal toe op Backer
Trek die arm/wyser -eenheid van die servo -as af en plaas die stuk papier met die skaal op die gekerfde agterste materiaal vanaf stap drie. Plaas dit so dat die lyne rondom die kerf op die servo gesentreer is. Ons sal die wyser weer aanskakel nadat ons die servomotor aangeskakel het.
Stap 7: Elektriese samestelling
Bevestig die servomotor en die "leidings" aan die Pi-Plate TINKERplaat met behulp van die diagram hierbo as 'n gids. Sodra die meter saamgestel is, sal die rooi en swart drade wat aan die analoogblok aan die linkerkant gekoppel is, u voltmetersondes wees. Plaas die rooi draad op die positiewe terminaal en die swart draad op die negatiewe terminaal van die toestel wat u wil meet.
Stap 8: Finale samestelling / kalibrasie
- Nadat u die elektriese verbindings gemaak het, neem die volgende stappe:
- Skakel die Raspberry Pi aan en maak dan 'n terminale venster oop
- Skep 'n Python3 -terminalsessie, laai die TINKERplate -module en stel die modus van Digitale I/O -kanaal 1 in as 'servo'. U moet die servo na die 90 grade -posisie hoor beweeg.
- Steek die servo -arm terug op die as met die wyser reguit in die 6V -posisie.
- Tik TINK.setSERVO (0, 1, 15) om die servo na die 0V -posisie te skuif. As dit nie heeltemal op 0 beland nie, tik dit weer in, maar met 'n ander hoek soos 14 of 16. U kan ontdek dat die opdrag van die servo om in klein stappe heen en weer te beweeg, geen invloed op die wyser het nie. tot 'n algemene meganiese probleem met ratte genaamd terugslag, wat ons hieronder bespreek. Sodra u 'n hoek het wat die wyser op 0V plaas, skryf dit neer as u LAE waarde.
- Tik TINK.setSERVO (0, 1, 165) om die servo na die 12V -posisie te skuif. Weereens, as dit nie heeltemal op 12 beland nie, tik dit weer in, maar met verskillende hoeke soos 164 of 166. Sodra u 'n hoek het wat die wyser op 12V plaas, skryf dit neer as u HOOGWAARDE.
Stap 9: Kode 1
Die VOLTmeter.py -program word in die volgende stap vertoon. U kan dit self inskryf met die Thonny IDE op die Raspberry Pi of die onderstaande in u tuisgids kopieer. Let op reëls 5 en 6 - dit is waar u die kalibrasiewaardes inskakel wat in die laaste stap verkry is. Vir ons was dit:
lLimit = 12.0 #ons LAE waarde
hLimit = 166.0 #ons HOE waarde
Sodra die lêer gestoor is, voer dit uit deur te tik: python3 VOLTmeter.py en op die sleutel in 'n terminale venster te druk. As u sonde drade niks raak nie, sal die wyser na die 0 volt plek op die skaal beweeg. U kan eintlik sien dat die naald net 'n bietjie heen en weer beweeg terwyl dit 'n 60Hz -geraas van ligte in die omgewing opneem. Deur die rooi sonde aan die +5V -aansluiting op die analoog blok te koppel, sal die wyser na die 5 volt -merk op die meter spring.
Stap 10: Kode 2
voer piplates in. TINKERplaat as TINK
invoertyd TINK.setDEFAULTS (0) #terugkeer alle poorte na hul standaardtoestande TINK.setMODE (0, 1, 'servo') #set Digitale I/O -poort 1 om 'n servo te bestuur lLimit = 12.0 #Die onderste limiet = 0 volt hLimit = 166.0 #Die boonste limiet = 12 volt terwyl (True): analogIn = TINK.getADC (0, 1) #lees analoog kanaal 1 #skaal die data na 'n hoek in die reeks lLimit tot hLimit hoek = analogIn*(hLimit -lLimit) /12.0 TINK.setSERVO (0, 1, lLimit+hoek) #stel servo hoek tyd. slaap (.1) #vertraag en herhaal
Stap 11: Sluit af
So, daar is dit, ons het nuwe tegnologie gebruik om die nuutste tegnologie in die 1950's te herskep. Skep gerus u eie skale en deel dit met ons
Dit het as 'n eenvoudige projek begin, maar dit het vinnig toegeneem toe ons aan meer verfynings dink. U kan ook ontdek dat die wyser soms nie op die regte plek beland nie - dit is om twee redes:
- Daar is 'n reeks ratte aan die binnekant van servomotore wat, as hulle saamgestel is, 'n algemene probleem ondervind, wat 'n terugslag genoem word. U kan hier meer hieroor lees.
- Ons vermoed ook dat ons servomotor nie heeltemal lineêr oor sy hele reeks is nie.
Lees hierdie dokument vir meer inligting oor die werking van servomotore. En om meer projekte en byvoegings vir die Raspberry Pi te sien, besoek ons webwerf op Pi-Plates.com.