Բարեւ ձեզ։ Այսօր մենք կքննարկենք մի խնդիր՝ սերվոյի դիրքը հեռաչափից կախված։ Դրա համար մեզ անհրաժեշտ է`
1) SERob3 controller (ղեկավարիչ),
2) Ուլտրաձայնային հեռաչափ,
3) սերվո շարժիչ:
Սերվոն անհրաժեշտ է միացնել motors բաժնի pin 5-ին, հեռաչափի input-ը`
D In/O բաժնի pin 3-ին, իսկ output-ը՝ նույն բաժնի pin 4-ին։
Վերջ, սխեման ավարտեցինք։ Ծրագիրը ստեղծելու համար նախ օգտվում ենք «servo», «time» եւ «Usrf» գրադարաններից։ Գրանցում ենք «Usrf»-ը որպես «myUsrf»։
Սեղմեք այստեղ
Code: Select all
from SERob3 import servo
from SERob3 import Usrf
import time
myUsrf = Usrf()
Code: Select all
while (1):Կատարել համեմատությունները․ եթե հեռավորությունը մեծ է 35սմ-ից, ապա սերվոն ընդունում է 90 աստիճան անկյունը, եթե փոքր է 35սմ- ից՝ ընդունում է 0 աստիճան անկյունը, իսկ եթե փոքր է 20սմ-ից՝ ընդունում է -90 աստիճան անկյունը։
Սեղմեք այստեղ
Code: Select all
time.sleep(0.5)
if myUsrf.Distance(3) > 35
servo.Out(5, 90)
if myUsrf.Distance(3) < 35
servo.Out(5, 0)
if myUsrf.Distance(3) < 20
servo.Out(5, -90)
Տեսնել ավելին
Ինչպես աշխատացնել սերվո շարժիչ՝ viewtopic.php?f=8&t=14&sid=3ec581277cd2 ... c2021e81c9
Ինչպես աշխատացնել հեռաչափը՝ viewtopic.php?f=8&t=10&sid=17e4575f4952 ... 5622f88284)
Ինչպես աշխատացնել հեռաչափը՝ viewtopic.php?f=8&t=10&sid=17e4575f4952 ... 5622f88284)
Code example
Code: Select all
from SERob3 import servo
from SERob3 import Usrf
import time
myUsrf = Usrf()
while (1):
time.sleep(0.5)
if myUsrf.Distance(3) > 35
servo.Out(5, 90)
if myUsrf.Distance(3) < 35
servo.Out(5, 0)
if myUsrf.Distance(3) < 20
servo.Out(5, -90)
Տերմինալի հրամաններ
Code: Select all
cd projects
cd SERob3
cd problems
sudo python2 Usrf_servo.py