This post document my first tentative steps with playing with it. The code below was used to try and get my head around the positioning of the arm - which servo does what (a good guide for this has been provide by the company online) and what the changing angle on the servos actual does. Essentially the code puts the arm in a starting position and varies the angles from there in usually in 15 or 30 degree increments over seven positions.
#include <Servo.h>
#include <DueFlashStorage.h>
#include <Arm7Bot.h>
Arm7Bot Arm;
void setup() {
// initial 7Bot Arm
Arm.initialMove();
}
void loop() {
// set motor[0] speed to 100
Arm.maxSpeed[0] = 30;
double angles_0[SERVO_NUM] = {0, 100, 90, 0, 90, 90, 75};
Arm.move(angles_0);
// Move to pose 1
double angles_1[SERVO_NUM] = {0, 100, 0, 0, 90, 90, 75};
Arm.move(angles_1);
// Move to pose 2
double angles_2[SERVO_NUM] = {30, 110, 15, 0, 90, 90, 75};
Arm.move(angles_2);
// Move to pose 3
double angles_3[SERVO_NUM] = {60, 120, 30, 0, 90, 90, 75};
Arm.move(angles_3);
// Move to pose 4
double angles_4[SERVO_NUM] = {90, 130, 45, 0, 90, 90, 75};
Arm.move(angles_4);
// Move to pose 5
double angles_5[SERVO_NUM] = {120, 140, 60, 0, 90, 90, 75};
Arm.move(angles_5);
// Move to pose 6
double angles_6[SERVO_NUM] = {150, 150, 75, 0, 90, 90, 75};
Arm.move(angles_6);
}
Video below shows the routine in action.
All opinions in this blog are the Author's and should not in any way be seen as reflecting the views of any organisation the Author has any association with.