让帕克动起来¶
这是第一个项目,让我们测试一下帕克的基本运动。
运行代码
cd /home/pi/picar-x/example
sudo python3 move.py
运行代码后,帕克会向前移动,S形转弯,停下来摇头。
代码
from picarx import Picarx
import time
if __name__ == "__main__":
try:
px = Picarx()
px.forward(30)
time.sleep(0.5)
for angle in range(0,35):
px.set_dir_servo_angle(angle)
time.sleep(0.01)
for angle in range(35,-35,-1):
px.set_dir_servo_angle(angle)
time.sleep(0.01)
for angle in range(-35,0):
px.set_dir_servo_angle(angle)
time.sleep(0.01)
px.forward(0)
time.sleep(1)
for angle in range(0,35):
px.set_camera_servo1_angle(angle)
time.sleep(0.01)
for angle in range(35,-35,-1):
px.set_camera_servo1_angle(angle)
time.sleep(0.01)
for angle in range(-35,0):
px.set_camera_servo1_angle(angle)
time.sleep(0.01)
for angle in range(0,35):
px.set_camera_servo2_angle(angle)
time.sleep(0.01)
for angle in range(35,-35,-1):
px.set_camera_servo2_angle(angle)
time.sleep(0.01)
for angle in range(-35,0):
px.set_camera_servo2_angle(angle)
time.sleep(0.01)
finally:
px.forward(0)
这个怎么运作?
帕克的基本功能在 picarx
模块中,
可以用来控制舵机和车轮,
并使帕克向前移动、S 形转弯或摇头。
现在,导入了支持帕克基本功能的库。 这些线条将出现在所有涉及帕克运动的示例中。
from picarx import Picarx
import time
然后使用带有 for
循环的以下函数使帕克向前移动、改变方向和移动相机的平移/倾斜。
px.forward(speed)
px.set_dir_servo_angle(angle)
px.set_camera_servo1_angle(angle)
px.set_camera_servo2_angle(angle)
forward()
:命令帕克以给定的速度前进。set_dir_servo_angle()
:将转向舵机转向特定的角度。set_camera_servo1_angle()
:将平移伺服器转到特定的角度。set_camera_servo2_angle()
:将倾斜伺服转向特定的角度。
