Commit ae40ff56 authored by Majd Hafiri's avatar Majd Hafiri
Browse files


parent 48c699ed
# Robotic Arm on FPGA
## Prerequisites
1. [Vivado]( 2021.2 Installed
2. [FPGA Boolean board]( (Xilinx Spartan-7 XC7S50-CSGA324 )
3. Robotic Arm with 4 micro servo motors eg. [Wooden Robotic Arm](
4. Clone this repository `git clone`
## How to Connect
1. Connect the 4 servo motors to `J7, J6, J5, J4` pins on the FPGA board.
2. Use a connector for `J8` pins to connect `VS` with `5V0` ( power the servos from the usb port `J12`).
3. Connect the FPGA board to your machine using the micro usb wire (must be connected at `J12` on FPGA).
4. Turn on the board (`SW16`).
## How To Run
- Open the cloned project and program the FPGA board with the bitstream in the cloned project using Vivado ( ready to go ).
## How to Use
- 4 slide switches `(SW0 -> SW3)` are used to select one servo at a time to control it by the push buttons. (each switch is connected with one servo)
- 2 push buttons `(BTN0, BTN1)` used to change the angle of the selected servo (`0 -> 180` degrees).
- 1 slide switch `(SW15)` used for the Automated process mode ( when it's on, the manual mode is disabled)
- Two Displays which show the letter `A` if Automated mode is selected ( `D1SP2` ) , or the number of the the servo selected on ( `D1SP1` )
## Manual Simulation
Each module has a testbench, therefore it should be simulated individually. In Vivado, Go to `tools -> settings -> Simulation` and select the testbench you wish to simulate in the `simulation top module name`. Additionally, change the simulation `runtime` to a high number(eg. 100000000 ) since some modules require that in order to see the changes of their outputs.
## Synthesize & simulate ( without GUI )
mention switches and push buttons , how to use
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment