From FSI
Jump to: navigation, search


The cursor project is an ElN project done at the end of the first semester. It consists in driving a DC motor which moves the cursor chariot with the help of a screw.

Cursor in Action



The basic specification is the following one:

  • When restart button is pressed, the cursor moves to the start position given by a Hall sensor close to the DC motor.
  • When pos 1 button is pressed, the cursor has to accelerate towards position 1, advance with full speed, decelerate and stop at position 1, be it from the start position or from position 2.
  • When pos 2 button is pressed, the cursor has to accelerate towards position 2, advance with full speed, decelerate and stop at position 2.
Position Range Diagram

The acceleration and deceleration ramps are a function of the position and not of the time. Indeed, it would be very difficult to know when to start decelerating to reach one of the positions if the deceleration was based on the time instead of the position. The slope of the ramp has to be chosen such as the acceleration and deceleration distances are in the order of magnitude of 1 cm.

The positions to reach are:

  • position 1 = 8 cm
  • position 2 = 12 cm


The circuit controls a DC motor which drives a chariot.

Position Range Diagram

The circuit works as follows:

  • The DC motor is controlled by three signals motorOn, side1, side2. Its speed is controlled by a PWM-modulation.
  • There are two Hall-Senors at the ends of the rail, which detect the presence of the cursor chariot (sensor1, sensor2).
  • The Encoder Module is used to count the position of the cursor chariot. Its three encoder outputs, encoderA, encoderB and encoderI, allow to follow the angle of the screw.
  • Three Buttons are used to control the system: restart, go1 and go2. An additional button, button4, can be used for optional functionality.
  • The testOut pins can be used to output additional information from the system, e.g. for debug or in order to drive the LEDs

The Empty Toplevel Design shows all the signals connected to the FPGA board.


The system consists of:

Motor control circuit

The chariot DC motor is powered with 12 V. The power board contains an H-bridge controlled by digital signals. On the power board, a 5 V regulator generates the proper voltage for powering the FPGA board.

DC motor

The DC motor is controlled by a L6207 H-bridge driver.


The angle of the screw can be measured with the help of an incremental rotary encoder. The model used on the assembly is a AEDB-9140-A12 which has 500 Counts Per Revolution (CPR).

Hall sensors

The hall sensor is a switch which is working with the hall effect. If a magnet is close to the sensor, the contact closes. On the assembly, 2 hall sensors are used to identify the left and right limits of the chariot.

FPGA board

The main board is the school's FPGA-EBS lab development board. It hosts a Xilinx Spartan xc3s500e FPGA and features many different interfaces (serial, USB, Ethernet, …).

Buttons and LEDs

The Buttons and Leds board is to be attached to the FPGA board. It has 4 buttons and 8 leds which can be used in the design.


The evaluation of the project is done with the help of the ELN evaluation sheet.

Getting started

In order to start the projects you should do the following:

  • Read carefully the specifications above
  • Draw the architecture of the circuit in the form of a block diagram
  • Consult the guides for the first steps into the design software

The EDA tools cheatsheet can be a great help for the circuit design and synthesis.

Additional Information

Personal tools
Modules / Projects