4.读取舵机当前的位置

您当前位置: 首页 > DOFBOT AI视觉机械臂(Jetson nano版) > 基础控制课程

6.4读取舵机当前的位置

一、API简介

读取单个总线舵机的角度对应的API为:

Arm_serial_servo_read(id)

函数功能:读取总线舵机当前的角度值。

参数解释:

id:要读取的舵机的ID号,范围是1~6,每个ID号表示一个舵机,从最底端的舵机的ID为1,往上依次增加,最上面的舵机ID为6。

返回值:对应ID舵机当前的角度,ID=5时,角度范围为0~270,其他都为0~180。

 

二、代码内容

代码路径:/home/jetson/Dofbot/3.ctrl_Arm/4.ctrl_servo.ipynb

#!/usr/bin/env   python3

#coding=utf-8

import   time

from   Arm_Lib import Arm_Device

 

#   创建机械臂对象

Arm   = Arm_Device()

time.sleep(.1)

#   读取所有舵机的角度,并循环打印出来

def   main():

 

    while True:

        for i in range(6):

            aa =   Arm.Arm_serial_servo_read(i+1)

            print(aa)

            time.sleep(.01)

        time.sleep(.5)

        print(" END OF LINE! ")

 

   

try   :

    main()

except   KeyboardInterrupt:

    print(" Program closed! ")

    pass

#   单独控制一个舵机运动后,再读取它的角度

id   = 6

angle   = 150

 

Arm.Arm_serial_servo_write(id,   angle, 500)

time.sleep(1)

 

aa   = Arm.Arm_serial_servo_read(id)

print(aa)

 

time.sleep(.5)

 

del   Arm  # 释放掉Arm对象

jupyter lab打开程序文件,并且点击jupyter lab工具栏上的运行整个notebook按钮,jupyter lab会打印出当前机械臂六个舵机的角度值。

image.png

image.png

如果要退出则点击工具栏的停止按钮。

image.png