Servo with potentiometer
servo with potentiometer
code
main.py
from machine import Pin,ADC,PWM
import time
pwm=PWM(Pin(0))
pwm.freq(50)
adc = ADC(Pin(26))
def servo(position):
pwm.duty_u16(position)
time.sleep(0.1)
while True:
pos = (adc.read_u16()*8000)//65535 + 1000
servo(pos)
diagram.json
{
"version": 1,
"editor": "wokwi",
"parts": [
{
"type": "wokwi-pi-pico",
"id": "pico",
"top": -250.22,
"left": -28.36,
"attrs": { "env": "micropython-20220618-v1.19.1" }
},
{ "type": "wokwi-servo", "id": "servo1", "top": -317.08, "left": 127.13, "attrs": {} },
{
"type": "wokwi-potentiometer",
"id": "pot1",
"top": -135.29,
"left": 179.45,
"attrs": { "hornColor": "yelloe" }
}
],
"connections": [
[ "servo1:GND", "pico:GND.8", "black", [ "h-40.05", "v3.98" ] ],
[ "servo1:V+", "pico:3V3", "green", [ "h-49.38", "v13.15" ] ],
[ "servo1:PWM", "pico:GP0", "green", [ "h-28.57", "v-82.36", "h-164.14", "v4.19" ] ],
[ "pot1:GND", "pico:GND.5", "black", [ "v12.95", "h-127.31", "v-20.4" ] ],
[ "pot1:SIG", "pico:GP26", "green", [ "v23.15", "h-108.74", "v-107.12" ] ],
[ "pot1:VCC", "pico:3V3", "red", [ "v39.47", "h-140.17", "v-174.46" ] ]
],
"dependencies": {}
}
