# How do I compute the impulse response of a robot?

I am trying to model a robot (my question in robotics.SE), so that I may train it using some reinforcement learning techniques. I was wondering if I can compute an impulse response of a four wheel robotic chassis empirically? Or something similar that might help me model the robot. Does a thing like 'the impulse response of a robot' even make sense?

Since a single strobe of a PWM signal shall hardly cause any movement, but a steady stream of PWM signals will, can I consider the impulse response as an infinite impulse response that superposition to cause perceivable motion?

I am certain that the robot chassis is a non-linear system. Generally speaking, will impulse response make any sense on a non-linear system?

• The impulse response of what part of the robot? In order to define an impulse response, you need to define what the system is, what you're giving it as an input, and what you consider its output. The impulse response defines what the output of the system is given an impulse at the input. Something more practical to measure might be a frequency response, which can be mapped back to the impulse response. These concepts are only meaningful for linear, time-invariant (LTI) systems. Even if your system is nonlinear, it's possible that a linear approximation may be close enough for engineering work. – Jason R Nov 15 '12 at 19:11
• I am trying to model the robotic chassis. The input is the PWM and output is the motion. The same PWM would probably cause a different motion when the root is stationary and when it is already moving. I believe that the system is practically time invariant (not counting the wear and tear of the parts). Given this requirement. does the question still make sense? Is the idea of modelling the robot as multiple linear systems, one for each value of the current velocity (discretized) and battery voltage too ambitious or impractical? – Lord Loh. Nov 15 '12 at 19:36
• It's admissible for a linear system to have an output that depends upon previous versions of its output (as you noted, the response may vary depending upon the initial velocity of the robot). This is referred to as feedback. Without knowing much about the structure of your robot, I can't really comment on whether a linear model is reasonable, but if you want to empirically develop a model for the system, you'll want to research system identification techniques. One way might be to directly measure its frequency response, if you have the ability to make those measurements. – Jason R Nov 19 '12 at 15:46