from machine import Pin, ADC, PWM
import time
#Abajo Habra Un Titulo Para Cada configuración*
#———————————————————————————————————————————
#1. CONFIGURACIÓN DE PERIFERICOS DE HARDWARE
#———————————————————————————————————————————
pot=ADC(Pin(34))
pot.atten(ADC.ATTN_11DB)
servo=PWM(Pin(15), freq=50)
#——————————————————————————————————————————————————————————————————
#2. CONSTANTE CALIBRACIÓN MECANICA (Escala de 10 de Bits: 0 a 1023)
#——————————————————————————————————————————————————————————————————
DUTY_MIN=25 # Valor del pulso que posiciona el eje en 0° reales
DUTY_MAX=75 # Valor del pulso que posiciona el eje en 180° reales
print("Inicializando")
time.sleep(3)
print("—————————————————————————————————————————————————————————")
print(" SISTEMA DE CONTROL DE PRECISIÓN: POTENCIÓMETRO Y SERVO ")
print("—————————————————————————————————————————————————————————")
time.sleep(5)
#——————————————————————————————————————————————————————————————————
#3. BUCLE PRINCIPAL DE EJECUCIÓN (Lazo De Control)
#——————————————————————————————————————————————————————————————————
while True:
lectura=pot.read()
time.sleep(0.1)
print(lectura)
duty=DUTY_MIN+((lectura*(DUTY_MAX-DUTY_MIN))//4095)
print(duty)
servo.duty(duty)
time.sleep(0.02)
#31 25
#23 75