I've implemented SMC (Sliding Mode Controller) on WMR in both X-Y and X-Z plane. Now i want to combine both of these to control WMR in 3D. For this purpose I'm trying to use resultant vector of simulation in XY plane and track that resultant vector in XZ plane as value of X in previously designed code. Tracking control of resultant vector is shown in figure 1 while Vector sum decomposed in rectangular coordinates after simulation is shown in figure 2.

Am I going wrong?

What other tecniques can I apply to do 3D control of vehicle using Sliding Mode Controller.

Can i reduce the time delay offset? I've implemented right equations for SMC tracking controller equations but simulation does not gives exact results.These equations work well for control of vehicle in two dimensions (X-Z plane).

Tracking control of resultant vector

Vector sum decomposed in rectangular coordinates after simulation

  • $\begingroup$ There is not enough information in your question for me to understand it. Consider adding more information to your question. $\endgroup$
    – hauptmech
    Jun 5, 2016 at 4:37
  • $\begingroup$ I am using sliding mode controller, it just slides the control value depending upon sign of error. This controller is is non linear, robust and can account for disturbances. It performs well for control in X-Z plane. But gives offset when I try to do tracking control for required tracking reference. $\endgroup$ Jun 6, 2016 at 9:00

1 Answer 1


In general, the time delay is a function of your system dynamics (mass of your robot, max torque and max velocity of your motors). Feedforward control or a planning algorithm can help with this depending on how much information about the future motion you have.

There is not enough information in your question to guess what issues might exist with the control.

Is it possible that your control assumes no slipping (sideways movement of the vehicle) and your simulation has a poor friction/contact model that does allow slipping?


I've implemented SMC (Sliding Mode Controller) on WMR in both X-Y and X-Z plane.

I assume that XYZ refers to cartesian directions. Are you controlling the position or pose of your robot in the X-Y plane? What are you trying control in the X-Z plane? Are you setting a goal Z position? A wheeled mobile robot is constrained to the surface it rests on, so while controlling the position on the surface projected onto the X-Y plane makes sense, controlling the robot in X,Y, and Z is difficult to understand.

  • $\begingroup$ I am assuming zero slipping in both control and simulation, but this is wheel slip that is caused by inclination of surface/terrain. I am not considering sideways movement or inclination, because for instance i am considering vehicle as a dot that does not performs and roll movement (Roll-pitch-yaw of Euler angles). $\endgroup$ Jun 6, 2016 at 9:04
  • $\begingroup$ I listed some of the things that I do not understand about your situation. If you improve your question with more detail (equations are good) it could help. $\endgroup$
    – hauptmech
    Jun 6, 2016 at 22:11
  • $\begingroup$ I am controlling both position and pose of robot in X-Y plane and controlling X-position of robot in X-Z plane. e1 = r-x; edot = rv-v; eta=-eeta*sign(Lam1*e1+edot); This is SMC control for X-Z plane,this eta is used as control input to control robot. I am doing control in X-Y plane then, doing vector sum of X and Y components, and track that resulting value as r in these equations, simillarly tracking resulting velocity value as vr in these equations. These is something wrong with this mehod, resulting graphs show that there is an offset between tracked value and states of system. $\endgroup$ Jun 11, 2016 at 8:21

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.