Help constructing state-space model of a system

Click For Summary
SUMMARY

The discussion focuses on constructing a state-space model for a single wheel cart moving on a plane, characterized by linear velocity v and angular velocity ω. The system is defined by the equations dpx/dt = v*cos(θ), dpy/dt = v*sin(θ), and dθ/dt = ω, with the state represented as a 3x1 matrix. The user attempts to derive the state-space model using MATLAB, expressing the state and output in terms of the system dynamics and time derivatives.

PREREQUISITES
  • Understanding of state-space representation in control systems
  • Familiarity with MATLAB for symbolic computation
  • Knowledge of calculus, specifically differentiation and integration
  • Basic concepts of kinematics related to motion in a plane
NEXT STEPS
  • Study the derivation of state-space models for nonlinear systems
  • Learn about MATLAB's symbolic toolbox for dynamic systems
  • Explore the concept of controllability and observability in state-space systems
  • Investigate numerical methods for simulating nonlinear dynamics in MATLAB
USEFUL FOR

Students in control systems engineering, mechanical engineers working on robotic systems, and anyone interested in modeling dynamic systems using state-space techniques.

tehipwn
Messages
16
Reaction score
0

Homework Statement



A single wheel cat moving on the plane with linear velocity v angular velocity \omega can be modeled by the nonlinear system:

dpx/dt = v*cos(\theta)

dpy/dt = v*sin(\theta)

d\theta/dt = \omega

where (px,py) denote the cartesian coordinates of the wheel and \theta its orientation. The system has input u=[v \omega] '.

Construct a state-space model for this system with state

*note: These are both 3x1 matrixes.

[x1] = [[px*cos(\theta) + (py-1)*sin(\theta)]
[x2] = [-px*sin(\theta) + (py-1)*cos(\theta)]
[x3] = [\theta]]

and output y = [x1 x2] '


Homework Equations



dpx/dt = v*cos(\theta)

dpy/dt = v*sin(\theta)

d\theta/dt = \omega


The Attempt at a Solution



I don't have much. I'm pretty sure to put the given state into a state-space model I will take the derivative of both sides of the system with respect to t. If that's the correct method, I guess I'm not sure of how to take the derivative of the right side with respect to t since I know the velocity and acceleration functions are functions of time, but the stated system doesn't explicitly show the variable t. Any ideas anyone?
 
Physics news on Phys.org
I have came up with the following MATLAB code, let me know if it looks corrects if anyone is checking this thread:

syms v theta omega t

pxdt = v*cos(theta); % System dynamics
pydt = v*sin(theta);
thetadt = omega;

px = int(pxdt,t);
py = int(pydt,t);
theta = int(omega,t);
% Given system state:
x = [px*cos(theta)+(py-1)*sin(theta); -px*sin(theta)+(py-1)*cos(theta); theta];
% State-Space Model: Part (a)
dxdt = diff(x,t)
 

Similar threads

  • · Replies 11 ·
Replies
11
Views
2K
  • · Replies 4 ·
Replies
4
Views
2K
  • · Replies 11 ·
Replies
11
Views
2K
  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 2 ·
Replies
2
Views
3K
  • · Replies 2 ·
Replies
2
Views
3K
  • · Replies 1 ·
Replies
1
Views
1K
  • · Replies 6 ·
Replies
6
Views
1K
  • · Replies 9 ·
Replies
9
Views
1K
Replies
5
Views
1K