În acest articol, vom lua în considerare modul în care Maestrul și-a dat seama de ideea sa de a fabrica un voltmetru folosind un servomotor.
Pentru a realiza un astfel de voltmetru, maestrul folosește: Raspberry Pi cu Raspian și cu module Pi-Plates Python 3 instalate, TINKER Pi-Plate, fire, servomotor 9G, carton gros, bandă dublă față, plexiglas.
Din maestrul de carton taie săgeata.
Sau îl puteți imprima pe o imprimantă 3D. Fișier de imprimat pe aceasta legătura.
Săgeata este fixată pe maneta servo cu bandă dublă.
Din plexiglas taie panoul.
Înșurubați-l la corpul servomotorului.
Tipărește o scară (descărcați fișierul aici).
Lipeste o scala de plexiglas.
Conectează servomotorul la placa de circuit conform schemei. Pentru a măsura tensiunea, trebuie să utilizați fire conectate la GND și AIN 1.
În continuare, trebuie să calibrați voltmetrul.
Include zmeura Pi. Creează o sesiune Python3, încarcă modulul TINKERplate și setează modul digital I / O canal 1 la „servo”. Acum servo trebuie să se deplaseze la 90 de grade.
Apoi, setați săgeata voltmetrului la 6V.
Intră TINK.setSERVO (0,1,15) pentru a muta săgeata în poziția 0V.
Intră TINK.setSERVO (0,165) pentru a muta servo în poziția 12V.
Dacă săgeata se abate de la citirile date, trebuie să ajustați valorile 15 și 165
În continuare, trebuie să descărcați codul.
import piplates.TINKERplate ca TINK
timp de import
TINK.setDEFAULTS (0) #reia toate porturile la stările lor implicite
TINK.setMODE (0,1, 'servo') #set Port I / O digital pentru a conduce un servo
lLimit = 12.0 # Limita inferioară = 0 volți
hLimit = 166.0 # Limita superioară = 12 volți
while (True):
analogIn = TINK.getADC (0,1) #citește canalul analogic 1
#scalați datele într-un unghi din intervalul lLimit până la hLimit
unghi = analogIn * (hLimit-lLimit) /12.0
TINK.setSERVO (0,1, limit + unghi) #set unghi servo
time.sleep (.1) #delay și repetați
Totul este gata.