Pan/Tilt Motion System for Control Education Using Arduino

Tilt Motion System

Pan/Tilt Motion System for Control Education

Ricardo G. Sanfelice, University of Arizona

Project supported by Mathworks

Website developed by Colin Lasharr, University of Arizona

Tilt Motion System



The device is composed of a rotating base with an elevation arm to orient the attitude of energy collectors, which are modular. The base of the device is linked to a drive train that is powered by a small servo motor and provides the propulsion to orient the attitude of the device. The elevation arm is connected to another small servo motor which provides the propulsion to orient the altitude of the device.

Tilt Motion System diagram

The system is composed of an Arduino control board that receives input from the Simulink controller in real time, and then sends output to the motors. There are two stepper motors which control the zenith and the azimuth angles. These motors position the base and arm of the device.

Instructions for Building the System


Installation Instructions


The device is powered by a USB port. It communicates with MATLAB through a generic USB to Serial driver which comes with Windows operating system. At this time, the target board operates on Win32 platforms only. It has been tested with MATLAB Release 2011a. The installation process includes the following steps:

  • Plug in the Arduino USB into the desktop to recognize the new hardware.
  • Go to Start -> Control panel -> System -> Hardware -> Devicemanager -> Ports(COM & LPT), to recognize the new hardware communication port.
  • Install the Arduino supporting drivers from the following link:
  • Setup the device with the drives following the instructions on the following page:
  • Install the Arduino, Matlab supporting files to initialize the controller board from the following link:
  • Make sure the files associated with the current model are pointed towards the Matlab files downloaded in the previous step.
  • Execute the following initialization files: arduino.m and install arduino.m (from the downloaded matlab folder ArduinoIO -> simulink)
  • Run the model with desired inputs

Read more: Pan/Tilt Motion System for Control Education

Leave a Comment

Your email address will not be published. Required fields are marked *