In dit artikel zullen we bespreken hoe de meester zijn idee realiseerde om een voltmeter te maken met behulp van een servomotor.
Om zo'n voltmeter te maken, gebruikt de meester: Raspberry Pi met Raspian en met geïnstalleerde Pi-Plates Python 3-modules, TINKER Pi-Plate, draden, 9G-servomotor, dik karton, dubbelzijdige tape, plexiglas.
Van de kartonnen meester snijdt de pijl.
Of u kunt het afdrukken op een 3D-printer. Bestand om hierop af te drukken de link.
De pijl is met dubbelzijdige tape aan de servohendel bevestigd.
Van plexiglas snijdt het paneel.
Schroeft het op het lichaam van de servomotor.
Drukt een schaal af (download het bestand hier).
Kleeft een schaal op plexiglas.
Verbindt de servomotor met de printplaat volgens het diagram. Om spanning te meten, moet u draden gebruiken die zijn aangesloten op GND en AIN 1.
Vervolgens moet u de voltmeter kalibreren.
Inclusief Raspberry Pi. Creëert een Python3-sessie, laadt de TINKERplate-module en stelt de digitale I / O-kanaal 1-modus in op "servo". Nu moet de servo naar 90 graden bewegen.
Zet vervolgens de pijl van de voltmeter op 6V.
Voert TINK.setSERVO (0,1,15) in om de pijl naar positie 0V te verplaatsen.
Voert TINK.setSERVO (0,1,165) in om de servo naar 12V te verplaatsen.
Als de pijl afwijkt van de gegeven waarden, moet u de waarden 15 en 165 aanpassen
Vervolgens moet je de code downloaden.
importeer piplates. TINKERplate als TINK
importeer tijd
TINK.setDEFAULTS (0) #herstel alle poorten naar hun standaardstatus
TINK.setMODE (0,1, 'servo') #set Digitale I / O-poort 1 om een servo aan te sturen
lLimit = 12,0 #De ondergrens = 0 volt
hLimit = 166.0 # De bovengrens = 12 volt
terwijl (waar):
analogIn = TINK.getADC (0,1) #lees analoog kanaal 1
#schaal de gegevens naar een hoek in het bereik van lLimit naar hLimit
angle = analogIn * (hLimit-lLimit) / 12.0
TINK.setSERVO (0,1, lLimit + angle) #set servohoek
time.sleep (.1) #delay en herhaal
Alles is klaar.