Neste artigo, consideraremos como o Mestre realizou sua idéia de fabricar um voltímetro usando um servomotor.
Para fazer esse voltímetro, o mestre usa: Raspberry Pi com Raspian e com os módulos Pi-Plates Python 3 instalados, TINKER Pi-Plate, fios, servomotor 9G, papelão grosso, fita dupla face, acrílico.
Do mestre de papelão corta a flecha.
Ou você pode imprimi-lo em uma impressora 3D. Arquivo para imprimir neste o link.
A seta é fixada à alavanca do servo com fita dupla face.
De plexiglass corta o painel.
Aparafusa-o ao corpo do servomotor.
Imprime uma escala (faça o download do arquivo aqui).
Cola uma balança no plexiglás.
Conecta o servomotor à placa de circuito de acordo com o diagrama. Para medir a tensão, você precisa usar fios conectados ao GND e AIN 1.
Em seguida, você precisa calibrar o voltímetro.
Inclui Raspberry Pi. Cria uma sessão Python3, carrega o módulo TINKERplate e define o modo de canal de E / S digital 1 como "servo". Agora o servo deve se mover para 90 graus.
Em seguida, define a seta do voltímetro para 6V.
Insere TINK.setSERVO (0,1,15) para mover a seta para a posição 0V.
Insere TINK.setSERVO (0,1,165) para mover o servo para a posição 12V.
Se a seta se desviar das leituras fornecidas, você precisará ajustar os valores 15 e 165
Em seguida, você precisa baixar o código.
importar piplates.TINKERplate como TINK
hora de importação
TINK.setDEFAULTS (0) #retorno todas as portas para seus estados padrão
TINK.setMODE (0,1, 'servo') #set Porta 1 de E / S digital para acionar um servo
lLimit = 12.0 #O limite inferior = 0 volts
hLimit = 166.0 #O limite superior = 12 volts
while (True):
analogIn = TINK.getADC (0,1) #read canal analógico 1
#scale os dados em um ângulo no intervalo de lLimit a hLimit
angulo = analogIn * (hLimit-lLimit) /12.0
TINK.setSERVO (0,1, lLimite + ângulo) #set ângulo do servo
time.sleep (.1) #delay e repita
Está tudo pronto.