Tässä artikkelissa tarkastellaan kuinka mestari toteutti ideansa valmistaa volttimittari servomoottorin avulla.
Tällaisen volttimittarin valmistamiseksi päällikkö käyttää: Raspberry Pi Raspian kanssa ja asennetuilla Pi-Plates Python 3 moduuleilla, TINKER Pi-Plate, johdot, 9G servomoottori, paksu pahvi, kaksipuolinen teippi, pleksilasi.
Pahvista päällikkö leikkaa nuolen.
Tai voit tulostaa sen 3D-tulostimella. Tulostettava tiedosto tähän linkki.
Nuoli on kiinnitetty servovipuun kaksipuolisella teipillä.
Pleksilasi leikkaa paneelin.
Ruuvaa se servomoottorin runkoon.
Tulostaa asteikon (lataa tiedosto täältä).
Kiinnittää asteikon pleksilasiin.
Kytkee servomoottorin piirilevyyn kaavion mukaisesti. Jännitteen mittaamiseksi on käytettävä johtimia, jotka on kytketty GND: hen ja AIN 1: ään.
Seuraavaksi sinun on kalibroitava voltimetri.
Sisältää Raspberry Pi. Luo Python3-istunnon, lataa TINKERplate-moduulin ja asettaa digitaalisen I / O-kanavan 1 tilan “servoksi”. Nyt servon pitäisi siirtyä 90 asteeseen.
Aseta seuraavaksi volttimittarin nuoli arvoon 6V.
Sisääntulo TINK.setSERVO (0,1,15) siirtää nuolen asentoon 0V.
Sisääntulo TINK.setSERVO (0,1,165) siirtääksesi servon asentoon 12V.
Jos nuoli poikkeaa annetusta lukemasta, arvot 15 ja 165 täytyy säätää
Seuraavaksi sinun on ladattava koodi.
Tuo piplates.TINKERplate TINK-merkinnällä
tuontiaika
TINK.setDEFAULTS (0) # Palauta kaikki portit oletustiloihin
TINK.setMODE (0,1, 'servo') #set Digitaalinen I / O-portti 1 ohjaamaan servoa
lLimit = 12,0 #Alin raja = 0 volttia
hLimit = 166.0 #Yläraja = 12 volttia
kun taas (totta):
analogIn = TINK.getADC (0,1) #luet analogisen kanavan 1
# skaalaa tiedot kulmaan alueella lLimit - hLimit
kulma = analoginen * (hLimit-lLimit) /12,0
TINK.setSERVO (0,1, lLimit + kulma) #set servokulma
time.sleep (.1) # viive ja toista
Kaikki on valmis.