AUTHOR: Logan Duong

Your show and tell can be about anything you accomplished other than research. This is about an action realized.

<aside> ❓ Tutorial: Clearly explain the necessary information and actions to arrive at an outcome

</aside>

Outcome

Initial Goal: Operate and control the dynamixel servos

Realized Outcome: Dynamixels are moved to a shaft angle

Steps to achieve outcome

Outline/Framework/Recipe/Steps

  1. Attach the dynamixel Arduino shield to the Arduino

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/ca99318c-6540-45a4-a54c-2747e8fffd29/20201023_133845.jpg

  1. Connect the dynamixel to the shield with the molex cable

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/f9b725f3-84ab-4363-9e35-8576af8e8f77/20201023_133903.jpg

  1. Install Arduino libraries for the dynamixel shield

  2. Run the dynamixel shield example (position_mode)

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/73d0ad9a-6608-4298-84bf-6c063d2c04ee/Untitled.png

a. The default baud rate for the XL320 is 1,000,000 (bps). This needs to be changed in the code within void(setup).

b. ID for the dynamixels come with factory ID 1. This is the default in the example code, but if you want to control a different servo, then the ID must be changed appropriately.

IMPORTANT

The shield communicates with the dynamixels through a shared serial bus. Because of this, there are several hardware switches included with shield. To upload, switch the shield off, and ensure that the download/dynamixel switch is in the 'download' position. See image below:

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/d4595002-0033-49f5-964e-0ef625c223eb/Untitled.png

To change a dynamixel ID, use the 'ID' example, and change the ID values appropriately.

To rotate to an angle, use the function setGoalPosition()

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/8f38c069-869b-4a71-9629-c141c14f3744/20201022_140247.mp4

Key Learnings

  1. Determining SLA supports location