1 of 19

Joint Control

2 of 19

  1. The joint index
  2. The joint control blocks
  3. The balance blocks

CONTENTS

Video

3 of 19

  • In the last class we learned the basic structure of graphical programming
  • In this lesson, we will learn about joint control so that Bittle can do various actions

woof~

woof~

~

4 of 19

Thinking & Analysis

  • We learned about the loop structure that makes sounds and lights.
  • Our next task is to teach Bittle to shake hands.
  • Think about how a person shakes hands.
  • How does Bittle move each joint?

5 of 19

Sport

Center

Welcome to the Sport Center. Let’s understand Bittle’s servo first.

6 of 19

  • Observe the joints of Bittle
  • Does anyone know what components are connecting Bittle's joints?

7 of 19

Servo

  • Servo is short for servo motor
  • It is composed of DC motor, reduction gear group, and feedback control loop
  • Generally, position control is used
  • The angle range of Bittle’s servo Bittle is (0°~270°)

8 of 19

NyBoard

BiBoard

Joint Index Number

* Some joints are omitted on Bittle

9 of 19

  • A block containing a joint index number and an absolute angle value

  • A block containing a joint index number and a relative angle value

  • A list consists of one or more pairs of joint index + absolute angle value

One time Joint Movement State

10 of 19

  • Rotate individual joints to an absolute angle
  • Rotate individual joints to a relative angle
  • Rotate multiple joints sequentially to absolute angles or relative angles
  • Rotate multiple joints sequentially to a list of absolute angle values

Sequential Transform of Joints

11 of 19

Simultaneous Transform of Joints

  • Rotate multiple joints simultaneously to absolute angles or relative angles
  • Rotate multiple joints simultaneously to a list of absolute angle values

You can set the delay time so that the robot can pause after finishing the current motion

12 of 19

  • A list consists of the full frame (16 absolute joint angles)
  • Rotate multiple joints simultaneously to the full frame
  • Example:

Make Bittle / Bittle X stand up:

Simultaneous Transform to a Frame

13 of 19

Example:

  • Get the current angle value of the right front arm.
  • Rotate the head joint to the value and delay 1.2s.

Get a Certain Joint Angle

14 of 19

Call Preset Skills

Skill Type

Feature

Posture

Transform to a single posture frame

Range: From "sit" to "zero"

Behavior

Transform between multiple frames only once

Range: From "boxing" to "sniff"

Gait

Transform between multiple frames repeatedly

Range: From "stepping" to "trotRight"

15 of 19

  • The gyroscope (gyro) can help the robot keep balance and recover when falls over.
  • The balancing adjustments may interrupt your programmed motions.
  • In Mind+ mode, the gyro sensor is automatically disabled.
  • In Standard mode, the gyro is enabled. So it’s better to turn it off with the “Deactivate Gyro” block.

The Gyro Block in Mind+

The “Deactivate Gyro” block must be put after the “open serial port block”

16 of 19

Task 1

Please write code to achieve the following requirements:

  1. Rotate Bittle’s head from -30 degrees to 30 degrees gradually
  2. Rotate the head from 30 degrees to -30 degrees gradually
  3. Simultaneously turn the left and right rear thighs to 90 degrees, and left and right rear legs to -30 degrees
  4. Sequentially turn the left and right front thighs to 50 degrees
  5. Simultaneously turn the left and right front shank to 30 degrees

17 of 19

Task 1

\CODE\3.01_JointsAction.mp

18 of 19

Task 2

  • Please write code to perform the following movements in order:
    • Stand up
    • Sit down
    • Say Hello (3 times)
    • Loop over the above actions

\CODE\3.02_JointsAction.mp

19 of 19

  • Now we are quite familiar with joint control in Mind+.
  • Next time we will create new skills in the Skill Composer.

woof~

woof~

Now we have learned programming basis.

Next time we'll help Bittle master more skills in Skill Composer.