File Exchange

image thumbnail

Differential Drive and Global Positioning Blockset v2.0

version (579 KB) by Jahanzeb Rajput
This blockset is for modeling and visualization of the dynamics of differential drive vehicle robot.


Updated 21 Jan 2013

View License

The ?Differential Drive and Global Positioning Blockset? is the tool which can be used with Simulink® for modeling, designing, and simulation of the dynamics of a type of vehicle robots called differentially driven vehicle robot (robot which uses differential steering technique for locomotion). This tool carries the blocks with built-in Global Positioning algorithm (related to dead-reckoning), which are useful in finding out the current position and heading of the vehicle robot.
This blockset will allow the scientists and engineers to build and simulate their models of vehicle robot using differential drive steering method according to their own design and specifications, and will enable to visualize the results in the form of model-driven animation.
The blockset has seven different blocks: The PMDC Motor block, Gearbox block, Motor Driver block, Mechanical Dimensions block, Positioning block, Dual PID block and the Animation block. These blocks constitute a complete set of components by using which a complete model of a differentially driven vehicle robot can be built. The resulting model can be tested in the form of model-driven animation and the parameters of the model can be varied from the GUI provided in the animation window on the fly.
The PMDC Motor block is a complete model of a Permanent magnet DC motor. A user can put its own parameter values of DC motor which he wants to use in the actual model of robot. This model also simulates the applied load on the motor shaft.
Gearbox block is simulated gear-train whose gear-ratio can be set according to user specifications.
Motor Driver block behaves like the practical motor driver circuits, using whose logical inputs the direction of PMDC motor can be reversed, and break can be applied.
By including the Mechanical Dimensions block in the model user can implement the model of a differentially driven vehicle robot whose dynamic behavior will largely depend on the mechanical dimensions like drive wheel radii, robot platform length and width, and location of drive wheels in robot platform.
Positioning block calculates the current position of the vehicle robot turning center in Global Coordinate System.
Dual PID Control block provides a pair of PID controllers for each motor of the differential drive system for speed control.
Finally, the Animation Block generates animation of the designed differentially driven vehicle robot according to model specifications. The animation window also provides the GUI in the form of different sliders using which the angular velocities of the wheels can be varied, and also the direction of the motors can be reversed during simulation.

Cite As

Jahanzeb Rajput (2020). Differential Drive and Global Positioning Blockset v2.0 (, MATLAB Central File Exchange. Retrieved .

Comments and Ratings (7)

Jahanzeb Rajput

This blockset was designed MATLAB 5.3.1 and Simulink 3, so one sholud use this versions to run the toolbox without error.

abdulsalam alqam

can u help me pleae for:

A permanent magnet DC motor, whose parameters are shown below, is fed from a DC-DC full bridge converter:

System Parameter Value
Ra 2 Ohm
La 5mH
Jeq 15X10-4kg.m2
B 0
KE 0.4V/(rad/s)
KT 0.3N.m/A
VDC 180V
Vtri 5V
fs 30kHz

The reference speed is 1000rad/s and the load torque is 4Nm.

• For the DC Motor above, design in MatLab/Simulink a closed loop feedback system such that the system’s response is just critically damped.
• Show plots of speed, armature current, armature voltage and torque due to step change up of 500rad/s and then step down of 800rad/s in the speed command from its default reference speed (1000rad/s). Magnify the waveforms at the transition.
• Show plots of speed, armature current, armature voltage and torque due to a step change up of 3 Nm in the load toque and then due to a step change down of 5 N.m from its default load torque (4N.m). (in this case default speed is 1000rad/s). Magnify the waveforms at the step change.

shailabhs suman

use less contains bug..

eee pg

Justin Teems

Dear Sir:

This package shows a lot of promise. However, I found a bug for v7.0.4. In your navigate.m file, there were a couple of errors at the very end of the file (~line 385). There were some missing spaces which caused Matlab to bounce. I would suggest improving them.


This is the updated version for use with latest versions of MATLAB and Simulink.

MATLAB Release Compatibility
Created with R2012a
Compatible with any release
Platform Compatibility
Windows macOS Linux