Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: AX-12A Dynamixel mbed iothub_client EthernetInterface NTPClient ConfigFile SDFileSystem iothub_amqp_transport mbed-rtos proton-c-mbed wolfSSL
Sequences.cpp
- Committer:
- henryrawas
- Date:
- 2015-12-28
- Revision:
- 5:36916b1c5a06
- Child:
- 7:6723f6887d00
File content as of revision 5:36916b1c5a06:
#include "mbed.h"
#include <vector>
#include <ActionBuf.h>
const float UpPos = 180.0f;
const float rightPos = 90.0f;
vector<ActionSequence> UpDownSeq;
vector<ActionSequence> UpTwistSeq;
void MakeSequences(int partSize, vector<float>& homePositions)
{
vector<float> upPositions;
for( int partIx = 0; partIx < partSize; partIx++)
{
upPositions.push_back(UpPos);
}
// define actions
ActionSequence moveUp(SA_SetGoal, upPositions, 2500);
ActionSequence report(SA_Status);
ActionSequence pause2(SA_Delay);
pause2.SetDelay(2000);
ActionSequence moveDown(SA_SetGoal, homePositions, 2500);
ActionSequence rep(SA_Repeat);
// add actions into UpDownSeq
UpDownSeq.clear();
UpDownSeq.push_back(moveUp);
UpDownSeq.push_back(report);
UpDownSeq.push_back(pause2);
UpDownSeq.push_back(moveDown);
UpDownSeq.push_back(report);
UpDownSeq.push_back(pause2);
UpDownSeq.push_back(rep);
vector<float> rightPositions;
for( int partIx = 0; partIx < partSize; partIx++)
{
rightPositions.push_back(UpPos);
}
// add actions into RightStepsSeq
// move to vertical, then move each part one at a time, then return to home
UpTwistSeq.clear();
UpTwistSeq.push_back(moveUp);
for( int partIx = 0; partIx < partSize; partIx++)
{
vector<float>* rightPositions = new vector<float>();
for( int partIy = 0; partIy < partSize; partIy++)
{
float val = UpPos;
if (partIx == partIy)
val = rightPos;
rightPositions->push_back(val);
}
ActionSequence* seq = new ActionSequence(SA_SetGoal, *rightPositions, 1000);
UpTwistSeq.push_back(*seq);
UpTwistSeq.push_back(pause2);
UpTwistSeq.push_back(report);
UpTwistSeq.push_back(moveUp);
}
UpTwistSeq.push_back(pause2);
UpTwistSeq.push_back(moveDown);
}