123456789101112131415161718192021222324252627282930313233343536373839404142 |
- //
- // Created by zx on 23-5-8.
- //
- #ifndef NAVIGATION_NAVIGATION_MAIN_H
- #define NAVIGATION_NAVIGATION_MAIN_H
- #include "navigation.h"
- class NavigationMain:public Navigation {
- public:
- NavigationMain();
- ~NavigationMain();
- virtual void ResetPose(const Pose2d& pose);
- virtual bool Start(const NavMessage::NavCmd& cmd);
- virtual void publish_statu(NavMessage::NavStatu& statu);
- void ResetOtherClamp(ClampStatu statu);
- virtual void HandleAgvStatu(const MqttMsg& msg);
- virtual void SwitchMode(Monitor_emqx::ActionMode mode,float wheelBase){
- move_mode_=mode;
- if(move_mode_==Monitor_emqx::eMain)
- {
- wheelBase_=wheelBase;
- }
- }
- protected:
- virtual void SendMoveCmd(Monitor_emqx::ActionMode mode,Monitor_emqx::ActionType type,
- double v,double angular);
- virtual void HandleNavCmd(const NavMessage::NavCmd& cmd);
- virtual bool clamp_close();
- virtual bool clamp_open();
- virtual NavMessage::RobotStatu CreateRobotStatuMsg();
- protected:
- float wheelBase_; //两节agv的位姿与单节的位姿变换
- TimedLockData<int> timed_other_clamp_;
- };
- #endif //NAVIGATION_NAVIGATION_MAIN_H
|