Servo

Description

The “Servo” object is used to interface with servos used with the builder base. You can do this by passing the servo object a number through the “Degrees” ports. The other two ports, “0 Offsets” and “180 Offsets” are reserved for modifying and calibrating the Servo’s range of motion.


App Builder Object


Drivers


In Ports

Position

Name

Message Type

Description

Position

Name

Message Type

Description

1

Degrees

Number

The position in degrees of where the servo arm will move.

2

0 Offsets

Number

The 0 Offsets is used to calibrate the position of a servo on the 0 degrees end of the position range.

3

180 Offsets

Number

The 180 Offsets is used to calibrate the position of a servo on the 180 degrees end of the position range.

 

Offset Adjustment

The 0 and 180 offsets are used to calibrate the position of your servo arm for a given degree. You can feed both of the offsets ports offsets ranging from [-30, 30].

To properly execute the initial calibration of your servo, you should send your servo to the 90 degree position and then attach the servo arm at a 90 degree angle to the servo body. Next, send your servo to the 0 degree position and then to the 180 degree position. If your servo moves -90 degrees to the 0 position and +90 degrees to the 180 position then your servo does not need any calibration. However, if your servo does not move all the way to the 0 position and is shy by a few degrees, you can input a positive number into the “0 offsets” port to extend its range of motion. Or if the converse is true, and the arm extends past what should be the 0 position, you can limit its range with a negative number in the 0 offsets port.

The same is true with the 180 offsets port. If the servo moves to a position less than 180 degrees, you can extend its range with a positive number, and if it moves more than the 180 degrees you can limit its range by feeding the port a negative number.

Here is a GIF detailing the calibration process:

 

To properly do the initial adjustment for the servo, the arm should be attached to a 90 degree position when the servo degrees are at 90 as well. Then, when we go to for example 0 and the servo does not do total negative 90 degree movement, we can adjust wi with the 0 offset port. Here we can enter an number between 0 -30 and 30. If the server moves not far enough, we can extend its range with a positive number and in case it overshoots, we can hold it back with a negative number. The same is valid for the 180 degree position, just that we use the 180 offset port here.


Out Ports

Position

Name

Message Type

Description

Position

Name

Message Type

Description

-

-

-

-

 


Properties

Name

Description

Name

Description

Object Name

The name of the object on the canvas.

App Mapping Description

When a hardware object requires mapping, this description is shown when the mapping function has been opened.

Multiwidget

Decide wether or not this hardware object can be mapped to single or multiple hardware components.