37 lines
1.0 KiB
C++
37 lines
1.0 KiB
C++
#ifndef CTRLCOMPONENTS_H
|
|
#define CTRLCOMPONENTS_H
|
|
|
|
#include "unitree_arm_sdk/message/arm_common.h"
|
|
#include "unitree_arm_sdk/message/LowlevelCmd.h"
|
|
#include "unitree_arm_sdk/message/LowlevelState.h"
|
|
#include "unitree_arm_sdk/message/udp.h"
|
|
#include "unitree_arm_sdk/utilities/loop.h"
|
|
#include "unitree_arm_sdk/model/ArmModel.h"
|
|
|
|
namespace UNITREE_ARM {
|
|
struct CtrlComponents{
|
|
public:
|
|
CtrlComponents();
|
|
CtrlComponents(double deltaT, bool hasUnitreeGripper);
|
|
~CtrlComponents();
|
|
/*
|
|
* Function: send udp message to z1_ctrl and receive udp message from it
|
|
* Input: None
|
|
* Output: None
|
|
* Description: The function will call udp->send() to send datas in lowcmd to z1_ctrl
|
|
* and call udp->recv() to store datas from z1_ctrl into lowstate
|
|
*/
|
|
void sendRecv();
|
|
|
|
|
|
LowlevelCmd *lowcmd;
|
|
LowlevelState *lowstate;
|
|
double dt;// default: 0.002
|
|
SendCmd sendCmd; // udp command to control the arm
|
|
RecvState recvState; // the arm state receive from udp
|
|
ArmModel* armModel;
|
|
UDPPort *udp;
|
|
};
|
|
|
|
}
|
|
#endif |